双目结构光 实现高度测量

news2024/11/28 1:54:39

这里使用了两个大恒金星相机,一个投影仪。

相机镜头以及投影仪的架设:

相机镜头以及投影仪的架设:

注意相对位置的摆放,投影仪的光源照亮范围要超过相机的视野。

相机与光源调整好位置后,调整成像效果。两个镜头的光圈尽量保持一致,对焦可以先把镜头光圈开到最大,然后调整调焦环使得成像清晰。为了确保景深,在对焦好后再把光圈调小。确保在标定的时候,标定点能拍摄清楚。

相机的参数对应好。

这里使用的是大恒金星相机,型号为:

VEN-301-125U3M-FPC

 

正在上传…重新上传取消

相机参数如下:

 

正在上传…重新上传取消

使用的大恒镜头型号为:HN-P-1628-6M-C2/3

* 进行左右相机和中间光源的初始位姿设置

*左摄像机内参:(0.016(代表搭配的镜头焦距16mm)0.00000345(相机的像元大小为3.45μm),2048*1536(相机的分辨率参数)

gen_cam_par_area_scan_polynomial (0.016, 0, 0, 0, 0, 0, 0.00000345, 0.00000345, 2048/2, 1536/2, 2048, 1536, StartCamParL)

*中间光源内参:(这里用的是投影仪的参数,分辨率为1280*720)

gen_cam_par_area_scan_polynomial (0.010, 0, 0, 0, 0, 0, 0.0000054, 0.0000054, 1280/2, 720/2, 1280, 720, StartProPar)

*右摄像机内参:()

gen_cam_par_area_scan_polynomial (0.016, 0, 0, 0, 0, 0, 0.00000345, 0.00000345, 2048/2, 1536/2, 2048, 1536, StartCamParR)

标定注意事项

在标定的时候,同时使用条纹结构光。

在多次实测的情况下,根据现象来看,使用黑白条纹光源标定的效果更好。

重建的时候,用绿色条纹光源的效果更好。

通过修改参数设置条纹颜色。

 

正在上传…重新上传取消

这里使用的是圆点标定板。

标定板参数记得和实际使用的标定板参数一致。否则找标定板会出错。

生成圆形标定板文件。

gen_caltab (7, 7, 0.0125, 0.5, 'caltab.descr', '1031caltab.ps')

这里代表的mark点个数是7*7,两个mark点之间的距离是0.0125m,也就是12.5mm,0.5代表mark点的直径/mark点之间的距离=0.5。

标定的图片数量,实测5张数量足够。

标定的时候,摆放标定板的位置差异实测也不需要太大,前后距离稍微调整一下。

标定误差Error正常在1以下。

标定数据截图 

标定error

重建的时候报错:

标定数据截图2:

 

标定结果  曝光时间80ms

 

重建的时候报错:

 

 

 

 

重建报错 

 

标定板位置没有移动过

标定数据截图:(曝光时间20ms)

 

 重构的时候报错

 

 标定数据截图

Mingraydiffrence从30改到15.

 

 

 

 

 

 

 

 

 

 标定结果误差

重建报错

标定数据:

 

 

 

 

 

 

 

 

 

 标定结果

 

 

标定数据1:

 

 

 

 

 标定结果误差 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/664794.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

传教士与野人过河问题(numpy、pandas)

努力是为了不平庸~ 学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。 目录 一、问题描述 二、问题解释 1.算法分析 2.程序执行流程 3.编写程序对问题进行求解 三、问题思路 1. 算法分析: 2. 实验执…

flink 实时数仓构建与开发[记录一些坑]

记-flink 实时数仓搭建、开发、维护笔记 业务场景描述数仓架构数仓分层odsdimdwddws 数仓建模注意项数仓建模开发规范命名规范 问题与原因分析1、debezium 采集pg 表,数据类型问题2、业务库出现大批量刷表数据,debezium采集connector 可能会挂3、业务库出…

MySQL面试题--索引概念以及底层

目录 概述 索引的底层数据结构 二叉树 B树 B树 B树与B树对比: 面试回答 大纲 回答 概述 索引(index)是帮助MySQL高效获取数据的数据结构(有序)。 在数据之外,数据库系统还维护着满足特定查找算法的数据结构(B树&#xff0…

chatgpt赋能python:Python扩展开发:从入门到精通

Python扩展开发:从入门到精通 Python是一门高效、可扩展、易学易用的编程语言。Python的优秀性能在科学计算、数据处理、web开发等领域表现突出。然而,Python在特定的应用场景中,如图像处理和机器学习等领域,需要更高效的代码执行…

8.4 IP地址与端口号

目录 IP地址 IP地址及编址方式 IP 地址及其表示方法 点分十进制记法举例 IP 地址采用 2 级结构 分类的 IP 地址 分类的 IP 地址 多归属主机 各类 IP 地址的指派范围 ​编辑 一般不使用的特殊的 IP 地址 ​编辑 分类的 IP 地址的优点和缺点 划分子网 无分类编址 CIDR 无…

【C/C++数据结构与算法】C语言万年历

目录 项目分析 项目效果 头文件及全局变量 获取天数 打印月份、年份日历 main函数 项目分析 实现查询某一个年份、月份,以日历的格式打印为了观赏性利用符号对打印的每一个日期进行分格特殊节日日期能够在日历中标注出来万年历的起始日期是公元1年&#xff0…

【随笔闲谈】软件工程导论

目录 一、软件工程概述 二、启动阶段 三、计划阶段 四、实施阶段 五、收尾阶段 一、软件工程概述 软件危机:在计算机软件的开发和维护过程中遇到的一系列严重问题。 软件危机的产生与自身的特点有关,还与软件开发、管理的方法不正确有关。 软件危…

chatgpt赋能python:Python打开目录:快速浏览目录中的所有文件

Python打开目录:快速浏览目录中的所有文件 Python是一种流行的编程语言,其可扩展性和易学性使其成为一种受欢迎的语言。Python的强大功能之一就是能够操作文件和目录。在本文中,我们将讨论如何使用Python在Windows、Mac和Linux上打开目录并列…

Opencv-C++笔记 (11) : opencv-图像二值化与LUB查找表

文章目录 一、概述二、THRESH_BINARY和THRESH_BINARY_INV三、THRESH_TRUNC四、THRESH_TOZERO和THRESH_TOZERO_INV五、THRESH_OTSU和THRESH_TRIANGLE六、LUT查找表 一、概述 我们在上一节程序中生成了一张只有黑色和白色的图像,这种“非黑即白”的图像像素的灰度值无…

MFC 非线程创建模态化窗口 实现工具栏拓展

1 实现基本工具栏 1.1 在Dlg.h文件中声明变量和定义资源ID #define ID_BUTTONS 501CToolBar m_toolbar; //工具栏 CImageList m_imageList; //工具栏图片 CImageList m_hotImageList; //工具栏热点图片 CReBar m_Rebar; //可以在位图上显示子窗口口 用来显示背景 CString…

【DeepLearning】Ubuntu中深度学习环境配置完整流程

Ubuntu中深度学习环境配置完整流程 1 显卡驱动2 cuda3 cuDNN4 torch5 torchvision 1 显卡驱动 支持 cuda 的所有显卡型号: Link 查询显卡型号 lspci -nn | grep VGA即 Vendor ID:Device ID 为 10de:21c4,在浏览器或者 Link 中搜索。 填写显卡信息: Link 选择要下载…

Jenkins-pipeline自动化构建Java应用

本实验操作需要:Jenkins,git代码仓库(如gitlab,gitee等都可以),maven,docker,docker镜像仓库(habor,nexus或者阿里云ACR等)以及k8s环境。 前期准…

nginx特点以及安装

目录 1.特点 2.nginx和apache的区别 3.nginx应用场景 4.安装nginx 5. 更新nginx版本 6.总结 1.特点 高性能 轻量级web服务软件 稳定性高 系统自选消耗低 对http并发链接处理能力高 #处理并发连接能力 1.cup个数 2.本地服务器最大文件打开数 2.nginx和apache的区别 ng…

chatgpt赋能python:打包Python应用程序成deb包

打包Python应用程序成deb包 随着Python编程语言的不断发展,越来越多的开发者使用Python编写应用程序。然而,将Python程序打包并制作成deb包以进行安装可能仍然是一个难点。本文将介绍如何使用Debian打包工具,将Python应用程序制作成deb包。 …

chatgpt赋能python:Python扩展库介绍

Python扩展库介绍 Python是一种广泛使用的编程语言,它的易用性和可扩展性是许多开发者选择它的原因之一。这个语言有着丰富的扩展库,让开发者能够更加高效地编写代码。在这篇SEO文章中,我们将介绍几个与Python相关的扩展库。 NumPy NumPy是…

RPC远程调用

简介 PRC是一种调用方式而不是一种协议 在本地调用方式时由于方法在同一个内存空间,所以程序中可以直接调用该方法,但是浏览器端和服务端程序是不在一个内存空间的,需要使用网络来访问,就需要使用TCP或者UDP协议,由于…

使用frp工具实现内网穿透以及配置多个ssh和web服务

frp简介 FRP 项目地址 https://github.com/fatedier/frp/blob/master/README_zh.md frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外的能力,且尝试性支持了点对点穿透。 环境准备 ssh连接 1. 需要一台可以直接访问…

简要介绍 | 交叉熵损失:原理和研究现状

注1:本文系“简要介绍”系列之一,仅从概念上对交叉熵损失进行非常简要的介绍,不适合用于深入和详细的了解。 注2:"简要介绍"系列的所有创作均使用了AIGC工具辅助 交叉熵损失:原理、研究现状与未来展望 Under…

Web3 是什么?为何应该关注?

当我开始我的职业生涯时,“Web2.0”还是一个热门的新事物。 当我开始我的职业生涯时,正值互联网快速发展的时期,人们谈论的是“Web2.0”,这一概念引发了许多关于用户参与、社交媒体和在线合作的讨论。然而,随着时间的推…

SQL优化--如何分析优化呢?

目录 一个SQL语句执行很慢, 如何分析? ​编辑 重要属性 possible_key key key_len Extra type 面试回答 框架 范例 例: 上面三种查询我们都可以通过执行计划找到查询慢的原因,并且提供解决方案 比如聚合查询可以新增临时表&…