OpenCV + Python 实现静态图像色彩分割

版权声明:如需转载请标注 https://blog.csdn.net/weixin_40973138/article/details/84484388

实现色彩分割基本步骤


Created with Raphaël 2.2.0 开始 导入目标图像,获取图像信息 对目标图像进行色彩空间转换 设置要分离出来的颜色所对应BGR 色彩空间的上下限 依据设定的上下限对目标图像进行二值化转换 将得到的二值化图像与原图进行“与”操作 结束

在这里插入图片描述

Code:

# --coding: utf-8--
import cv2 as cv
import numpy as np


def color_seperate(image):
        hsv = cv.cvtColor(image, cv.COLOR_BGR2HSV)   #对目标图像进行色彩空间转换
        lower_hsv = np.array([100, 43, 46])          #设定蓝色下限
        upper_hsv = np.array([124, 255, 255])        #设定蓝色上限
        mask = cv.inRange(hsv, lowerb=lower_hsv, upperb=upper_hsv)  #依据设定的上下限对目标图像进行二值化转换
        dst = cv.bitwise_and(src, src, mask=mask)    #将二值化图像与原图进行“与”操作;实际是提取前两个frame 的“与”结果,然后输出mask 为1的部分
                                                     #注意:括号中要写mask=xxx
        cv.imshow('result', dst)                     #输出


src = cv.imread('/home/pi/Desktop/blue_apple.jpg')   #导入目标图像,获取图像信息
color_seperate(src)
cv.imshow('image', src)
cv.waitKey(0)

cv.destroyAllWindows()

二值化图像:
在这里插入图片描述
最后结果:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_40973138/article/details/84484388