图像处理特征提取之(二):Haar特征
1,Haar特征:
Haar特征分为:边缘特征,线性特征,中心特征,对角线特征。特征模板内有白色和黑色两种矩形,并定义该模板的特征值为白色矩形像素减去黑色矩形像素和。Haar特征值反映了图像的灰度变化情况。例如:脸部的一些特征能有矩形特征简单的描述,如眼睛要比脸颊颜色深,鼻梁两侧要比鼻梁的颜色深,嘴巴比周围的颜色要深等。
2,Haar特征的生成
在实际中,haar特征可以在检测窗口中放大+平移产生一系列子特征,但是白:黑区域面积比始终保持不变。
那么这些通过放大+平移获得的子特征到底多少个?Rainer Lienhart在其论文中给出了完美的解释:假设检测窗口大小为W*H,矩形特征大小为w*h,X和Y为表示矩形特征在水平和垂直方向的能放大的最大比例系数:
如上图:在检测窗口中,一般矩形特征的数量为:
对应于之前的x3特征,当x3特征在24*24大小的检测窗口中时(此时W=H=24,w=3,h=1,X=8,Y=24),一共有27600个子特征。
3,计算Haar的特征值
当有了大量的Haar特征用于训练和检测时,接下来的问题是如何计算Haar特征值。
Haar特征值=白色区域内图像像素和 x 权重 - 黑色区域内图像像素和 x 权重:
对于x3和y3特征,weightwhite = 1且weightblack =2;对于point特征,weightwhite= 1且weightblack = 8;其余11种特征均为weightwhite = weightblack = 1。
为什么要设置这种加权相减,而不是直接相减?请仔细观察第一个图中的特征,不难发现x3、y3、point特征黑白面积不相等,而其他特征黑白面积相等。设置权值就是为了抵消面积不等带来的影响,保证所有Haar特征的特征值在“灰度分布绝对均匀的图像”中为0(这种图像不存在,只是理论中的)。
这也就是其他文章中提到的所谓“白色区域像素和减去黑色区域像素和”,只不过是加权相减而已(在XML文件中,每一个Haar特征都被保存在2~3个形如<x y width height weight>的标签中,其中x和y代表Haar矩形左上角点以检测窗口的左上角为原点的坐标,width和height代表矩形框的宽和高,而weight则对应了上面说的权重值,例如图3中的左边Haar特征应该表示为<4 2 12 8 1.0>和<4 2 12 4 -2.0>)。
图3
图4
可以看到,图3中2个不同Haar特征在同一组样本中具有不同的特征值分布,左边特征计算出的特征值基本都大于0(对样本的区分度大),而右边特征的特征值基本均匀分布于0两侧(对样本的区分度)。所以,正是由于样本中Haar特征值分布不均匀,导致了不同Haar特征分类效果不同。显而易见,对正负样本区分度越大的特征分类效果越好,即红色曲线对应图3中的的左边Haar特征分类效果好于右边Haar特征。
4,Haar特征值归一化
从图4中发现,仅仅一个20*20大小的Haar特征计算出的特征值变化范围从-2000~+6000,跨度非常大。这种跨度大的特性不利于量化评定特征值,所以需要进行“归一化”,压缩特征值范围。假设当前检测窗口中的图像为i(x,y),当前检测窗口为w*h大小(例如图3中为20*20大小),OpenCV采用如下方式“归一化”:
(1)计算检测窗口中图像的灰度值和灰度值平方和:
(2)计算平均值:
(3)计算归一化因子:
(4)归一化特征值:
5,积分图
仅仅在24*24大小的窗口,通过平移+缩放就可以产生数十万计大小不一、位置各异的Haar特征。在一个窗口内就有这么多Haar特征,而检测窗口是不断移动的,那么如何快速的计算这些Haar特征的特征值就是一个非常重要的问题了,所以才需要引入积分图。
对于图像中任何一点i(x,y),定义其积分图为ii(x,y)为
其中i(x',y')为点(x',y')处的原始灰度图。这样就定义了一张类似于数学中“积分”的积分图。有了积分图ii(x,y)后,只需要做有限次操作就能获得任意位置的Haar特征值。
图5 积分图计算Haar矩形框示意图
如图5,如果要计算D区域内像素和,只需计算ii(x1,y1)+ii(x4,y4)-ii(x2,y2)-ii(x3,y3),其中ii是积分图,(x1,y1)、(x2,y2)、(x3,y3)和(x4,y4)分别代表图5中的1、2、3、4点的图像坐标。显然可以通过此方法快速计算图像中任意位置和大小的Haar特征。
参考内容:https://blog.csdn.net/u012507022/article/details/54138299
https://blog.csdn.net/playezio/article/details/80471000
图像处理特征提取之(二):Haar特征相关推荐
- svm训练特征提取——图像特征提取三大法宝:HOG特征,LBP特征,Haar特征
图像特征提取三大法宝:HOG特征,LBP特征,Haar特征 一.HOG特征 1.HOG特征: 即局部归一化的梯度方向直方图,是一种对图像局部重叠区域的密集型描述符, 它通过计算局部区域的梯度方向直方图 ...
- OpenCV学习笔记(三十一)——让demo在他人电脑跑起来 OpenCV学习笔记(三十二)——制作静态库的demo,没有dll也能hold住 OpenCV学习笔记(三十三)——用haar特征训练自己
OpenCV学习笔记(三十一)--让demo在他人电脑跑起来 这一节的内容感觉比较土鳖.这从来就是一个老生常谈的问题.学MFC的时候就知道这个事情了,那时候记得老师强调多次,如果写的demo想在人家那 ...
- OpenCV与图像处理学习十二——图像形状特征之HOG特征
OpenCV与图像处理学习十二--图像形状特征之HOG特征 一.图像特征理解 1.1 颜色特征 1.2 纹理特征 1.3 形状特征 1.4 空间关系特征 二.形状特征描述 2.1 HOG特征 2.1. ...
- 图像处理之Haar特征
Haar-like特征是计算机视觉领域一种常用的特征描述算子(也称为Haar特征,这是因为Haar-like是受到一维haar小波的启示而发明的,所以称为类Haar特征),后来又将Haar-like扩 ...
- 目标检测的图像特征提取—Haar特征
1.Haar-like特征 Haar-like特征最早是由Papageorgiou等应用于人脸表示,Viola和Jones在此基础上,使用3种类型4种形式的特征. Haar特征分为三类:边缘特征.线性 ...
- Haar特征原理与icvCreateIntHaarFeatures方法的具体实现附详细注释—— 人脸识别的尝试系列(二)
带着强烈的兴趣,上周开始人脸识别的尝试与学习,并且将具体的操作过程记录了下来 链接如下:http://blog.csdn.net/u011583927/article/details/44627493 ...
- 特征提取之——Haar特征
本文有自己的原创,也有转载摘录的文章,转载部分在这里这里这里等等. 特征提取方法有很多种,比如说Haar特征,edgelet特征,shapelet特征,HOG特征,HOF特征,小波特征,边缘模板等等 ...
- 图像特征提取之Haar特征_人脸识别
1.Haar-like特征 Haar-like特征最早是由Papageorgiou等应用于人脸表示,Viola和Jones在此基础上,使用3种类型4种形式的特征. Haar特征分为三类:边缘特征.线性 ...
- OpenCV + CPP 系列(卅九)图像特征提取(Haar特征)
文章目录 Haar特征介绍(Haar Like Features) Haar特征介绍(Haar Like Features) Haar特征是一种反映图像的灰度变化的,像素分模块求差值的一种特征.它分为 ...
- Haar特征类有哪些最新发表的毕业论文呢?
一.总体简介 Haar特征的相关文献在2006年到2020年内共计132篇,主要集中在自动化技术.计算机技术.无线电电子学.电信技术.公路运输 等领域,其中期刊论文100篇.会议论文4篇.专利文献28 ...
最新文章
- cookie存值和page分页
- 数据中心如何建设,数据中心机房维护方法详解!
- HS_300_PE.csv
- 单片微型计算机 第九章自测题,单片微型计算机网上练习题答案..doc
- 【LUOGU???】WD与积木 NTT
- java实验金额转换_java 数字金额转换中文金额
- 内容生态搜索趋势研究报告
- CSS练习_云层效果
- scala案例_Scala案例类和案例对象深入(第1部分)
- mysql 远程访问
- 【Android应用】 九宫格日志
- 透过分布地图,看我中华大地!
- 年终盘点:2021年中国科技的重大突破
- MT7688的openwrt下4G的移植
- python随笔01(robotframework自动化)
- C++ 中read和write函数
- 苹果手机投影_iPhone 11竟然升级成了浴霸,看来智能手机的未来要靠它了!
- .tga图片的文件格式分析
- 将电子版照片信息或者扫描件快速识别导出 OCR识别技术
- 生物信息学|MOLI:基于深度神经网络进行多组学数据整合并用于药物反应预测
热门文章
- 游戏中的数学:向量数学(vector math)
- 示波器上1G/S 100MHZ的含义
- 服务器显示器指示灯不亮,电脑显示器指示灯不亮怎么办
- 我本人常去的一些技术性网站!!(不定期更新)
- 《批判性思维》感1.1-[信念执念断言]
- Swift高仿喜马拉雅APP之一Charles抓包、图片资源获取等
- imshow、image以及imagesc的区别
- Git64位windows版Git-2.10.1-64-bit.exe
- 2022.08 VMware官网下载安装+配置Linux虚拟机,最新最全
- rs232读取智能电表_深度了解智能电度表,面板内容大揭秘!