MMEditing如何添加自己的新模型

如何使用商汤的框架MMEditing添加一个自己的新模型嘞?因为自己平时做超分辨率,所以这里用BasicVSR的改动作为例子,一般需要在MMEditing中添加三个文件:配置,backbones以及restores。

BasicSR原始的地址:https://github.com/xinntao/BasicSR.git

这里附上我的仓库地址:https://github.com/ACALJJ32/BasicSR_ACALJJ32.git

首先添加配置文件:

MMEditing如何添加自己的新模型_第1张图片

 这里是以IconVSR为例添加的,如果是做MMEditing框架下的其他领域问题,只要在对应的目录下添加配置文件就行,中途修改了loss,loss的添加方式在我的另一篇博客里有讲:BasicVSR(CVPR2021)复现过程_ACALJJ32的博客-CSDN博客_basicvsr

model type对应的类型文件需要在restores目录中重新实现,generator的type需要在backbones目录下实现。

在backbones目录下添加自己实现的新网络,这里我起了一个新的模型名字BasicVSRGaussModulationV2为例,实现如下:

MMEditing如何添加自己的新模型_第2张图片

 这里实现了自己的模型后,需要在当前的模块中注册添加你的模型:

MMEditing如何添加自己的新模型_第3张图片

 添加好以后,你的配置文件就可以找到你的模型了。然后再实现自己的restores文件:

MMEditing如何添加自己的新模型_第4张图片

 在文件需要实现三个函数forward_train,forward_test,train_step,这三个函数是需要自己重写的,里面具体的细节可以参考其他模型的实现。

MMEditing如何添加自己的新模型_第5张图片

 比如在这个forward_train里面,self.generator就是你的模型,output就是输出。

MMEditing如何添加自己的新模型_第6张图片

 和backbones下面同样的做法,在这个路径下的__init__.py文件下引用你的类,让你的配置文件可以找到。

完成这三步后就可以使用你的新模型了!!

你可能感兴趣的:(视频超分(CV),论文复现,深度学习,人工智能)