【CVPR2005】梯度方向直方图(Histogram of Oriented Gradients,简称HOG)
这是一种提取特征的方法
关键流程
1、pixel 计算梯度(ΔDistance,ΔAngle\Delta{Distance},\Delta{Angle}ΔDistance,ΔAngle)
2、对cell内的pixel梯度进行规则权重投影
3、对block内的cell进行对比度归一化
4、所有block的直方图向量一起组合成一个大的HOG特征向量
5、【可选】PCA降维
利用一阶微分计算图像梯度
微分是一种线性描述函数在一点附近变化的方式。
微分与导数是两个不同的概念。
但是对于一元函数来说,可微分与可导是完全等价的。
可微分的函数,其微分值等于导数乘自变量的微分dxdxdx,换句话说,函数的微分与自变量的微分之商等于该函数的导数。因此导数也叫做“微商”。函数y=f(x)y=f(x)y=f(x)的微分又可以记作dy=f′(x)dxdy=f'(x)dxdy=f′(x)dx
对于梯度:
Δf=[Gx,Gy]T=[δfδx,δfδy]T\Delta{f}=[Gx ,Gy]^T=[\frac{\delta{f}}{\delta{x}},\frac{\delta{f}}{\delta{y}}]^TΔf=[Gx,Gy]T=[δxδf,δyδf]T
Dalal等人利用许多一阶微分模板进行求梯度近似值,但在实验中表明模板[-1,0,1]效果最好。
采用模板[-1,0,1]为例计算图像梯度以及方向,通过梯度模板计算水平和垂直方向的梯度分别如下:
1、该像素点的水平 梯度值。
Gh(x,y)=f(x+1,y)−f(x−1,y)G_h(x,y)=f(x+1,y)-f(x-1,y)Gh(x,y)=f(x+1,y)−f(x−1,y)
2、该像素点的 垂直梯度值。
Gw(x,y)=f(x,y+1)−f(x,y−1)G_w(x,y)=f(x,y+1)-f(x,y-1)Gw(x,y)=f(x,y+1)−f(x,y−1)
Δf=[Gh,Gw]T\Delta{f}=[G_h,G_w]^TΔf=[Gh,Gw]T
计算该像素点的梯度值MMM(梯度强度)以及梯度θ\thetaθ方向
M≈∣Gh∣+∣Gw∣M≈|G_h|+|G_w|M≈∣Gh∣+∣Gw∣
θ=arctan(GhGw)\theta =arctan(\frac{G_h}{G_w})θ=arctan(GwGh)
梯度方向的范围限定,一般采用无符号的范围,故梯度方向可表示为:
对cell内的pixel梯度进行规则权重投影
通常使用的HOG结构大致有三种:矩形HOG(简称为R-HOG),圆形HOG和中心环绕HOG。它们的单位都是Block(即块)。Dalal的试验证明矩形HOG和圆形HOG的检测效果基本一致,而环绕形HOG效果相对差一些。
矩形HOG块的划分:
一般一个块(Block)都由若干单元(Cell)组成,一个单元都有如干个像素点组成。
在每个Cell中有独立做梯度方向统计,从而以梯度方向为横轴的的直方图,前面我们已经提到过,梯度方向可取0度到180度或0度~360度,但dalal实验表明,对于人体目标检测0度~180度
这种忽略度数正负级的方向范围能够取得更好的结果。然后又将这个梯度分布平均分成 个方向角度(orientation bins),每个方向角度范围都会对应一个直方柱。
根据Dalal等人实验,在人体目标检测中,在无符号方向角度范围并将其平均分成9份(bins)能取得最好的效果,当bin的数目继续增大效果改变不明显,故一般在人体目标检测中使用bin数目为9范围0~180度的度量方式。
对block内的cell进行对比度归一化
对block块内特征向量的归一化主要是为了使特征向量空间对光照,阴影和边缘变化具有鲁棒性。还有归一化是针对每一个block进行的,一般采用的归一化函数有以下四种:
在人体检测系统中进行HOG计算时一般使用L2-norm,Dalal的文章也验证了对于人体检测系统使用L2-norm的时候效果最好。
得出HOG最终的特征向量
优点缺点:
优点
HOG表示的是边缘(梯度)的结构特征,因此可以描述局部的形状信息;
位置和方向空间的量化一定程度上可以抑制平移和旋转带来的影响;
采取在局部区域归一化直方图,可以部分抵消光照变化带来的影响。
由于一定程度忽略了光照颜色对图像造成的影响,使得图像所需要的表征数据的维度降低了。
而且由于它这种分块分单元的处理方法,也使得图像局部像素点之间的关系可以很好得到的表征。
缺点
描述子生成过程冗长,导致速度慢,实时性差;
很难处理遮挡问题。
由于梯度的性质,该描述子对噪点相当敏感
参考:
https://www.cnblogs.com/wjgaas/p/3597248.html
【CVPR2005】梯度方向直方图(Histogram of Oriented Gradients,简称HOG)相关推荐
- 机器视觉 Histogram of oriented gradients
Histogram of oriented gradients 简称 HoG, 是计算机视觉和图像处理领域一种非常重要的特征,被广泛地应用于物体检测,人脸检测,人脸表情检测等. HoG 最早是在200 ...
- Histogram of Oriented Gradients
原文链接:https://www.learnopencv.com/histogram-of-oriented-gradients/ In this post, we will learn the de ...
- 梯度方向直方图和物体检测Histogram of Oriented Gradients and Object Detection
If you've been paying attention to my Twitter account lately, you've probably noticed one or twoteas ...
- HOG(histogram of oriented gradients)特征个人总结
HOG(histogram of oriented gradients)特征个人总结 前述 HOG特征概述 HOG特征提取 图像预处理 计算梯度 计算区间(cell)直方图 归一化块(block) 计 ...
- HOG(Histogram of Oriented gradients) feature extraction
转载 https://blog.csdn.net/liulina603/article/details/8291093 1.HOG特征: 方向梯度直方图(Histogram of Oriented G ...
- 【计算机视觉】方向梯度直方图(Histogram of Oriented Gradient,HOG)
文章目录 1. HOG 简述 2. HOG 工作流程 第一步.对图像的颜色空间进行归一化 第二步.计算每个像素点的梯度 第三步.为每个单元构建梯度方向直方图 第四步.块内梯度直方图归一化 3. 举个例 ...
- CVPR2005【行人检测】HOG+SVM用于人体检测的梯度方向直方图
目录 CVPR2005-用于人体检测的梯度方向直方图 Histograms of Oriented Gradients for Human Detection 使用的数据集 研究方法 数据 流程 双对 ...
- Histogram of Oriented Gridients(HOG) 方向梯度直方图
from: Histogram of Oriented Gridients(HOG) 方向梯度直方图 Histogram of Oriented Gridients,缩写为HOG,是目前计算机视觉.模 ...
- 【计算机视觉】Histogram of Oriented Gridients(HOG) 方向梯度直方图
Histogram of Oriented Gridients(HOG) 方向梯度直方图 Histogram of Oriented Gridients,缩写为HOG,是目前计算机视觉.模式识别领域很 ...
- 金字塔式梯度方向直方图(PHOG)
Pyramid Histogram of Oriented Gradients (PHOG),HOG大家都知道了,其实就是一个模板,每个CELL用方向信息来统计,我其实很久也用过边界方向直方图,只是感 ...
最新文章
- 深入理解Java 8 Lambda表达式(Oracle官方文档版)
- java double框架简介
- TypeScript Type Innference(类型推断)
- 自定义时间格式 返回年月日
- Room是怎样和LiveData结合使用的?(源码分析)
- 怎么用PHP语句做出增改删查功能,mysql语句实现简单的增、删、改、查操作示例...
- supervisor配置文件中如何添加多个环境变量
- 好用的记事本_分类记事本软件哪个好用?大家推荐一个苹果手机用的分类记事本便签呗...
- php最新版本的安装,centos安装新PHP版本
- kcp 介绍与源代码分析_Mendel:基于遗传隐喻的源代码推荐
- SAP软件财务年结步骤
- weex scroller滚动列表实践
- 低配置系统安装 linux,在低配置机中安装Linux系统
- 将文本中的各个单词的字母顺序翻转(Java)
- 如何防御DOS和DDOS攻击
- CPU 基本工作原理和概念
- 微信公众号post方法Java_Java HttpClient 如何伪装微信浏览器进行POST请求
- PHP 函数、类声明和调用
- intell idea怎么恢复默认设置
- 刘强东:B2C电商的本质
热门文章
- ArcGIS 地表TIN面数据的符号化
- Flutter动画系列之SizeTransition
- ppt 2016 html,2016第1章HTML5.ppt
- android+祖玛游戏源码,Flash祖玛游戏源代码
- slxrom+v.21+原生android+4.2,小米4移动联通版 魔趣OS 安卓10 MagiskV21版 完美ROOT 纯净完美 原生极简 纯净推荐...
- php如何只删去汉字,php如何删除字符串中的中文
- Flink Weekly | 每周社区动态更新(附5月活跃榜单)
- 聊一个不常见的面试题:为什么数据库连接池不采用 IO 多路复用
- linux命令we,Linux 命令执行过程
- 桌面上计算机点击后,怎样设置电脑的鼠标点击后窗口(也就是桌面上点一下出来的窗口)为自己另类设计的个性窗口图案?求高手。...