HOG特征提取_模式识别图像处理算法有哪些

HOG特征提取_模式识别图像处理算法有哪些图像处理之特征提取:HOG特征简单梳理HOG方向梯度直方图,这里分解为方向梯度与直方图。一、方向梯度梯度:在向量微积分中,标量场的梯度是一个向量场。标量场中某一点上的梯度指向标量场增长最快的方向,梯度的长度是这个最大的变化率。更严格的说,从欧几里得空间Rn到R的函数的梯度是在Rn某一点最佳的线性近似。在这个…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

             图像处理之特征提取:HOG特征简单梳理

         

 HOG方向梯度直方图,这里分解为方向梯度与直方图。

一、方向梯度

梯度:在向量微积分中,标量场的梯度是一个向量场。标量场中某一点上的梯度指向标量场增长最快的方向,梯度的长度是这个最大的变化率。更严格的说,从欧几里得空间Rn到R的函数的梯度是在Rn某一点最佳的线性近似。在这个意义上,梯度是雅可比矩阵的一个特殊情况。
      在单变量的实值函数的情况,梯度只是导数,或者,对于一个线性函数,也就是线的斜率。

在图像中梯度的概念也是像素值变换最快的方向,把边缘(在图像合成中单一物体的轮廓叫做边缘)引入进来,边缘与梯度保持垂直方向。

HOG特征提取_模式识别图像处理算法有哪些

                                                                                                     图1

方向梯度中的方向是如何确定的?P0到P1的梯度方向:

HOG特征提取_模式识别图像处理算法有哪些

                                                                                                        图2

具体在HOG中方向梯度的实现:首先用[-1,0,1]梯度算子对原图像做卷积运算,得到x方向(水平方向,以向右为正方向)的梯度分量gradscalx,然后用[1,0,-1]T梯度算子对原图像做卷积运算,得到y方向(竖直方向,以向上为正方向)的梯度分量gradscaly。然后再用以下公式计算该像素点的梯度大小和方向。

HOG特征提取_模式识别图像处理算法有哪些

二、直方图

  直方图是一个图像处理中用的比较多的概念,想深入了解,可以度娘一下。

三、方向梯度直方图HOG的提取

  方向梯度直方图为图像局部区域的梯度特征量统计,我们为什么要提取这个东东呢?

     HOG主要应用于行人检测方面,以行人照片为例。

       HOG特征提取_模式识别图像处理算法有哪些

                                                                                                        图3

  上图是一张行人图的四种表示方式,原三色图,灰度图,边缘图,梯度图,人脑根据前期学习与先验知识很容易理解到图像中包含着一个行人,并可以根据一定情况将其从图像中抠选出来,但计算机是怎么思考的呢?怎样让计算机理解以上图像中包含的是一个行人呢?前三个图像现在情况不适用,所以选取梯度图,现在的梯度图同样也是人脑处理理解的平面结果,计算机是办不到的,需要将直观地的梯度图像转换成一种计算机容易理解的数据特征语言。

  

  对于64*128的图像而言,每8*8的像素组成一个cell,每2*2个cell组成一个块,以8个像素为步长,那么,水平方向将有7个扫描窗口,垂直方向将有15个扫描窗口。也就是说,64*128的图片,总共有36*7*15=3780个特征。这里截取梯度图的一部分画图进行理解,尺寸与比例并不精确。

HOG特征提取_模式识别图像处理算法有哪些

                                                                                                          图4

  单独将其中一个8*8的小格拿出来,方向梯度中指的方向范围为2π,360°,为了画直方图我们还需要选取合适的组距也就是bin,这里组距选取2π/9,也就是最后的直方图组数为9。下图为8*8像素的cell对应的方向梯度(未全部画出,共有8*8=64个)。

HOG特征提取_模式识别图像处理算法有哪些

                                                                                                   图5

  将上面的64个方向梯度,按着直方图的参数设置进行画图,其中梯度的大小在统计数量中呈线性关系,比如梯度大小为2,则直方图对应增加2个单位,

        画出的对应直方图假设如下所示:

HOG特征提取_模式识别图像处理算法有哪些

                                                                                                              图6

  把上图中单个cell对应的方向直方图转换为单维向量,也就是按规定组距对对应方向梯度个数进行编码,(8,10,6,12,4,5,8,6,14),得到单个cell的9个特征,每个block(扫描窗口)包含2*2个cell也就是2*2*9=36个特征,一个64*128大小的图像最后得到的特征数为36*7*15=3780个。这样将一幅直观的梯度图通过分解提取变为计算机容易理解的特征向量。

  以上工作为HOG提取的主要内容,最后得到对应的行人的由方向梯度直方图HOG提取到的特征向量,但是计算机还是不知道这个数据数组代表了什么意思,什么时候这组向量代表行人,什么时候代表其他东西,怎样train,最后通过不断地学习,而后在检测积累的基础上对对未知图像检测识别有没有行人呢?那就是后一步SVM要做的事了。

参考文献:

      目标检测的图像特征提取之(一)HOG特征  

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/213656.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 免费LInux主机资源

    免费LInux主机资源

    2021年11月15日
    51
  • C语言再学习 — 段错误(核心已转储)

    参看:Linux下的段错误产生的原因及调试方法参看:Linux环境下段错误的产生原因及调试方法小结参看:维基百科–Segmentationfault参看:LINUX内核段错误调试详细指南精品培训PPT讲义一、什么是段错误?一旦一个程序发生了越界访问,cpu就会产生相应的保护,于是segmentationfault就出现了,通过上面的解释,段错误应该就是访问了不可访问的内存,这个内存区要

    2022年4月11日
    65
  • C++ 核心编程

    C++核心编程引用**作用:**给变量起别名语法:数据类型&别名=原名引用是一种特殊的指针类型,引用一旦被定义就不能重新赋值,并且不能被设置为空值。intmain()

    2021年12月13日
    38
  • java mediatype属性_Java 如何获得文件的 Media Type「建议收藏」

    java mediatype属性_Java 如何获得文件的 Media Type「建议收藏」一般来说你可以使用ApacheTika来获得文件的类型。Tika是一个内容分析工具Maven设置maven的版本到你的POM文件中。org.apache.tikatika-core1.25测试代码例如,我们可以使用下面的测试代码。@TestpublicvoidwhenUsingTika_thenSuccess(){Filefile=newFile(“product.pn…

    2022年5月26日
    206
  • web开发中前端页面是如何跟后端服务器数据交互的「建议收藏」

    web开发中前端页面是如何跟后端服务器数据交互的「建议收藏」后端服务器一般是指servlet容器,用于执行java源程序常见的网页有html,htm,shtml,asp,aspx,php,jsp等格式前两个常用于静态网页,后面几个常用于动态网页。这里前端网页以比较常见的xx.html和xx.jsp网页作为介绍,其它类似一、静态页面xx.html如何跟后台交互:先来看一个最简单的登陆界面源代码 <body>…

    2022年6月12日
    31
  • DDPG Project「建议收藏」

    DDPG Project「建议收藏」1.RememberthedifferencebetweentheDQNandDDPGintheQfunctionlearningisthattheTarget’snextMAXQvalueisestimatedbytheactor,notthecriticitself.(Incontinuousactionspace,the…

    2022年6月28日
    22

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号