使用Stable Diffusion和PyTorch创建艺术二维码

这篇具有很好参考价值的文章主要介绍了使用Stable Diffusion和PyTorch创建艺术二维码。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

大家好,本文将介绍如何利用Stable Diffusion和PyTorch的能力来创建AI生成的QR码艺术。通过将这些技术相结合,可以生成独特的、具有视觉吸引力的艺术作品,其中包含QR码,为艺术作品增添了互动元素。

Stable Diffusion和PyTorch

稳定扩散(Stable Diffusion)是一种用于图像处理和计算机视觉的技术,可对图像进行可控转换。另一方面,PyTorch是一种流行的深度学习框架,提供了搭建和训练神经网络的工具。通过结合这两项技术,可以创建一个强大的管道,用于生成AI艺术作品。

为了开始工作,需要安装必要的软件包,这些软件包对于处理二维码和图像处理至关重要。

pip -q install diffusers transformers accelerate torch xformers qrcode

同时还需要支持Nvidia GPU的系统,如果正在使用Google Colab,可以将TPU设置为运行时,它将为进程启用Nvidia GPU,可以在google colab中使用以下命令来检查GPU是否启用。

用户将得到如下输出:

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.85.12 Driver Version: 525.85.12 CUDA Version: 12.0 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 Tesla T4 Off | 00000000:00:04.0 Off | 0 |
| N/A 61C P8 10W / 70W | 0MiB / 15360MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------

导入库

import torch
from PIL import Image
import qrcode
from pathlib import Path
from multiprocessing import cpu_count
import requests
import io
import os
from PIL import Image
from diffusers import (
  StableDiffusionPipeline,
  StableDiffusionControlNetImg2ImgPipeline,
  ControlNetModel,
  DDIMScheduler,
  DPMSolverMultistepScheduler,
  DEISMultistepScheduler,
  HeunDiscreteScheduler,
  EulerDiscreteScheduler,
  )

生成QR码并使用预训练模型

通过使用qrcode软件包并指定所需的参数(例如纠错和方框大小),可以创建编码特定信息的QR码。

qrcode_generator = qrcode.QRCode(
  version=1,
  error_correction=qrcode.ERROR_CORRECT_H,
  box_size=10,
  border=4,
  )

controlnet = ControlNetModel.from_pretrained(
  "DionTimmer/controlnet_qrcode-control_v1p_sd15", torch_dtype=torch.float16
  )

创建稳定的扩散管道

pipe = StableDiffusionControlNetImg2ImgPipeline.from_pretrained(
  "runwayml/stable-diffusion-v1-5",
  controlnet=controlnet,
  safety_checker=None,
  torch_dtype=torch.float16,
  ).to("cuda")
pipe.enable_xformers_memory_efficient_attention()

用于调整图像大小的附加功能

def resize_for_condition_image(input_image: Image.Image, resolution: int):
  input_image = input_image.convert("RGB")
  W, H = input_image.size
  k = float(resolution) / min(H, W)
  H *= k
  W *= k
  H = int(round(H / 64.0)) * 64
  W = int(round(W / 64.0)) * 64
  img = input_image.resize((W, H), resample=Image.LANCZOS)
  return img

Sampler的字典

SAMPLER_MAP = {
"DPM++ Karras SDE": lambda config: DPMSolverMultistepScheduler.from_config(config
"DPM++ Karras": lambda config: DPMSolverMultistepScheduler.from_config(config, use
"Heun": lambda config: HeunDiscreteScheduler.from_config(config),
"Euler": lambda config: EulerDiscreteScheduler.from_config(config),
"DDIM": lambda config: DDIMScheduler.from_config(config),
"DEIS": lambda config: DEISMultistepScheduler.from_config(config),
}
pipe.scheduler = SAMPLER_MAP[sampler](pipe.scheduler.config)

试验不同参数

为了达到理想的艺术效果,可以尝试使用不同的参数,例如扩散强度、推理步数和引导尺度。这些参数可对最终输出产生重大影响,并允许进行创意性探索。

qr_code_content: str = "https://www.linkedin.com/in/zeel-sheladiya-772513176/"
prompt: str = "A beautiful nature and river surrounded by the flamigos"
negative_prompt: str = "ugly, disfigured, low quality, blurry, nsfw"
guidance_scale: float = 7.5
controlnet_conditioning_scale: float = 1.3
strength: float = 0.9
seed: int = 5392011833
init_image: Image.Image | None = None
qrcode_image: Image.Image | None = None
use_qr_code_as_init_image = True
sampler = "DPM++ Karras SDE"
generator = torch.manual_seed(seed) if seed != -1 else torch.Generator()
if qr_code_content != "" or qrcode_image.size == (1, 1):
  print("Generating QR Code from content")
  qr = qrcode.QRCode(
    version=1,
    error_correction=qrcode.constants.ERROR_CORRECT_H,
    box_size=10,
    border=4,
    )
  qr.add_data(qr_code_content)
  qr.make(fit=True)
  qrcode_image = qr.make_image(fill_color="black", back_color="white")
  qrcode_image = resize_for_condition_image(qrcode_image, 768)
else:
  print("Using QR Code Image")
  qrcode_image = resize_for_condition_image(qrcode_image, 768)

init_image = qrcode_image

创建AI生成的QR码并输入

out = pipe(
  prompt=prompt,
  negative_prompt=negative_prompt,
  image=qrcode_image,
  control_image=qrcode_image, # 类型:忽略
  width=768, # 类型:忽略
  height=768, # 类型:忽略
  guidance_scale=float(guidance_scale),
  controlnet_conditioning_scale=float(controlnet_conditioning_scale), # type: i
  generator=generator,
  strength=float(strength),
  num_inference_steps=40,
out.images[0].show()

 

通过结合Stable Diffusion、PyTorch和QR码,可以开启AI生成艺术的新领域。通过进一步的实验和探索,艺术家和开发人员可以突破创造力的界限,创造出引人入胜的互动艺术作品,从而吸引和启发观众。二维码的使用为艺术作品增添了互动元素,使观众可以通过扫描二维码获取更多信息或内容。

总之,Stable Diffusion、PyTorch和QR码的结合为生成AI艺术品提供了一个强大的流程。通过利用这些技术,艺术家和开发人员可以创造出独特的、具有视觉吸引力的艺术作品,并将互动元素融入其中。随着进一步的实验和探索,AI生成艺术的可能性是无限的,可以期待在未来看到更多创新和迷人的艺术作品。文章来源地址https://www.toymoban.com/news/detail-572063.html

到了这里,关于使用Stable Diffusion和PyTorch创建艺术二维码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【AI绘画--七夕篇】使用Stable Diffusion的艺术二维码完全生成攻略

    文中有彩蛋 随着人工智能技术的快速发展,特别是深度学习和生成模型的突破,AI作图已经成为许多领域的主要工具和方法之一。它不仅提高了创造力和效率,还改变了我们与图像、数据和媒体的交互方式。今天请跟随阿Q的脚步,一起来使用 Stable Diffusion 创作出属于我们自己

    2024年02月12日
    浏览(120)
  • Stable Diffusion生成艺术二维码

    文章会有浏览问题,点击此处查看原文 首先需要一个Stable Diffusion服务环境,《Stable Diffusion服务环境搭建(远程服务版)》如果你已经有了那就忽略 首先解析二维码链接,这里用草料二维码来实现 链接https://cli.im/ 这里点击解码,来生成二维码链接,接着上传二维码图片,复

    2024年02月16日
    浏览(32)
  • 【stable diffusion制作艺术二维码】

    最近AI绘画制作艺术二维码比较流行,我也摸索了一段时间,做了几个效果。无需特定的模型,反复调试最终达到自己想要的效果即可。 用到了Stable Diffusion的图生图和ControlNet两个模块。 我做的二维码生成工具  公众号有详细参数    

    2024年02月16日
    浏览(33)
  • 【AI绘画】万字长文——(超详细)ControlNet的详细介绍&使用Stable Diffusion的艺术二维码完全生成攻略

    详细介绍ControlNet的各个部分,相关案例,以及使用二维码作为ControlNet模型的输入的Stable Diffusion生成的图像,使二维码转变为艺术图像 Stable Diffusion :是StabilityAI于2022年8月22日发布的文本到图像模型。它类似于OpenAI的DALL·E 2和Midjourney等其他图像生成模型,但有一个很大的不同

    2024年02月05日
    浏览(31)
  • AI - stable-diffusion 艺术化二维码

    系列文章: 《AI - stable-diffusion(AI 绘画)的搭建与使用》 《AI - AI 绘画的精准控图(ControlNet)》 近日,AI 绘画(stable-diffusion)用来艺术化二维码算是比较火热的事了,这个 idea 是由国人用 Checkpoint + LoRA + QR Code ControlNet 组合实现出来的,下面是几张图片案例: 这是原作者的文章:

    2024年02月10日
    浏览(29)
  • 利用Stable diffusion Ai 制作艺术二维码超详细参数和教程

    大家有没有发现最近这段时间网上出现了各种各样的AI艺术二维码,这种二维码的出现,简直是对二维码的“颠覆式创新”,直接把传统的二维码提升了一个维度!作为设计师的我们怎么可以不会呢? 今天就教大家怎么制作这种超有艺术的二维码,硬是把二维码上升到了艺术

    2024年02月15日
    浏览(36)
  • 借助 ControlNet 生成艺术二维码 – 基于 Stable Diffusion 的 AI 绘画方案

    背景介绍 在过去的数月中,亚马逊云科技已经推出了多篇博文,来介绍如何在亚马逊云科技上部署 Stable Diffusion,或是如何结合 Amazon SageMaker 与 Stable Diffusion 进行模型训练和推理任务。 为了帮助客户快速、安全地在亚马逊云科技上构建、部署和管理应用程序,众多合作伙伴与

    2024年02月08日
    浏览(35)
  • 这二维码也太美了吧!利用AI绘画[Stable Diffusion的 ControlNet]生成爆火的艺术风格二维码

    先看两张图 上面的话是两张有效的二维码,只要你拿起手机扫描这些图像,是可以扫出内容的。是不是难以置信? 最近,在互联网上疯传一种崭新形式的二维码,它们摆脱了传统黑白方块的外观,而是呈现出令人赏心悦目的图像,一眼望去令人印象深刻。 核心方案就是基于

    2024年02月10日
    浏览(37)
  • AI生成二维码Stable diffusion生成可识别二维码【附完整教程】&【附完整案例】

    最近的炫酷QR比较火,所以今天给大家分享一下如何实现。首先我们知道QR二维码已经改变了信息的共享和获取方式。但是,QR码的视觉外观可能并不总是符合设计或艺术品的美学要求。为了解决这个问题,ControlNet for Stable Diffusion的工具在Stable Diffusion上可以将QR二维码信息隐藏

    2024年02月16日
    浏览(33)
  • 超详细AI二维码制作教程:手把手教你如何用Stable Diffusion 生成一个创意二维码?

    AI已来,未来已来! 来势汹汹的人工智能,如同创世纪的洪水,正在全世界的范围内引发一场史无前例的科技革命。AI正在改变世界!而我们正是这场巨变的见证者。 今天我们要介绍的内容就是:如何利用AI工具Stable Diffusion,生成你的专属创意二维码? (下文包含详细图文教

    2024年02月16日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包