图像梯度方向直方图描述子
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
既然已经存在像素这种描述子, 既然已经存在像素这种描述子,为何我们还有寻求新的图 像描述子? 像描述子?
LOGO
图像梯度方向直方图描述子
图像梯度方向直方图( 图像梯度方向直方图(Histogram of Oriented Gradient) Gradient)
HOG( Gradient) 2005年CVPR会议上 会议上, HOG(Histogram of Oriented Gradient)是2005年CVPR会议上, 法国国家计算机科学及自动控制研究所的Dalal等人提出的一种解决 Dalal等人提出的 法国国家计算机科学及自动控制研究所的Dalal等人提出的一种解决 人体目标检测的图像描述子, 人体目标检测的图像描述子,该方法使用梯度方向直方图 Gradients,简称HOG)特征来表达人体, 简称HOG (Histogram of Oriented Gradients,简称HOG)特征来表达人体, 提取人体的外形信息和运动信息,形成丰富的特征集。 提取人体的外形信息和运动信息,形成丰富的特征集。
LOGO
利用一阶微分求解图像梯度
一阶微分处理一般对灰度阶梯有较强的响应
∂f 一阶微分: 一阶微分: ∂x = f ( x + 1) − f ( x)
对于函数f(x,y),在其坐标(x,y)上的梯度是通过 对于函数f(x,y),在其坐标(x,y) f(x,y) 如下二维列向量定义的: 如下二维列向量定义的: δ f
LOGO
我将采用模板[ 1,0,1]为例计算图像梯度以及方向, 我将采用模板[-1,0,1]为例计算图像梯度以及方向,通过梯度模板计算 为例计算图像梯度以及方向 水平和垂直方向的梯度分别如下: 水平和垂直方向的梯度分别如下:
Gh ( x, y ) = f ( x + 1, y ) − f ( x − 1, y ) Gv ( x, y ) = f ( x, y + 1) − f ( x, y − 1) ∀x, y ∀x, y
Dalal的试验证明矩形HOG和圆形HOG的检测效果基本一致, 而环绕形HOG效果相对差一些。并且,圆形与环绕形的HOG 文献比较少,应用研究没有矩形HOG普遍。所以在此,我 将着重讲解矩形HOG的情况。
LOGO
矩形HOG块的划分: 矩形HOG块的划分: HOG块的划分 一般一个块(Block)都由若干单元(Cell)组成,一 个单元都有如干个像素点组成。
其中,分别表示该像素点的水平,垂直梯度值。 其中,分别表示该像素点的水平,垂直梯度值。计算该像素点的梯度值 (梯度强度)以及梯度方向: 梯度强度)以及梯度方向:
LOGO
对于梯度方向的范围限定,一般采用无符号的范围, 对于梯度方向的范围限定,一般采用无符号的范围,故 梯度方向可表示为: 梯度方向可表示为: θ ( x, y ) + π , θ ( x, y ) < 0
Gx δ x ∇f = = δf Gy 这个向量的模值由下式给出: 这个向量的模值由下式给出: δ y
∇f =|| ∇f ||2 = Gx 2 + Gy 2
1/2
δ f 2 δ f 2 = + δx δy
θ ( x, y ) = θ ( x, y ),
others
LOGO
基于梯度幅值的方向权重投影
Step 3 基于梯度幅值的方向权重投影
HOG结构 HOG结构 通常使用的HOG结构大致有三种:矩形HOG(简称为 R-HOG),圆形HOG和中心环绕HOG。它们的单位都是 Block(即块)
LOGO
LOGO
根据Dalal等人实验,在人体目标检测中,在无符号方向角度范围并将 其平均分成9份(bins)能取得最好的效果,当bin的数目继续增大效果改变 不明显,故一般在人体目标检测中使用bin数目为9范围0~180度的度量方式。 如下图所示:
LOGO
Block中各个参数的最终选取: Block中各个参数的最终选取: 中各个参数的最终选取
图像梯度方向直方图描述子
重庆大学行业信息化工程中心 黄晟
LOGO
图像表征
什么是图像的描述子? 什么是图像的描述子? 其实图像描述子就是图像的一种表征形式 图像的一种表征形式, 其实图像描述子就是图像的一种表征形式,我们所熟 知的像素值便是最常见最朴素的一种图像表征形式, 知的像素值便是最常见最朴素的一种图像表征形式,也可 以被看成一种描述形式。 以被看成一种描述形式。
LOGO
HOG与SIFT的区别
HOG与SIFT的区别 HOG与SIFT的区别
HOG和SIFT都属于描述子,以及由于在具体操作上 和 都属于描述子, 都属于描述子 有很多相似的步骤,所以致使很多人误认为HOG是 有很多相似的步骤,所以致使很多人误认为 是 SIFT的一种,其实两者在使用目的和具体处理细节上是 的一种, 的一种 有很大的区别的。 的主要区别如下: 有很大的区别的。HOG与SIFT的主要区别如下: 与 的主要区别如下 是基于关键点特征向量的描述。 ① SIFT是基于关键点特征向量的描述。 是基于关键点特征向量的描述 是将图像均匀的分成相邻的小块, ② HOG是将图像均匀的分成相邻的小块,然后在所 是将图像均匀的分成相邻的小块 有的小块内统计梯度直方图。 有的小块内统计梯度直方图。 需要对图像尺度空间下对像素求极值点, ③ SIFT需要对图像尺度空间下对像素求极值点,而 需要对图像尺度空间下对像素求极值点 HOG中不需要。 中不需要。 中不需要 一般有两大步骤, ④ SIFT一般有两大步骤,第一个步骤是对图像提取 一般有两大步骤 特征点, 特征点,而HOG不会对图像提取特征点。 不会对图像提取特征点
LOGO
LOGO
在每个Cell中有独立做梯度方向统计,从而以梯度方向为 横轴的的直方图,前面我们已经提到过,梯度方向可取0 度到180度或0度~360度,但dalal实验表明,对于人体目 标检测0度~180度这种忽略度数正负级的方向范围能够取 得更好的结果。然后又将这个梯度分布平均分成 个方向 角度(orientation bins),每个方向角度范围都会对应 一个直方柱。
LOGO
重叠块: 重叠块: Datal等人在他们那篇关于HOG最为经典的论文 《Histogram of Oriented Gradient for Human Detection》提出了利用块与块的重叠(Overlap)来解决 混叠,并且取得了不错的效果。
LOGO
在重叠方式中,块与块之间的边缘点被重复根据权重投影到各自相邻 块(block)中,从而一定模糊了块与块之间的边界,处于块边缘部分的像 素点也能够给相邻块中的方向梯度直方图提供一定贡献,从而达到关联块 与块之间的关系的作用。Datal对于块和块之间相互重叠程度对人体目标检 测识别率影响也做了实验分析。
1/2
LOGO
因为模值的计算开销比较大, 因为模值的计算开销比较大,一般可以按如下公式近似求 解:
Dalal等人利用许多一阶微分模板进行求梯度近似值, Dalal等人利用许多一阶微分模板进行求梯度近似值,但 等人利用许多一阶微分模板进行求梯度近似值 在实验中表明模板[ 1,0,1]效果最好 效果最好。 在实验中表明模板[-1,0,1]效果最好。
LOGO
利用线性插值的方法解决分块之间联系问题
利用线性插值的方法解决分块之间联系问题: 利用线性插值的方法解决分块之间联系问题: 有些文献采用的不是块与块重叠的方法,而是采用线性插值的方法来削 弱混叠效应。这种方法的主要思想是每个Block都对临近的Block都有影 响,这种影响,我们可以以一种加权方式附加上去。
LOGO
从图中可以看出,对于人体对象检测,块的大小为 3×3个单元格,单元格的大小为6×6个象素时,检测效果 是最好的,错误率约为10%左右。块的大小为2×2个单元 格,单元格大小为8×8个象素时,也相差无几。6-8个象 素宽的单元格,2-3个单元格宽的块,其错误率都在最低 的一个平面上。块的尺寸太大时标准化的作用被削弱了从 而导致错误率上升,而如果块的尺寸太小时,有用的信息 反而会被过滤掉。 在实际应用中,在Block和Cell划分之后,对于得到 各个像区域中,有时候还会为了进行一次高斯平滑,但是 对于人体目标检测等问题,该步骤往往可以忽略,实际应 用效果不大,估计在主要还是去除区域中噪点,因为梯度 对于噪点相当敏感
LOGO
基于线性插值的基本思想,对于上图四个方向(横纵两个45度 斜角方向)个进行一次线性插值就可以达到权重分配目的。下面介 绍一维线性插值。假设x1和x2是x块相邻两块的中心,且x1<x<x2。 对w(即权重,一般可直接采用该block的直方图值即h(x))进行 线性插值的方法如下式:
x − x1 h( x1) ← h( x1) + h( x) × (1 − ) b x − x2 h( x 2) ← h( x1) + h( x) × ( ) b
LOGO
图像归一化
1:图像归一化 step 1:图像归一化 归一化图像的主要目的是提高检测器对光照的 鲁棒性,因为实际的人体目标可能出现的各种不 同的场合,检测器,必须对光照不太敏感才会有 好的效果。
LOGO
利用一阶微分计算图像梯度
Step 2 利用一阶微分计算图像梯度 图像平滑 梯度法求图像梯度
LOGO
图像梯度方向直方图的生成步骤
生成步骤: 生成步骤:
LOGO
HOG描述子高维图像特征向量生成步骤
HOG描述子高维图像特征向量生成步骤: HOG描述子高维图像特征向量生成步骤: 描述子高维图像特征向量生成步骤 1.图像归一化 1.图像归一化 2.利用一阶微分计算图像梯度 2.利用一阶微分计算图像梯度 3.基于梯度幅值的方向权重投影 3.基于梯度幅值的方向权重投影 4.HOG HOG特征向量归一化 4.HOG特征向量归一化 5.得出HOG最终的特征向量 得出HOG 5.得出HOG最终的特征向量
LOGO
wk.baidu.com
块划分所带来的问题: 块划分所带来的问题: 块与块之间是相互独 立的么? 立的么?
LOGO
分块之间的相关性问题解决
答:通常的将某个变量范围固定划分为几个区域, 由于边界变量与相邻区域也有相关性,所以变量 只对一个区域进行投影而对相邻区域完全无关时 会对其他区域产生混叠效应。 。
分块之间的相关性问题的解决: 分块之间的相关性问题的解决: 方案一:块重叠,重复统计计算 方案二:线性插值权重分配
LOGO
在人体检测系统中进行HOG计算时一般使用L2-norm, Dalal的文章也验证了对于人体检测系统使用L2-norm的时候 效果最好。
LOGO
HOG最终的特征向量生成
HOG最终的特征向量生成 Step 5 HOG最终的特征向量生成
LOGO
HOG的应用
HOG的应用: HOG的应用: 的应用 主要用在object detection 领域,特别是行人检 测,智能交通系统,当然也有文章提到把HOG用在 手势识别,人脸识别等方面。
LOGO
对梯度方向的投影权重方式的选取: 对梯度方向的投影权重方式的选取: 对于梯度方向的加权投影,一般都采用一个权重投影 函数,它可以是像素点的梯度幅值,梯度幅值的平方根或 梯度幅值的平方,甚至可以使梯度幅值的省略形式,它们 都能够一定程度上反应出像素上一定的边缘信息。根据 Dalal等人论文的测试结果,采用梯度幅值量级本身得到 的检测效果最佳,使用量级的平方根会轻微降低检测结果, 而使用二值的边缘权值表示会严重降低效果(约为5%个单 位10-4FPPW(False Positives Per Window))。
其中b在横纵方向取块间隔,而在斜45度方向则可采用 sqrt(2)倍的块间隔。
LOGO
4:HOG特征向量归一化 Step 4:HOG特征向量归一化
我们要对block块内的HOG特征向量进行归一化。对block块内特征 向量的归一化主要是为了使特征向量空间对光照,阴影和边缘变 化具有鲁棒性。还有归一化是针对每一个block进行的,一般采用 的归一化函数有以下四种:
LOGO
图像平滑
图像平滑 对于灰度图像, 对于灰度图像,一般为了 去除噪点, 去除噪点,所以会先利用离散 高斯平滑模板进行平滑: 高斯平滑模板进行平滑:高斯 函数在不同平滑的尺度下进行 对灰度图像进行平滑操作, 对灰度图像进行平滑操作, Dalal等实验表明在下 等实验表明在下, Dalal等实验表明在下,人体检 测效果最佳( 测效果最佳(即不做高斯平 ),使得错误率缩小了约一 滑),使得错误率缩小了约一 不做平滑操作,可能原因: 倍。不做平滑操作,可能原因: 图像时基于边缘的, 图像时基于边缘的,平滑会降 低边缘信息的对比度, 低边缘信息的对比度,从而减 少图像中的信号信息。 少图像中的信号信息。