图片比较-直方图比较 - CalculateHistograms
函数简介
计算两张图片的直方图相似度,通过比较颜色分布直方图判断相似程度,识别的两个图像大小必须一致。
接口名称
CalculateHistograms
DLL调用
double CalculateHistograms(long ola, long imgPtr1, long imgPtr2);
参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| ola | 长整数型 | OLAPlug对象的指针,由 CreateCOLAPlugInterFace 接口生成。 |
| imgPtr1 | 长整数型 | 第一张图片的OLAImage对象地址 |
| imgPtr2 | 长整数型 | 第二张图片的OLAImage对象地址 |
示例
// 创建OLA对象
long ola = CreateCOLAPlugInterFace();
// 加载两张图片
long img1 = LoadImage(ola, "test1.bmp");
long img2 = LoadImage(ola, "test2.bmp");
// 计算直方图相似度
double similarity = CalculateHistograms(ola, img1, img2);
printf("图片相似度: %.2f\n", similarity);
// 释放图片内存
FreeImagePtr(ola, img1);
FreeImagePtr(ola, img2);
返回值
双精度浮点数,范围0.0到1.0。1.0表示完全相同,0.0表示完全不同,值越接近1表示图片越相似。
注意事项
- 两个图像大小必须一致
- 此函数比较的是图片的整体颜色分布,而不是像素级别的比较
