下面我们继续了解下 2 月 OpenMMLab 各个算法库都有哪些亮点功能发布吧~
事件二
亮点功能抢先看
MMDetection3D
重构了三个坐标系,使它们的旋转方向和原点更加一致,并进一步消除了不同数据集和模型中不必要的 hack,统一相机键以在不同数据集上的坐标系之间进行一致的转换,便于用户的理解和使用,同时提供了详细的坐标系文档供参考。除此以外,还支持了众多新模型。
MMSegmentation
支持了 ConvNeXt: A ConvNet for the 2020s (CVPR'2022),配合最新的 MMClassification 去使用它吧。
MMClassification
支持了 ResNetV1c 和 Wide-ResNet 两个 ResNet 变种,并提供了预训练模型。
MMPose
支持了 HRFormer。
HRFormer ("HRFormer: High-Resolution Vision Transformer for Dense Predict") 是大名鼎鼎的 HRNet 团队发表在 NeurIPS'2021 的工作。该方法结合了 HRNet 中融合多分辨率特征的设计和 Transformer 中的 self-attention 机制,是将视觉 Transformer 应用在姿态估计方向的代表性工作之一。
MMAction2
支持了 Multigrid 训练加速算法。
MMEditing
支持了视频超分辨率模型 EDVR-L ,复现了 NTIRE 2019 比赛精度。
MMTracking
支持了单目标跟踪算法 STARK: Learning Spatio-Temporal Transformer for Visual Tracking (ICCV2021)。
MMSelfSup
支持了 MAE 新算法。
MAE 为 fair 在 2021 年末推出的基于 mask image modelling 的自监督学习算法,因其简单的结构,轻量级的 encoder 计算量, 以及其优良的性能,深受大家追捧。目前 MMSelfSup 已完全支持该算法。
MMDeploy
支持了 Windows 平台,参考文档:
https://github.com/open-mmlab/mmdeploy/blob/master/docs/zh_cn/build/windows.md
下面再带大家继续了解下 2 月各个算法库具体的更新情况~
事件三
算法库全部更新情况
上下滑动查看各算法库更新详情
1. MMCV
新功能
- 支持 3D 检测相关的 spconv 算子
- Config 支持深拷贝
Bug 修复
- 修复 min_area_polygons 算子实现错误
- 修复处理旋转框时,batch_nms 计算错误
- 修复 EvalHook 保存最优权重时的潜在错误
代码改进
- 优化 RoIAlignRotated 接口,与 RoIAlign 保持一致
- 当 torch >= 1.7 时,HSwish 模块使用 torch 的原生实现
感谢
@nijkah @makifozkanoglu @jamiechoi1995 @rentainhe @makifozkanoglu
在此版本中的贡献
更多内容请见:
https://github.com/open-mmlab/mmcv/releases/tag/v1.4.5
&
https://github.com/open-mmlab/mmcv/releases/tag/v1.4.6
2. MMDetection
新功能
- 支持全景分割算法 MaskFormer
- 支持目标检测算法 DyHead
- 使用了 mmcls release 的基于 ResNet Strikes Back 策略的 ResNet 预训练作为 backbone,并将其使用在 RetinaNet、Faster/Mask/Cascade Mask R-CNN 目标检测算法上。我们精调了它的相关超参,性能方面能够带来 3~4 mAP 的稳定提升
- 支持 Open Images Dataset
- 支持使用 mmcls 中的 TIMM 骨干网络
- 支持全景分割的可视化
Bug 修复
- 修复 key_score 为 None 时无法保存最佳检查点的问题
- 修复 MixUp 变换中过滤框失败的情况
- 在 SABLHead 中添加缺失的属性
- 修复混淆矩阵中存在 NaN 时的错误
- 修复下游任务中的 PALETTE 属性错误
代码改进
- 加速 YOLOX 中的 SimOTA 匹配
- 添加 docs_zh-CN/tutorials/init_cfg.md 的中文翻译
感谢
@shinya7y @LuooChen @dvansa @siatwangmin @vikashranjan26 @haofanwang @jamiechoi1995 @HJoonKwon @yarkable @zhijian-liu @RangeKing
在此版本中的贡献
更多内容请见:
https://github.com/open-mmlab/mmdetection/blob/master/docs/en/changelog.md
3. MMDetection3D
新功能
- 支持新的单目 3D 检测模型: PGD, SMOKE, MonoFlex
- 支持新的 LiDAR 3D 检测模型 PointRCNN
- 支持新的 backbone: DGCNN
- 支持 S3DIS 数据集的 3D 检测
- 支持 windows 编译
- S3DIS 上 PAConv 全量 benchmark
- 文档改进,中文文档补全
- 支持单目 3D 检测模型的 CPU 训练
代码改进
- 支持基于距离度量的点采样
- 重构框架坐标系
- 统一 PointFusion 中的相机键和不同系统之间的转换
- 添加支持 benchmark regression 的脚本
- 更改 Group-Free-3D 配置中的 repeat 设置以减少训练周期
- 添加 KITTI AP40 评估指标
- 为 SECOND 添加 mmdet3d2torchserve 工具
- 支持最新版本的 numba ,同时考虑到和 CUDA 9.0 的兼容性,锁定版本到 0.53.0
- 支持数据增强可视化
- 为 CameraInstance3DBoxes 类添加 local_yaw 属性
- 支持在 KITTI 数据集中使用道路平面信息
- 弃用对 python setup.py test 的支持
- 减少多进程线程数以加速训练
感谢
@THU17cyz @wHao-Wu @wangruohui @Wuziyi616 @filaPro @ZwwWayne @Tai-Wang @DCNSW @xieenze @robin-karlsson0 @ZCMax @Otteri
在此版本中的贡献
更多内容请见:
https://github.com/open-mmlab/mmdetection3d/blob/master/docs/en/changelog.md
4. MMSegmentation
新功能
- 支持了 ConvNeXt :A ConvNet for the 2020s (CVPR'2022)
- 支持了 iSAID 遥感图像分割数据集
- 正式支持了 Windows 操作系统下的推理
Bug 修复
- 修复了 Swin Transformer 里面 mpl_ratio 的类型错误
- 修复了 ./demo 文件夹里的路径错误
- 修复了 遥感图像数据集 Potsdam 数据转换的错误
- 让求解 accuracy 时考虑 ignore_index
- 在单元测试里加入 PyTorch HardSwish 断言
- 修复了 SETR 无法加载预训练模型的错误
- 上传了完整的 STDC 模型
- 修复了 DNLHead 导出 ONNX 推理的 difference type cast error
代码改进
- 重构了4个解码头, ASPP, FCN, PSP, Uper, 将 forward function 拆分成 _forward_feature 和 cls_seg
- 在 Resize 函数里增加 min_size 参数来使得特征图 size 大于 slide window
- 修改了 pre-commit hooks
感谢
@JiaYanhao @andife @SBCV @HJoonKwon @Tsingularity @Waterman0524
在此版本中的贡献
更多内容请见:
https://github.com/open-mmlab/mmsegmentation/releases/tag/v0.22.1
5. MMClassification
新功能
- 支持 ResNet V1C
- 支持 Wide-ResNet
- 支持 Gem Pooling
Bug 修复
- 修复 Conformer 在输入尺寸不规则时出现的错误
- 修复分布式训练中临时文件夹检查可能导致的问题
代码改进
- 复现 DeiT 训练精度
- 支持 ViT 相关模型的动态输入尺寸
- 支持 ConcatDataset 的 evaluate
- 增强 pipeline 可视化工具,现在支持可视化所有中间结果
感谢
@HumberMe @twmht @yasu0001 @okotaku
在此版本中的贡献
更多内容请见:
https://github.com/open-mmlab/mmclassification/releases/tag/v0.21.0
6. MMPose
新功能
- 支持 HRFormer
- 模型部署功能已在 MMDeploy 中支持
- 支持在 Windows 系统使用 pip 安装 MMPose
- 增加了 WebcamAPI 的教程文档
Bug 修复
- 修复了 JHMDB 数据集上预训练模型 config 中的 bug
- 修复了 inference tracking 中 area 计算错误的问题
- 修复了注册器 MODEL_WRAPPERS scope 冲突的问题
- 修复了可视化工具中部分函数对颜色通道顺序定义模糊的问题
代码改进
- 重构多视角 3D 姿态估计框架,以实现更好的模块化和可扩展性
- 修改了 Dataset 中 evaluation 接口的参数和部分实现,以和其他 OpenMMLab 算法库保持一致
- 优化了 inference 接口代码
- CPU 训练兼容 MMCV < 1.4.4
- 更新了 MMCV 在 CI 中的安装方式
感谢
@pallgeuer
在此版本中的贡献
更多内容请见:
https://github.com/open-mmlab/mmpose/blob/master/docs/en/changelog.md
7. MMAction2
新功能
- 支持了 Multigrid 训练加速算法
- 支持了 CPU 训练
- 支持了 audio demo
Bug 修复
- 修复了 printout 的 bug
- 修复了 非分布式多 GPU 训练的 bug
- 修复了 models/losses/cross_entropy_loss.py 中 class weight 的 device 问题
- 修复了分布式引起的 bug
代码改进
- 更新了训练和测试中多进程的设置
- 在 ava_dataset.py 增加了 fps 的变量
- 对 AVA config 文件设置了 tes_mode
- 在 readme 新增了视频结构化 demo
感谢
@jamiechoi1995 @rlleshi @michael-camilleri
在此版本中的贡献
更多内容请见:
https://github.com/open-mmlab/mmaction2/blob/master/docs/changelog.md
8. MMGeneration
新功能
- 支持 StyleGAN3 Inference
- 支持 StyleClip
- 支持 CPU 训练
Bug 修复
- 修复非并行情况下指定 GPU 运行的潜在错误
- 修复模型无效下载链接
代码改进
- 更好的中文文档支持
感谢
@gvalvano @JimHeo @plutoyuxie
在此版本中的贡献
更多内容请见:
https://github.com/open-mmlab/mmgeneration/blob/master/docs/en/changelog.md
9. MMEditing
新功能
- 为图像和视频添加测试时间 ensemble,并支持 BasicVSR 系列中的 ensemble (#585)
- 支持 AOT-GAN (正在进行中的工作) (#674, #675, #676)
- 支持 CAIN (#683, #691, #709, #713)
- 新增 basic interpolater (#687)
- 新增 BaseVFIDataset and VFIVimeo90KDataset (#695, #697)
- 新增 video interpolation demo (#688, #717)
- 在 RDDBNet 中支持多种 scale (#699)
- 在 demo 中支持 Ref-SR 推理 (#716)
- 在 REDS 数据集上支持 EDVR-L (#719)
- 支持 CPU 训练 (#720)
- 支持在 Windows 中运行 (#732, #738)
- 支持 CPU 中的 DCN (#735)
Bug 修复
- 修复文档中的链接问题 (#703, #704)
- 修复 Dockerfile 中的 MMCV 参数 (#708)
- 修复不可执行文件的文件权限 (#718)
- 修复一些与 numpy 相关的弃用警告 (#728)
- 删除 TestVFIDataset 中的 __init__ (#731)
- 修复数据集说明文档中的数据类型 (#739)
- 修复说明文档中的数学符号 (#741)
- 修复 copyright commit hook 中忽略的文件夹 (#754)
- 删除加载中的重复测试 (#756)
代码改进
- 弃用对 "python setup.py test" 的支持 (#701)
- 在训练和测试中添加 multi-processing 设置 (#707)
- 添加 OpenMMLab 网站和平台链接 (#710)
- 重构各模型的 README 文件 (#712)
- 使用 package.version.parse 替代字符串版本比较 (#723)
- 添加 Ref-SR 演示和视频帧插值演示的文档 (#724)
- 重构 README.md 并增加插帧算法相关内容 (#726)
- 更新 pre-commit hook 中的 isort 版本 (#727)
- 重新设计 Linux 的 CI (#734)
- 更新 install.md (#763)
- 在 README 文件中重新组织 OpenMMLab 项目 (#764)
- 为部署工具添加弃用消息 (#765)
感谢
@quincylin1 @Juggernaut93 @anse3832 @nijkah
在此版本中的贡献
更多内容请见:
https://github.com/open-mmlab/mmediting/blob/master/docs/zh_cn/changelog.md
10. MMTracking
新功能
- 支持单目标跟踪算法 STARK
- 支持多目标跟踪算法中 HOTA 评估标准
- 支持多目标跟踪数据集 TAO
Bug 修复
- 限制 attributee 安装版本,防止 vot-toolkit 对其不兼容
- demo 中输入视频文件夹允许包含非图片文件以及文件名中数字长度不一致
更多内容请见:
https://github.com/open-mmlab/mmtracking/blob/master/docs/en/changelog.md
11. MMFlow
新功能
- 官方支持 CPU 训练和推理
- 官方支持模型在 Windows 平台推理
- 添加 census loss, SSIM loss and smoothness loss
Bug 修复
- 更新了 Flyingthings3d_subset 含有 nan 文件列表
- PWC-Net+ 配置文件补充 pretained 模型地址
- 修复了非分布式多 GPUs 训练的 bug
- 修复了写光流数据到文件的 bug
代码改进
- 更新了 MMCV 安装方法
- 升级了 pre-commit hook isort 版本
- 添加了多进程启动设置脚本
- 修改了文档中失效的链接
感谢
@gxiaotian @lhao0301
在此版本中的贡献
更多内容请见:
https://github.com/open-mmlab/mmflow/releases/tag/v0.3.0
12. MMSelfSup
新功能
- 支持 MAE 新算法
- 增加 Places205 下游基准测试
Bug 修复
- 修复部分配置文件中的错误
- 修复图像读取通道问题并更新相关结果
- 修复在使用 prefetch 时,部分 dataset 输出格式不匹配的问题
- 修复 t-sne 'no init_cfg' 的错误
代码改进
- 配置文件中弃用 imgs_per_gpu, 改用 samples_per_gpu
- 更新 MMCV 的安装方式
- 为算法 readme 和代码版权增加 pre-commit 钩子
- 在 CI 工作流中添加 Windows 测试
感谢
@wang11wang @c-liangyu @mitming
在此版本中的贡献
更多内容请见:
https://github.com/open-mmlab/mmselfsup/blob/master/docs/zh_cn/changelog.md
13. MMRazor
新功能
- 支持 MobileNet 系列搜索空间(#82)
- 支持 CPU 训练(#62)
- 支持自动重启训练(#61)
Bug 修复
- 修复 show_result 时的 bug(#52 )
- 修复非分布式模式训练或测试时的bug(#63)
- 修复 KL 散度计算数值不正确的 bug(#35)
- 修复 WSLD config 中的错误(#26)
- 修复 DetNAS config 中的错误(#103)
- 修复slurm_train_mmcls.sh 的 bug(#90)
代码改进
- 修复了一些拼写错误(#6, #16, #18, #73)
- 修复了一些docstring 中的错误(#24, #29)
感谢
@hunto @syswyl @tkhe @dreamer121121
在此版本中的贡献
更多内容请见:
https://github.com/open-mmlab/mmrazor/releases/tag/v0.2.0
14. MMDeploy
新功能
- 支持在 Windows 平台下的部署
- 支持 MMPose 里 3 种模型转换:HRNet,LiteHRNet,MSPN
- 支持 MMDetection GFL 模型的部署
- 优化了 delta2bboxes 的导出,onnx 算子节点大幅减少
Bug 修复
- 解决了 ONNXRuntime Wrapper 在 GPU 上推理失败的问题
- 修复了 OpenVINO 在 python 3.6 下测试失败的问题
代码改进
- 增加了对 TensorRT 的版本检查
- 支持了 MMOCR v0.4+
感谢