为了比较两个直方图(H1和H2)(H_{1}和H_{2})(H1​和H2​),首先必须选择度量(d(H1H2))(d(H_{1}H_{2}))(d(H1​H2​)),以表示两个直方图匹配的程度。

OpenCV利用函数compareHist来执行比较。它还提供4个不同的度量来计算匹配:

1、皮尔逊相关系数

Correlation ( CV_COMP_CORREL )

d(H1,H2)=∑I(H1(I)−H1ˉ)(H2(I)−H2ˉ)∑I(H1(I)−H1ˉ)2∑I(H2(I)−H2ˉ)2d(H_1,H_2) = \frac{\sum_I (H_1(I) - \bar{H_1}) (H_2(I) - \bar{H_2})}{\sqrt{\sum_I(H_1(I) - \bar{H_1})^2 \sum_I(H_2(I) - \bar{H_2})^2}}d(H1​,H2​)=∑I​(H1​(I)−H1​ˉ​)2∑I​(H2​(I)−H2​ˉ​)2​∑I​(H1​(I)−H1​ˉ​)(H2​(I)−H2​ˉ​)​

其中

Hkˉ=1N∑JHk(J)\bar{H_k} = \frac{1}{N} \sum _J H_k(J)Hk​ˉ​=N1​J∑​Hk​(J)

N是直方图区间总数。

真值 [1.00]

取值区间 [0.00,1.00]

2、卡方距离

Chi-Square ( CV_COMP_CHISQR )

d(H1,H2)=∑I(H1(I)−H2(I))2H1(I)d(H_1,H_2) = \sum _I \frac{\left(H_1(I)-H_2(I)\right)^2}{H_1(I)}d(H1​,H2​)=I∑​H1​(I)(H1​(I)−H2​(I))2​

真值 [0.00]

取值区间 [0.00,+∞]

3、交叉距离

Intersection ( method=CV_COMP_INTERSECT )

d(H1,H2)=∑Imin⁡(H1(I),H2(I))d(H_1,H_2) = \sum _I \min (H_1(I), H_2(I))d(H1​,H2​)=I∑​min(H1​(I),H2​(I))

真值 [24.39]

取值区间 [0.00,1.00]

4、巴氏距离

Bhattacharyya distance ( CV_COMP_BHATTACHARYYA )

d(H1,H2)=1−1H1ˉH2ˉN2∑IH1(I)⋅H2(I)d(H_1,H_2) = \sqrt{1 - \frac{1}{\sqrt{\bar{H_1} \bar{H_2} N^2}} \sum_I \sqrt{H_1(I) \cdot H_2(I)}}d(H1​,H2​)=1−H1​ˉ​H2​ˉ​N2​1​I∑​H1​(I)⋅H2​(I)​​

真值 [0.00]

取值区间 [0.00,1.00]

[1]https://docs.opencv.org/2.4/doc/tutorials/imgproc/histograms/histogram_comparison/histogram_comparison.html

CV中直方图比较方法相关推荐

  1. 计算机视觉CV中特征点方法相关函数的学习笔记~

    1 致谢 感谢网友大奥特曼打小怪兽的帮助 原文链接如下: https://www.cnblogs.com/zyly/p/9646201.html 1 前言 特征点方法是计算机视觉传统目标检测方法中很常 ...

  2. OpenCV中直方图的计算和绘制

    OpenCV中直方图的计算和绘制 主要记录一下几个关键的API: cvRound(输入一个浮点数 );//返回一个整型数,取整的方法为四舍五入 split(输入多通道图像,数组或者vector变量. ...

  3. r语言算巢式设计方差分析_R语言中的方差分析方法汇总

    方差分析,是统计中的基础分析方法,也是我们在分析数据时经常使用的方法.下面我总结一下R语言如何对常用的方差分析进行操作. 1. 方差分析的假定 上面这个思维导图,也可以看出,方差分析有三大假定:正态, ...

  4. R语言中dim函数_R语言中的方差分析方法汇总

    方差分析,是统计中的基础分析方法,也是我们在分析数据时经常使用的方法.下面我总结一下R语言如何对常用的方差分析进行操作. 1. 方差分析的假定 上面这个思维导图,也可以看出,方差分析有三大假定:正态, ...

  5. 图像质量评价方法中客观评价方法又可以分为三类

    早期的图像处理是随由于通讯方面的要求而发展起来的,随着图像处理技术的发展,数字图像处理技术与理论已经成为计算机应用的一个重要领域,广泛应用于众多的科学与工程应用,如遥感.医学.气象.通信等.然而随着图 ...

  6. 对比度受限自适应直方图均衡化方法

    图像增强技术可具体为时域和频域. 时域增强往往被应用于提高图像的对比度且改进其灰度级, 其原理是在灰度映射转化的基础上, 对像素进行直接性地处理: 频域增强的作用是以强化图像的低. 高频来达到改善图像 ...

  7. OpenCV中直方图反向投影算法详解与实现

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达本文转自:opencv学堂 一:直方图交叉 OpenCV中直方图反向 ...

  8. 从理论支撑到具体应用,万字长文详述 CV 中 Transformer 的广阔天地

    写在前面-- 自 2017 年 Transformer 技术出现以来,便在 NLP.CV.语音.生物.化学等领域引起了诸多进展. 知源月旦团队期望通过"Transformer+X" ...

  9. 一文深入浅出cv中的Attention机制

    在深度学习领域中,存在很多专业名词,第一次看的时候总会很懵逼-后面慢慢看得时候才会有那么感觉,但是总觉得差点意思.今天我们要说的一个专业名词,就叫做Attention机制! 1. 直观理解Attent ...

最新文章

  1. 实现一个基于 SharePoint 2013 的 Timecard 应用(下)
  2. vue双向数据绑定原理分析--Mr.Ember
  3. buuctf firmware(binwalk和firmware-mod-kit的使用)
  4. C# winform引用com组件,创建AXHOST组件失败解决方案
  5. Redis之java操作篇(数据对象的存取)
  6. 在VisualStadio2015上使用EF6.0建立MySql数据库
  7. spring(java,js,html) 截图上传
  8. java+跑多线程_java项目怎么多线程跑单元测试,ide是intellij?
  9. fpga的jtag接口扫不到器件_JTAG接口的定义及常见问题
  10. dwg格式转换成html,DWG格式转换器BitRecover DWG Converter Wizard
  11. 深度学习框架_Caffe_Caffe框架入门简介
  12. 十进制计算机算法,计算机知识--二进制,十进制,十六制算法
  13. Redis端口为什么是6379?
  14. IM 即时通讯开发如何设计图片文件的服务端存储架构
  15. Paper reading (二十二):Integrated omics: tools, advances and future approaches
  16. MySQL的时间戳(Timestamp)类型学习
  17. 基于AT91RM9200与LINUX2.6.26内核的嵌入式平台开发全过程
  18. suricata应用层协议解析
  19. GridView一般换行与强制换行
  20. 扫地机器人的轮子困住_扫地机器人防困住卡死的解决方案

热门文章

  1. mysql 授予所有权限_请问 :mysql数据库如何将某一个表的查询权限授予给所有用户?...
  2. Lighting Window 光照设置界面 光照系列2
  3. UE5 官方案例Lyra 全特性详解 7.资源管理
  4. 力扣算法学习计划打卡:第六天
  5. Linux教程【一】
  6. aix 安装oracle smit install_latest,记录一次AIX 4.3.0+ORACLE 8.0.5恢复过程
  7. 云SIM带来的革命?(云simesim)
  8. FPGA到底是什么?
  9. joan sola_Joan Touzet在CouchDB和Apache方式上
  10. microsoft 的gpt2模型源码学习记录