相机标定 matlab opencv ROS三种方法标定步骤(3)

本文涉及的产品
资源编排,不限时长
简介: 三 ,  ROS 环境下 如何进行相机标定    刚开始做到的时候遇到一些问题没有记录下来,现在回头写的时候都是没有错误的结果了,首先使用ROS标定相机,  要知道如何查看节点之间的流程图  rosrun rqt_graph rqt_graph ,如何查看我们运行的节点  rosnode l...

 

三 ,  ROS 环境下 如何进行相机标定

    刚开始做到的时候遇到一些问题没有记录下来,现在回头写的时候都是没有错误的结果了,首先使用ROS标定相机,

  要知道如何查看节点之间的流程图  rosrun rqt_graph rqt_graph ,如何查看我们运行的节点  rosnode list,    查看运行的话题 rostopic list  或者rostopic list -v 查看每个节点的性质

    首先需要学习的是  wiki.ros.org/cv_bridge/Tutorials/UsingCvBridgeToConvertBetweenROSImagesAndOpenCVImages

    了解cv_bridge 这个程序包是连接ROS和Opencv的程序包,就好像是一个桥梁的作用一样,关系图:

                cvbridge4.png

     紧接着可以学习     wiki.ros.org/image_common?distro=indigo   这个就是就是教你如何去订阅和发布图像或者视频的话题等问题

      那么其中功能最多的就是   wiki.ros.org/image_pipeline?distro=indigo  这个程序包里面就有我们想要的相机标定的程序以及方法

同时最重要的是  要驱动摄像头安装包就在于  wiki.ros.org/image_pipeline?distro=indigo   这里我用的是USB 的就可以对应下载该程序包然后

catkin_make一下就可以驱动摄像头,可以看到原始图像,运行看到的结果:

顺利的启动摄像头就可以学习如何去标定相机了

 因为就是用别人的代码也没什么改动,所以直接下载所提及的程序包,然后catkin_make

一般都不会有什么错误出现,命令窗口执行            

                                               $ roscore

                                               $ roslaunch usb_cam usb_cam-test.launch   (可以在.launch文件里修改要用的摄像头,比如笔记本的摄像头是/dev/video0,外接USB摄像头是/dev/video1)

                                               $  rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.035 image:=/usb_cam/image_raw camera:=/usb_cam

   (这里的标定模板我是用A3纸张打印出来,为8*6     35mm的标定棋盘)

    所以   参数要改为与实际标定模板一致的数据        --size 8x6 --square 0.035               

   image:=/usb_cam/image_raw camera:=/usb_cam     就是要对应USB 摄像头的原始的节点和话题(我就刚开始没有对上号)

   (完全按照网上的步骤来是不会出现想要的结果的)

 我们可以使用  rosrun rqt_graph rqt_graph  来查看是否calibraton节点是否已经订阅成功如图:(倘若cameracalibrator与usb_cam没有订阅成功,就需要使用

rostopic list -v 查看话题)

  

运行的结果           如图

直到采集了50个采样点  左边的CALIBRATE变为绿色  就可以点击开始标定,结束后会将标定结果打印到命令窗口:

后续还有很多内容可以写上去,暂时就到这里

(大神请忽略,谢谢)

 

相关实践学习
使用ROS创建VPC和VSwitch
本场景主要介绍如何利用阿里云资源编排服务,定义资源编排模板,实现自动化创建阿里云专有网络和交换机。
阿里云资源编排ROS使用教程
资源编排(Resource Orchestration)是一种简单易用的云计算资源管理和自动化运维服务。用户通过模板描述多个云计算资源的依赖关系、配置等,并自动完成所有资源的创建和配置,以达到自动化部署、运维等目的。编排模板同时也是一种标准化的资源和应用交付方式,并且可以随时编辑修改,使基础设施即代码(Infrastructure as Code)成为可能。 产品详情:https://www.aliyun.com/product/ros/
相关文章
|
5月前
|
计算机视觉 索引
OpenCV4学习笔记(2):显示相机视频流的帧率
这篇文章是OpenCV4学习笔记的第二部分,介绍了如何通过OpenCV4在显示相机视频流时计算并显示其帧率,使用`getTickCount`和`getTickFrequency`函数来测量帧时间,并用`putText`在图像上绘制帧率信息。
OpenCV4学习笔记(2):显示相机视频流的帧率
|
8月前
|
算法 数据安全/隐私保护 计算机视觉
基于二维CS-SCHT变换和LABS方法的水印嵌入和提取算法matlab仿真
该内容包括一个算法的运行展示和详细步骤,使用了MATLAB2022a。算法涉及水印嵌入和提取,利用LAB色彩空间可能用于隐藏水印。水印通过二维CS-SCHT变换、低频系数处理和特定解码策略来提取。代码段展示了水印置乱、图像处理(如噪声、旋转、剪切等攻击)以及水印的逆置乱和提取过程。最后,计算并保存了比特率,用于评估水印的稳健性。
|
13天前
|
算法 Serverless
基于魏格纳函数和焦散线方法的自加速光束matlab模拟与仿真
本项目基于魏格纳函数和焦散线方法,使用MATLAB 2022A模拟自加速光束。通过魏格纳函数法生成多种自加速光束,并设计相应方法,展示仿真结果。核心程序包括相位和幅度的计算、光场分布及拟合分析,实现对光束传播特性的精确控制。应用领域涵盖光学成像、光操控和光束聚焦等。 关键步骤: 1. 利用魏格纳函数计算光场分布。 2. 模拟并展示自加速光束的相位和幅度图像。 3. 通过拟合分析,验证光束加速特性。 该算法原理基于魏格纳函数描述光场分布,结合数值模拟技术,实现对光束形状和传播特性的精确控制。通过调整光束相位分布,可改变其传播特性,如聚焦或加速。
|
5月前
|
算法 计算机视觉 Python
python利用opencv进行相机标定获取参数,并根据畸变参数修正图像附有全部代码(流畅无痛版)
该文章详细介绍了使用Python和OpenCV进行相机标定以获取畸变参数,并提供了修正图像畸变的全部代码,包括生成棋盘图、拍摄标定图像、标定过程和畸变矫正等步骤。
python利用opencv进行相机标定获取参数,并根据畸变参数修正图像附有全部代码(流畅无痛版)
|
5月前
|
传感器 机器人 测试技术
ROS相机内参标定详细步骤指南
本文是关于ROS相机内参标定的详细步骤指南,包括了标定的目的、原理、所需材料、具体操作流程以及标定结果的分析。文章以Ubuntu20.04和ROS1 Noetic为测试环境,适用于单目RGB相机的内参标定,使用ros-noetic-camera-calibration工具包进行操作,并提供了标定过程中的注意事项和建议。
353 1
ROS相机内参标定详细步骤指南
|
5月前
|
存储 Ubuntu 计算机视觉
使用ros标定相机的内参和外参
使用ros标定相机的内参和外参
222 2
|
5月前
|
算法 定位技术 vr&ar
一文了解PnP算法,python opencv中的cv2.solvePnP()的使用,以及使用cv2.sovlePnP()方法标定相机和2D激光雷达
一文了解PnP算法,python opencv中的cv2.solvePnP()的使用,以及使用cv2.sovlePnP()方法标定相机和2D激光雷达
898 0
一文了解PnP算法,python opencv中的cv2.solvePnP()的使用,以及使用cv2.sovlePnP()方法标定相机和2D激光雷达
|
5月前
|
存储 算法 Serverless
【matlab】matlab基于DTW和HMM方法数字语音识别系统(源码+音频文件+GUI界面)【独一无二】
【matlab】matlab基于DTW和HMM方法数字语音识别系统(源码+音频文件+GUI界面)【独一无二】
|
5月前
|
计算机视觉
【图像处理】基于灰度矩的亚像素边缘检测方法理论及MATLAB实现
基于灰度矩的亚像素边缘检测方法,包括理论基础和MATLAB实现,通过计算图像的灰度矩来精确定位边缘位置,并提供了详细的MATLAB代码和实验结果图。
150 6
|
5月前
|
算法 数据安全/隐私保护
基于星座图整形方法的QAM调制解调系统MATLAB误码率仿真,对比16,32,64,256四种QAM调制方式
本MATLAB 2022a仿真展示了不同QAM阶数下的星座图及误码率性能,通过星座图整形技术优化了系统性能。该技术利用非均匀分布的星座点提高功率效率,并通过合理布局增强抗干扰能力。随着QAM阶数增加,数据传输速率提升,但对信道质量要求也更高。核心程序实现了从比特生成到QAM映射、功率归一化、加噪及解调的全过程,并评估了系统误码率。
113 0

热门文章

最新文章

推荐镜像

更多