如何用OpenCV检查V通道的亮度?

时间:2017-04-05 23:02:53

标签: python opencv

我需要找到一种评估图像“亮度”的方法。我们正在通过一个OCR系统来运行它,如果图像太亮或太暗,我们会发出警告,但我不确定它们的测量结果是什么。我汇集了一组测试数据,分为3类:无警告,太亮,太暗。我想我会做一些事情,比如将图像转换为HSV并检查V通道。坦率地说,我并不完全知道我在做什么,而用于Python的OpenCV文档非常不透明。我得到了计算V通道直方图(虽然我不确定args是否正确):

def calc_hist(image_path):
    image = cv2.imread(image_path)
    image = imutils.resize(image, height=500)
    hsv = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)
    hist = cv2.calcHist([hsv], [2], None, [256], [0,256])
    hist_array = hist.flatten()

同样,我不确定检查直方图是否是正确的方法,但基本上我正在尝试提出一些近似“亮度”的值,以便我可以比较这些图像组并尝试找到一个范围我们的OCR软件没有发出警告的值。

假设这些是正确的直方图,我继续对它们进行标准化并比较平均标准偏差。

0 个答案:

没有答案