3.3.1 train 或者 val 流程 3.3.2 test 流程 4 总结 文@000007 0 摘要 在轻松掌握 MMDetection 整体构建流程(一) 文中,重点分析了 MMDetection 框架中 Model 整体构建流程,但仅对 Model 算法组件方面进行深入分析,并未涉及整个框架训练和测试流程。本文核心内容是按照抽象到具体方式,从多个层次进行训练和测试流程...
就是我们需要以类似于创建 Datasets 的方式创建一个 metainfo,将自己的 classes(标签类别)和 palette(调色板)写入,并且在 train_dataloader、val_dataloader 和 test_dataloader 里写入即可。 创建metainfo 写入train_dataloader 写入val_dataloader 写入test_dataloader 修改后我们再尝试在终端运行代码。 代码语言:javascri...
从数据集的原始数据文件中读取数据,并且按指定的格式组织成 pickle 文件保存,在 data_converter 里有具体的各个数据集的转换方式。如果想用于训练\测试的数据内容没有发生修改,之后直接使用第一次生成的 pickle 文件即可。以KITTI 为例,具体的流程为:生成train , val , test 的 anno 文件 生成velodyne_reduced,...
type=dataset_type, ann_file=data_root + 'VOC2007/ImageSets/Main/trainval.txt', img_prefix=data_root + 'VOC2007/', img_scale=(1333, 800), img_norm_cfg=img_norm_cfg, size_divisor=32, flip_ratio=0, with_mask=False, with_crowd=False, with_label=True), test=dict( type=dataset_type...
train_percent = 0.8 val_percent = 0.8 temp_xml = os.listdir(xmlfilepath) total_xml = [] for xml in temp_xml: if xml.endswith(".xml"): total_xml.append(xml) num = len(total_xml) list = range(num) tv = int(num * test_val_percent) ...
test 流程如上图所示, 我们可以看见在 test 的时候流程相比 train / val 更为简单,没有调用 runner 对象。 1) 调用 model 中的 forward_test 代码语言:javascript 复制 #=== mmdet/models/detectors/base.py/Base3DDetector === def forward_test(self, points, img_metas, img=None, **kwargs): num_a...
test 流程如上图所示, 我们可以看见在 test 的时候流程相比 train / val 更为简单,没有调用 runner 对象。 1) 调用 model 中的 forward_test #=== mmdet/models/detectors/base.py/Base3DDetector ===def forward_test(self, points, img_metas, img=None, **kwargs):num_augs = len(points)if num...
如果不是完全按照coco格式,需要修改加载图片路径 data里的train、val、test都需要修改 二:训练模型 python tools/train.py configs/yolox/yolox_l_8x8_300e_coco.py --resume-from *.pth --resume-from: 恢复继续训练 nohup python tools/train.py configs/mask_rcnn/mask_rcnn_r50_fpn_1x_coco.py --re...
--stage:测试结果文件的三种stage(train/val/test),默认为val --output:测试图片的保存路径,默认为output 运行如下命令: python DetVisGUI/DetVisGUI.py test_work_dirs/faster_rcnn_r50_fpn_1x_coco.py --det_file test_work_dirs/result12.pkl --output test_work_dirs/val_result ...
注意:train/val和test的运行逻辑有区别: 在train或者val模式下,运行逻辑是: 1.首先在runner里面 outputs=self.model.train_step(data_batch,self.optimizer,**kwargs)2.其首先调用MMDataParallel.train_step,这个函数的核心功能就是把dc格式的数据去掉,变成tensor ...