当前位置: 首页 > news >正文

使用usb-cam包时填充摄像头参数话题

问题描述:

在启动usb摄像头之后,像apriltag_ros等包需要读取摄像头的内参信息,但是usb-cam默认是没有内参信息发布的,需要自己填写或标定。


解决方案:

如果你有内参数据或者急于验证后续代码的逻辑正确性,那么直接在他要求的位置,添加一个内参文件即可:

touch ~/.ros/camera_info/head_camera.yaml

然后填上内参(注意camera_name需要为head_camera):

image_width: 640
image_height: 480
camera_name: head_camera
camera_matrix:
  rows: 3
  cols: 3
  data: [438.783367, 0.000000, 305.593336, 0.000000, 437.302876, 243.738352, 0.000000, 0.000000, 1.000000]
distortion_model: plumb_bob
distortion_coefficients:
  rows: 1
  cols: 5
  data: [-0.361976, 0.110510, 0.001014, 0.000505, 0.000000]
rectification_matrix:
  rows: 3
  cols: 3
  data: [0.999978, 0.002789, -0.006046, -0.002816, 0.999986, -0.004401, 0.006034, 0.004417, 0.999972]
projection_matrix:
  rows: 3
  cols: 4
  data: [393.653800, 0.000000, 322.797939, 0.000000, 0.000000, 393.653800, 241.090902, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000]

如果需要追求精确性,那么就要标定一下相机,有三个工具推荐:

  • MATLAB标定工具,比较方便,而且可以手动删除误差较大的图片,不想费事的推荐;
  • camera_calibration,官方标定工具,有可视化界面,较为简单;
  • kalibr,功能很多,包括单目、双目、摄像头-IMU联合标定,模型也比较多,可以选择更加精确的二维码标定板。

标定完成之后,依据上面的内参文件格式写到同样的位置即可。

相关文章:

  • 第27周JavaSpringboot git初识
  • 【商城实战(30)】从0到1搭建商城数据分析功能,开启数据驱动增长引擎
  • 数据可视化在特征分布对比中的应用
  • 【AI-Coding】聊聊AI--软件架构探索体验
  • Mysql - 日志相关问题
  • 【工具类】PDF文件转图片
  • 计算机网络 第一章:计算机网络和因特网(1)
  • CMake学习笔记(三):静态库,动态库的生成和使用
  • Python基础入门掌握(十三)
  • Linux应用:程序运行
  • ESP32学习 -从STM32工程架构进阶到ESP32架构
  • C++基础 [五] - String的模拟实现
  • 本地部署 RAGFlow - 修改默认端口
  • 基于javaweb的SpringBoot校园运动会管理系统设计与实现(源码+文档+部署讲解)
  • 其利天下技术·伺服电机在机器人技术中的应用
  • 深度解析ECharts.js:构建现代化数据可视化的利器
  • 1536数字三角形
  • 【位运算】速算密钥:位运算探秘
  • 深度剖析:Pytest Fixtures如何重塑自动化测试的可读性与高效性
  • ⭐算法OJ⭐克隆图【BFS】(C++实现)Clone Graph
  • AI把野史当信史?警惕公共认知的滑坡
  • 阿根廷发生5.6级地震,震源深度30公里
  • 侧记|“五五购物节”启动!最大力度补贴,买买买 “666”
  • 北部艳阳高照、南部下冰雹,五一长假首日上海天气很“热闹”
  • 魔都眼|买买买,老铺黄金新店开业被挤爆:有人排队5小时
  • 今年4月上海一二手房成交面积同比增21%,二手房成交2.07万套