Python+AI画画,如何实现创意生成?

99ANYc3cd6 人工智能 4

Python 和人工智能的结合已经彻底改变了绘画和艺术创作领域,任何人都可以通过编写简单的 Python 代码,利用强大的 AI 模型生成令人惊叹的艺术作品。

Python+AI画画,如何实现创意生成?-第1张图片-广州国自机器人
(图片来源网络,侵删)

这通常被称为 AI 绘画文本到图像,你只需要用文字描述你想要的画面,AI 就能将其“画”出来。

下面我将为你详细解释如何用 Python 进行 AI 画画,从入门到实践。


核心概念:如何用 Python 实现 AI 绘画?

用 Python 实现 AI 绘画主要有两种主流方式:

  1. 使用第三方 API (最简单、最推荐):你不需要下载庞大的模型,也不需要强大的 GPU,你只需要像调用网络服务一样,向一个提供 AI 绘画服务的公司(如 OpenAI, Stability AI, Midjourney)发送你的文字描述和 API 密钥,它们的服务器会处理一切并返回生成的图片,这是最快、最容易上手的入门方式。
  2. 在本地运行开源模型 (更强大、更灵活):你可以下载开源的 AI 模型(如 Stable Diffusion),在你的电脑(最好有 NVIDIA 显卡)上运行,这种方式完全免费、私密,并且可以对模型进行微调,实现更精细的控制,但技术门槛和硬件要求更高。

对于初学者,我们强烈推荐第一种方式

Python+AI画画,如何实现创意生成?-第2张图片-广州国自机器人
(图片来源网络,侵删)

使用第三方 API (以 OpenAI 的 DALL-E 3 为例)

这是最流行、效果最好的 API 之一,我们将使用 openai 这个 Python 库来调用它。

第 1 步:准备工作

  1. 安装 OpenAI Python 库: 打开你的终端或命令行,运行:

    pip install openai
  2. 获取 API 密钥

    • 访问 OpenAI 官网 并注册/登录。
    • 进入 API 密钥页面,创建一个新的 Secret Key。
    • 重要:请务必保管好你的 API 密钥,不要泄露给别人。

第 2 步:编写 Python 代码

创建一个 Python 文件(ai_drawing.py),然后输入以下代码:

Python+AI画画,如何实现创意生成?-第3张图片-广州国自机器人
(图片来源网络,侵删)
import openai
import requests
from PIL import Image
from io import BytesIO
# 1. 设置你的 API 密钥
# 建议使用环境变量来存储,而不是直接写在代码里
# 这里为了演示,直接写在代码里,实际使用时请替换成你自己的密钥
# openai.api_key = "sk-你的API密钥"
openai.api_key = "sk-..." # <-- 在这里填入你的密钥
def generate_image(prompt):
    """
    使用 OpenAI 的 DALL-E 3 模型生成图片
    """
    try:
        # 2. 调用 OpenAI API
        response = client.images.generate(
            model="dall-e-3",  # 指定使用 DALL-E 3 模型
            prompt=prompt,     # 你输入的文字描述
            n=1,               # 生成图片的数量
            size="1024x1024",  # 图片尺寸 (1024x1024, 1792x1024, 1024x1792)
            quality="standard" # 图片质量 (standard, hd)
        )
        # 3. 获取图片的 URL
        image_url = response.data[0].url
        # 4. 下载图片并保存到本地
        print(f"图片已生成,正在下载: {image_url}")
        img_response = requests.get(image_url)
        # 5. 保存图片文件
        image_filename = "ai_generated_image.png"
        with open(image_filename, "wb") as f:
            f.write(img_response.content)
        print(f"图片已保存为: {image_filename}")
        # 6. (可选) 使用 Pillow 库打开并显示图片
        img = Image.open(BytesIO(img_response.content))
        img.show()
    except Exception as e:
        print(f"生成图片时发生错误: {e}")
# --- 主程序 ---
if __name__ == "__main__":
    # 在这里输入你想要的画面描述
    # 描述得越详细,生成的效果通常越好
    my_prompt = "一只穿着宇航服的猫,漂浮在木星巨大的红色风暴云上,背景是璀璨的星空,科幻风格,高清细节"
    print(f"正在根据以下描述生成图片: '{my_prompt}'")
    generate_image(my_prompt)
    # 再来一个例子
    # my_prompt_2 = "A beautiful oil painting of a serene lake at sunset, with mountains in the background, in the style of Claude Monet"
    # generate_image(my_prompt_2)

第 3 步:运行和体验

  1. 将上面的代码保存为 ai_drawing.py
  2. 确保你已经填入了正确的 API 密钥。
  3. 在终端中运行 python ai_drawing.py
  4. 几十秒后,程序会下载生成的图片并自动在你的默认图片查看器中打开,一张名为 ai_generated_image.png 的图片会保存在你的代码同目录下。

提示prompt(提示词)是 AI 绘画的核心,你可以尝试加入艺术风格(如 in the style of Van Gogh)、构图(wide-angle shot)、光照(cinematic lighting)等细节来获得更满意的结果。


在本地运行开源模型 (以 Diffusers 库为例)

这种方式需要你电脑有 NVIDIA 显卡(显存至少 8GB 起步,12GB 或以上更佳),并且需要下载模型文件,会比较占磁盘空间。

第 1 步:安装依赖

你需要安装 diffusers, transformers, torch, accelerate 等库,PyTorch 的安装可能会比较慢,请耐心等待。

# 首先安装 PyTorch (请根据你的系统选择合适的命令,这是 CUDA 12.1 的版本)
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
# 然后安装 Hugging Face 的库
pip install diffusers transformers accelerate

第 2 步:编写 Python 代码

import torch
from diffusers import StableDiffusionPipeline
from PIL import Image
# 1. 加载模型 (第一次运行时会下载模型,文件较大,请耐心等待)
# "runwayml/stable-diffusion-v1-5" 是一个经典的开源模型
model_id = "runwayml/stable-diffusion-v1-5"
pipe = StableDiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.float16)
pipe = pipe.to("cuda") # 将模型加载到 GPU
# 2. 设置提示词
prompt = "a photograph of an astronaut riding a horse on mars, high quality, high detail"
# 3. 生成图片
# num_inference_steps 越高,细节越好,但越慢
# guidance_scale 越高,越会严格遵循你的提示词
image = pipe(prompt, num_inference_steps=50, guidance_scale=7.5).images[0]
# 4. 保存和显示图片
image.save("local_generated_image.png")
image.show()
print("本地模型生成完成!")

第 3 步:运行和体验

  1. 保存代码为 local_drawing.py
  2. 运行 python local_drawing.py
  3. 程序会自动从 Hugging Face Hub 下载 Stable Diffusion 模型(约 4-5GB),然后开始生成图片,生成速度取决于你的 GPU 性能。

更高级的玩法

一旦你掌握了基础,就可以探索更强大的功能:

  1. 图像到图像:你可以提供一张草图或照片,让 AI 在其基础上进行修改和扩展。diffusers 库也支持这个功能。
  2. Inpainting (图像修复):你可以选中图片的某个区域,用文字描述如何修改它,把一张照片里的人换成另一个人,或者移除不需要的物体。
  3. ControlNet:这是一个革命性的技术,可以让你通过深度图、姿态图、边缘图等方式,对生成图片的构图和结构进行极其精细的控制。
  4. Dreambooth / LoRA 微调:你可以上传自己或特定物体的多张照片,训练一个专属的模型,让 AI 学会画“你的专属风格”或“你的宠物”。

总结与推荐

特性 API (如 OpenAI) 本地模型 (如 Diffusers)
易用性 ⭐⭐⭐⭐⭐ (非常简单) ⭐⭐ (需要配置环境和硬件)
成本 按使用量付费 (调用一次收一次钱) 主要是硬件成本 (电费) 和时间成本
隐私性 你的提示词会发送

标签: Python AI绘画创意生成教程 AI绘画Python实现创意代码 Python AI生成创意图像方法

抱歉,评论功能暂时关闭!