
视觉导航
文章平均质量分 88
苏源流
从事计算机视觉和SLAM领域,2012年10月“全国大学生数学建模竞赛”二等奖(数学应用能),2011年攻读 自动化 专业,2015年攻读“模式识别与智能系统” 专业。现在主要工作内容无人驾驶方面的视觉定位与导航,能够提供整体的地下车库自动泊车定位解决方案,该方案也适用于工业园区泊车,物流机器人,园区巡视机器人,餐饮配送、服务机器人等。本人熟悉linux下ROS环境,掌握opencv中2/3的功能,掌握视觉SLAM中ORB_SLAM2,激光lidar的loam。熟悉摄像机,激光雷达,惯导IMU等传感器的使用与开发。主导和参与多个定位项目,欢迎交流。致力于推进技术的应用,技术改变生活。不做无脑人
展开
-
[学习SLAM]深度学习+视觉SLAM 的可行性/方向
时间:2019.07 作者:干磊背景:本文统计的是2018年及以前的相关论,未涉及2019年的论文。1,深度学习+SLAM的可行性长期来讲,深度学习有极大可能会去替代目前SLAM技术中的某些模块,但彻底端到端取代SLAM可能性不大。 短期来讲(三到五年),深度学习不会对传统SLAM技术产生很大冲击。2,深度学习+SLAM的 5 个主要研究方向1)单目SLAM学习尺度/深度...转载 2019-08-02 15:19:23 · 6251 阅读 · 1 评论 -
【学习SLAM】TUM数据集
在 TUM数据集主页找到它的下载链接。https://vision.in.tum.de/data/datasets/rgbd-dataset/download我们的数据位于本章目录的 data/下,以压缩包形式提供(data.tar.gz)。由于 TUM数据集是从实际环境中采集的,需要解释一下它的数据格式(数据集一般都有自己定义的格式)。在解压后,你将看到以下这些文件:1. rgb.txt 和...原创 2019-06-05 22:54:36 · 26144 阅读 · 5 评论 -
【自动驾驶】GitHub:车道线检测最全资料集锦
演示视频https://www.bilibili.com/video/av17281046/作者:Amusihttps://github.com/amusi/awesome-lane-detection前言这篇文章,搁置了至少5个月。关于车道线检测,CVer曾于2018-06-07转载了一篇文章:论文精读 | LaneNet 端到端车道线检测的实例分割方法。前几天又有同学在CV...转载 2019-06-01 22:39:30 · 3320 阅读 · 1 评论 -
【计算机视觉】从运动中恢复结构SfM-摄像机运动估计,三维重建[2d点序列]
结构运动-摄像机运动估计来源OpenCV 3.3.0目标在本教程中,您将学习如何使用重建api的摄像机运动估计:加载文件与跟踪二维点,并建立容器的所有帧。 libmv重建传递途径运行。 使用即显示结果。从运动中恢复结构SfM模块安装使用情况和结果为了运行这个示例,我们需要指定的路径跟踪点文件,相机的焦距长度除了中心投影坐标(以像素为单位)。 你可以找到一个示例文件/...翻译 2017-06-02 12:35:31 · 3992 阅读 · 2 评论 -
【泡泡机器人公开课】公开课链接 机器人俱乐部
1.工业相机选型及介绍-刘富强链接: https://pan.baidu.com/s/1nuGw4Vv 密码: tjag2.深度学习及应用-颜沁睿链接: https://pan.baidu.com/s/1c31ZcE 密码: r42j3.SVO & LSD_SLAM解析 - 贺一家链接: https://pan.baidu.com/s/1mimS6mO 密码: gp7i...转载 2018-11-23 16:28:31 · 15395 阅读 · 0 评论 -
[学习opencv]bow 算法实现图片分类bag of word
BOW其实就是bag of word的缩写,在OpenCV中关于此框架的有3个类。 第一个是一个基类,算是BOW训练的类型, class BOWTrainer { public: BOWTrainer(){} virtual ~BOWTrainer(){} v...转载 2018-10-15 13:57:27 · 1603 阅读 · 1 评论 -
KITTI数据集--label解析与传感器间坐标转换参数解析
KITTI数据集是自动驾驶领域最知名的数据集之一。可以用来从事立体图像、光流估计、三维检测、三维跟踪等方面的研究。一、kitti数据集,label解析16个数代表的含义:第1个字符串:代表物体类别'Car', 'Van', 'Truck','Pedestrian', 'Person_sitting', 'Cyclist','Tram', 'Misc' or 'DontCar...原创 2018-09-25 20:43:05 · 17417 阅读 · 21 评论 -
VINS简介与代码结构
VINS-Mono和VINS-Mobile是香港科技大学沈劭劼团队开源的单目视觉惯导SLAM方案。是基于优化和滑动窗口的VIO,使用IMU预积分构建紧耦合框架。并且具备自动初始化,在线外参标定,重定位,闭环检测,以及全局位姿图优化功能。方案最大的贡献是构建了效果很好的融合算法,视觉闭环等模块倒是使用了较为常见的算法。系列博客将结合课题组发表的paper,从代码层面,逐步剖析系统的各个模块,...转载 2020-06-03 13:27:30 · 4594 阅读 · 0 评论 -
[学习SLAM]卡尔曼滤波的示意图,原理,实践[matlab] 3
卡尔曼滤波图画示意先从简单的说起:考虑轨道上的一个小车,无外力作用,它在时刻t的状态向量只与相关:(状态向量就是描述它的t=0时刻所有状态的向量,比如:[速度大小5m/s, 速度方向右, 位置坐标0],反正有了这个向量就可以完全预测t=1时刻小车的状态)那么根据t=0时刻的初值,理论上我们可以求出它任意时刻的状态。当然,实际情况不会这么美好。这个递推函数可能会受到各种不确...转载 2019-07-09 13:32:54 · 1234 阅读 · 0 评论 -
[学习slam]卡尔曼滤波原理在运动控制的应用实践 4
卡尔曼滤波的原理说明 在学习卡尔曼滤波器之前,首先看看为什么叫“卡尔曼”。跟其他著名的理论(例如傅立叶变换,泰勒级数等等)一样,卡尔曼也是一个人的名字,而跟他们不同的是,他是个现代人! 卡尔曼全名RudolfEmilKalman,匈牙利数学家,1930年出生于匈牙利首都布达佩斯。1953,1954年于麻省理工学院分别获得电机工程学 士及硕士学位。1957年...转载 2019-07-09 13:34:37 · 500 阅读 · 1 评论 -
[学习SLAM]数学中的几何变换-向量叉乘/旋转轴、旋转角度和旋转矩阵/坐标系变换
数学几何知识01——向量叉乘首先说一说向量点乘,向量a=(x1,y1)和向量b=(x2,y2)设a和b所在坐标系是正交的,坐标系向量为(i, j)a•b= x1*x2+y1*y2+ 2*(x1y2+x2y1)*(i•j)由于向量(i)和(j)相互垂直,所以(i•j) = 0;故a•b = x1*x2+y1*y2;同理,在空间坐标系下,向量a=(x1, y1, z1) 和向量...转载 2019-07-09 13:56:39 · 2363 阅读 · 0 评论 -
[学习SLAM]两平面法向量与旋转向量/旋转矩阵,根据两平面法向量进行旋转
根据旋转前后的向量值求旋转矩阵如果已知旋转前后的一向量的变化,那么该如何求这个旋转矩阵呢?本篇结合Rodrigues' rotation formula,介绍一下该旋转矩阵的求法。1.旋转角度已知旋转前向量为P, 旋转后变为Q。由点积定义可知:可推出P,Q之间的夹角为:2. 旋转轴由1中可知,旋转角所在的平面为有P和Q所构成的平面,那么旋转轴必垂直该平面。假定旋转前...原创 2020-12-09 18:10:55 · 5322 阅读 · 1 评论 -
[学习SLAM]]根据空间点坐标拟合平面和直线
SVD解决平面拟合问题综上:对矩阵A做奇异值分解,最小奇异值对应的特征向量就是拟合平面的系数向量。根据一组点的坐标拟合空间平面,有两种方法 第一种:如果在测量得到的数据中,x,y值都是确认没有误差的,而误差只是出现在z值上,则可以使用线性回归的方法,此方法最小二乘的目标是在z方向上de残差Matlab 代码 % 随机生成一组(x,y,z),这些...转载 2019-06-10 15:14:27 · 7888 阅读 · 3 评论 -
【学习SLAM】视觉SLAM笔记之Frame 类
Frame 类 [数据成员]定义了 ID、时间戳、位姿、相机、图像 在 Frame 中,我们定义了 ID、时间戳、位姿、相机、图像这几个量;public:// data members typedef std::shared_ptr<Frame> Ptr; unsigned long id_; // id of this frame double time_stam...原创 2019-06-05 22:36:42 · 1375 阅读 · 0 评论 -
【学习SLAM】PL-SLAM: 基于点和线条的实时单目slam
大家好,对于VSLAM研究人员当然要对最新的VSLAM的研究做下总结了,这次为大家介绍PL-SLAM。上图就是PL-SLAM的框架,是不是感觉和ORBSLAM很像呢?比较典型打特征法+直接法的结合的关键帧的Vslam跟ORBSLAM有三个主要线程:跟踪 、构图、回环检测一、Tracking(估计相机的位置,根据约束条件,产生新的关键帧)特征提取方面:ORB、lsd的线条像素特征...转载 2019-06-05 22:39:03 · 3741 阅读 · 1 评论 -
【学习SLAM】Matlab ——旋转矩阵,旋转向量,四元数,欧拉角之间的转换
基于Matlab现有函数下的内容Matlab ——旋转矩阵,旋转向量,四元数,欧拉角之间的转换旋转矩阵 dcm R四元数 quat q = [q0 q1 q2 q3]欧拉角 angle [row,pitch,yaw]/[r1,r2,r3]注:以上表格是为了帮助理解的表示roll(横滚) --X pitch(俯仰)--Y ...原创 2020-08-17 15:18:23 · 4954 阅读 · 0 评论 -
SLAM 中evo的原理(一)
""" RALIGN - Rigid alignment of two sets of points in k-dimensional Euclidean space. Given two sets of points in correspondence, this function computes the scaling, ro...翻译 2019-08-30 09:25:56 · 850 阅读 · 0 评论 -
Proj.4库的编译及使用-1
Proj.4库的编译及使用Proj.4是开源GIS最著名的地图投影库,GRASS GIS, MapServer, PostGIS, Thuban, OGDI, Mapnik, TopoCad, GDAL/OGR等软件的投影都直接或间接的使用Proj.4。Proj.4的功能主要有经纬度坐标与地理坐标的转换,坐标系的转换,包括基准变换等,下面以命令行方式和编程方式来说明经纬度坐标与地理坐标转换功...转载 2019-04-12 18:47:53 · 4855 阅读 · 0 评论 -
[学习SLAM]ORB-SLAM2 地图保存与加载 基础构建
一、简介 在ORB-SLAM2的System.h文件中,有这样一句话:// TODO: Save/Load functions,让读者自己实现地图的保存与加载功能。其实在应用过程中很多场合同样需要先保存当前场景的地图,然后下次启动时直接进行跟踪,这样避免了初始化和建图,减小相机跟踪过程中计算机负载,还有就是进行全场的定位。其实网上已经有地图保存的代码了https://github.com/x...原创 2019-06-24 17:37:26 · 4953 阅读 · 0 评论 -
【自动驾驶】HUD抬头显示Heads Up Display在辅助驾驶的应用
平视显示器(Head Up Display),以下简称HUD,是运用在航空器上的飞行辅助仪器。平视的意思是指飞行员不需要低头就能够看到他需要的重要资讯。平视显示器最早出现在军用飞机上,降低飞行员需要低头查看仪表的频率,避免注意力中断以及丧失对状态意识(Situation Awareness)的掌握。因为HUD的方便性以及能够提高飞行安全,民航机也纷纷跟进安装。汽车也开始安装。何为HUD?先...原创 2019-06-01 22:33:05 · 6761 阅读 · 0 评论 -
KITTI数据集简介与使用
摘要:本文融合了Are we ready for Autonomous Driving? The KITTI Vision Benchmark Suite和Vision meets Robotics: The KITTI Dataset两篇论文的内容,主要介绍KITTI数据集概述,数据采集平台,数据集详细描述,评价准则以及具体使用案例。本文对KITTI数据集提供一个较为详细全面的介绍,重点关注利...转载 2018-09-25 20:41:52 · 2364 阅读 · 1 评论 -
PnP算法简介与代码解析-柴政
PnP算法简介与代码解析-柴政PnP求解算法是指通过多对3D与2D匹配点,在已知或者未知相机内参的情况下,利用最小化重投影误差来求解相机外参的算法。PnP求解算法是SLAM前端位姿跟踪部分中常用的算法之一,本次公开课,将详细讲述P3P、DLT、EPnP、 ... Hey, 各位为了SLAM奋斗的亲,欢迎回到泡泡机器人! 本期公开课将详细讲述常见的PnP求解算法。PnP求解算法是指通...转载 2018-09-17 17:26:20 · 5488 阅读 · 3 评论 -
【计算机视觉】matlab calibration toolbox-Matlab标定工具箱使用
matlab calibration toolbox-Matlab标定工具箱使用1. 单目标定这个教程将带你完整地利用20到25张平面棋盘格图像进行相机标定。这个教程将让你学会如何使用所有工具箱的特征:载入图像、提取图像角点、运行标定引擎、显示结果、控制精度添加和删减图像、图像矫正、导出标定不同格式的数据...这个教程对于刚开始使用工具箱的人来说非常重要。首先下载Matlab标转载 2018-01-04 21:41:10 · 6566 阅读 · 1 评论 -
【计算机视觉】matlab编程实现根据PNP求解位姿(有问题版)
clc;clear all;n=4;f=1000;pw3=zeros(n,3);%物体坐标3维pc2=zeros(n,2);%成像坐标2维pw3=[-1000,-100,0;1000,-100,0;-1000,100,0;-1000,100,0];pc2=[-67.8995,-56.3607;83.138,43.324;73.6759,61.1555;-75.8558,-39.52原创 2018-01-19 22:29:28 · 5534 阅读 · 2 评论 -
【计算机视觉】摄像机标定 matlab toolbox_calib工具箱(单目标定和双目标定)
1 整体介绍相机标定为Matlab工具箱http://www.vision.caltech.edu/bouguetj/calib_doc/相机标定为Matlab工具箱 这是一个释放相机标定为Matlab工具箱 庐 完整的文档。 这个文档可能 也被用作一个教程自它原创 2017-05-06 22:58:20 · 8725 阅读 · 0 评论 -
【计算机视觉】全景相机标定(MATLAB/opencv)
新的标定工具箱: 不需要先验知识的相机或镜像参数和我们只保持的灵活性 必须为每个校准网格选择4分(我们不 需要单独选择每个角落)。包含投影模型的函数(和雅克比)是可用的 在Matlab分别作为一个c++类相关的墨西哥人的功能。 类初始化在校准过程中生成的文件。 它使3 d点的投影也像点的提升 投影射线。这个新的“ 全景 标定工具箱 ”是一个完整的重写之前的版本。 它使用一些功能从“ 加州理工学院 标定工具箱“让Bouguet。这个页面给出的一个例子 校准会话。 这些图片 是 用于尝试工具箱。 你可以找原创 2017-06-04 16:56:22 · 11428 阅读 · 1 评论 -
【matlab图像处理】生成棋方格,五子棋标定板(设置个数,尺寸,打印)
五子棋%% 五子棋clear all;clc;close allpha=0:pi/20:2*pi;%角度[0,2*pi]R=0.75;%半径x=R*cos(pha);y=R*sin(pha);n=5;for i=1:2:nfor j=1:2:nplot(i+x,j+y,'-');axis equalfill(i+x,j+y,'k');hold onen原创 2018-01-04 22:27:38 · 4548 阅读 · 0 评论 -
【视觉 SLAM 1】 视觉SLAM- RGBD 加 语义分割 1 (需要RGBD相机)
用深度学习技术分析RGBD数据,实现三维物体分类 视觉SLAM附言--前文涉及单目视觉,立体视觉。 全向(全景)视觉有待进一步介绍,介绍了标定知识。 RGBD视觉本文简要介绍0 前言 SLAMSLAM (simultaneous localization and mapping),也称为CML (Concurrent Mapping and Localiz原创 2017-06-04 23:26:58 · 3526 阅读 · 0 评论 -
【视觉 SLAM-2】 视觉SLAM- ORB 源码详解 2
1 ORB-SLAM2源码详解 by 吴博2 https://github.com/raulmur/ORB_SLAM2ORB-SLAM2源码详解 by 吴博发布时间:2016年11月13日 22:09:30 浏览数:5380次 来自:微信该算法以单目为主,但同样适用于双目和RGB-D摄像头。ORB-SLAM算法和PTAM具有相同的算法框架,采用多线程原创 2017-07-03 16:37:33 · 9884 阅读 · 0 评论 -
【计算机视觉】 相机姿态估计之标记检测-Aruco模块常见问题解答 6
Aruco模块常见问题解答原文来源 opencv http://docs.opencv.org/master/d1/dcb/tutorial_aruco_faq.html这是一个编译的问题可能是有用的对于那些想要使用aruco模块。我只想标签一些对象,我应该使用什么?在这种情况下,您只需要单一ArUco标记。 您可以将一个或多个标记不同的id在每个对象的识别。翻译 2017-06-04 16:02:20 · 4031 阅读 · 0 评论 -
【视觉-双目三维重建-理论篇】双目三维重建----论文调研2
双目视觉三维调研方法总结基于连续视差空间算法立体匹配算法基于连续视差空间算法采用欧式投影误差作为离群准则函数,建立RANSAC算法D-H方法几何法和解析法相结合的方法结合图像速度和视差信息,通过最小二乘方法对目标的相对运动状态进行了重构;将重构状态作为伪测量,引入线性化的相对运动模型,采用扩展卡尔曼滤波方法对连续多帧图像信息进行序贯处理以改善估计精度。原创 2017-07-03 15:28:36 · 3144 阅读 · 0 评论 -
【视觉-三维视觉技术-理论篇】三维视觉技术----双目立体视觉,结构光等-战略总结0
122格雷码结构光3D视觉技术及其仿真 122格雷码结构光3D视觉技术及其仿真作者冀然摘要结构光三维测量技术是解决非接触三维测量问题的一个有效途径,它弥补了传统机器视觉以二维强度图像恢复三维景物的过程中损失了深度信息的缺陷,可实现对三维景物的完整描述。本文采用3dsmax和Matlab软件对灰度格雷码结构光三维测量系统进行计算机仿真研究。系统采用按时间编码方式,用投射器向被原创 2017-07-03 15:52:54 · 7658 阅读 · 0 评论 -
【视觉-结构光三维重建-理论篇】结构光 三维重建----论文调研3
动态目标实时三维重建-结构光方案动态目标 三维重建Stripe boundary codes for real-time structured-light range scanning of moving objects我们提出了一种新的实时结构光扫描方法。在分析现有结构光技术的基本假设之后,我们基于编码投影条纹之间的边界,导出了一组新的照明模式。这些条纹边界码允许原创 2017-07-03 15:39:02 · 13990 阅读 · 0 评论 -
【视觉-单目三维重建-理论篇】单目视觉三维重建----论文调研1
几种方法调研结果1 非合作航天器位姿在轨测量方法的研究基于Rodrigues参数的目标相对状态确定算法(PR),并结合卡尔曼滤波,建立基于Rodrigues参数的扩展卡尔曼相对状态估计算法(PREKF)模型,对P4P的求解结果做进一步滤波处理,通过仿真实验对算法进行有效性分析,证明了PR算法与PREKF算法能够很好地解决Rodrigues参数的奇异问题,定位精度高,能够为在轨服务任务的原创 2017-07-03 15:19:34 · 14087 阅读 · 1 评论 -
【计算机视觉】 相机姿态估计之标记检测-ArUco钻石标记的检测4
ChArUco标识板和钻石标记,检测是基于前面发现ArUco标记。 ChArUco的情况下,使用标记选择通过直接看他们的标识符。 这意味着如果一个标记(包括在标识板)上发现的一个形象,它会自动认为属于标识板。 此外,如果找到标志板图像中不止一次,它将产生歧义,因为系统无法知道哪一个应该用于标识板。另一方面,钻石标记的检测不是基于标识符。 相反,他们检测是基于相对位置的标记。 因此,标记标识符可以重复相同的钻石或在不同的钻石,他们可以同时检测到没有歧义。 然而,由于发现标记的复杂性,基于他们的相对位置,钻石翻译 2017-06-04 10:54:31 · 3428 阅读 · 0 评论 -
【计算机视觉】 相机姿态估计之标记检测-ArUco标记检测1
姿态估计是非常重要的在许多计算机视觉应用程序:机器人导航、增强现实,和许多更多。 这个过程是基于找到对应点之间在现实环境和他们的2 d图像投影。 这通常是一个困难的一步,因此通常使用合成或基准标记使它更容易。最受欢迎的方法是使用二进制广场基准标记。 这些标记的主要好处是一个标记提供了足够的通讯(四角)获得相机的姿势。 同时,内部二进制编纂使他们特别健壮,允许应用错误检测和校正技术的可能性。翻译 2017-06-02 16:03:44 · 18049 阅读 · 2 评论 -
【计算机视觉】 相机姿态估计之标记检测-检测ArUco板2
ArUco板是一组标记,就像一个标志,它提供了一个单一的姿势相机。最受欢迎的板是一个标记在同一平面上,因为它可以很容易地印刷:然而,板并不局限于这种安排,可以代表任何2 d或3 d布局。板的区别和一组独立的标记,标记之间的相对位置板是已知的先验。 这允许的所有标记可用于估计相机的姿势对整个板。当你使用一组独立的标志,你可以估计每个单独标记的姿势,因为你不知道在环境中相对位置的标记。使用板的主要好处是:· 姿势估计更多功能。 只有一些标记进行姿态估计是必要的。 因此,构成可以计算出即使在遮挡或部分翻译 2017-06-02 16:00:15 · 5283 阅读 · 0 评论 -
ORB_SLAM2实战-(ORB_SLAM2-B)
https://www.jianshu.com/p/c3e8c88edb64ORB_SLAM安装源文件目录https://github.com/raulmur/ORB_SLAM2安装orb_slam首先需要安装依赖库安装Pangolinsudo apt-get install libglew-devsudo apt-get install cmakesudo apt-get install lib...原创 2018-06-25 17:32:27 · 1888 阅读 · 1 评论 -
双目标定:matlab自动标定相机参数方法
https://jingyan.baidu.com/article/22a299b5e6da909e18376a75.html双目标定是立体视觉系统中的一个关键步骤,双目标定的目的是获取相机的内参和外参,外参包括旋转矩阵和平移向量;在进行双目标定时,有两种常见的数据库:matlab视觉处理库和opencv开源视觉库;通常matlab中标定的结果比较稳定,可以在matlab中标定之后...转载 2018-08-10 19:52:46 · 2805 阅读 · 3 评论 -
·计算机视觉」立体视觉 对极几何 (Epipolar Geometry) 本质矩阵E 基础矩阵F
致敬 (参考书)永远的丰碑 必看的书计算机视觉中的多视图几何学习opencv (参考书) 联想:地球-南北极 对极几何本质矩阵(本征矩阵) 相机坐标系的关系基础矩阵 图像像素坐标系的关系(加入内参)先思考一个问题:用两个相机在不同的位置拍摄同一物体,如果两张照片中的景物有重叠的部分,我们有理由相信,这两张照片之间存在一定的对应关系,本节的任务就是如何描述它们...原创 2018-08-10 18:05:48 · 9037 阅读 · 5 评论