【背景技术】
粒子检测仪通过收集关于样本中粒子的两种或两种以上的特征,并将这两种或两种以上的特征标志为二维或二维以上的向量,选择其中的两种或三种特征映射到二维或三维直角坐标系中,将样本中所有的粒子映射到坐标系中得到一幅粒子分布散点图。正常情况下,由于同种粒子在这些特征方面的相似以及不同种类的粒子在这些特征方面存在差异,因此在散点图上同类粒子形成一个粒子群,而不同类型粒子群又互相分离,请参见图1,左边是三维图,右边是它的二维投影,各群落分的很开,可以采用一些粒子分类方法实现对不同粒子群的分类。常用的粒子分类方法有:
1)固定边界法,即在由前向散射光和侧向散射光形成的散点图上,通过“设门”的方式从粒子中区分不同种类粒子的方法,所谓“设门”就是在散点图上划分出边界,落在某边界内部的粒子被认为是同一类粒子。
2)重心引力因子法,该方法用尺寸、形状和方向固定而位置不固定的边界在散点图上进行分类,用一种优化算法根据每个类的重心引力因子将这个类的边界确定下来,请参见图2。
3)自动分类方法,用修改后的Koonst and Fukunaga算法寻找二维数据的分界线(二维数据的波谷),用这些分界线将落在同一界线包围中的粒子归为一类,以此将粒子分成诸多类别,请参见图3。
在某些特殊情况下,不同类型粒子群之间相距很近甚至有一定程度的交叠,但各粒子群落的中心互相分离,这种情况下两个粒子群之间不是分离的,而是有一个共同的交界线,请参见图4,左边是三维图,右边是它的二维投影,图右边的两个群落有交叠,但两个群落的核心部分是分离的(三维图上可以见到两个波峰是分离的),对于这种情况,现有的常规的算法并不能很好的区分这些粒子群。例如,固定边界法在当某些样本的细胞信号特征显著不同于固定边界所表达的特征时就会出现较大误差,比如属于两个类别的粒子群靠的很近或者有交叠的时候固定边界法不能准确对粒子进行分类。重心引力因子法虽然可以自动调整边界的位置,但是尺寸、形状和方位还是固定的,当两个类别的粒子群落靠的很近或者有交叠的时候,这个方法依然不能对粒子进行准确分类。自动分类方法在两个粒子群落靠在一起且它们之间没有波谷,则会把两个群落识别成一个,依然不能对粒子进行准确分类。
【具体实施方式】
本发明的特征及优点将通过实施例结合附图进行详细说明。
本发明的粒子检测装置可以是各种用于对粒子进行分类统计的装置,下面以血液细胞分析仪为例进行说明。五分类血液细胞分析仪的主要功能就是提供人体中各类细胞的数目,其中对各类白细胞的计数是基本的功能。使经过试剂处理后的、被液体包被的白细胞逐个通过检测区域(流动室),将激光照射到单个的细胞上,通过收集不同角度的折射或散射光线(通常为前向散射光FSC、侧向散射光SSC),再通过光电转换和AD转换,得到对应细胞的一组数据(例如二维或三维),将此数据映射到坐标系(例如二维坐标系或三维坐标系)中,可以得到该细胞在坐标系中的位置,将样本中的所有白细胞都映射到坐标上可以得到白细胞分布图(简称散点图)。在散点图中,同一类的白细胞聚集在一起,不同类的白细胞互相分离,请参见图1。在散点图上划分多个区域,把落在同一区域的白细胞归为同一类,并统计落在这些类别内的粒子数目和百分比,用以分析被测样本的成份组成。
在测量系统准确的情况下,同一类粒子的各种特征是相近的,它们在散点图上的位置接近,这是粒子分析仪区分不同粒子群体的依据所在,并且,按照自然界的规律,同一类粒子的分布区域(在散点图上)应该具备以下特征:从区域中心到区域边缘,粒子分布由密集逐渐稀疏,如果将散点的灰度值和该点的粒子数对应,则散点的灰度值由高逐渐变低最后变成0,如果做散点图灰度值的等高线分布的话,则各高度的曲线形状相同,只是区域大小不同。
根据这个特征,在对粒子进行分类时,本发明先在散点图上寻找某个粒子群落的核心部分,核心部分位于群落中心,和其它类别的粒子无交叠。根据同类粒子在散点图上分布的特性,群落的整体分布形状和核心部分的分布近似,请参见图5,图左边是三维图,图右边是它的二维投影,可以明显看到,代表核心的环线形状(即位置较高的或者是投影线在内圈的)和群落的实际形状相似。因此可以对这个核心进行一次或多次膨胀运算,即放大核心区域并保留主要的形态特征,用核心膨胀后的边界表示该群落的真实边界。如果某个群落的边缘部分因为受到其它群落的干扰(有交叠区)而失真的话,用本发明也可以更准确找到该群落的实际边界。
请参考图6,在一种实施例中,粒子检测装置包括特征采集模块、散点图形成模块、初步划分模块、核心区域确定模块、膨胀模块和判断模块,特征采集模块用于收集粒子在检测仪中产生的至少两种特征,散点图形成模块用于根据粒子特征形成粒子的分布散点图;初步划分模块用于对所述散点图进行初步划分得到粒子群落的分布。核心区域确定模块用于确定粒子群落的核心区域,某个粒子群落的核心区域是该粒子群落分布散点图的中心区域,该区域通过一定的条件判断来确定,例如在一种实施例中,核心区域确定模块通过将散点图上每点的灰度值和灰度阈值比较得到核心区域,对于散点图上每点的灰度值随该点的粒子数的增加而增大的情况,所述核心区域确定模块在散点图上查找出灰度值大于灰度阈值的区域,则该区域为核心区域。在另一实施例中,核心区域确定将散点图上每点的粒子数和数量阈值比较得到核心区域,所述核心区域确定模块在散点图上查找出粒子数大于数量阈值的区域,并该区域确定为核心区域。膨胀模块用于对核心区域进行至少一次膨胀运算;判断模块用于根据膨胀结果确定该粒子群落的散点图的实际边界的判断模块。判断模块先确认是否膨胀到适当区域,如果是再根据膨胀结果确定该粒子群落的散点图的实际边界。确认是否膨胀到适当区域可通过目视确定或通过相似性运算来确定,在一实施例中,判断模块在每次膨胀后,判断该次膨胀后形成的扩展区域所对应的散点图上的实际散点分布形状是否与核心区域或核心区域的散点分布形状相似,如果相似,则控制膨胀模块进行下一次膨胀,如果不相似,则控制膨胀模块结束膨胀,根据膨胀结果确定该类粒子的分布区域。膨胀结果可以为最后一次膨胀后的区域,或最后一次的前一次膨胀后的区域,或最后一次的前两次膨胀后的区域,将最后一次膨胀后的区域或最后一次的前一次膨胀后的区域或最后一次的前两次膨胀后的区域作为该类粒子的分布区域。
对于任一个粒子群落,都可以通过查找该粒子群落的核心区域,对核心区域进行膨胀运算后确定该粒子群落的边界。但为了简化计算,在改进的实施例中,在对散点图进行初步划分后,对于与其它粒子群落无交叠的粒子群落,在初步划分后即可确定该类粒子群落的边界,对于与其它粒子群落有交叠的粒子群落,再查找该类粒子群落的核心区域,并进行若干次膨胀运算后获得该类粒子的较准确的边界。
基于上述粒子检测装置,粒子分类方法的一种实施例的流程图包括以下步骤:
收集粒子在检测仪中产生的至少两种特征;
根据收集的粒子特征形成粒子的分布散点图;
对所述散点图进行初步划分,得到粒子群落的分布;
确定所述粒子群落的核心区域;
对核心区域或核心区域的轮廓进行至少一次膨胀运算;
根据膨胀结果确定该粒子群落的散点图的实际边界。在该步骤中,可先确认是否膨胀到适当区域,再根据膨胀结果确定该粒子群落的散点图的实际边界。
一种具体实施例的流程图如图7所示,包括以下步骤:
在步骤102,通过用激光照射血液样本中的白细胞,收集每个白细胞的至少两个方向的光信息,例如前向散射光FSC和侧向散射光SSC,再通过光电转换和AD转换,得到对应细胞的一组二维数据,将此二维数据映射到坐标系中,得到白细胞分布散点图,散点图中的数据点Pi可以用向量(xi,yi,ni)表示(见图8),其中xi为点Pi在X轴方向的坐标,yi为点Pi在Y轴方向坐标,ni为点Pi处的白细胞个数,将ni用高度表示可以得到一个三维图形(见图9)。然后执行步骤104。
在步骤104,对所述散点图进行初步划分。由于各类白细胞在散点图中的分布区域具有相对稳定的位置,在一种实施例中,散点图中白细胞分布的区域可以采用划分固定区域的方法获得淋巴细胞(Lym)分布区域RLym、单核细胞(Mono)分布区域RMono、中性粒细胞(Neut)分布区域RNeut、嗜酸性粒细胞(Eos)分布区域REos,见图10,其中:
RLym={(x11,y11,n11),(x12,y12,n12),...},RMono={(x21,y21,n21),(x22,y22,n22),...},
RNeut={(x31,y31,n31),(x32,y32,n32),...},REos={(x41,y41,n41),(x42,y42,n42),...}。
在另一种实施例中,散点图中白细胞分布区域也可以通过投影直方图寻找波谷的方法确定各类白细胞的分布区域,具体过程为:
a)把散点图中每一列的数据点累加得到一维直方图,如图11所示,直线标示波谷位置,在直方图的某固定区域内寻找波谷,并以波谷为分界线把散点图分为左右两部分;
b)分别把步骤a)中散点图的左、右两部分的每一行累加得到一维直方图,在直方图的某固定区域内寻找波谷,并以波谷为分界线把散点图分为上下两部分,如图12、图13所示,直线标示波谷位置,从而把散点图划分为RLym、RMono、RNeut、REos,4个区域,如图14,直线划分各类别。
在步骤106,对散点图进行初步划分后,计算各区域(粒子群落)是否有交叠,提取用于以下运算的关键区域,关键区域即与其它粒子群落有交叠的粒子群落的分布区域。如果是采用固定区域法进行初步划分,可以直接计算固定区域的各边界上是否有散点,如果某个边界上有散点,说明与此边界相邻的两个区域(粒子群落)有交叠;如果是采用波谷法进行初步划分,可以判断波谷的高度,如果波谷高度大于0,说明以此波谷为界的两个区域有交叠。以图14所示样本为例,散点图右侧的两个区域有交叠。这两个区域都是关键区域,但因为确定一个区域边界的同时就自然的确定了剩下那个区域的边界,所以只需要计算一个关键区域。然后执行步骤108。
在步骤108,计算图15所示粒子群落关键区域的核心区域。在一种实施例中,用灰度阈值确定核心区域。在散点图上,每个数据点Pi处的白细胞个数和灰度相对应,个数越多,灰度值越大。预先设置一个灰度阈值T,如果某个散点的Pi的灰度值大于T,则认为Pi是核心区域的散点,保留下来,否则将Pi从散点图上去掉,根据这个原则形成的一个新的散点图就代表图15的核心区域。灰度阈值T可以是一个固定值(例如经验值),也可以是一个和实际散点图相关的浮动的值,比如取散点图上最大灰度值的一半,以图15为例,图中最大灰度值是220,可取其一半(等于110)作为灰度阈值,去掉灰度值小于或等于110的点,得到散点图的核心区域。图16是图15的灰度等高线图,图中用文字标注了代表核心区域的等高线。在另一实施例中,还可直接采用粒子数阈值来确定核心区域,例如将散点图上某粒子的群落中,将粒子数大于数量阈值的区域确定为核心区域。确定核心区域后执行步骤110。
在步骤110,对得到的核心区域或者是核心区域的轮廓进行膨胀运算,膨胀是放大的过程,在放大的过程中要尽量少的减少图形失真,膨胀方法可采用常规的水平膨胀、垂直膨胀、全方向膨胀或模板膨胀等,视散点图的具体情况而定,图17是对核心区域进行7次膨胀后的结果,图中心的实心部分为膨胀前的核心区域,每膨胀一次就向外增加一个环形区域,图中用两种灰度色标识出每次膨胀所增加的环形区域。在每次膨胀后进行一个判断过程,判断是否膨胀到适当区域,判断的依据是“膨胀后实际散点分布是否和核心区域的分布相似”。计算图形相似性的方法很多(比如图像匹配算法),可以根据具体应用做选择。在本实施例中,把每次膨胀后扩大的区域映射到实际散点图上(图15是实际的散点图),就可以得到每次膨胀后增加的散点的实际分布情况(见图18),计算膨胀后形成的扩展区域所对应的散点图上的实际散点分布形状与核心区域或核心区域的散点分布形状的相似度,如果相似度大于门限值,则认为膨胀后形成的扩展区域所对应的散点图上的实际散点分布形状与核心区域或核心区域的散点分布形状的仍相似,则进行下一次膨胀。否则,认为两者不相似,则结束膨胀。在步骤112中,根据膨胀结果确定该类粒子的分布区域,从而确定该类粒子群落的分布边界。膨胀结果可以为最后一次膨胀后的区域,或最后一次的前一次膨胀后的区域,或最后一次的前两次膨胀后的区域,将最后一次膨胀后的区域或最后一次的前一次膨胀后的区域或最后一次的前两次膨胀后的区域作为该类粒子的分布区域。本例中的核心区域是对称分布的(上下对称、左右对称),因此只需要计算膨胀区域的实际散点是否也符合这种分布。根据这个方法判断,本例在第八次膨胀时已经严重不对称了(即不上下对称,也不左右对称,见图19),因此核心区域第七次膨胀后已达到适当区域,第七次膨胀后的边界即是该类粒子群落的散点图的实际边界。因第六次和第八次膨胀后的结果一般差异不会太大,所以也可以采用第六次或第八次膨胀后的边界作为是该类粒子群落的散点图的实际边界。这个边界是指原始散点图上两个有交叠群落的实际边界,具体效果见图20。对于这两个群落不交叠的部分,可以采用固定法,结合图14的初步分类情况,完整的分类结果见图21。
给各分群加标记,比如标上不同的灰度色(见图22)。整个过程结束。
上述实施例中,还可以通过光照收集每个粒子的三个方向的光信息,形成三维的散点图,同样可采用上述方案进行粒子群落划分。
对于一个粒子群落和多个粒子群落有交叠的情况,同样可采用上述方案进行粒子群落划分。
本发明根据散点图核心的形态特征来确定最终的分界线,能自动调整分类边界的尺寸、形状、方向和位置,散点图核心部分统计性好,而且能更准确反映粒子群落的形态,具有很强的准确性和稳定性,因此相对于现有技术,本发明的稳定性和准确性更好。同时本发明对散点图统计量要求低,能适应群落交叠区域没有波谷的情况,因此提高了对异常样本的适应能力,提高五分类血液细胞分析仪的性能。
本发明不但适用于粒子群落有交叠的情况,也可适用于无交叠的粒子群落的划分。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。