halcon测量两条线距离_三角测量算法:过滤可能的错误点
最近在做三维重建的工作,三角测量原理是实现三维重建的基石,具体的算法推导可以参考之前的三角测量计算点的三维坐标一文。在之前的文章中,已知一对匹配点,可以计算出场景的三维坐标。
[u, v] 和 [u’, v’] 为相机的归一化坐标, P为待求的世界坐标。经过SVD分解,总能求得最优解。那这个解是否一定满足重建的精度,换句话说,如何对求得结果进行精度判断。
图片来自视觉SLAM14讲
由于相机标定,图像特征点匹配的位置等,都会存在一定的误差,实际上O1p1 与O2p2不相交,结果P就在他们之间,理论上最优解应该在这两条线的中垂线的中间。所以可以根据P点到两条射线的距离之和满足一定的阈值就可以进行过滤。
第一种做法:
计算三角化,求出P点的三维坐标。
计算两条线的方程
计算点到直线的距离
关键是如何推导这两条直线的方程呢?
由对极几何知道,O1设置为原点[0, 0, 0] , O1到O2的转换关系为[R, t] ,他们可以通过双目立体标定计算得到。
我们都以左相机的坐标系为基准,O2坐标为:
因为在右相机中,O2本来就是原点所以Pro2=0,代入上式,O2在左相机的坐标为:
两个相机光心的坐标有了,开始计算p1和p2点在左相机坐标系的坐标。p1很简单,坐标值不变,p2的值经过转换为:
空间直角坐标系中平面方程为Ax+By+Cz+D=0;可以分别代入O1 - p2,O2-pl2 求得L1 和 L2。最后计算P点到L1和L2的距离之和。
第二种方法:
前面已经计算出来4个点在左相机的坐标,其实可以根据另外的直线表示方法,计算出三维点P。
具体推导:直线方程即可以用两点式表达,也可以用空间中点和向量表示
lambda1, lambda2可以任意取值,则点p 肯定都在它们各自的线上。v1, v2为向量。
构建的目标函数为:
写成矩阵的表达形式:
即:
则在L1上的点为P1, L2上的点为P2
距离计算更简单了,计算向量P1P2向量的模即可
然后根据阈值就可以判断是否满足精度要求。
公式有点多,难免有打错,请勿怪~~~
参考:http://mesh.brown.edu/desktop3dscan/ch1-intro.html
halcon测量两条线距离_三角测量算法:过滤可能的错误点相关推荐
- 05-机器学习_(协同过滤推荐算法与应用)---没用
机器学习算法day03_协同过滤推荐算法及应用 课程大纲 协同过滤推荐算法原理 协同过滤推荐算法概述 协同过滤推荐算法思想 协同过滤推荐算法分析 协同过滤推荐算法要点 协同过滤推荐算法实现 协同过滤推 ...
- 距离矢量路由算法_简单聊聊路由协议
帅天今天难得一次写两篇文章,希望兄弟们给点力,点个赞.码字不易啊. 这篇文章简单的聊聊路由协议,注意这里是简单,路由协议太复杂,了解一下即可. 我们在大学里面学习计算机网络与数据结构的时候,知道求最短 ...
- python 聚类_聚类算法中的四种距离及其python实现
欧氏距离 欧式距离也就是欧几里得距离,是最常见也是最简单的一种距离,再n维空间下的公式为: 在python中,可以运用scipy.spatial.distance中的pdist方法来实现,但需要调整其 ...
- python测量镜头到目标距离_摄像头单目测距原理及实现
摄像头单目测距原理及实现 一.测距原理 空间的深度或距离等数据的摄像头. 人的眼睛长在头部的前方,两只眼的视野范围重叠,两眼同时看某一物体时,产生的视觉称为双眼视觉. 双眼视觉的优点是可以弥补单眼视野 ...
- 距离矢量路由算法_计算机网络自学笔记:选路算法
网络层必须确定从发送方到接收方分组所经过的路径.选路就是在网络中的路由器里的给某个数据报确定好路径(即路由). 一台主机通常直接与一台路由器相连接,该路由器即为该主机的默认路由器,又称为该主机的默认网 ...
- 调节e18-d80nk的测量距离_方管前置镜光学测量仪器测量范围5视度测量精度高
方管前置镜光学测量仪器测量范围5视度测量精度高 本公司现有员工50多人,工程师3人,工程师5人,技师2人,激光器研发设计能力,具有较强的加工.生产能力. 公司产品行销,已形成一定的销售网络. 公司主要 ...
- 调节e18-d80nk的测量距离_堪称建筑工程指南针,测量放线最常用,这2种测量仪器一定要会...
水准仪.经纬仪.全站仪的操作使用,高程测量原理与角度测量原理,测量计算基本常识以及GPS定位原理及应用等,都是工程人的必备知识.今天100唯尔教育小编就结合100唯尔教育VR仿真课程来介绍水准仪和全站 ...
- python 异常点检测 cook距离_异常检测算法汇总
本文来自:https://github.com/Albertsr 第一部分:无监督异常检测 1. 算法 1.1 孤立森林(Isolation Forest) 算法论文: Isolation Fores ...
- python opencv卡尺测量边缘距离
opencv 卡尺法 测量边缘距离 参考来源 :https://github.com/crackwitz/metrology-demo 前言 一.测量方法 二.测量步骤 1.获取直线的像素 2.高斯滤 ...
最新文章
- UIPickerView和UIDataPicker
- python drop函数_用python帮财务小姐姐自动生成财务报表
- Windows2003无法看到网络连接,修复COM+组件
- 聊聊Tomcat的架构设计
- 服务端配置实现AJAX跨域请求
- file_put_contents()写入数组
- 移动Web体验月报(6月):MIP 核心代码升级,增加基于 Vue 开发能力
- 数据结构 —— 树状数组
- Spring Boot 2.2 增加了一个新功能,启动飞起~
- 苹果正式推送iPadOS 13.1、iOS 13.1,修复大量Bug,速升!
- jpg格式怎么免费压缩大小
- PMP考试答题技巧-模拟题库
- Excel游戏—制作数字炸弹小游戏
- 前端数据可视化插件(四)关系图
- 数据分析面试都会问到哪些问题
- ps图标长投影如何做?
- R语言统计与绘图:生存曲线的两两比较
- jekins 指定分支_jenkins的pipeline拉取指定分支的代码
- Linux系统信号定义
- 【愚公系列】2023年04月 攻防世界-MOBILE(Android2.0)