文献学习-37-动态场景中任意形状针的单目 3D 位姿估计:一种高效的视觉学习和几何建模方法

news2024/11/28 20:49:36

On the Monocular 3D Pose Estimation for Arbitrary Shaped Needle in Dynamic Scenes: An Efficient Visual Learning and Geometry Modeling Approach

Authors: Bin Li,† , Student Member, IEEE, Bo Lu,† , Member, IEEE, Hongbin Lin, Yaxiang Wang, Fangxun Zhong, Member, IEEE, Qi Dou, Member, IEEE and Yun-Hui Liu, Fellow, IEEE

Source: IEEE TRANSACTIONS ON MEDICAL ROBOTICS AND BIONICS

Keywords: Surgical Robotics, Pose Estimation, Geometry Modeling, Vision-based Manipulation

Abstract:

导向图像的针具姿态估计对于机器人自主缝合至关重要,但它面临着重大挑战,因为针具的视觉投影细长,且手术环境动态多变。当前最先进的方法依赖额外的先验信息(如手握姿态、精确的运动学等)来实现亚毫米级别的精度,这限制了它们在不同手术场景中的应用。这篇论文提出了一种新的通用框架,用于单目针具姿态估计:视觉学习网络用于高效的几何特征提取,以及新颖的几何模型用于精确的姿态恢复。

为了精确捕获针具的特征,引入了一种基于形态学的多尺度掩码轮廓融合机制。然后,为针具姿态建立了一个新的状态表示,并开发了一个物理投影模型来推导其与特征之间的关系。还制定了一个抗遮挡目标,以联合优化姿态和推断特征的偏置,从而在遮挡场景下实现亚毫米级别的精度。方法既不需要CAD模型,也不依赖于圆形形状的假设,可以广泛估计其他小型平面轴对称物体的姿态。

在内外活体实验场景中验证了估计的中间特征和针具最终姿态的准确性。进一步将框架部署到dVRK平台上,实现针具的自动精确操作,证明了其在机器人手术中的应用可行性。

图 1. 实时精确的针位姿估计示意图:动态且具有挑战性的手术场景,可以促进真实操作平台中各种针相关操作的机器人辅助自动化,例如 dVRK 系统中的针通过。

自动机器人手术有潜力显著提高手术精度,确保不受外科医生个体因素影响的一致性,并增强相比手动手术的安全性。自主缝合是自动化手术的关键组成部分,包括针具操作,如抓取、插入和交接等。

为了提高机器人缝合的效率和可靠性,过去几十年来,研究人员一直关注针具操作的自动化。在临床共识中,自主缝合的核心部分是实时针具姿态估计,因为它为针穿透组织进行伤口闭合时的后续轨迹规划和动作控制提供指导信息。然而,针具姿态估计通常面临的重大挑战是如何在具有挑战性的手术环境中实现高精度,这直接影响到自主缝合的安全性。例如,手术场景中可能包含镜头污染、反射或其他干扰因素。另外,针具的窄长形状,加上可能被组织或器械遮挡,也会阻碍高精度的估计。

为了高效且准确地提取必要的感知信息,视觉感知模型应该针对针具形状进行定制,防止在未针对针具形状设计的自然视觉方法中(如[8]和[9]中较大的或正常形状的物体)提取不准确的视觉特征。基于视觉特征,姿态求解器需要在缝合过程中准确且可用,因此它应该达到与当前最先进的方法相当的精度,但不需要它们所需的一些先验假设,如手握姿态配置或者准确的运动学信息。这是关键,因为在不被夹持器夹住时,针可以在空间或组织中的任何位置。此外,算法应该对噪声不敏感,以在出现意外噪声时保持姿态估计的鲁棒性。考虑到不同手术中针具的多样性(例如,妇科和整形手术中针的圆形/通用形状),算法应该具有通用性,以适应不同形状的针具,并且易于应用于各种手术程序。因此,开发一种新的针具姿态估计模型,系统地解决上述问题,对于实现机器人辅助自主缝合至关重要。

在本文中,提出了一种系统框架,实现在具有挑战性的手术场景中实时的针具姿态估计,达到当前最先进的性能,而无需依赖先验假设(如手握设置或圆形形状)。为了应对与针具形状相关的视觉感知挑战,提出了一种定制的针具网络(Needle-Net),用于从单目图像中提取针具的几何特征,包括掩码、关键点和检测结果,这些可以端到端地进行训练。为了获得有助于后续精确姿态估计的针具细长细节,首先在多尺度上分别学习粗掩码和精细轮廓,然后利用一种新颖的基于形态学的掩码轮廓融合机制将它们合并成精确的针具掩码。然后,开发了一种基于稀疏点描述符和基于几何的图像平面上的6自由度(DoF)物理模型的新型几何模型,并在几何流形上优化姿态。接着,提出了一个新颖的抗遮挡目标函数,涉及重新投影的点和掩码,随后使用粗到细的非线性优化器求解,实现高效且准确的姿态估计,能够补偿复杂手术场景中细长针具的不准确视觉感知。最后,在自收集的活体临床数据集和脱活体模型数据集上验证了框架,结果表明方法可以实现对中间特征和最终估计针具姿态的精确估计。此外,通过在达芬奇研究套件(dVRK)上进行视觉引导的针具操作评估了框架,证明了它在自动化机器人辅助手术中的可行性。

这是前期工作的全面改进版本,该工作在AccelNet手术机器人挑战赛中排名第一。这是第一个可以在动态遮挡环境中从单目图像中实时准确估计任意形状针具姿态的工作,精度达到亚毫米级别,为机器人手术中的自动针具操作奠定了坚实的基础。主要贡献如下:

1. 提出视觉学习与几何建模的无缝结合,实现高精度的姿态估计。
2. 一个高效的针具网络,用于提取长而窄形针具对象的精确几何特征。
3. 一种新的针具姿态表示状态空间,以及在这个空间上的基于几何的的姿态优化模型。
4. 在活体/脱活体图像和真实机器人部署的广泛实验,展示了姿态精度及其在自动手术中的适用性。

如表I所示,与现有方法进行了比较,并强调了在通用可操作性方面的独特优势:
1. 它可以在动态遮挡的手术场景中运行,提供与当前最先进的方法相当的精度,同时避免了额外的先验假设(如手握姿态或准确的运动学)。
2. 其高效流程(约60fps)和准确性能(@0.85mm/2.75°的误差)使得它适合在手术机器人中部署。

图 2. 所提出的框架由一个多任务 Needle-Net 组成,该网络共享一个特征编码器和用于提取几何基元的不同头,即用于针存在的检测头、用于对象分割的掩模头以及用于关键点定位的关键点头和 能见度。 如果检测到针,则将使用代数几何模型根据先前提取的几何基元以及附加解耦参数(稀疏点先验和相机固有参数)来有效估计新颖的 6-DoF 位姿空间中的 3D 位姿。 否则,如果没有检测到针,则不需要进一步估计。

图3 基于透视投影的3D几何姿态模型。 针是一个具有固定中心轴的弯曲物体,用沿轴的对应点对其进行编码。

A. 框架概述:

该框架由多任务 Needle-Net 和几何 3D 位姿估计组件组成。
Needle-Net 首先确定针是否存在,如果存在,则提取几何基元,如分割掩模、关键点等。
然后,几何姿态估计组件使用这些基元来有效地估计针的 3D 姿态。


B. 检测、分割和几何基元提取子网络:

Needle-Net 使用共享特征编码器和单独的头进行检测、分割和关键点提取。
对于分割,它使用基于形态学的掩模轮廓融合(MCF)机制来精确分割细弯针。
对于关键点,它提取针的起点和终点并对它们的可见性/遮挡进行分类。
它使用结合交叉熵和 Jaccard 损失的混合损失函数来训练分割,并使用关键点的几何原始损失。
为了使框架轻量级以进行实时部署,它使用深度可分离卷积。
总体而言,关键创新在于多任务 Needle-Net 架构、用于精确分割的 MCF 模块以及基于提取的图元构建的几何姿态估计组件。

图 4. 几何示意图对应于基于恒定深度假设的 (a) θinit1 和 (b) θinit2 的初始粗略计算。

图5.存在遮挡时的姿态估计示意图。 优化函数考虑可见区域像素到投影轴点集的最小距离,遮挡部分不影响最小JA对应的位姿极值。

C. 针状物体的 3D 位姿估计

 1. 几何投影模型及表示法: - 针状物体使用沿其曲线中心轴的离散点来表示。 - 使用投影的起点/终点和描述针方向的两个角度(θ1、θ2)定义新颖的 6-DoF 位姿空间。 - 导出方程来计算针在相机框架中的平移和旋转分量。

2. 3D Pose初始化: - 当检测到针时,使用恒定深度假设和提取的关键点来估计初始粗略姿势。 - 初始角度θ_init1和θ_init2根据几何关系计算。

3. 3D姿势的细化: - 制定了抗遮挡目标函数 (JA),以最小化可见掩模区域中的像素与投影的 3D 点之间的距离。 - LM算法用于有效优化6-DoF位姿参数x以最小化JA。

- 对于具有一个闭塞关键点的圆形针,执行附加的局部旋转细化步骤。 - EKF 用于平滑机器人部署过程中的稳定性估计姿势。

关键的创新是新颖的 6-DoF 姿态表示、抗遮挡目标函数以及利用提取的几何基元的从粗到细的姿态估计方法。

实验部分:

A.数据集:
- 作者根据体内子宫切除视频和体外模型模拟操作创建了一个包含 1428 张图像(769 张阳性图像,659 张阴性图像)的新数据集。
- 阳性样本用掩模、开始/结束关键点及其可见性/遮挡进行注释。
- 使用带有 apriltags 的透明亚克力板创建了额外的 20 个案例评估数据集,以获得地面真实 3D 姿势。

B. 实施细节:
- Needle-Net 使用 NVIDIA RTX 3090 GPU 和 Adam 优化器进行训练。
- 对于 3D 位姿估计,根据已知的物理参数或样条拟合对针轴进行均匀采样(200 个点)。
- Levenberg-Marquardt 算法用于姿势优化,并使用 EKF 过滤最终姿势输出。
- 该框架部署在达芬奇研究套件 (dVRK) 平台上,用于自动针操作。

C. 检测、分割和几何特征检测的评估:
- Needle-Net 在测试集上实现了 100% 的检测准确率,优于 VGG16、ResNet18 和 MobileNet18。
- 对于关键点检测,Needle-Net 的平均准确率达到 95%,优于 Keypoint-RCNN 和 DeepLabCut。
- 对于分割,具有所提出的损失和 MCF 模块的 Needle-Net 实现了最佳性能,平均 DSC 为 85.77%,平均 IoU 为 80.72%,优于 U-Net、PSPNet 和 ViT-Adapter。

D. 3D位姿估计评估:
- 定性结果表明该方法可以处理手术场景中的各种遮挡场景、反射和其他具有挑战性的条件。
- 对 20 个案例数据集的定量评估显示,中位位置误差为 1.42 毫米,中位方向误差为 2.16 度。
- 该框架已成功部署在 dVRK 平台上,用于自动针操作任务。

总的来说,实验证明了所提出的多任务 Needle-Net 和 3D 姿态估计框架在具有挑战性的手术场景中的有效性。

图 6. 来自内部子宫切除术和几个体模的带注释的自我收集图像示例。 从上到下逐行依次是原始图像、掩模、起始关键点热图和结束关键点热图。 热图周围的绿色框表示关联的关键点可见,而红色框表示关联的关键点被遮挡

图 7.(a) 根据真实图像数据进行 3D 姿态评估的一般图像。 手动提取不包含 apriltag 的子图像(如左侧未变暗的部分所示)并用作 Needle-Net 输入图像。 apriltag 用于计算 3D 位姿 GT。 (b) 重新投影到原始图像上的估计 3D 姿态。

Reference:

[1] Li, B., Lu, B., Lin, H., Wang, Y., Zhong, F., Dou, Q., & Liu, Y. H. (2024). On the Monocular 3D Pose Estimation for Arbitrary Shaped Needle in Dynamic Scenes: An Efficient Visual Learning and Geometry Modeling Approach. IEEE Transactions on Medical Robotics and Bionics.

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

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

相关文章

刷代码随想录有感(33):滑动窗口滑行途中框内最大值

又是需要死记硬背理解的题目。 题干如下: 代码&#xff1a; class Solution { private:class MyQueue{deque<int> que;public:void pop(int value){if(!que.empty() && value que.front()){que.pop_front();}}void push(int value){while(!que.empty() &&…

「51媒体」媒体邀约采访的分类?

传媒如春雨&#xff0c;润物细无声&#xff0c;大家好&#xff0c;我是51媒体网胡老师。 媒体邀约采访可以根据不同的标准进行分类。以下是一些常见的分类方式&#xff1a; 1. 按照邀约形式&#xff1a; - 电话邀约&#xff1a;通过电话与媒体联系&#xff0c;说明采访或报道…

地质灾害监测预警系统:科技守护,构筑智能预警屏障

随着全球气候变化和人为活动的加剧&#xff0c;地质灾害频繁发生&#xff0c;给人们的生命财产安全带来了严重威胁。为了降低地质灾害带来的损失&#xff0c;地质灾害监测预警系统应运而生。本文将为您详细介绍地质灾害监测预警系统的原理、功能以及在实际应用中的效果。 一、地…

AI-数学-高中-37频率与概率、概率基础知识综合示例

原作者视频&#xff1a;【概率】【一数辞典】6频率与概率_哔哩哔哩_bilibili 当直接求概率不好求时&#xff0c;通过大量的实验的频率来估算概率。 在频数越大的情况下&#xff0c;波动越来越小&#xff0c;频率越稳定&#xff0c;去向一个稳定的数值&#xff0c;这个值就是概…

敢教日月换新天!SuperHarness-3D:电控行业生态圈的国产电控仿真利器!

SuperHarness-3D&#xff08;以下简称SH-3D&#xff09;是利驰软件基于三维建模软件SolidWorks平台开发的一款聚焦于电气/自动化一体化设备/柜体的布线设计仿真软件&#xff0c;是利驰首款机电协同设计理念产品。 SH-3D是一款电气端的高效管理&设计工具&#xff0c;在传统…

【LeetCode】 2724. 排序方式

排序方式 给定一个数组 arr 和一个函数 fn&#xff0c;返回一个排序后的数组 sortedArr。你可以假设 fn 只返回数字&#xff0c;并且这些数字决定了 sortedArr 的排序顺序。sortedArr 必须按照 fn 的输出值 升序 排序。 你可以假设对于给定的数组&#xff0c;fn 不会返回重复的…

普通人做抖音小店真的能赚钱吗?可以,但更取决于个人

大家好&#xff0c;我是电商花花。 现在做抖音小店的基本上都是一些新商家&#xff0c;对于我们众多零基础的朋友来说&#xff0c;是期待也是一份挑战。 抖音小店作为一个充满机会的新兴平台&#xff0c;许多人都欣喜的投入其中&#xff0c;期望能够借此来改变自己的命运&…

护眼灯哪个品牌好?五大护眼灯品牌推荐

护眼灯哪个品牌好&#xff1f;在挑选对眼睛有益的台灯时&#xff0c;专业护眼台灯无疑是明智的选择。这类台灯不仅严格按照国家的标准制造&#xff0c;确保了安全与质量的可靠性&#xff0c;除此之外护眼台灯还采用了经过精心设计的发光结构&#xff0c;有效减少了光线对眼睛的…

C++跨平台helloworld【安卓为特例得条件编译】

首先 遇到个问题略跨了我的技术栈盲区 虽然学过点u游戏开发 ue嘛侧重主机端 许是这问题角度略清奇等 总之竟没在csdn搜到 sos so 先问了某cpp技术栈语言能力者朋友 真人解答&#xff1a; 话虽这么说 实际上具体怎么写我还不确定&#x1f62c; 基于科学严谨的态度 于是又…

Linux 添加启动服务--Service

1&#xff0c;服务配置service文件 Service 服务的实际作用是开启后自动启动服务&#xff0c;运行一些不须要登录的程序&#xff0c;任务。 实例1、上电自动连接WIFI热点 1.1 新建.service文件 /etc/systemd/system/wificonnect.service [Unit] DescriptionService [wifico…

记一次Serializable序列化和反序列化导致的线上报错

个人博客地址&#xff1a;https://blog.flycat.tech/archives/1709570797355 背景 某个需求上线后告警群里面收到了报错的消息&#xff0c;报错摘要如下&#xff1a; Cannot deserialize; nested exception is org.springframework.core.serializer.support.SerializationFai…

P9241 [蓝桥杯 2023 省 B] 飞机降落

原题链接&#xff1a;[蓝桥杯 2023 省 B] 飞机降落 - 洛谷 目录 1. 题目描述 2. 思路分析 3. 代码实现 1. 题目描述 2. 思路分析 dfs全排列的变形题。 因为最后问飞机是否降落&#xff0c;并且一架飞机降落完毕时另一架飞机才能降落。所以我们设置dfs的两个变量cnt为安全…

【随笔】Git 高级篇 -- 管理多分支 git rebase(二十二)

&#x1f48c; 所属专栏&#xff1a;【Git】 &#x1f600; 作  者&#xff1a;我是夜阑的狗&#x1f436; &#x1f680; 个人简介&#xff1a;一个正在努力学技术的CV工程师&#xff0c;专注基础和实战分享 &#xff0c;欢迎咨询&#xff01; &#x1f496; 欢迎大…

支付系统核心逻辑 — — 状态机(JavaGolang版本)

支付系统核心逻辑 — — 状态机 代码地址&#xff1a;https://github.com/ziyifast/ziyifast-code_instruction/tree/main/state_machine_demo 1 概念&#xff1a;FSM&#xff08;有限状态机&#xff09;&#xff0c;模式之间转换 状态机&#xff0c;也叫有限状态机&#xff08…

TCE测试管理平台-社区版(免费),手机端小程序如何使用?

TCE测试管理平台社区版&#xff08;免费&#xff09;是泽众云测试平台SAAS服务产品之一&#xff0c;提供给个人和企业免费使用&#xff0c;无需安装&#xff0c;注册即可使用。 TestCenter Enterprise&#xff08;简称TCE&#xff09;是由泽众软件开发的一款面向测试流程的测试…

深入K8S实战

K8S: 深入K8S实战进阶篇 1、搭建 Kubernetes 集群 1.1、搭建方案 1.1.1、minikube minikube 是一个工具&#xff0c; 能让你在本地运行 Kubernetes。 minikube 在你的个人计算机&#xff08;包括 Windows、macOS 和 Linux PC&#xff09;上运行一个一体化&#xff08;all-i…

【经典算法】LeetCode 136:只出现一次的数字(Java/C/Python3实现含注释说明,Easy)

个人主页&#xff1a; 进朱者赤 阿里非典型程序员一枚 &#xff0c;记录平平无奇程序员在大厂的打怪升级之路。 一起学习Java、大数据、数据结构算法&#xff08;公众号同名&#xff09; 目录 题目描述思路及实现方式一&#xff1a;使用异或运算&#xff08;推荐&#xff09;思…

【LatentDiffusion 代码详解(1)】LatentDiffusion 的 yaml 解读

YAML 文件提供了一种清晰、简洁且易于理解的方式来描述配置信息&#xff0c;特别适用于机器学习模型的超参数调优和实验管理。 以 Latent Diffusion 官方代码仓库中的 https://github.com/CompVis/latent-diffusion/blob/main/configs/autoencoder/autoencoder_kl_32x32x4.yam…

MySQL表结构的操作

文章目录 1. 创建表2. 查看表3. 修改表4. 删除表 1. 创建表 create table table_name (field1 datatype,field2 datatype,field3 datatype )character set 字符集 collate 校验集 engine 存储引擎;field&#xff1a;列名datatype&#xff1a;列的类型character set&#xff1a…