测试问题
jiangyichen19 opened this issue · 6 comments
博主你好,我最近在复现您的模型,根据你的readme文件,下载了模型参数,并运行了eval的代码
1.python main.py --eval --coco_path /data/coco --resume /weights/AnchorDETR_r50_c5.pth
但是发现选择eval模式进行测试的时候,并不会使用coco的测试数据集,而是使用的coco的训练集进行测试。
我测试了一下,应该是没有问题。加上‘--eval’是用val集测试,不会用训练集。如果还有问题,可以发一下log信息。另外,默认的setting是dc5模型,模型应该加载对应的dc5模型,或者把dilation参数改一下
感谢回复,我测试了,确实可以,但看了一下代码,好像预测的图片无法保存是吗?
是的,一般来说不会保存图片,不过在--eval模式下,我们保存了json结果在--output_dir目录下,您可以用detectron2的可视化代码来可视化结果。
再次感谢您的回复,我看了代码,理论上是会保存一个json文件
parser.add_argument('--output_dir', default='/output', help='path where to save, empty for no saving')
if args.eval: test_stats, coco_evaluator = evaluate(model, criterion, postprocessors, data_loader_val, base_ds, device, args.output_dir, save_json=True) if args.output_dir: utils.save_on_master(coco_evaluator.coco_eval["bbox"].eval, output_dir / "eval.pth") if utils.is_main_process(): with open(os.path.join(args.output_dir, 'results.json'), 'w') as f: json.dump(coco_evaluator.results['bbox'], f) return
但不知道为什么,我测试完之后,在我设置的 output文件夹下面下没有看到json文件,这让我感到疑惑,尝试了几次之后,还是没有
可能有两个原因:一个是需要在--eval
模式下才会保存;另一个可能是您的保存路径 /output
在根目录下可能没有写权限,可以换个路径试一试。
This issue is not active for a long time and it will be closed in 5 days. Feel free to re-open it if you have further concerns.