医疗影像中DR的骨抑制

1 背景

在DR的拍摄中,根据肺部和脊肋骨两种组织,在不同能量X射线的照射下,衰减的系数不同的特点,可以通过两次不同剂量的曝光后,通过算法,得到一张骨骼的图像和一张肺部图像。

通过一些机构的统计,双能剪影的后的肺部影像对结节,特别是小结节的检出率有不同程度的提高。统计表明,对3mm一下的结节的检出率,在双能剪影的肺部检出率有47%,而一张普通的胸片的检出率仅仅为22%。但是,双能剪影也有明显的缺点,第一是患者受到两次X光照剂量;第二,双能剪影在拍摄的时候,一般需要病人憋气更长时间,导致拍片失败。

这个时候,骨抑制算法,就是替代两次曝光的一个很好的方案;另外,在现在DR行业如此内卷的时期,骨抑制算法也能算作智能DR设备的亮点功能之一。

2. AI骨抑制算法(Bone Suppress)

整个算法大概分为以下3个步骤,可以给大家一点参考

2.1 对图像中的肺部区域进行裁剪

对DICOM的胸片图像,使用Unet网络,来分割肺部区域蒙板。对分割后的肺部蒙板中,区域较小的区域进行去除。得到如下的图像

2.2 对图像的肋骨进行Unet分割

注意这里分割出脊肋的mask,不是阈值后,然后再将mask二值化的图像,而是阈值后,保留mask的0到1的值,做为第三步中的其中一路初始输入图像,如下图所示:

2.3 将2步中标记的mask作为噪声在原图上进行抑制

将原始图像和第二步中的输出,两个通道,作为输入,目标图作为输出;将脊肋骨视为图像中的噪声信息,使用图像去噪的方法来完成肋骨抑制的任务,采用深度卷积网络作为基础模型,分析并尝试多种策略来提升模型性能,最终,使用Unet网络结构,并且,通过跳跃连接以及残差策略增强网络细节表现能力。 为了在计算中减少对图像的细节纹理的损失,模型采用在原图大小直接计算, 但是,考虑到显存压力,使用1024*1024滑动窗口计算,并采用Overlap-tile策略减少计算边缘信息损失。 这些策略有效的保证了输出结果的准确性,精确性。 模型可以在保留肺部纹理细节清晰同时也能有效的抑制骨影。最终得到的结果如下

3 最后算法可以通过onnx进行工程化,供DR Console工作站调用

为了能提供给设备采集软件进行调用,需要将算法修改为动态库的形式,另外,也可以提高效率。以下是头文件定义,可以输入和输出的接口是很容易集成的。

复制代码
#ifndef _BONE_SUPRESS_API
#define _BONE_SUPRESS_API
#ifndef DLLAPI_FILTER
#define BONE_SUPRESS_DLLAPI extern "C" __declspec(dllimport)
#endif
enum BoneSupressResult
{
    BoneSupressResultOK = 0,
    BoneSupressResultImgErr,
    BoneSupressResultIniErr, 
};
BONE_SUPRESS_DLLAPI bool IntializeInstance(bool beGpu);
BONE_SUPRESS_DLLAPI BoneSupressResult  ChestBoneSupress(unsigned short* imageData, int imgW, int imgH,
    unsigned short* resultData, int resultDataLen);
BONE_SUPRESS_DLLAPI bool ReleaseInstance();

#endif

最后运算一张4000 * 4000 ,2个字节的输入图像后,在1050Ti的显卡上,计算共需13s的时间,3060Ti上,计算花费8s中,实际应用中,可以满足设备的需求。

相关推荐
水煮蛋不加蛋10 分钟前
RAG 赋能客服机器人:多轮对话与精准回复
人工智能·ai·机器人·大模型·llm·rag
池央1 小时前
GPUGeek携手ComfyUI :低成本文生图的高效解决方案
人工智能
Mr.Winter`2 小时前
深度强化学习 | 图文详细推导软性演员-评论家SAC算法原理
人工智能·深度学习·神经网络·机器学习·数据挖掘·机器人·强化学习
强盛小灵通专卖员2 小时前
分类分割详细指标说明
人工智能·深度学习·算法·机器学习
特立独行的猫a4 小时前
HarmonyOS 【诗韵悠然】AI古诗词赏析APP开发实战从零到一系列(一、开篇,项目介绍)
人工智能·华为·harmonyos·古诗词
yu4106215 小时前
2025年中期大语言模型实力深度剖析
人工智能·语言模型·自然语言处理
feng995208 小时前
技术伦理双轨认证如何重构AI工程师能力评估体系——基于AAIA框架的技术解析与行业实证研究
人工智能·aaif·aaia·iaaai
2301_776681658 小时前
【用「概率思维」重新理解生活】
开发语言·人工智能·自然语言处理
蜡笔小新..8 小时前
从零开始:用PyTorch构建CIFAR-10图像分类模型达到接近1的准确率
人工智能·pytorch·机器学习·分类·cifar-10
码小跳8 小时前
Halcon案例(一):C#联合Halcon识别路由器上的散热孔
图像处理·c#