前言:这是本渣大学以来在CSDN潜水三年半年的第一次发文。最近正在上OpenMM的公开课,马上也要读研了(cv方向),所以正好从现在开始不定时的把自己的一些总结发到CSDN上。(从零开始,求轻喷)
一、什么是OpenMM?
OpenMM并不是一个深度学习框架(如pytorch、TensorFlow),而是一个算法框架和生态。
具体解释:OpenMM其实是更上层的封装,其底层是基于pytorch编写的。
故我们说pytorch是深度学习框架,而OpenMM是算法框架。
二、总体框架概览
1.算法框架:提供各类算法及模型的上层封装,可以直接调用。如MMDetection框架,其中有各类目标检测网络与算法的实现,对于用户来说,直接调用就行,不需要自己再搭建网络。(如MMYOLO中有YOLOV5、V6、V8,RTMDet等)
2.部署框架:MMDeploy
三、OpenMMv2.0模块抽象
四、总结
- OpenMM的代码实现实际上非常复杂,但是用户完全可以将其作为黑箱来使用。其封装了许多顶会论文的算法模型,做科研的同学可以较为方便的通过调包来验证模型。
- 虽然说内部实现复杂,但是其有配置文件,要改具体网络直接更改配置文件即可。
- 因为OpenMM的开源特性,且是基于pytoch语言实现的,想要学习网络和算法的同学也可以通过阅读其源码来深入学习。
- 如果说想要构建自己的网络,还是建议使用pytorch一步步地搭建,毕竟OpenMM更多的是方便直接调用其库中已有的模型。
- 在第一次课中,主讲人提到了OpenMM的部署框架MMDeploy,不知道具体效果如何。
- OpenMM主要是面向cv方向的。