文章主题:自然语言处理, 计算机视觉, 人工智能, 视觉中国

666AI工具大全,助力做AI时代先行者!

写在开头,已经通过了验证。

1709293140585.jpg

这几张被约稿

1709293141129.jpg

这一张审核通过待签约审核。

这里面核心是一种内容分布。要模型来符合平台的内容分布而生成。

视觉中国,这个我国最大的信息艺术版权平台,拥有天然的条件生成图片的能力,这种能力为AIGC文本生成图片提供了肥沃的土壤。本文的核心目标是利用视觉中国和Stable-Diffusion的强大能力,对Stable-Diffusion模型进行效果微调,使其更好地适应视觉中国的特定场景。我们期待,在未来,视觉中国官方能够提供AIGC的文本生成图片和图片生成图片的功能,这将有助于更全面地保护信息艺术版权产品。本文的撰写者将基于纯粹的技术角度,探讨新型信息科学技术在我国的应用市场前景。艺术并不应该只有一个标准,信息化艺术创作的市场在我国,甚至全球都处于起步阶段。

为了实现文本生成对应的图片,其数据需求必须具备一定的条件。当前阶段,通过paddlenlp实现的ppdiffusers展示的文本生成图片,输入的限制在于77个单词单元。因此,对于训练数据的质量审查显得尤为重要。在使用了视觉中国的500px网站之后,我对视觉中国在技术上的前瞻性深感钦佩。

# 可选模型权重
# CompVis/stable-diffusion-v1-4
# runwayml/stable-diffusion-v1-5
# stabilityai/stable-diffusion-2-base (原始策略 512×512)
# stabilityai/stable-diffusion-2 (v-objective 768×768)
# stabilityai/stable-diffusion-2-1
# Linaqruf/anything-v3.0

Stable-diffusion的最新版本是2.1版本,其生成的图像质量高达768*768。值得注意的是,该模型生成的最佳输入语言为英语,这一点非常重要。欧洲系列的每周语言也能产生相当不错的效果。然而,500px的要求是2000*3000,这就需要我们对生成的图片进行超分辨率增强。为此,我们引入了2X超分辨率算法和4X超分辨率算法,这两种算法都能有效地提高stable-diffusion生成的图像的质量,以满足500px网站的要求。具体来说,我们采用了falsr_c和CompVis/ldm-super-resolution-4x-openimages两种算法进行超分辨率增强。为了防止模型版权风险,我们选择了dreambooth类别图片组进行继续训练策略,并构建了垂直领域的训练方案。此外,你可以在transformers huggingface网站上找到其他相关的配套产品进行尝试。

基于百度飞桨paddlenlp ppdiffusers实现文本生成图片基础代码

import paddle
from ppdiffusers import StableDiffusionPipeline

# 可选模型权重
# CompVis/stable-diffusion-v1-4
# runwayml/stable-diffusion-v1-5
# stabilityai/stable-diffusion-2-base (原始策略 512×512)
# stabilityai/stable-diffusion-2 (v-objective 768×768)
# stabilityai/stable-diffusion-2-1
# Linaqruf/anything-v3.0
# ……
pipe = StableDiffusionPipeline.from_pretrained(“stabilityai/stable-diffusion-2-1”)
prompt = Final light setting over a snowy landscape in Utah 4k
import os
# os.mkdir(Final light setting)
for i in range(25):
image = pipe(prompt, guidance_scale=7.5, height=768, width=768).images[0]
image.show()
image.save(“Final light setting/Final light setting over a snowy landscape in Utah 4k-” str(i) “.jpg”)

为了保障生成效果的唯一性建议进行dreambooth的在自己筛选的图片数据集微调。

整个dreambooth的输入仅仅出现在一个位置。

export MODEL_NAME=”stabilityai/stable-diffusion-2-1″
export INSTANCE_DIR=”world-famous-urban-landscape”
export OUTPUT_DIR=”world-famous-urban-landscape-model-v-2-1″

accelerate launch train_dreambooth.py \
–pretrained_model_name_or_path=$MODEL_NAME \
–instance_data_dir=$INSTANCE_DIR \
–output_dir=$OUTPUT_DIR \
–instance_prompt=”Background of urban landscape architecture” \
–resolution=512 \
–train_batch_size=1 \
–gradient_accumulation_steps=1 \
–learning_rate=5e-6 \
–lr_scheduler=”constant” \
–lr_warmup_steps=0 \
–max_train_steps=40000

在本篇文章中,我们将重点讨论使用预训练模型以及准备图片数据集的过程。具体而言,我们使用的预训练模型名为MODEL_NAME,而图片数据集则存储在INSTANCE_DIR中。此外,instance_prompt是Dreambooth中唯一允许输入文本信息的位置。以上示例案例来源于GitHub项目diffusers的本地训练版本,该版本用于启动Dreambooth的训练过程。

2X超分辨率实现代码

import cv2
import paddlehub as hub
import os

sr_model = hub.Module(name=falsr_c)
for i in range(50):
# image = pipe(prompt, guidance_scale=7.5, height=768, width=768).images[0]
# image.show()
# image.save(“./The Northern Lights/The Northern Lights” str(i) “.jpg”)
if i == 7:
continue
try:
im = cv2.imread(“./The Northern Lights/The Northern Lights” str(i) “.jpg”).astype(float32)
#visualization=True可以用于查看超分图片效果,可设置为False提升运行速度。
res = sr_model.reconstruct(images=[im], visualization=True)
except:
continue
# sr_model.save_inference_model(“./The Northern Lights/The Northern Lights” str(i) “.jpg”)

# print(res[0][data])

4X超分辨率实现代码

# Copyright (c) 2022 PaddlePaddle Authors. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the “License”);
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an “AS IS” BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

import paddle

from ppdiffusers import LDMSuperResolutionPipeline
from ppdiffusers.utils import load_image

# 加载pipeline
pipe = LDMSuperResolutionPipeline.from_pretrained(“CompVis/ldm-super-resolution-4x-openimages”)
import os

base_path = “D:\BaiduNetdiskDownload\Camera”
new_path = “D:\BaiduNetdiskDownload\Camera-new”
amera_all = os.listdir(base_path)
# 下载初始图片
for amera_one in amera_all:
init_image = load_image(os.path.join(base_path, amera_one))
init_image.save(“original-image.png”)

# 使用fp16加快生成速度
with paddle.amp.auto_cast(True):
image = pipe(init_image, num_inference_steps=100, eta=1).images[0]

image.save(os.path.join(new_path, amera_one))

在实际的测试环节中,我们发现2X超分辨率算法并未能够满足最低的审核要求。因此,为了达到预期的效果,我们选择了分块4X超分辨率的方法,以便于大规模地对图片进行转换。这样做的目的是将图片的尺寸调整为500px,确保其符合网站对图片质量的要求。

在实验过程中发现同一文案对应的生成结果是不同的

在处理Final light setting over a snowy landscape in Utah的图片时,由于视觉效果未达到平台审核标准,导致文本图像生成的工作进度受到阻碍。视觉中国对于图像的要求较高,因此我们需要采取措施来提高生成的图像通过审核的概率。接下来的工作计划是建立一个图片分类系统,对生成的图像进行分类,以便更好地满足视觉中国的审核需求,从而提高我们生成文本图像的成功率。

本人基于视觉中国的文案生成的相关图片

1709293141787.jpg
1709293142084.jpg
1709293142393.jpg
1709293143050.jpg
1709293143472.jpg
1709293144071.jpg
1709293144685.jpg

一定要记住,我们始终是以建设为目标。如果所建设的服务对象是个人而非群体,那这种建设的意义消失了一半,最后祝愿大家2023年把我们丢掉的那些年赶回来。

aigc666aigc999_0.jpg

AI时代,拥有个人微信机器人AI助手!AI时代不落人后!

免费ChatGPT问答,办公、写作、生活好得力助手!

搜索微信号aigc666aigc999或上边扫码,即可拥有个人AI助手!

Leave a Reply

Your email address will not be published. Required fields are marked *