当前位置 博文首页 > 自己的学习笔记:综述自动驾驶中的计算机视觉Computer Vision fo
综述原文链接https://arxiv.org/pdf/1704.05519.pdf
这一部分介绍了自动驾驶的项目和自动驾驶的比赛,包括比较出名的Google waymo,NVIDIA的Dave2,DARPA等,了解一下。
这一部分主要讲数据集和评价指标,包括真实场景的数据集和仿真的数据集。真实场景的数据集又主要包括关于stereo和3d重建的,光流的,目标识别和分割的,跟踪的,航拍图的,作者还总结了更侧重于自动驾驶的(我的理解是以车辆的视角采集的数据集)几个数据集以及长距离的数据集。仿真数据集也列举了一个例子,可以大致分为从动画电影衍生出来的数据集和基于游戏引擎的数据集。
KITTI
stereo,光流,视觉里程计/SLAM,3D 目标检测。 使用高分辨率彩色和灰度双目相机,Velodyne 3D 激光雷达,GPS/IMU惯性导航系统采集的6个小时数据。
stereo和光流:194对图像用于训练,195对图像用于测试(1280*376),ground truth是用3D激光点云投影到图像上得到的。2015年 Menze & Geiger标注了400个动态场景,又将stereo和光流相结合,生成了一个3D scene flow benchmark。
视觉里程计/SLAM:22个stereo序列,39.2km长,使用了GPS/IMU和RTK(Real - time kinematic,实时动态)载波相位差分技术生成ground truth。
目标检测:7481张图像用于训练,7518张图像用于测试。有机动车,行人和骑行者检测。和paskal voc一样,使用IOU(intersection-over-union)作为评价指标。
道路车车道线检测:13年扩展了数据集,600张训练和测试图像用于道路和车道线检测。16年又有人使用航拍图对停车场,人行道和车道线的数目和位置进行了细粒度的分割。
HCI http://hci-benchmark.org
28504对图像,stereo和光流的ground truth。2016年
大部分数据集都重点关注于算法的完备,并没有重点关注长距离数据集的生成。
- Oxford RobotCar 1000km,有图像,LiDAR和GPS数据。
http://sintel.is.tue.mpg.de/
2012年,flow benchmark。利用了开源电影Sintel,
含三个部分:FlyingThings3D, Monkaa, Driving.FlyingThings3D。在随机生成的场景中提供每天飞行的3D 目标(3D轨迹随机)
从动画电影衍生出来的数据十分有限,内容很难改变,很少有电影开源。游戏引擎可以用来产生无限量的数据。
- Virtual KITTI http://www.xrce.xerox.com/Research-Development/
Computer-Vision/Proxy-Virtual-Worlds 2016
包含了35段仿真视频,17000帧高分辨率图像。提供了目标检测,跟踪,场景和实例分割,深度和光流的ground truth。
- SYNTHIA http://synthia-dataset.net/ 2016 城市环境语义分割数据集,13400张随机选取的图像,4段视频共计20万帧左右。提供13类像素界别的语义标注。
- GTA
Richter, S. R., Vineet, V., Roth, S., & Koltun, V. (2016). Playing for data:
Ground truth from computer games. In Proc. of the European Conf. on
Computer Vision (ECCV). 这篇论文 提取了GTA中的图像的精确到像素的语义标签地图,并且开发了一个wrapper包装器,从电脑游戏仿真出的25000张
图像中生成稠密的语义标注。
- Unrealcv
Qiu, W., & Yuille, A. L. (2016). Unrealcv: Connecting computer vision to
unreal engine. arXiv.org, 1609.01326 提供了一套仿真的开源工具。
这一部分讲相机模型和标定,暂不展开。
暂时也不关注。
这一部分主要讲目标检测,城市道路中的目标检测对于自动驾驶车辆的避障等十分重要。主要从传感器
一套传统的检测方法包括这几个步骤:预处理,感兴趣区域ROI的踢下去,目标分类,确认/改善 verification/refinement。预处理阶段需要相机标定和图像校正。感兴趣区域的检测,传统上,常用滑动窗口方法。
因为传统方法基于滑动窗口方法,将所有的这些区域进行分类的计算开销是很大的,所以过去十几年有一些高效的分类方法的研究成果。比如说AdaBoost,SVM结合HOG特征,深度学习出现之后,
Sermanet, P., Kavukcuoglu, K., Chintala, S., & LeCun, Y. (2013). Pedestrian detection with unsupervised multi-stage feature learning. In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR)比如说这篇文章,使用了无监督的卷积稀疏自动编码器来预训练特征,使用端到端的有监督学习在finetune特征的时候训练分类器。
在2D目标检测方面,kitti数据集和Caltech-USA数据集相对来说较为权威,在KITTI的benchmark中,目标检测分为三类:汽车,行人,骑车者。
这一部分现在还是用深度学习做的比较多,从R-CNN,spp-Net,Fast R-CNN,到Faster R-CNN,再到YOLO和SSD。
物体类别的几何3D表示可以比2D或3D的bounding box包含更多的信息,现在有一些关于3D CAD模型的研究,不过效果还达不到与使用2Dbounding box的方法同样的效果。
KITTI数据集提供了相机和LiDAR的同步数据,来比较基于图像的方法和基于LiDAR的方法的效果。激光雷达可以直接得到精确的3D信息,简化目标候选的提取,但是激光雷达采集到的3D数据往往比较稀疏,分辨率不足。所以目前基于激光雷达的目标检测方法还不能达到跟基于图像的方法一样的效果。
不太关注雷达,暂不展开。
真实环境中行人的检测是十分重要的,而且人的行为并不像车的行为那样可以预测,并且因为人的穿着和姿态的各异,使得行人检测更为困难。
Geronimo, D., Lopez, A. M., Sappa, A. D., & Graf, T. (2010). Survey on
pedestrian detection for advanced driver assistance systems. IEEE Trans. on Vision and Pattern Recognition (CVPR).
单目行人检测的话,HOG结合SVM在高分辨率情况下效果好,AdaBoost在低分辨率情况下效果好。
近几年使用CNN的方法
利用一下视频序列中的物体运动的时间信息
可以使用学习生成模型来建立合成虚拟样本来提高判别模型的性能。
Benenson, R., Mathias, M., Timofte, R., & Gool, L. J. V. (2012).Pedestrian
detection at 100 frames per second. In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR).
12年的时候已经有100帧的检测成果
人的姿态估计是非常重要的,但是它的难点在于姿态空间是非常庞大的,并且通常人距离车比较远,所以观测到的人分辨率比较低。
一种比较典型的两步走方法:首先检测身体部分,然后进行姿态估计。比如
Gkioxari, G., Hariharan, B., Girshick, R., & Malik, J. (2014). Using k-poselets for detecting people and localizing their keypoints. In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR).
DeepCut
Pishchulin, L., Insafutdinov, E., Tang, S., Andres, B., Andriluka, M., Gehler,P. V., & Schiele, B. (2016). Deepcut: Joint subset partition and labeling for multi person pose estimation. In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR).
可以估计一幅图像中所有人的姿态。
SMPL
Loper, M., Mahmood, N., Romero, J., Pons-Moll, G., & Black, M. J. (2015). SMPL: A skinned multi-person linear model. ACM Trans. on Graphics (SIGGRAPH),
Bogo, F., Kanazawa, A., Lassner, C., Gehler, P. V., Romero, J., & Black, M. J. (2016). Keep it SMPL: automatic estimation of 3d human pose and shape from a single image. In Proc. of the European Conf. on Computer Vision (ECCV).
使用了DeepCut来估计人体的3D的姿态和3D的形状。
目前目标检测在高分辨率和少遮挡的情况下,效果是比较不错的。车辆检测效果已经很不错(kitti),行人和骑行者的效果还有待提升。主要原因是因为训练样本有限.以及骑行者和行人要通过上下文和语义才能看出不同。
不过目标检测最主要的问题还是小目标的检测以及高度遮挡物体的检测。