2025年ettercap 0.8.2教程(ettercap 0.8.3教程)

ettercap 0.8.2教程(ettercap 0.8.3教程)2 3 OpenCV 标定 2 3 1 绪论 主要介绍 OpenCV 自带标定例子的使用方法 OpenCV 包含两种标定文件 calibration cpp 是通过用户输入可选参数进行相机标定的程序 calibration artificial cpp 是用程序模拟相机标定的过程 用程序创建棋盘然后自主标定 通常 由相机采集棋盘格图像后进行标定 本文以 calibration

大家好,我是讯享网,很高兴认识大家。



2.3  OpenCV 标定

2.3.1  绪论

主要介绍OpenCV自带标定例子的使用方法。

OpenCV包含两种标定文件:

calibration.cpp:是通过用户输入可选参数进行相机标定的程序;

calibration_artificial.cpp:是用程序模拟相机标定的过程,用程序创建棋盘然后自主标定。

通常,由相机采集棋盘格图像后进行标定,本文以calibration.cpp为例介绍标定方法。

2.3.2   方法步骤

 1.标定文件路径:calibration.cpp 和 calibration_artificial.cpp位于opencv下sources/samples/cpp文件下;将所需的标定图像放在同一文件夹下。

2.生成标定图像列表

OpenCV自带imagelist_creator.cpp文件生成xml/yaml图像列表;

因此,首先采用imagelist_creator.cpp将棋盘格标定图像生成imagelist.yaml文件。

具体步骤:

①新建项目,在cpp文件夹中添加文件imagelist_creator.cpp,编写CMakeLiats.txt:

新建build文件夹,cmake编译得到imagelists可执行文件;

②打开命令窗口,找到build文件路径

输入命令:https://www.bilibili.com/read/imagelist  imagelist.yaml  left-0001.png left-0002.png left-0003.png left-0004.png ……left-0093.png

③回车执行,生成imagelist.yaml文件。如下:

3.标定步骤:

①移除imagelist_creator.cpp,添加calibration.cpp标定程序;将图片放在当前cpp目录下;

②打开calibration.cpp,将mode=DETECTION改成mode=CALIBRATED;

③cmake编译得到标定可执行文件calibration

④打开命令窗口,输入命令: ,开始标定………

⑤输出out_camera_data.yml 文件,得到标定文件;

3 新建RGBD数据集

3.1 准备工作

1.首先下载源码:git clone https://github.com/MRwangmaomao/KinectV2_dataset_make


讯享网

2.修改get_image.cpp源码:

(1)定位保存路径:

(2)定义保存文件:

(3) 订阅正确的图像话题:

3.定位到Data文件夹,新建rgb和depth两个文件夹。

4.编译源码

3.2 运行节点

1.运行Astra相机节点:roslaunch astra_camera astrapro.launch

2.运行数据采集节点 : rosrun dataset_make get_image_node    #程序中默认500张自动停止,可根据自己需要调整

3.手动移动Astra相机,进行图像采集,新建了三个数据集mydata1/mydata2/mydata3, 一个室外,两个室内。最后得到四个结果:rgb图像、depth图像、rgb.txt、depth.txt。

4.把功能包下的associate.py复制到Data/mydatax,使用命令:

以生成association.txt

4 相机运行实验

4.1 相机运行实际场景

4.1.1 配置相机标定内参

1.由于相机本身存在畸变,需要进行相机标定,减轻其的影响,在第三节中已经详细地介绍了相机标定的步骤,分别生成了红外相机和彩色相机的内参文件rgb.txt、depth.txt,将它们复制到Astra相机的ROS驱动包ros_astra_camera下面的cfg文件夹中。

2.为了在启动launch文件时调用内参文件,需要对其进行修改。

此处使用gedit编辑器打开launch文件并修改其25、26行内容,将内参文件的地址填写入内

随后向下,找到第84行修改为如下内容

3.在ROS工作空间的主目录下启动节点,进行相机的实际场景运行

【注意】这里的Asus.yaml文件实际上是一个相机内参数文件,理论上应该与相机驱动包内的相机内参数文件保持一致,如果效果不好,可保持默认的官方参数文件。

4.2 相机运行实际场景数据集

与运行数据集相似,需要启动相机驱动节点,进入ORB_SLAM2的主目录,之后输入命令:

即可完成数据集的运行。

                                                            (完结)

小讯
上一篇 2025-06-15 08:00
下一篇 2025-04-22 08:36

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/181661.html