基于Python3.6的OpenCV图片色彩空间的转换

試著忘記壹切 提交于 2020-02-02 02:57:13

不同的色彩空间中对图片的色彩体现有很大不同

#色彩空间的相互转换:最常见的是HSV与RGB,YUV与RGB的相互转换
#常见色彩空间有:
#RGB:最常用
#HSV:对指定色彩铭感,用于查找表达特定颜色
#HIS:
#YCrCb:在人体肤色识别运用较多
#YUV:Android开发中运用较多

以下是对图片进行所有色彩空间的演示:


import cv2 as cv            ###导入openc包

def color_space_demo(image):
    gray = cv.cvtColor(image,cv.COLOR_BGR2GRAY)
    cv.imshow("gray",gray)
    hsv = cv.cvtColor(image,cv.COLOR_BGR2HSV)
    cv.imshow("hsv",hsv)
    yuv = cv.cvtColor(image,cv.COLOR_BGR2YUV)
    cv.imshow("yuv",yuv)
    Ycrcb = cv.cvtColor(image,cv.COLOR_BGR2YCrCb)
    cv.imshow("Ycrcb",Ycrcb)
    HIS = cv.cvtColor(image,cv.COLOR_BGR2HLS)
    cv.imshow("HIS",HIS)


print("--------hello python------------")
src=cv.imread("F:/shiyan/1.png")        ###读取F:/shiyan/1.png路径下的名为1格式为.png的图片
cv.namedWindow("input image",cv.WINDOW_AUTOSIZE)        ###给图片显示的窗口命名为input image
cv.imshow("input image",src)        ###显示图片
color_space_demo(src)
cv.waitKey(0)        ###等待下一步指令
cv.destroyAllWindows()        ###为了能正常关闭所有的绘图窗口。

图片示例如下:在这里插入图片描述

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!