Awesome
MVision Machine Vision 机器视觉
AI算法工程师手册 数学基础 统计学习 深度学习 自然语言处理 工具使用
NIPS Neural Information Processing Systems
icml Proceedings of Machine Learning Research PMLR
ICDM IEEE International Conference on Data Mining
Computer Vision and Pattern Recognition arxiv.org 最新提交的论文
CSCI 1430: Introduction to Computer Vision 计算机视觉课程
Computer vision:models, learning and inference 书籍
TLD:tracking-learning-detection 跟踪算法
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 & Control.PDF 百度网盘
Robotics, Vision and Control csdn
2018 MIT 6.S094 麻省理工深度学习和自动驾驶课程 中文
SegFuse: Dynamic Driving Scene Segmentation
DeepTesla - End-to-End Steering Model
Free-SpaceEstimation 无障碍物空间估计 稠密地图 栅格地图 动态规划 高度分割 路面信息提取
2D Object Detection 2d目标检测 RCNN
Instance-level Segmentation 实例分割
Kalibr calibration toolbox 标定多目相机系统、相机 IMU 相 对 位 姿 和 卷 帘 快 门 相 机
霍夫森林(Hough Forest) 随机森林和霍夫投票在计算机视觉中的应用,可以用在物体检测,跟踪和动作识别
感谢支持
无人驾驶的各个方面知识
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):
主要研究如何建立精准的环境信息图。比较有趣的一些研究包括使用低空无人机去创建给无人驾驶使用的地图,
以及通过停车场监控摄像头建立辅助自动泊车的地图等等。
无人驾驶面试知识点
1. 深度学习相关
机器学习和深度学习的区别,各自适用于什么问题
CNN基本原理,CNN的那些部分是神经元
CNN去掉激活函数会怎么样
介绍YOLO/SSD/RCNN/Faster-RCNN/Mask-RCNN算法
YOLO v1/v2/v3 区别细节,SSD如何改进有思考过嘛,知道DSSD和FSSD嘛
是否了解RPN,RoI pooling,和RoIAlign
YOLO/SSD里面有全连接层嘛
YOLO/SSD算法思想如何用到三维点云目标检测
目标检测算法one-stage和two-stage区别点在哪里
two-stage算法相比于one-stage有何优势
单张图片物体越多越密集,YOLO/SSD/Faster-RCNN中计算量是否也随着增加
CVPR/ECCV 2018 最新目标检测算法有了解过嘛
如何理解上采样,和下采样的区别是什么
上采样(UNSampling)与上池化(UnPooling)区别
全连接层理论上可以替代卷积层嘛
神经网络里面可以用什么方法替换掉pooling
神经网络提取特征的方式有哪些
介绍下你了解的轻量级CNN模型
网络模型压缩方面的剪枝,量化和二值化编码
基于视频的C3D三维网络模型有听说过嘛
2.5D卷积呢
什么是空洞卷积,什么是反卷积,作用是什么
如何一张RGB图片生成三维模型
PNG/JPG存储图像的原理
global average pooling 和average pooling区别
FPN的原理,为什么不同尺度feature map融合会有效果提升
无监督/半监督深度学习有了解过嘛
GAN的原理
基于RGB图的深度信息估计有了解过嘛
MobileNet V1/V2区别
ShuffleNet和SqueezeNet
模型量化方法有哪些
双线性插值,量化对齐
Relu为什么比sigmod好
目标识别算法常用评测方式
IOU和mAP,AUC和ROC分别是什么
介绍下常见损失函数,softmax一般和哪个激活函数使用
介绍下PointNet/PointNet++/VoxelNet以及他们的优缺点
PointCNN介绍一下
旋转矩阵是什么,有什么性质,PointNet中T-Net旋转矩阵的损失函数如何设计
如何计算旋转矩阵
介绍下机器学习和深度学习中常见的参数类算法和非参数类算法
随机梯度下降
神经网络训练如何解决过拟合和欠拟合
L1正则化和L2正则化区别,具体有何用途
L1正则化相比于 L2正则化为何具有稀疏解
2. C++开发相关
c++常见容器,vector容器capacity和size区别,如何动态增长
vector遍历有哪几种方式(尽可能多)
cv:Mat 有几种访问方式
map容器增删改查,和unorder_map区别,map底层如何实现
c++智能指针
c++14/17新特性
c++和c语言区别
c++如何实现多态,有几种方式,动态多态和静态多态区别
模板了解嘛
c++继承多态
c++深拷贝与浅拷贝
拷贝构造函数和委托构造函数
c++面向对象
右值引用,move语义,完美转发
emplace_back和push_back区别
Eigen库了解嘛
如何实现一个c++的单例模式
内联函数和宏的区别
如何实现一个只在堆或者栈上初始化的类
如何查找容器内所有符合条件的元素
3. Python开发相关
list tuple区别
生成器和迭代器
Python类的定义和实例化方法
4. 数据结构相关
红黑树结构,查找时间复杂度
堆排序的时间复杂度
Top K排序
如何用O(1)复杂度查找到stack里面的最小值
八皇后
C++自己实现一个队列
数组和链表的区别
什么是kd-tree,如何实现
青蛙跳台阶的递归和非递归实现
5. 操作系统相关
如何调试栈溢出
计算机内存堆和栈的区别
线程同步的方式,互斥锁和信号量的对比
进程和线程的区别
图片存储原理介绍一下
6. 深度学习框架相关
Tensorflow结构框架,如何用Tensorflow实现一个反向求梯度
Tensorflow如何合并两个Tensor
caffe和Pytorch了解嘛
caffe和Tensorflow区别在什么地方
Tensorflow serving和TensorRT有了解过嘛
caffe结构框架
7. 视觉SLAM相关
SLAM主要分为哪几个模块
ORB-SLAM2的优缺点分析,如何改进
ORB和FAST对比
BA和卡尔曼滤波
ORB-SLAM2的三个线程是什么
ORB-SLAM2的定位如何实现
如何理解ORB-SLAM2的图优化
结构光、TOF、双目视觉原理
直接法、半直接法、特征点法区别与联系
Apollo的感知模块原理
Apollo的2D和3D跟踪
如何求解旋转矩阵
如果只有32线雷达,个数不限,能实现360度视角覆盖吗,如何实现,64线呢?
公司
初创公司:
图普科技---Face++---Linkface---Minieye---知图Cogtu---商汤科技Sensetime---亮风台Hiscene---掌赢科技---格灵深瞳DeepPG---凌感科技usens---图森TuSimple---中科视拓Seetatech(山世光)---第四范式
上市公司:
百度DL实验室---腾讯优图---阿里高德---暴风魔镜---搜狗---乐视tv---奇虎360---京东实验室---阿里巴巴---联想研究院---华为研究院
知名外企:
佳能信息---索尼研究院---富士通研发中心---微软研究院---英特尔研究院---三星研究院
0 计算摄影 摄影几何
相机 = 光测量装置(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
图像形变 Image warping
色彩增强/转换 Color transfer
图像修补 Image repair
图像去噪 Image denoise
图像去模糊 Image deblur
图像滤波 Image filter
超分辨率 Super-resolution
1 三维重建 3D Modeling
相机矫正 Camera calibration
非刚体重建 Non-rigid modeling
三维重构 3D modeling
Self-augmented Convolutional Neural Networks
2 匹配/跟踪 Matching & Tracking
2.a 特征提取 Feature extraction
2.b 特征匹配 Feature matching
2.c 时空匹配 Space-time matching
2.d 区域匹配 Region matching
2.e 轮廓匹配 Contour matching
2.f 立体匹配 Stereo matching
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算法在双目立体匹配上的应用
2.g 深度匹配 depth matching
2.h 姿态跟踪 Pose tracking
2.i 物体跟踪 Object tracking
2.j 群体分析 Crowd analysis
2.k 光流场跟踪 Optical flow
3 语义/实例分割&解析 Segmentation & Parsing
3.a 视频分割 Video segmentation
3.b 人体解析 Person parsing
3.c 场景解析 Scene parsing
3.d 边缘检测 Edge detection
3.e 图像物体分割 Image object segmentation
3.f 视频物体分割 Video object segmentation
3.g 交互式分割 Interactive segmentation
3.h 共分割 Co-segmentation
3.i 背景差 Background subtraction
3.j 图像分割方面 Image segmentation
4 识别/检测 Recognition & Detection
4.a 其他识别 Other recognition
4.b 图像检索 Image retrieval
4.c 显著检测 Saliency detection
4.d 通用物体检测 Object proposal
4.e 行为识别 Action recognition
4.f 物体识别 Object recognition
4.g 行人检测 Human detection
4.h 人脸解析 Face Parsing
4.i 纹理分析 Texture Analysis
5 机器学习 Maching Learning
5.a 生成对抗网络 GAN Generative Adversarial Networks
5.b 深度学习 Deep learning
Deep Learning Libraries 深度学习软件库
5.c 能量优化 Energy optimization
5.d 模型设计 Model design
5.e 空间降维 Dimention reduction
5.f 聚类 Clustering
5.g 分类器 Classifier
6 开源库 Open library
7 数据集 Public dataset
7.a 其他方面 Other datasets
参考 人脸检测Face tracking and recognition database
视频分割 2010 ECCV Efficient Hierarchical Graph Based Video Segmentation
车辆检测 2002 ECCV Learning a sparse representation for object detection
7.b 人体检测 dataset on human annotation
参考 Caltech Pedestrian Detection Benchmark
7.c 物体识别 dataset on object recognition
Microsoft CoCo: Common Objects in Context
7.d 显著检测方面 dataset on saliency detection
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
7.e 行为识别 dataset on action recognition
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
7.f 物体分割 dataset on object segmentation
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
7.g 场景解析 dataset on scene parsing
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/