当前位置 博文首页 > 自己的学习笔记:综述自动驾驶中的计算机视觉Computer Vision fo

    自己的学习笔记:综述自动驾驶中的计算机视觉Computer Vision fo

    作者:[db:作者] 时间:2021-06-04 11:26

    综述原文链接https://arxiv.org/pdf/1704.05519.pdf

    17年CVPR上的一篇关于自动驾驶和计算机视觉的综述,比较全面,大体整理一个提纲,重点关注比较新的研究成果,侧重于深度学习方面的。

    1. History of Autonomous Driving 自动驾驶的历史

    这一部分介绍了自动驾驶的项目和自动驾驶的比赛,包括比较出名的Google waymo,NVIDIA的Dave2,DARPA等,了解一下。

    1.1 Autonomous Driving Projects 自动驾驶项目

    • PROMETHEUS 1986
    • Navlab 1988
    • VisLab及其衍生项目
      10年之后
    • PROUD 2010
    • V-charge an electric automated car outfitted with close-to-market sensors
    • Google Waymo 2009至今
    • Tesla Autopilot
    • Nvidia DAVE2

    Long Distance Test Demonstrations

    1.2 Autonomous Driving Competitions 自动驾驶比赛

    • ELROB The European Land Robot Trial
    • DARPA 2004 American Defense Advanced Research Projects Agency
      04年的比赛 100万美元奖金,从加州到内华达州共150英里的路程,并没有队伍完成比赛。05年改变了路线。09年DARPA的的第三次比赛,Urban Challenge, 96km的城市道路路程,要求车辆在negotiating with other vehicles and merging into traffic时遵守一定的交通规则。
    • GCDC The Grand Cooperative Driving Challenge
      During the competition, teams had to negotiate convoys, join convoys
      and lead convoys. The winner was selected based on a system that assigned points to randomly mixed teams.

    2. Datasets & Benchmarks 数据集和评价基准

    这一部分主要讲数据集和评价指标,包括真实场景的数据集和仿真的数据集。真实场景的数据集又主要包括关于stereo和3d重建的,光流的,目标识别和分割的,跟踪的,航拍图的,作者还总结了更侧重于自动驾驶的(我的理解是以车辆的视角采集的数据集)几个数据集以及长距离的数据集。仿真数据集也列举了一个例子,可以大致分为从动画电影衍生出来的数据集和基于游戏引擎的数据集。

    2.1 Real-World Datasets 真实场景数据集

    Stereo and 3D Reconstrution 立体和3D重建

    • Middlebury stereo benchmark http://vision.middlebury.edu/stereo/ 2002年 用于比较立体匹配算法性能的multi-frame stereo 数据集。
    • Middlebury multi-view stereo (MVS)
      http://vision.middlebury.edu/mview/ 标定好的多视角图像数据集,有3D模型的ground truth。
    • TUD MVS dataset http://roboimagedata.compute.dtu.dk/?page_id=36

    Optical Flow 光流

    • Middlebury flow benchmark http://vision.middlebury.edu/flow/
      光流法不太关注,暂不展开。

    Object Recognition and Segmentation 目标识别和分割

    • ImageNet 2009
    • PASCAL VOC 2010
      目标分类,目标检测,目标分割,行为识别
    • Microsoft COCO 2014
      目标检测,实例分割,上下文推理
      91类,250万标注的实例,32万8千张图。
    • Cityscapes 2016
    • TorontoCity 2016

    Tracking 跟踪

    • MOTChallenge 多目标跟踪 14个视频序列,使用静止或运动相机拍摄的 https://motchallenge.net/,提供三类物体的标注:运动或静止的行人,不处于直立状态的人和其他。
    • PETS
    • KITTI
      评价指标
      MOTA:Multiple Object Tracking Accuracy
      MOTP:Multiple Object Tracking Precision

    Aerial Image Datasets 航拍数据集

    • ISPRS http://www2.isprs.org/commissions/comm3/wg4/tests.html
      提供了机载传感器获取的城市目标检测和3D建筑重建和分割的数据。
      包括两个数据集:Vaihingen和Downtown Toronto。目标检测的类别有:建筑物,道路,树木,地面,汽车。

    Autonomous Driving 自动驾驶

    • 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年

    • Caltech Pedestrian Detection Benchmark 2009
      http://www.vision.caltech.edu/Image_Datasets/
      CaltechPedestrians/
      有25万帧图像,是汽车在城市环境中一边开车一边采集的,有35万bounding boxes,2300个不同的行人。
    • Cityscapes 2016 https://www.cityscapes-dataset.com/
      街景语义分割,像素级别和实例级别的语义分割数据集。像素级别的分割有5000张精细标注的图像和2000张粗糙标注的图像。
    • TorontoCity 2016 覆盖了多伦多地区712平方公里,8439km道路里程和40万建筑物。标注:建筑物高度估计(重建),道路中心线,curb(应该是马路牙)提取,建筑物实例分割,建筑物轮廓提取,语义标签和场景类型分类。数据是通过飞机,无人机和道路上行驶的车辆共同采集的。

    Long-Term Autonomy 长期的autonomy 长期自控?

    大部分数据集都重点关注于算法的完备,并没有重点关注长距离数据集的生成。
    - Oxford RobotCar 1000km,有图像,LiDAR和GPS数据。

    2.2 Synthetic Data 仿真数据

    MPI Sintel

    http://sintel.is.tue.mpg.de/
    2012年,flow benchmark。利用了开源电影Sintel,

    Flying Chairs and Flying Things

    含三个部分:FlyingThings3D, Monkaa, Driving.FlyingThings3D。在随机生成的场景中提供每天飞行的3D 目标(3D轨迹随机)

    Game Engines 游戏引擎

    从动画电影衍生出来的数据十分有限,内容很难改变,很少有电影开源。游戏引擎可以用来产生无限量的数据。
    - 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 提供了一套仿真的开源工具。

    3. Cameras Models & Calibration 相机模型和标定

    这一部分讲相机模型和标定,暂不展开。

    3.1 Calibration

    3.2 Omnidirectional Cameras

    Applications

    3.3 Event Cameras

    Lifetime Estimation

    4. Representations 表现形式/表征

    暂时也不关注。

    Superpixels 超像素

    Stixels 棒状像素?

    3D Primitives


    5. Object Detection 目标检测

    这一部分主要讲目标检测,城市道路中的目标检测对于自动驾驶车辆的避障等十分重要。主要从传感器

    Sensors 传感器

    • 相机 最便宜最常见
    • VS visible spectrum 主要用于日间,infrared spectrum用于夜间
    • TIR thermal infrared camera热红外相机 warm objects:行人等,cold objects:树木或道路
      以上属于被动传感器
      主动active sensors比如说
    • laser scanners
      不同的传感器会受到不同的条件干扰

    Standard Pipeline 标准流水线

    一套传统的检测方法包括这几个步骤:预处理,感兴趣区域ROI的踢下去,目标分类,确认/改善 verification/refinement。预处理阶段需要相机标定和图像校正。感兴趣区域的检测,传统上,常用滑动窗口方法。

    Classifications 分类

    因为传统方法基于滑动窗口方法,将所有的这些区域进行分类的计算开销是很大的,所以过去十几年有一些高效的分类方法的研究成果。比如说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特征的时候训练分类器。

    Part-based Approaches 基于part的方法

    • Deformable Part Model(DPM)
    • Implicit Shape Model

    5.1 2D Object Detection 2D目标检测

    在2D目标检测方面,kitti数据集和Caltech-USA数据集相对来说较为权威,在KITTI的benchmark中,目标检测分为三类:汽车,行人,骑车者。
    这一部分现在还是用深度学习做的比较多,从R-CNN,spp-Net,Fast R-CNN,到Faster R-CNN,再到YOLO和SSD。

    5.2 3D Object Detection from 2D Images 基于2D图像进行3D目标检测

    物体类别的几何3D表示可以比2D或3D的bounding box包含更多的信息,现在有一些关于3D CAD模型的研究,不过效果还达不到与使用2Dbounding box的方法同样的效果。

    5.3 3D Object Detection from 3D Point Clouds 基于3D点云进行3D目标检测

    KITTI数据集提供了相机和LiDAR的同步数据,来比较基于图像的方法和基于LiDAR的方法的效果。激光雷达可以直接得到精确的3D信息,简化目标候选的提取,但是激光雷达采集到的3D数据往往比较稀疏,分辨率不足。所以目前基于激光雷达的目标检测方法还不能达到跟基于图像的方法一样的效果。

    不太关注雷达,暂不展开。

    5.4 Person Detection 行人检测

    真实环境中行人的检测是十分重要的,而且人的行为并不像车的行为那样可以预测,并且因为人的穿着和姿态的各异,使得行人检测更为困难。

    Pedestrian Protection Systems 行人保护系统

    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).

    Surveys

    单目行人检测的话,HOG结合SVM在高分辨率情况下效果好,AdaBoost在低分辨率情况下效果好。
    近几年使用CNN的方法

    • Xiang, Y., Choi, W., Lin, Y., & Savarese, S. (2016). Subcategory-aware convolutional neural networks for object proposals and detection. arXiv.org, 1604.04693.
    • Cai, Z., Fan, Q., Feris, R. S., & Vasconcelos, N. (2016). A unified multi-scale deep convolutional neural network for fast object detection. In Proc. of the European Conf. on Computer Vision (ECCV).
    • Zhu, Y., Wang, J., Zhao, C., Guo, H., & Lu, H. (2016). Scale-adaptive deconvolutional regression network for pedestrian detection. In Proc. of the Asian Conf. on Computer Vision (ACCV).
    • Chen, X., Kundu, K., Zhu, Y., Berneshawi, A. G., Ma, H., Fidler, S., & Urtasun, R. (2015c). 3d object proposals for accurate object class detection. In Advances in Neural Information Processing Systems (NIPS).
    • Yang, F., Choi, W., & Lin, Y. (2016). Exploit all the layers: Fast and accurate CNN object detector with scale dependent pooling and cascaded rejection classifiers. In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR).
    • Ren, S., He, K., Girshick, R. B., & Sun, J. (2015). Faster R-CNN: towards real-time object detection with region proposal networks. In Advances in Neural Information Processing Systems (NIPS).

    Temporal Cues

    利用一下视频序列中的物体运动的时间信息

    Scarcity of Target Class 目标类别的稀缺

    可以使用学习生成模型来建立合成虚拟样本来提高判别模型的性能。

    Real-time Pedestrian Detection 实时行人检测

    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帧的检测成果

    5.5 Human Pose Estimation 人体姿态估计

    人的姿态估计是非常重要的,但是它的难点在于姿态空间是非常庞大的,并且通常人距离车比较远,所以观测到的人分辨率比较低。
    一种比较典型的两步走方法:首先检测身体部分,然后进行姿态估计。比如
    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的形状。

    5.6 Discussion 讨论

    目前目标检测在高分辨率和少遮挡的情况下,效果是比较不错的。车辆检测效果已经很不错(kitti),行人和骑行者的效果还有待提升。主要原因是因为训练样本有限.以及骑行者和行人要通过上下文和语义才能看出不同。
    不过目标检测最主要的问题还是小目标的检测以及高度遮挡物体的检测。