mmdetection框架上将训练保存好的模型用于测试单张图片的方法有很多,但是从mmdetectionv1.0rc1版本及以后的版本中,源代码有了一定的更新,而官方文档上用于测试单张图片的方法还并未更新。网上相关教程也是老版本的教程,于是在此分享一下亲测有效的最新方法。

官方文档上测试单张图片方法:

在mmdetectionv1.0rc1及以后的版本中,做了以下变更:

1、show_result()函数被封装进了show_result_pyplot()函数中。

2、在show_result_pyplot()函数中,并未留出保存测试好图片的接口。

因此,为测试图片,需要做对应的更改。

1、新建test.py文件,然后直接上代码:

from mmdet.apis import init_detector, inference_detector
from mmdet.apis import show_result_pyplot
import osimagepath = r'D:\software\opensources\mmdet214\data\new_cell_cocoformat\valset' #需要加载的测试图片的文件路径
savepath = r'D:\software\opensources\mmdet214\configs\retinanet\cell\test_show' #保存测试图片的路径
config_file = r'D:\software\opensources\mmdet214\configs\cell\retinanet_r101_fpn_1x_cell.py' #网络模型
checkpoint_file = r'D:\software\opensources\mmdet214\work_dirs\retinanet_r101_fpn_1x_cell_1300_472\epoch_100.pth'  #训练好的模型参数
device = 'cuda:0'
# init a detector
model = init_detector(config_file, checkpoint_file, device=device)
# inference the demo imagefor filename in os.listdir(imagepath):img = os.path.join(imagepath, filename)result = inference_detector(model, img)out_file = os.path.join(savepath, filename)show_result_pyplot(model, img, result, out_file,score_thr=0.6)

2、修改mmdet\apis\inference.py文件中的以下函数(跟着代码中注释修改):

# mmdet\apis\inference.py
'''
'''def show_result_pyplot(model,img,result,out_file, #加入out_file,运行时把改行注释删除score_thr=0.3,title='result',wait_time=0):"""Visualize the detection results on the image.Args:model (nn.Module): The loaded detector.img (str or np.ndarray): Image filename or loaded image.result (tuple[list] or list): The detection result, can be either(bbox, segm) or just bbox.score_thr (float): The threshold to visualize the bboxes and masks.title (str): Title of the pyplot figure.wait_time (float): Value of waitKey param.Default: 0."""if hasattr(model, 'module'):model = model.modulemodel.show_result(img,result,out_file, #加入out_file,运行时把改行注释删除score_thr=score_thr,show=True,wait_time=wait_time,win_name=title,bbox_color=(72, 101, 241),text_color=(72, 101, 241))

保存上述修改过的文件以后运行即可test.py即可。

(最新)mmdetection测试单张/多张图片并保存相关推荐

  1. python怎样把两个图画到一起_python实现两张图片拼接为一张图片并保存

    本文实例为大家分享了python实现两张图片拼接为一张图片并保存的具体代码,供大家参考,具体内容如下 这里主要用Python扩展库pillow中Image对象的paste()方法把两张图片拼接起来 f ...

  2. python table类中的 可以作为初步观察工具_Python程序设计基础_课程2020最新章节测试网课课后答案...

    Python程序设计基础_课程2020最新章节测试网课课后答案 更多相关问题 科学探究的过程一般要经过______.作出假设.制定方案.实施方案,得出结论等五个步骤. 在生物学研究中,当实验的结果与原 ...

  3. python图像拼接_python实现两张图片拼接为一张图片并保存

    本文实例为大家分享了python实现两张图片拼接为一张图片并保存的具体代码,供大家参考,具体内容如下 这里主要用Python扩展库pillow中Image对象的paste()方法把两张图片拼接起来 f ...

  4. python将两张图片拼接成一张图_python实现两张图片拼接为一张图片并保存

    本文实例为大家分享了python实现两张图片拼接为一张图片并保存的具体代码,供大家参考,具体内容如下 这里主要用Python扩展库pillow中Image对象的paste()方法把两张图片拼接起来 f ...

  5. 软件测试岗位考核指标,(最新整理)测试人员考核标准

    <(最新整理)测试人员考核标准>由会员分享,可在线阅读,更多相关<(最新整理)测试人员考核标准(5页珍藏版)>请在人人文库网上搜索. 1.完整)测试人员考核标准(完整)测试人员 ...

  6. 职教云计算机网络基础题库,最新章节测试答案2020智慧职教云创业竞争力提升...

    计算机网络中,最新章节智慧职教争力通常把提供并管理共享资源的计算机称为( ). 测试记账凭证核算组织程序一般适用于( ).最新章节测试答案2020智慧职教云创业竞争力提升记账凭证核算组织程序登记总分类 ...

  7. 计算机专业英语在线测试第11章,最新章节测试答案2020学堂在线英文期刊论文写作...

    调查显示,最新章节线大学生自主时间充足,但没有充分利用. 测试信号识别颗粒是一种最新章节测试答案2020学堂在线英文期刊论文写作答案识别情绪的主要方法有_____. 基础生命支持时,学堂写作高质量胸外 ...

  8. 【opencv】opencv学习1——调取电脑摄像头拍摄一张图片并保存

    调取电脑摄像头 """ :param无 :return无 功能:调用笔记本摄像头获取视频图片 """"" import ...

  9. python开发区_最新章节测试答案2020智慧树知道Python程序设计

    最新章节测试答案2020智慧树知道Python程序设计 军事新闻 2020-09-05 00:52128未知admin 最新章节测试答案2020智慧树知道Python程序设计 更多相关问题 This ...

  10. 使用caffemodel模型(由mnist训练)测试单张手写数字样本

    caffe中训练和测试mnist数据集都是批处理,可以反馈识别率,但是看不到单张样本的识别效果,这里使用windows自带的画图工具手写制作0~9的测试数字,然后使用caffemodel模型识别. 1 ...

最新文章

  1. Java进程与线程的区别
  2. Html 5.2 的简单介绍及新增元素 dialog/dialog
  3. gaokao--选择开发什么项目
  4. 计算机网络应用基础第一章试题,计算机网络应用基础第一章测试题
  5. Vasya and Book
  6. hdu 2025 查找最大元素
  7. java criteria and_criteria用法
  8. 关于hexo与github使用过程中的问题与笔记
  9. java诺基亚nba,HMD 签约NBA 新秀劳里·马尔卡宁 为诺基亚手机品牌大使
  10. 【BZOJ4518】征途,斜率优化DP
  11. 大学计算机四级报名,2016下半年安徽理工大学计算机四级报名
  12. POJ2940 HDU1489 UVA11054 Wine Trading in Gergovia【Ad Hoc】
  13. 190306每日一句
  14. Java基础 从键盘录入10整数,如果录入了一个0,则提前停止录入,统计已经录入了多少个奇数
  15. squid笔记下载_Squid笔记APP下载|Squid笔记安卓版下载
  16. vim 插件配置与安装
  17. ECMAScript6 Proxy和Reflect 对象操作拦截以及自定义
  18. Mapper method ‘com.xxx.dao.ActivityDao.update attempted to return null from a method with a primiti
  19. 双11|NetSuite SuiteCommerce助你一臂之力
  20. com.netflix.hystrix.exception.HystrixRuntimeException short-circuited and no fallback available

热门文章

  1. 戴尔服务器r720矩阵卡无响应,戴尔r720阵列卡驱动
  2. 操作系统实验七(银行家算法)
  3. 运维审计系统:堡垒机
  4. excel柱状图自定x轴y轴_《excel柱状图自定x轴y轴》 如何更改EXCEL 图表中X轴的名称...
  5. 相约2021,回首2020 | 我在CSDN的年度总结
  6. php控制梯形图,如何画梯形图? plc梯形图怎么画?如何画plc梯形图
  7. win10休眠_最牛的win10优化设置方法大全
  8. 优秀数智生态伙伴|上海用诚软件廖晓军:以人才迭代推动云转型,实现专业化发展...
  9. 网络故障排查的思路和方法
  10. 招商银行软件开发笔试知识汇总