【发布时间】:2020-01-11 12:46:12
【问题描述】:
我有 2 种类型的图像要处理。一种具有白色背景,另一种具有深色背景。我的要求是为每种类型应用不同的阈值
例如:白色背景
(thresh, img_bin) = cv2.threshold(img, 128 , 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)
用于深色背景
(thresh, img_bin) = cv2.threshold(img, 128 , 255, cv2.THRESH_BINARY_INV + cv2.THRESH_OTSU)
我正在使用cv.imread(img,0)阅读图像
我正在做形态变换,所以我需要反转白色背景图像。但是对于深色背景,我不想反转。
【问题讨论】:
-
要确定背景是大多数白色还是黑色,您可以使用
cv2.countNonZero()。一种方法是如果返回值(白色像素)大于整个图像的 50%,则背景为白色,否则背景为黑色。根据结果,您可以应用适当的阈值 -
酷 - 请展示一些图片并说出您的问题或您遇到的问题。
-
这对我很有效。cv2.countNonZero() 谢谢