新版本MMagic v1.2.0 [2023年12月18日]:
- 我们的存储库中发布了一种名为 PowerPaint 的先进且强大的修复算法。点击查看
我们很高兴地宣布发布继承自MMEditing和MMGeneration的 MMagic v1.0.0 。
经过 OpenMMLab 2.0 框架的迭代更新并与 MMGeneration 合并,MMEditing 已成为支持基于 GAN 和 CNN 的低级算法的强大工具。如今,MMEditing 拥抱生成式 AI,并转变为更先进、更全面的 AIGC 工具包:MMagic(多模态高级、生成和智能创建)。 MMagic将为研究人员和AIGC爱好者提供更加敏捷、灵活的实验支持,为您的AIGC探索之旅助上一臂之力。
我们重点介绍以下新功能。
1. 新车型
我们支持 4 个新任务中的 11 个新模型。
- 文本到图像/扩散
- 控制网
- 梦想展位
- 稳定扩散
- 迪斯科扩散
- 滑行
- 引导扩散
- 3D 感知一代
- EG3D
- 图像修复
- 北美航空网
- 雷斯托默
- 斯温红外
- 图像着色
- 色彩化研究所
2. 魔法扩散模型
对于扩散模型,我们提供以下“魔法”:
- 支持基于Stable Diffusion和Disco Diffusion的图像生成。
- 支持Dreambooth、DreamBooth LoRA等Finetune方式。
- 使用 ControlNet 支持文本到图像生成的可控性。
- 支持基于xFormers的加速和优化策略,提高训练和推理效率。
- 支持基于MultiFrame Render的视频生成。
- 支持通过DiffuserWrapper调用基础模型和采样策略。
3. 框架升级
通过使用OpenMMLab 2.0框架的MMEngine和MMCV,MMagic在以下新功能上进行了升级:
- 重构DataSample以支持批量维度的组合和拆分。
- 重构DataPreprocessor,统一训练和推理过程中各种任务的数据格式。
- 重构MultiValLoop和MultiTestLoop,支持生成型指标(如FID)和重建型指标(如SSIM)评估,并支持同时评估多个数据集。
- 支持对本地文件或使用tensorboard和wandb进行可视化。
- 支持 Pytorch 2.0 加速的 33 种以上算法。
MMagic已经支持了MMEditing和MMGeneration中的所有任务、模型、指标和损失,并基于MMEngine统一了所有组件的接口。
请参阅changelog.md了解详细信息和发布历史记录。
请参考迁移文档从旧版本MMEditing 0.x迁移到新版本 MMagic 1.x 。
MMagic ( Multimodal A dvanced , Generative , and Intelligent Creation ) 是一个继承自MMEditing和MMGeneration的先进且全面的 AIGC 工具包。它是一个基于PyTorch的开源图像和视频编辑生成工具箱。它是OpenMMLab项目的一部分。
目前,MMagic 支持多种图像和视频生成/编辑任务。
mmagic_介绍.mp4
mmagic_introduction.mp4
-
最先进的模型
MMagic 提供最先进的生成模型来处理、编辑和合成图像和视频。
-
强大且流行的应用程序
MMagic 支持流行和当代的图像修复、文本到图像、3D 感知生成、修复、抠图、超分辨率和生成应用程序。具体来说,MMagic 支持稳定扩散的微调和许多令人兴奋的扩散应用,例如带有 SAM 的 ControlNet Animation。 MMagic 还支持 GAN 插值、GAN 投影、GAN 操作和许多其他流行的 GAN 应用程序。是时候开始您的 AIGC 探索之旅了!
-
高效的框架
通过使用OpenMMLab 2.0框架的MMEngine和MMCV,MMagic将编辑框架分解为不同的模块,通过组合不同的模块可以轻松构建定制的编辑器框架。我们可以像玩乐高一样定义训练过程,并提供丰富的组件和策略。在MMagic中,您可以通过不同级别的API完成对训练过程的控制。在MMSeparateDistributedDataParallel的支持下,可以轻松实现动态架构的分布式训练。
- 我们的主分支上的最佳实践适用于Python 3.9+和PyTorch 2.0+。
越来越多的社区贡献者加入我们,让我们的仓库变得更好。最近的一些项目是由社区贡献的,包括:
- SDXL由@okotaku 贡献。
- AnimateDiff由@ElliotQi 贡献。
- ViCo由@FerryHuang 贡献。
- DragGan由@qsun1 贡献。
- FastComposer由@xiaomile 贡献。
打开Projects是为了让大家更方便的向MMagic添加项目。
我们感谢所有为改进 MMagic 所做的贡献。有关贡献指南的更多详细信息,请参阅MMCV 中的CONTRIBUTING.md和MMEngine 中的CONTRIBUTING.md 。
MMagic 依赖于PyTorch、MMEngine和MMCV。以下是快速安装步骤。
步骤1.按照官方说明 安装PyTorch 。
步骤 2. 使用MIM安装 MMCV、MMEngine 和 MMagic 。
pip3 install openmim
mim install mmcv>=2.0.0
mim install mmengine
mim install mmagic
步骤 3. 验证 MMagic 是否已成功安装。
cd ~ python -c "import mmagic; print(mmagic.__version__)" # Example output: 1.0.0
入门
成功安装MMagic后,现在你就可以玩MMagic了! MMagic只需要几行代码就可以从文本生成图像!
from mmagic.apis import MMagicInferencer sd_inferencer = MMagicInferencer(model_name='stable_diffusion') text_prompts = 'A panda is having dinner at KFC' result_out_dir = 'output/sd_res.png' sd_inferencer.infer(text=text_prompts, result_out_dir=result_out_dir)
从源代码安装 MMagic
您还可以通过使用以下命令从源代码安装 MMagic 来试验最新开发的版本而不是稳定版本:
git clone https://github.com/open-mmlab/mmagic.git cd mmagic pip3 install -e .
请参阅安装以获取更详细的说明。
条件 GAN | 无条件 GAN | 图像修复 | 图像超分辨率 |
视频超分辨率 | 视频插值 | 图像着色 | 图像翻译 |
修复 | 消光 | 文字转图像(视频) | 3D 感知一代 |
请参阅model_zoo了解更多详细信息。
MMagic 是一个开源项目,由来自各个学院和公司的研究人员和工程师贡献。我们希望工具箱和基准能够通过提供灵活的工具包来重新实现现有方法并开发自己的新方法,从而为不断发展的研究社区服务。
我们感谢所有实施其方法或添加新功能的贡献者,以及提供宝贵反馈的用户。谢谢你们!
如果MMagic对您的研究有帮助,请在下面引用。
@misc{mmagic2023, title = {{MMagic}: {OpenMMLab} Multimodal Advanced, Generative, and Intelligent Creation Toolbox}, author = {{MMagic Contributors}}, howpublished = {\url{https://github.com/open-mmlab/mmagic}}, year = {2023} }
@misc{mmediting2022, title = {{MMEditing}: {OpenMMLab} Image and Video Editing Toolbox}, author = {{MMEditing Contributors}}, howpublished = {\url{https://github.com/open-mmlab/mmediting}}, year = {2022} }
该项目是在Apache 2.0 许可证下发布的。如果您将我们的代码用于商业用途,请参阅许可证进行仔细检查。
- MMEngine:用于训练深度学习模型的 OpenMMLab 基础库。
- MMCV:计算机视觉的 OpenMMLab 基础库。
- MIM:MIM 安装 OpenMMLab 软件包。
- MMPreTrain:OpenMMLab 预训练工具箱和基准。
- MMDetection:OpenMMLab 检测工具箱和基准测试。
- MMDetection3D:OpenMMLab 的下一代通用 3D 对象检测平台。
- MMRotate:OpenMMLab 旋转对象检测工具箱和基准。
- MMSegmentation:OpenMMLab 语义分割工具箱和基准。
- MMOCR:OpenMMLab 文本检测、识别和理解工具箱。
- MMPose:OpenMMLab 姿态估计工具箱和基准。
- MMHuman3D:OpenMMLab 3D 人体参数化模型工具箱和基准。
- MMSelfSup:OpenMMLab 自监督学习工具箱和基准测试。
- MMRazor:OpenMMLab 模型压缩工具箱和基准测试。
- MMFewShot:OpenMMLab Fewshot 学习工具箱和基准测试。
- MMAction2:OpenMMLab 的下一代动作理解工具箱和基准。
- MMTracking:OpenMMLab 视频感知工具箱和基准测试。
- MMFlow:OpenMMLab 光流工具箱和基准测试。
- MMagic:OpenMMLab 多模式高级、生成和智能创建工具箱。
- MMDeploy:OpenMMLab 模型部署框架。