欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MMDetection V2.0 可视化参数修改

程序员文章站 2022-03-06 10:32:45
MMDetection V2.0 可视化参数修改改变检测框的颜色、粗细、文字大小改变文字粗细修改效果将MMDetection的检测结果在SAR图上可视化时,发现字体太小、太细,看不清。修改MMDtection中一些参数可以改变检测框的颜色、粗细、字体大小、字体粗细。改变检测框的颜色、粗细、文字大小找到mmdet/models/detectors/base.py文件,修改class BaseDetector()中的show_result()函数的输入参数 def show_result(self...


将MMDetection的检测结果在SAR图上可视化时,发现字体太小、太细,看不清。修改MMDtection中一些参数可以改变检测框的颜色、粗细、字体大小、字体粗细。

改变检测框的颜色、粗细、文字大小

找到mmdet/models/detectors/base.py文件,修改class BaseDetector()中的show_result()函数的输入参数

    def show_result(self,
                    img,
                    result,
                    score_thr=0.3,
                    bbox_color='green',#bbox的颜色
                    text_color='yellow',#字体颜色
                    thickness=3, #bbox的粗细
                    font_scale=1.5,#字体大小
                    win_name='',
                    show=False,
                    wait_time=0,
                    out_file=None):

改变文字粗细

修改mmdet/models/detectors/base.py文件只能改变文字大小,无法改变字体粗细。其实show_result()函数调用了mmcv.imshow_det_bboxes()这个函数来画bbox,但是这个函数传入的参数没有关于字体粗细的。
找到mmcv.imshow_det_bboxes()函数所在的文件anaconda3/envs/open-mmlab/lib/python3.7/site-packages/mmcv/visualization/image.py。发现mmcv.imshow_det_bboxes()函数调用cv2.putText函数将类别文字标注到图上,加上文字粗细参数即可。

cv2.putText(img, 
			label_text, 
			(bbox_int[0], bbox_int[1] - 2),
             cv2.FONT_HERSHEY_COMPLEX, 
             font_scale, 
             text_color,
             5#加入字体粗细参数)

修改效果

默认框、默认字体(SAR图上的检测结果图被我改了字体参数后生成的图覆盖掉了,懒得再改回去了,用了张自然图像上的结果)
MMDetection V2.0 可视化参数修改
修改框粗细,字体粗细、颜色
MMDetection V2.0 可视化参数修改

本文地址:https://blog.csdn.net/i013140225/article/details/109819366