快速二维相位解包算法基于按照非连续路径进行可靠性排序

Miguel Arevallilo Herra´ ez, David R. Burton, Michael J. Lalor, and Munther A. Gdeisat

摘要:

据我们所知,我们描述了一种新的相位展开技术。已经提出了几种基于首先展开最可靠像素的算法。这些仅限于连续路径,并且在定义起始像素时会遇到困难。这里描述的技术使用不同类型的可靠性函数,并且不遵循连续路径来执行展开操作。对该技术进行了详细的解释,并举例说明。

 1.引言

在条纹图案分析中,通常情况下,通过涉及反正切函数的表达式来获得相位。这个数学函数返回在极限之间已知的值+\pi 和 -\pi 。因此,给出的结果是模2\pi以及值接近2\pi出现在相位分布中。展开是解决这些不连续性的过程,将结果转换为所需的连续相位函数。

  展开问题是十多年来的一个主要研究主题。2确实存在任何不同的算法,但决不能保证得到正确的解决方案,而且执行时间往往很长。乍一看,相位展开似乎是一个相对简单的问题,但在处理真实图像时,必须设计程序来处理许多不同的问题。相位包络中的不连续性、局部区域的欠采样、信噪比的高局部变化以及掩蔽区域是展开器必须克服的一些问题.

过去已经提出了许多相位展开算法来提高展开算法的抗噪声性。这些算法可以分为以下几类:1.全局算法2.区域算法,以及3.路径跟随算法。

全局算法通过最小化一个全局函数来构建解包裹问题。这类算法虽然已知是鲁棒的,但计算上很密集。

区域算法将图像分割成若干区域,每个区域分别处理,然后将处理过的区域与相邻的区域结合起来形成更大的区域,直至整个图像被处理完成。区域算法可以进一步分为两个子类:基于瓦片的算法和基于区域的算法。这些算法在鲁棒性和计算量之间提供了一种折衷。

路径跟踪算法类可以细分为三组:路径依赖方法、残差补偿方法和质量引导路径方法。

在路径依赖方法中,最简单的是由 Schaefer 和 Oppenheim 提出的解包裹器。这组包括螺旋和多扫描方向方法。这些方法侦测图像中的不连续或突变位置,并使用这些信息来计算连续的相位偏移。这些算法通常用于平面偏移,由于固定的数据评估顺序,它们不能处理有噪声的图像。

残差补偿算法在图像中搜索残差,并在正残差和负残差之间生成切割。这些算法一般在计算上高效但不够鲁棒。


质量引导路径算法依赖于按质量排序的像素来解包裹,首先解包裹最高可靠性的像素,最后处理最低可靠性的像素,以防止错误传播。解包裹路径是基于像素的可靠性确定的。尽管有时候一些解包裹错误可能无法检测并且继续传播,这种方法通常在实践中是鲁棒的,并且计算上也相对高效。所提出的算法属于这一类别。

所提出的解包裹算法遵循离散路径,将在第二节中解释,而参考文献中的12到19的解包裹算法通常遵循连续路径。这些质量引导的解包裹算法和传统的方法相比,因为它们依赖于与积分器像素相邻的像素,所以能够更好地处理噪声图像。

2.算法

在质量引导路径展开算法中,主要有两个问题:可靠性函数的选择和展开路径的设计。从所提出的算法的角度解释了这两个问题。

A.可靠性函数

质量引导的路径展开算法使用不同的标准来确定点的可靠性。该标准通常基于像素与其相邻像素之间的梯度或差异。那些具有最低模2π梯度相对于它们的邻居的点被认为是最好的点,并且因此,是模2π梯度最高的点。

在可靠性函数中使用梯度的绝对值有多个缺点。如果存在一个高的载波值(与条纹图案的调制相比),载波成为主要的调制组件。然而,一个低的载波值会增加或减少图像像素的梯度值,并产生一个不适当的可靠性测量。

二阶差分将提供一个度量,用于相位函数凹凸度的程度。通过使用二阶差分,可以更好地检测相位图中的潜在不一致性。

二阶差分的计算将在第2节中对于图1中的像素进行解释。为了计算图像中一个像素的二阶差分,需要其正交和对角邻居的值(在一个3x3窗口中)。

像素(i,j−1),(i-1,j),(i,j+1)(i,j−1) 而像素(i−1,j−1),(j+1,i+1),(i−1,j+1)被称为对角邻居。

 

B. 解包裹路径

边缘是两个水平或垂直相连的像素的交点。任何具有左侧、右侧、上方或下方邻近像素的像素都可以构建一个边缘。图2(a)展示了一个图像的一部分,图中显示了像素的可靠性。每两个正交邻近像素都可以产生一个边缘,如图所示。

图2。所提出算法的数值例子。(下页继续。) 

图2(b)中,边缘的可靠性被定义为该边缘所连接的两个像素的可靠性之和。边缘可以被归类为图中以绿色显示的水平边缘和以红色显示的垂直边缘。

解包裹路径不能相对于像素的可靠性来定义。相反,它是通过查看边缘的可靠性值来定义的。解包裹路径的定义相对简单:首先解包裹那些可靠性更高的边缘。边缘按可靠性值存储在数组中,并根据可靠性值进行排序。具有更高可靠性的边缘首先被处理。

图2(c)到2(j)演示了所提出算法的原理。假设我们想要使用所提出的算法解包裹图2(a)中显示的像素的可靠性值。可以构建的边缘及其可靠性值在图2(b)中显示。

最初所有像素都被视为不属于任何组。在图2(c)中,像素f和g首先相对于彼此进行解包裹,因为连接它们的边缘具有最高的可靠性值。这两个像素属于同一组,这通过对它们进行相同颜色着色来示意。然后进行像素a和b的解包裹操作,这两个像素构成了第二组。接着是像素i和j的解包裹操作,它们构成了第三组。

图2(c)和2(d)显示了连接像素a和e的边缘具有第四高的值,

两个构建边缘的像素应该相互解包裹。但像素a已经相对于像素b解包裹,两者都属于同一组。为了解包裹像素e,需要添加/减去的2π倍数是从像素e计算得到的,然后加到或从像素e减去。像素a、b、e现在被视为同一组,并且在图2(d)中用相同的颜色显示。

图2(e)和2(f)说明了两组像素相对于彼此的解包裹。第一组包含像素a、b、e;第二组包含像素i和j。两组通过可靠性值高于或等于其他未处理边缘的垂直边缘连接。这两组应该相互解包裹。第二组包含的像素较少,所以在第一组和第二组之间的差异的2π倍数是计算出来的,然后加到或从第二组的所有像素中减去。包含较少像素的那一组的像素现在被认为属于同一组,并且现在被视为同一组的一部分。图2(f)中以相同的颜色显示。提出的算法按图所示继续进行。解包裹路径是离散的,因此两个构建边缘的像素之间的解包裹是局部的。这与Quiroga等人的算法相比是一个主要区别,可以在图2(d)中看到,像素l和q是相互独立解包裹的,并且与其它已解包裹的像素(a、b、e、f、g、i和j)相断开。

在解包裹过程中,有三种可能的情况:

  1. 两个像素之前都没有被解包裹过。像素相互之间解包裹,并被归为一组未解包裹的像素。
  2. 其中一个像素之前已经被处理过(因此属于一组已解包裹的像素),但另一个像素没有(不属于任何组)。之前没有被处理过的像素会相对于另一个像素进行解包裹,并加入到第二个像素的组中。
  3. 两个像素之前都已经被处理过。如果它们不属于同一组,这两组需要相互之间解包裹。这种解包裹是与彼此最大组进行的。这种操作涉及到将最小组的像素与最大组相连,然后将最小组剩余像素与最小组已经处理过的像素进行连接,形成一个新的组。

流程图描述了一个相位解包裹算法的步骤。这里是每个步骤的详细描述:

  1. 开始:启动流程。

  2. 计算可靠性值:对图像中除边界外的每个像素计算可靠性值。

  3. 构建边缘并计算可靠性值:构建图像中的垂直和水平边缘,并为每个边缘计算可靠性值。

  4. 排序边缘:按可靠性值对所有边缘(垂直和水平)进行排序,并将它们存储在名为SORTED的数组中。

  5. 设置像素组:将每个像素设置为不属于任何组。

  6. 检查构建边缘的像素:检查构成边缘的两个像素。

  7. 判断像素组归属

    • 如果两个像素都属于不同的组,则解包裹属于最小组的像素,并将两组合并。
    • 如果两个像素都不属于任何组,则将这两个像素解包裹,并将它们归为同一组。
    • 如果其中一个像素属于某个组而另一个不属于任何组,则解包裹不属于任何组的像素,并将它加入另一个像素所在的组。
  8. 检查未处理的边缘:检查SORTED数组中是否有未处理的边缘。

  9. 解包裹边界:如果没有未处理的边缘,对图像边界相对于图像其余部分进行解包裹。

  10. 停止:结束流程。

整个过程是一个迭代的解包裹算法,它根据构成边缘的像素的可靠性来决定解包裹的顺序,并根据这些边缘的可靠性值动态地将像素归类到不同的组中。这种方法旨在提高解包裹的准确性,尤其是在处理带有噪声的复杂图像时。

流程图描述了提出算法的操作过程,如图3所示。可靠性函数可能需要修改,低可靠性点可能会在最终结果中引起问题。可能更好的做法是忽略那些非常低可靠性值的交点,并在解包裹完成后对这些进行插值。

3.模拟和实验结果

A. 模拟结果

提出的算法已通过使用模拟图像进行了测试。所有显示包裹相位的图像在[−π,π]范围内被缩放到黑色和白色之间以供显示。解包裹的相位图像也被缩放到黑白之间以覆盖完整的动态范围。

图4(a)显示了一个非常高质量的包裹相位分布,其中没有噪声和物理不连续性。这幅图像已用于在理想条件下测试提出的算法。图4(b)显示了结果的解包裹相位。

图5(a)显示了一个模拟的包裹相位分布,在相位的主体中没有噪声,但中心有一个小区域包含随机噪声。这组数据的目的是测试解包裹器隔离这种噪声的能力,并防止它破坏好数据的解包裹。图5(b)显示了结果的解包裹相位图。

 

B. 实验结果

图6(a)展示了从真实条纹图案分析得到的包裹相位图。该包裹相位图包含由投影条纹的阴影造成的损坏区域。该包裹相位图已使用提出的算法进行了解包裹。图6(b)展示了解包裹后的相位图,表明该算法能够成功解包裹不可靠的区域。

图7(a)展示了一个嘈杂的包裹相位图,它被盐和胡椒噪声所损坏。该图像已使用提出的算法进行了解包裹,解包裹后的相位图显示在图7(b)中。图7(c)展示了解包裹后相位图的三维表示。包裹相位图如图7(a)所示已经被Schaefer和Oppenheim的解包裹算法解包裹,解包裹后的相位图显示在图7(d)中。

解包裹后相位图的动态范围可能比包裹相位图的动态范围大得多。展示解包裹相位图通过在黑色和白色之间缩放它并不总是表明解包裹过程正确进行。因此,遵循Ghiglia和Romero的方法,我们重新包裹解包裹后的相位图以允许与包裹图像直接比较。这种重新包裹在视觉上令人信服地表明解包裹是定性正确的。

图8展示了图7(b)所示解包裹相位图的重新包裹相位图。图7(a)和8展示了包裹和重新包裹相位图之间的良好一致性,证明了提出的算法成功地解包裹了包裹相位图。

提出的算法的执行时间因图像而异,并取决于正在分析的特定相位分布。测试图像的大小为512 x 512像素。提出的算法已在一个PC系统上执行。该PC包含双Pentium III处理器,运行速度为1GHz。这台PC的内存是512Mbyte Rambus RAM。执行时间平均在半秒的数量级。

 

 

4.结论

一个快速、可靠的二维解包裹器已经被提出、描述和测试。该算法基于首先沿着非连续路径解包裹具有更高可靠性值的点,当存在不连续性或嘈杂区域时,能够产生一致的结果。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

结合eNSP实验讲VLAN,让理论生动

目录 一、VLAN的简介 1、定义 2、产生的原因--解决传统以太网的问题 3、VLAN的作用 4、VLAN数据帧格式--插入VLAN标签 5、VLAN的种类 5.1静态VLAN--常用 5.1.1静态vlan的范围 5.2动态VLAN 6、VLAN的三种端口类型 6.1Access接口 6.2Trunk接口 6.3Hybrid接口 二、配置…

Nodejs 第二十三章(Markdown 转 html)

Markdown 转换html 是一个非常常见的需求 什么是 Markdown ? Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档。 我们需要用到三个库实现 EJS:一款强大的JavaScript模板引擎,它可以帮助我们在HTML中嵌入动态内…

linux中堡垒机

堡垒机 堡垒机概念目的 安装Jumpserver使用资产管理资产列表创建需要管理的服务器创建用户权限管理页面进行资产授权操作视频 应用管理应用管理页面创建需要管理的应用,这里用数据库mysql举例进入后点击创建资产管理创建登录应用所需的用户选择创建mysql关系型数据库…

IP地址在流量管理中的作用

随着互联网的快速发展,流量管理已成为各行业面临的重要问题。IP地址作为一种标识网络中设备的重要标识符,在流量管理中发挥着重要作用。本文将介绍IP地址在流量管理中的应用,以帮助读者更好地理解这一领域的发展。 一、IP地址的分类与标识 I…

【C++】输入输出流 ⑥ ( cout 标准输出流对象 | cout 常用 api 简介 | cout.put(char c) 函数 )

文章目录 一、cout 标准输出流对象1、cout 标准输出流对象简介2、cout 常用 api 简介 二、cout.put(char c) 函数1、cout.put(char c) 函数 简介2、代码示例 - cout.put(char c) 函数 一、cout 标准输出流对象 1、cout 标准输出流对象简介 cout 是 标准输出流 对象 , 是 ostrea…

聚焦本田XR-V和福特领睿:两大SUV综合实力对比,谁更胜一筹?

在当今的SUV市场中,家庭用户的选择变得越来越多样化。特别是对于那些追求时尚、功能性以及技术先进性的用户来说,选择正确的SUV显得尤为重要。本文将重点对比福特领睿和本田XR-V这两款SUV,探讨它们在各方面的表现,做一个综合实力的…

GPTs prompts灵感库:创意无限,专业级创作指南,打造吸睛之作的秘诀

GPTs prompts灵感库:创意无限,专业级创作指南,打造吸睛之作的秘诀 优质prompt展示 1.1 极简翻译 中英文转换 你是一个极简翻译工具,请在对话中遵循以下规则: - Prohibit repeating or paraphrasing any user instru…

Vue运用之input本地上传文件,实现传参file:(binary)

前言 功能场景是,实现列表的【批量导入】的效果,在Excel里维护好信息,本地上传好文件,再点击【确认】触动接口,将flie信息传值后端接口。 html代码 input的type设置为file,支持格式设置为仅支持Excel类型 <div class="btn-box"><div class=&quo…

HNU数据库大作业-世界杯比赛系统

前言 之前做的那个版本bug较多&#xff0c;后进行了大量优化。 此项目是一个前后端分离的项目&#xff0c;前端主要使用htmlcssjs搭建&#xff0c;使用的是layui框架 后端使用php语言&#xff0c;仅实现了简单的查询数据库功能&#xff0c;无法实现多并发查询等复杂情况 数…

LeetCode刷题--- 验证二叉搜索树

个人主页&#xff1a;元清加油_【C】,【C语言】,【数据结构与算法】-CSDN博客 http://t.csdnimg.cn/ZxuNL个人专栏&#xff1a;力扣递归算法题 http://t.csdnimg.cn/ZxuNL 【C】 http://t.csdnimg.cn/c9twt 前言&#xff1a;这个专栏主要讲述递归递归、搜索与回溯算法&#x…

想学精MySQL,得先捋一捋高可用架构

&#x1f4e2;&#x1f4e2;&#x1f4e2;&#x1f4e3;&#x1f4e3;&#x1f4e3; 哈喽&#xff01;大家好&#xff0c;我是【IT邦德】&#xff0c;江湖人称jeames007&#xff0c;10余年DBA及大数据工作经验 一位上进心十足的【大数据领域博主】&#xff01;&#x1f61c;&am…

Web漏洞分析-文件解析及上传(中)

随着互联网的迅速发展&#xff0c;网络安全问题变得日益复杂&#xff0c;而文件解析及上传漏洞成为攻击者们频繁攻击的热点之一。本文将深入研究文件解析及上传漏洞&#xff0c;通过对文件上传、Web容器IIS、命令执行、Nginx文件解析漏洞以及公猫任意文件上传等方面的细致分析&…

JavaScript API: IntersectionObserver

简介 IntersectionObserver 是一个 JavaScript API&#xff0c;用于监测一个元素与其父元素或视窗的交叉状态。它可以用来判断一个元素是否可见或者在视窗中的位置是否发生变化。 使用 IntersectionObserver&#xff0c;你可以注册一个回调函数&#xff0c;当被观察的元素进入…

ChatGPT生成的docx文档压缩Python代码

对DOCX文件中的图片进行缩小处理 这份Python脚本旨在处理给定的DOCX&#xff08;Word文档&#xff09;文件中的图片&#xff0c;将其按照指定的比例进行缩小&#xff0c;并生成一个新的压缩版DOCX文件&#xff0c;其中包含经过缩小处理的图片。 代码功能概览&#xff1a; 导入…

.NET如何调用Web Service服务?

我们知道&#xff0c;现在用Web Service提供对外接口的项目其实很少了&#xff0c;现在大部分应用都是b/s端的了&#xff0c;WebApi的优势自然而然就体现出来了&#xff0c;可自定义请求头部信息、可对数据进行缓存、使用json字符串让开发更加灵活。那么Web Service是不是就无用…

高校刮起元宇宙风!3DCAT实时云渲染助力川轻化元校园建设

元宇宙&#xff0c;是一个虚拟的网络世界&#xff0c;它与现实世界相互连接&#xff0c;为人们提供了一个身临其境的数字体验。元宇宙的概念并不新鲜&#xff0c;早在上个世纪就有科幻作家和电影导演对它进行了想象和创造。但是&#xff0c;随着科技的发展&#xff0c;特别是5G…

2023最新大模型实验室解决方案

人工智能是引领未来的新兴战略性技术&#xff0c;是驱动新一轮科技革命和产业变革的重要力量。近年来&#xff0c;人工智能相关技术持续演进&#xff0c;产业化和商业化进程不断提速&#xff0c;正在加快与千行百业深度融合。 大模型实验室架构图 大模型实验室建设内容 一、课…

编程应用实际场景:台球厅怎么样用电脑给客人计时,台球计时收费系统操作教程

一、前言 准确控制顾客在店内游玩的时间&#xff0c;从而控制店内的各项成本&#xff0c;并提升店内的客流量。在顾客享受计时项目的时候&#xff0c;可以同时添加其他食物消费&#xff0c;并将单据合并统一结账。软件中的会员功能可以为客户办理会员可以使用灯控器控灯&#…

GPT-4V 在保险行业的应用

在科技的进步中&#xff0c;人工智能与大数据技术的结合产生了巨大的能量&#xff0c;推动了各行各业的创新与变革。OpenAI&#xff0c;作为全球领先的人工智能研发机构&#xff0c;在今年的9月25日&#xff0c;以一种崭新的方式&#xff0c;升级了其旗下的GPT-4模型。这次的升…

程序员必备的十种排序算法

欢迎关注博主 Mindtechnist 或加入【智能科技社区】一起学习和分享Linux、C、C、Python、Matlab&#xff0c;机器人运动控制、多机器人协作&#xff0c;智能优化算法&#xff0c;滤波估计、多传感器信息融合&#xff0c;机器学习&#xff0c;人工智能等相关领域的知识和技术。关…