Created
Jul 21, 2023 07:22 AM
Tags
前言:
关于图片的处理,目前就我所知主要分为两大功能,第一是根据文字描述生成相关图片也就是AI绘画功能,第二是根据现有图片实现变换也就是AI编辑功能。
Example 2:
上传给AI左图,AI改写将其成右图:


tips:这几个举例均由open ai的图片生成模型DALL·E提供的api所生成(在使用这些模型时描述的话语最好使用英文,这样可以避免AI对描述有误解)。
AI绘画功能目前比较主流的方案个人感觉有三个:
- midjourney:https://www.midjourney.com/
- stable diffusion:stable-diffusion-webuiAUTOMATIC1111 • Updated Oct 30, 2023
- DALL·E:https://labs.openai.com/
这里简单分析一下三者的优缺点:
midjourney生成的图片质量不错,但价格有点贵,支持AI编辑功能。目前只有在线版本,付款方式是月度、年度的会员制。stable diffusion是一个集成工具,既支持AI绘画功能,也支持AI编辑功能。它可以集成一些网上的AI生成模型。缺点是,若在本地搭建,对硬件有一定要求(内存最低16G,显存最低4G),但可以考虑使用云服务器代替本地部署。stable diffusion已有在线网站,有一定的免费额度。DALL·E可以使用官方的在线网站生成,也可以调用openai提供的API生成。在线网站并不提供AI编辑功能,但调用的API提供了这两个功能。缺点还是一样,价格有点贵,按生成的图片数量收费。
方案的具体实现:
Midjourney:
访问上面的官网链接:

可以看到如上图界面点击登录按钮,这里需要有一个Discord账号,没有的话可以先注册一个,注册的邮箱没有什么要求可以直接使用qq或者网易邮箱。
下面是Midjourney的付费情况,按月收费的话是基础款是10美元一个月,标准款是30美元一个月。具体细节可以去官方查看。

根据自己的需要选择好支付方案后,如下图进入discord界面:

进入discord界面后,可以找到mj的公共社区,其中有一些红色方框框住的频道里展示了一些mj社区中其他成员实时生成的图片:

这里介绍一下生成图片的流程,在mj的公共频道中的几个展示区里会有一个叫
Midjourney Bot
的机器人,成员可以在展示区中给这个机器人提供提示词,机器人就会根据提示词生成出相应图片。
这样的话有一个问题,像这种公共频道人一般有许多成员,我们生成的图片很容易被其他成员新的生成图片指令所淹没。所以我们需要一个单独空间来生成图片。具体操作为点击下方的加号按钮新建一个服务器。

按照提示根据自己需要选择新服务器的名称与头像。然后回到mj的公共频道随便在一个展示区找到
Midjourney Bot
机器人,选择添加至服务器,选择刚刚新建的服务器即可。

回到新建的个人服务器,在输入框中输入/imagine 后面跟提示词。回车mj的机器人就会开始生成图片了。


我上面的提示词是中国山水画,mj在接收到提示词后总共生成了四张图片,这四张山水画每张画会有一点风格上的不同,然后下面会出现
U1、U2、U3、U4
以及V1、V2、V3、V4
。解释一下这是什么意思,数字很明显是图片从左至右的序号,U表示选定某张图片进行展示,而V则是告诉机器人根据某张图片的风格再生成四张新的图片,比如我这里选择了V2,mj就会根据前面生成出来的第二张图片的风格再生成四张新的图片:
到这里mj的应用就介绍完了,我自己平时很少在discord中使用mj而是自己搭建了一个服务器来对mj机器人进行请求,有时间把这部分的操作过程发出来。
DALL·E:
DALL·E是OpenAI开发出的图片生成模型:根据官方描述可以实现以下三种功能:
- 根据文本提示创建图像
- 根据新的文本提示对现有图像进行编辑
- 创建现有图像的变体
具体的使用方案有两种第一种是使用官方搭建的网站:https://labs.openai.com/,第二种是通过openai提供的接口,使用api key进行访问。
方案一:
和midjourney一样需要花钱,不过收费情况和midjourney不一样,midjourney是按月收费的会员制,DALL·E是按生成数量收费,目前价格如右图:15美金可生成115张图。
方案二:
调用OpenAI的api其实也需要花钱,不过刚注册的用户在前三个月用每个月5美金的试用额度,可以用它来尝试一下。目前的收费标准为:


关于如何使用OpenAI提供的API,官方提供了三个方案分别是使用python,nodejs,命令行来调用api。这里简单介绍一下如何使用命令行来调用api。首先看下面这段命令:
上面这段命令就是用来访问接口的命令,curl后面跟上的是要访问的网址,第二行将引号中的内容添加到http包头,用于验证请求者的身份,第三行需要注意的是sk开头的这一串字符串就是从openai那申请的密钥,-d后面跟了三个参数,分别是:
- prompt(提示词):告诉ai你对图片的描述
- n(数量):生成多少张图片
- size(大小):生成出来的图片像素比是多少,只有三个档可选(1024x1024、512x512、256x256)像素比越大收费越贵。
tips:我自己租了一台硅谷的云服务器,所以可以直接使用云服务器发送命令访问目标网址,如果是用自己的电脑需要使用代理。
在终端发送完这个请求后,目标网址会返回下面的数据,注意data中的值有一个url,这就是DALL·E生成的图片,可以直接使用网站访问就可以看到这个图片了。

这里需要注意的是生成出来的图片链接三小时之后就会失效。
Stable Diffusion:
这个工具的利用大概有三种解决方案,第一是使用在线网站:https://beta.dreamstudio.ai/generate 网上许多AI绘画的网站本质上是通过Stable Diffusion工具来进行开发,第二个方案是本地部署,第三个方案是通过云服务器部署。个人建议显存低于8G的还是直接考虑云服务器部署,我自己的显存是4GB生成一张图片大概需要一分钟左右,个人觉得效率太低了。下面分别介绍一下本地部署和云服务部署的操作步骤。
- 本地部署办法的两种选择:
- B站有个UP主写了一个整合包,如果不想去一个个去安装git、python、cuda等项目所需的运行环境可以直接下载B站秋叶大佬的整合包:
- 如果想自己去搭建本地运行环境可以按照下面文档的步骤安装:
- 云服务器部署办法的具体操作文档:
工具安装好后,这里再提供一个可以下SD模型的网址:
如果下载后的模型不知道放哪里,可以去这个网站查看https://spell.novelai.dev/