【三维重建】多频外差相位展开(C++实现)

在结构光三维重建中,通过相移法求解出来的相位是包裹相位(在 [-π/2,π/2] 间成周期性 )

我们想要用相位找到相机与投影仪间的对应像素,就需要进行相位展开,确保每一行的相位值是唯一的。

多频外差是相位展开的一种,接下来我们会介绍它的原理,以及代码。

多频外差的原理是将两种不同频率的相位函数叠加得到一个频率更低的相位函数,设\varphi _1(x), \varphi_2(x)对应的周期分别是T1 =80 ,T2 = 60

\varphi_{12}(x) 是\varphi_2(x),\varphi_2(x)合成的相位

T12 = \frac{T1*T2}{T1-T2}=\frac{80*60}{80-60}=240

\varphi_{12}(x)=\left\{\begin{matrix} \varphi_2(x)-\varphi_1(x) \ \ \ \ \ \ \ \ \ \ if\ \varphi_2(x)>\varphi_1(x) \\ \\ 2\pi - (\varphi_1(x)-\varphi_2(x)) \ \ \ if \ \varphi_2(x)<=\varphi_1(x) \end{matrix}\right.

利用\varphi_{12}(x)求解阶次

如果求取\varphi_1(x)的阶次:

order = (\varphi_{12} *\frac{T12}{T1}-\varphi_1) / 2\pi

如何理解这个公式?

\frac{T12}{T1} = \frac{ab'}{ab}=\frac{b'c'}{bd}=\frac{bc}{bd}

\varphi_{12} *\frac{T12}{T1} 之后,\varphi_{12}, \varphi_1会重合

(\varphi_{12} *\frac{T12}{T1} - \varphi_1) / 2\pi 就能得到\varphi_1的阶次

最后就可以求出绝对相位

\phi_1 = \varphi_1+k *2\pi (k是求得的阶次)

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue+echarts实现桑吉图的效果

前言&#xff1a; 在我们项目使用图形的情况下&#xff0c;桑吉图算是冷门的图形了&#xff0c;但是它可以实现我们对多级数据之间数据流向更好的展示的需求&#xff0c;比如&#xff0c;我们实际数据流向中&#xff0c;具有1对多&#xff0c;多对多的情况下&#xff0c;如果用…

【Hive】——概述

1 什么是Hive 2 Hive 优点 3 Hive和Hadoop 的关系 4 映射信息记录 5 SQL语法解析、编译 Hive能将一个文件映射成为一张表&#xff0c;文件和表之间的关系称为映射 Hive的功能职责是将SQL语法解析编译成为MapReduce 6 Hive 架构 6.1 分析 6.2 架构图 6.3 用户接口 6.4 元数据存…

多向通信----多人聊天

package 多人聊天; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.PrintStream; import java.net.ServerSocket; import java.net.Socket; import java.util.ArrayList; publ…

【分享】拖拽式表单的优点有哪些?

如果说想要提升办公效率&#xff0c;那么就可以试试拖拽式表单了。它拥有可视化、拖拽式操作、易维护等优势&#xff0c;可以在现代化办公操作中帮助企业节省人工成本费用&#xff0c;提高办公效率&#xff0c;真正实现办公流程化应用&#xff0c;让数字化转型升级的梦想早日实…

dtaidistance笔记:dtw_ndim (高维时间序列之间的DTW)

1 数据 第一个维度是sequence的index&#xff0c;每一行是多个元素&#xff08;表示这一时刻的record&#xff09; from dtaidistance.dtw_ndim import *s1 np.array([[0, 0],[0, 1],[2, 1],[0, 1],[0, 0]], dtypenp.double) s2 np.array([[0, 0],[2, 1],[0, 1],[0, .5],[0…

1688API接口系列,商品详情数据丨搜索商品列表丨商家订单类丨1688开放平台接口使用方案

1688商品详情接口是指1688平台提供的API接口&#xff0c;用于获取商品详情信息。通过该接口&#xff0c;您可以获取到商品的详细信息&#xff0c;包括商品标题、价格、库存、描述、图片等。 要使用1688商品详情接口&#xff0c;您需要先申请1688的API权限&#xff0c;并获取ac…

烈酒行业分析:预计2029年将达到17628亿元

近年来&#xff0c;随着国民经济的增长和消费能力的不断增强&#xff0c;烈酒的需求也在上涨。虽然广东是烈酒主要的消费市场&#xff0c;但由于疫情的影响&#xff0c;线上消费越来越多&#xff0c;年轻人逐渐成为酒水消费的主力军&#xff0c;线上洋酒销量增速迅猛&#xff0…

查看Linux的Ubuntu的版本

我的Ubuntu版本是 Jammy x86_64&#xff0c;即 Ubuntu 22.04.3 LTS&#xff0c;代号为"Jammy Jellyfish"&#xff0c;架构是 x86_64&#xff08;64位&#xff09;。

PPOCRv3检测模型和识别模型的训练和推理

PPOCRv3检测模型和识别模型的训练和推理 文章目录 PPOCRv3检测模型和识别模型的训练和推理前言一、环境安装1&#xff0c;官方推荐环境&#xff1a;2&#xff0c;本机GPU环境 二、Conda虚拟环境1.Win10安装Anaconda32.使用conda创建虚拟环境 三、安装PPOCR环境1&#xff0c;安装…

机器学习应用 | 使用 MATLAB 进行异常检测(下)

在使用MATLAB 进行异常检测&#xff08;上&#xff09;中&#xff0c;我们探讨了什么是异常值&#xff0c;简单的一维数据异常检测问题&#xff0c;针对高维数据的有监督异常检测方法。 在&#xff08;下&#xff09;篇中&#xff0c;我们将和大家一起探讨无监督异常检测。 没…

Android 背景边框集合

效果图 代码 <?xml version"1.0" encoding"utf-8"?> <shape xmlns:android"http://schemas.android.com/apk/res/android" android:shape"rectangle"><solid android:color"#ffffff" /><stroke and…

【改进YOLOv8】融合重参数结构DiverseBranchBlock的冬小麦物候期检测系统

1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 研究背景与意义 近年来&#xff0c;随着计算机视觉技术的迅速发展&#xff0c;物体检测成为了计算机视觉领域的一个重要研究方向。物体检测的目标是在给定图像中准确地识别和定位…