python2.7 - 多个opencv直方图的平均值

时间:2016-08-15 09:08:31

标签: python-2.7 opencv numpy image-processing histogram

我正在使用python2.7 opencv库来计算一些图像的直方图,所有图像都完全相同(cv2.calchist)

我需要做两件事:  1.计算多个图像的平均值 - 多个图像代表一个相似的对象,因此我希望得到该对象的“代表性”直方图(如果你有更好的想法,我愿意接受建议),以便进行未来的比较。  2.将直方图数据存储在我的mongo数据库中以供将来比较(cv2相关)

我认为与该问题相关的唯一代码是我的histogram_comparison代码:

def histogram_comparison(real, fake):
images = [real, fake]
index = []
for image in images:
    image = image.decode('base64')
    image = np.fromstring(image, dtype=np.uint8)
    image = cv2.imdecode(image, 1)
    image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

    hist = cv2.calcHist([image], [0, 1, 2], None, [32, 32, 32],
                        [0, 256, 0, 256, 0, 256])
    hist = cv2.normalize(hist).flatten()
    index.append(hist)
result_dist = cv2.compareHist(index[0], index[1], cv2.cv.CV_COMP_CORREL)
return round(result_dist, 5)

取自:http://www.pyimagesearch.com/2014/07/14/3-ways-compare-histograms-using-opencv-python/

我确实意识到当使用numpy(或者它是scipy?)直方图时,有一种简单的方法来获取垃圾箱并对它们进行平均,但后来我不确定如何比较直方图,所以我宁愿留下来OpenCV的

提前致谢

0 个答案:

没有答案