如下,有make_model dict load 啥的 就是在记载预训练模型。 然后,保存模型就是save啥的之类的。 model = Net.make_model(opt) model_dict = model.state_dict() pretrained_dict = torch.load(opt.resume, map_location='cuda:0') for key in model_dict.keys(): model_dict[key] = pretrained_dict[key] model.load_state_dict(model_dict) model = model.to(opt.device)
在inference过程中,一般就会把自己网络模块给导入过来然后方便调用测试:
比如Boosted-VSR网络中就是,导入了Bossted_Basicvsr里面的model_test进行测试
Net就是加载模型。
SRmodel = import_module(opt.model) Net = import_module('networks.' + opt.model + '_arch')
关于那个传参数的,今天又差点忘了。。。。
有--开头的是可选参数,在终端中传入参数时,要写出--config之类的,不然代码识别不了。
另外,关于另一个action = store_true 就是自动传入这个true,store_false 则是false。
关于mmeditig训练会传入的config文件:
在train.py中利用
Config.fromfile(args.config)
对这个config的配置文件进行解析的。
然后config文件,就写有关于这个网络训练,测试的流程。实现了解耦,很高效简洁。(但具体 怎么调用这个config写的配置文件的东西 暂时。。。)