yolov5 segment对输出结果进行去框、调节mask透明度以及调节自己想要的掩膜颜色

一、去框:

    打开"segment/predict.py",去除以下代码:

if save_img or save_crop or view_img:  # Add bbox to image
    c = int(cls)  # integer class
    label = None if hide_labels else (names[c] if hide_conf else f'{names[c]} {conf:.2f}')
    annotator.box_label(xyxy, label, color=colors(c, True))
     annotator.draw.polygon(segments[j], outline=colors(c, True), width=3)

二、调节mask透明度

    打开”utils/plots.py”,找到以下代码,并修改alpha,alpha取值范围为0-1,越靠近1越不透明,越靠近0越透明。

def masks(self, masks, colors, im_gpu=None, alpha=0.5):

三、调节想要的颜色

    打开“utils/plots.py",找到以下代码,修改hexs里面的代号就行;

class Colors:
    # Ultralytics color palette https://ultralytics.com/
    def __init__(self):
        # hex = matplotlib.colors.TABLEAU_COLORS.values()
        hexs = ('FF3838', 'FF9D97', 'FF701F', 'FFB21D', 'CFD231', '48F90A', '92CC17', '3DDB86', '1A9334', '00D4BB',
                '2C99A8', '00C2FF', '344593', '6473FF', '0018EC', '8438FF', '520085', 'CB38FF', 'FF95C8', 'FF37C7')
        self.palette = [self.hex2rgb(f'#{c}') for c in hexs]
        self.n = len(self.palette)

    def __call__(self, i, bgr=False):
        c = self.palette[int(i) % self.n]
        return (c[2], c[1], c[0]) if bgr else c

    如果你只想要单一的颜色,则可以将该部分代码修改为:

    (只需要将self.black = (0, 0, 0),中的rgb参数(0,0,0)进行修改即可)

class Colors:
    def __init__(self):
        self.black = (0, 0, 0)  # 黑色

    def __call__(self, i, bgr=False):
        return self.black if not bgr else self.black[::-1]

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值