CSCI 1430: Introduction to Computer Vision 计算机视觉课程
Andrew Davison的课程: Robotics Lecture Course (course code 333)
Simultaneous Localization and Mapping: Part I
Simultaneous Localization and Mapping: Part II
书籍 Robotics, Vision & Control 推荐!!!!
Robotics, Vision and Control csdn
2018 MIT 6.S094 麻省理工深度学习和自动驾驶课程 中文
SegFuse: Dynamic Driving Scene Segmentation
DeepTesla - End-to-End Steering Model
1. 感知(Perception):
主要涉及的技术点包括场景理解、交通状况分析、路面检测、空间检测、
障碍物检测、行人检测、路沿检测、车道检测。还有一个比较新颖有趣的是通过胎压去检测道路质量。
在无人驾驶行业,有一套通用的数据集——KITTI数据集,里面有不同的数据,包括双目视觉的数据、定位导航的数据等。
物体检测(Object Detection):
传统方法主要是针对固定物体的检测。一般的方法是HOG( 方向梯度直方图),然后再加一个SVM的分类器。
而对于动态物体的检测,主要使用的是DPM模型的方法,先把手和脚识别出来,再进行组合。
深度学习方法 RCNN YOLO
场景分割(Segmentation) :
人行道是一个场景,道路是一个场景,在场景中对不同的物体进行分类,是一个很重要的问题。
传统的方法是采用CRF( 条件随机场),基本原理在于图像都是由像素点组成的,
若两个像素点都比较像车,那就把二者连接起来,形成对车辆的识别。
运用深度学习的方法则使用的是另一种模型,被称为PSPnet(语义分割)。
这是金字塔型的场景分解模型,将一个场景不断地压缩,把类似的物体聚类,然后再做判断。
双目 光流(Optical Flow)场景流(Scene Flow):
光流是针对2D图像来说的,如果说一个图片流到另外一个图片,都是2D的物体移动,那就用光流来做。
如果是3D的物体流动,那我们就用场景流(Scene Flow),场景流在传统的方法就是使用的是SGBM,
利用的是双目成像的技术,把左图和右图合起来提取出空间的点,用光流在上面做,就能把场景的流动分析出来。
光流也可以利用深度学习的模型来做,把左右两图用同样的模型来提取特征,经过计算就能得出一个深度的信息。
但是这个方式的计算量非常大。
物体追踪(Object Tracking):
这也是无人驾驶中一个比较重要的技术。如何预测行人下一个动作、怎么去跟踪这个行人,也有一系列问题。
里面用到的是马尔可夫链的解决方案,这个技术叫做MDP,跟踪一个人,随时跟踪其下一个动作,预测其下一个动作。
以上其实都是一些传统的感知方法,而这些年随着深度学习的不断进步,应用也非常广泛。
2. 运动规划(Motion Planning):
主要涉及的技术点包括运动规划、轨迹规划、速度规划、运动模型。
比较有趣的一些进展包括通过赛车游戏去学习基于网格的运动规划,重量级货车的避障规划,普世的适用于无人驾驶的双轮模型等等。
3. 防碰撞(CollisionAvoidance):
主要涉及如何通过车内的感知系统以及V2X 系统去辅助防碰撞。
比较有趣的一些进展包括如何实时地去评估当前驾驶行为的危险性,如何通过当前道路的拓扑去增强自行车骑士的安全性等等。
4. 地图与定位(Mapping andLocalization):
主要涉及如何通过不同的传感器,包括激光雷达、视觉、GNSS,以及 V2X 去建图与定位。
比较有趣的一些进展包括如何在一些特殊的场景去定位,比如在长隧道里面,既没有 GNSS 信号,也没有太好的激光或者视觉特征的时候如何定位。
5. 合作系统(CooperativeSystems):
主要涉及如何协同多个无人车去完成一些任务,比如在多个无人车同时在一个十字路口出现时如何调度,
还有就是当有多个无人车同时在停车场试如何有序的停车。
6. 控制策略(Control Strategy):
主要研究在不同的细分场景下的控制策略,比如在十字路口如何控制,转线如何控制,在感知数据不可靠时如何尽量安全的控制等等。
7. 车辆检测与跟踪(VehicleDetection and Tracking):
主要关注如何通过激光雷达、视觉,以及毫米波雷达进行车辆检测与跟踪。
比较有趣的工作包括通过深度学习与深度视觉的结合进行车辆跟踪,
通过单目视觉深度学习去尽量估计车体大小,通过传统视觉边缘检测方法去判断是否车体等等。
8. 静态物体检测(Static ObjectDetection):
主要涉及通过视觉以及激光雷达去检测一些静态的物体,
包括交通灯、交通指示牌、路沿、路面等等,每个物体品类的检测都是一个细分方向。
9. 动态物体检测(Moving ObjectDetection):
主要涉及通过视觉、激光雷达、毫米波雷达,以及传感器融合的方法去检测一些动态的物体,
包括行人、车辆、自行车骑士等等,并根据这些动态物体的动作去预测行为。
10. 道路与路口检测(Road andIntersection Detection):
道路与路口检测由于其特殊性以及对安全的影响,被单独列出作为一个细分的小方向。
研究的前沿一般涉及一些细分场景,比如建筑工地的检测、停车位的检测等等。
11. 决策系统(Planning andDecision):
主要涉及每个无人车的动作的决策,比如加速、刹车、换线、超车、调头等等。
研究的前沿一般涉及在高速行驶中如何安全的换线,在通过视觉理解了场景后如何决策,在感知信息缺失的时候(比如在隧道里面)如何决策等等。
12. 主动与被动安全(Active andPassive Safety):
主要涉及如何通过不同传感器的感知去确保无人驾驶以及行人安全,
比较有趣的一些研究包括通过对 CAN 总线的异常检测去评估车辆的安全性,通过对停车场的视频监控去训练自动泊车模型等等。
13. 无人车与交通的交互(AutonomousVehicles: Interaction with Traffic):
主要研究无人车如何与现有的交通生态共存,特别是传统车与无人车的共存。
比较有趣的一些研究包括 V2X 虚拟交通标志,通过视觉去评估旁边车道司机的驾驶行为等等。
14. 视觉定位(SLAM and VisualOdometry):
主要研究如何用视觉与激光雷达进行实时定位与建图。
比较有趣的一些研究包括视觉的线上校准,使用车道线进行实时定位与导航等等。
15. 环境学习与建图(Mapping andLearning the Environment):
主要研究如何建立精准的环境信息图。比较有趣的一些研究包括使用低空无人机去创建给无人驾驶使用的地图,
以及通过停车场监控摄像头建立辅助自动泊车的地图等等。
相机 = 光测量装置(Camera = light-measuring device)
照明光源(Illumination source)(辐射(radiance)) -->
场景元素(Scene Element) --->
成像系统(Imaging System) --->
内部图像平面(Internal Image Plane) --->
输出(数字)图像(Output (digital) image)
图像 = 辐射能量测量(Image = radiant-energy measurement)
现代摄影流水线 Modern photography pipeline
场景辐射 ---> 相机前端(镜头过滤器 镜头Lens 快门Shutter 孔径) --->
相机内部(ccd响应response(RAW) CCD插值Demosaicing (原)) --->
相机后端处理(直方图均衡Hist equalization、空间扭曲Spatial warping)---> 输出
透过棱镜的白光 “White light” through a prism ------> 折射光(Refracted light)----> 光谱 Spectral
我们的眼睛有三个受体(锥细胞),它们对可见光作出反应并产生颜色感。
CSC320S: Introduction to Visual Computing 视觉计算导论
输入:17张raw图像,包括14张side images、2张top images、1张bottom image
输出:3D立体360度全景图像
深度摄影风格转换 Deep Photo Style Transfer
Self-augmented Convolutional Neural Networks
MeshStereo: A Global Stereo Model with Mesh Alignment Regularization for View Interpolation
1、讨论了立体视觉匹配(Stereo Matching)问题的定义及其与人眼感知深度的关系;
2、对Matching Cost Volume进行了可视化分析,以期望达到听者对其的直观且本质的理解;
3、讨论了立体视觉匹配问题中的四个经典方法(
Graph Cut,Adaptive Support Weight Aggregation,
Semi-Global Matching,
以及 PatchMatch Stereo);
4、讨论了MeshStereo的试图统一disparity求解以及网格生成两个步骤的motivation,
以及formulate这样一个unified model会遇到的困难;
5、讨论了MeshStereo引入splitting probability的解决方案及其优化过程。
Webinar最后展示了MeshStereo在深度估计以及新视角渲染两个任务中的结果。
Stereo Matching Using Tree Filtering non-local算法在双目立体匹配上的应用
Deep Learning Libraries 深度学习软件库
参考 人脸检测Face tracking and recognition database
视频分割 2010 ECCV Efficient Hierarchical Graph Based Video Segmentation
车辆检测 2002 ECCV Learning a sparse representation for object detection
参考 Caltech Pedestrian Detection Benchmark
Microsoft CoCo: Common Objects in Context
2012 ECCV Salient Objects Dataset (SOD)
2012 ECCV Neil D. B. Bruce Eye Tracking Data
2012 ECCV DOVES:A database of visual eye movements
2012 ECCV MSRA:Salient Object Database
2012 ECCV NUS: Predicting Saliency Beyond Pixels
2010 ECCV The DUT-OMRON Image Dataset
2010 ECCV An eye fixation database for saliency detection in images
UCF ChaoticInvariants datasetsActions
Hollywood Human Actions dataset data
Weizmann: Actionsas Space-Time Shapes
HMDB: A Large Video Database for Human Motion Recognition
MSR Action Recognition Datasets and Codes
Visual Event Recognition in Videos
2010 CVPR iCoseg: Interactive cosegmentation by touch
2010 CVPR Caltech-UCSD Birds 200
2009 ICCV An efficient algorithm for co-segmentation
2004 ECCV The Weizmann Horse Database
2013 BMVC Hierarchical Scene Annotation
2010 ECCV SuperParsing: Scalable Nonparametric Image Parsing with Superpixels
2009 CVPR Nonparametric Scene Parsing: Label Transfer via Dense Scene Alignment
2009 Scene Understanding Datasets
2008 IJCV The Daimler Urban Segmentation Dataset
2008 ECCV Motion-based Segmentation and Recognition Dataset)/CamVid/