全新 AIGC 开源库 MMagic :引领 Diffusion Model,超越编辑,释放魔力!

picture.image

自从 MMEditing 诞生以来,它一直是许多图像超分、编辑和生成任务的首选算法库,帮助多个研究团队取得 10 余项国际顶级赛事的胜利,支撑了 100 多个 GitHub 生态项目。经过 OpenMMLab 2.0 的迭代更新以及与 MMGeneration 的代码合并,MMEditing 已经成为了一个支持基于 GAN 和传统 CNN 的底层视觉算法的强大工具。

而今天, MMEditing 将拥抱生成式 AI(Generative AI),正式更名为 MMagicM ultimodal A dvanced, G enerative, and I ntelligent Creation),致力于打造 更先进、更全面的 AIGC 开源算法库

https://github.com/open-mmlab/mmagic

(欢迎体验,文末点击阅读原文可直达)

配合 MMEngine 出色的训练与实验管理支持,MMagic 将为广大研究者与 AIGC 爱好者们提供更加快捷灵活的实验支持,助力你的 AIGC 探索之旅。

在 MMagic 中,我们支持了针对 Stable Diffusion 的微调、图像编辑、图像及视频生成等任务。此外我们还支持 xFormers 等优化策略,提高训练与推理效率。

针对 Diffusion Model ,我们提供了以下“魔法”:

  • 支持基于 Stable Diffusion 与 Disco Diffusion 的图像生成

  • 支持 Dreambooth 以及 DreamBooth LoRA 等 Finetune 方法

  • 支持 ControlNet 进行可控性的文本到图像生成

  • 支持 xFormers 加速

  • 支持基于 MultiFrame Render 的视频生成

  • 支持通过 Wrapper 调用 Diffusers 的基础模型以及采样策略

    为了提升你的“施法”效率 ,我们对“魔术回路”做了以下调整:

  • 对 33 种算法支持 Pytorch 2.0 加速

  • 支持快速推理接口

  • 重构 MultiValLoop 与 MultiTestLoop,同时支持生成类型指标(e.g. FID)与重建类型指标(e.g. SSIM) 的评测,同时支持一次性评测多个数据集

  • 重构 DataSample,支持 batch 维度的组合与拆分

  • 重构 DataPreprocessor,并统一各种任务在训练与推理时的数据格式

趣味玩法

新增 Inferencer ——

几行代码快速实现模型推理

MMagic 中支持了快速推理接口,只需要指定模型,就可以快速调用:


              
from mmagic.apis import MMagicInferencer
              

              
# create an inferencer!
              
magician = MMagicInferencer(model_name='stable_diffusion')
              
text_prompts = 'A mecha robot in a favela in expressionist style'
              
result_out_dir = 'robot.png'
              
magician.infer(text=text_prompts, result_out_dir=result_out_dir)
          

picture.image

也可以通过命令行进行 demo 推理:


              
python demo/mmediting_inference_demo.py --model-name eg3d \
              
    --model-config configs/eg3d/eg3d_cvt-official-rgb_afhq-512x512.py \
              
    --model-ckpt https://download.openmmlab.com/mmediting/eg3d/eg3d_cvt-official-rgb_afhq-512x512-ca1dd7c9.pth \
              
    --result-out-dir eg3d_output \  # 保存图片及视频 `eg3d_output`
              
    --interpolation camera \  # 对相机位置插值
              
    --num-images 100  # 插值过程中生成100张图像
          

picture.image

支持 MultiLoop —— 多种数据集一次性评测

为了方便用户一次性对多个数据集的多种指标进行评测,我们提供了 MultiValLoop 与 MultiTestLoop


              
# 1. 使用 `MultiValLoop` 代替 MMEngine 中默认提供的 `ValLoop`
              
val_cfg = dict(type='MultiValLoop')
              
 
              
# 2. 配置针对不同数据集的评测指标
              
div2k_evaluator = dict(
              
    type='EditEvaluator',
              
    metrics=dict(type='SSIM', crop_border=2, prefix='DIV2K'))
              
set5_evaluator = dict(
              
    type='EditEvaluator',
              
    metrics=[
              
        dict(type='PSNR', crop_border=2, prefix='Set5'),
              
        dict(type='SSIM', crop_border=2, prefix='Set5'),
              
    ])
              
val_evaluator = [div2k_evaluator, set5_evaluator]
              

              
# 3. 配置数据集
              
div2k_dataloader = dict(...)
              
set5_dataloader = dict(...)
              
val_dataloader = [div2k_dataloader, set5_dataloader]
          

MMagic 支持通过 ControlNet 与多帧渲染

—— 炫酷的图像/长视频生成


              
from mmagic.apis import MMagicInferencer
              

              
magician = MMagicInferencer(model_name='controlnet_animation')
              

              
prompt = 'aa handsome man, silver hair, smiling, play basketball'
              
negative_prompt = 'longbody, lowres, bad anatomy, bad hands, missing fingers, ' + \
              
                  'extra digit, fewer digits, cropped, worst quality, low quality'
              

              
# download video from 'https://download.openmmlab.com/mmediting/data/basketball.mp4'
              
video = 'basketball.mp4'
              
save_path = '/path/to/your/output/video.mp4'
              

              
magician.infer(video=video, prompt=prompt, negative_prompt=negative_prompt, save_path=save_path)
          

picture.image

科研累了?打打篮球活动一下!

picture.image

各种风格都支持嗷!

SAM + MMagic = Generate Anything!

当下流行的 SAM(segment anything model)也可以为 MMagic 提供更多加持!想制作自己的动画,可以移步至 OpenMMLab PlayGroundhttps://github.com/open-mmlab/playground/blob/main/mmediting\_sam/README.md

picture.image

picture.image

使用 MMagic,体验更多生成的魔力!让我们一起开启超越编辑的新纪元!More than Editing, Unlock the Magic!

https://github.com/open-mmlab/mmagic

(欢迎体验,文末点击阅读原文可直达)

欢迎大家在评论区说出你想要 MMagic 支持的算法和功能,也许不久就能跟大家见面哦!

目前 MMagic SIG 正在招募中,欢迎扫码报名,与我们共建更先进、更全面的 AIGC 开源算法库!

picture.image

[复旦 MOSS 开源,主要设计者首次直播,开发历程独家分享!

2023-04-24

picture.image](https://mp.weixin.qq.com/s?__biz=MzI4MDcxNTY2MQ==&mid=2247511853&idx=1&sn=c03b4d8fa0ce6d305b7cd49f3a31ce29&chksm=ebb6a7cfdcc12ed9d0784b5055dc9fbe6197219f03fb8322971f4b544ed2c6a8d9373396b3a5&scene=21#wechat_redirect)

[首次线下大集合|多模态 AI 开发者聚会@深圳站

2023-04-24

picture.image](https://mp.weixin.qq.com/s?__biz=MzI4MDcxNTY2MQ==&mid=2247511853&idx=2&sn=3827eb36f27deadce2ed528311ec476d&chksm=ebb6a7cfdcc12ed9c0784b5f52b4148a78178592fbda2ecde87f0969b227ed1d37b374f0a52e&scene=21#wechat_redirect)

探秘 GPT 模型成功的背后:以数据为中心的人工智能技术

2023-04-21

picture.image

picture.image

0
0
0
0
评论
未登录
暂无评论