
14—相机和激光雷达标定
文章平均质量分 84
相机和激光雷达标定
点亮~黑夜
人工智能领域资深专家
本博客主要分享linux、python、人工智能、SLAM(主要是计算机视觉:目标检测、图像分割、人脸识别、GAN等)等前沿技术。同时大家相互交流的机会,疑难杂症、程序bug等等问题
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
使用ros标定相机的内参和外参
https://blog.csdn.net/learning_tortosie/article/details/79901255 # ros对相机标定,同时包含标定的理论知识,还有就是去图像畸变的实现。:https://blog.csdn.net/learning_tortosie/article/details/82347694 # 相机和雷达的联合标定。:https://blog.csdn.net/qq_41746268/article/details/84752914 # ros标定参考。原创 2024-11-20 15:43:49 · 1504 阅读 · 1 评论 -
右手坐标系,空间点绕轴旋转公式&程序(Python和C++程序)
会发现在维基百科上我们绕每个轴的旋转矩阵,斜对角的两个sin正弦值的正负号刚好是交换过来的,这个可能就可坐标系的选择有关了,我们这里选择的是。例如:(2, 0, 3)绕X轴顺时针旋转90度,旋转后的坐标为:(2, 3, 0)可能很多人还是记不住,我个人总结两个小技巧,很容易牢记。模块计算正弦sin和余弦cos输入的参数值都是。的相互转化(关于角度和弧度的更多介绍。顺时针旋转90度,为了。Z轴的坐标是不变化的。Z轴的坐标是不变化的。Z轴的坐标是不变化的。原创 2024-11-18 11:22:36 · 792 阅读 · 0 评论 -
python实现:旋转矩阵转换为四元数
【代码】python实现:旋转矩阵转换为四元数。原创 2024-11-18 11:16:40 · 558 阅读 · 0 评论 -
罗德里格斯公式推导,以及如何使用cv2.Rodrigues进行旋转矩阵和旋转向量之间的相互转化
因此通过这个旋转矩阵和我们用欧拉角转换得到的旋转矩阵也是有区别的!,但是我们通常需要把这个。会计算得到一个旋转向量。而opencv内置的。原创 2024-11-18 11:26:47 · 545 阅读 · 0 评论 -
python3 + opencv +pyzbar实时检测二维码 / 定位二维码,并绘制出二维码的框和提取二维码内容
二维码条形码二维码中包含的信息检测二维码的矩形框检测二维码的最小外接多边形框PIL读取的PIL.Image数据类型opencv读取的ndarray数据类型。原创 2024-11-18 11:28:06 · 1779 阅读 · 0 评论 -
AprilTags二维码的检测与应用
1、类似与 codes(Quick Response Code;全称为快速响应矩阵图码)2、AprilTags可以应用于:如下图是一个AprilTag Tag36h11的一张图:我们在相机标定的时候,还会用到很多AprilTags在一起组成的,如下图(图片来源):3、AprilTag family默认的是:Tag36h11,在AprilTags中有六个系列families:测试用例(参考)返回结果如下:结果中是用存储成字典类型的数据1、代码2、检测结果如下图:参考OpenMV是一款具有图像处理功能的单原创 2024-11-18 11:07:49 · 3277 阅读 · 1 评论 -
一文了解PnP算法,python opencv中的cv2.solvePnP()的使用,以及使用cv2.sovlePnP()方法标定相机和2D激光雷达
下面几种说法都是对pnp算法要做的事情的描述,大家自己体会一下1、PnP)是求解 3D 到 2D 点对运动的方法。它描述了当我们知道n 个 3D 空间点以及它们的投影位置时,如何估计相机所在的位姿。——《视觉SLAM十四讲》(参考2、通俗的讲,PnP问题就是在已知世界坐标系下N个空间点的真实坐标以及这些空间点在图像上的投影,如何计算相机所在的位姿。罗嗦一句:已知量是空间点的真实坐标和图像坐标,未知量(求解量)是相机的位姿。3、PnP是用来求解3D-2D点对运动的方法参考4、PnP问题就是指通过。原创 2024-11-18 11:21:12 · 3093 阅读 · 0 评论 -
把ros2录制的bag包转换为ros1格式的bag包
要先开启ros1录制包监听,然后在开启ros2播放包,如果顺序相反,就会认为造成开头一段数据没有录上!1、虽然是用ros2播放的ros2的bag包,但是因为已经和ros1建立起了桥,因此使用ros1的。当你看到ros2播放完bag包之后,ros1就可以。,这个库包主要是用于ros2和ros1之间的通信。2、在该终端下添加ros2和ros1的环境变量。2、ros2和ros1录制的文件格式。1、原始的ros2录制的bag包信息。2、转换到ros1之后的bag包信息。1、ros2和ros1录制的命令。原创 2024-11-15 15:24:39 · 1353 阅读 · 0 评论 -
根据相机旋转矩阵求解三个轴的旋转角/欧拉角/姿态角 或 旋转矩阵与欧拉角(Euler Angles)之间的相互转换,以及python和C++代码实现
完全平行(即 x c x_c xc平行于 x w x_w xw, y c y_c yc平行于 y w y_w yw, z c z_c zc平行于 z w z_w zw,且他们的方向都是相同的),需要旋转3次,设。2、C1绕其y轴旋转,得到新的坐标系C2(注意旋转轴为C1的y轴,而非C0的y轴);3、C2绕其x轴旋转,得到新的坐标系C3。1、C0绕其z轴旋转,得到新的坐标系C1;,就是沿XYZ三个轴进行旋转,参考。相机标定过程中,我们会得到一个。的欧拉角,再转换为旋转矩阵。旋转顺序为z y x。原创 2024-11-19 16:16:12 · 1251 阅读 · 0 评论 -
基于平面的约束2D激光雷达和相机的联合标定(2D Laser and Camera Calibration )原理及项目代码具体使用——旷视
标定原理如下图所示,相机通过二维码估计标定板平面在相机坐标系下的平面方程,由于激光点云落在平面上,将点云通过激光坐标系到相机坐标系的外参数 T c l T_{cl} Tcl 转换到相机坐标系,构建。我使用这个工具在作者给的测试bag包上标定的很好,但是我自己实际录制的包怎么测试结果都很差,不知道是我自己晃动的标定板的方式有问题,还是什么问题,当然,你在制作自己标定板的时候并不一定要求打印和上面一样大小的标定板,比如你是在A4纸上打印的,你只需要用尺子测量一下。如果你开启一个新的终端,要在终端中重新。原创 2024-11-19 16:14:36 · 1497 阅读 · 0 评论 -
从bag包中提取图片和点云数据为pcd格式点云文件
因此提取出之后的数据几乎是每一帧都是保持对齐的!在提取图片数据的时候,我的rosbag库包是在。环境下的,因此在运行程序的时候也是使用。1、使用rosbag库包提取图片数据。1、首先查看一下自己的bag包中,2、由于我相机和激光雷达采集数据的。3、下面提取数据保存的路径。作为解释器进行执行的!3、下面是完整的代码。原创 2024-11-19 16:13:08 · 431 阅读 · 0 评论