FPGA在医疗的应用,以4K医疗内窥镜为例

前言

随着技术的发展,医学影像作为科学技术的主要成就之一,在无创诊断和治疗领域已经有了多种应用。其中一个应用是内窥镜,在20世纪90年代,当利用电荷耦合装置将图像传输到显示器上成为可能时,内窥镜变得更加广泛。为了帮助医生更好地识别和定位病灶,厂商不断提高内窥镜的分辨率,人体医疗内窥镜的分辨率从1080P逐渐发展到如今的4K。除此之外,荧光和3D技术都被创造性地加入,以进一步帮助医生更准确地诊断人体并进行手术。日前,工信部在《医疗装备产业发展规划 (2021-2025年) 》中,对医疗装备重点发展、突破方向作了详细规划,其中包含了要重点突破医用内窥镜等影像诊断设备的战略目标

技术挑战

在临床环节中,内窥镜应用允许的最大图像延迟在50至150毫秒之间。然而,对于外科手术来说,内窥镜需要实时或接近实时地做出反应,同时执行图像校正、色彩噪声修复、边缘增强、缩放等功能。此外该应用的终端应该尽量小巧,显示具备4K清晰度,3D,荧光并支持SDI/HDMI接口。4K只需要一个高清摄像头,而荧光和3D分别需要额外的一个高清摄像头,这也对核心板资源、数据传输和处理速率、算法效率提出了挑战。

解决方案

以FPGA SoC为核心技术的内窥镜系统可以做到实时4K视频流。4K图像传感器负责捕捉图像信息,而图像的信号处理则由Mercury+ XU8 FPGA(SoC模块完成。捕获的视频流被送入Mercury+ XU8 FPGA(SoC)模块进行图像预处理,然后通过图像管理和存储单元,将处理后的高清图像通过显示接口呈现在高清显示器上供外科医生观看。长期占据赛灵思首页的Mercury+ XU8核心板提供XCZU4CG、XCZU5EV、XCZU7EV三个型号,用户在需要更多资源时可选择更高端的型号,升级换代简单便捷。

水星Mercury+ XU8核心板

结构框图

除了Mercury+ XU8 FPGA (SoC),还有其他的SoC可以考虑用来实现这一应用,例如Mercury+ XU5, Mercury+ XU9。使用Mercury+ XU8 FPGA (SoC)模块可以实现硬件系统的高度集成,大大缩短开发时间。同时,通过支持各种外围接口,可以更加快速方便的实现未来的功能更新和扩展。由于瑞苏盈科庞大的产品序列,用户可在Xilinx Kintex-7、Zynq-7000、Zynq Ultrascale+ MPSoC等系列的多款核心板模块中进行选择。核心板模块在其系列(火星Mars、水星Mercury、仙女座Andromeda)内与其他大部分核心板管脚兼容,这意味着用户还可以规划明确的升级路径,升级换代时所付出的工程量大大减小,甚至可以在项目开发的过程中临时更改核心板型号。FPGA核心板模块最低预期生命周期为10年以上,同时在设计硬件时着重考虑产品前瞻的可用性和性能,所有产品均可长期交付。

核心板模块系列

FPGA(现场可编辑门阵列)作为赛灵思(Xilinx)的一项重要发明,以其可编程和灵活性著称。起初,FPGA只是用来仿真ASIC,再进行掩码处理和批量制造使用。不过ASIC相比FPGA来说明显在定制化上要求过高,流片量过小情况下成本反而更高,因此两者毫不冲突地“各司其职”。而后,随着加速器的出现和算力提升,目前已成为与GPU齐名的并行计算器件。

如今,FPGA已进发数据中心领域,相比CPU和GPU,FPGA所需器件更少,功耗也更优。赛灵思依靠其“数据中心优先”、“加速核心市场发展”、“驱动自适应计算”的三大战略加持下,使其ACAP平台和Alveo加速卡在数据中心市场极具竞争力。

除此之外,赛灵思曾为笔者展示过其云服务商领域的“一体化SmartNIC平台”、消费领域的“FPGA TCON”方案、工业领域的Zynq SoC系列方案。

实际上,根据赛灵思透露,医疗领域已占据赛灵思营收非常重要的比重,并且一直在11%-15%的速度增长。那么赛灵思是依靠什么FPGA产品占据的医疗市场,FPGA器件在医疗设备中扮演什么角色?

日前,赛灵思为记者介绍了近期在医疗科学和医疗设备方面的成果,21ic中国电子网记者受邀参加此次采访。

FPGA器件能用在什么地方

信息显示,全球人均医疗支出每年都在增长,随着人口老龄化加剧,消费者对医疗条件和医疗成本都有着极高的预期。另一方面,随着疫情的爆发,市场对病情的及早发现和诊断的快速分析有了更高的要求,这就需要医疗器械成本的进一步降低和算力的提升。

FPGA器件自身拥有可编程特性,借助这种优势,可避免ASIC器件前期高昂的一次性工程费用,消除最低订单数量和多芯片迭代风险和损失。医疗行业本身是与科技发展联系最为紧密的行业之一,伴随FPGA器件的不断迭代升级,更多新设备出现,引领了新的治疗方法、治疗途径、治疗理念的改变。

赛灵思医疗科学全球业务市场负责人Subh Bhattacharya

根据Subh Bhattacharya的介绍,赛灵思的FPGA器件在医疗领域的应用主要分为三类:临床、医疗成像和诊断分析。

01

临床环境

临床设备数量大种类多,因此需要灵活性极强的FPGA。需要注意的是,部分设备直接影响患者生命安全,对启动速度、安全稳定性、时延要求极高;部分设备在便携性上则有一定要求,对功耗、小尺寸有很大需求。

根据Subh的介绍,在临床方面,赛灵思的Zynq UltraScale+ MPSoC(下文简称为“ZU+ MPSoC”)是一个高度集成的平台,集成多个处理器,拥有可编程逻辑,此外还集成了信息安全和功能安全功能。Subh强调,这个技术平台的强大功能和性能非常适合在临床环境应用之中,包括从云端到边缘。

Subh为记者展示了几个利用该平台解决临床环境的实例:

其一是赛灵思与Spline.AI和AWS(亚马逊云服务)合作开发的医疗AI,利用ZU+MPSoC的ZCU104平台作为边缘设备,实现的高精度低时延的医疗X射线分型深度学习模型和参考设计。该方案可独立自主根据Chest X-Ray预测疾病,也可预测COVID-19和肺炎,也可开发定制模型供临床使用。另外,ZCU104支持开源语言PYNQ语言下开发,也可借助AWS IoT Greengrass实现进一步的扩展和部署。该方案发挥了ZU+ MPSoC的高性能和扩展性,赋予了低成本医疗设备高精度的诊断。

其二是赛灵思为奥林巴斯内窥镜核心技术提供支持。该方案发挥了ZU+ MPSoC在启动速度、功耗和低时延的特性。

其三是赛灵思为Clarius超便携高性能超声波系统。该方案发挥了ZU+ MPSoC片上双ARM处理器和FPGA的小尺寸封装特性,实现了超便携。

究其历史,Zynq SoC是赛灵思在2011年推出的全球首款集成ARM内核的产品,彼时该平台称为“可扩展的处理器平台”,主要是为了将市场扩展到嵌入式应用之中。此前FPGA多用作辅助芯片,自从引入更多功能的集成SoC平台之后,ARM GPU、数据安全处理器、功能安全处理器都被集成在单芯片之中。Subh表示,经过这样的转型之后,赛灵思从每年5%-6%的收入增长,实现了到14%-15%的收入增长,2.5倍的增长率全要归功于这样的技术平台。

除此之外,Subh还为记者展示ZU+ MPSoC在医疗安全上的解决方案。“目前,全球安装的医疗物联网设备超过1亿台,到2020年将增长到1.61亿台。医界高管认为 59%隐私问题, 55%老旧系统集成和54%安全问题,是阻碍当今医疗机构采用物联网的三大障碍。”

Subh表示,赛灵思可以利用可编程平台,不断适应新的安全防护措施,这种升级囊括了软件和硬件。最终体现在SoC上的,就是认证与加密启动、安全启动、测量启动、安全应用通信、基于云的监测等功能。

02

医疗成像

大型医疗成像设备使用FPGA器件已经是基本操作,Subh为记者介绍,在医疗成像方面,主要包括CT、超声、X射线、PET、MRI扫描仪等。

对于医疗成像,Zynq UltraScale+ MPSoC同样适用。Subh表示,除此之外还有Versal ACAP,这个系列可以理解为下一代的MPSoC,Versal ACAP在成像领域具有非常大优势。

Versal ACAP除了拥有ARM多处理器集成、可编程逻辑、DSP以外,还加入了AI引擎,即SIMD、VLIW这样的单元,可以支持很多类似操作的平行处理。

Subh为记者展示了超声波图像重构与计算机辅助诊断的方案,利用赛灵思的软硬件支持,能够降低功耗和热度范围、降低解决方案成本、延长设备使用寿命、低时延边缘推断,虽然市场非常复杂,赛灵思的技术也能够大大提高生产力。

03

诊断分析

Subh表示,除了SoC和FPGA,赛灵思还提供即插即用的Alveo加速卡,正因这是一种PCle的解决方案,因此可以大大降低开发时长。根据介绍,Alveo加速卡适用于任何通用PC,既可以加速CPU的普通任务,也可以加速其他的GPU的任务,最终实现高吞吐量和超低时延。其独特的算力和灵活应变能力,可以大大加速很多的医疗应用。

联影医疗(United Imaging)是一家中国公司,这家公司在使用Alveo U200加速卡替代传统GPU时发现,Alveo的技术成本更低、功耗更低,并且无需牺牲任何性能或是开发进度。

FPGA vs. CPU&GPU

医疗设备中使用CPU或者GPU产品的方案也屡见不见,为何FPGA拥有如此卓著效果,甚至有着替代CPU和GPU的“魔力”?实际上,CPU和GPU都属于冯诺依曼结构,FPGA能够突破结构上的限制因此拥有极强的能效。

具体来说,CPU和GPU需要使用SIMD(单指令流多数据流)来执行存储器、译码器、运算器、分支跳转处理逻辑等,FPGA则在烧写时已经确定每个逻辑单元的功能,因此不需要指令;另外,CPU和GPU在内存使用中是共享的,因此就需要访问仲裁,执行单元间的私有缓存使得部件间要保持缓存一致性,同样在烧写过程中FPGA已明确通信要求,因此无需共享内存进行通信。

得益于此,FPGA拥有极强的浮点乘法运算能力,而且对比同样是浮点运算的GPU延迟更低。这是因为,FPGA同时拥有了流水线并行和数据并行,而GPU只有数据并行。

从算力上来说,赛灵思还将FPGA器件转变为了SoC进行加速和自适应。赛灵思在加速上通过标量引擎实现,包括ARM、应用处理器和实时处理器,而自适应引擎的核心便是可编程逻辑器件FPGA,另外还配备智能引擎,目前配备的是DSP。特别是,在Versal ACAP的平台上还会将会有AI引擎进行支持,进一步进行加速和自适应。

“在医疗领域,诸如内窥镜这种应用,手术中患者拥有一个共同的要求,就是时延非常低,甚至需要实时来完成。从摄像头捕捉图像,经过管线处理,再到显示屏可能不到20微秒的时间。CPU和GPU达不到FPGA如此低的时延,因此这就是FPGA相比CPU和GPU的最大优势”,Subh继续为记者介绍,从功耗、成本和集成上,赛灵思SoC的FPGA也拥有更好的优势。

“很多领域,诸如视觉化,GPU使用很多年了,FPGA并不是做不到,不过我们还是会专注在优势的领域,即在封闭空间内做数据移动,而非断断续续的内存上传的情境”,Subh坦言。

不同层面分析FPGA在医疗的应用

能够在医疗领域,兼顾拥有业界领先的AI时延与性能,生命周期延长、高质量、高可靠性、高安全性,实时、确定性控制与接口的仅赛灵思一家。

赛灵思除了提供FPGA和 SoC这样的硬件器件及平台以外,还专门为降低FPGA 开发门槛满足广泛市场应用需求量身定制了Vitis AI统一软件平台。之前笔者也曾多次介绍这款软件平台,算法工程师无需硬件设计经验,也可直接应用算法的实现。

赛灵思的医疗解决方案帮助了Illumina对重症新生儿做基因组分析,为ICU患者和重症患者加速推进eyetech的基于眼球追踪的沟通平板电脑,与迈瑞合作以抗击新冠疫情。FPGA就是在不经意间为生命增添了一份敬畏。

笔者认为,赛灵思的FPGA器件从高性能加速和自适应两方面着手,成为了其在市场立足的最大竞争力。一方面,FPGA、ARM、应用处理器、实时处理器、DSP、AI引擎利用片上系统(SoC)和软件进行高度集成,既增强了算力也增强了应用的扩展性;另一方面,FPGA本身拥有的低延时性,对于时延要求极高的医疗领域可以说是“天生一对”。

从市场上来分析,随着疫情的爆发,医疗设备市场需求持续增加,其中不乏大型数据分析和便携性要求极高的设备,这刚好吻合了FPGA SoC的特点。另一方面,医疗水平的提升和市场马太效应之下,更具能效和低功耗优势的FPGA产品需求量持续增加。

从软件上分析,赛灵思的Vitis平台适用于不同人群,包括熟练掌握HDL语言的硬件工程师,熟练掌握各大编程语言的软件工程师,也适用于熟练掌握TensorFlow、Caffe、PyTorch的算法工程师。利用这种灵活性,可以让许多有创意的初创公司有了施展拳脚的可能。

通过赛灵思的介绍,可以说无论是大型设备还是便携设备,FPGA都有其一席之地。

未来赛灵思医疗创新之路该如何发展?Subh表示,在医疗产品上赛灵思将不断提高集成度并降低封装尺寸,另一方面,将会不断发展异构计算提高效率和性能。

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

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

相关文章

K8S node节点执行kubectl get pods报错

第一个问题是由第二个问题产生的,第二个问题也是最常见的 网上找的都是从master节点把文件复制过来,这样确实可以解决,但是麻烦,有一个node节点还好,如果有多个呢?每个都复制吗?下面是我从外网…

洛谷-P2089 烤鸡

P2089 烤鸡 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) #include<bits/stdc.h> using namespace std; const int N30; //const int M1e3*310; const int Mpow(3,10); int n; int arr[N]; //存临时方案 int res; //存方案数 int ans[M][N]; //存所有方案//x表示当前到…

会话跟踪技术基础:Cookie和Session

久违了&#xff0c;之前忙碌了一周赶毕设&#xff0c;今天抽空更新~ 一.理论知识 1.会话&#xff1a;用户打开浏览器&#xff0c;访问web服务器的资源&#xff0c;会话建立&#xff0c;直到有一方断开连接&#xff0c;会话结束。在一次会话中可以包含多次请求和响应~ 2.会话跟…

uniapp的h5项目 用命令起这个项目(vue-cli)

这里其实就相当于给uniapp h5套了一个vue-cli的壳&#xff08;纯属个人感觉&#xff09; 首先需要安装vue-cli 脚手架 npm install -g vue/cli然后创建项目&#xff08;这里需要在hbuilder创建&#xff09; vue create -p dcloudio/uni-preset-vue uniapp安装成功后它的结构…

远程控制软件免费

远程控制软件免费&#xff1a;选择、价值与安全性探讨 随着科技的进步和互联网的普及&#xff0c;远程控制软件在日常生活和工作中的应用越来越广泛。这类软件允许用户通过网络远程访问和控制另一台计算机&#xff0c;为远程办公、技术支持和在线教育等提供了极大的便利。本文…

2、JVM内存模型深度解析

JVM整体结构及内存模型 根据 JVM 规范&#xff0c;JVM 内存共分为虚拟机栈、堆、方法区、程序计数器、本地方法栈五个部分。 JVM分为五大模块&#xff1a; 类装载器子系统 、 运行时数据区 、 执行引擎 、 本地方法接口 和 垃圾收集模块 。 方法区Java8之后的变化 移除了 Pe…

上位机图像处理和嵌入式模块部署(qmacvisual缺失的光源控制)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 有些场景下面&#xff0c;是不需要光源和光源控制的&#xff0c;比如说利用摄像头识别对应区域的库位&#xff0c;这部分直接利用红外光采集对应的…

FPGA - 以太网UDP通信(二)

一&#xff0c;引言 前文链接&#xff1a;FPGA - 以太网UDP通信&#xff08;一&#xff09; 在上文章中介绍了以太网简介&#xff0c;以太网UDP通信硬件结构&#xff0c;以及PHY芯片RGMII接口-GMII接口转换逻辑&#xff0c;接下来介绍UDP通信结构框图以及数据链路层&#xff…

ActiveMQ + MQTT 集群搭建(虚机版本) + Springboot使用配置

文章目录 前言一、ActiveMQ、 MQTT是什么&#xff1f;1.ActiveMQ介绍2.MQTT介绍 二、集群搭建步骤1.下载apache-activemq-5.15.12-bin.tar.gz2.上传apache-activemq-5.15.12-bin.tar.gz到服务器并解压文件到文件夹clusters、master、slave三个文件夹下面形成三个节点&#xff0…

【cocos creator】【TS】贝塞尔曲线,地图之间显示曲线,顺着曲线移动

参考&#xff1a; https://blog.csdn.net/Ctrls_/article/details/108731313 https://blog.csdn.net/qq_28299311/article/details/104009804 const { ccclass, property } cc._decorator;ccclass export default class mapPanel extends cc.Component {property(cc.Node)pla…

Oracle 常用命令总结

文章目录 一、数据库启动 & 关闭&查看1、启动数据库2、关闭数据库3、连接数据库4、查看数据库名5、查看实例 二、用户1、创建用户2、重置密码3、账户解锁4、账号赋权5、账户撤销权限6、删除用户7、查询所有用户&#xff08;DBA账号执行&#xff09;8、查看当前用户连接…

vue3 依赖-组件tablepage-vue3说明文档,列表页快速开发,使用思路及范例(Ⅰ)配置项文档

配置项API 引入思路介绍TablePage-vue3 API汇总属性插槽Exposes自定义对象searchConfig(array<object\> 类型)searchConfig-type当typetimes时当type不为时间类型时的 bind默认值&#xff08;Object类型&#xff09;当type为时间类型时的 bind默认值&#xff08;Object类…

【MySQL】数据库节点的平滑扩容方案

一、背景 众所周知&#xff0c;数据库很容易成为应用系统的瓶颈。单机数据库的资源和处理能力有限&#xff0c;在高并发的分布式系统中&#xff0c;可采用分库分表突破单机局限。本文来探讨下数据库节点的平滑扩容方案 二、节点扩容 2.1、什么是节点扩容 扩容一般是指水平分…

02 SQL基础 -- 初识SQL

一、初识 SQL 1.1 概念介绍 数据库中存储的表结构类似于 excel 中的行和列,在数据库中,行称为记录,它相当于一条结论,列称为字段,它代表了表中存储的数据项目 行和列交汇的地方称为单元格,一个单元格只能输入一条记录 SQL是为操作数据库而开发的语言。国际标准化组织(…

java数据结构与算法刷题-----LeetCode268. 丢失的数字

java数据结构与算法刷题目录&#xff08;剑指Offer、LeetCode、ACM&#xff09;-----主目录-----持续更新(进不去说明我没写完)&#xff1a;https://blog.csdn.net/grd_java/article/details/123063846 文章目录 数学位运算 数学 解题思路&#xff1a;时间复杂度O( n n n)&…

EFcore 6 连接oracle19 WinForm vs2022

用EFcore访问Oracle&#xff0c;终于不需要Oracle的什么安装包了&#xff0c;直接在VS2022中就可以轻松搞定。在csdn上看到一哥们的帖子&#xff0c;测试了一下&#xff0c;发现很方便。使用的场景是&#xff1a;VS2022中EFcore6。经过测试&#xff0c;同 Navicat Premium 16比…

【数据可视化包Matplotlib】Matplotlib基本绘图方法

目录 一、Matplotlib绘图的基本流程&#xff08;一&#xff09;最简单的绘图&#xff08;仅指定y的值&#xff09;&#xff08;二&#xff09;更一般的绘图&#xff08;同时指定x和y的值&#xff09;&#xff08;三&#xff09;增加更多的绘图元素 二、布局相关的对象——Figur…

linux文件访问权限理解

目录 一&#xff0c;涉及指令: 二&#xff0c;权限的表示 三&#xff0c;权限命令使用 一&#xff0c;涉及指令: umask chmod chown/chgrp 二&#xff0c;权限的表示 rwx rwx r-x含义: 访问方式: r-可读;w-可写&#xff1b;x-可执行&#xff1b; 访问用户:u-所有者;…

02.cesium中模型和图标加载处理

展示效果&#xff0c;我们期待图标点是根据模型&#xff0c;在模型的上方展示 实现思路&#xff1a; 1.在二维地图和三维地图的加载的高度计算不同&#xff0c;需要判断 2.创建一个BillboardCollection&#xff0c;用来存放图标 3.在三维地图中调用getPointPostion方法&#xf…

314_C++_QT表格的撤销、恢复,可对多行、多item进行撤销、恢复操作

行–删除后的,撤销、恢复图示: 原图示 删除后 撤销操作 恢复操作 item修改后的撤销、恢复 原item 撤销修改 恢复修改 代码: --</