APP下载

基于广度优先搜索算法计算视网膜血管弯曲度和长度

2015-07-31刘振宇胡深明单晶心

当代医学 2015年1期
关键词:段长度搜索算法像素

刘振宇 白 冰 胡深明 单晶心

基于广度优先搜索算法计算视网膜血管弯曲度和长度

刘振宇 白 冰 胡深明 单晶心

目的 通过多年临床经验可知,眼底血管是人体唯一可以通过非创伤性直接观察的较深层的微血管,通过这些微血管的弯曲度和长度可以表征视网膜状态,进一步诊断疾病。方法 本文介绍一种基于广度优先搜索算法,将视网膜血管分布看成血管树,利用遍历法计算视网膜中血管长度(即每个节点间的距离)及弯曲度。结果 通过imagej软件利用此方法测量十五种不同形态位置的血管段长度和弯曲度,并与人工测量的血管数据进行对比,对比所得数据,验证此计算方法是否能准确有效的表征血管长度及弯曲度,将其作为诊断疾病的有力依据。结论 通过对比2组数据,此方法能快速准确的计算出血管长度,减少人为测量的误差。

段长度;弯曲度;微血管;遍历

随着社会的发展、人口的老龄化以及人们工作方式生活习惯的改变,Ⅱ型糖尿病已经成为人类健康面临的“重大杀手”。目前,我国糖尿病死亡率在不断上升,糖尿病在临床医学上的表现主要是从人体内的微循环和微血管的变化开始的,人体唯一可以直接观察到的比较深层的微血管便是眼底的眼底血管。许多疾病的发生常会在眼底反映出来。眼底血管是循环系统的末端部分,利用对眼底血管所携带的丰富信息,进行人体组织与器官的无损伤的功能评价的技术方法是目前临床医学的研究方向,这种技术方法不仅可以检测到早期糖尿病,还可以观察糖尿病从早期变化到末期的过程,详细的描述了整个病发状态。医师通过眼底病变程度和病发状态制定有效的治疗方案。本文中通过对采集到的眼底医学图像进行图像处理,为医师提供诊断依据。通过医学鉴别和分析之后,采取更加有针对性的治疗方案。通过结合临床经验和图像处理方法,研发眼底血管病变分割处理方法,此系统对糖尿病的筛查、预防和早期治疗,具有十分重要的现实意义。

1 资料与方法

1.1 一般资料 通过多年临床经验可知,眼底血管是人体唯一可以通过非创伤性直接观察的较深层的微血管[1],越来越多的临床医生希望找到微血管的变化与疾病之间的关系。视网膜是一个分层组织,负责神经信号光的转换,被认为是大脑的一部分。眼底图像由血管树和视盘组成,其中血管树可以表现出血管的各类特征信息(见图1),分叉角(θi),血管段长度(Xi),曲率(κi)和血管半径(Yi)。在三维空间中两个分叉点之间的真实距离即欧几里得距离[2]σi,这些数据的变化都会反映某种疾病的早期特征,如糖尿病早期会造成动脉血管半径变小,静脉血管半径变大等[3]。

图1 血管特征信息

目前研究发现,某些疾病会导致视网膜血管的角度或各个分支之间距离发生变化,即可通过血管弯曲度(κi)检测疾病的严重程度。血管弯曲度(κi)(公式1)

本研究的目的是开发一个算法,计算两个分叉点之间的路径的长度,并确定血管的弯曲度。利用广度优先搜索方法找到完整的血管树结构的分支。计算两个分叉点之间的长度Xi,以及之间的距离分叉点σi。

1.2 方法

1.2.1 广度优先搜索算法 广度优先算法(breadthfirst-search),又称作宽度优先搜索,或横向优先搜索,简称BFS,是一种图形搜索演算法[4]。简单的说,BFS是从根节点开始,沿着树的宽度遍历树的节点,如果发现目标,则演算终止。使用这种方法能清晰标度出图像中分叉点的位置,只有在获得视神经盘和分叉点的位置的基础上,才能进一步确定分叉点之间的距离和血管长度。

将分割好的眼底血管图像的像素视为图:像素(图节点)连接相邻的像素(或边缘)。广度优先搜索算法搜索目标的图通过检查每个节点的相邻节点。对于每个这些相邻节点,算法评估未经检验的节点,直到所有的像素都评估。在这项研究中,该算法使用广度优先搜索找到端点和分叉点的血管分支。要做到这一点,进行以下步骤:

(1)图像像素都存储在一个数组中,用白色标记出(见图2a)。

从一个任意的起点,第一个像素是“黑”的标签。“白色”所有的邻居像素的标记“灰色”(见图2b)。

(2)只要有“灰色”像素,随机选择其中一个标记为黑色。所有的白色邻国标记灰色(见图2c)。有两个白色的邻居,如果当前像素标记为一个分支点(见图2d)。如果当前像素没有白色的邻居,像素标记为一个端点。像素标记为黑色和邻国标记为灰色

(3)重复步骤2,直到没有更多的灰色像素。在这种情况下,研究了一个组件的所有像素(见图2e)。

(4)如果有白色像素的图像,这一过程重复从新的起点(随机选择白色像素),直到所有的像素都评估。

图2

该算法的步骤:(A)所有骨架像素标记为白色。(B)第一个像素标记灰色发现的算法。(C)灰色像素颜色的黑色和邻国的灰色。这是对每个像素重复。(D)该算法找到一个分歧点当两个白色邻居发现和颜色的灰色。(E)最终的结果,所有像素标记为黑色。

1.2.2 计算的血管段长度 在邻近的像素中,计算当前像素与其邻近节点之间的距离。通过总结这些两个分叉点之间的距离,两个分支之间的血管的长度就可以计算。这个长度计算方法也表现在搜索算法。即每个像素的长度I,第一个像素到遇到分叉点的时候所经过像素的个数X,即像血管段长度L(公式2)。

1.2.3 计算血管弯曲度 确定血管段的弯曲度,需要计算血管段的长度和其端点之间的欧几里得距离。对于每个分叉和每个端点计算这个欧几里得距离是必要的。曲线的弯曲度可以估计作为一个弧-弦比:长度L和两点间直线距离C之比(公式3)。

2 结果

在血管图像中选取以下几种血管形态结构作为算法测试图像(见图3):

(1)直线型:三个类似的测量长度从一个起点到一个端点。

(2)十字型:十字路口交叉点的线。

(3)s型:长度和两个半圆的弧长形成一个s形。

图3

节点之间的直线距离如图4的算法进行计算。每个标签包含最后一次分叉的距离或距离最后的起点。

图4

选取十五处不同形态位置的血管,利用imagej[5]计算处血管段长度和弯曲度,并与人工测量数据进行对比。

Imagej能打开任意多的图像进行处理。除了基本的图像操作[6],比如缩放,旋转,扭曲,平滑处理外,Imagej还能进行图片的区域和像素统计,间距,角度计算,能创建柱状图和剖面图,进行傅里叶变换[7]。

血管置形状 段长度(px) 弯曲度(px) 准确度(px)s型 452 1.81 0.679 s型 332 1.32 0.865 s型 375 1.75 0.723 s型 698 1.45 0.712 s型 523 1.23 0.69 s型 546 1.69 0.732 s型 512 1.7 0.801直线型 213 1.02 0.92直线型 146 1.2 0.93直线型 235 0.68 0.89直线型 302 1.54 0.78十字型 256 0.96 0.83十字型 237 1.33 0.92十字型 103 1.1 0.88

如图5,在标记为黑色圆形处选取十五处形态位置各不相同的血管进行测量。

图5

3 讨论

通过上述表格可以看出,本文所用算法能快速的对段长度和弯曲度进行测量,且准确率很高,同时也发现s型测量的两组数据差距较大,有两个因素造成这种结果产生:

(1)软件对s型不规则,所测量两支点的直线距离存在误差;

(2)人工测量方法也同样存在误差。

[1] 朱宏擎.基于灰度-梯度共生矩阵的视网膜血管分割方法[J].上海交通大学学报,2004,38(9):1485-1488.

[2] 陈汉军,杨雪.欧几里德距离的几种定义与应用[J].天津轻工业学院学报,2003,23(2):65-66.

[3] 刘亚丽,尹翠梅.糖尿病血管病变研究进展[J].中西医结合心脑血管病杂志,2005,31(12):432-434.

[4] 陈伟,付宇洁,秦科.基于二叉树的加密算法[J].实验科学与技术,2006,29(12):81-83.

[5] 徐桓,段新安.ImageJ软件在大型医疗设备质量检测中的应用[J].中国医学装备,2011,6(11):20-22.

[6] 王智文.几种边缘检测算子的性能比较研究[J].制造业自动化,2012,5(11):14-16.

[7] 陈文静,苏显渝,曹益平,等.傅里叶变换轮廓术中抑制零频的新方法[J].中国激光,2004,26(6):740-744.

Objective Through many years clinical experience, the retinal blood vessels is the body only can be observed directly by non traumatic deep capillaries, curvature and the length can be characterized by these capillaries retinal status, further diagnosis. Methods This paper introduces a based on the breadth-first search algorithm, the distribution of retinal blood vessels as a vascular tree, through the calendar is used to calculate the length of the blood vessels in the retina (i.e., the distance between each node) and bending. Results By imagej software use this way to measure the 35 different forms of bending and vessel length, and comparison with data of artificial measurement of blood vessels, comparing the data obtained, to validate the calculation method can accurately effective characterization of blood vessels and bending length, make it as a powerful reason to diagnose diseases. Conclusion By comparing the two groups of data, this method can fast calculate the length of blood vessels, reduce man-made error of the measurement.

Segment length; Bending; Capillaries; Traverse

10.3969/j.issn.1009-4393.2015.1.001

辽宁 110034 沈阳工业大学 (刘振宇 白冰) 辽宁何氏医学院(胡深明 单晶心)

猜你喜欢

段长度搜索算法像素
像素前线之“幻影”2000
改进的非结构化对等网络动态搜索算法
改进的和声搜索算法求解凸二次规划及线性规划
漠大线因冻胀引起的应变影响因素研究*
重力热管几何结构优化的数值研究
“像素”仙人掌
过渡段长度对混合梁桥的受力影响
ÉVOLUTIONDIGAE Style de vie tactile
高像素不是全部
基于逐维改进的自适应步长布谷鸟搜索算法