繁体   English   中英

在Python中合并OpenCV 3下的HSV频道

[英]Merge HSV channels under OpenCV 3 in Python

我正在尝试将HSV图像分割成其通道,更改它们并将它们合并回来,但是一旦我运行合并功能,通道就被解释为RBG通道,因此例如对于以下示例,我得到一个黄色图像,

import cv2

image = cv2.imread('example.jpg')
hsv_image = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)
h, s, v = cv2.split(hsv_image)
s.fill(255)
v.fill(255)
hsv_image = cv2.merge([h, s, v])

cv2.imshow('example', hsv_image)
cv2.waitKey()

使用Python在OpenCV 3中执行此操作的正确方法是什么?

图像始终显示为BGR。 如果要显示HSV图像,则需要先转换为BGR:

import cv2

image = cv2.imread('example.jpg')
hsv_image = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)
h, s, v = cv2.split(hsv_image)
s.fill(255)
v.fill(255)
hsv_image = cv2.merge([h, s, v])

out = cv2.cvtColor(hsv_image, cv2.COLOR_HSV2BGR)

cv2.imshow('example', out)
cv2.waitKey()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM