基于迭代正则化的边缘投影轮廓测量修复

news2024/9/20 16:07:23

文章名称:Inpainting For Fringe Projection Profilometry Based on Iterative Regularization

代码地址:

 💡 摘要:本文提出了一种基于迭代正则化技术的新的条纹投影轮廓术(Fringe Projection Profilometry, FPP)修复算法。传统的FPP方法在物体表面出现高光区域时,通常无法准确重建物体的三维模型。在所提出的方法中,使用解析复小波变换(Analytic Complex Wavelet Transform)检测高光区域,然后基于迭代正则化模型,通过在复小波域中填充相应的高光区域来恢复缺失的条纹图案。通过使用合成和真实物体在不同光照条件下进行模拟和实验,实验结果表明,所提出的算法能够准确重建带有高光区域的物体的三维模型。

主要内容和创新点:

主要内容: 这篇文章主要讨论了一种新的用于条纹投影轮廓术(Fringe Projection Profilometry, FPP)的修复算法,该算法基于迭代正则化技术。文章首先介绍了FPP技术的基本原理,即通过投影条纹图案并捕捉由物体形状变形后的条纹图像来获取物体的深度信息,从而重建其三维模型。然而,在实际应用中,物体表面的高光区域会对条纹图像造成干扰,影响深度图的重建质量。为了解决这个问题,文章提出了一种新的算法,该算法能够在复小波域中检测和修复高光区域,从而恢复缺失的条纹图案,并最终重建出准确的三维模型。

创新点:

  1. 高光区域检测:文章提出了一种使用解析复小波变换(Analytic Complex Wavelet Transform, DTCWT)来检测高光区域的方法。这种方法能够在复小波域中有效地识别出高光区域,为后续的修复工作提供基础。
  2. 迭代正则化修复:文章采用了一种基于总变分范数(Total Variation Norm, TV-norm)的迭代正则化方法来修复高光区域。这种方法利用了条纹图像在复小波域中的片平滑特性,通过迭代过程恢复缺失的复杂小波系数,从而重建出完整的条纹图案。
  3. 算法效率:所提出的修复算法具有较低的计算复杂度,因为DTCWT的实现确保了最小化过程的高效执行,该过程使用分裂Bregman方法(Split Bregman Method)进行。
  4. 实验验证:文章通过模拟和实验验证了所提出算法的有效性。实验结果表明,与传统的DTCWT方法和传统的修复方法相比,新算法能够更有效地纠正由于高光引起的条纹图像错误,提高了三维模型重建的准确性。

总的来说,这篇文章的创新之处在于提出了一种新的针对FPP中高光问题的处理方法,该方法能够在保持计算效率的同时,有效提高三维模型重建的质量和准确性。

文章部分内容摘录:

引言”(Introduction)

使用条纹投影轮廓术(Fringe Projection Profilometry, FPP)技术,我们可以获得物体的深度图信息,从而重建它们的三维(3D)模型。FPP的基本操作是通过投影仪投影的条纹图案与相机捕获的产生的条纹图像之间进行三角测量。在过去的十年中,FPP领域取得了显著的成就,这些成就使得物体的三维信息能够实现实时和高精度的测量[1][2]。在大多数FPP应用中,通常假设相机能够适当地捕获所有部分的变形条纹图像。然而,在现实世界的应用中,由于物体的材料和环境条件,这并不总是成立的。例如,当条纹图案被投影到瓷器物体上时,相机捕获的条纹图像将被由全局照明和直接照明引起的高光污染。这样的高光在不同视角下的大小和外观会发生变化。它们会破坏条纹图像,从而显著影响深度图重建结果。图1(a)和(b)展示了一个带有高光区域的陶瓷盘子的例子及其对应的条纹图像。请注意,高光已经在图像中压倒了底层的条纹图案。

为了处理这一挑战性任务,一种方法是根据主动立体技术[3]从不同视点获取几个条纹图像,或者使用移动相机/移动场景方法[4]、滑动投影仪方法[5]或偏振过滤方法[6][7]。尽管这些技术在去除高光方面是有效的,但它们需要额外的硬件,增加了系统的成本和复杂性。另一种方法是通过获取物体的多个条纹图像。例如,[7]中的方法使用高频图案的相移方法来三维重建半透明物体;而[2][8][9]中的方法使用离散条纹图案来减轻间接照明问题和次表面散射。这些技术更可取且成本效益更高,但它们有一个重要的缺点,即构建一个三维模型需要大量的条纹图像。这限制了这些方法对动态物体的适用性。它们在计算上也是昂贵的。恢复图像退化区域是一个典型的修复问题。已经开发了许多修复方法来增强由于某些区域丢失而退化的图像[10]。然而,这些方法大多是针对具有RGB颜色空间的自然图像。一个能够有效适应FPP环境的修复算法尚未被开发出来。在本文中,我们提出了一种新的基于迭代正则化技术的修复算法,用于去除条纹图像中的高光效果。首先,我们采用了一个高频条纹图案,正如最近在[6][7]中提出的,以减轻高光的影响。与[7]不同的是,我们只使用了一个条纹图案,因此条纹图像中的高光仍然存在(见图1(b))。其次,我们使用双树复小波变换(Dual-Tree Complex Wavelet Transform, DTCWT)将图像转换到复小波域。然后,通过分析粗级别复小波系数的幅度来检测高光区域。最后,我们采用总变分范数(TV-norm)迭代正则化方法来恢复由于高光而缺失的条纹的复小波系数。增强的条纹图像可以通过逆DTCWT获得,最终在相位解包裹过程之后,可以节俭地获得深度信息。

问题定义”(Problem Definition)

在高光存在的情况下,相机传感器测量的总辐射是直接照明和全局照明的总和[9]: $\ L(x, y) = L_d(x, y) + L_g(x, y)$ 其中 $L_d(x, y)$ 是来自投影仪的直接光,\( L_g(x, y) \) 是全局照明。关于全局照明的详细解释,读者可以参考[9]。在FPP中,投影到物体上的条纹图案根据物体形状发生变形,并且相机将捕获变形后的条纹图像,如下所示: $\ I(x, y) = [c_d(x, y) + c_g(x, y)] \cos(\phi(x, y) + \phi_c(x, y)) ]$ 其中 $\ \phi(x, y)$ 是条纹的相移,它与物体高度有直接关系。换句话说,如果已知 $\ \phi(x, y)$ ,就可以立即重建物体的三维模型。因此,目标是从可能已经被全局照明 $\ L_g(x, y)$ 引入的高光破坏的条纹图像 $\ cI(x, y)$ 中获得 $\ (\phi(x, y) )$ 的良好估计。

在本节中,我们定义了在高光影响下FPP重建三维模型的问题,并阐明了如何从可能被高光破坏的条纹图像中恢复出准确的相位信息的挑战。

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

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

相关文章

CrossOver 23 用户可以免费升级到 CrossOver24吗?CrossOver用户如何升级呢?

也就是上个月(2024年2月底)左右,CrossOver 刚刚更新了 24 版本,CrossOver更新的内容有哪些,大家可以参考这篇文章:CrossOver24.0新功能介绍,这篇文章详细介绍了CrossOver24有哪些新特点&#xf…

Harbor高可用(nginx和keepalived)

Harbor高可用(nginx和keepalived) 文章目录 Harbor高可用(nginx和keepalived)1.Harbor高可用集群部署架构1.1 主机初始化1.1.1 设置网卡名和ip地址1.1.2 设置主机名1.1.3 配置镜像源1.1.4 关闭防火墙1.1.5 禁用SELinux1.1.6 设置时…

软考90-上午题-【操作系统】-死锁

一、同类资源分配不当引起死锁 系统中有m个资源&#xff0c;被n个进程共享&#xff0c;每个进程都要求k个资源。 当m < n*k时&#xff0c;即&#xff1a;资源数<进程所要求的总数时&#xff0c;可能会引起死锁。&#xff08;但是不一定&#xff01;&#xff09; 例如&…

初识数据库|数据库的特点、分类以及作用

数据库系统&#xff08;DateBase System&#xff0c;简称DBS&#xff09;是指在计算机系统中引入数据库后的系统构成&#xff0c;由计算机硬件&#xff0c;操作系统&#xff0c;DBMS&#xff0c;DB&#xff0c;应用程序和用户以及数据库开发和管理人员等组成。 &#xff08;一…

RK3568 安装Miniconda3

下载链接:https://download.csdn.net/download/smile_5me/89012477?spm=1001.2014.3001.5503 需要RK3568运行Ubuntu,之前的文章有关于如何安装Ubuntu以及遇到的问题 1、 拷贝 Miniconda3-latest-Linux-aarch64.sh 到开发板 2、运行安装 Miniconda3-latest-Linux-aarch64.…

Maven 环境一键部署

文章目录 一、场景说明二、脚本职责三、参数说明四、操作示例五、注意事项 一、场景说明 本自动化脚本旨在为提高研发、测试、运维快速部署应用环境而编写。 脚本遵循拿来即用的原则快速完成 CentOS 系统各应用环境部署工作。 统一研发、测试、生产环境的部署模式、部署结构、…

Oracle 写丢失保护/影子表空间(Lost Write Protection with Shadow Tablespace)

写丢失是Oracle数据库与独立I/O子系统交互时一种错误场景。假如Oracle发出的写磁盘命令&#xff0c;I/O子系统也返回成功写磁盘的消息&#xff08;但数据此时可能依然在I/O系统缓存中&#xff09;&#xff0c;如果在I/O系统实际写盘之前Oracle再次读取该数据&#xff0c;则I/O系…

sparksql简介

什么是sparksql sparksql是一个用来处理结构话数据的spark模块&#xff0c;它允许开发者便捷地使用sql语句的方式来处理数据&#xff1b;它是用来处理大规模结构化数据的分布式计算引擎&#xff0c;其他分布式计算引擎比较火的还有hive&#xff0c;map-reduce方式。 sparksql…

网络编程 - 套接字

1、预备知识 1.1、理解源IP地址和目的IP地址 在IP数据包头部中, 有两个IP地址, 分别叫做源IP地址, 和目的IP地址&#xff1b; 思考: 我们光有IP地址就可以完成通信了嘛? 想象一下发qq消息的例子, 有了IP地址能够把消息发送到对方的机器上, 但是还需要有一个其他的标识来区分…

Windows server 2012 R2系统怎么显示桌面图标

当我们在使用Windows server2012 R2服务器计算机时&#xff0c;为了方便&#xff0c;我们可以添加桌面图标。下面就给大家分享一下添加桌面图标的方法&#xff1b; 操作步骤如下&#xff1a; 1、第一步&#xff0c;我们打开server服务器&#xff0c;就可以看到如下画面&#x…

Elasticsearch从入门到精通-06ES统计分析语法

Elasticsearch从入门到精通-06ES统计分析语法 bucket和metric概念简介 bucket就是一个聚合搜索时的数据分组。如&#xff1a;销售部门有员工张三和李四&#xff0c;开发部门有员工王五和赵六。那么根据部门分组聚合得到结果就是两个bucket。销售部门bucket中有张三和李四&…

【ESP32 Arduino】定时器的使用

文章目录 前言一、ESPTIMER定时器的介绍1.1 定时器是什么 二、分频系数2.1 为什么需要分频系数2.2 分频系数怎么计算 三、定时器的使用3.1 初始化定时器对象3.2 设置中断时间3.3 设置回调函数3.4 使能定时器 四、示例代码总结 前言 在嵌入式系统中&#xff0c;定时器是一项重要…

Iterator对象功能学习

package config;import java.util.Iterator; import java.util.Properties; import java.util.Set;/*** 这个类演示了如何使用Properties类来存储和访问键值对。* Properties类继承自Hashtable&#xff0c;因此它可以用来存储键值对数据&#xff0c;且支持同步。*/ public clas…

Git多分支管理实践

想要实现本地文件对远程文件的管理&#xff0c;必须懂得Git的相关操作。 工作中不免会遇到一个仓库多个分支的管理。 git多分支管理属于git的进阶版操作&#xff0c;下面我们来看看。 1. 拉取一个git仓库 git仓库名假设为&#xff1a;test_demo&#xff0c;默认是主仓库&…

文件路径引用错误

报错This dependency was not found: * /view/superAdmin/menu/icon.vue in ./node_modules/cache-loader/dist/cjs.js??ref--13-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--1-0!./node_modules/vue-loader/lib??vue-loader-opti…

云手机为企业出海提供多元化解决方案

随着全球市场的不断扩大&#xff0c;发展出海业务已经成为许多企业开发新市场的重要途径。而在这个竞争激烈的市场中&#xff0c;云手机作为一种全新的工具&#xff0c;为企业提供了多元的解决方案&#xff0c;助力其在海外市场通过各种方式取得成功。本文将介绍企业可以通过云…

利用pexpect实现ssh自动登录时命令行无法自动换行问题解决

问题描述 使用python的pexpect模块的pexpect.spawn()进行ssh自动登录时&#xff0c;出现超出一定长度&#xff08;80个字符&#xff09;时光标自动切换到本行行首进行覆盖输入的情形 原因 使用spawn时输入窗口大小默认限制为[24,80]&#xff08;可通过spawn类的getwinsize(…

Maximizing Influence with Graph Neural Networks

Abstract 寻找使网络影响力最大化的种子集是一个众所周知的 NP 难题。尽管贪心算法可以提供接近最优的解决方案&#xff0c;但影响估计的子问题导致解决方案效率低下。在这项工作中&#xff0c;我们提出了 GLIE&#xff0c;这是一种图神经网络&#xff0c;它学习如何估计独立级…

新能源汽车充电桩消防安全视频智能可视化监管建设方案

一、方案背景 据应急管理部门统计公布的数据显示&#xff0c;仅2023年第一季度&#xff0c;新能源汽车自燃率就上涨了32%&#xff0c;平均每天就有8辆新能源汽车发生火灾&#xff08;含自燃&#xff09;。在已查明起火原因中&#xff0c;58%源于电池问题&#xff0c;19%源于碰…

备战蓝桥杯Day34 - 每日一题

题目描述 解题思路 1.输入数据n&#xff0c;并将字符串类型转换成整数类型 2.求出输入n是2的几次幂&#xff08;调用math库中的求对数的方法&#xff09;&#xff0c;在下面的循环中要用到 3.定义sum和&#xff0c;将抽取到的牌的总数加起来存储 4.count 0 # 记录 2 的第几…