MMDetection V2.0 可视化参数修改


将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图上的检测结果图被我改了字体参数后生成的图覆盖掉了,懒得再改回去了,用了张自然图像上的结果)
框很细,字很小、很细
修改框粗细,字体粗细、颜色
在这里插入图片描述

  • 7
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
mmdetection是一个基于PyTorch的目标检测工具包,它提供了丰富的数据增强方式来增加训练数据的多样性。要可视化mmdetection中的数据增强效果,你可以按照以下步骤进行操作: 1. 在mmdetection的配置文件中找到数据增强的部分。通常在`configs`文件夹下的对应任务的配置文件中可以找到,比如`configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py`。 2. 在配置文件中找到`train_pipeline`,这是用于训练时的数据增强操作序列。其中包含了一系列的数据增强操作,比如随机裁剪、随机翻转、颜色变换等。 3. 在训练代码中找到数据加载部分,一般在`tools/train.py`文件中。在数据加载部分,你可以找到用于加载训练数据的代码。 4. 在数据加载代码中,找到`transforms.Compose`函数,这是用于将一系列数据增强操作组合成一个可执行的函数。 5. 你可以在加载数据之前,将数据增强操作传入`transforms.Compose`函数中。然后,在训练过程中,你可以使用`imshow`等函数来将经过数据增强后的图像可视化出来。 下面是一个示例代码片段,展示了如何在mmdetection可视化数据增强效果: ```python from mmdet.datasets.pipelines import Compose from mmdet.datasets.builder import build_dataset # 加载配置文件 cfg = mmcv.Config.fromfile('configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py') # 构建数据集对象 dataset = build_dataset(cfg.data.train) # 获取训练数据增强操作序列 transforms = dataset.pipeline.transforms # 创建Compose对象 transform = Compose(transforms) # 随机选择一张图片进行可视化 img, _ = dataset[0] transformed_img = transform(img, None) # 使用imshow函数可视化原始图像和经过数据增强后的图像 import matplotlib.pyplot as plt plt.subplot(1, 2, 1) plt.imshow(img) plt.title('Original Image') plt.subplot(1, 2, 2) plt.imshow(transformed_img) plt.title('Transformed Image') plt.show() ``` 你可以根据自己的需求修改代码中的路径和参数,以适应你的数据集和配置文件。这样,你就可以在mmdetection可视化数据增强效果了。希望对你有帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值