精华内容
下载资源
问答
  • 通过3D LiDAR融合在自动驾驶中促进基于CNN的行人检测
  • 猪的代码matlab 行人检测 使用深度学习通过图像对自动驾驶汽车进行行人检测 这个项目是为了分析和学术提交而完成的。 所以它包含用于从图像中检测行人的 MATLAB 代码,使用 CNN 和 HOG 特征提取。
  • 车辆(包括电动汽车)自动无人驾驶系统设计参考
  • 来源:小马智行第二场技术沙龙今天我主要想分享自动驾驶感知技术在探索的过程中,采用的传统方法和深度学习方法。传统方法不代表多传统,深度学习也不代表多深度。它们有各自的优点,...
        

    640?wx_fmt=jpeg

    来源:小马智行第二场技术沙龙

    今天我主要想分享自动驾驶感知技术在探索的过程中,采用的传统方法和深度学习方法。传统方法不代表多传统,深度学习也不代表多深度。它们有各自的优点,也都能解决各自的问题,最终希望将其结合起来,发挥所有方法的优点。

    640?wx_fmt=jpeg
    感知系统简介

    640?wx_fmt=jpeg

    首先介绍下感知系统。感知可以被看作是对周围世界建模的过程,比如车辆在行驶过程中,需要知道其他物体的地理位置、速度、运动方向、加速度等各种各样的信息,自动驾驶系统接收这些信息之后,再通过后续的规划和控制模块来对车的运动做真正的调节。

    感知可以类比为人类眼睛的功能,即观察周围世界的能力:

    ◆ 采用的传感器:激光雷达、照相机、毫米波雷达等。

    ◆ 帧信号处理:多传感器深度融合、物体分割、物体检测、物体分类。

    ◆ 物体追踪:当有多帧信息之后,可以推算速度、加速度、方向等更有意义的信息,甚至可以用多帧的信息调整物体分割的结果。

     道路特征分析:对道路特征进行理解,比如交通信号灯、交通指示牌等。

    感知可以认为是自动驾驶系统的基础部分,假如感知不到这个世界,就谈不上对这个世界做出反应,更谈不上后续的路径规划和车辆控制的过程。

    640?wx_fmt=jpeg
    2D物体检测

    我今天主要介绍关于物体检测部分,因为必须先有了准确的物体检测和分割结果,我们才能对物体做出准确的分类、追踪等。我首先介绍下2D物体检测。

    640?wx_fmt=jpeg

    2D物体检测是指以2D信息作为输入(input)的检测过程,而典型的2D输入信息来自于照相机。

    传统2D物体检测方法及缺点

    传统的 2D 信息检测方法是使用检测框遍历图片,把对应的图片位置抠出来之后,进行特征提取,用 Harris计算子检测角点信息,Canny计算子检测边缘信息等。物体特征被提取并聚集在一起后,通过做分类器(比如SVM),我们可以判断提取的图中是否存在物体,以及物体的类别是什么。

    但传统 2D 物体检测方法存在不足:

    • 检测物体时,需要预置检测框,对不同物体需要设置不同的检测框。
    • 自动驾驶需要高级的组合特征,而传统方法提取的特征维度比较低,对后续的分类会造成比较大的影响。

    基于深度学习的2D物体检测

    640?wx_fmt=jpeg

    卷积神经网络的出现,解决了部分传统2D物体检测方法的不足。

    卷积神经网络首先是多层感知机加卷积操作的结合,它的特征提取能力非常不错。因为卷积神经网络经常会有几十、上百个卷积,使其具备高维特征提取能力。

    其次,通过 ROI pooling和RPN,整张图可以共享同样的特征,物体检测时不用遍历整张图片,还可以在单次操作中对图片中所有物体进行检测。这种检测方法使物体检测模型真正具备了应用于实际场景中的性能。

    目前基于卷积神经网络的2D物体检测有两类分支:

     Anchor Based Methods:跟传统方法比较类似,先预置检测框,检测过程则是对预设框的拟合过程。
    • RCNN(fast,faster)
    • SSD(DSSD)
    • YOLO(v1,v2,v3)
    • RetinaNET

     Anchor Free Methods:直接对照特征金字塔的每个位置,回归对应位置上,判断物体是否存在、它的大小是多少等。这类方法是2018年底开始大量出现的,也是未来的一个发展方向。
    • CornerNet
    • FSAF
    • FCOS

    640?wx_fmt=jpeg

    这是路测场景中的一个真实检测案例(上图),2D 物体检测已经应用于检测路面上一些小物体。

    同时远距离物体检测也是2D物体检测中关注的重点。受限于激光雷达和毫米波雷达的物理特征,远距离物体缺乏良好的检测效果,而照相机在这方面比较有优势,可以和其他的检测方法进行互补。

    2D物体检测面临的问题

    物体相互遮挡
    640?wx_fmt=jpeg

    但是采用照相机做 2D 物体检测不可避免要面临一些问题。因为照相机回馈的图像只有两个维度,当两个物体堆叠时,对一个神经网络而言,图像的特征就比较聚集。

    一般做物体检测的过程,会用一些非极大值抑制的方法,对检测结果进行后处理,当特征结果非常密集的时候,这种方法往往会受到影响。

    成像质量波动
    640?wx_fmt=jpeg

    照相机是可见光设备,因此会受到光照强度的影响,成像质量出现波动。但我们总是希望图中的特征不管是在哪个位置,都能得到足够的表达。

    例如,2D图像中远处的车灯和路灯很难区分开,导致可能都被检测为车或者路灯。在这种情况下,特征总会难以区分。

    测距

    另一个的问题就是测距问题。因为照相机是被动光源的设备,它不具备主动测距的能力。

    如果希望借助照相机进行物体测距,就需要做很多的假设或者求解一些病态的数学问题,用以估算车与物体的距离。但这个结果通常不如主动测距设备的结果,比如激光雷达和毫米波雷达。

    640?wx_fmt=jpeg
    3D物体检测

    正是因为照相机存在上面提到的问题,所以我们物体检测也使用了其他的传感器,将它们的结果共同结合起来,最终达到更可靠的检测效果。

    什么是3D物体检测?

    640?wx_fmt=jpeg

    3D物体检测,顾名思义就是把3D的一些数据坐标,聚集起来进行物体检测。比如激光雷达,类似于我们拿一支激光笔不断扫描周围,它会提供相对明显的信息。当把3D数据聚集起来之后,我们可以用来推测周围物体的位置,大小,朝向等等。

    3D物体检测一个很大的好处就是,我们在2D物体检测中很难区分的物体,有了3D数据提供的距离信息之后,将更容易从距离的维度上分开。这样感知系统在进行物体分割的时候能使用的信息更多,达到一个更好的工作效果。

    传统3D分割方法及限制

    传统的 3D 分割方法包括:
    • Flood Fill
    • DB scan
    • Graph Cut

    640?wx_fmt=jpeg

    它主要是利用一些点的距离信息、密度信息或者点的一些天然属性,比如它的强度,把物体聚类分割。

    传统分割方法也存在不少限制,首先是过度分割

    640?wx_fmt=jpeg

    比如上图中的异形车,由于车尾和车头之间有缝隙,在 3D 检测中,它可能会被分割成多个物体,因为点和点之间有间隙,在激光雷达检测时呈现的是离散信息,就会出现过度分割。

    传统分割方法的另一个问题是分割不足

    640?wx_fmt=jpeg

    我们将上图出现的情况称为“三人成车”,就是当三个人离的很近的时候,有可能被传统分割方法识别成一辆车。

    基于深度学习的3D分割方法

    640?wx_fmt=jpeg

    当深度学习与卷积神经网络引入到 3D 物体检测中时,我们发现传统3D分割方法遇到的问题得到较好解决。

    首先让点云信息进行特征工程,即将点的位置、反射强度、高级特征聚合在一起,组织成类似图片或者图的关系。随后进行卷积神经网络特征提取,再进行多帧特征的聚合(它的意义是对运动的物体有一个更好的反映),最后输出物体的位置、聚类信息、物体速度。

    640?wx_fmt=jpeg

    通过上述深度学习方法,“三人成车”的情况得到避免。系统不仅可以提取人的距离关系,还可以提取到更多的高级信息,比如在点云变化中,人类的点云形似长的柱体,而自行车类似于小山一样的点云分布,这样感知系统可以了解这些障碍物不属于同一物体,而将其割离开。

    深度学习3D分割方法的限制

    另一方面,我们也要认识到深度学习分割方法也可能面对的挑战。

    640?wx_fmt=jpeg

    ◆ 结果的不完全可控:首先卷积神经网络经常有几百层的卷积层,参数总量可能有百万级,并且是自动学习的,这可能会导致对网络的输出缺少把控。换句话说,系统无法预期数据输入(input)后会得到怎样的数据输出,于自动驾驶而言,这是比较致命的。因为自动驾驶对场景的召回率和精度有非常高要求,如果车辆在行驶中,前面的一位行人miss(丢失),这是极其严重的隐患。

    ◆ 无法保证100%的召回(recall):如上图所示,垃圾桶和行人的特征其实非常相似,那么深度学习可能会出现把人学成了垃圾桶,最后导致行人在感知系统中出现丢失的情况。

    ◆ 易导致过拟合:由于卷积神经网络有非常好的特征提取能力,固定的数据集训练可能导致神经网络过拟合。例如同样的数据集训练后,在北京路测的表现很好,但是当到达一个新的城市进行测试时,因为路面特征和北京有所区别,可能导致物体分割效果下降,这对感知系统非常不友好。

    优点兼得:传统方法和深度学习方法的结合

    为了解决分割方法的限制,我们的想法是将传统方法和深度学习方法的结果进行结合:

    ◆ 使用深度学习的分割结果调整传统分割方法的结果。

    ◆ 使用传统分割方法的结果补足深度学习结果的召回。

    ◆ 基于多帧追踪的概率模型融合:比如利用马尔可夫分布的特点、贝叶斯的方法对多帧数据进行一定的平滑,以得到更好的效果。

    通过传统方法和深度学习方法的相互结合与补充,我们最终可以实现优点兼具的物体检测策略。

    做自动驾驶真的是一个很崎岖的旅程,不断的解决问题之后又出现新的问题,不过正是因为过程的艰难,才带来更多的快乐。


    延展阅读:

    感知系统,自动驾驶看懂周围世界的“魔法”

    李阳光 PonyAI小马智行

    本期划重点

    »  感知系统基本介绍

    »  传感器配置与多传感器深度融合

    »  车载感知系统架构

    »  感知技术的挑战

    640?wx_fmt=jpeg
    感知系统基本介绍

    Perception(感知)系统是以多种传感器的数据与高精度地图的信息作为输入,经过一系列的计算及处理,对自动驾驶车的周围环境精确感知的系统。

    它能够为下游模块提供丰富的信息,包括障碍物的位置、形状、类别及速度信息,也包括对一些特殊场景的语义理解(例如施工区域,交通信号灯及交通路牌等)。

    感知系统的构成与子系统

    ◆ 传感器:涉及到传感器的安装,视场角,探测距离,数据吞吐,标定精度,时间同步等。因为自动驾驶使用的传感器比较多,时间同步的解决方案至关重要。

    ◆ 目标检测及分类:为了保证自动驾驶的安全,感知系统需要达到近似百分之百的召回率及非常高的准确率。目标检测及分类往往会涉及到深度学习方面的工作,包括3D点云及2D Image(图片)上的物体检测及多传感器深度融合等。

    ◆ 多目标追踪:跟进多帧的信息计算并预测障碍物的运动轨迹。

    ◆ 场景理解:包括交通信号灯,路牌,施工区域,以及特殊类别,比如校车,警车。

    ◆ 机器学习分布式训练基础架构及相关评价系统

    ◆ 数据:大量的标注数据,这里包括3D点云数据及2D的图片数据等。

    传感器详解

    目前自动驾驶应用的传感器主要分为三类:激光雷达(LiDAR),相机(Camera),毫米波雷达(Radar)。

    640?wx_fmt=jpeg

    开头提到,感知系统的输入为多种传感器数据和高精地图,而上图展示了感知系统物体检测的输出结果,即能够检测车辆周围的障碍物,如车辆、行人、自行车等,同时结合高精度地图,感知系统也会对周边的Background(环境背景)信息进行输出。

    如上图所示,绿颜色的块状代表一辆乘用车,橙色代表一辆摩托车,黄色代表一位行人,灰色则是检测到的环境信息,如植被。

    640?wx_fmt=jpeg

    感知系统结合多帧的信息(上图),还能对运动的行人和车辆的速度、方向、轨迹预测等进行精确的输出。

    640?wx_fmt=jpeg
    传感器配置与多传感器深度融合

    了解了关于感知系统从输入到输出的大致介绍,接下来,我简要介绍一下小马智行第三代自动驾驶系统PonyAlpha的传感器安装方案以及多传感器深度融合的解决方案。

    传感器安装方案

    目前PonyAlpha传感器安装方案的感知距离能够覆盖车周360度、范围200米以内。

    640?wx_fmt=jpeg

    具体来看,这套方案用到了3个激光雷达,在车的顶部和两侧。同时,通过多个广角的摄像头来覆盖360度的视野。远处的视野方面,前向的毫米波雷达以及长焦相机将感知距离扩到200米的范围,使其可以探测到更远处的物体信息。这套传感器配置能保证我们的自动驾驶车辆在居民区、商业区、工业区这样的场景进行自动驾驶。

    多传感器深度融合解决方案

    多传感器深度融合的基础

    多传感器深度融合的方案首要解决的是将不同的传感器的数据标定到同一个坐标系里,包括了相机的内参标定,激光雷达到相机的外参标定,毫米波雷达到GPS的外参标定等等。

    传感器融合重要前提是使标定精度达到到极高水平,不论对于结果层面的传感器融合还是元数据层面的传感器融合,这都是必要的基础。

    640?wx_fmt=jpeg

    通过上图你会发现,我们的感知系统将3D的激光点云精准地投射到影像上,可见传感器标定的精度是足够高的。

    不同传感器的标定方案

    整个传感器标定的工作基本上已做到完全自动化的方式。

    640?wx_fmt=jpeg

    首先是相机内参的标定(上图),这是为了修正由相机自身特性导致的图像扭曲等。相机内参的标定平台使每一个相机能够在两到三分钟之内完成传感器的标定。

    640?wx_fmt=jpeg

    其次是激光雷达与GPS/IMU的外参标定(上图),激光雷达的原始数据是基于雷达坐标系,因此我们需要将点由雷达坐标系转换为世界坐标系,这就涉及到激光雷达与GPS/IMU相对位置关系的计算。我们的标定工具在室外通过优化的方案,能够快速找到最优的位置关系。

    640?wx_fmt=jpeg

    第三是相机到激光雷达的融合(上图)。激光雷达的感知环境是360度旋转的方式,每旋转一周是100毫秒,而相机是某一瞬时曝光,为了保证相机的曝光与激光雷达的旋转保证同步,需要对二者进行时间同步,即通过Lidar来触发相机曝光。比如说,可以通过激光雷达的位置信息来触发对应位置相机的曝光时间,以达到相机与激光雷达的精确同步。

    3D(激光雷达)和2D(相机)彼此互补,二者更好的融合可使得感知得到更精确的输出。

    640?wx_fmt=jpeg

    最后是毫米波雷达(Radar)与GPS/IMU的标定(上图),同样是将Radar数据由Local(本地)坐标系将其转换到世界坐标系,我们将通过真实的3D环境来计算Radar与GPS/IMU的相对位置关系。好的标定结果能够保证感知系统给出200米距离以内障碍车的车道信息(如位于车道内或压车道线等)等。

    下面这个demo视频简明生动地展示了多传感器深度融合的部分处理效果。

    640?wx_fmt=jpeg
    车载感知系统架构

    那么车载感知系统架构是什么样的?它的解决方案又是什么?

    640?wx_fmt=jpeg

    上图展示了整个车载感知系统的架构。首先激光雷达、相机、毫米波雷达三种传感器数据须进行时间同步,将所有的时间误差控制在毫秒级。结合传感器数据,感知系统以帧为基础(frame-based)进行检测(detection)、分割(segmentation)、分类(classification)等计算,最后利用多帧信息进行多目标跟踪,将相关结果输出。这个过程中将涉及到多传感器深度融合和深度学习相关的技术细节,我这里不做过多的讨论。

    感知系统的解决方案应保证以下五点:

    ◆ 首先是安全,保证近乎百分之百的检测(Detection)召回率(Recall)。

    ◆ 精度(Precision)要求非常高,如果低于某个阈值,造成False Positive(误报),会导致车辆在自动驾驶状态下行驶得非常不舒适。

    ◆ 尽量输出所有对行车有帮助的信息,包括路牌,交通信号灯及其它场景理解的信息。

    ◆ 保证感知系统的高效运行,能够近实时处理大量的传感器数据。

     可扩展性(Scalability)也很重要。深度学习(Deep learning)依赖大量数据,其训练模型的泛化能力对于感知系统非常重要。未来,我们希望模型(model)和新算法有能力适配更多的城市和国家的路况。

    640?wx_fmt=jpeg
    感知技术的挑战

    感知精度与召回率相平衡的挑战

    640?wx_fmt=jpeg

    上图展示了晚高峰时期十字路口的繁忙场景,此时有大量行人、摩托车穿过十字路口。

    640?wx_fmt=jpeg

    通过3D点云数据(上图),能够看到此时对应的感知原始数据。

    这里挑战是,经过计算处理后,感知系统需要在这样环境下输出所有障碍物的正确的分割(segmentation)结果和障碍物类别。

    除了繁忙的十字路口,感知系统在处理一些特殊的或者恶劣的天气条件,也面临不小挑战。

    突降暴雨或者长时间降雨往往会造成路面积水,车辆经过自然会溅起水花。上方视频中白色点云展示了激光雷达检测到其他车辆经过溅起的水花并对其进行filter(过滤)的结果。如果感知系统不能对水花进行准确的识别和过滤,这会对自动驾驶造成麻烦。结合激光雷达与摄像头(Lidar&Camera)的数据,我们的感知系统对水花有很高的识别率。

    长尾场景挑战

    洒水车

    上图是我们在路测时曾遇到的两类洒水车(上图)。左边洒水车采用向上喷的雾炮,而右边是向两侧喷洒的洒水车。

    640?wx_fmt=jpeg

    人类司机遇到洒水车时,可以很容易做出判断并超过洒水车,但是对于感知系统来说,则需要花一定时间去处理和识别这类场景和车辆,我们的自动驾驶在遇到类似场景已获得更优的乘坐体验。

    小物体的检测

    640?wx_fmt=jpeg

    小物体检测的意义在于,面对意想不到的路测事件,比如流浪的小猫、小狗突然出现马路上,感知系统对这类小物体能够有准确的召回,以保证小生命的安全。

    红绿灯

    640?wx_fmt=jpeg

    随着越来越多地区和国家开展自动驾驶路测,感知系统在处理交通信号灯总会遇到新的长尾场景。

    640?wx_fmt=jpeg

    例如,逆光的问题(上图)或者突然从桥洞中驶出后相机曝光的问题,我们可以通过动态调整相机的曝光等方法来解决问题。

    640?wx_fmt=jpeg

    还有红绿灯倒计时的场景(上图),感知系统可以识别出倒计时的数字,这样能够让自动驾驶车辆在遇到黄灯时/前,给出更优的规划决策应对,优化乘车体验。

    640?wx_fmt=jpeg

    雨天时,摄像头(照相机)会水珠密布(上图),感知系统需要处理这类特殊气候条件下的场景,准确识别红绿灯。

    640?wx_fmt=jpeg

    一些地区使用的红绿灯带有进度条(上图),要求感知系统能够识别进度条的变动,这样可以帮助下游的规划决策模块在绿灯将变黄时,提前给出减速。

    640?wx_fmt=jpeg

    640?wx_fmt=jpeg

    未来智能实验室是人工智能学家与科学院相关机构联合成立的人工智能,互联网和脑科学交叉研究机构。

    未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)云脑研究计划,构建互联网(城市)云脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。

      如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”

    640?wx_fmt=jpeg

    展开全文
  • 行人检测(上)-行人检测介绍

    千次阅读 2017-04-24 17:20:02
    行人检测具有极其广泛的应用:智能辅助驾驶,智能监控,行人分析以及智能机器人等领域。从2005年以来行人检测进入了一个快速的发展阶段,但是也存在很多...近年,以谷歌为首的自动驾驶技术的研发正如火如荼的进行,这

    原文链接:http://www.360doc.com/content/15/1225/09/2459_522949183.shtml
    几种数据集下的行人检测效果
    行人检测具有极其广泛的应用:智能辅助驾驶,智能监控,行人分析以及智能机器人等领域。从2005年以来行人检测进入了一个快速的发展阶段,但是也存在很多问题还有待解决,主要还是在性能和速度方面还不能达到一个权衡。近年,以谷歌为首的自动驾驶技术的研发正如火如荼的进行,这也迫切需要能对行人进行快速有效的检测,以保证自动驾驶期间对行人的安全不会产生威胁。

    1 行人检测的现状

    行人检测方法大概可以分为两类

    1.1 基于背景建模

    利用背景建模方法,提取出前景运动的目标,在目标区域内进行特征提取,然后利用分类器进行分类,判断是否包含行人;背景建模目前主要存在的问题:

    1. 必须适应环境的变化(比如光照的变化造成图像色度的变化);
    2. 相机抖动引起画面的抖动(比如手持相机拍照时候的移动);
    3. 图像中密集出现的物体(比如树叶或树干等密集出现的物体,要正确的检测出来);
    4. 必须能够正确的检测出背景物体的改变(比如新停下的车必须及时的归为背景物体,而有静止开始移动的物体也需要及时的检测出来)
    5. 物体检测中往往会出现Ghost区域,Ghost区域也就是指当一个原本静止的物体开始运动,背静差检测算法可能会将原来该物体所覆盖的区域错误的检测为运动的,这块区域就成为Ghost,当然原来运动的物体变为静止的也会引入Ghost区域,Ghost区域在检测中必须被尽快的消除。

    1.2 基于统计学习的方法

    这也是目前行人检测最常用的方法,根据大量的样本构建行人检测分类器。提取的特征主要有目标的灰度、边缘、纹理、颜色、梯度直方图等信息。分类器主要包括神经网络、SVM、adaboost以及现在被计算机视觉视为宠儿的深度学习。

    统计学习目前存在的难点:
    1. 行人的姿态、服饰各不相同、复杂的背景、不同的行人尺度以及不同的光照环境。
    2. 提取的特征在特征空间中的分布不够紧凑;
    3. 分类器的性能受训练样本的影响较大;
    4. 离线训练时的负样本无法涵盖所有真实应用场景的情况;

    目前的行人检测基本上都是基于法国研究人员Dalal在2005的CVPR发表的HOG+SVM的行人检测算法(Histograms of Oriented Gradients for Human Detection, Navneet Dalel,Bill Triggs, CVPR2005)。HOG+SVM作为经典算法也集成到OpenCV里面去了,可以直接调用实现行人检测
    为了解决速度问题可以采用背景差分法的统计学习行人检测,前提是背景建模的方法足够有效(即效果好速度快),目前获得比较好的检测效果的方法通常采用多特征融合的方法以及级联分类器。(常用的特征有Harry-like、Hog特征、LBP特征、Edgelet特征、CSS特征、COV特征、积分通道特征以及CENTRIST特征)。

    综述类的文章

    2.1 行人检测十年回顾

    Ten Years of Pedestrian Detection, What Have We Learned?
    一篇2014年ECCV的文章,是对pedestrian detectiond过去十年发展的回顾,从dataset,main approaches的角度分析了近10年的40多篇论文提出的方法,并对提高feature复杂度的影响进行了评估
    下载:http://rodrigob.github.io/documents/2014_eccvw_ten_years_of_pedestrian_detection_with_supplementary_material.pdf
    学习笔记:http://blog.csdn.net/mduke/article/details/46582443

    2.2 P.Dollar PAMI 2012上的综述

    P.Dollar, C. Wojek,B. Schiele, et al. Pedestrian detection: an evaluation of the state of the art [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2012, 34(4): 743-761.
    2012年PAMI上发表的一篇关于行人检测的综述性文章,PDF格式,共20页,对常见的16种行人检测算法进行了简单描述,并在6个公开测试库上进行测试,给出了各种方法的优缺点及适用情况。另外,指出了未来行人检测的发展方向和趋势。

    下载:http://vision.ucsd.edu/~pdollar/files/papers/DollarPAMI12peds.pdf

    2.3 CVPR2010 HOF和CSS

    https://www.d2.mpi-inf.mpg.de/CVPR10Pedestrians

    New Features and Insights for Pedestrian Detection
    文中使用改进的HOG,即HOF和CSS(color self similarity)特征,使用HIK SVM分类器。 本文的作者是德国人:Stefen Walk。目前Stefan Walk在苏黎世联邦理工大学任教。

    2.4 Integral Channel Features

    加州理工学院2009年行人检测的文章:Integral Channel Features(积分通道特征)
    这篇文章与2012年PAMI综述文章是同一作者。作者:Piotr Dollar

    Paper下载:http://pages.ucsd.edu/~ztu/publication/dollarBMVC09ChnFtrs_0.pdf

    中文笔记:http://blog.csdn.net/carson2005/article/details/8455837

    2.5 The Fastest Pedestrian Detector in the West

    Dollar 在 2010 年 BMVC 的 《The fastest pedestrian detector in the west》 一文中提出了一种新的思想,这种思想只需要训练一个标准 model,检测 N/K(K ≈10) 然后其余的 N-N/K 种大小的图片的特征不需要再进行这种复杂的计算,而是跟据这 N/K 次的结果, 由另外一种简单的算法给估计出来,这种思想实现的 基础是大小相近的图像的特征可以被足够精确的估计出来

    下载:http://vision.ucsd.edu/sites/default/files/FPDW_0.pdf

    2.6 DPM算法做目标检测

    CVPR2008:A Discriminatively Trained, Multiscale, Deformable Part Model
    PAMI2010:Object Detection with Discriminatively Trained Part Based Models
    CVPR2010:Cascade Object Detection with Deformable Part Models
    以上三篇文章,都是作者研究DPM算法做目标检测的文章,有源代码可以下载。

    作者的个人主页:http://cs.brown.edu/~pff/papers/

    2.7 利用DPM模型,检测粘连

    Detection and Tracking of Occluded People
    IJCV2014年的文章,利用DPM模型,检测粘连情况很严重的行人,效果很好。

    下载:http://www.bmva.org/bmvc/2012/BMVC/paper009/

    2.8 UDN算法

    ICCV2013:

    1. Joint Deep Learning for Pedestrian Detection
    2. Multi-Stage Contextual Deep Learning for Pedestrian Detection

    简 称UDN算法,从文中描述的检测效果来看,该方法是所有方法中最好的,并且,效果远超过其他方法。经过对论文和该算法源码的研究,该算法是与作者另外一篇 论文的方法 ,另外的论文算法做图片扫描,得到矩形框,然后用该方法对矩形框进行进一步确认,以及降低误警率和漏警率。另外的论文是:Multi-Stage Contextual Deep Learning for Pedestrian Detection。

    这篇文章是用深度学习的CNN做candidate window的确认。而主要的行人检测的算法还是HOG+CSS+adaboost。

    香港中文大学,Joint Deep Learning for Pedestrian Detection,
    行人检测论文的相关资源:http://www.ee.cuhk.edu.hk/~wlouyang/projects/ouyangWiccv13Joint/index.html

    2.9 Monocular pedestrian detection

    Enzweiler, and D.Gavrila. Monocular pedestrian detection: survey and experiments [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2009, 31(12): 2179-2195.

    下载:http://www.gavrila.net/pami09.pdf

    2.10 Survey of pedestrian detection for advanced driver assistance systems

    Geronimo, A. M.Lopez and A. D. Sappa, et al. Survey of pedestrian detection for advanced driver assistance systems [J]. IEEE Transactionson Pattern Analysis and Machine Intelligence, 2010, 32(7): 1239-1258.

    百度文库下载:http://wenku.baidu.com/link?url=xLDWZTdLXT1_fiZoUzNFiyQtZTwnyL-lZHhTSI0B87vkIE6UEDrKz6iz8zpKmmPvZq7ktlX6WRxyVxcjk8B-ymgl53QBfzBEKgYPZmsi1l_

    2.11 Vision-based Pedestrian Protection Systems for Intelligent Vehicles

    Geronimo, and A. M.Lopez. Vision-based Pedestrian Protection Systems for Intelligent Vehicles, BOOK, 2014.

    下载:http://bookzz.org/book/2167094/e21639

    2.12 行人检测技术综述

    苏松志, 李绍滋, 陈淑媛等. 行人检测技术综述[J]. 电子学报, 2012, 40(4): 814-820.

    下载:行人检测技术综述

    2.13 车辆辅助驾驶系统中基于计算机视觉的行人检测研究综述

    贾慧星, 章毓晋.车辆辅助驾驶系统中基于计算机视觉的行人检测研究综述[J], 自动化学报, 2007, 33(1): 84-90.

    下载:车辆辅助驾驶系统中基于计算机视觉的行人检测研究综述

    2.14 行人检测系统研究新进展及关键技术展望

    许言午, 曹先彬,乔红. 行人检测系统研究新进展及关键技术展望[J], 电子学报, 2008, 36(5): 368-376.

    下载:行人检测系统研究新进展及关键技术展望

    2.15 基于视觉的人的运动识别综述

    杜友田; 陈峰;徐文立; 李永彬;基于视觉的人的运动识别综述, 电子学报, 2007. 35(1): 84-90.

    下载:基于视觉的人的运动识别综述

    2.16 基于机器学习的行人检测关键技术研究

    朱文佳. 基于机器学习的行人检测关键技术研究[D]. 第一章, 硕士学位论文, 上海交通大学. 2008. 指导教师: 戚飞虎.

    展开全文
  • 对车辆前方的行人进行检测,效果如图: 二、算法 1、传统检测方法 常规的机器学习方法,包括训练和应用两个过程。 训练:需要构建训练集(包括正负样本),使用HOG、SIFT等特征描述获取特征,使用SVM(支持...

    一、功能

    车辆前方的行人进行检测,效果如图:

    二、算法

    1、传统检测方法

    常规的机器学习方法,包括训练应用两个过程。

    训练:需要构建训练集(包括正负样本),使用HOG、SIFT等特征描述获取特征,使用SVM(支持向量机)、决策树等对上一步获取的特征和对应的标签(标签指:正样本或者负样本)进行训练(训练指:自动生成SVM或者决策树等的参数,使其可以用来分类)。

    应用:提取需要识别的图片的HOG、SIFT等特征,使用训练好的SVM或者决策树对提取的特征进行分类。

    可以使用OpenCV自带的库进行上述过程(也可以使用机器学习框架sklearn实现特征提取和分类)。

    2、神经网络

    keras等神经网络库可以直接用来训练正负样本,并通过神经网络进行识别。(附:keras作为前端交互语言,实际上调用了TensorFlow或者Theano等神经网络后端,也可以直接使用TensorFlow或者Thean搭建神经网络,或者使用其他的神经网络和深度学习框架)

    考虑到应用场景为辅助驾驶,神经网络有两个缺陷,第一、神经网络需要大量的并行计算,占用大量的空间,在FPGA、ARM等硬件上运行速度很慢;第二、神经网络本身相当于黑盒,中间数据无法获取、调试起来无从入手,增加了不确定性。所以,这里使用OpenCV进行图像处理。

    三、代码

    1、自己写HOG和SVM实现

    1. 分析训练数据,提取图片HOG特征。
    2. 训练分类器
    3. 应用滑动窗口(sliding windows)实现检测
    4. 应用热力图(heatMap)过滤错误检测(false positive)

    OpenCV自带的有函数,重新造轮子的人不多,可以参考这个github车辆检测:CarND-Vehicle-Detection

    2、调用OpenCV自带的行人检测库实现

    import cv2
    from imutils.object_detection import non_max_suppression
    import numpy as np
    
    img=cv2.imread("img2.jpg")
    orig = img.copy()
    
    # 定义HOG对象,采用默认参数,或者按照下面的格式自己设置
    defaultHog=cv2.HOGDescriptor()
    # 设置SVM分类器,用默认分类器
    defaultHog.setSVMDetector(cv2.HOGDescriptor_getDefaultPeopleDetector())
    
    #这里对整张图片进行裁剪
    # # detect people in the image
    # (rects, weights) = defaultHog.detectMultiScale(img, winStride=(4, 4),padding=(8, 8), scale=1.05)
    # for (x, y, w, h) in rects:
    #     cv2.rectangle(orig, (x, y), (x + w, y + h), (0, 0, 255), 2)
    # rects = np.array([[x, y, x + w, y + h] for (x, y, w, h) in rects])
    # pick = non_max_suppression(rects, probs=None, overlapThresh=0.65)
    # for (xA, yA, xB, yB) in pick:
    #     cv2.rectangle(img, (xA, yA), (xB, yB), (0, 255, 0), 2)
    # cv2.imshow("Before NMS", orig)
    # cv2.imshow("After NMS", img)
    
    #只对ROI进行裁剪,img[height_begin:height_end,width_begin:width_end]
    roi=img[0:200,800:1600]
    cv2.imshow("roi",roi)
    cv2.imwrite("roi.jpg",roi)
    (rects, weights) = defaultHog.detectMultiScale(roi, winStride=(4, 4),padding=(8, 8), scale=1.05)
    rects = np.array([[x, y, x + w, y + h] for (x, y, w, h) in rects])
    pick = non_max_suppression(rects, probs=None, overlapThresh=0.65)
    for (xA, yA, xB, yB) in pick:
        cv2.rectangle(roi, (xA, yA), (xB, yB), (0, 255, 0), 2)
    
    cv2.imshow("roi",roi)
    cv2.imwrite("roi_out.jpg",roi)
    cv2.waitKey(0)

     

    展开全文
  • 行人检测综述

    千次阅读 2019-03-26 18:04:33
    PART I ... 行人检测具有极其广泛的应用:智能辅助驾驶,智能监控,行人分析以及智能机器人等领域。从2005年以来行人检测进入了一个快速的...近年,以谷歌为首的自动驾驶技术的研发正如火如荼的进行,这也迫切需要能对...

    PART I

    from: http://www.cnblogs.com/molakejin/p/5708791.html
    在这里插入图片描述

    行人检测具有极其广泛的应用:智能辅助驾驶,智能监控,行人分析以及智能机器人等领域。从2005年以来行人检测进入了一个快速的发展阶段,但是也存在很多问题还有待解决,主要还是在性能和速度方面还不能达到一个权衡。近年,以谷歌为首的自动驾驶技术的研发正如火如荼的进行,这也迫切需要能对行人进行快速有效的检测,以保证自动驾驶期间对行人的安全不会产生威胁。

    1 行人检测的现状
    大概可以分为两类

    1.1 基于背景建模
    利用背景建模方法,提取出前景运动的目标,在目标区域内进行特征提取,然后利用分类器进行分类,判断是否包含行人;背景建模目前主要存在的问题:

        1)必须适应环境的变化(比如光照的变化造成图像色度的变化);
    
        2)相机抖动引起画面的抖动(比如手持相机拍照时候的移动);
    
        3)图像中密集出现的物体(比如树叶或树干等密集出现的物体,要正确的检测出来);
    
        4)必须能够正确的检测出背景物体的改变(比如新停下的车必须及时的归为背景物体,而有静止开始移动的物体也需要及时的检测出来)。
    
        5)物体检测中往往会出现Ghost区域,Ghost区域也就是指当一个原本静止的物体开始运动,背静差检测算法可能会将原来该物体所覆盖的区域错误的检测为运动的,这块区域就成为Ghost,当然原来运动的物体变为静止的也会引入Ghost区域,Ghost区域在检测中必须被尽快的消除。
    

    1.2 基于统计学习的方法
    这也是目前行人检测最常用的方法,根据大量的样本构建行人检测分类器。提取的特征主要有目标的灰度、边缘、纹理、颜色、梯度直方图等信息。分类器主要包括神经网络、SVM、adaboost以及现在被计算机视觉视为宠儿的深度学习。

        统计学习目前存在的难点:
    
        1)行人的姿态、服饰各不相同、复杂的背景、不同的行人尺度以及不同的光照环境。
    
        2)提取的特征在特征空间中的分布不够紧凑;
    
        3)分类器的性能受训练样本的影响较大;
    
        4)离线训练时的负样本无法涵盖所有真实应用场景的情况;
    
         目前的行人检测基本上都是基于法国研究人员Dalal在2005的CVPR发表的HOG+SVM的行人检测算法(Histograms of Oriented Gradients for Human Detection, Navneet Dalel,Bill Triggs, CVPR2005)。HOG+SVM作为经典算法也集成到opencv里面去了,可以直接调用实现行人检测
    
        为了解决速度问题可以采用背景差分法的统计学习行人检测,前提是背景建模的方法足够有效(即效果好速度快),目前获得比较好的检测效果的方法通常采用多特征融合的方法以及级联分类器。(常用的特征有Harry-like、Hog特征、LBP特征、Edgelet特征、CSS特征、COV特征、积分通道特征以及CENTRIST特征)。
    

    2 综述类的文章
    2.1 行人检测十年回顾
    Ten Years of Pedestrian Detection, What Have We Learned?

        一篇2014年ECCV的文章,是对pedestrian detectiond过去十年发展的回顾,从dataset,main approaches的角度分析了近10年的40多篇论文提出的方法,并对提高feature复杂度的影响进行了评估
    
        下载:http://rodrigob.github.io/documents/2014_eccvw_ten_years_of_pedestrian_detection_with_supplementary_material.pdf
    
        学习笔记:http://blog.csdn.net/mduke/article/details/46582443
    

    2.2 P.Dollar PAMI 2012上的综述
    P.Dollar, C. Wojek,B. Schiele, et al. Pedestrian detection: an evaluation of the state of the art [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2012, 34(4): 743-761.

        2012年PAMI上发表的一篇关于行人检测的综述性文章,PDF格式,共20页,对常见的16种行人检测算法进行了简单描述,并在6个公开测试库上进行测试,给出了各种方法的优缺点及适用情况。另外,指出了未来行人检测的发展方向和趋势。
    
        下载:http://vision.ucsd.edu/~pdollar/files/papers/DollarPAMI12peds.pdf
    

    2.3 CVPR2010 HOF和CSS
    https://www.d2.mpi-inf.mpg.de/CVPR10Pedestrians

        New Features and Insights for Pedestrian Detection
    
        文中使用改进的HOG,即HOF和CSS(color self similarity)特征,使用HIK SVM分类器。 本文的作者是德国人:Stefen Walk。目前Stefan Walk在苏黎世联邦理工大学任教。
    

    2.4 Integral Channel Features
    加州理工学院2009年行人检测的文章:Integral Channel Features(积分通道特征)

        这篇文章与2012年PAMI综述文章是同一作者。作者:Piotr Dollar
    
        Paper下载:http://pages.ucsd.edu/~ztu/publication/dollarBMVC09ChnFtrs_0.pdf
    
        中文笔记:http://blog.csdn.net/carson2005/article/details/8455837
    

    2.5 The Fastest Pedestrian Detector in the West
    Dollar 在 2010 年 BMVC 的 《The fastest pedestrian detector in the west》 一文中提出了一种新的思想,这种思想只需要训练一个标准 model,检测 N/K(K ≈10) 然后其余的 N-N/K 种大小的图片的特征不需要再进行这种复杂的计算,而是跟据这 N/K 次的结果, 由另外一种简单的算法给估计出来,这种思想实现的 基础是大小相近的图像的特征可以被足够精确的估计出来

        下载:http://vision.ucsd.edu/sites/default/files/FPDW_0.pdf
    

    2.6 DPM算法做目标检测
    CVPR2008:A Discriminatively Trained, Multiscale, Deformable Part Model

        PAMI2010:Object Detection with Discriminatively Trained Part Based Models
    
        CVPR2010:Cascade Object Detection with Deformable Part Models
    
        以上三篇文章,都是作者研究DPM算法做目标检测的文章,有源代码可以下载。
    
        作者的个人主页:http://cs.brown.edu/~pff/papers/
    

    2.7 利用DPM模型,检测粘连
    Detection and Tracking of Occluded People

        IJCV2014年的文章,利用DPM模型,检测粘连情况很严重的行人,效果很好。
    
        下载:http://www.bmva.org/bmvc/2012/BMVC/paper009/
    

    2.8 UDN算法
    ICCV2013:

        1)Joint Deep Learning for Pedestrian Detection
    
        2)Multi-Stage Contextual Deep Learning for Pedestrian Detection
    
        简 称UDN算法,从文中描述的检测效果来看,该方法是所有方法中最好的,并且,效果远超过其他方法。经过对论文和该算法源码的研究,该算法是与作者另外一篇 论文的方法 ,另外的论文算法做图片扫描,得到矩形框,然后用该方法对矩形框进行进一步确认,以及降低误警率和漏警率。另外的论文是:Multi-Stage Contextual Deep Learning for Pedestrian Detection。
    
        这篇文章是用深度学习的CNN做candidate window的确认。而主要的行人检测的算法还是HOG+CSS+adaboost。
    
        香港中文大学,Joint Deep Learning for Pedestrian Detection,行人检测论文的相关资源:http://www.ee.cuhk.edu.hk/~wlouyang/projects/ouyangWiccv13Joint/index.html
    

    2.9 Monocular pedestrian detection
    Enzweiler, and D.Gavrila. Monocular pedestrian detection: survey and experiments [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2009, 31(12): 2179-2195.

        下载:http://www.gavrila.net/pami09.pdf
    

    2.10 Survey of pedestrian detection for advanced driver assistance systems
    Geronimo, A. M.Lopez and A. D. Sappa, et al. Survey of pedestrian detection for advanced driver assistance systems [J]. IEEE Transactionson Pattern Analysis and Machine Intelligence, 2010, 32(7): 1239-1258.

         百度文库下载:http://wenku.baidu.com/link?url=xLDWZTdLXT1_fiZoUzNFiyQtZTwnyL-lZHhTSI0B87vkIE6UEDrKz6iz8zpKmmPvZq7ktlX6WRxyVxcjk8B-ymgl53QBfzBEKgYPZmsi1l_
    

    2.11 Vision-based Pedestrian Protection Systems for Intelligent Vehicles
    Geronimo, and A. M.Lopez. Vision-based Pedestrian Protection Systems for Intelligent Vehicles, BOOK, 2014.

        下载:http://bookzz.org/book/2167094/e21639
    

    2.12 行人检测技术综述
    苏松志, 李绍滋, 陈淑媛等. 行人检测技术综述[J]. 电子学报, 2012, 40(4): 814-820.

        下载:行人检测技术综述
    

    2.13 车辆辅助驾驶系统中基于计算机视觉的行人检测研究综述
    贾慧星, 章毓晋.车辆辅助驾驶系统中基于计算机视觉的行人检测研究综述[J], 自动化学报, 2007, 33(1): 84-90.

        下载:车辆辅助驾驶系统中基于计算机视觉的行人检测研究综述
    

    2.14 行人检测系统研究新进展及关键技术展望
    许言午, 曹先彬,乔红. 行人检测系统研究新进展及关键技术展望[J], 电子学报, 2008, 36(5): 368-376.

        下载:行人检测系统研究新进展及关键技术展望
    

    2.15 基于视觉的人的运动识别综述
    杜友田; 陈峰;徐文立; 李永彬;基于视觉的人的运动识别综述, 电子学报, 2007. 35(1): 84-90.

        下载:基于视觉的人的运动识别综述
    

    2.16 基于机器学习的行人检测关键技术研究
    朱文佳. 基于机器学习的行人检测关键技术研究[D]. 第一章, 硕士学位论文, 上海交通大学. 2008. 指导教师: 戚飞虎.

    参考:http://hi.baidu.com/susongzhi/item/085983081b006311eafe38e7

    参考:http://blog.csdn.net/dpstill/article/details/22420065

    PART II

    from: http://www.cnblogs.com/molakejin/p/5708797.html

    在这里插入图片描述

    这是行人检测相关资源的第二部分:源码和数据集。考虑到实际应用的实时性要求,源码主要是C/C++的。源码和数据集的网址,经过测试都可访问,并注明了这些网址最后更新的日期,供学习和研究进行参考。(欢迎补充更多的资源)

    1 Source Code
    1.1 INRIA Object Detection and Localization Toolkit
    http://pascal.inrialpes.fr/soft/olt/

    Dalal于2005年提出了基于HOG特征的行人检测方法,行人检测领域中的经典文章之一。HOG特征目前也被用在其他的目标检测与识别、图像检索和跟踪等领域中。

    更新:2008

    1.2 Real-time Pedestrian Detection.
    http://cs.nju.edu.cn/wujx/projects/C4/C4.htm

    Jianxin Wu实现的快速行人检测方法。

    Real-Time Human Detection Using Contour Cues:

    http://c2inet.sce.ntu.edu.sg/Jianxin/paper/ICRA_final.pdf

    更新:2012

    1.3 霍夫变换实现的多目标检测
    http://graphics.cs.msu.ru/en/science/research/machinelearning/hough

    Olga Barinova, CVPR 2010 Paper: On detection of multiple object instances using Hough Transforms

    源码:C++

    更新:2010

    1.4 HIKSVM
    http://ttic.uchicago.edu/~smaji/projects/fiksvm/

    Classification Using Intersection Kernel SVMs is efficient

    HOG+LBP+HIKSVM, 行人检测的经典方法.

    源码:C/C++

    更新:2012

    1.5 GroundHOG
    http://www.mmp.rwth-aachen.de/projects/groundhog

    GPU-based Object Detection with Geometric Constraints, In: ICVS, 2011. CUDA版本的HOG+SVM,

    源码:C/C++

    更新:2011

    1.6 doppia code
    https://bitbucket.org/rodrigob/doppia

    这是一个代码集合,包含如下:

    Pedestrian detection at 100 frames per second, R. Benenson. CVPR, 2012. 实时的

    Stixels estimation without depth map computation

    Fast stixels estimation for fast pedestrian detection

    Seeking the strongest rigid detector

    Ten years of pedestrian detection, what have we learned?

    Face detection without bells and whistles

    源码:C/C++

    更新:2015

    1.7 Multiple camera pedestrian detection.
    POM: Occupancy map estimation for people detection

    http://cvlab.epfl.ch/software/pom/

    Paper:Multi-Camera People Tracking with a Probabilistic Occupancy Map

    源码:?

    更新:2014

    1.8 Pitor Dollar Detector.
    Piotr’s Computer Vision Matlab Toolbox

    http://vision.ucsd.edu/~pdollar/toolbox/doc/index.html

    The toolbox is divided into 7 parts, arranged by directory:

    channels Robust image features, including HOG, for fast object detection.

    classify Fast clustering, random ferns, RBF functions, PCA, etc.

    detector Aggregate Channel Features (ACF) object detection code.

    filters Routines for filtering images.

    images Routines for manipulating and displaying images.

    matlab General Matlab functions that should have been a part of Matlab.

    videos Routines for annotating and displaying videos.

    源码:matlab

    更新:2014

    2 DataSets
    2.1 MIT数据库
    http://cbcl.mit.edu/software-datasets/PedestrianData.html

    介绍:该数据库为较早公开的行人数据库,共924张行人图片(ppm格式,宽高为64×128),肩到脚的距离约80象素。该数据库只含正面和背面两个视角,无负样本,未区分训练集和测试集。Dalal等采用“HOG+SVM”,在该数据库上的检测准确率接近100%。

    更新:2000

    2.2 INRIA Person Dataset
    http://pascal.inrialpes.fr/data/human/

    介绍:该数据库是“HOG+SVM”的作者Dalal创建的,该数据库是目前使用最多的静态行人检测数据库,提供原始图片及相应的标注文件。训练集有正样本614张(包含2416个行人),负样本1218张;测试集有正样本288张(包含1126个行人),负样本453张。图片中人体大部分为站立姿势且高度大于100个象素,部分标注可能不正确。图片主要来源于GRAZ-01、个人照片及google,因此图片的清晰度较高。在XP操作系统下部分训练或者测试图片无法看清楚,但可用OpenCV正常读取和显示。

    更新:2005

    2.3 Daimler行人数据库
    http://www.gavrila.net/Research/Pedestrian_Detection/Daimler_Pedestrian_Benchmark_D/

    该数据库采用车载摄像机获取,分为检测和分类两个数据集。检测数据集的训练样本集有正样本大小为18×36和48×96的图片各15560(3915×4)张,行人的最小高度为72个象素;负样本6744张(大小为640×480或360×288)。测试集为一段27分钟左右的视频(分辨率为640×480),共21790张图片,包含56492个行人。分类数据库有三个训练集和两个测试集,每个数据集有4800张行人图片,5000张非行人图片,大小均为18×36,另外还有3个辅助的非行人图片集,各1200张图片。

    更新:2009?

    2.4 Caltech Pedestrian Detection
    http://www.vision.caltech.edu/Image_Datasets/CaltechPedestrians/

    该数据库是目前规模较大的行人数据库,采用车载摄像头拍摄,约10个小时左右,视频的分辨率为640×480,30帧/秒。标注了约250,000帧(约137分钟),350000个矩形框,2300个行人,另外还对矩形框之间的时间对应关系及其遮挡的情况进行标注。数据集分为set00set10,其中set00set05为训练集,set06set10为测试集(标注信息尚未公开)。性能评估方法有以下三种:(1)用外部数据进行训练,在set06set10进行测试;(2)6-fold交叉验证,选择其中的5个做训练,另外一个做测试,调整参数,最后给出训练集上的性能;(3)用set00set05训练,set06set10做测试。由于测试集的标注信息没有公开,需要提交给Pitor Dollar。结果提交方法为每30帧做一个测试,将结果保存在txt文档中(文件的命名方式为I00029.txt I00059.txt ……),每个txt文件中的每行表示检测到一个行人,格式为“[left, top,width, height, score]”。如果没有检测到任何行人,则txt文档为空。该数据库还提供了相应的Matlab工具包,包括视频标注信息的读取、画ROC(Receiver Operatingcharacteristic Curve)曲线图和非极大值抑制等工具。

    更新:2014

    2.5 TUD行人数据库
    https://www.mpi-inf.mpg.de/departments/multi-cue-onboard-pedestrian-detection/

    介绍:TUD行人数据库为评估运动信息在行人检测中的作用,提供图像对以便计算光流信息。训练集的正样本为1092对图像(图片大小为720×576,包含1776个行人);负样本为192对非行人图像(手持摄像机85对,车载摄像机107对);另外还提供26对车载摄像机拍摄的图像(包含183个行人)作为附加训练集。测试集有508对图像(图像对的时间间隔为1秒,分辨率为640×480),共有1326个行人。Andriluka等也构建了一个数据库用于验证他们提出的检测与跟踪相结合的行人检测技术。该数据集的训练集提供了行人的矩形框信息、分割掩膜及其各部位(脚、小腿、大腿、躯干和头部)的大小和位置信息。测试集为250张图片(包含311个完全可见的行人)用于测试检测器的性能,2个视频序列(TUD-Campus和TUD-Crossing)用于评估跟踪器的性能。

    更新:2010

    2.6 NICTA行人数据库
    http://www.nicta.com.au/category/research/computer-vision/tools/automap-datasets/

    该数据库是目前规模较大的静态图像行人数据库,25551张含单人的图片,5207张高分辨率非行人图片,数据库中已分好训练集和测试集,方便不同分类器的比较。Overett等用“RealBoost+Haar”评估训练样本的平移、旋转和宽高比等各种因素对分类性能的影响:(1)行人高度至少要大于40个象素;(2)在低分辨率下,对于Haar特征来说,增加样本宽度的性能好于增加样本高度的性能;(3)训练图片的大小要大于行人的实际大小,即背景信息有助于提高性能;(4)对训练样本进行平移提高检测性能,旋转对性能的提高影响不大。以上的结论对于构建行人数据库具有很好的指导意义。

    更新:2008

    2.7 ETHZ行人数据库
    Robust Multi-Person Tracking from Mobile Platforms

    https://data.vision.ee.ethz.ch/cvl/aess/dataset/

    Ess等构建了基于双目视觉的行人数据库用于多人的行人检测与跟踪研究。该数据库采用一对车载的AVT Marlins F033C摄像头进行拍摄,分辨率为640×480,帧率13-14fps,给出标定信息和行人标注信息,深度信息采用置信度传播方法获取。

    更新:2010

    2.8 CVC行人数据库
    http://www.cvc.uab.es/adas/site/?q=node/7

    该数据库目前包含三个数据集(CVC-01、CVC-02和CVC-Virtual),主要用于车辆辅助驾驶中的行人检测研究。CVC-01[Geronimo,2007]有1000个行人样本,6175个非行人样本(来自于图片中公路区域中的非行人图片,不像有的行人数据库非行人样本为天空、沙滩和树木等自然图像)。CVC-02包含三个子数据集(CVC-02-CG、CVC-02-Classification和CVC-02-System),分别针对行人检测的三个不同任务:感兴趣区域的产生、分类和系统性能评估。图像的采集采用Bumblebee2立体彩色视觉系统,分辨率640×480,焦距6mm,对距离摄像头0~50m的行人进行标注,最小的行人图片为12×24。CVC-02-CG主要针对候选区域的产生,有100张彩色图像,包含深度和3D点信息;CVC-02-Classification主要针对行人分类,训练集有1016张正样本,7650张负样本,测试集分为基于切割窗口的分类(570张行人,7500张非行人)和整张图片的检测(250张包含行人的图片,共587个行人);CVC-02-System主要用于系统的性能评估,包含15个视频序列(4364帧),7983个行人。CVC-Virtual是通过Half-Life 2图像引擎产生的虚拟行人数据集,共包含1678虚拟行人,2048个非行人图片用于测试。

    更新:2015,目前已经更新到CVC-08了。

    2.9 USC行人数据库
    http://iris.usc.edu/Vision-Users/OldUsers/bowu/DatasetWebpage/dataset.html

    该数据库包含三组数据集(USC-A、USC-B和USC-C),以XML格式提供标注信息。USC-A[Wu, 2005]的图片来自于网络,共205张图片,313个站立的行人,行人间不存在相互遮挡,拍摄角度为正面或者背面;USC-B的图片主要来自于CAVIAR视频库,包括各种视角的行人,行人之间有的相互遮挡,共54张图片,271个行人;USC-C有100张图片来自网络的图片,232个行人(多角度),行人之间无相互遮挡。

    更新:2007

    3 其他资料
    1:Video:Pedestrian Detection: The State of the Art

    http://research.microsoft.com/apps/video/default.aspx?id=135046&r=1

    A video talk byPitor Dollar. Pitor Dollar做了很多关于行人检测方法的研究,他们研究小组的Caltech Pedestrian Dataset也很出名。

    2:Statistical and Structural Recognition of Human Actions. ECCV, 2010 Tutorial, by Ivan Laptev and Greg Mori. (注:要用爬墙软件才能访问到)

    3: Human Action Recognition in realistic scenarios, 一份很好的硕士生毕业论文开题资料。

    参考:http://hi.baidu.com/susongzhi/item/085983081b006311eafe38e7

    参考:http://blog.csdn.net/dpstill/article/details/22420065

    感谢博主的博文~

    展开全文
  • 行人检测

    千次阅读 2016-05-09 10:31:56
    如果转载了本文,也请注明转载出 ...近年,以谷歌为首的自动驾驶技术的研发正如火如荼的进行,这也迫切需要能对行人进行快速有效的检测,以保证自动驾驶期间对行人的安全不会产生威胁。 1 行
  • 导言在这篇文章中,我们将用Java构建一个实时视频对象检测应用程序,用于对汽车进行检测,这是自动驾驶系统的关键组成部分。在之前的文章中,我们构建了一个图像分类器,本文我们...
  • 根据国家运输安全委员会发布的初步报告,两个月前在亚利桑那州坦佩市撞到并使一名行人身亡的优步自动驾驶汽车用传感器注意到了受害者,但软件没有启动刹车来防止碰撞。 联邦调查机构的调查人员确定,包括雷达和激光...
  • 针对基于图像数据的行人检测算法无法获得行人深度的问题,提出了基于激光雷达数据的行人检测算法。该算法结合传统基于激光雷达数据的运动目标识别算法和基于深度学习的点云识别算法,可以在不依赖图像数据的条件下...
  • c1、c2、c3分别代表着汽车、行人、摩托车,如果目标是汽车,这三个参数分别是1,0,0,1代表着存在,0代表不存在。因此使用标签y就可以清楚的描述图片中对象定位的问题。 3、对象检测问题(多个对象):不仅要用算法...
  • 行人检测3

    千次阅读 2016-12-19 09:30:25
    行人检测具有极其广泛的应用:智能...近年,以谷歌为首的自动驾驶技术的研发正如火如荼的进行,这也迫切需要能对行人进行快速有效的检测,以保证自动驾驶期间对行人的安全不会产生威胁。 1 行人检测的现状  大
  • 行人检测资源

    万次阅读 2016-04-14 18:09:03
    综述文献 行人检测资源(上)综述文献  行人检测具有极其广泛的应用:智能辅助驾驶,智能...近年,以谷歌为首的自动驾驶技术的研发正如火如荼的进行,这也迫切需要能对行人进行快速有效的检测,以保证自动驾驶
  • 行人检测资源综述文献

    千次阅读 2016-03-12 16:20:21
    行人检测具有极其广泛的应用:智能...近年,以谷歌为首的自动驾驶技术的研发正如火如荼的进行,这也迫切需要能对行人进行快速有效的检测,以保证自动驾驶期间对行人的安全不会产生威胁。 1 行人检测的现状  大
  • 自动驾驶激光雷达物体检测技术

    千次阅读 多人点赞 2020-03-28 13:29:13
    Lidar Obstacle Detection Github: https://github.com/williamhyin/SFND_Lidar_Obstacle_Detection Email: williamhyin@outlook.com 知乎专栏: 自动驾驶全栈工程师 Lidar Sensors 激光雷达传感器通过发射成千上万的...
  • 行人检测概述

    千次阅读 2018-12-06 21:41:24
    最近毕设选题的时候看到刘西洋教授有这样一个题目,自己在网上查了一下,看到一篇好文章,收藏一下。 转载自...   PART I ...行人检测具有极其广泛的应用:智能辅助驾驶,...
  • 自动驾驶

    千次阅读 2019-06-21 11:08:14
    自动驾驶相关资源知乎专栏:自动驾驶挑战https://zhuanlan.zhihu.com/p/681278871.疲劳检测、 知乎专栏:自动驾驶挑战https://zhuanlan.zhihu.com/p/68127887 1.疲劳检测、 一般是通过检测眼睑闭合、眨眼、凝视方向...
  • 点击上方“3D视觉工坊”,选择“星标”干货第一时间送达车道检测模型简介未来十年,自动驾驶将彻底改变人们的出行方式。目前,自动驾驶应用程序目前正在测试各种案例,包括客车,机器人出租车,自动...
  • 行人检测1

    千次阅读 2016-12-19 09:23:05
    行人检测具有极其广泛的应用:智能辅助驾驶,智能监控,行人分析以及智能机器人等领域。从2005年以来行人检测进入了一个快速的发展阶段,但是也存在很多问题还有待解决,个人觉得主要还是在性能和速度方面还不能达到...
  • 行人检测资源汇总

    千次阅读 2017-11-17 15:07:38
    行人检测具有极其广泛的应用:智能...近年,以谷歌为首的自动驾驶技术的研发正如火如荼的进行,这也迫切需要能对行人进行快速有效的检测,以保证自动驾驶期间对行人的安全不会产生威胁。 1  行人检测的现状  
  • 自动驾驶感知视觉有 2 个流派,分别是摄像头视觉和激光雷达视觉,本文分析激光雷达视觉当中经典的算法模型 VoxelNet。 论文:VoxelNet: End-to-End Learning for Point Cloud Based 3D Object Detection 这是 2017 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,034
精华内容 2,813
关键字:

自动驾驶行人检测