【发布时间】:2020-07-15 18:21:22
【问题描述】:
我正在尝试获取图像的 HSV、LAB 直方图以提取某些特征,但如果直方图考虑了我拥有的区域的黑色像素,我实际上无法从我的特征中获得任何准确的结果蒙面,请问我该如何解决这个问题,非常感谢任何帮助。
我正在使用 python。
这是一个示例图像,这是我尝试使用的代码。enter image description here
hsv_image = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)
hue = hsv_image[:,:,0].astype(float)
sat = hsv_image[:,:,1].astype(float)
val = hsv_image[:,:,2].astype(float)
hue[hue == 0] = np.nan
histr_lab = cv2.calcHist([hsv_image], [0], None, [255], [0, 255])
histr_lab1 = cv2.calcHist([hsv], [1], None, [255], [0, 255])
histr_lab2 = cv2.calcHist([hsv], [2], None, [255], [0, 255])
【问题讨论】:
-
谢谢!我后来才意识到这一点; michamei 解决方案有效,我还添加了 mask 参数,并且都有效。