1.HOG特征提取所针对的图像的尺寸是固定的。输入的图像应首先resize到这个尺寸。

2.尺寸的划分3个等级:window,block,cell  

  window即输入的需要提取特征的图片大小。然后将window划分为众多block,这些block之间有相互重叠的部分。

  每一个block又划分为多个cell,cell之间紧邻且不重叠。block沿着水平和垂直方向滑动,按照固定的步长进行滑动,

  最后就形成了block相互之间的重叠。

  常见的尺寸:window:64x128;  block:16x16;  cell:8x8; step:8

3.HOG特征:

  HOG特征也是基于梯度的,首先计算出输入图像中各个像素点的梯度(大小和方向),然后就需要进行一定的处理以

  保证特征的鲁棒性。对每个cell中的所有像素点的梯度进行统计,统计出一个梯度直方图,(就是不关心具体每个点的

  梯度而是关心在此cell范围内的点的梯度的分布)。然后将一个block中各个cell得到的梯度直方图数据(一维向量)串

  接起来,就得到了该block的特征,但是还要对该向量进行归一化,(缓解局部光照变化的影响,有时还需要剔除噪声

  点然后进行第二次归一化)。最后将window中所有的block的特征串联起来就得到了输入图像的HOG特征。

4.HOG特征总数的计算:

  按如下尺寸:window:64x128;  block:16x16;  cell:8x8; step:8;  num_of_bin:9

  block总数:(64/8 - 1)*(128/8 - 1)   {即: (window_width / step -1)*(window_height / step -1)}

  blcok中特征数:9 * (16/8) * (16/8)  {即: num_of_bin * (block_width/cell_width)*(block_height/cell_height)}

  总特征数:block总数 × block中特征数 = (7×15) × (9×2×2) = 3780

5.线性插值:

  整个特征都是基于像素点的梯度。在统计梯度直方图的时候,按照梯度方向找到直方图中对应的bin,按照梯度的大小

  对相应的bin进行累加。所以整个线性插值的过程就是如何分配每个像素梯度的大小,也就是处理好分配权值的问题。

  权值的分配分为:梯度直方图中相邻方向bin之间的插值 和 block空间尺度中邻接的像素点之间的插值 以及 整个blcok

  中类似于高斯形式的权值分配(突出中间区域的重要性)。

  权值的分配比例都是根据距离比例进行的,

  具体可以参考这篇博客( http://hi.baidu.com/susongzhi/item/3a3c758d7ff5cbdc5e0ec172 )

  至此所有的权值分配都计算出来之后,将像素的梯度大小按照这些权值分配到对应的直方图的bin中就行了。

  具体还可以参考这些比较全面的博客(感谢他们的分享):

  http://www.cnblogs.com/tornadomeet/archive/2012/08/15/2640754.html

HOG算法总结的更多相关文章

  1. HOG算法资源备忘

    最近再研究这个算法,找了不少资料来研究,发现这方面的资料好的并不多,今天就把找到的经典的资料做一个汇总,方便后续查阅吧. 一 基本概念和推导: 1 解释最清楚的:中文网站:https://blog.c ...

  2. Opencv学习之路——自己编写的HOG算法

    #include<opencv2\core\core.hpp> #include<opencv2\highgui\highgui.hpp> #include<opencv ...

  3. HOG算法基础

    实现思路步骤: 1.对原图像gamma校正,img=sqrt(img); 2.求图像竖直边缘,水平边缘,边缘强度,边缘斜率. 3.将图像每16*16(取其他也可以)个像素分到一个cell中.对于256 ...

  4. Opencv学习之路—Opencv下基于HOG特征的KNN算法分类训练

    在计算机视觉研究当中,HOG算法和LBP算法算是基础算法,但是却十分重要.后期很多图像特征提取的算法都是基于HOG和LBP,所以了解和掌握HOG,是学习计算机视觉的前提和基础. HOG算法的原理很多资 ...

  5. 特征提取算法(2)——HOG特征提取算法

    histogram of oriented gradient(方向梯度直方图)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子.它通过计算和统计图像局部区域的梯度方向直方图来构成特征.H ...

  6. paper 80 :目标检测的图像特征提取之(一)HOG特征

    1.HOG特征: 方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子.它通过计算和统计图像局部区域的 ...

  7. HOG 梯度方向直方图简介(转载)

    一.基本HOG算法 HOG特征最早出现在SIFT算法中,由于其极强的图像特征描述能力,逐渐被人们熟知和广泛运用,其在目标检测方面表现尤为突出. HOG特征提取过程 步骤一:遍历图像每个像素点,以其为中 ...

  8. 图像特征提取之(一)HOG特征

    1.HOG特征: 方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子.它通过计算和统计图像局部区域的 ...

  9. 目标检測的图像特征提取之(一)HOG特征

    1.HOG特征: 方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检測的特征描写叙述子.它通过计算和统计图像局部区 ...

随机推荐

  1. JS 框架安全报告:jQuery 下载次数超过 1.2 亿次

    尽管 JavaScript 库 jQuery 仍被使用,但它已不再像以前那样流行.根据开源安全平台 Snyk 统计,目前至少十分之六的网站受到 jQuery XSS 漏洞的影响,甚至用于扩展 jQue ...

  2. spark job分析

    spark job spark job提交 三级调度框架, DagSch,计算stage,提交阶段,将stage映射成taskset,提交taskset给tasksch. TaskSch Backen ...

  3. Java8-Lambda-No.02

    public class Lambda2 { @FunctionalInterface public static interface Converter<F, T> { T conver ...

  4. python 实践--新闻聚合

    采集新闻,体会到面向问题和面向对象的区别. 如果希望新闻来源多出,比如NNTP,Web.可以实现:Source,Destination,NewItem,NewAgent. Scoure处理来源, De ...

  5. yii行为和过滤器

    行为是对类的功能进行了扩展,针对开闭原则,为了类的扩展而生,不去修改类原有的代码. yii的行为需要继承yii\base\Behavior,这就好比你要给人安装一个胳膊,这个胳膊得是人的,而不能是老虎 ...

  6. fputcsv

    1.a是從結尾添加,w是從頭添加,不知爲什麽 這樣寫最後一行會是錯的,似乎不會自動添加換行符,只有在最後以行寫上"\r\n",才會正確. $fp = sugar_fopen('fi ...

  7. [USACO17JAN] 晋升者计数 dfs序+树状数组

    [USACO17JAN] 晋升者计数 dfs序+树状数组 题面 洛谷P3605 题意:一棵有点权的树,找出树中所有\((u,v)\)的对数,其中\(u,v\)满足\(val(u)\le val(v)\ ...

  8. c实现队列

    使用链表实现队列的入队和出队 #include <iostream> #include <stdio.h> #include <string.h> #include ...

  9. Notepad++编辑.sh文件

    使用记事本创建创建test.txt文件,修改后缀名为sh后,再文件里写以下内容: #!/bin/bash echo "hello world" 这样的文件再linux里是无法执行的 ...

  10. wqy的C题

    wqy的C题 毒瘤! 题意: 你有一张 $ n $ 个点 $ m $ 条边的无向图. 你想在这张图上添加 $ n $ 条有向边,每一条有向边连接两个点 $ u,v $ ,你需要保证 $ u,v $ 在 ...