具体实施方式
在下面的详细描述中,通过示例阐述了本披露的许多具体细节,以便提供对相关披露的透彻理 解。然而,对于本领域的普通技术人员来讲,本披露显而易见的可以在没有这些细节的情况下实施。 在其他情况下,本披露中的公知的方法、过程、系统、组件和/或电路已经在别处以相对高的级别进 行了描素,本披露中对此没有详细地描述,以避免不必要地重复。对于本领域普通人员来说,对本 披露所披露的实施例的各种修正都应是显而易见的,并且,在不偏离本披露的精神和范围的前提下, 本披露中所定义的基本原理也可以适用于其他实施例及应用。因此,本披露并不限于所示的实施例, 而应被给予与权利要求一致的最广范围。
参看下面的说明以及附图,本披露的这些或其他特征和特点、操作方法、结构的相关元素的功 能、部分的结合以及制造的经济性可以被更好地理解,其中说明和附图形成了说明书的一部分。然 而,可以清楚地理解,附图仅用作说明和描述的目的,并不意在限定本披露的保护范围。可以理解 的是,附图并非按比例绘制。
本披露提供了用于非侵入性成像的系统和组件,例如用于疾病诊断或研究目的。在一些实施例 中,成像系统可以是计算机断层扫描(CT)系统、发射计算机断层扫描(ECT)系统、磁共振成像 (MRI)系统、超声检查系统、正电子发射断层扫描(PET)系统等中的一种或多种的组合。
本披露披露的方法和系统可以用于其他类型的图像重建,包括,例如,CT图像、ECT图像、MRI 图像、PET图像等。仅仅为了说明且不限制本披露的范围,本披露与CT图像重建相关。该系统可以 基于统计图像重建算法重建CT图像。统计图像重建算法可以包括一个用于降低统计图像重建过程中 的阶梯伪影的正则项。
提供以下描述以帮助更好地理解CT图像重建方法和/或系统。本披露中使用的术语“图像”可以 指2D图像、3D图像、4D图像和/或任何相关图像数据(例如,CT数据、对应于CT数据的投影数据)。 应当注意的是,在本披露中,术语“图像数据”和“图像”可以互换使用,这并不是为了限制本披 露的范围。对于本领域的普通技术人员来说,在本披露的指导下可以进行各种修正和改变。各种修 正和改变并不脱离本披露的范围。
图1和12是根据本披露的一些实施例所示的一种示例性CT系统100的示意图。如图所示,所述CT 系统100可以包括CT扫描仪110、网络120、一个或多个终端130、处理引擎140和存储器150。
CT扫描仪110可以包括机架111、探测器112、探测区域113、治疗床114和放射扫描源115。机架 111可以支撑探测器112和放射扫描源115。对象可以放置于治疗床114上用于扫描。放射扫描源115可 以发出放射线束到对象。探测器112可以探测从探测区域113发出的放射物(例如,伽马光子)。在一 些实施例中,探测器112可以包括一个或多个探测单元。探测器单元可以包括闪烁探测器(例如,碘 化铯探测器)和其他探测器等。探测器单元可以是和/或包括单排探测器和/或多排探测器。
网络120可以包括有助于CT系统100交换信息和/或数据的任何适合的网络。在一些实施例中, CT系统100的一个或多个其他组件(例如,CT扫描仪110、终端130、处理引擎140、存储器150等) 可以通过网络120相互交互信息和/或数据。例如,处理引擎140可以通过网络120从CT扫描仪110获取 图像数据。又例如,处理引擎140可以通过网络120获取来自终端130的用户指令。网络120可以是和 /或包括公共网络(例如,互联网)、专用网络(例如,局域网(LAN)、广域网(WAN)等)、有线 网络(例如,以太网)、无线网络(例如,802.11网络、Wi-Fi网络等)、蜂窝网络(例如,LTE网络)、 帧中继网络、虚拟专用网络(“络PN”)、卫星网络、电话网络、路由器、集线器、转换器、服务器计 算机和/或其中的一种或多种的组合。例如,网络120可以包括电缆网络、有线网络、光纤网络、电 信网络、局域网、无线局域网(WLAN)、城域网(MAN)、公用电话交换网(PSTN)、蓝牙TM网络、 ZigBeeTM网络、近场通信网络(NFC)等中的一种或多种的组合。在一些实施例中,网络120可以包 括一个或多个网络接入点。例如,网络120可以包括有线和/或无线网络接入点,如基站和/或网络交 换点,CT系统100的一个或多个组件可以通过其接入到网络120以进行数据和/或信息交换。
终端130可以包括移动设备131、平板电脑132、笔记本电脑133等中的一种或多种的组合。在一 些实施例中,移动设备131可以包括智能家庭设备、可穿戴设备、移动设备、虚拟现实设备、增强现 实设备等中的一种或多种的组合。在一些实施例中,智能家用设备可以包括智能照明装置、智能电 器控制装置、智能监控装置、智能电视、智能摄像机、对讲机等中的一种或多种的组合。在一些实 施例中,可穿戴设备可能包括手镯、鞋袜、眼镜、头盔、手表、服装、背包、智能配件等一种或多 种的组合。在一些实施例中,移动设备可以包括移动电话、个人数字助理(PDA)、游戏设备、导航 设备、销售点(POS)设备、笔记本电脑、平板电脑、台式机等中的一种或多种的组合。在一些实 施例中,虚拟现实设备和/或增强现实装置可以包括虚拟现实头盔、虚拟现实眼镜、虚拟现实眼罩、 增强现实头盔、增强现实眼镜、增强现实眼罩等中的一种或多种的组合。例如,虚拟现实设备和/或 增强现实设备可以包括Google GlassTM、Oculus RiftTM、HololensTM、Gear VRTM等。在一些实施例中, 终端130可以是处理引擎140的一部分。
处理引擎140可以处理从CT扫描仪110、终端130和/或存储器150中获得的数据和/或信息。例如, 处理引擎140可以处理投影数据产生图像。在一些实施例中,处理引擎140可以是一个服务器或一个 服务器群组。服务器群组可以是集中式的或者分布式的。在一些实施例中,处理引擎140可以是本地 的或远程的。例如,处理引擎140可以通过网络120访问存储在CT扫描仪110、终端130和/或存储器150的信息和/或数据。例如,处理引擎140可以直接与CT扫描仪110、终端130和/或存储器150连接从 而访问其存储的信息和/或数据。在一些实施例中,处理引擎140可以在云平台上被执行。例如,云 平台可以包括私有云、公有云、混合云、社区云、分布式云、互联云、多重云等种的一种或多种的 组合。在一些实施例中,处理引擎140可以由具有一个或多个组件的计算设备200(如图2所述)执行。
存储器150可以存储数据、指令和/或其他信息。在一些实施例中,存储器150可以存储从终端130 和/或处理引擎140中获得的数据。在一些实施例中,存储器150可以存储处理引擎140为执行本披露 中描述的示例性方法所执行或使用的数据和/或指令。在一些实施例中,存储器150可以包括大容量 存储器、可移动存储器、易失读写存储器、只读存储器(ROM)等中的一种或多种的组合。示例性 的大容量存储器可包括磁盘、光盘、固态驱动器等。示例性的可移动存储器可以包括闪存驱动器、 软盘、光盘、存储卡、拉链盘、磁带等。示例性的易失读写存储器可以包括随机存取存储器(RAM)。 示例性的随机存取存储器RAM可以包括动态随机存储器(DRAM)、双数据率同步动态随机存取存 储器(DDR SDRAM)、静态随机存取存储器(SRAM)、晶闸管随机存取存储器(T-RAM)和零电 容随机存取存储器(Z-RAM)等。示例性的只读存储器(ROM)可以包括掩模只读存储器(MROM)、 可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器 (EEPROM),光盘只读存储器(CD-ROM)和数字多用途光盘等。在一些实施例中,存储器150可 以在云平台上被执行。例如,云平台可以包括私有云、公共云、混合云、社区云、分布式云、互联 云、多重云等种的一种或多种的组合。
在一些实施例中,存储器150可以连接到网络120以与CT系统100中的一个或多个其他组件(例 如,处理引擎140、终端130等)进行通信。CT系统100中的一个或多个组件可以通过网络120访问存 储在存储器150中的数据或指令。在一些实施例中,存储器150可以直接与CT系统中的一种或多个其 他组件(例如,处理引擎140、终端130等)连接或通信。在一些实施例中,存储器150可以是处理引 擎140的一部分。
图3是根据本披露的一些实施例所示的示例性计算设备300的示例性硬件和/或软件组件的示意 图,处理引擎140可以在计算设备300上实现。如图3所示,计算设备300可以包括处理器310、存储器 320、输入/输出(I/O)330和通信端口340。
处理器310可以根据本披露所描述的技术执行计算机指令(例如,程序代码)和处理引擎140的 功能。计算机指令可以包括例如执行本披露描述的特定功能的例程、程序、对象、组件、数据结构、 过程和模块。例如,处理器310可以处理从CT扫描仪110、终端130、存储器150和/或CT系统100的任 何其他组件中获得的图像数据。在一些实施例中,处理器310可以包括一个或多个硬件处理器,诸如 微控制器、微处理器、精简指令集计算机(RISC)、专用集成电路(ASIC)、应用特定指令集成处理 器(ASIP)、中央处理单元(CPU)、图形处理单元(GPU)、物理处理单元(PPU)、微控制器单元、 数字信号处理器(DSP)、现场可编程门阵列(FPGA)、高级RISC机(ARM)、可编程逻辑器件(PLD)、 能够执行一个或多个功能的任何电路或处理器等中的一种或多种的组合。
仅仅为了说明,在计算设备300中仅描述了一个处理器。然而,应当注意的是,本披露中的计算 设备300还可以包括多个处理器,因此本披露中描述的处理器执行的操作和/或方法步骤也可以由多 个处理器联合或单独执行。例如,如果在本披露中,计算设备300的处理器执行步骤A和步骤B,则 应当理解,步骤A和步骤B也可以由计算设备300的两个或多个不同的处理器共同或分开执行(例如, 第一处理器执行步骤A、第二处理器执行步骤B或者第一和第二处理器共同执行步骤A和B)。
存储器320可以存储从CT扫描仪110、终端130、存储器150和/或CT系统100的任何其他组件中获 得的数据/信息。在一些实施例中,存储器220可以包括大容量存储器、易失性读写存储器、只读存 储器(ROM)等中的一种或多种的组合。例如,大容量存储器可以包括磁盘、光盘、固态驱动器等。 所述可移除存储器可以包括闪存驱动器、软盘、光盘、存储卡、压缩盘、磁带等。易失性读写存储 器可以包括随机存取存储器(RAM)。随机存取存储器可以包括动态随机存取存储器(DRAM),双 倍数据率同步动态随机存取存储器(DDR SDRAM)、静态随机存取存储器(SRAM)、晶闸管随机 存取存储器(T-RAM)和零电容随机存取存储器(Z-RAM)等。只读存储器可以包括掩模只读存储 器(MROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编 程只读存储器(EEPROM)、光盘只读存储器(CD-ROM)和数字通用盘只读存储器等。在一些实施 例中,存储器320可以存储一个或多个程序和/或指令以执行在本披露中描述的示例性方法。例如, 存储器320可以存储用于处理投影数据或图像数据的处理引擎140的程序。
输入/输出330可以输入和/或输出信号、数据、信息等。在一些实施例中,输入/输出330可以使 用户能够与处理引擎140进行交互。在一些实施例中,输入/输出330可以包括输入装置和输出装置。 示例性的输入设备可以包括键盘、鼠标、触摸屏、麦克风等中的一种或多种的组合。示例性的输出 设备可以包括显示设备、扬声器、打印机、投影仪等中的一种或多种的组合。示例性的显示装置可 以包括液晶显示器(LCD)、基于发光二极管(LED)的显示器、平板显示器、弯曲屏幕、电视设备、 阴极射线管(CRT)、触摸屏幕等中的一种或多种的组合。
通信端口340可以连接到网络(例如,网络120)以便于数据通信。通信端口340可以建立处理引 擎140与CT扫描仪110、终端130和/或存储器150之间的连接。连接可以是有线连接、无线连接、任何 其他可以实现数据传输和/或接收的通信连接等中的一种或多种的组合。有线连接可以包括例如电缆、 光缆、电话线等中的一种或多种的组合。无线连接可以包括例如蓝牙TM连接、Wi-FiTM连接、WiMax TM连接、无线局域网连接、ZigBee连接、移动网络连接(例如,3G、4G、5G等)等中的一种或多种 的组合。在一些实施例中,通信端口340可以是和/或包括标准化通信端口,诸如RS232、RS485等。 在一些实施例中,通信端口340可以是专门设计的通信端口。例如,通信端口340可以根据医学数字 成像和通信(DICOM)协议进行设计。
图4是根据本披露的一些实施例所示的示例性移动设备400的示例性硬件和/或软件组件的示意 图,终端130可以在移动设备400上实现。如图4所示,移动设备400可以包括天线410、显示器420、 图形处理单元(GPU)430、中央处理单元(CPU)440、输入/输出(I/O)450、内存460和存储器490。 在一些实施例中,任何其它合适的组件包括但不限于系统总线或控制器(未示出),也可以包括在移 动设备300中。在一些实施例中,移动操作系统470(例如,iOSTM、AndroidTM、Windows PhoneTM等) 和一个或多个应用480可以从存储490加载到存储器460中,以便由CPU 440执行。应用480可以包括 浏览器或任何其他合适的移动应用,用于接收和呈现与处理引擎140有关的图像处理信息或其他信 息。信息流的用户交互可以通过输入/输出450获得,也可以通过网络120提供给处理引擎140和/或CT 系统100的其他组件。
为了实现在本披露中描述的各种模块、单元及其功能,计算机硬件平台可以用作本披露所描述 的一个或多个元件的硬件平台。具有用户界面元件的计算机可以用于执行个人计算机(PC)或任何 其他类型的工作站或终端设备。如果经过适当的编程处理,计算机也可以充当服务器使用。
图5为根据本披露的一些实施例所示的一种示例性处理引擎140的框图。处理引擎140可以包括 图像获取模块502,肋骨提取模块504和可视化模块506。处理引擎140至少有一部分可以在如图3所示 的计算装置上执行,或在如图4所示的移动设备上执行。
图像获取模块502可获取图像数据。图像获取模块502可以从扫描仪110或存储器150获取图像数 据。在一些实施例中,图像获取模块502可以通过网络120从一个外部数据源获取图像数据。在一些 实施例中,图像数据可对应穿过一研究对象的X射线。在一些实施例中,放射性扫描源115可向研究 对象发射X射线。X射线可穿过研究对象并在穿越过程中衰减。X射线衰减程度可取决于多个因素, 例如X射线穿过的一个或多个组织的特性,射线穿过的组织的厚度等。衰减的X射线可通过探测器 112探测,传送到图像获取模块502。图像获取模块502可在不同时间通过各种设备和/或在各种条件 下(如各种天气、照明度、扫描位置和角度等)获取图像数据。
图像数据可以涉及研究对象的一个或多个部分。在一些实施例中,使用扫描仪110全面扫描研究 对象可生成图像数据,图像数据可以包括关于整体研究对象的信息。在一些实施例中,使用扫描仪 110扫描研究对象的一部分可生成图像数据,图像数据可以包括关于部分研究对象的信息,例如胸 部、躯干、上肢、下肢、头部、器官、组织等。研究对象的图像数据可以是2D图像数据,也可以是 3D图像数据。3D图像数据可以包括多个体素。2D图像数据可以包括多个像素。研究对象的图像数 据可以是MRI图像数据、CT图像数据和/或PET图像数据或类似图像数据,或者可以是这些图像数据 的组合。图像数据可以包括通过扫描仪110生成的原始数据、根据原始数据处理的数据、图像处理参 数或类似数据,或者是这些数据的组合。在一些实施例中,图像数据可以包括一根或多根肋骨的相 关数据、一根或多根其他骨骼的相关数据(如椎骨、胸骨、肩胛骨、锁骨等)和/或一个或多个其他 器官/组织的相关数据(如肺、血管等)。在一些实施例中,图像数据中一个或多个体素/像素代表的 一根肋骨可能粘连一个或多个体素/像素代表的其他骨骼(如椎骨)。
肋骨提取模块504可提取一根或多根肋骨。肋骨提取模块504可包括一个或多个子模块,如图7所 示。为方便起见,一根肋骨可以指图像数据中代表肋骨结构的一组像素/体素。人体有12对肋骨(即 24根肋骨)。在一些实施例中,肋骨的一端可连接到椎骨。在一些实施例中,肋骨的另一端也可连接 到胸骨。研究对象的肝和两个肺在由12对肋骨形成的胸腔内。在12对肋骨中,最靠近研究对象头部 的一对肋骨可称为第一对肋骨,离头部最远的肋骨可称为第十二对肋骨。从第一对到第十二对,另 外10对肋骨依次称为第二对肋骨、第三对肋骨至第十一对肋骨。一对肋骨中靠近右手的一根肋骨可 称为右肋,靠近左手的一根肋骨可称为左肋。例如,第一对肋骨中,靠近右手的一根肋骨可称为右 一肋,靠近左手的一根肋骨可称为左一肋。其他肋骨也按此方法命名。左一肋靠近左肺肺顶,右一 肋靠近右肺肺顶。右十一肋和/或右十二肋靠近肝脏下缘。
肋骨提取模块504可根据图像数据提取肋骨。在一些实施例中,肋骨提取模块504可以根据基于 机器学习的方法对待提取的肋骨(也称目标肋骨)进行处理,得到目标肋骨的肋骨概率图。肋骨提 取模块504可以根据肋骨概率图用肋骨模型对待提取的肋骨(也称目标肋骨)进行追踪,从而从图像 中提取出目标肋骨。在一些实施例中,肋骨提取模块504可以用区域生长算法对目标肋骨进行处分 割。提取的肋骨可以包括图像数据中代表肋骨结构的像素/体素组。在一些实施例中,提取的肋骨可 以包括肋骨边界的像素/体素和/或边界内的像素/体素。在一些实施例中,提取的肋骨可以包括一个 或多个不属于肋骨的像素/体素。例如,提取的肋骨可以包括代表其他骨骼(如椎骨、胸骨、肩胛骨、 锁骨等)、其他组织(如肺、血管等)等的一个或多个像素/体素。肋骨提取模块504可根据本披露中 提到的一种或多种分割算法提取肋骨。
可视化模块506可以将提取的肋骨和/或图像数据可视化。可视化模块506可以将图像数据和/或 提取的肋骨转化为可视化格式,例如转化为一张图像。此图像可以是灰度图像也可以是彩色图像。 此图像可以是2D图像也可以是3D图像。图像可通过一个显示设备(如输入/输出330、显示器320等) 显示或通过打印机打印。此图像可呈现给用户。在一些实施例中,图像可存储在一个存储设备(如 存储器150、存储器220、存储单元390等)中供后续分析。
图6是根据本披露的一些实施例所示的一种示例性生成肋骨图像过程的流程图600。在一些实施 例中,可通过处理引擎140执行过程600。过程600可包括获取图像数据601,根据图像数据603提取一 根或多根肋骨,以及将提取的肋骨605可视化。过程600至少有一部分可以在图3所示的计算装置上执 行,或在图4所示的移动设备上执行。
在601中,可获取研究对象的图像数据。研究对象可以是人体、动物或人体或动物的任何部分。 例如,研究对象可以是整个人体、人体上部或人体胸部等。在一些实施例中,可以通过图像获取模 块502获取图像数据。图像数据可通过扫描仪110、存储器150和/或终端130获取。在一些实施例中, 图像数据可通过通讯端口340从计算装置300的输入/输出330获取。在一些实施例中,可以通过网络 120从一个外部数据源获取图像数据。在一些实施例中,可以预处理图像数据,使其适合分割。预处 理可以包括图像归一化、图像重建、图像平滑、压制、虚化和/或移除一个细节、突变(如灰度突变)、 噪声或类似操作,或者是以上操作的组合。
在603中,可根据图像数据提取一根或多根肋骨。关于肋骨提取的更多说明可参见本披露中的其 他地方。例如,参见图8及其说明。在一些实施例中,可通过肋骨提取模块504执行603。在603中, 可确认和/或提取对应肋骨的图像数据中的一个或多个像素/体素。可根据一种或多种分割算法,提 取肋骨。在一些实施例中,分割算法可以包括阈值分割算法、区域生长分割算法、能量型3D重建分 割算法、根据水平集的分割算法、区域分裂和/或合并分割算法、边缘追踪分割算法、统计模式识别 算法、C均值聚类分割算法、可变形模型分割算法、图搜索分割算法、神经网络分割算法、测地线最 短路径分割算法、目标追踪分割算法、根据图谱的分割算法、根据规则的分割算法、耦合面分割算 法、根据模型的分割算法、可变形有机体分割算法、模型匹配算法、机器学习算法或类似算法,或 者上述算法的组合。在一些实施例中,一种或多种分割算法可存储在存储器150、存储器320、存储 单元490或另外的移动存储设备中(如移动硬盘、USB闪存盘或类似设备,或者是上述设备的组合)。 在一些实施例中,可以通过网络120从一个或多个其他外部来源检索分割算法。
在605中,可以将提取的肋骨可视化。在一些实施例中,可通过可视化模块506执行605。可以根 据一种或多种算法可视化提取的肋骨,如图像转换算法、图像显示算法或类似算法,或者上述算法 的组合。图像转换算法可将提取的肋骨从频域转换成图像域,从灰度图转换成彩图等。图像显示算 法可调整肋骨的颜色、对比度、亮度等。在一些实施例中,可以将肋骨和背景(如胸部、椎骨、胸 骨、肩胛骨、锁骨等)一起可视化。
在一些实施例中,可以对提取的肋骨进行后处理。后处理可以根据诸如2D后处理技术、3D后处 理技术或类似技术,或者上述技术的组合。示例性2D后处理技术可包括多平面重建(MPR)、曲面 重建(CPR)、计算机体积重建(CVR)、体绘制(VR)或类似技术,或上述技术的组合。示例性3D 后处理技术可包括3D表面重建、3D体积重建、体积密度投影(VIP)、最大密度投影(MIP)、最小 密度投影(Min-IP)、平均密度投影(AIP)、X射线模拟投影、体绘制(VR)或类似技术,或上述技 术的组合。其他技术可包括修复过程、渲染过程、填充过程或类似过程,或者上述过程的组合。修 复过程可根据提取肋骨已有部分中的可用信息恢复提取肋骨的缺失部分(如肋骨骨折)。例如,修复 过程可根据靠近缺失像素/体素的一个或多个可用像素/体素,恢复对应提取肋骨的一个或多个缺失 像素/体素。
应注意上述关于处理引擎140和肋骨图像生成过程600的说明仅用于说明,不用于限制本披露的 范围。本领域普通技术人员可在本披露内容的指导下进行多重变更和/或修改。但是这些变更和修改 不会背离本披露的范围。例如,603和605可组合成一项操作。再例如,605中的提取肋骨可视化之后, 过程600可返回603,进一步在图像数据中提取肋骨。又例如,603和605可同时执行。过程600可添加 或删除一项或多项其他操作。例如,可在601之前添加通过扫描仪110扫描研究对象的操作。再例如, 可在601、603和/或605之间或之后添加存储数据的操作。数据可存储在存储器150、存储器320、存 储单元490中或存储在外部数据库中(未显示)。
图7是根据本披露的一些实施例所示的一种示例性肋骨提取模块的框图。肋骨提取模块504可包 括种子点确定子模块702、肋骨初分割子模块704和肋骨分割子模块706。肋骨提取模块504至少有一 部分可以在如图3所示的计算装置上执行,或在如图4所示的移动设备上执行。
种子点确定子模块702可确定肋骨的一个或多个种子点。在一些实施例中,种子点可包括确定肋 骨提取初始位置的一个像素/体素。在一些实施例中,种子点可包括确定肋骨提取初始区域的一组像 素/体素。种子点可以是属于肋骨的像素/体素。在一些实施例中,种子点可以是肋骨区域中的一个或 多个随机像素/体素。在一些实施例中,种子点可以是肋骨区域中的一个或多个特征像素/体素。特征 像素/体素可以指具有一个特征值(如灰度、亮度等)或特征位置的像素/体素。在一些实施例中,种 子点确定子模块702可根据研究对象解剖结构确定种子点。属于同一物种的研究对象具有相似的解 剖结构,因此可根据解剖结构确定种子点。在一些实施例中,种子点确定子模块702可根据肋骨相对 于某器官(如肺脏、肝脏等)的位置确定种子点。例如,左一肋和/或右一肋的种子点可根据左肺和 /或右肺肺顶的位置确定,然后其他肋骨的种子点可根据左一肋和/或右一肋的种子点确定。在一些 实施例中,种子点确定子模块702可根据有关图像相关值的第一阈值(如灰度)来确定种子点。例如, 可指定像素值(如CT值、灰度等)在阈值范围内的像素/体素为种子点。
肋骨初分割子模块704可根据图像数据初分割一根或多根肋骨。在一些实施例中,肋骨初分割子 模块704可以确定图像数据中多个属于肋骨的像素/体素。肋骨初分割子模块704可确定初分割出的肋 骨的连通域。肋骨初分割子模块704可根据本披露中提到的一种或多种分割算法初分割肋骨。在一些 实施例中,肋骨初分割子模块704可采用一种相对简单的算法,以节省时间并加快肋骨提取过程。例 如,肋骨初分割子模块704可根据拉普拉斯算子利用边缘检测算法初分割肋骨。应注意,肋骨初分割 子模块704并非必要。
在一些实施例中,肋骨初分割子模块704可确定肋骨初分割是否成功。在一些实施例中,可根据 初分割肋骨和其他骨骼(如椎骨或类似骨骼)的位置信息确定。在一些实施例中,当初分割肋骨含 有一个或多个代表其他骨骼(如椎骨或类似骨骼)的像素/体素时,可确定肋骨初分割不成功;否则, 可确定肋骨初分割成功。在一些实施例中,肋骨初分割子模块704可成功地初分割未与其他骨骼重度 粘连的一根或多根肋骨。与其他骨骼重度粘连的肋骨可能连接到另一骨骼,此肋骨和另一骨骼之间 可生成一个连通域。很难确定连通域属于肋骨还是另一骨骼,也很难将连通域与肋骨和/或另一骨骼 区分开来。例如,连通域可能是在肋骨关节和另一骨骼关节之间。如果连通域中一个像素/体素的灰 度与肋骨或另一骨骼的灰度之间的差异小于阈值,表示难以将连通域与肋骨和/或另一骨骼区分开来。 再如,当肋骨边界和另一骨骼边缘之间的距离小于阈值,因部分容积效应,可能在肋骨边界和另一 骨骼边缘生成连通域,难以确定连通域属于肋骨或骨骼。未与其他骨骼重度粘连的肋骨可能连接到 另一骨骼,可生成一个连通域,但这种情况下确定连通域属于肋骨还是骨骼相对容易,或者将连通 域与肋骨和/或骨骼区分开来相对容易。如果连通域中一个像素/体素的灰度与肋骨或另一骨骼的灰 度之间的差异大于等于阈值,表示相对容易将连通域与肋骨和/或另一骨骼区分开来。在一些实施例 中,任何肋骨都不能被成功地初分割。例如,肋骨的像素/体素可能与其他骨骼的像素/体素重叠;同 时,肋骨的像素/体素和其他骨骼的像素/体素可能具有相似的像素值(如CT值、灰度、亮度等)。因 此,难以区分肋骨和其他骨骼,肋骨不能被成功地初分割。
肋骨分割子模块706可在图像数据中分割一根或多根肋骨。肋骨分割子模块706可确定分割出的 肋骨的连通域。在一些实施例中,肋骨分割子模块706可根据肋骨初分割结果分割肋骨。例如,肋骨 分割子模块706可以分割肋骨初分割子模块704没有成功分割的肋骨。因此,肋骨分割可以是根据肋 骨初分割结果的进一步处理。在一些实施例中,肋骨分割子模块706可以独立于肋骨初分割子模块 704分割肋骨。因此,肋骨分割和肋骨初分割可以独立进行。在一些实施例中,肋骨分割子模块706 可以对比肋骨分割结果和肋骨初分割结果,和/或根据对比结果确定肋骨。肋骨分割子模块706可包 括图9中所述的一个或多个单元。
肋骨分割子模块706可利用一种或多种算法分割肋骨。在一些实施例中,肋骨分割子模块706可 利用不同算法在图像数据中分割肋骨的不同部分。例如,肋骨分割子模块706可使用第一种算法(如 区域生长法或类似算法)分割第一部分肋骨,同时使用不同于第一种算法的第二种算法(如模型追 踪、模型匹配、机器学习算法或类似算法)分割第二部分肋骨。在一些实施例中,肋骨分割子模块 706可采用模型追踪算法和/或机器学习算法(如根据机器学习的模型追踪算法)分割与其他骨骼重 度粘连的肋骨部分。采用模型追踪算法可防止分割泄漏。分割泄漏是指一种分割错误,将靠近肋骨 区域的大量非肋骨像素/体素被确定为肋骨像素/体素。肋骨像素/体素是指代表肋骨的像素/体素。非 肋骨像素/体素是指不代表肋骨的像素/体素。使用机器学习算法,可加强图像数据中肋骨和其他骨 骼/器官之间的对比,因此可提高分割的准确性和稳健性。在一些实施例中,肋骨分割子模块706可 利用一种算法分割整根肋骨。
应注意上述肋骨提取模块504仅用于说明,不用于限制本披露的范围。本领域普通技术人员可在 本披露内容的指导下对肋骨提取模块504进行多重变更和修改。但是这些变更和修改不会背离本披 露的范围。例如,可移除肋骨初分割子模块704,在肋骨分割前可以不进行肋骨初分割。
图8是根据本披露的一些实施例所示的一种示例性提取肋骨过程的流程图800。在一些实施例中, 可通过肋骨提取模块504执行过程800。过程800至少有一部分可以在图3所示的计算装置上执行,或 在图4所示的移动设备上执行。
在801中,可根据图像数据确定肋骨的一个或多个种子点。在一些实施例中,可通过种子点确定 子模块702执行操作801。种子点可用作肋骨初分割和/或肋骨分割的起始点。在一些实施例中,可根 据研究对象解剖结构确定种子点。在一些实施例中,可根据肋骨相对于研究对象某器官(如肺脏、 肝脏等)的位置确定种子点。例如,左一肋和/或右一肋的种子点可根据一个肺顶的位置确定,然后 其他肋骨的种子点可根据左一肋和/或右一肋的种子点确定。操作801可自动执行、半自动执行或手 动执行。例如,可根据上述内容自动确定种子点。再例如,用户可通过输入/输出330确定种子点。 又例如,用户可修改、添加、删除或调整自动确定的种子点。
在803中,可根据801中确定的种子点进行肋骨初分割。在一些实施例中,可在803中确定连通域。 连通域可包括对应肋骨的一个或多个像素/体素。在一些实施例中,可通过肋骨初分割子模块704执 行操作803。可根据一种或多种算法进行肋骨初分割。在一些实施例中,可采用根据拉普拉斯算子的 边缘检测算法进行肋骨初分割。在一些实施例中,在803中确定肋骨初分割是否成功。在一些实施例 中,可根据初分割肋骨和其他骨骼(如椎骨或类似骨骼)的位置信息确定。在一些实施例中,当初 分割肋骨含有一个或多个代表其他骨骼(如椎骨或类似骨骼)的像素/体素时,可确定肋骨初分割不 成功;否则,可确定肋骨初分割成功。在一些实施例中,如果肋骨未与其他骨骼重度粘连,可视为 肋骨初分割成功。在一些实施例中,可认为肋骨初分割不成功。例如,肋骨的像素/体素可能与其他 骨骼的像素/体素重叠;同时,肋骨的像素/体素和其他骨骼的像素/体素可能具有相似的像素值(如 CT值、灰度、亮度等)。因此,难以区分肋骨和其他骨骼,肋骨不能被成功地初分割。操作803可自 动执行、半自动执行或手动执行。例如,可如上所述自动初分割肋骨。再例如,用户可通过输入/输 出330初分割肋骨。又例如,用户可修改或调整自动初分割的肋骨。
在805中,可根据肋骨初分割结果分割肋骨。在一些实施例中,可通过肋骨分割子模块706执行 操作805。在一些实施例中,如果认为肋骨初分割不成功,则可在805中分割肋骨。可根据本披露中 提到的一种或多种分割算法分割肋骨。在一些实施例中,可利用不同分割算法分割肋骨的不同部分。 例如可使用第一种算法(如区域生长法或类似算法)分割第一部分肋骨,同时使用不同于第一种算 法的第二种算法(如模型追踪、模型匹配、机器学习算法或类似算法)分割第二部分肋骨。在一些 实施例中,可采用模型追踪算法和/或机器学习算法(如根据机器学习的模型追踪算法)分割与其他 骨骼紧密粘连的肋骨部分。采用模型追踪算法可防止分割泄漏。使用机器学习算法,可加强图像数 据中肋骨和其他骨骼/器官之间的对比,因此可提高分割的准确性和鲁棒性。在一些实施例中,可采 用单一算法(如根据机器学习的模型追踪算法)分割整个肋骨。在一些实施例中,如果认为初分割 会成功,可跳过操作805。操作805可自动执行、半自动执行或手动执行。例如,可如上所述自动分割肋骨。再例如,使用者可通过输入/输出330手动分割肋骨。又例如,使用者可修改或调整自动分 割的肋骨。
图9是根据本披露的一些实施例所示的一种示例性肋骨分割子模块的框图。肋骨分割子模块706 可包括起始点确定单元902、部分肋骨分割单元904、肋骨模型追踪单元906和肋骨边界提取单元908。 肋骨分割子模块906至少有一部分可以在如图3所示的计算装置上执行,或在如图4所示的移动设备 上执行。
起始点确定单元902可确定肋骨分割的一个或多个起始点。起始点可包括代表肋骨的一个或多 个像素/体素。起始点可与种子点确定子模块702确定的种子点相同或不同。种子点可为提供肋骨初 分割提供基础,而起始点可为肋骨分割提供基础。在一些实施例中,起始点确定单元902可任意将肋 骨像素/体素指定为起始点。在一些实施例中,起始点确定单元902可将拟分割的肋骨像素/体素指定 为起始点。肋骨像素/体素可指代表肋骨的像素/体素。在一些实施例中,起始点确定单元902可根据 有关图像相关值的第二阈值(如灰度)来确定起始点。第二阈值可与确定肋骨种子点时应用的第一 阈值相同或不同。在一些实施例中,起始点确定单元902可根据研究对象解剖结构确定起始点。例如, 起始点确定单元902可将靠近椎骨的肋骨像素/体素确定为肋骨起始点。靠近椎骨的肋骨像素/体素表明肋骨像素/体素在距离椎骨的一定范围内(如10毫米、20毫米、30毫米等)。在一些实施例中,起 始点确定单元902可将肋骨解剖结构最低点的肋骨像素/体素(即最靠近研究对象背部的肋骨像素/体 素)确定为肋骨起始点。在一些实施例中,可以将初分割出的肋骨的多个图层累加,得到一张表示 肋骨像素/体素个数分布的直方图。例如,可以将初分割出的肋骨,先沿人体前后方向对像素/体素的 个数进行累加,得到一张冠状位个数累加图,再将此图沿人体上下方向对像素/体素的个数进行累加, 得到一张肋骨像素/体素个数沿人体左右方向分布的直方图。直方图中值最小处为最低点X坐标,通 过最低点X坐标所在的YZ平面与初分割结果相交得到追踪起始点。如图13所示,可将最靠近研究对 象背部的肋骨像素/体素(如由肋骨第一片段1302中的箭头S指示的肋骨像素/体素)指定为起始点。 在一些实施例中,一根肋骨可有一个或多个起始点。
部分肋骨分割单元904可根据起始点,使用分割算法确定肋骨的第一部分。在一些实施例中,部 分肋骨分割单元904可从起始点开始肋骨分割。在解剖结构中,一根肋骨有两端,一个第一端和第二 端。在一些实施例中,第一端与椎骨距离很远,而第二端与椎骨相连。在一些实施例中,第一端与 椎骨相隔第一距离,而第二端与椎骨相隔第二距离,并且第一距离大于第二距离。在一些实施例中, 第一端为远离椎骨的端点,第二端为靠近椎骨的端点。经过起始点的横截面可将肋骨分为两部分。 在一些实施例中,横截面可指与起始点处肋骨外表面切向方向垂直的平面。肋骨的第一部分可指起 始点到第一端之间的肋骨片段,而肋骨的第二部分可指起始点到第二端之间的肋骨片段。部分肋骨 分割单元904可根据本披露内容中提及的一种或多种分割算法确定肋骨的第一部分。
肋骨模型追踪单元906可根据起始点,使用模型追踪确定第二部分肋骨。肋骨模型追踪单元906 可包括一个或多个子单元,如图11所示。在一些实施例中,肋骨模型追踪单元906可从起始点开始肋 骨模型追踪。在一些实施例中,肋骨模型追踪单元906可使用基于机器学习的模型追踪算法确定第二 部分肋骨。机器学习算法可产生多个至少与一个样本肋骨相关的图像,并可生成识别肋骨的分类器。
肋骨边界提取单元908可提取肋骨边界。在一些实施例中,肋骨边界提取单元908可根据部分肋 骨分割单元904确定的肋骨第一部分和/或肋骨模型追踪单元906确定的肋骨第二部分,提取肋骨边界。 在一些实施例中,肋骨边界提取单元908可根据肋骨第一部分和肋骨第二部分生成完整的肋骨,接着 提取整个肋骨的边界。在一些实施例中,第一部分的一个或多个像素/体素可与靠近起始点的第二部 分的一个或多个像素/体素重叠。因此肋骨边界提取单元908可融合交错的像素/体素,并生成整个肋 骨。肋骨边界提取单元908可使用一个或多个算法提取肋骨边界,例如包括Roberts边缘检测算法、 Sobel边缘检测算法、Prewitt边缘检测算法、Laplacian边缘检测算法、Log边缘检测算法、Canny边缘 检测算法、根据面片模型的算法或类似算法,或这些算法组合。
图10是根据本披露的一些实施例所示的一种示例性分割肋骨过程的流程图1000。在一些实施例 中,可通过肋骨分割子模块706执行过程1000。过程1000至少有一部分可以在图3所示的计算装置上 执行,或在图4所示的移动设备上执行。
在1001中,可确定肋骨分割起始点。在一些实施例中,可通过起始点确定单元902执行操作1001。 在一些实施例中,可根据一个或多个肋骨像素/体素,随机确定起始点。例如,在多个拟分割肋骨的 像素/体素中,可指定一个肋骨像素/体素作为起始点。再例如,在多个拟分割肋骨的像素/体素中, 可指定两个或更多相邻的肋骨像素/体素作为起始点。如在此所用的,一对像素/体素可指相邻的像 素/体素,前提是这对像素/体素之间没有其他像素/体素;一对中的一个可指另一个的相邻像素/体素。 如在此所用的,多个像素/体素可指相邻的像素/体素,前提是多个像素/体素中的每个像素/体素均有 同属于另一像素/体素的相邻像素/体素。
在一些实施例中,可根据第二阈值确定起始点。例如,可将CT值大于第二阈值的肋骨像素/体素 确定为起始点。在一些实施例中,可根据研究对象解剖结构确定起始点。例如,可将靠近椎骨的肋 骨像素/体素确定为起始点。如果肋骨像素/体素在椎骨一定范围内(如10毫米、20毫米、30毫米等), 则视作肋骨像素/体素靠近椎骨。在一些实施例中,可将肋骨解剖结构最低位置的肋骨像素/体素(即 最靠近研究对象背部的肋骨像素/体素)指定为肋骨起始点。在一些实施例中,可以将初分割出的肋 骨的多个图层累加,得到一张表示肋骨像素/体素个数分布的直方图。例如,可以将初分割出的肋骨, 先沿人体前后方向对像素/体素的个数进行累加,得到一张个数累加图,再将此图沿人体上下方向对 像素/体素的个数进行累加,得到一张肋骨像素/体素个数沿人体左右方向分布的直方图。直方图中 值最小处为最低点X坐标,通过最低点X坐标所在的YZ平面与初分割结果相交得到追踪起始点。如 图13所示,可将最靠近研究对象背部的肋骨像素/体素(如由肋骨第一片段1302中的箭头S指示的肋 骨像素/体素)指定为起始点。在一些实施例中,一根肋骨可有一个或多个起始点。操作1001可自动 执行、半自动执行或手动执行。例如,可如上所述自动确定起始点。又例如,使用者可通过输入/输 出330手动确定起始点。再例如,使用者可修改、添加、删除或调整自动确定的起始点。
在1003中,根据1001中确定的起始点,使用分割算法可确定第一部分肋骨。在一些实施例中, 可通过部分肋骨分割单元904执行操作1003。鉴于第一部分肋骨未与任何椎骨粘连,1003中可采用便 利的算法(如阈值分割、区域生长分割等)。便利算法有相对高的效率,并且耗费的计算能力和/或 时间更少。在一些实施例中,可采用区域生长分割算法分割第一部分肋骨。使用区域生长分割,可 反复提取靠近起始点并符合一个或多个条件的像素/体素作为肋骨像素/体素。若采用区域生长算法, 可针对分割第一部分肋骨设置一个或多个限制。在一些实施例中,可沿从起始点到肋骨第二端的方 向进行区域生长,可限制与肋骨对应的新生长区域不超过经过起始点且分离第一部分和第二部分肋 骨的横截面。在一些实施例中,与使用区域生长法分割的肋骨对应的图像数据需符合条件。例如, 该图像数据符合某种导数(如二次导数)关系,在阈值范围内,或类似关系,亦或任何条件组合。
在1005中,根据1001中确定的起始点,使用模型追踪算法可确定肋骨第二部分。在一些实施例 中,可通过肋骨模型追踪单元906执行操作1005。可使用根据机器学习的模型追踪算法确定肋骨第二 部分。使用根据机器学习的模型追踪算法分割肋骨的示范过程如图12所示。模型追踪中可使用肋骨 模型。肋骨模型可包括3D几何结构。3D几何结构可有多种形状,例如圆柱、椭圆柱、圆锥体或类似 形状,或这些形状任意组合。3D几何结构可包括有关于3D几何结构尺寸的一个或多个参数。对于圆 柱模型,参考可包括半径r、高度h1等。对于椭圆柱模型,参考可包括长半轴a、短半轴b、高度h2等。 在一些实施例中,肋骨模型追踪期间可自动或手动调整一个或多个参数。
在1007中,可提取肋骨边界。在一些实施例中,可通过肋骨边界提取单元908执行操作1007。提 取肋骨边界可根据一种或多种算法,例如包括Roberts边缘检测算法、Sobel边缘检测算法、Prewitt边 缘检测算法、Laplacian边缘检测算法、Log边缘检测算法、Canny边缘检测算法、根据面片模型的算 法或类似算法,或这些算法组合。
图11是根据本披露的一些实施例所示的一种示例性肋骨模型追踪单元的框图。肋骨模型追踪单 元906可包括模型预测子单元1110、模型匹配子单元1120和模型重建子单元1130。肋骨追踪单元906 至少有一部分可以在如图3所示的计算装置上执行,或在如图4所示的移动设备上执行。
模型预测子单元1110可预测肋骨片段的一个或多个特性,例如包括形状、尺寸、和/或方向等。 在一些实施例中,模型预测子单元1110可根据肋骨模型(如图10中所述的肋骨模型)与图像数据的 匹配预测肋骨片段。模型预测子单元1110可根据起始点确定单元902确定的起始点或分割出肋骨像 素/体素预测肋骨片段。肋骨片段可包括代表肋骨的一个或多个像素/体素。在一些实施例中,肋骨片 段的形状和/或尺寸与图10中所述的肋骨模型相同。模型预测子单元1110可包括分类概率图确定子块 1102、追踪方向确定子块1104和追踪方向范围设置子块1106。
分类概率图确定子块1102可生成分类概率图。分类概率图(也称作肋骨概率图)可包括多个像 素/体素。在本披露内容中,“分类概率图”和“肋骨概率图”可互换使用。分类概率图的尺寸可与 601中所得图像数据对应的图像相同。分类概率图中的像素/体素可对应于图像中的像素/体素。图像 像素/体素值可以是图像中像素/体素的灰度、CT值等。分类概率图的像素/体素值可以是分类概率图 中像素/体素的分类概率。分类可以指确认一个像素/体素属于哪类骨骼、器官或组织。分类概率可指 一个像素/体素属于某类骨骼、器官或组织的概率。
分类概率图确定子块1102可根据受训分类器生成分类概率图。分类器可指实现分类的一种算法。 例如,分类器可包括确定像素/体素是否属于某肋骨的分类算法。在一些实施例中,可用多个样本训 练分类器,包括正样本和/或负样本。在一些实施例中,与肋骨相关的数据可用作正样本,而与其他 骨骼相关的数据(如椎骨、胸骨、肩胛骨、锁骨等)和/或与器官相关的数据(如肺、血管等)可用 作负样本。应注意训练分类器所用的样本不必为601所得图像数据的一部分。样本可包括除图6所述 研究对象外多个研究对象的图像数据。样本可从存储器150、存储器320、存储单元490和/或外部数 据库(未显示)中获取。肋骨分割前可生成受训分类器。受训分类器可存储在存储器150、存储器320、 存储单元490中和/或存储在外部数据库中(未显示)以供后续使用。
使用受训分类器,给图像数据中的肋骨像素/体素分配相对较高的概率值,而给图像数据中的非 肋骨像素/体素分配相对较低的概率值。在一些实施例中,高概率值与低概率值是相对的。例如,大 于阈值(如50%、60%、70%、80%、90%等)的概率值可被视为高概率值,而低于该阈值的概率值 则被视为低概率值。在一些实施例中,概率高的像素/体素比概率低的像素/体素灰度值高(即高亮 度),如图15所示。图14是原始肋骨图像。图15是根据图14原始肋骨图像和受训分类器得到的分类概 率图。如图15所示,向像素/体素A分配高概率值,而向像素/体素B分配低概率值,这意味着像素/体 素A属于肋骨,而非像素/体素B不属于肋骨。分类概率图可加强肋骨区域和非肋骨区域之间的对比, 因此可提高肋骨模型追踪的准确性和鲁棒性。
追踪方向确定子块1104可确定追踪方向。在2D/3D空间中存在多个方向。追踪方向可指模型追 踪方向。追踪方向可以是从已确定肋骨像素/体素(如部分肋骨分割单元904和/或肋骨模型追踪单元 906确定的起始点、肋骨像素/体素等)到其他待确定肋骨像素/体素的方向。追踪方向确定子块1104 可根据分类概率图确定追踪方向。在一些实施例中,追踪方向确定子块1104可将分类概率图中概率 最大的像素/体素所在的方向确定为追踪方向。
追踪方向范围设置子块1106可设置追踪方向范围。追踪方向范围可指2D/3D空间中可进行模型 追踪的一系列追踪方向。在一些实施例中,可沿2D/3D空间中的任何追踪方向进行模型追踪。在一 些实施例中,可在追踪方向范围内进行模型追踪,不得在追踪方向之外进行任何模型追踪,从而节 省追踪时间。追踪方向范围设置子块1106可根据肋骨特征信息设置追踪方向范围。特征信息可包括 肋骨解剖结构、肋骨相对于其他骨骼和/或组织的位置或类似信息,亦或任何信息组合。在一些实施 例中,追踪方向范围设置子块1106可在追踪方向范围内生成分类概率图。
模型匹配子单元1120可根据预测肋骨片段进行模型匹配。模型匹配子单元1120可确定预测肋骨 片段是否属于肋骨。模型匹配子单元1120可将预测肋骨片段与肋骨模型进行比较。关于肋骨模型的 更多说明可参见本披露中的其他地方。例如,参见图10及其说明。在一些实施例中,模型匹配子单 元1120可根据预测肋骨片段中像素/体素的特征值进行模型匹配。特征值可包括预测肋骨片段中像素 /体素的平均值、最小值、预测肋骨片段边界处像素/体素的平均值、最小值或类似值,或这些组合的 任何组合。例如,可根据肋骨模型确定预测肋骨片段中像素/体素的平均值并将其与阈值进行对比。 如果对比结果满足条件(如平均值大于阈值),模型匹配子单元1120可确定模型匹配成功,并可相应 地确定预测肋骨片段属于肋骨。否则模型匹配子单元1120可确定预测肋骨片段不属于肋骨。
在一些实施例中,模型匹配子单元1120可根据模型匹配结果,确定终止模型追踪的时间。例如, 若模型匹配子单元1120确定预测肋骨片段不属于肋骨,模型匹配子单元1120可确定模型追踪是否到 达肋骨端。因此可终止该模型追踪。
模型重建子单元1130可根据由模型匹配子单元1120成功匹配的一个或多个肋骨片段进行模型重 建。在一些实施例中,模型重建子单元1130可根据匹配的肋骨片段生成完整的肋骨。在一些实施例 中,模型重建子单元1130可根据匹配的肋骨片段修改、调整和/或更新肋骨模型。例如,模型重建子 单元1130可根据匹配肋骨片段的平均尺寸调整肋骨模型的尺寸。
图12是根据本披露的一些实施例所示的一种示例性肋骨模型追踪过程的流程图1200。在一些实 施例中,可通过肋骨模型追踪单元906执行操作1200。过程1200至少有一部分可以在图3所示的计算 装置上执行,或在图4所示的移动设备上执行。
在1201中,可设置图像数据追踪方向范围。在一些实施例中,可通过追踪方向范围设置子块1106 执行操作1201。追踪方向范围可根据肋骨特征信息进行设置。在一些实施例中,可根据先验知识获 取特征信息。特征信息可包括肋骨解剖结构、肋骨相对于其他骨骼和/或组织的位置或类似信息,亦 或任何信息组合。
在1203中,可在追踪方向范围中生成分类概率图。在一些实施例中,可通过分类概率图确定子 块1102执行操作1203。可根据受训分类器生成分类概率图。使用受训分类器,给图像数据中的肋骨 像素/体素分配相对较高的概率值,而给图像数据中的非肋骨像素/体素分配相对较低的概率值。在 一些实施例中,高概率值与低概率值是相对的。例如,大于阈值(如50%、60%、70%、80%、90% 等)的概率值可被视为高概率值,而低于该阈值的概率值则被视为低概率值。在一些实施例中,概 率高的像素/体素比概率低的像素/体素灰度值高(即高亮度)。分类概率图可加强肋骨区域和非肋骨 区域之间的对比,因此可提高肋骨模型追踪的准确性和鲁棒性。
在1205中,可根据1203中为获得预测肋骨片段生成的分类概率图来确定追踪方向,获得预测肋 骨片段。在一些实施例中,可通过追踪方向确定子块1104执行操作1205。在一些实施例中,可以确 定所述肋骨概率图在追踪方向范围内的子集。追踪方向从集合元素上可以理解为无限个离散点,即 各个方向,子集为离散点,例如10°,15°或30°。根据所述子集确定追踪方向,并且根据所述追踪方 向确定预测肋骨片段。在一些实施例中,可以将分类概率图中概率最大的像素/体素所在的方向确定 为追踪方向。可根据图10所述的追踪方向和肋骨模型预测肋骨片段。
在1207中,可对预测肋骨片段进行模型匹配。在一些实施例中,可通过模型匹配单元1120执行 操作1207。在1207中可确定预测肋骨片段是否属于肋骨。预测肋骨片段可与肋骨模型进行比较。关 于肋骨模型的更多说明可参见本披露中的其他地方。例如,参见图10及其说明。在一些实施例中, 可根据预测肋骨片段中像素/体素的特征值进行模型匹配。特征值可包括预测肋骨片段中像素/体素 的平均值、最小值、预测肋骨片段边界处像素/体素的平均值、最小值或类似值,或这些数值的任何 组合。例如,可根据肋骨模型确定预测肋骨片段中像素/体素的平均值并将其与阈值进行对比。在一 些实施例中,可根据一个或多个分类概率图确定特征值。如果对比结果满足条件(如平均值大于阈 值),可确定模型匹配成功,并可相应地确定预测肋骨片段属于肋骨。否则可确定预测肋骨片段不属 于肋骨。在一些实施例中,可在模型匹配过程中调整肋骨模型。例如,可在模型匹配过程中调整肋 骨模型尺寸。在一些实施例中,可在模型匹配过程中调整预测肋骨片段。例如,可在一定范围内调 整预测肋骨片段的方向、位置、尺寸等,并可生成新的预测肋骨片段。在一些实施例中,调整的预 测肋骨片段可带有改进的特征值,并可视作匹配的肋骨片段。
在1209中,可根据1207中确定的一个或多个匹配肋骨片段进行模型重建。在一些实施例中,可 通过模型重建单元1130执行操作1209。在一些实施例中,根据匹配的肋骨片段,可生成完整的肋骨。 在一些实施例中,根据匹配的肋骨片段,可修改、调整和/或更新肋骨模型。例如,根据匹配肋骨片 段的平均尺寸,可调整肋骨模型的尺寸。
图13是根据本披露的一些实施例所示的示例性肋骨模型追踪的追踪方向范围。如图13所示,一 根肋骨可有多个片段(如第一片段1302、第二片段1304、第三片段1306等)。肋骨可与椎骨1308粘连。 考虑到肋骨和椎骨1308的解剖结构,追踪方向范围可有最大前向D1和最大后向D2。
图14是根据本披露的一些实施例所示的示例性原始肋骨图像。
图15是根据本披露的一些实施例所示的示例性分类概率图。通过用受训分类器处理原始肋骨图 像获取分类概率图。肋骨像素/体素A有相对较高的概率,而椎骨像素/体素B有相对较低的概率。
图16是根据本披露的一些实施例所示的一种示例性提取肋骨过程的流程图1600。过程1600至少 有一部分可以在图3所示的计算装置上执行,或在图14所示的移动设备上执行。
在1601中,可以获取图像数据。图像数据可以包括一个或多个肋骨。可以按照601中描述的那样 获取图像数据。
在1603中,可以确定图像数据中的肋骨种子点。可以根据器官(例如,肺、肝)的位置确定肋 骨种子点。可以按照801中描述的那样确定种子点。
在1605中,可以根据种子点进行肋骨初分割。可以用基于拉普拉斯算子的边缘检测算法进行肋 骨初分割。
在1607中,可以判断肋骨初分割是否成功。可以根据初分割出的肋骨与其他骨骼(例如,椎骨) 的位置信息判断。在一些实施例中,可以将初分割出的肋骨在冠状位上的多个图层叠加,得到灰度 叠加图。灰度叠加图中的像素值可以是多个图层中处于相同位置的像素/体素的数值的总和。在一些 实施例中,可以将灰度叠加图中灰度值最高的区域确定为椎骨空间范围。将初分割出的肋骨的空间 范围与椎骨空间范围比较。如果初分割出的肋骨的空间范围与椎骨空间范围至少有部分重叠,则判 断初分割出的肋骨与椎骨粘连,从而判断肋骨初分割不成功,过程1600将进行操作1609以进一步分 割肋骨。如果初分割出的肋骨的空间范围与椎骨空间范围没有任何重叠,则判断肋骨初分割成功, 过程1600将进行操作1627以输出提取的肋骨数据。
1609至1625可以对初分割不成功的肋骨进行进一步分割。
在1609中,可以确定肋骨解剖结构最低点为起始点。肋骨解剖结构最低点可以是肋骨上距离人 体背部最近的一点。可以采用阈值算法在图像数据中提取骨骼。在一些实施例中,可以将初分割出 的肋骨的多个图层累加,得到一张表示肋骨像素/体素个数分布的直方图。例如,可以将初分割出的 肋骨,先沿人体前后方向对像素/体素的个数进行累加,得到一张个数累加图,再将此图沿人体上下 方向对像素/体素的个数进行累加,得到一张肋骨像素/体素个数沿人体左右方向分布的直方图。直 方图中值最小处为最低点X坐标,通过最低点X坐标所在的YZ平面与初分割结果相交得到追踪起始 点。
在1611中,可以根据起始点确定肋骨的第一部分。从解剖结构上看,肋骨具有近端和远端,近 端靠近椎骨,远端靠近胸骨。过起始点做肋骨横截面,将肋骨分成两部分。横截面与远端之间的为 肋骨的第一部分,横截面与近端之间的为肋骨的第二部分。可以采用区域生长法分割肋骨的第一部 分。在采用区域生长法分割肋骨的第一部分时,可以设置限制条件。例如,生长区域不能超出横截 面。又例如,通过区域生长得到的图像数据需要满足一定的二阶导数关系。
1613至1619可以确定肋骨的第二部分。
在1613中,可以根据起始点确定肋骨第二部分的初始肋骨片段。可以用训练好的分类器对图像 数据进行处理,得到分类概率图。可以从起始点处对多个方向进行搜索,将分类概率图中概率最大 的像素/体素所在的方向确定为初始追踪方向。可以沿着初始追踪方向通过模型追踪得到初始肋骨片 段。可以按照1207中描述的那样对初始肋骨片段与肋骨模型进行匹配。关于肋骨模型的更多内容, 可以参见图10及相应描述。如果初始肋骨片段与肋骨模型匹配,则可以将初始肋骨片段确定为真正 的肋骨片段。
在1615中,可以使用分类器在预设追踪方向范围内生成分类概率图。可以按照1203中描述的那 样生成分类概率图。在一些实施例中,可以减少向人体后面的搜索角度,加大向人体前面的搜索角 度(如图13所示)。在一些实施例中,追踪方向范围可以是角度范围。角度可以指初始肋骨片段所在 直线与追踪方向之间的夹角。例如,可以向人体前面搜索45度角的范围,向人体后面搜索15度角的 范围(例如图13中D1与D2之间的范围)。
在1617中,可以根据分类概率图确定追踪方向,得到预测肋骨片段。可以将分类概率图中概率 最大的像素/体素所在的方向确定为追踪方向,从而得到预测肋骨片段。
在1619中,可以对预测肋骨片段进行匹配。可以按照1207中描述的那样对预测肋骨片段进行匹 配。在一些实施例中,可以确定预测肋骨片段中像素/体素的平均值并与肋骨模型的相关阈值进行比 较。
在1621中,可以判断预测肋骨片段是否与肋骨模型匹配。在一些实施例中,如果预测肋骨片段 与肋骨模型之间的区别在一定阈值范围内,则判断预测肋骨片段与肋骨模型匹配。例如,如果预测 肋骨片段中像素/体素的平均值与肋骨模型中像素/体素的平均值之间的差值小于一定阈值,则判断 预测肋骨片段与肋骨模型匹配,否则判断预测肋骨片段与肋骨模型不匹配。如果匹配,则过程1600 将返回1615;如果不匹配,则过程1600将进行1623。
在1623中,可以根据1613至1621所确定的匹配的肋骨片段以及1611中确定的肋骨第一部分进行 模型重建,形成一根完整的肋骨。
在1625中,可以提前肋骨边界。可以按照图10及其描述的那样,用一种或多种算法提取肋骨边 界。
在1627中,可以输出提取的肋骨数据。在一些实施例中,可以通过I/O 330输出提取的肋骨数据 以呈现给用户。在一些实施例中,可以将提取的肋骨数据输出至终端130。在一些实施例中,可以将 提取的肋骨数据输出至存储器(例如,存储器150、存储器320、存储器490)用以存储。
图17至图20示出了根据本披露的一些实施例所示的用基于机器学习的模型追踪进行肋骨分割 的示例性测试图。图17至图20中左上角的图为横断位上的多根肋骨图像。右上角的图为矢状位上的 多根肋骨图像。左下角的图示出了多根分割出的肋骨。右下角的图为冠状位上的多根肋骨图像。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述发明披露仅仅作为示例, 而并不构成对本披露的限定。虽然此处并没有明确说明,本领域技术人员可能会对本披露进行各种 修改、改进和修正。所述类修改、改进和修正在本披露中被建议,所以所述类修改、改进、修正仍 属于本披露示范实施例的精神和范围。
最后,应当理解的是,本披露中所述实施例仅用以说明本披露实施例的原则。其他的变形也可 能属于本披露的范围。因此,作为示例而非限制,本披露实施例的替代配置可视为与本披露的教导 一致。相应地,本披露的实施例不仅限于本披露明确介绍和描述的实施例。