AI艺术二维码生成

AI艺术二维码生成

AI绘画又又又又火出圈了!这波来源于AI人所发掘的ControlNet for QR Code话不多说,看看效果图
赛博朋克奇幻旅程玫瑰花海

这些看着极具个性的图像正是一个可以扫描的二维码,通过使用Stable Diffusion和Controlnet生成。由此定制生成个人艺术二维码,选择不同风格模型、输入不同prompt,将创意融入其中,打造你个人或品牌的独特标志。

1 环境安装与配置

注: 运行完下一行代码,切忌重启内核,以便后续运行,负责会报错。

!pip install "paddlenlp>=2.5.2" safetensors "ppdiffusers>=0.11.1" --user    # 安装PaddleNLP和ppdiffusers
!pip install --upgrade paddlehub --user     # 安装PaddleHub

2 下载模型

from ppdiffusers import ControlNetModel

controlnet = ControlNetModel.from_pretrained(
    "DionTimmer/controlnet_qrcode-control_v1p_sd15"
)

print(controlnet)
import paddle
from ppdiffusers import StableDiffusionControlNetPipeline

pipe = StableDiffusionControlNetPipeline.from_pretrained(
    "runwayml/stable-diffusion-v1-5",
    safety_checker=None,
    controlnet=controlnet,
    paddle_dtype=paddle.float16
)
# pipe.enable_xformers_memory_efficient_attention()

print(pipe)
Downloading (…)1-5/model_index.json:   0%|          | 0.00/601 [00:00<?, ?B/s]



Fetching 15 files:   0%|          | 0/15 [00:00<?, ?it/s]



Downloading (…)rocessor_config.json:   0%|          | 0.00/342 [00:00<?, ?B/s]



Downloading (…)cheduler_config.json:   0%|          | 0.00/342 [00:00<?, ?B/s]



Downloading (…)model_state.pdparams:   0%|          | 0.00/492M [00:00<?, ?B/s]



Downloading (…)_encoder/config.json:   0%|          | 0.00/592 [00:00<?, ?B/s]



Downloading (…)er/model_config.json:   0%|          | 0.00/463 [00:00<?, ?B/s]



Downloading (…)okenizer_config.json:   0%|          | 0.00/312 [00:00<?, ?B/s]



Downloading (…)tokenizer/vocab.json:   0%|          | 0.00/862k [00:00<?, ?B/s]



Downloading (…)er/added_tokens.json:   0%|          | 0.00/2.00 [00:00<?, ?B/s]



Downloading (…)cial_tokens_map.json:   0%|          | 0.00/478 [00:00<?, ?B/s]



Downloading (…)tokenizer/merges.txt:   0%|          | 0.00/525k [00:00<?, ?B/s]



Downloading (…)model_state.pdparams:   0%|          | 0.00/3.44G [00:00<?, ?B/s]



Downloading (…)1-5/unet/config.json:   0%|          | 0.00/807 [00:00<?, ?B/s]



Downloading (…)model_state.pdparams:   0%|          | 0.00/335M [00:00<?, ?B/s]



Downloading (…)v1-5/vae/config.json:   0%|          | 0.00/610 [00:00<?, ?B/s]


[2023-08-04 21:46:48,060] [    INFO] - size should be a dictionary on of the following set of keys: ({'width', 'height'}, {'shortest_edge'}, {'longest_edge', 'shortest_edge'}), got 224. Converted to {'shortest_edge': 224}.
[2023-08-04 21:46:48,062] [    INFO] - crop_size should be a dictionary on of the following set of keys: ({'width', 'height'}, {'shortest_edge'}, {'longest_edge', 'shortest_edge'}), got 224. Converted to {'height': 224, 'width': 224}.
[2023-08-04 21:46:48,064] [    INFO] - Image processor CLIPFeatureExtractor {
  "crop_size": {
    "height": 224,
    "width": 224
  },
  "do_center_crop": true,
  "do_convert_rgb": true,
  "do_normalize": true,
  "do_rescale": true,
  "do_resize": true,
  "feature_extractor_type": "CLIPFeatureExtractor",
  "image_mean": [
    0.48145466,
    0.4578275,
    0.40821073
  ],
  "image_processor_type": "CLIPFeatureExtractor",
  "image_std": [
    0.26862954,
    0.26130258,
    0.27577711
  ],
  "resample": 3,
  "rescale_factor": 0.00392156862745098,
  "size": {
    "shortest_edge": 224
  }
}

[2023-08-04 21:46:48,066] [    INFO] - loading configuration file /home/aistudio/.cache/paddlenlp/ppdiffusers/runwayml/stable-diffusion-v1-5/text_encoder/config.json
[2023-08-04 21:46:48,068] [    INFO] - Model config CLIPTextConfig {
  "_name_or_path": "openai/clip-vit-large-patch14",
  "architectures": [
    "CLIPTextModel"
  ],
  "attention_dropout": 0.0,
  "bos_token_id": 0,
  "dropout": 0.0,
  "eos_token_id": 2,
  "hidden_act": "quick_gelu",
  "hidden_size": 768,
  "initializer_factor": 1.0,
  "initializer_range": 0.02,
  "intermediate_size": 3072,
  "layer_norm_eps": 1e-05,
  "max_position_embeddings": 77,
  "model_type": "clip_text_model",
  "num_attention_heads": 12,
  "num_hidden_layers": 12,
  "pad_token_id": 1,
  "paddlenlp_version": null,
  "projection_dim": 512,
  "return_dict": true,
  "transformers_version": "4.21.0.dev0",
  "vocab_size": 49408
}

You have disabled the safety checker for <class 'ppdiffusers.pipelines.stable_diffusion.pipeline_stable_diffusion_controlnet.StableDiffusionControlNetPipeline'> by passing `safety_checker=None`. Ensure that you abide to the conditions of the Stable Diffusion license and do not expose unfiltered results in services or applications open to the public. PaddleNLP team, diffusers team and Hugging Face strongly recommend to keep the safety filter enabled in all public facing circumstances, disabling it only for use-cases that involve analyzing network behavior or auditing its results. For more information, please have a look at https://github.com/huggingface/diffusers/pull/254 .


StableDiffusionControlNetPipeline {
  "_class_name": "StableDiffusionControlNetPipeline",
  "_ppdiffusers_version": "0.16.1",
  "controlnet": [
    "ppdiffusers",
    "ControlNetModel"
  ],
  "feature_extractor": [
    "paddlenlp.transformers",
    "CLIPFeatureExtractor"
  ],
  "requires_safety_checker": true,
  "safety_checker": [
    null,
    null
  ],
  "scheduler": [
    "ppdiffusers",
    "PNDMScheduler"
  ],
  "text_encoder": [
    "paddlenlp.transformers",
    "CLIPTextModel"
  ],
  "tokenizer": [
    "paddlenlp.transformers",
    "CLIPTokenizer"
  ],
  "unet": [
    "ppdiffusers",
    "UNet2DConditionModel"
  ],
  "vae": [
    "ppdiffusers",
    "AutoencoderKL"
  ]
}

3 添加翻译功能

import os
import paddlehub as hub
def translate(src_text):
    model = hub.Module(name='transformer_zh-en', beam_size=5)
    src_texts = [src_text]
    trg_text = model.predict(src_texts, n_best=1)
    return '"{}"'.format(trg_text[0])
src_text = "赛博朋克"
trg_texts = translate(src_text)
print(trg_texts)
Download https://bj.bcebos.com/paddlehub/paddlehub_dev/transformer_zh_en_1.1.0.zip
[##################################################] 100.00%
Decompress /home/aistudio/.paddlehub/tmp/tmpcck32oor/transformer_zh_en_1.1.0.zip
[##################################################] 100.00%


[2023-08-04 21:47:56,011] [    INFO] - Installing dependent packages from /home/aistudio/.paddlehub/tmp/tmp53f6wjgo/transformer_zh_en/requirements.txt: \ - Installing dependent packages from /home/aistudio/.paddlehub/tmp/tmp53f6wjgo/transformer_zh_en/requirements.txt: | - Installing dependent packages from /home/aistudio/.paddlehub/tmp/tmp53f6wjgo/transformer_zh_en/requirements.txt: / - Installing dependent packages from /home/aistudio/.paddlehub/tmp/tmp53f6wjgo/transformer_zh_en/requirements.txt: - - Installing dependent packages from /home/aistudio/.paddlehub/tmp/tmp53f6wjgo/transformer_zh_en/requirements.txt: \ - Installing dependent packages from /home/aistudio/.paddlehub/tmp/tmp53f6wjgo/transformer_zh_en/requirements.txt: | - Installing dependent packages from /home/aistudio/.paddlehub/tmp/tmp53f6wjgo/transformer_zh_en/requirements.txt: / - Installing dependent packages from /home/aistudio/.paddlehub/tmp/tmp53f6wjgo/transformer_zh_en/requirements.txt: - - Installing dependent pack
[2023-08-04 21:47:56,136] [    INFO] - Successfully installed transformer_zh-en-1.1.0


"Cyberpunk"

[2023-08-04 21:47:56,136] [ INFO] - Successfully installed transformer_zh-en-1.1.0

"Cyberpunk"

4 Gradio应用体验

Step1: 点击进入并登陆飞桨AI Studio,准备生成

Step2: 输入二维码内容

支持输入文本内容、扫码后跳转链接、图像内容

Step3: 输入Prompt与控制参数

  • 积极提示词:支持输入中文、英文,创作者已接入翻译api,会将所输入中文提示词自动翻译为英文

  • 消极提示词:仅支持输入英文

  • 调节器:建议使用介于0.6和2.0之间的调节比例,若二维码无法识别则调高该数值。

  • 强度:二维码中添加的噪声量,建议使用介于0.8和0.95之间的高强度值。

  • Seed:随机种子值,若生成失败则调低该参数。

Step4: 点击生成即可获得AI艺术二维码

5 特别推荐

5.1 比赛推荐

赛题名称: 美颜祛斑祛痘

伴随颜值经济迅速崛起,人像美颜美肤逐渐成为应用最广、需求最大的技术之一。相较于互娱场景的磨皮美颜,广告级、影楼级的精细化美颜美肤给算法带来了更大的挑战。一方面,瑕疵种类众多,例如痘痘、痘印、雀斑、肤色不均等问题,加大了算法处理的难度;另一方面,摄影设备的迭代和受众需求的提升,要求算法在祛瑕过程中尽可能保留皮肤的纹理、质感,实现高精度的皮肤修饰,这对算法祛瑕呈现效果提出了更高标准。因此,本赛题希望参赛选手能研究出祛除斑痘瑕疵并保留皮肤纹理质感等高精度、低耗时的算法,助力解决广告及影楼级修图的痛难点,大幅提升工作效率与修图效果。

奖项设置

奖金数量奖金(税后)
一等奖1名2万元人民币+荣誉证书
二等奖2名2千元人民币+荣誉证书
三等奖3名5百元人民币+荣誉证书
优秀奖4名200元京东E卡+荣誉证书

5.2 项目应用推荐

5.3 敬请期待

  • 【大模型专区】ControlNet-V1.1大集合-WebUI

注:以下二维码图片均有【大模型专区】AI艺术二维码生成此应用生成

AI艺术二维码生成当SAM遇到Stable-Diffusion智能遥感解译工具

请点击此处查看本环境基本用法.

Please click here for more detailed instructions.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值