项目概述
项目名称: Paints-Undo
项目简介: MeoAI来向你介绍,Paints-Undo是一个创新的人工智能项目,专注于模拟和理解人类在数字绘画中的绘图行为。该项目的愿景是开发出能够精确反映人类艺术家需求和行为的AI模型,以促进人工智能与人类艺术家之间更紧密、更自然的合作。 功能特点:
- 行为模拟: 模型能够展示各种人类绘画行为,包括素描、着墨、着色、阴影处理、图像变换、左右翻转、颜色曲线调整、图层可见性更改,甚至是在绘画过程中改变整体构思。
- 输入输出: 模型接受一张完成的图像作为输入,然后输出该图像逐步绘制的序列,模拟了从最终作品回溯到初始笔触的过程。
项目链接: GitHub - lllyasviel/Paints-UNDO
原文:Paints-Undo:图片生成绘画过程,AI解锁逆向绘画与艺术行为分析新领域https://www.meoai.net/paints-undo.html
如何部署和使用 Paints-Undo
让MeoAI来一步一步教你。
部署 Paints-Undo:
- 克隆仓库: 首先,您需要在本地计算机上克隆Paints-Undo的GitHub仓库。可以通过在终端或命令提示符中运行以下命令来完成:
git
clone https://github.com/lllyasviel/Paints-UNDO.git
- 进入项目目录: 克隆完成后,进入项目目录:
cd Paints-UNDO
- 创建和激活Python环境: 使用conda创建一个新的Python环境,并激活它:
conda create -n paints_undo python=3.10 conda activate paints_undo
- 安装依赖: 安装必要的Python包,首先是xformers库:
然后安装项目所需的其他依赖项:pip install xformers
pip install -r requirements.txt
- 启动应用: 所有依赖安装完成后,通过运行以下命令来启动Paints-Undo的Web界面:
如果您不熟悉这些命令,可以将它们复制到聊天机器人中并请求解释和更详细的说明。python gradio_app.py
使用 Paints-Undo:
- 访问Web界面: 启动应用后,您将看到一个Web界面,通常是通过浏览器访问的本地服务器(例如:
http://localhost:7860
)。 - 上传图像: 在Web界面中,您可以上传您想要分析的图像,或者点击页面底部的示例图像以使用预设的图像。
- 生成提示(Step 1): 在标记为“步骤1”的用户界面中,点击“生成提示”按钮来获取全局提示。这一步是为模型提供足够的上下文信息,以便它可以理解图像的内容。
- 生成关键帧(Step 2): 接下来,在“步骤2”中,点击“生成关键帧”。在此步骤中,您可以更改种子或其他参数来控制生成过程。
- 生成视频(Step 3): 最后,在“步骤3”中,点击“生成视频”按钮。同样,您可以在此步骤中调整种子或其他参数,以获得您希望的视频效果。
- 查看结果: 模型将根据您提供的图像和参数生成绘画过程视频。您可以在Web界面中查看结果,并根据需要下载或进一步编辑。
技术要求:
- 项目在配备24GB VRAM的Nvidia 4090和3090TI上进行了测试,理论上最小VRAM需求在极端优化下约为10~12.5 GB。
- 处理一张图像的时间大约为5到10分钟,输出视频的典型时长为25秒,分辨率有320x512、512x320、384x448或448x384等选项。
注意:
- 由于处理时间可能较长,项目开发者不建议将Paints-Undo部署到HuggingFace Space,以避免对HF服务器造成不必要的负担。
- 如果您没有所需的计算设备,可以等待项目团队发布Colab笔记本(但请注意Colab免费层可能不足以运行此项目)。
模型及其架构的详细说明
单帧模型 (paints_undo_single_frame
)
- 模型架构: 单帧模型的架构基于SD1.5,并进行了修改以适应Paints-Undo项目的需求。它通过训练不同的betas scheduler和
operation step
条件来实现其功能。 - 训练细节:
- 模型使用了以下betas值进行训练:
betas = torch.linspace(0.00085, 0.020, 1000, dtype=torch.float64)
- 与原始SD1.5使用的betas值不同,单帧模型的训练betas值在结束时不同,并且去除了平方操作。
- 模型使用了以下betas值进行训练:
- 特殊修改:
- 移除了文本编码器CLIP ViT-L/14的最后一层,以确保与diffusers的CLIP Skip设置一致。
operation step
条件以类似于SDXL的额外嵌入方式添加到层嵌入中。
- 输入和输出:
- 输入:一张图像和一个
operation step
(0到999之间的整数)。 - 输出:根据指定的
operation step
,模型输出一张模拟撤消相应步骤后的单图像。
- 输入:一张图像和一个
- 使用场景:
- 单帧模型可以模拟从最终作品回溯到初始笔触的任何步骤。
多帧模型 (paints_undo_multi_frame
)
- 模型架构: 多帧模型的训练基于VideoCrafter家族,但进行了大量修改,包括神经网络的拓扑结构和行为。
- 主要组件:
- VAE:与ToonCrafter中提取的动漫VAE相同。
- 3D-UNet:从Crafters的
lvdm
修改而来,调整了注意力模块,并支持在空间自注意力层中的时间窗口。 - CLIP:使用了SD2.1版本的CLIP。
- CLIP-Vision:实现了支持任意纵横比的Clip Vision,通过插值位置嵌入来实现。
- Image Projection:实现了一个小型transformer,输入两帧图像,输出每帧的16个图像嵌入。
- 注意力机制:
- 3D-UNet支持三种注意力窗口模式:"prv"、"first"和"roll",以不同的方式关注前后帧的空间上下文。
- 输入和输出:
- 输入:两张图像。
- 输出:这两张图像之间的16个中间帧。
- 使用场景:
- 多帧模型用于生成两个关键帧之间的过渡动画,展现更连续的动态过程。
模型使用注意事项:
- 单帧模型和多帧模型通常结合使用,首先使用单帧模型生成几个关键帧,然后使用多帧模型进行插值,生成较长的视频。
- 模型的输出质量高度依赖于输入图像的质量,以及模型对图像内容的理解。
通过这些详细的模型架构和使用说明,用户可以更好地理解Paints-Undo模型的工作原理,以及如何有效地使用它们来生成绘画过程视频。
社区提醒
MeoAI在这里提醒大家,项目在GitHub上的页面是唯一的官方资源,提醒用户警惕并避免访问假冒的Paints-Undo网站,这些假冒网站最近在谷歌搜索和社交媒体上频繁出现。
应用场景
- 作为分析人类行为的基础模型,构建与人类行为和需求一致的AI工具。
- 结合草图引导的图像生成器实现“PaintsRedo”,增强人类创造力。
- 用于查看自己的艺术作品的不同可能过程,以获得艺术灵感。
- 将输出用作视频/电影特效,实现特定的创意目的。
免责声明
- 项目旨在发展人类绘画行为的基础模型,以帮助未来的AI系统更好地满足人类艺术家的实际需求。用户在使用此工具创作内容时,应遵守当地法律并负责任地使用。