如何计算直方图之间的相似性百分比(特征向量)

时间:2016-07-03 06:37:51

标签: c# image-processing histogram accord.net

我需要比较和计算人脸识别的灰度图像的局部二值模式(LBP)直方图之间的相似性。

计算直方图采用数组形式,并使用Accord.net来计算它。

(直方图是int [,][]形式,当我使用断点获得直方图时,我获得int [3,3][256]因此它们是[0,0], [0,1], [0,2], [1,0] ...... [2,1], [2,2][,]数组内部的组合,那里是256 values0255

我获取直方图的代码是这样的;

//LBP setting is default which are;
//Cell size of the histogram is 6 pixcel
//Block size of the histogram is 3 cells
 private int [,][] histo (BitmapSource croppedImage)
 {
     var converted = BitmapFromSource(croppedImage);
     var output = LBP.ProcessImage(converted);
     var qwert = LBP.Histograms;
     { LBP.ProcessImage(converted); };

     return qwert;
 }

如何获得直方图之间的相似性百分比?

你可以给我一些提示来比较它们吗?

此外,我在1张图片下共有48个直方图。是否有任何有效的方法将48个直方图组合在一起,以便与另一组48个直方图进行比较?以及有效库然后Accord.Net计算LBP直方图的任何建议? Accord.Net的信息和文件很少,因为我是初学者,所以我更难学习它。

感谢您阅读我的帖子和 我非常感谢你的帮助。

1 个答案:

答案 0 :(得分:0)

OpenCV 是领先的图像处理库,它提供了许多广为人知的算法。它可以在CSharp中找到。

对于直方图比较,卡方距离是一种很好的方法。它在OpenCV中可用。

对于第3个问题,连接直方图,您必须标准化连接直方图到[0-1]范围内,以便更好地进行比较。