自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

开源节流

欢迎交流评论留言,有不到之处请指教。

  • 博客(337)
  • 收藏
  • 关注

原创 【硬件应用】ZED-F9P/F9K开发板、TDA4(汽车领域的芯片)

ZED-F9P/F9K开发板MH16-F9千寻位置 RTK北斗GPS模块/ZED-F9P/F9K开发板u-blox宣布推出首款基于u-blox F9技术的高精度GNSS模块2018年4月26日,中国北京——全球定位及无线通信技术领先供应商u-blox公司(SIX:UBXN)近日宣布推出集成多频段实时动态(RTK)技术的ZED-F9P多频段GNSS模块,该模块可用于机器控制、地面机器人车辆和高精度无人机(UAV)应用。ZED-F9P的尺寸仅为22 x 17 x 2.4 mm,采用最新推出的u-

2021-08-05 16:11:47 6047 2

转载 Python编程实现点到直线距离计算

在实现TextMountain时,生成TCBP时需要计算文本区域点到四条边的距离,由于计算量大,所以最好是使用矩阵运算,提高运行效率。基础讲解:由于需要使用到矩阵运算,最好采用向量的方法来进行表示。为了讲述方便,我们设直线为x轴,用向量oq表示,对于点p,要计算p到直线oq的距离,我们可以任取直线上一点(这里取o)得到向量op,根据图中公式可以求得点到直线的垂足d到点p的向量dp(x,y),则点到直线的距离为sqrt(xx+yy)编程实现 def get_pt_l

2021-06-09 20:04:00 3851

原创 相机模型-鱼眼模型/鱼眼镜头标定基本原理及实现(2)

鱼眼相机模型 (fisheye camera model) 模型介绍 等距投影 等立体角投影 正交投影 体视投影 线性投影 Kannala-Brandt 模型 去畸变过程 投影过程 反投影过程 雅可比计算之前总结了一下针孔相机的模型,然后得到了比较积极的回复(其实是我到处求人关注的,虽然截至到目前才三个人),所以就再接再励,乘胜追击(也没得办法,夸下...

2021-05-31 19:16:26 13104 5

转载 相机模型-鱼眼模型/Omnidirectional Camera(1)

Omnidirectional CameraDavide ScaramuzzaDefinition 定义omnidirectional camera (from omni, meaning all) 广角相机: 在一个水平面有360度视野的相机,或视野能覆盖半个球或近似整个球的相机Background 背景知识大多数商业相机可以使用 pinhole 相机模型来描述,使用一个 perspective projection 来建模。但是存在一些高畸变成像设备如广角相机,它们不能使用传统小孔相机模型

2021-05-31 19:11:45 7271 1

转载 【学习linux】oh-my-zsh 国内安装及配置

安装 zshubuntu 下:sudo apt-get install zshmac下:brew install zsh 后面的内容两个系统通用安装 oh-my-zshwget https://gitee.com/mirrors/oh-my-zsh/raw/master/tools/install.sh然后给install.sh添加权限:chmod +x install.sh然后执行install.sh:./install.sh如果发现很慢,可以修改为gite...

2021-05-17 10:10:17 1143

原创 [学习lcm]样例实践(Python API)

lcm实例(Python API)文件夹结构./python$ tree -L 1.├── cleanup.sh├── example_t.lcm├── gen-types.sh├── listener.py├── listener_select.py├── read-log.py├── readme.md└── send-message.py0 directories, 8 files 1.文件example_t.lcm 内容:pack...

2021-04-25 19:56:43 816

转载 [学习LCM]lcm教程与实例(C++ API)

背景Ubuntu 16.04C++ APIlcm 1.301. 安装版本: 1.3.0, 下载安装 autoconf :$ sudo apt-get install autoconf解压, 编译, 在LCM目录下执行:$ autoreconf -i$ ./configure$ make -j8 -l8$ sudo make install安装位置:/usr/local/: 在/usr/local/bin目录下安装lcm-gen, lcm-logger, ...

2021-04-21 10:39:41 4489 1

原创 【智慧城市】交通路口摄像头转俯视图

2021-04-19 15:18:20 598 1

原创 [学习SLAM]ROS下robot_pose_ekf扩展卡尔曼融合包的使用案例(robot_pose_ekf) 篇章 (3)

最近在使用imu进行数据融合,使用的是robot_pose_ekf的融合包,发现网上的教程太不详细,折腾了1个月,终于搞定了。于是乎,想写一个关于ekf包的使用教程。里程计和惯导模块imu的数据融合来得到一个不易丢失的机器人姿态。首先,你得有一个imu,而且得校准好,我使用的是razor 9dof的imu,通过ros包pub一个Imu的data类型。这是我google的比较有用的一个ekf包的使用教程首先,先给大家看下我的tf!单里程计的tf这张图是单使用里程计的tf图片,你可以...

2021-03-04 16:44:07 3141 4

转载 [学习SLAM]基于EKF的Odometry+IMU+VO+GPS融合定位(robot_pose_ekf) 篇章 (1)

了解ROS的robot_pose_ekf软件包中扩展卡尔曼滤波器的用法:robot_pose_ekf软件包用于基于来自不同来源的(部分)位姿测量值来估计机器人的3D姿势。它使用带有6D模型(3D位置和3D方向)的扩展卡尔曼滤波器,将来自车轮里程计,IMU传感器和视觉里程计的测量结果结合起来。基本思想是提供与不同传感器的松散耦合集成,其中传感器信号以ROS消息的形式接收。主页:http://ros.org/wiki/robot_pose_ekfGithub:https://github.co..

2021-03-04 16:22:21 3420 2

原创 [学opencv]opencv Mat类型初始化,遍历,赋值

1.opencv Mat类型定义 cv::Mat a(cv::Size(w,h),CV_8UC1); // 单通道 cv::Mat b = cv::Mat(cv::Size(w,h),CV_8UC3); //3通道每个矩阵元素包含3个uchar值对于维数较小的Mat类型,直接定义赋值方法如下:Mat mtest = (Mat_<float>(4, 1) <...

2021-02-05 13:56:32 2877

原创 [学习SLAM]使用 Ceres 拟合曲线(ch6)

// 构建最小二乘问题 ceres::Problem problem; for ( int i=0; i<N; i++ ) { problem.AddResidualBlock ( // 向问题中添加误差项 // 使用自动求导,模板参数:误差类型,输出维度,输入维度,维数要与前面struct中一致 ...

2021-02-02 19:46:27 502

原创 [学习SLAM]VINS中IMU预积分的误差推到公式与代码雅克比(协防差/信息矩阵)构建

//todo /** *IMU预积分中采用中值积分地推jacobian和covariance **/ void midPointIntegration(double _dt, const Eigen::Vector3d &_acc_0, const Eigen::Vector3d &_gyr_0, const Eigen::Vector3...

2021-01-29 15:06:16 1326 1

转载 [学习SLAM]基于EKF使用 robot_pose_ekf 对imu和odom进行融合定位(robot_pose_ekf) 篇章 (2)

使用 robot_pose_ekf 对imu和odom进行融合 robot_pose_ekf 是 ROS Navigation stack 中的一个包,通过扩展卡尔曼滤波器对 imu、里程计 odom、视觉里程计 vo 的数据进行融合,来估计平面移动机器人的真实位置姿态,输出 odom_combined 消息。robot_pose_ekf 只适用于平面上的轮式移动机器人,因此 odom 信息中的 z,pitch 和 roll 分量可以被忽略。IMU 可以提供车体坐标系相对于世界坐标系的姿态(R...

2021-01-28 11:26:59 5696 7

转载 [学习IMU](MEMS 三轴加速计、三轴陀螺仪、三轴磁力计)6轴IMU+磁力计,9轴传感器讲解

1、三轴加速度计(1)测量比力三轴加速度计是一种惯性传感器,能够测量物体的比力,即去掉重力后的整体加速度或者单位质量上作用的非引力。当加速度计保持静止时,加速度计能够感知重力加速度,而整体加速度为零。在自由落体运动中,整体加速度就是重力加速度,但加速度计内部处于失重状态,而此时三轴加速度计输出为零。(2)测量角度三轴加速度计的原理能够用来测量角度。直观地,如图所示,弹簧压缩量由加速度计与地面的角度决定。比力能够通过弹簧压缩长度来测量。因此在没有外力作用的情况下,加速度计能够精确地测量

2021-01-19 11:27:37 17223 2

转载 [学习SLAM]最小二乘、梯度下降法、牛顿与高斯-牛顿与LM关系总结

目录一、最小二乘法引出1、线性最小二乘与非线性最小二乘的关系2、梯度下降法二、非线性最小二乘(高斯牛顿、LM)三、线性最小二乘SLAM的优化方法是基础知识,尤其最小二乘法是所有优化的基础。接下来将对以下知识进行总结。最小二乘法 非线性:最速下降法、牛顿法、高斯牛顿法(GN)、列文伯格-马夸尔特(LM)联系 线性:QR分解、乔姆斯基分解法求解(Cholesky)、奇异值分解(SVD)一、最小二乘法引出最小二乘问题通常可以表述为,通过搜集到的一些数据(获取得到的样本)...

2020-12-21 11:16:29 1465

原创 【学习SLAM】vins笔记

bool GlobalSFM::solveFrameyPnP(Matrix3d &R_initial, Vector3d &P_initial, int i,vector<SFMFeature> &sfm_f)

2020-12-09 18:43:35 997

转载 [学习SLAM]DSO跑KITTI数据集

安装DSO此步非常简单,安装也很快,不详述,【参考博客】或【GitHub源网页】写在前面 数据集中的camera.txt文件是可以更改的,且需要改成对应的相机参数 图片的大小可以不用更改为一般的1280x1024,就保持KITTI数据集的图片尺寸就行 图片的扩展名不用更改 times.txt文件也可以不自己做(取巧的办法,甚至可以不需要) 可以不用压...

2020-12-09 18:22:30 1399

转载 [学习SLAM]超声波控制小车避障

超声波测距原理主要利用单片机的定时、计数器。超声波在空气中的传播速度为340m/ s,根据计时器记录的时间t ,就可以计算出发射点距障碍物的距离 s,即s=340×t/2,在测距计数电路设计中,采用了相关计数法,其主要原理是:测量时单片机系统先给发射电路提供脉冲信号,单片机计数器处于等待状态,不计数;当信号发射一段时间后,由单片机发出信号使系统关闭发射信号,计数器开始计数,实现起始时的同步;当...

2020-12-09 18:21:38 4646

原创 【学习opencv】从运动中恢复结构SfM-场景重建,三维重建[匹配]

示例./sfm_match_reconstruct----------------------------Reconstruction:============================Estimated 3D points: 108 //pt2d1[i] = pt2d1[i].reshape(1, 108).t();Estimated camera...

2020-12-09 18:20:05 727

转载 [学习SLAM]DSO半稠密点云生成工具

介绍: 半稠密点云的生成主要通过两个方面: 1)把多个Frame的像素投影到同一个Frame上面,计算这一个Frame上面像素的深度。这种做法不考虑像素之间的相关性。但其实像素之间是有相关性的,因为3d空间中的表面大都是连续的,所以相邻像素的深度的变化应该也是连续。 2)通过深度的连续性不断扩展不能通过视察计算出来的那些像素的深度。 有一类算法叫做...

2020-12-09 18:18:47 969

原创 [学习SLAM]DSO光度标定程序配置和使用(2)

https://blog.csdn.net/LaplaceSmoothing/article/details/91411710https://gitee.com/NEU-Cloud_Robot/mono_dataset_code1 opencv 本版问题libeigen3-dev 已经是最新版 (3.3~beta1-2)。libopencv-dev 已经是最新版 (2.4.9.1+d...

2020-12-09 18:17:35 711

原创 [学习SLAM]DSO 代码框架

框架流程代码框架与数据表示现在我们来看DSO的大体框架。我去除了一些不重要的类和结构,方便读者阅读。DSO整体代码由四个部分组成:系统与各算法集成于src/FullSystem,后端优化位于src/OptimizationBackend,这二者组成了DSO大部分核心内容。src/utils和src/IOWrapper为一些去畸变、数据集读写和可视化UI代码。先来看核心部分的Fu...

2020-12-09 18:16:09 1443

原创 [学习SLAM]两平面法向量与旋转向量/旋转矩阵,根据两平面法向量进行旋转

根据旋转前后的向量值求旋转矩阵如果已知旋转前后的一向量的变化,那么该如何求这个旋转矩阵呢?本篇结合Rodrigues' rotation formula,介绍一下该旋转矩阵的求法。1.旋转角度已知旋转前向量为P, 旋转后变为Q。由点积定义可知:可推出P,Q之间的夹角为:2. 旋转轴由1中可知,旋转角所在的平面为有P和Q所构成的平面,那么旋转轴必垂直该平面。假定旋转前...

2020-12-09 18:10:55 4742 1

原创 [学习SLAM]视觉里程计 /C++中双冒号(::) 和 冒号(:) 的用法

//-- 验证E=t^R*scaleMat t_x = ( Mat_<double> ( 3,3 ) << 0, -t.at<double> ( 2,0 ), t.at<double> ( 1,0 ), t.at<double> ( 2,...

2020-12-09 18:09:59 444 1

原创 [学习SLAM]SLAM中的旋转可视化(欧拉角,四元数,旋转向量)

1 位置轨迹ORB_SLAM2 欧拉角数据ORB_SLAM2四元数数据ORB_SLAM2旋转向量数据将旋转向量的Y角度 (-180~180转0~360)

2020-12-09 18:08:46 718

翻译 [学习SLAM]loam_velodyne的安装与使用1

loam_velodyne从nsh_indoor_outdoor.bag创建的示例地图(使用ccviewer打开)Sample map built from nsh_indoor_outdoor.bag (opened with ccViewer)用ROS Indigo和Velodyne VLP16测试白色勾号。(屏幕放映) (Screencast)所有资料均取自ROS文件 ROS d...

2020-12-09 18:08:33 2617 1

原创 [学习SLAM]LOAM (Lidar Odometry and Mapping in Real-time)

L-SLAM相关论文LOAM: Lidar Odometry and Mapping in Real-time, 2014概述:该论文是Lidar 3D SLAM的经典之作,作者另辟蹊径将复杂的SLAM问题分为:1. 高频的运动估计; 2. 低频的环境建图,巧妙地解决了实时性的难题。该解决方案也长期位居KITTI Odometry评测榜的前3名。论文笔记:LOAM 论文原理分析简...

2020-12-09 18:08:00 754

原创 [学习SLAM]保存并查看Loam的三维点云地图

Loam的安装及运行方法可以参考 https://blog.csdn.net/qq_36396941/article/details/82973772本文提供ROS wiki http://wiki.ros.org/loam_velodyne上无imu信息的bag百度云链接链接: https://pan.baidu.com/s/18ISyr4ky2MfTl7TXJD2W-A 提取码: 2...

2020-12-09 18:07:51 906

原创 [学习SLAM]SLAM 中evo的代码详解(三)

目录associate.py 时间戳匹配evaluate_ate.pySVD分解evaluate_rpe.pytransform44(l):四元数q转旋转矩阵R​ominus(a,b)计算a和b之间的相对3d变换。scale(a,scalar):计算尺度compute_distance/compute_anglecontrib(TUM时间乘某数,并KITTI时间...

2020-12-09 18:03:56 1252 1

转载 [视觉测距]单目视觉定位测距的两种方式(1)

单目定位和双目定位的选择,我觉得主要还是成本和时间的考虑。之前也尝试过双目定位,感觉要更精准些,但双目测距需要对两幅图像进行图像变换和极线匹配,稍微耗时了一些。这几天尝试了一下单摄像头进行测距定位,主要有两个思路:1.定位测量插值得到每个像素的实际坐标 该方法总觉得有很大的问题:一个是摄像头安装后就必须固定不动,稍微的旋转都会导致之间测量的像素点对应的坐标偏...

2020-12-09 18:03:27 6015 3

转载 [自动驾驶] 自动驾驶高精度地图——3D 道路环境的重建

1,高精度地图是对 3D 道路环境的重建高精度地图是实现 L3 级别以上辅助/自动驾驶的重要一环。高精度地图是指高精度、精细化定义的地图,可以描述为对3D道路环境的重建。高精度地图含有大量道路矢量元素信息(车道线位置、类型、宽度等)以及车道周边的固定对象信息(交通信号灯、交通标志、障碍物、路边地标等),形成对路网精确的三维表征(厘米级精度),比如路面的几何结构、道路标示线的位置、周边道路环境的...

2020-12-09 18:01:33 1513

原创 [学习opencv]直线段检测算法/直线提取算法--LSD:a Line Segment Detector

LSD(Line Segment Detector)直线提取算法LSD是2010年发表在ipol上的一篇论文提出的直线提取算法,在较短的时间内可以提取一张灰度图上所有的线段特征。(文中提到了a contrario model 和 Helmoholtz principle,在这篇文章中并没有进行讲解)总体流程图LSD算法是基于梯度的,但是为了减少梯度的依赖性,LSD算法也做了一些必要的优...

2020-12-09 18:00:41 9744

原创 [学习OpenCV]OpenCV drawMatches – queryIdx和trainIdx,H矩阵

这是OpenCV的drawMatches()功能:void drawMatches(Mat img1, vector<KeyPoint> keypoints1, Mat img2, vector<KeyPoint> keypoints2, vector<DMatch> matches, ...

2020-12-09 17:59:55 5696

原创 【学习OpenCV】基于opencv的直线和曲线拟合与绘制(最小二乘法)

自动驾驶工具箱-车道保持辅助与车道检测 最小二乘法多项式曲线拟合,是常见的曲线拟合方法,有着广泛的应用,这里在借鉴最小二乘多项式曲线拟合原理与实现的原理的基础上,介绍如何在OpenCV来实现基于最小二乘的多项式曲线拟合。概念最小二乘法多项式曲线拟合,根据给定的m个点,并不要求这条曲线精确地经过这些点,而是曲线y=f(x)的近似曲线y= φ(x)。原理给定...

2020-12-09 17:58:03 15400 2

原创 【学习SLAM】ORB_SLAM2 双目测试(2)

双目参数文件详解 (万能P2/Pr) 1 Camera.fx /fy.cx,cy ;2 Camera.bf ; 3 P2(4)/1000 ; 4 ThDepth=50/20a. Camera.bf中的b指基线baseline(单位:米),f是焦距fx(x轴和y轴差距不大),bf=b*f=T(1)*Camera.fx=P2(4)/1000,和ThDepth一起决定了深度点的范围:bf *...

2020-12-09 17:57:22 3024 2

原创 【学习SLAM】ORB_SLAM2 双目测试(1)

针对双目相机和RGB-D相机的ORB-SLAM2建立在单目ORB-SLAM的基础上,它的核心组件,如图2所示。图2 ORB-SLAM2由三个平行的线程组成,跟踪,局部建图和回环检测。在一次回环检测后,会执行第四个线程,去执行BA优化。跟踪的线程在双目或者RGB-D输入之前进行,因此剩下的系统模块能够跟传感器模块独立运行。单目的ORB-SLAM2工作图也是这幅图。这个...

2020-12-09 17:57:17 2320

原创 [学习SLAM]单应性矩阵的理解及求解

单应性概念的引出 我们在这里引入一个新的概念:单应性(Homography)变换。可以简单的理解为它用来描述物体在世界坐标系和像素坐标系之间的位置映射关系。对应的变换矩阵称为单应性矩阵。在上述式子中,单应性矩阵定义为: 其中,M是内参矩阵 成像几何模型已经得到了像素坐标系和世界坐标系下的坐标映射关系: 其中,u、v表示...

2020-12-09 17:54:40 2571

原创 [学习SLAM]根据F或E求解RT的ORB_SLAM2与opencv的对比分析

本文主要的本文主要的目的是对比。分析。Slam中的rt求解。和opencv的。Rt求解。在算法和代码上有什么区别和联系。ORB_SLAM2 计算 F21 的代码:cv::Mat Initializer::ComputeF21(const vector<cv::Point2f> &vP1,const vector<cv::Point2f> &vP2...

2020-12-09 17:52:16 2118

转载 [学习SLAM]DSO光度标定程序配置和使用(1)

光度标定原理详见:DSO之光度标定一、项目地址https://github.com/tum-vision/mono_dataset_code对应论文《A Photometrically Calibrated Benchmark For Monocular Visual Odometry》二、安装1.下载源码git clone https://github.com/tum...

2020-12-09 17:50:50 1455

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除