【AI+医疗】AI在医疗影像设备工作周期中的应用探索

2023-10-27

导读
随着人工智能技术的飞速发展,越来越多的领域开始与人工智能技术深度融合,产生了一种新型的技术模式——AI+。AI+是指将人工智能技术与其他领域的技术或应用进行结合,在提高效率、精度和创新能力的同时,也为人工智能技术的发展提供了更多的应用场景和数据支持。

其中,AI+医疗是人工智能技术与医疗领域的深度融合,通过结合人工智能技术,改善医疗诊断、预测和治疗效果等方面,为医疗领域带来了新的变革。

智能导诊:基于大模型的智能导诊系统
大模型已经开始从通用领域向专业领域发展,例如,盘古大模型。

图片

领域大模型的基本思路是在通用大模型基础上利用领域数据进行指令微调。近期Meta AI发布的Llama 2更是将其推向高潮,因为它完全开源,且可商用。

下面介绍几个医疗领域的大模型:

ChatDoctor
图片

DoctorGLM:基于 ChatGLM-6B的中文问诊模型
图片

医疗健康大模型NHS-LLM
在这里插入图片描述

本草[原名:华驼(HuaTuo)]
Demo
地址:https://www.huatuogpt.cn/

ChatMed系列中文医疗大规模语言模型
相关链接
GitHub: github.com/michael-wzhu/ChatMed

AD-AutoGPT:用于阿尔茨海默病信息流行病学的自主GPT
图片

受限于医疗常识的短缺和医院科室复杂性,目前仍然有很多人去了医院不知道该挂什么科室的号,无奈只能通过语言或者肢体描述向导诊台寻求帮助。

有了领域大模型后,可以将其集成到智能聊天机器人或者小程序中,通过患者的语言或者肢体动作分析出可能的病因以及需要去的检查。

智能扫描:基于深度学习的智能摆位
根据患者的症状,医生需要通过影像设备检查来进一步确认病因,以核磁为例,当患者躺到检查床上,扫描医生要根据检查部位移动床板使其处于磁场中心或者线圈中心。传统的方式是使用激光灯来完成摆位。而摆位是否精确依赖于扫描技师的经验。

基于神经网络的关键点检测算法可以超越人类完成上述任务。

通过在设备上方安装RGB和深度摄像头,在与影像设备进行标定后,即可通过RGB图像获得水平方向的解剖关键点,进行检查部位的定位,通过3D点云数据获得垂直方向的中心点,使检查部位处于图像中心,提高图像质量同时也能够避免磕碰。

下面看一下GE基于AI的自动摆位技术。

图片

图片
在这里插入图片描述

智能扫描:基于深度学习的自动定位
无论是CT还是MRI检查,都需要先扫描定位图像,然后在其基础上进行二次定位。

以头部扫描为例。

图片
(图片来源于磁共振之家)

传统方式是扫描技师根据经验设置定位框位置和角度。而这个工作可以通过基于深度学习的图像分割算法或者关键点检测算法来完成。

例如,当以矢状位图像定位横轴位时,可以通过分割胼胝体,然后以胼胝体包围盒的中心和角度作为定位框的中心和角度。

图片

扫描脊柱时,也可以通过分割脊柱来实现自动定位功能。

在这里插入图片描述

但通过胼胝体能够实现的扫描角度和位置比较单一,为了适应不同疾病的扫描,更好的方法是分割关键点。

图片

智能重建:基于深度学习的图像重建
CT技师既希望患者受到的辐射剂量小,又希望得到的CT图像质量好,MRI技师既希望扫描的时间短,又希望得到的MRI图像质量好。

很可惜,这两者是矛盾的。

传统的图像增强方法很难完美复原真实解剖结构,所以人们开始将目光转向深度学习。

图片

通过人为生成或者分别真实扫描高,低质量的数据,低质量数据作为神经网络的输入,高质量数据作为标签来训练网络,使其找到背后的映射关系。

其中数据可以是空间域的解剖图像,也可以是频率域的原始图像,模型既可以是前馈神经网络,也可以是CNN网络。

常用的神经网络模型有VarNet和UNet。

UNet的思路是先将降采样的频率域图像经过傅里叶逆变换转换为空间域图像,作为UNet网络的输入,原始未经降采样的k-space图像经过傅里叶逆变换后的空间域图像作为标签,训练的目的就是让两者越接近越好。

在这里插入图片描述

Varnet则是使用频率域作为输入,重建后的空间域图像作为输出。

在这里插入图片描述

智能后处理:基于深度学习的图像拼接
受限于影像设备的扫描视野FOV,很难只通过一次扫描对整个脊柱进行成像,此时就只能分段扫描,然后借助软件将其拼接在一起。

在这里插入图片描述

传统的方法可以通过扫描端进行精确控制,后处理只需要根据重合大小进行简单的拼接即可,但这要求扫描的图像没有形变。

另一种传统方法是扫描端只需要满足有重合即可,后处理通过特征点检测和匹配计算变换矩阵H,最后生成拼接融合图像。如果人体解剖特征点不明显,可以人为添加LandMark。

在基于特征点的图像拼接算法中,特征点的质量以及匹配算法尤为重要,为了提升拼接准确性,可以使用基于神经网络的特征点检测和匹配算法。

其中特征点检测算法为SuperPoint,特征点匹配算法为:LightGlue。

我在[SuperPoint+LightGlue:基于深度学习的特征提取和匹配预训练模型集成到了OpenCV中,并且开源]中已经进行了详细介绍了。

在这里插入图片描述

智能后处理:基于深度学习的图像配准
图像拼接有两种模型,一种是仿射变换,也就是变换前后保持平行不变性,另一种是透视变换,也就是变换前后保持直线性。如果这两种模型都无法纠正形变,那就需要图像配准了,而且是非刚性配准,因为对于刚性配准,仿射变换就能实现。

配准的本质其实很简单,对于刚性配准,就是求一个3*3的变换矩阵,该矩阵由旋转矩阵和平移向量组成。
在这里插入图片描述

该变换矩阵同时作用于图像所有像素点,对于非刚性配准,单个矩阵无法满足不规则形变,需要置换场来描述图像之间的变形关系。

什么是置换场呢?置换场本质是一个向量场,向量描述了坐标的偏移,对于2D图像,置换场就是两个与图像一样大小的矩阵,两个矩阵每个位置的元素分别对应移动图像在水平和垂直方向的偏移。

知道了配准的数学模型后,接下来就是求变换矩阵或者置换场。其思路跟机器学习训练很像,变换矩阵和置换场就好比机器学习模型参数,然后定义目标函数来衡量配准效果,例如SSIM,其优化问题通常为非凸问题,需要通过优化算法来迭代更新参数。

当然,还可以通过样条插值来拟合图像间的置换场。

讲完了传统的图像配准算法,接下来让我们看一下基于深度学习的配准算法。

在这里插入图片描述
在这里插入图片描述

Global-net对应的是刚性配准,网络输出33大小的仿射变换矩阵;Local-net对应的是非刚性配准,网络输出的是widthheight*3的置换场,width和height分别对应图像宽和高,3代表三维向量场,也就是三个轴方向的偏移。

在这里插入图片描述

智能后处理:基于深度学习的图像分类
当患者看到检查报告单上的高密度,低回声字样时,难免心里一颤,但即使真的有病变也不一定就是恶性肿瘤,最终结果还要经过切片病理检查。但在这之前医生根据病变的边缘,大小,形状,密度已经可以大概判断出良恶性了。

基于深度学习的图像分类也是如此,将大量代表标签的数据,各种类型的数据喂给模型,模型就能学到背后的模式。

对于病例切片图像,基于深度学习分类算法更为重要,因为切片图像很大,医生需要在显微镜下逐像素观察,十分累人。

在这里插入图片描述

智能后处理:基于深度学习的目标检测
通过图像分类,只能得到定性结果,而定量结果往往更为重要。基于深度学习的图像目标检测算法不仅能得到类别,还能够计算病灶位置,最大径等信息。常见的目标检测应用有肺结节检测,脑出血检测等。

常见的目标检测算法有一阶段的YOLO系列,以及两阶段的R-CNN系列。

但为了得到更多的定量信息,两个方向值得关注。

第一个是带旋转框的目标检测,常见的模型有S2ANet。

https://arxiv.org/pdf/2008.09397.pdf

在这里插入图片描述

第二个是3D目标检测。常见的模型有DD3D。

https://arxiv.org/pdf/2108.06417v1.pdf

在这里插入图片描述

智能后处理:基于深度学习的图像分割
图像分割无疑要比目标检测包含更多的定量信息,常见的应用有血管分割,肝脏分割等。

医疗图像,很多器官都是跨层的,也就是属于3D空间信息,并且形态各异,传统的2D分割网络,例如Unet,VNet对于血管分割效果不是很好,所以一般使用3D分割网络,例如UNet3D或者基于视觉Transformer的分割模型。另外,对于血管分割还要考虑血管的连续性,以及由于血管斑块闭塞等引起的链接异常。

当视觉基础模型Segment Anything出现后,在一定程度上解决了传统模型只能适用于某一特定类型数据的尴尬。

基础模型+特定领域微调是未来的分割的方向。

总结

其实AI不仅能够让影像设备变得更智能,AI可以赋能一切,智能设备,数智医疗,智慧社区,智慧城市等等。

希望阅读本文后,你也能在你的领域发掘出AI的无限潜能。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【AI+医疗】AI在医疗影像设备工作周期中的应用探索 的相关文章

随机推荐

  • 华为OD机试 - 字符串分割(二)(Java)

    题目描述 给定一个非空字符串S 其被N个 分隔成N 1的子串 给定正整数K 要求除第一个子串外 其余的子串每K个字符组成新的子串 并用 分隔 对于新组成的每一个子串 如果它含有的小写字母比大写字母多 则将这个子串的所有大写字母转换为小写字母
  • LeetCode:用队列实现栈(纯C语言)

    题目链接 225 用队列实现栈 力扣 Leetcode 代码 CV复制黏贴 老套路二话不说 先上代码 typedef int QDataType typedef struct QueueNode struct QueueNode next
  • 找回 macOS 10.12 Sierra 安全性与隐私的设置中

    2019独角兽企业重金招聘Python工程师标准 gt gt gt is damaged and can t be opened You should move it to the Trash 当你出现上述报错时 可以参照下面做法 不少用户
  • Keil或MDK编译报错error: L6050U:

    文章目录 摘要 安装步骤 问题描述 使用软件 下载安装包 解决方案 注意事项 总结 思考 更新日志 摘要 硬件环境 无特殊要求 软件环境 Win10 安装步骤 问题描述 MDK5 报错信息 error L6050U The code siz
  • Linux修改只读文件权限

    我们在修改一些配置文件时经常会遇到文件是只读的 修改之后无法保存修改的问题 我们可以使用 chmod 命令来修改文件 夹 属性 sudo chmod 777 file name 所有用户对这个文件 夹 都有读写权限 sudo chmod 6
  • 2020DCIC智慧海洋建设算法赛学习03-特征工程

    序 特征工程往往是算法比赛中最至关重要的一环 一个好的特征工程能够让你的分数有大幅的提升 而如何做好特征工程 从哪些方面入手构建特征就需要经验积累和学习TOP选手的优秀方案 通过学习TOP选手开源代码的特征工程部分 我们可以发现 对于智慧海
  • 【JAVA】递归与迭代:选择正确的方法来解决问题

    文章目录 递归概念 代码示例 计算阶乘 斐波那契数列 遍历文件系统目录 总结 递归概念 递归是一种方法或算法 在该方法中 函数通过调用自身来解决问题 在递归中 问题被划分为更小的同类子问题 并不断地递归调用函数来解决这些子问题 直到达到终止
  • 探究HTTP常见请求头:从基础到进阶

    探究HTTP常见请求头 从基础到进阶 文章目录 探究HTTP常见请求头 从基础到进阶 1 介绍 什么是HTTP请求头 请求头的作用 2 常见请求头详解 User Agent Accept Language Referer Content T
  • 学习SpringMvc第三战-利用SpringMvc实现CRUD

    目录 一 前期环境搭建 1 替换pom xml的内容 2 导入配置文件 小编上传资源 3 修改xml文件 4 点击创建自动生成代码 5 写一个类用于处理页面跳转 二 正式启动SpringMVC的CRUD 1 建立接口 调用自动生成的接口 2
  • AB测试中如何给样本分组?

    目录 什么是AB测试 什么叫样本相似 为什么要样本相似 怎么实现样本相似 随机化 Randomization 再随机化 Rerandomization 协方差适应随机化 Covariance Adaptive Randomization 更
  • 虚拟串口工具_com0com

    因为这年头 都 2012 年了 应该没什么人有在用 Serial port 串行端口 串口 说 Serial port 大家可能想不起来 但说 COM port 大家应该就知道是什么一回事了吧 就是那个从前在计算机后方一定有的 DB9 插头
  • C++11与最小垃圾回收

    C 11新标准为了做到最小的垃圾回收支持 首先对 安全 的指针进行了定义 安全派生的指针是指向由new分配的对象或其子对象的指针 安全派生指针的操作包括 1 在解引用基础上的引用 比如 p 2 定义明确的指针操作 比如p 1 3 定义明确的
  • oracle的stored outline的创建与维护

    author skate time 2011 09 17 执行计划的稳定 如何确定哪些sql的执行计划不稳定 如何固定执行计划 执行计划直接影响app的性能 有的时候执行计划固定是很有用的 有很多因素影响执行计划的不稳定 像optimize
  • Evaluating Fuzz Testing

    1 介绍 信息量太大回头再写 一天后更新 不想写了差不多就下面这些内容吧 2 背景 2 1 fuzzing流程 fuzzing的核心算法 initSeedCorpus 初始化新的输入 isDone 决定fuzzing是否停止 choose
  • 一个程序来比较cuda/c在GPU/CPU的运行效率

    在网上看了一个比较GPU和CPU执行矩阵运算效率的帖子 亲自跑了一下 这是一个CUDA语言程序 请保存为 文件名 cu 我的主机配置如下 CPU G2030 内存8GB 显卡 GTX750ti 代码如下所示 include cuda run
  • Arduino for ESP8266&ESP32适用库ESPAsyncWebServer:WebSocket和EventSource

    文章目录 目的 WebSocket 使用方法 使用演示 更多说明 EventSource 使用方法 使用演示 更多说明 总结 目的 WebSocket和EventSource是HTML5开始提供的功能 WebSocket可以在单个TCP连接
  • oracle数据库-按多个字段排序

    应用场景 如果我们按多列排序且有升序和降序的时候的写法 排序时 有两个关键字 asc 表示升序 desc 表示降序 所以我们在order by 后面添加 asc desc select s bank code s account id s
  • MIME type备忘

    MIME type 是给文件管理器用的 包括桌面 也是文件管理器的一个展现形式 所以桌面的程序 有后缀名 就会自动变成某种图标 然后双击或者右键选打开方式就可以以某个定义好的程序打开 desktop文件可以包含MimeType applic
  • 学习一下 PDF417 条码

    PDF417条码 Portable Data File 便携式数据文件 是一种线性堆叠式的二维码 因为这个特性 在识读上 可以采用线性扫描的产品比如 激光扫描枪 CCD之类的条码阅读器读取 但实际操作效果不如影像式产品来的速度更快 PDF4
  • 【AI+医疗】AI在医疗影像设备工作周期中的应用探索

    导读 随着人工智能技术的飞速发展 越来越多的领域开始与人工智能技术深度融合 产生了一种新型的技术模式 AI AI 是指将人工智能技术与其他领域的技术或应用进行结合 在提高效率 精度和创新能力的同时 也为人工智能技术的发展提供了更多的应用场景