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

基于多次傅里叶变换算法的快速相位解包裹算法研究

▒▒本文目录▒▒

  • 一、前言
  • 二、快速相位解包裹算法实例分析
  • 三、参考文献

一、前言

一般而言,干涉相位图中的相位值通常被限制在主值区间内,这种相位被称为缠绕相位。在缠绕相位图中,像素点的相位值在-π或π附近时通常会出现相位不连续的现象,即相位跳跃。但是被测物体对应的真实相位值应该是在实数范围内连续的,并不存在相位不连续的现象。如果想要获得真实相位,就需要移除缠绕相位中的相位跳跃使得相位连续,这样的过程即是相位解缠

相位解缠一般是通过在缠绕相位加上2π的整数倍来获得解缠相位。如果相位满足条件,即相邻像素之间的相位差小于π,那么相位解缠并非是一个困难的问题,只需要逐点对缠绕相位梯度进行积分就可以得到较为满意的解缠结果。然而在实际应用中,由于采样不足、噪声污染或者阴影遮蔽等因素的影响,相位图往往信噪比比较低,从而导致缠绕相位中出现相位残差,这就使得相位解缠变得非常复杂。

为了克服这些难题,从上个世纪起,专家学者们已经提出许多相位解缠算法。总体上,这些算法可以被分成两大类,一类是路径相关算法,另一类是路径无关算法。路径相关算法的主要思想是依据某种策略避开相位中的残差点或不连续点,选择合适的积分路径,按照该路径完成相位解缠。这类算法的运算速度很快,但其结果在很大程度上依赖于路径的选择,如果积分路径不合适,则会导致解缠结果不尽如人意。路径无关算法的基本思想是把相位解缠问题转化为一个全局函数的最优化问题。在这类算法中,每个像素点的解缠都需要参考整个相位图的信息,因此,虽然其解缠结果具有良好的连续性和平滑性,但是局部误差很容易扩散到全局解中。迄今,尽管关于这两大类相位解缠算法存在大量不同的改进和优化,但在处理包含噪声等问题的真实相位图时,仍没有哪种算法可以完美解决相位解缠面临的所有难题,相位解缠的结果仍有很大的提升空间。因此,研究更好的解缠方法使得相位解缠的精度和运算速度都能有所提高,依旧是当前处理相位数据过程中的研究重点,关于其研究具有很高的理论和现实意义[1]。

二、快速相位解包裹算法实例分析

首先,仿真得到一幅无噪声的包裹相位图,随后,通过快速相位解包裹算法(8次傅里叶变换算法)求解得到的相位如下图所示,即使执行了8次傅里叶变换,但实现相位解包裹,共用时0.19秒。
在这里插入图片描述

图1 基于8次傅里叶变换法的快速相位解包裹算法

当然,也可以实现基于6次傅里叶变换法的快速相位解包裹,其结果如下图所示:此时,在仿真情况下,完成上述解包裹共用时0.18秒。
在这里插入图片描述

图2 基于6次傅里叶变换法的快速相位解包裹算法

三、参考文献

[1] 袁雨凡. 基于递归正交和局部去噪的相位解缠研究 [D]; 安徽大学, 2020.


⭐️◎⭐️◎⭐️◎⭐️ · · · **博 主 简 介** · · · ⭐️◎⭐️◎⭐️◎⭐️

▁▂▃▅▆▇ 博士研究生生 ,研究方向主要涉及定量相位成像领域,具体包括干涉相位成像技术(如**全息干涉☑**、散斑干涉☑等)、非干涉法相位成像技术(如波前传感技术☑相位恢复技术☑)、此外,还对各种相位解包裹算法☑相干噪声去除算法☑等开展过深入的研究。

相关文章:

  • Mybatis-Plus用纯注解搞定一对多查询
  • 6.CF431E Chemistry Experiment 权值线段树+二分
  • 基于RFID技术的智能书架系统
  • 1014 Circles of Friends
  • Linux 下进程间通讯之内存映射详解
  • ROS官方教程知识点总结[低阶阶段]
  • Linux常见命令汇总-基于CentOS7
  • 让软件集成为您的业务创造更多价值
  • 猿创征文 | 云服务器部署——将项目部署到云服务器上
  • PET-MRI医学图像融合与混合神经胶质瘤分类模型
  • RACV2022观点集锦 | 视觉基础模型
  • 【GNN报告】复旦大学许嘉蓉:基于图数据的鲁棒机器学习
  • 树链剖分模板
  • 华为防火墙基础自学系列 | Hub Spoke IPsec VdPdNd
  • 瑞士知名媒体深度报道孙宇晨外交成绩:数字经济全球布道者
  • 分享一款快速APP功能测试工具
  • 【许晓笛】 EOS 智能合约案例解析(3)
  • bearychat的java client
  • C语言笔记(第一章:C语言编程)
  • Golang-长连接-状态推送
  • golang中接口赋值与方法集
  • js中的正则表达式入门
  • leetcode讲解--894. All Possible Full Binary Trees
  • npx命令介绍
  • SAP云平台运行环境Cloud Foundry和Neo的区别
  • Unix命令
  • Vue源码解析(二)Vue的双向绑定讲解及实现
  • Yii源码解读-服务定位器(Service Locator)
  • 关于 Cirru Editor 存储格式
  • 微信公众号开发小记——5.python微信红包
  • 微信小程序设置上一页数据
  • 分布式关系型数据库服务 DRDS 支持显示的 Prepare 及逻辑库锁功能等多项能力 ...
  • 树莓派用上kodexplorer也能玩成私有网盘
  • ​iOS实时查看App运行日志
  • ​Python 3 新特性:类型注解
  • #我与Java虚拟机的故事#连载06:收获颇多的经典之作
  • #我与Java虚拟机的故事#连载18:JAVA成长之路
  • $.ajax中的eval及dataType
  • (10)STL算法之搜索(二) 二分查找
  • (C#)获取字符编码的类
  • (C语言)求出1,2,5三个数不同个数组合为100的组合个数
  • (蓝桥杯每日一题)love
  • (六)vue-router+UI组件库
  • (牛客腾讯思维编程题)编码编码分组打印下标题目分析
  • (循环依赖问题)学习spring的第九天
  • (原創) 如何刪除Windows Live Writer留在本機的文章? (Web) (Windows Live Writer)
  • .Net Core webapi RestFul 统一接口数据返回格式
  • .net生成的类,跨工程调用显示注释
  • @Controller和@RestController的区别?
  • @vue/cli脚手架
  • [Android Studio 权威教程]断点调试和高级调试
  • [BZOJ] 1001: [BeiJing2006]狼抓兔子
  • [Django 0-1] Core.Handlers 模块
  • [DNS网络] 网页无法打开、显示不全、加载卡顿缓慢 | 解决方案
  • [docker] Docker的数据卷、数据卷容器,容器互联