【发布时间】:2016-08-24 17:16:49
【问题描述】:
函数cv2.cvtColor(img, cv2.COLOR_RGB2HSV)将RGB图像转换为HSV图像。
当我保存此图像并使用图像查看器打开它时,为什么它在视觉上与 RGB 图像不同?
RGB
HSV
【问题讨论】:
-
观众可能忽略了色彩空间是 HSV 的事实,并假设为 RGB。然后它将 H 通道显示为红色等...
-
opencv 假定 imwrite 和 imshow 中的 bgr 图像,并将处理任何 3 通道 mat,就好像它是 BGR 一样
-
@Micka 如果是这样的话,个别范围(g(0 - 255),s(0 - 360))不会干扰或导致一些错误
-
在 opencv 中,色调通道减少到 0..180(半色调)以适应 1 个字节。饱和度和值分别为 0..255
-
请注意 cv2.cvtColor(img, cv2.COLOR_RGB2HSV) 如果你没有手动转换成 RGB 会出错,因为通常颜色空间是 BGR 所以你应该使用 cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
标签: opencv computer-vision rgb hsv