hog特征及其提取方法图示
1 什么是hog特征
hog特征是histogram of gradient的缩写。我们观察图像时,信息更多来自目标边沿的突变。我们计算一块区域内的所有像素处的梯度信息,即突变的方向和大小,然后对360度进行划分,得到多个bin,统计该区域内的所有像素所在的bin,就得到了一个histogram。这就是hog特征。
2 hog特征的提取方法
2.1 将彩色图像转换为灰度图像
2.2 Gamma归一化
2.3 计算每幅图像的梯度
2.3.1 梯度分量的计算
水平模板:[-1,0,1],水平方向以水平向右为正方向
竖直模板:[1, 0, -1]^T,竖直方向以竖直向上为正方向
2.3.2 梯度的计算
如上图所示,计算出alpha和beta,然后alpha属于[0, 45度)的bin,beta属于[270度, 315)度的bin。
alpha = arctan(y/x)
beta = 360度 - arctan(y/x)
其中x和y是该梯度分别沿x轴和y轴的分量的模值。
2.4 将图像划分为多个cell,每个cell是6像素*6像素,然后每2*2的cell构成一个block
2.5 对每个cell中的每个像素的梯度按照方向统计直方图,360度bin的划分如下,这里进行了8等分
2.6 cell直方图的计算
分别得到落入[0, 45) [45, 90) [90, 135) [135, 180) [180, 225) [225, 270) [270, 315) [315, 360)的梯度,然后把每个bin中的梯度的模值相加,就得到了该bin的分量。
这样就得到了一个cell的特征,即一个8维的向量。
2.7 block特征的计算
将block中的cell的所有特征串联起来,构成该block的特征,然后归一化,就是说,把每个特征除以该特征向量的模值,归一化是为了消除光照的影响。这样每个block是一个8*4=32维的向量。
2.8 block是可以重叠的,block中的cell不重叠
也就是说,对于整个image而言,block可以重叠,比如说步长是8个像素,那么从0开始到11是一个block,然后从8开始到19是一个block,从16开始到27是一个block,它们之间是有重叠的。
2.9 最终的特征向量
将所有的block的特征向量串联起来就是最终的特征向量了,即hog特征。
hog特征及其提取方法图示的更多相关文章
- 理解图像Garbor和HOG特征的提取方法及实例应用
前言:今天接触到了这两个特征,看了课本和博客后很蒙蔽,没有理解这两个特征,本篇博客的目的是只是参考其他的博客总结这两个特征,如果未来能研究和工作领域是这方面的话再回来自己研学,如有错误也欢迎指出. G ...
- 目标检测——HOG特征
1.HOG特征: 方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子.它通过计算和统计图像局部区域的 ...
- paper 80 :目标检测的图像特征提取之(一)HOG特征
1.HOG特征: 方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子.它通过计算和统计图像局部区域的 ...
- 图像特征提取三大法宝:HOG特征,LBP特征,Haar特征(转载)
(一)HOG特征 1.HOG特征: 方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子.它通过计算和 ...
- 目标检测的图像特征提取之(一)HOG特征(转载)
目标检测的图像特征提取之(一)HOG特征 zouxy09@qq.com http://blog.csdn.net/zouxy09 1.HOG特征: 方向梯度直方图(Histogram of Orien ...
- 图像特征提取之(一)HOG特征
1.HOG特征: 方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子.它通过计算和统计图像局部区域的 ...
- 目标检測的图像特征提取之(一)HOG特征
1.HOG特征: 方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检測的特征描写叙述子.它通过计算和统计图像局部区 ...
- 图像特征提取三大法宝:HOG特征,LBP特征,Haar特征
(一)HOG特征 1.HOG特征: 方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子.它通过计算和 ...
- HOG特征-理解篇
网上去找关于HOG的资料,发现理解性的较少,并且较为冗长,为方便大家理解便自己写了篇,希望能对奋斗在特征提取第一线的同志们有所帮助: HOG即histogram of oriented gradien ...
随机推荐
- javascript与java编码互转
java:java.net.URLEncoder.encode(s, "UTF-8");java.net.URLDecoder.decode(chezhanInEn,"U ...
- LinuxMint18配置Grub2默认启动操作系统
---恢复内容开始--- 之前电脑里面装了太多系统太乱了,刚好假期回家有一些空闲时间于是开始了重装计划. 现在重新弄好了,有两个系统,一个是Windows10,另一个是LinuxMint18,但是我平 ...
- Ubuntu14.04安装Go语言开发环境
1.使用apt-get命令来安装Go环境 apt-get install software-properties-common apt-get install python-software-prop ...
- zabbix3.2.3安装部署
安装nginx [root@xuegod64 ~]# yum install -y gcc gcc-c++ autoconf automake zlib zlib-devel openssl open ...
- Redis系列一(Redis环境的搭建)
最近工作中需要Redis缓存,由于也是第一次弄,在网上找了很多资料,在此记录一下. 安装Redis 我使用的系统是CentOS 6.6,安装步骤如下: 1.下载源码,解压后编译源码.(如果没有 wge ...
- windows 8 安装 oracle 11g 报错:command line option syntax error,type command/? for help
windows 8 安装 oracle 11g 报错:command line option syntax error,type command/? for help 在windows8操作系统上安装 ...
- Professional C# 6 and .NET Core 1.0 - What’s New in C# 6
本文为转载,学习研究 What's New in C# 6 With C# 6 a new C# compiler is available. It's not only that a source ...
- Salesforce使用truncate清空数据库
如果想快速的清空MySQL中的表,可以使用Truncate命令.Truncate能够快速的,对数据进行无差别的清空. 在Mysql中使用truncate的语法是TRUNCATE TABLE [Tabl ...
- Quartz_理解1
一.引言 quratz是目前最为成熟,使用最广泛的java任务调度框架,功能强大配置灵活.在企业应用中占重要地位.quratz在集群环境中的使用方式是每个企业级系统都要考虑的问题.早在2006年,在I ...
- [JS][jQuery]清空元素html("")、innerHTML="" 与 empty()的区别 、remove()区别
清空元素html("").innerHTML="" 与 empty()的区别 一.清空元素的区别 1.错误做法一: $(" ...