Window下部署使用Stable Diffusion AI开源项目绘图

news/2024/7/2 23:09:56

Window下部署使用Stable Diffusion AI开源项目绘图

  • 前言
  • 前提条件
  • 相关介绍
  • Stable Diffusion AI绘图
    • 下载项目
    • 环境要求
    • 环境下载
    • 运行项目
    • 打开网址,即可体验
    • 文字生成图像(txt2img)
      • 庐山瀑布
  • 参考

在这里图片描述

  • 本文里面的风景图,均由Stable Diffusion AI绘制生成。
  • Stable Diffusion并不局限于AI绘图,还有风格转换、人像修复、图像融合、图像去噪等功能,感兴趣的小伙伴,可自行探索,科学使用!

前言

  • 由于本人水平有限,难免出现错漏,敬请批评改正。
  • 更多精彩内容,可点击进入YOLO系列专栏、自然语言处理
    专栏或我的个人主页查看
  • 基于DETR的人脸伪装检测
  • YOLOv7训练自己的数据集(口罩检测)
  • YOLOv8训练自己的数据集(足球检测)
  • YOLOv5:TensorRT加速YOLOv5模型推理
  • YOLOv5:IoU、GIoU、DIoU、CIoU、EIoU
  • 玩转Jetson Nano(五):TensorRT加速YOLOv5目标检测
  • YOLOv5:添加SE、CBAM、CoordAtt、ECA注意力机制
  • YOLOv5:yolov5s.yaml配置文件解读、增加小目标检测层
  • Python将COCO格式实例分割数据集转换为YOLO格式实例分割数据集
  • YOLOv5:使用7.0版本训练自己的实例分割模型(车辆、行人、路标、车道线等实例分割)
  • 使用Kaggle GPU资源免费体验Stable Diffusion开源项目

前提条件

  1. 安装 Python 3.10.6 :https://www.python.org/downloads/release/python-3106/

  2. 安装 git:https://git-scm.com/download/win

相关介绍

  • Python是一种跨平台的计算机程序设计语言。是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。
  • PyTorch 是一个深度学习框架,封装好了很多网络和深度学习相关的工具方便我们调用,而不用我们一个个去单独写了。它分为 CPU 和 GPU 版本,其他框架还有 TensorFlow、Caffe 等。PyTorch 是由 Facebook 人工智能研究院(FAIR)基于 Torch 推出的,它是一个基于 Python 的可续计算包,提供两个高级功能:1、具有强大的 GPU 加速的张量计算(如 NumPy);2、构建深度神经网络时的自动微分机制。
  • AIGC(人工智能生成内容)是指由人工智能系统创建或生成的内容。它涉及使用人工智能技术,如机器学习、自然语言处理和计算机视觉,生成各种形式的内容,包括文本、图像、视频、音乐等。
  • 稳定扩散(Stable Diffusion)是一种用于概率建模和图像处理的方法。它基于扩散过程的理论,旨在对图像进行平滑和去噪处理,同时保持重要的图像结构和细节。
    稳定扩散方法通过在图像上应用非线性扩散算子来实现平滑和去噪。与传统的线性扩散方法不同,稳定扩散引入了非线性项,以更好地保留图像的边缘和细节。
    稳定扩散的核心思想是在扩散过程中考虑梯度信息,并根据梯度大小和方向来调整扩散速度。这样可以在平滑图像的同时,有效地抑制边缘的模糊和细节的丢失。
    稳定扩散方法在图像去噪、边缘保持、纹理增强等方面具有广泛应用。它提供了一种平衡平滑和保持图像结构的方法,可以应用于计算机视觉、图像处理和模式识别等领域。

Stable Diffusion AI绘图

下载项目

  • 官方源地址:https://github.com/AUTOMATIC1111/stable-diffusion-webui

在这里插入图片描述
下载完成,解压后,项目目录,如下所示。
在这里插入图片描述

环境要求

GitPython
Pillow
accelerate
basicsr
blendmodes
clean-fid
einops
gfpgan
gradio 3.32.0
inflection
jsonmerge
kornia
lark
numpy
omegaconf
open-clip-torch
piexif
psutil
pytorch_lightning
realesrgan
requests
resize-right
safetensors
scikit-image 0.19
timm
tomesd
torch
torchdiffeq
torchsde
transformers 4.25.1

  • 此开源项目,最难的地方是环境配置,并且,对环境的要求比较高,需要用的GPU(本文用的是RTX 3060),如果,没有具备相关条件,可以使用Kaggle GPU资源免费体验Stable Diffusion开源项目:https://blog.csdn.net/FriendshipTang/article/details/132238734

环境下载

pip install -r requirements.txt
或者
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple # 国内使用清华源,下载速度较快

运行项目

进入项目目录,在cmd命令端,运行webui-user.bat

webui-user.bat

第一次运行,此文件还会自动下载一些相关的依赖文件。
在这里插入图片描述
在这里插入图片描述

运行成功后,会出现一个用于本地访问网址:http://127.0.0.1:7860
在这里插入图片描述

打开网址,即可体验

在这里插入图片描述

文字生成图像(txt2img)

庐山瀑布

The Waterfall in Mount Lu Viewed from Afar
Li Bai
The sunlit Censer Peak exhales incenselike cloud;
Like an upended stream the cataract sounds loud.
Its torrent dashes down three thousand feet from high
As if the Silver River fell from the blue sky.

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

  • 网站里还有很多功能,感兴趣的小伙伴,可自行探索!
  • 此开源项目,最难的地方是环境配置,并且,对环境的要求比较高,需要用的GPU(本文用的是RTX 3060),如果,没有具备相关条件,可以使用Kaggle GPU资源免费体验Stable Diffusion开源项目:https://blog.csdn.net/FriendshipTang/article/details/132238734

参考

[1] https://github.com/AUTOMATIC1111/stable-diffusion-webui
[2] https://github.com/camenduru/stable-diffusion-webui
[3] https://www.kaggle.com/code/camenduru/stable-diffusion-webui-kaggle

  • 由于本人水平有限,难免出现错漏,敬请批评改正。
  • 更多精彩内容,可点击进入YOLO系列专栏、自然语言处理
    专栏或我的个人主页查看
  • 基于DETR的人脸伪装检测
  • YOLOv7训练自己的数据集(口罩检测)
  • YOLOv8训练自己的数据集(足球检测)
  • YOLOv5:TensorRT加速YOLOv5模型推理
  • YOLOv5:IoU、GIoU、DIoU、CIoU、EIoU
  • 玩转Jetson Nano(五):TensorRT加速YOLOv5目标检测
  • YOLOv5:添加SE、CBAM、CoordAtt、ECA注意力机制
  • YOLOv5:yolov5s.yaml配置文件解读、增加小目标检测层
  • Python将COCO格式实例分割数据集转换为YOLO格式实例分割数据集
  • YOLOv5:使用7.0版本训练自己的实例分割模型(车辆、行人、路标、车道线等实例分割)
  • 使用Kaggle GPU资源免费体验Stable Diffusion开源项目

http://lihuaxi.xjx100.cn/news/1461184.html

相关文章

【算法挨揍日记】day03——双指针算法_有效三角形的个数、和为s的两个数字

611. 有效三角形的个数 611. 有效三角形的个数https://leetcode.cn/problems/valid-triangle-number/ 题目描述: 给定一个包含非负整数的数组 nums ,返回其中可以组成三角形三条边的三元组个数。 解题思路: 本题是一个关于三角形是否能成立…

Ajax fetch Axios 的区别

AJAX:一种创建交互式网页应用的网页执行交互技术 通过在后台与服务器进行少量数据交换,Ajax可以使网页实现异步更新。意味着:在不重新加载整个网页 的情况下,对网页某部分进行更新。 缺点: 针对MVC编程,…

无涯教程-TensorFlow - 优化器

Optimizers是扩展类,其中包括用于训练特定模型的附加信息,Optimizers类使用给定的参数初始化,用于提高速度和性能,以训练特定模型。 TensorFlow的基本Optimizers是- tf.train.Optimizer 此类在tensorflow/python/training/opti…

汽车OTA活动高质量发展的“常”与“新”

伴随着车主的频繁崔更,车企除了卷硬件、拼价格,逐渐将精力转移到汽车全生命周期的常用常新。时至下半年,车企OTA圈愈发热闹,以新势力、新实力为代表新一代车企,OTA运营活动逐渐进入高质量发展期。 所谓高质量&#xf…

【以太网通信】RS232 串口转以太网

最近和 RK 研发同事在调试通信接口,排查与定位 RK3399 接收数据出错的问题。FPGA 与 RK3399 之间使用一路 RS232 串口进行通信,由于串口数据没有分包,不方便排查问题,想到可以开发一个 RS232 串口转以太网的工具,将串口…

微信小程序picker组件的简单使用 单选

<picker mode"selector" range"{{classData}}" bindchange"bindClassChange" value"{{classIndex}}" range-key"className"><view class"picker">{{classData[classIndex].className || 请选择班级}}…

linux RabbitMQ-3.8.5 安装

软件版本操作系统CentOS Linux release 7.9.2009erlangerlang-23.0.2-1.el7.x86_64rabbitMQrabbitmq-server-3.8.5-1.el7 RabbitMQ的安装首先需要安装Erlang,因为它是基于Erlang的VM运行的。 RabbitMQ安装需要依赖:socat和logrotate&#xff0c;logrotate操作系统已经存在了&…

ARM体系结构学习笔记:位操作和灵活的2nd操作数

位操作 移位运算 数据传输指令 灵活的2nd操作数 Set a bit a | (1 << 5)Clear a bit a & ~(1 << 5)Toggling a bt a ^ 1<<5