zoukankan      html  css  js  c++  java
  • 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特征。

  • 相关阅读:
    持久化 轻量数据
    ObjectiveC 中 +load 与 +initialize
    对待“技术“与“管理”的想法
    springcloudalibaba之Nacos
    Docker上安装Redis
    Docker安装Minio
    基于Docker部署Nacos
    支付宝微信合单支付
    Nacos安装和配置
    windows常用软件安装和配置
  • 原文地址:https://www.cnblogs.com/hustdc/p/6563891.html
Copyright © 2011-2022 走看看