百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

HOGG 基于Gabor变换与HOG特征的人体检测

bigegpt 2024-08-19 12:05 54 浏览

范国娟1,范国卿2,柳絮青3

(1.山东传媒职业学院,山东 济南 250200;2.丝路卫星通信有限公司,江苏 南京 210012;3.江南大学,江苏 无锡 214122)

针对实际监控中人体目标轮廓的多尺度特性,提出一种用于人体目标检测的多尺度方向特征描述子(HOGG)。首先采用Gabor滤波器提取人体图像对应不同尺度、不同方向的多个Gabor幅值域图谱,然后将相同尺度不同方向的幅值域图谱融合以降低特征维数,并对每幅融合图像提取梯度方向直方图(HOG)特征,最后将这些HOG特征联合起来作为人体图像表征。利用支持向量机(SVM)对描述特征进行分类,在CAVIAR数据库中进行了实验,结果表明,该算法对人体目标检测具有较好的性能。

人体检测被广泛地用于计算机视觉领域,如公共安全、智能机器人、视觉监控、行为分析等[1]。目前人体检测多采用基于统计分类的方法,常用Gabor小波变换和Haar小波变换提取人体特征。DALAL N[2]等人提出梯度直方图(Histograms of Oriented Gradient,HOG),利用图像块内的方向统计进行人体检测,对解决局部形变与视角变化等问题,该检测算法具有较高的精度。Mu Yadong[3]等人将局部二值模式(Local Binary Patterns,LBP)作为人体特征描述算子,具有旋转不变性和光照不变性,是一种有效的描述特征。Wang Xiaoyu[4]等人提出了HOG与LBP相结合的算法,达到两种特征互补的效果,对解决人体检测中部分遮挡问题有显著的提高。

上述轮廓特征一般都是在固定尺度上计算,没有考虑实际监控中复杂背景下人体目标轮廓的多尺度特性,当这些算法应用到真实场景中时,其性能会急剧下降。本文提出一种Gabor变换与HOG特征相结合的人体检测算法(简称HOGG),利用Gabor变换多方向多尺度的特性,增强了人体的轮廓信息。该方法首先对图像进行规一化处理,然后使用Gabor滤波器提取图像多尺度、多方向的幅值域图谱,并将同尺度不同方向幅值域图谱融合以降低特征维数,最后按顺序提取各个尺度上融合图谱的HOG特征,串接组成整幅图像的描述特征。在CAVIAR数据库下的大量实验表明,该方法能较好地提取人体描述特征,有较高的检测率。

在提取人体Gabor特征之前需要对图像进行规一化处理,本文实验中所用人体图像为灰度图像,大小为32×64像素。为了获取多尺度的Gabor特征,选取5个尺度和8个方向的Gabor滤波器组,则一幅人体图像的多尺度、多方向特征表示为:

通过Gabor变换后,每幅图像会转化成40个不同尺度与方向的图像,特征维数为原图像的40倍,造成特征数据冗余,增加了计算的复杂度。本文将Gabor特征同一尺度不同方向的特征进行融合,有效地降低了Gabor特征间的数据冗余,保持了有效的决策信息,并可以对人体图像进行多尺度分析。

2HOGG描述子

本文对融合图像进一步提取HOG特征,并将其联合起来作为人体图像的HOGG表征。HOGG的构建过程主要分为以下几个步骤:

(1)计算梯度幅值和方向

利用一阶模板算子(-1,0,1)分别从横向和纵向对融合图像进行梯度提取操作,求得融合图像的梯度图像。

(2)构建梯度方向直方图

把梯度图像分成同等大小的正方形小块(block),这些小块是相互重叠的并且每个小块被分为更小的正方形单元(cell,n×n像素)。利用梯度幅值和梯度方向在每个单元中进行直方图投票,其中梯度方向作为直方图投票区间,而梯度幅值作为直方图投票权重,这样对于每个小块(block)都能得到一个维度为m×m×b的直方图向量。

(3)梯度强度归一化

以block为单位进行L2norm标准化,减少局部光照以及前景、背景对比度的变化对直方图特征的影响。设vn是对应的block向量,则标准化的向量fn为:

其中:ξ为接近0的正数。

(4)形成特征向量

把一幅融合图像的所有块中的HOG特征连接起来就得到了该融合图像的HOG特征。再将各尺度融合图像的HOG顺接起来作为一幅人体图像的HOGG描述子。

3实验分析

3.1实验环境与数据库

在Core(TM)2.00 GHz的CPU,2.00 GB内存,Windows下MATLAB R2010a的计算机上进行仿真实验。实验采用MIT和INRIA数据库作为训练集,包括1 126个正样本与1 218个负样本;采用CAVIAR[5]数据库作为测试集。

3.2实验步骤

本文采用滑动窗口方式获取检测窗口,用HOGG描述子对检测窗口进行描述,再利用支持向量机[6]进行判别。由于在检测过程中,对同一个人体进行多重检测会直接导致计算效率下降。为此,本文将检测窗口从大到小进行遍历。在遍历过程中,如果待测区域已经被标记为人体,则跳过该区域。

3.3实验结果与分析

Gabor能对图像进行多尺度、多方向的分解,实验首先研究不同尺度数对检测算法的影响。从CAVIAR四个序列中各随机选取200张图片作为测试集。实验结果如表1所示。

实验中采用综合评价指标(F1measure,F)[7]评估算法的性能,其中:precision为准确率,recall为查全率;tp表示被正确检测人数,fp表示错误检测的人数,fn表示漏检的人数。

由于不同尺度子带间冗余信息较大,简单地增加尺度数不一定能提高性能,由表1可以看出,取尺度数为4效果最佳。

为了进一步验证本文提出的算法,选取Gabor尺度为4,在CAVIAR行人数据库上提取HOGG特征,参照文献[4]与HOG、LBP+HOG算法做了对比实验,如表2所示。

从图1可以看出,本文算法的Fmeasure优于当前其他方法,具有较好的性能,证明了HOGG方法的有效性。

4结论

本文提出了一种基于Gabor变换和HOG的人体目标检测的新特征表达,可以多层次、多分辨率地表征人体目标。在CAVIAR数据库中的实验数据表明,Gabor多尺度的变换能够增强HOG算子对人体纹理细节特征和全局特征的表示能力,有效地提高了人体检测的性能。

参考文献

[1] HARITAOGLU I,HARWOOD D,DAVIS L S. W4:realtime surveillance of people and their activities [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,(S01628828),2000,22(8) : 809-830.

[2] DALAL N, TRIGGS B. Histograms of oriented gradients for human detection [C]. In: IEEE Computer Society Conference on Computer Vision and Pattern Recognition,CVPR IEEE 2005:886-893.

[3] Mu Yadong,Yan Shuicheng, Liu Yi,et al. Discriminative local binary patterns for human detection in personal album [C]. Computer Vision and Pattern Recognition,Anchorage,AK,2008:1-8.

[4] Wang Xiaoyu,HAN T X,Yan Shuicheng. An HOGLBP human detector with partial occlusion handling [C]. Computer Vision, Kyoto,2009:32-39.

[5] CAVIAR. Benchmark Data [EB/OL].[2016-07-01]. http://homepages.inf.ed.ac.uk/rbf/CAVIAR/.

[6] KIM S K,PARK Y J,TOH K A, et al. SVM based feature extraction for face recognition [J]. Pattern Recognition,2010,43(8): 2871-2881.

[7] bluepoint2009. 准确率(Precision)、召回率(Recall)以及综合评价指标(F1 Measure)[EB/OL].(2012-09-18)[2015-06-21].http://www.cnblogs.com/bluepoint2009/archive/2012/09/18/precisionrecallf_measures.html.

AET会员年终大福利!

相关推荐

悠悠万事,吃饭为大(悠悠万事吃饭为大,什么意思)

新媒体编辑:杜岷赵蕾初审:程秀娟审核:汤小俊审签:周星...

高铁扒门事件升级版!婚宴上‘冲喜’老人团:我们抢的是社会资源

凌晨两点改方案时,突然收到婚庆团队发来的视频——胶东某酒店宴会厅,三个穿大红棉袄的中年妇女跟敢死队似的往前冲,眼瞅着就要扑到新娘的高额钻石项链上。要不是门口小伙及时阻拦,这婚礼造型团队熬了三个月的方案...

微服务架构实战:商家管理后台与sso设计,SSO客户端设计

SSO客户端设计下面通过模块merchant-security对SSO客户端安全认证部分的实现进行封装,以便各个接入SSO的客户端应用进行引用。安全认证的项目管理配置SSO客户端安全认证的项目管理使...

还在为 Spring Boot 配置类加载机制困惑?一文为你彻底解惑

在当今微服务架构盛行、项目复杂度不断攀升的开发环境下,SpringBoot作为Java后端开发的主流框架,无疑是我们手中的得力武器。然而,当我们在享受其自动配置带来的便捷时,是否曾被配置类加载...

Seata源码—6.Seata AT模式的数据源代理二

大纲1.Seata的Resource资源接口源码2.Seata数据源连接池代理的实现源码3.Client向Server发起注册RM的源码4.Client向Server注册RM时的交互源码5.数据源连接...

30分钟了解K8S(30分钟了解微积分)

微服务演进方向o面向分布式设计(Distribution):容器、微服务、API驱动的开发;o面向配置设计(Configuration):一个镜像,多个环境配置;o面向韧性设计(Resista...

SpringBoot条件化配置(@Conditional)全面解析与实战指南

一、条件化配置基础概念1.1什么是条件化配置条件化配置是Spring框架提供的一种基于特定条件来决定是否注册Bean或加载配置的机制。在SpringBoot中,这一机制通过@Conditional...

一招解决所有依赖冲突(克服依赖)

背景介绍最近遇到了这样一个问题,我们有一个jar包common-tool,作为基础工具包,被各个项目在引用。突然某一天发现日志很多报错。一看是NoSuchMethodError,意思是Dis...

你读过Mybatis的源码?说说它用到了几种设计模式

学习设计模式时,很多人都有类似的困扰——明明概念背得滚瓜烂熟,一到写代码就完全想不起来怎么用。就像学了一堆游泳技巧,却从没下过水实践,很难真正掌握。其实理解一个知识点,就像看立体模型,单角度观察总...

golang对接阿里云私有Bucket上传图片、授权访问图片

1、为什么要设置私有bucket公共读写:互联网上任何用户都可以对该Bucket内的文件进行访问,并且向该Bucket写入数据。这有可能造成您数据的外泄以及费用激增,若被人恶意写入违法信息还可...

spring中的资源的加载(spring加载原理)

最近在网上看到有人问@ContextConfiguration("classpath:/bean.xml")中除了classpath这种还有其他的写法么,看他的意思是想从本地文件...

Android资源使用(android资源文件)

Android资源管理机制在Android的开发中,需要使用到各式各样的资源,这些资源往往是一些静态资源,比如位图,颜色,布局定义,用户界面使用到的字符串,动画等。这些资源统统放在项目的res/独立子...

如何深度理解mybatis?(如何深度理解康乐服务质量管理的5个维度)

深度自定义mybatis回顾mybatis的操作的核心步骤编写核心类SqlSessionFacotryBuild进行解析配置文件深度分析解析SqlSessionFacotryBuild干的核心工作编写...

@Autowired与@Resource原理知识点详解

springIOCAOP的不多做赘述了,说下IOC:SpringIOC解决的是对象管理和对象依赖的问题,IOC容器可以理解为一个对象工厂,我们都把该对象交给工厂,工厂管理这些对象的创建以及依赖关系...

java的redis连接工具篇(java redis client)

在Java里,有不少用于连接Redis的工具,下面为你介绍一些主流的工具及其特点:JedisJedis是Redis官方推荐的Java连接工具,它提供了全面的Redis命令支持,且...