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

两个镜头、视野、分辨率不同的相机(rgb、红外)的视野校正

文章目录

  • 背景
  • 实际效果
  • 查找资料
    • 资料1
    • 资料2
  • 解决方案
  • 最终结果

背景

目前在做的项目用到两个摄像头,一个是热成像摄像头、另一个是普通的rgb摄像头。
一开始的目标是让他们像素级重合,使得点击rgb图像时,即可知道其像素对应的温度。但是在尝试的过程中,发现基本不可能。因为由于纵深、遮挡、透视变形、视差等问题,两个摄像头拍摄到的东西可能会很不一样,对不上。
但是应该可以参考opencv的双目标定,做出横向对齐的效果。【opencv/samples/cpp/stereo_calib.cpp】
在这里插入图片描述

实际效果

但是尝试了直接用这个方法来操作,发现出来的效果简直毫无效果,画面随意飞,有时整个画面黑屏,看不到任何东西。

查找资料

然后不断地找资料,发现很早之前就有人尝试了类似的想法了。

资料1

【stereoCalibrate for different cameras (rgb and infrared)】
这个人有一组照片,里面有rgb照片以及与其对应的ir照片,他放在这里,可以从这里下载(需要梯子)【rgb+ir】。
在这里插入图片描述他的需求也是实现两个相机画面的极平面、极线对齐。直接用了stereoCalibrate出来的效果不好。
他提出这个问题之后,有个人【BConic,之前好像是叫AldurDisciple】回答了他。说可以尝试一下先独立地对每个相机进行标定,得到相机内参,然后再设置参数 CALIB_USE_INTRINSIC_GUESS + CALIB_FIX_INTRINSIC 去使用stereoCalibrate,应该能够取得较好的效果。
在这里插入图片描述

从后续来看,提出问题的人【DmT021】反馈基本解决了问题。

资料2

从另外一篇问答【Big reprojection error while using OpenCV cvStereoCalibrate to calibrate a pair of cameras with different resolution】来看,这种先独立标定再联合求解的方法应该是可行的。
在这里插入图片描述

解决方案

先独立地对每个相机进行标定,然后再联合使用stereoCalibrate进行标定。
在进行标定之前,先对图像进行剪裁、缩放,使他们具有同样的尺寸。(上面的资料好像说不用同样尺寸也行,暂时不清楚他们是如何使用的)
在使用stereoCalibrate时,注意参数为CALIB_USE_INTRINSIC_GUESS + CALIB_FIX_INTRINSIC 。

最终结果

一般,但是咬咬牙应该也可以用。
两个图像都旋转且裁剪了很多。有可能是我的样本的问题,后面采集多一些不同角度的再来标定试试。
在这里插入图片描述


参考:
【基于OpenCV的双目测距系统实现】
【双目相机标定以及立体测距原理及OpenCV实现】

http://www.lryc.cn/news/110942.html

相关文章:

  • kettle 连接jdbc
  • PyTorch中加载模型权重 A匹配B|A不匹配B
  • @FeignClient指定多个url实现负载均衡
  • vue diff 双端比较算法
  • 初识React: 基础(概念 特点 高效原因 虚拟DOM JSX语法 组件)
  • 自监督去噪:Neighbor2Neighbor原理分析与总结
  • 简单工厂模式(Simple Factory)
  • Agent:OpenAI的下一步,亚马逊云科技站在第5层
  • JMeter 4.x 简单使用
  • 深入NLTK:Python自然语言处理库高级教程
  • React 用来解析html 标签的方法
  • 【C++】做一个飞机空战小游戏(五)——getch()控制两个飞机图标移动(控制光标位置)
  • Flask 是什么?Flask框架详解及实践指南
  • C. Mark and His Unfinished Essay - 思维
  • Java的变量与常量
  • C# Blazor 学习笔记(6):热重置问题解决
  • 一百四十六、Xmanager——Xmanager5连接Xshell7并控制服务器桌面
  • 用Rust实现23种设计模式之 模板方法模式
  • python与深度学习(十三):CNN和IKUN模型
  • 题目:2283.判断一个数的数字计数是否等于数位的值
  • 任务14、无缝衔接,MidJourney瓷砖(Tile)参数制作精良贴图
  • 【uniapp APP如何优化】
  • uni-app——下拉框多选
  • 从excel中提取嵌入式图片的解决方法
  • python socket 网络编程的基本功
  • 【element-ui】form表单初始化页面如何取消自动校验rules
  • git 公钥密钥 生成与查看
  • 数据标注对新零售的意义及人工智能在新零售领域的应用?
  • 命令模式-请求发送者与接收者解耦
  • 【雕爷学编程】Arduino动手做(186)---WeMos ESP32开发板