Hello Mat

 找回密码
 立即注册
查看: 7067|回复: 0

巴氏距离和巴氏系数

[复制链接]

1298

主题

1524

帖子

114

金钱

管理员

Rank: 9Rank: 9Rank: 9

积分
22653
发表于 2017-1-23 20:45:50 | 显示全部楼层 |阅读模式
       对于在X 数域上的两个离散概率分布p 和q,巴氏距离定义为:
                                                                              DB(p,q) = -ln(BC(p,q))
其中 BC(p,q) = Σsqrt(p(x)*q(x))
       BC 被称作Bhattacharyya 系数(巴氏系数),0≤BC≤1 且0≤DB≤∞
       巴氏系数全称为巴塔恰里雅(Bhattacharyya coefficient) 系数,是向量相似度匹配中(如:用于衡量参考模版与候选模版的颜色概率分布的相似度或者说相关性测量)最常用的小算法。

      例如两幅图像A和B进行巴氏系数求解,求解A的直方图p,B的直方图q
  1. float CalcuBhattacharyya( float *p, float *q, int length)
  2. {
  3. //参数:p和q为指向待匹配的两个向量(一维数组)的首地址指针,//length为数组长度
  4. int i = 0;
  5. float rho = 0.0;
  6. for ( i = 0; i < length; i )
  7. {
  8.        rho = rho + sqrt( p[i]*q[i] );//这里最好用指针不用数组下标,
  9. }
  10. return rho;
  11. }
复制代码

注:MATLAB中,p*q可为向量直接相乘,不是点乘。
rho 越大则认为参考模版与候选模版的颜色概率分布的相似度越高


算法QQ  3283892722
群智能算法链接http://halcom.cn/forum.php?mod=forumdisplay&fid=73
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Python|Opencv|MATLAB|Halcom.cn ( 蜀ICP备16027072号 )

GMT+8, 2024-5-19 07:41 , Processed in 0.232389 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表