含mask的单通道灰度图内容可视化python

输入:单通道的灰度图,灰度图内含不同像素值的掩膜mask
输出:灰度图内的掩膜mask在RGB图像中输出

方法很简单,就是读取灰度图,根据掌握的像素值信息,分别赋予不同的颜色值像素进行保存输出。

如下输入的单通道灰度图:
含mask的单通道灰度图内容可视化python_第1张图片

使用如下代码处理:

import os
import sys
import cv2
import numpy as np 



def main():
    mask_dir = './mask'
    show_dir = './mask_out'
    for mskf in os.listdir(mask_dir):
        msfile = mask_dir + '/' + mskf
        # msimg = cv2.imread(msfile, cv2.IMREAD_GRAYSCALE) 读出是单通道
       

        msimg = cv2.imread(msfile)
                
        # poly = mask2poly(msimg)
        """提供的mask的像素值是0,1,2,0是背景,现在在三通道图像中针对像素值赋予颜色像素"""
        # msimg[msimg==1]=255
        rms = msimg[:,:,0]
        gms = msimg[:,:,1]
        bms = msimg[:,:,2]

        #1-0,255,0
        rms[rms==1] = 0
        bms[bms==1] = 255
        gms[gms==1] = 0

        #2-0,0,255
        rms[rms==2] = 0
        bms[bms==2] = 0
        gms[gms==2] = 255

        showimg = show_dir + '/' + mskf

        cv2.imwrite(showimg,msimg)
        

if __name__ == '__main__':
    main()

输出结果如下:

含mask的单通道灰度图内容可视化python_第2张图片

你可能感兴趣的:(常用高效技巧,软件方法和命令等,python,opencv,图像处理)