行人检测(总结)

目标检测(五)基于SVM的目标分类 支持向量机(support vector machines, SVM)是一种二分类模型,它的基本模型是定义在特征空间上的间隔最大的线性分类器,间隔最大使它有别于感知机;SVM 还包括核技巧,这使它成为实质上的非线性分类器。SVM 的的学习策略就是间隔最大化,可形式化为一个求解凸二次规划的问题,也等价于正则化的合页损失函数的最小化问题。SVM 的的学习算法就是求解凸二次规划的最优化算法。... 阅读详情

看了将近半年的行人检测的资料,最近开题了,我也趁着这个机会把脑袋里的东西总结一下:

先说下常用的数据库:最早的是MIT,这个库比较简单,行人图片背景简单,只有正面和背面。在2005年以前流行,2005年后随着HOG的提出,MIT库上的准确率已经达到100%,所以INRIA成为标准数据库中的大家通用的数据库。这个库背景复杂,人的姿势也比较多,还有些光照等环境的影响。另外一个关于车辆内行人的图像库是Daimler,不过我总下载不下来。。。

现在常用的方法分这么几类—
行人检测的目标是得到每个行人在视频中每帧的空间位置。根据对行人描述(表达)方法的不同,行人检测算法可以基本分为三类:基于形状模板匹配的方法和基于表观特征描述的方法,以及将形状和纹理结合的方法。根据对人体是以一个整体进行检测还是分部件进行检测,又可以将行人检测算法分为基于部件的检测方法和基于整体的检测方法。下面针对国际上常用的行人检测方法进行阐述。
(1)基于形状模板匹配的检测方法
形状是人体明显的一个特征,例如头肩部的“Ω”形、躯干部分的竖直边缘轮廓,可以利用形状之间的相似性来判断图像中是否有行人的存在。Gavrila[3-5]使用一系列人体形状来表示人体形状,然后在测试图像中提取边缘,基于Chamfer距离来评测图像与模板之间的相似性。LinZhe[6]等将人体分为头肩躯干、大腿和小腿三个部件,然后按照从上倒下使用Gavrila提出的方法分层次进行匹配,最后和基于背景建模得到的前景图像进行形状匹配,在检测行人的同时将其大致形状从背景中分割出来。
基于形状匹配方法的优点是直接描述人体的形状,比较直观,检测完成以后可以根据模板的形状和姿势,判断检测到行人的姿势并切割出行人的大致轮廓。但由于其在线检测时很难获得待匹配图像中目标的轮廓,且其利用样本来描述类别的形状,导致其一些显著的缺点:离线训练时的人体外围轮廓需手工标定,边缘提取受背景的影响,没有采取鉴别性学习等
(2)基于表观特征向量的检测方法
基于表观特征向量的检测方法使用能够描述目标表观特性的特征向量表示目标模式和非目标模式,然后使用基于统计学习得到的分类器根据特征向量做出判决。
特征提取将原始的图像灰度(彩色)信息映射到特征空间,其目的是减小待分类类别的类内变化和增大类间变化,理想的特征是不同类别的分布没有交叠,完全可分。特征提取的方法有两种:基于整体特征向量的方法和基于关键点提取的方法。
在基于整体特征向量的方法中,较早用于行人检测的是Haar小波,Papageorgiou[7]等使用Haar小波变化系数描述行人,然后使用线性SVM分类器进行判决,建立了一个基于统计学习和表观特征相结合的行人检测系统。之后,为了避免边缘提取误差,很多方法直接使用梯度信息来表示人体的形状,提高的鲁棒性。例如局部边缘方向直方图EOH[8](Local Edge Orientation Histograms)、Edgelet[9]和Shapelet[10]等,这其中以Dalal[1]等人提出的HOG(Histograms of Oriented Gradients)的工作影响最大。HOG特征成为最近一个主流使用的特征。在找寻更好描述行人特征的同时,另一个发展的趋势的特征融合。实验证明:融合多种能够描述人不同特点的特征,能够获得比仅利用单一特征类型时的检测性能。
基于感兴趣区域的人体描述方法,首先使用感兴趣点(或关键点)提取算法,提取关键区域,然后使用这些感兴趣区域内提取到的特征向量,描述相关的区域,然后使用关键区域的空间位置关系描述人体。由于衣服多样性和人体姿势变化等因素的影响,人体上的感兴趣区域提取不够稳定,限制了该方法的性能。
(3)基于部件检测的方法
Felzenszwalb[11]等人根据人体的关节特性,将人体的分为十个部件,每个部位都有自己的表观特征,部位之间的几何关系允许一定的变化,建立了一个运行形变的基于部件的检测模型。之后对部件的数量进行了改进,以及检测结果的一些特征融合。
基于部件检测的方法在一定程度上可以客服局部遮挡带来的问题,,但是由于这种方法都是人工将人体划分部件,而且要求训练数据中标定每一个部件的位置,造成了人力资源的消耗和性能的不确定性。因此,现在在使用这一方法时,经常与HOG等特征结合使用,以提高性能。

现在主要的检测方法还是以HOG特征为主,我把我看过的几篇论文放在这里,需要的朋友们可以点击下载:
最初提出HOG特征的论文:hog_cvpr2005_ 
这篇文章是研究行人检测的必看文章

Dalal(上面那篇文章的作者)的博士论文:Dalal-phd06(较大,链接在俺的机子上,可能不能下载) 对大家进一步了解HOG会有很大帮助

Fast Hog,对最初的HOG特征进行了改进:Zhu_Fast Human Detection Using a Cascade of Histograms of Oriented Gradients 
这篇论文在原文的基础上加入了积分图,cascade结构。我没有把这篇论文实现,因为cascade中的每一级所使用的弱分类器是svm,训练时间会很长——如文中所述的“a few days”

另外还有Edgelet特征貌似也不错。不过,我没研究过。不做评论。

再链接两篇中国人发的关于行人检测的cvpr:Granularity-tunable Gradients Partition (GGP) Descriptors for Human Detection(翻过,没细研究)

cvpr09-0515-Adaptive Contour Features in Oriented Granular Space for Human Detection(仔细研读了:提出一种新的特征,但是有些特别重要的地方没讲清楚)

现在在INRIA库上的最好结果是:Maji S., Berg A C, Malik J. Classification using Intersection Kernel Support Vector Machine is Efficient. 是对SVM进行了改进。

上面主要是针对图像库来检测的。不能达到实时,要做到实时是不可能的。下面是我草拟的一个行人检测的流程:

离线训练过程:
1.输入为标准图像库中的图像,对于正样本,直接提取特征;对于负样本,多尺度遍历整幅图像,进行特征提取。提取Harr,LBP,HOG三种特征并保存为积分图形式。
2.对于cascade的每一级进行如下操作:用Adaboost进行特征选择,选出最好的特征。
在前面的几级用Harr和LBP这两种计算较快的特征,后几级用HOG。
3.进行级数调整,直到达到要求的检测率和错误率。

检测过程: 1.输入图像,多尺度遍历整幅图像,进行特征提取:提取Harr,LBP,HOG三种特征并保存为积分图形式。 2.将所有子窗口输入训练得到的模型中,如下图,经cascade分类器后,根据检测结果即可标定行人区域,通过一些后处理(例如,合并临近的窗口),就可以对行人进行定位,达到检测的目的。

 

【行人检测】检测视频中的行人 【行人检测】检测视频中的行人 在上一节检测图片中的行人的基础上,实现检测视频中的行人。 检测行人的视频可戳:https://download.youkuaiyun.com/download/u012679707/11076663 完整程序: // Hog_SVM_Pedestrian.cpp: 定义控制台应用程序的入口点。 // #include "stdafx.h" #i... 阅读详情

相关推荐

【行人检测】行人检测综述

行人检测综述--从手工特征到深度特性

m0_61112058的博客 4435

行人检测

版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明 http://shijuanfeng.blogbus.com/logs/100675201.html看了将近半年的行人检测的资料,最近开题了,我也趁着这个机会把脑袋里的东西总结一下:先说下常用的

学习之路 5985

行人检测简述

申明,本文是笔者在阅读了几篇行人检测综述性文章之后,翻译、总结、归纳所得。方便自己了解行人检测的发展趋势,同时,也给打算从事行人检测研究的朋友们提供一些思路吧。 行人检测的历史: 早期以静态图像处理中的分割、边缘提取、运动检测等方法为主。例如: (1)以Gavrila为代表的全局模板方法:基于轮廓的分层匹配算法,构造了将近2500个轮廓模板对行人进行匹配, 从而识别出行人。为了解决模板数量众

计算机视觉小菜鸟的专栏 4万+

行人检测(Pedestrian Detection)小结-Part III(相关论文总结报告)

一 特征提取  1.1  矩特征   矩特征主要表征了图像区域的几何特征,又称为几何矩, 由于其具有旋转、平移、尺度等特性的不变特征,所以又称其为不变矩。在图像处理中,几何不变矩可以作为一个重要的特征来表示物体,可以据此特征来对图像进行分类等操作。 矩特征是目前特征提取过程中效果比较理想的方法 矩实际上是图像灰度相对于图像质心的统计情况反映, Hu在1961 年首先提出了矩不变量的概念,并

holybin的专栏 6616

【SIGAI综述】行人检测算法

其它机器学习、深度学习算法的全面系统讲解可以阅读《机器学习-原理、算法与应用》,清华大学出版社,雷明著,由SIGAI公众号作者倾力打造。 书的购买链接 书的勘误,优化,源代码资源 本文为SIGAI原创文章,仅供个人学习使用,未经允许,不能用于商业目的。 欢迎搜索关注微信公众号SIGAICN,获取更多原创干货 导言 行人检测是计算机视觉中的经典问题,也是长期以来难以解决的问...

SIGAI_优快云的博客 2万+

视频行人检测系统

视频行人检测系统 目的 设计一个视频行人检测系统,能够分割出多个行人。 代码 import cv2 import numpy as np #判断是否处于人像区域 def is_inside(o, i): ox, oy, ow, oh = o ix, iy, iw, ih = i return ox > ix and oy > iy and ox + ow < ...

weixin_43459369的博客 1780

自己训练SVM分类器进行HOG行人检测

正样本来源是INRIA数据集中的96*160大小的人体图片,使用时上下左右都去掉16个像素,截取中间的64*128大小的人体。 负样本是从不包含人体的图片中随机裁取的,大小同样是64*128。 SVM使用的是OpenCV自带的CvSVM类。 首先计算正负样本图像的HOG描述子,组成一个特征向量矩阵,对应的要有一个指定每个特征向量的类别的类标向量,输入SVM中进行训练。 训练好的SVM分类器保存为XML文件,然后根据其中的支持向量和参数生成OpenCV中的HOG描述子可用的检测子参数,再调用OpenCV中的多

Why So Serious? 5万+

OpenCV实例(六)行人检测

行人检测是目标检测的一个分支。目标检测的任务是从图像中识别出预定义类型目标,并确定每个目标的位置。用来检测行人的目标检测系统被称为行人检测系统。行人检测主要用来判断输入图片(或视频)内是否包含行人。若检测到行人,则给出其具体的位置信息。该位置信息是智能视频监控、人体行为分析、智能驾驶、智能机器人等应用的关键基础。由于行人可能处于移动状态,也可能处于静止状态,且外观容易受到体型、姿态、衣着、拍摄角度、遮挡等多种因素的影响,因此行人检测在计算机视觉领域内成为研究热点与难点。

小幽余生不加糖 9815

OpenCV实践之路——行人检测

行人检测是视觉领域很热也很有用的一个主题,特别是在无人驾驶中,行人检测的重要性不言而喻。 在之前进行了人脸检测之后,行人检测就显得简单多了。过程大致与人脸检测一样,都是先加载分类器,然后进行多尺度检测。就偷懒不再赘述。感兴趣的可以看人脸检测的这一篇文章:OpenCV实践之路——人脸检测(C++/Python) 这里只是把代码放在这里,没几行,而且都有着注释: #include #inclu

星沉阁 2万+

AS7341光谱传感器实战:I2C驱动、Arduino与Python代码及校准指南

光谱传感器通过多通道滤光片与光电二极管阵列,将光信号转换为数字量,实现波长级测量。其技术价值在于以低成本替代传统光谱仪,完成颜色识别、光源分析等任务。在植物补光、水质检测等场景中,多通道光谱数据能精准区分红光与深红光比例。AS7341作为9通道(8可见光+1近红外)I2C传感器,支持Arduino、ESP32和树莓派,结合增益与积分时间调节,可适应强弱光环境。本文从芯片原理出发,详解寄存器配置、双平台代码实现、暗电流与白板校准方法,并给出常见问题排查指南,帮助创客快速构建光谱应用。

weixin_42519733的博客 252

团结引擎+OpenHarmony 记录 (持续更新中)

获取不到的原因是因为二者不在同一个线程中,所以数据没有同步。而 globalThis.context 数据进行了同步。(TuanjieMainWorkerHandler.ts中可以看到)在进行绘制 UI 的时候 ,如果组件有 Native API 就可能不会显示出来,例如 web 控件就不能展示出来,刚加上权限的时候 会报错 因为缺少 reason ,添加上就不会报错了。只有纯 UI 控件是可以展示出来的,注释掉 web控件后就可以。

m_cainiaokuaifei的博客 1490

【OpenCV】视频行人检测

视频行人检测系统,能够分割出多个行人。 环境:VS2017 + OpenCV3.4.1 1 实现图片行人检测 步骤: (1)定义HOG对象 (2)设置SVM分类器 (3)在测试图像上检测行人区域 (4)显示图片 2 实现视频行人检测 步骤: (1)初始化参数 (2)设置SVM分类器 (3)在测试图像上检测行...

iefenghao的博客 1万+

Android PackageManagerService 总结(一)应用市场下载安装apk流程

前言: 本篇文章是对系统包安装流程的总结,基于Android12 上 com.android.packageinstaller 源码的分析,第三方应用商城(华为商城,小米商城,应用宝,豌豆荚,酷安等)下载安装应 用,在普通安装和静默安装app两种方式下,对代码流程的梳理和讲解。 触发安装: 当你在商城界面中点击安装按钮,应用会自动下载,下载完成后就会调起系统安装应用的界面,此种触发方式一般是通过Intent 隐式调用的,我们先阅读如下代码: ......

u012514113的专栏 1万+

行人检测数据集

行人检测数据集 行人检测( Pedestrian Detection) 是计算机视觉领域内应用比较广泛和比较热门的算法,一般会与行人跟踪,行人重识别等技术进行结合,来对区域内的行人进行检测识别跟踪,广泛应用于安防,零售等领域。由于行人的外观易受穿着、尺度、遮挡、姿态和视角等影响,行人检测也具有一定的挑战性。本文我们收集了行人检测常用的一些数据集,方便大家来学习和研究行人检测算法。所有数据集均为网上公开数据集,文末附有下载链接。 1.MIT-CBCL Pedestrian Database(MIT行人

qwj的博客 1万+

Ansys Zemax实战:5步搞定多模光纤耦合效率优化(附IMAE操作数详解)

本文详细介绍了使用Ansys Zemax优化多模光纤耦合效率的5个关键步骤,包括几何图像分析设置、IMAE操作数应用及偏振效应处理。通过实战案例解析,帮助工程师快速掌握光纤耦合效率提升技巧,特别针对IMAE操作数的配置保存机制和菲涅尔损耗控制进行深度讲解。

potato的博客 690

新手必看|HDevelop核心算子快速上手,为C#移植打基础

在上一篇文章中,我们完成了C#+HALCON的开发环境搭建。但在实际工业开发中,绝不会直接在C#中编写视觉算法HDevelop可视化调试算法 → 验证效果 → 导出C#代码 → 集成到上位机。HDevelop是HALCON专属的算法调试工具,支持实时预览图像、参数动态调节、零编译运行,是新手入门和工业算法调试的核心工具。本文聚焦工业场景高频使用的核心算子,从基础操作到实战案例,手把手教你使用HDevelop;同时重点讲解算法导出C#的规范,让你调试完成的算法,能无缝移植到WinForm上位机中。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 778

行人检测算法

行人检测算法 微信公众号:SIGAI 其它机器学习、深度学习算法的全面系统讲解可以阅读《机器学习-原理、算法与应用》,清华大学出版社,雷明著,由SIGAI公众号作者倾力打造。 书的购买链接 书的勘误,优化,源代码资源 导言 行人检测是计算机视觉中的经典问题,也是长期以来难以解决的问题。和人脸检测问题相比,由于人体的姿态复 杂,变形更大,附着物和遮挡等问题更严重 ,因此准确的检测处于各种场景下的行人具有很大的难度。在本文 中,SIGAI将为大家回顾行人检测算法的发展历程。 问题描述 行人检测(

qwj的博客 1万+

VConsole动态加载

// 移动端真机调试工具 vconsole import VConsole from "vconsole"; import Vue from "vue"; // 动态使用VConsole if(process.env.NODE_ENV==='production'){ if(process.env.VUE_APP_BASEURL.includes('test')||process.env.VUE_APP_BASEURL.includes('pre')){ Vue.prototype

aliven1的博客 1041

行人检测综述

PART I from: http://www.cnblogs.com/molakejin/p/5708791.html 行人检测具有极其广泛的应用:智能辅助驾驶,智能监控,行人分析以及智能机器人等领域。从2005年以来行人检测进入了一个快速的发展阶段,但是也存在很多问题还有待解决,主要还是在性能和速度方面还不能达到一个权衡。近年,以谷歌为首的自动驾驶技术的研发正如火如荼的进行,这也迫切需要能对...

律己且好学,才能保证不坠入愤世嫉俗之列。 1万+

线性代数——(期末突击)行列式(上)-行列式计算、行列式的性质

简单解释一下:4213原本的顺序应为1234,对于‘4’而言,‘2’、‘1’、‘3’都应该排在它的前面,所以此处记逆序数为3;对于‘2’而言,‘1’应该排在它的前面,而‘3’排在它之后 是合理的,所以此处只有一个逆序数;最后看‘1’,其后面的‘3’排在后面显然也是合理的,故而4213的逆序数为4.一般我们使用这个性质来计算四阶行列式,也就是将其变换成三角行列式,再计算对角线的值;以主对角线为分界线的就为正三角,反之则为反三角行列式。若行列式某一行(列)为0,则该行列式=0.将和的那一行分开,其余行。

li13437542099的博客 1万+

【26美赛D题】2026美赛数学建模(MCM/ICM)思路解析及代码分享

2026美赛D题数学建模竞赛思路解析摘要:本文针对美赛D题提供系统性解决方案,提出四层建模框架(数据层、机理层、模型层、决策层),强调逻辑闭环比模型复杂度更重要。包含通用建模步骤:指标体系构建、状态评估、动态预测和策略优化,并给出Python基础代码框架。论文建议采用七段式结构,突出从现实问题到决策方案的完整闭环。核心在于通过数据驱动方法揭示问题规律,结合多源数据整合、系统行为建模和风险评估,最终形成可落地的决策建议,体现数学建模解决实际问题的能力。

一键难忘的博客 1082

YOLOv5行人检测

YOLOv5行人检测1.数据准备1.下载数据集2.整理出jpg和xml2.进行YOLOV5的部署训练1.划分数据集2.生成yolo的txt文件3.配置自己数据集的文件4.聚类找anchors5.配置模型文件6.训练模型 1.数据准备 1.下载数据集 (工程1WiderPerson)首先下载行人数据集:这里我使用了WiderPerson数据集,下载数据集。 2.整理出jpg和xml 把数据集整理出图片和xml文件:把下面的py文件运行3遍,第一遍运行train.txt文件,第二遍运行val.txt文件,并且注

weixin_38226321的博客 2万+

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

【行人检测】检测图片中的行人

    【行人检测】检测图片中的行人    在Opencv3.4.0中自带行人检测(视频中的)的例子,在安装路径下的             ..\opencv3_4\opencv\sources\samples\cpp\peopledetect.cpp    本节在其基础上稍加改动,便可运行。附录部分为程序中用到的几个关键函数的参数解析。    【运行环境】VS2017+Opencv3.4.0+...

gogo小Sa的专栏 5287

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

行人重识别(1)——行人检测综述

行人检测综述:基于运动检测的方法、基于传统机器学习的方法、基于深度学习的方法、行人检测常见数据集等概述。

R.I.P Kobe Bryant 4268

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

pythonopencv检测行人_Python+OpenCV进行行人检测

Python+OpenCV进行行人检测应用非极大抑制方法,可排除候选的重叠检测使用前环境及库配置我运行的环境为Python3.6(Anaconda3)+OpenCV3,IDE:PyCharm1.其中如果安装Anaconda3就可以少安装很多库2.如果安装了Anaconda3,就只需要配置一个库imutils3.imutils安装方法pip install imutils确保imutils版本大于v...

weixin_40005454的博客 1797

python行人检测_行人检测 基于 OpenCV 的人体检测

原文链接行人检测 基于 OpenCV 的人体检测 - 热分享​hotdog29.com行人检测 基于 OpenCV 的人体检测我们都知道,无论性别,种族或种族如何,我们的身体都具有相同的基本结构。在最结构层面,我们都有头部,两个手臂,一个躯干和两条腿。我们可以利用计算机视觉来利用这种 半刚性结构并提取特征来量化人体。这些功能可以传递给机器学习模型,这些模型在训练时可用于 检测 和 跟踪 图像...

weixin_39950081的博客 2106
上一篇: HOG行人检测
下一篇: 目标检测的图像特征提取之(一)HOG特征
淡淡的生活
博客等级 码龄16年 341粉丝 8原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值