一种神经元重建结果匹配方法与流程

文档序号:14257209阅读:258来源:国知局

本发明属于生物医学光学图像处理领域,更具体地,涉及一种神经元重建结果匹配方法。



背景技术:

神经元形态重建是指从神经图像中提取神经元的骨架点同时建立骨架点之间的连接关系。获取重建结果金标准通用方法如下:首先不同的手工者独立地重建指定神经元,对重建结果进行匹配;其次,发现并定位重建的差异;最后,对差异进行投票,达成一致结果,从而最终获得重建金标准。在上述过程中,对两个重建神经元进行匹配,自动定位一致点和差异点是最为关键的步骤。

神经元重建结果匹配有如下含义:对于同一神经元的两个重建骨架点,若它们两者之间的距离小于给定阈值,则认为这两个点一致;用这样标准,从两类骨架点中,找到同一神经元所有的一致点和差异点,这些一致点和差异点将构成同一神经元两个重建结果的匹配结果。

现有典型的匹配方法通常有两种模式。模式1:给定同一神经元两种重建结果,分别用骨架点集a和点集b表示,对点集a中的点,计算与点集b中的每个点的距离,若距离小于给定阈值,则认为是一致点。按这种方式,从点集a提取所有一致点,这些一致点构成匹配结果。模式2:以点集b产生0-1图像,若图像体素位置在这些点集的邻域中,则将图像体素值赋为1,否则为0。对于点集a中的给定点,其位置位于赋值为1的图像区域,则认为是一致点。搜索点集a中所有一致点,构成匹配结果。显然,模式1计算复杂度高,而模式2以牺牲存储空间来降低计算复杂度。

上述两种模式完全适用于小规模神经元(骨架点个数小于1000个)重建结果匹配。随着神经成像技术和图像重建技术的发展,可高通量产生大规模甚至全脑尺度神经元重建结果。重建的神经元形态可包括数万个甚至10万个骨架点。在这种情况下,需要发展新的匹配模式,对同一神经元不同重建结果进行匹配,从而快速定位不同重建结果的一致和差异位置。



技术实现要素:

针对现有技术的缺陷和改进需求,本发明提出了一种神经元重建结果匹配方法,其目的在于,利用多维哈希容器进行神经元重建结果的匹配,在不消耗大量存储空间的情况下,快速定位不同重建结果匹配的一致点和差异点,从而为获取神经元重建结果的金标准提供最为关键的技术环节。

为实现上述目的,按照本发明的一个方面,提供了一种神经元重建结果匹配方法,该方法包括以下步骤:

(1)导入多个数字化树型神经元重建文件,并获取每一个数字化树型神经元重建文件所对应的骨架点集合;

(2)根据步骤(1)中神经元的结构及规模特性,构建多维哈希容器;

(3)根据步骤(2)所构建的多维哈希容器,为步骤(1)导入的每一个数字化树型神经元重建文件创建一个多维哈希容器,并将每一个数字化树型神经元重建文件所对应的神经元骨架点集合保存到对应的多维哈希容器中;

(4)根据步骤(3)所创建的多维哈希容器,对每两个多维哈希容器内的元素进行搜索匹配,输出匹配结果。

进一步地,步骤(1)中获取每一个数字化树型神经元重建文件所对应的骨架点集合的过程具体包括:若数字化树型神经元重建文件中神经元重建结果的保存形式为离散点序列,则直接读取该离散点序列作为该数字化树型神经元重建文件所对应的骨架点集合;若数字化树型神经元重建文件中神经元重建结果的保存形式为非离散点序列,则先将神经元重建结果的保存形式离散为离散点序列,然后将该离散点序列作为该数字化树型神经元重建文件所对应的骨架点集合;在根据数字化树型神经元重建文件获取到的骨架点集合中,每一个骨架点对应一个多维向量。

进一步地,步骤(2)中构建多维哈希容器的过程具体包括:

(2.1)根据神经元中神经纤维在三维空间的稀疏特性指定多维哈希容器的数据结构类型,神经元骨架点中与维多哈希容器相对应的维度为特征维度;

(2.2)根据目标神经元的规模定义哈希函数,并输入相关的哈希函数参数,用于计算在多维哈希容器中存储神经元骨架点的哈希地址;

(2.3)定义处理哈希冲突的方法;在根据哈希函数计算哈希地址发生冲突时,根据定义的处理哈希冲突的方法对哈希冲突进行处理;。

进一步地,步骤(3)中将每一个数字化树型神经元重建文件所对应的神经元骨架点集合保存到对应的多维哈希容器中,具体包括以下步骤:

(3.1)根据步骤(2)所构建的多维哈希容器,为步骤(1)导入的每一个数字化树型神经元重建文件创建一个多维哈希容器;

(3.2)根据步骤(2.2)定义的哈希函数,对于每一个数字化树型神经元重建文件所对应的神经元骨架点集合,计算其中每一个骨架点每一个特征维度的哈希值;

(3.3)根据步骤(3.2)计算的哈希值,计算每一个神经元骨架点在对应多维哈希容器中的哈希地址,并根据步骤(2.3)定义的处理哈希冲突的方法对哈希冲突进行处理;

(3.4)根据步骤(3.3)计算的哈希地址,将每一个神经元骨架点存储到对应多维哈希容器中。

进一步地,步骤(4)中根据步骤(3)所创建的多维哈希容器,对每两个多维哈希容器内的元素进行搜索匹配,输出匹配结果,其过程具体包括:

(4.1)指定构建匹配范围的规则,并输入用于构建匹配范围的参数;

(4.2)根据步骤(3)创建的多维哈希容器,从中选取两个多维哈希容器,分别作为第一多维哈希容器和第二多维哈希容器,使得第一多维哈希容器和第二多维哈希容器之间没有执行过匹配操作;第一多维哈希容器所对应的神经元重建结果为第一神经元重建结果,第二多维哈希容器所对应的神经元重建结果为第二神经元重建结果;

(4.3)对于第一多维哈希容器中的一个元素,即存储的神经元骨架点,根据步骤(4.1)指定的构建匹配范围的规则及输入的参数构建该神经元骨架点对应的匹配范围;所构建的匹配范围中,包括一系列离散点,每一个离散点都与该神经元骨架点匹配;对于每一个离散点,搜索第二多维哈希容器;如果能够在第二多维哈希容器中搜索到任意一个离散点,则该神经元骨架点为匹配的一致点;

(4.4)遍历第一多维哈希容器中的每一个元素,执行步骤(4.3),从而确定第一神经元重建结果与第二神经元重建结果中所有的一致点;第一神经元重建结果与第二神经元重建结果中除去一致点之外的点,即为差异点;将所有的一致点和差异点作为匹配结果输出;

(4.5)根据步骤(3)创建的多维哈希容器,从中选取两个多维哈希容器,使得这两个多维哈希容器之间没有执行过匹配操作;若存在这样的两个多维哈希容器,则执行步骤(4.2)~(4.5);若不存在这样的两个多维哈希容器,则匹配过程结束。

更进一步地,步骤(1)中导入的数字化树型神经元重建文件中神经元重建结果的保存形式为离散点序列或者非离散点序列;为非离散点序列时,神经元重建结果的保存形式为方程组、样条曲线等可离散化为离散点序列的形式。

更进一步地,步骤(2.1)中,多维哈希容器的数据结构的维数小于或者等于神经元骨架点的维数;优选地,多维哈希容器的数据结构的维数小于神经元骨架点的维数,以充分利用神经纤维在三维空间的稀疏特性。

更进一步地,步骤(2.1)中多维哈希容器的数据结构类型,包括但不限于数组、链表、平衡树等;

总体而言,通过本发明所构思的以上技术方案能够取得以下有益效果:

(1)充分考虑神经纤维在三维空间中的稀疏特性,构建多维哈希容器对神经元重建结果进行匹配,并且在匹配过程中无需构建、存储大量的标记图像,可以在不消耗大量存储空间的情况下快速定位神经元重建结果匹配中的一致点和差异点;

(2)对于神经元重建结果,通过获取对应的骨架点集合完成匹配操作,因此可应用于不同形态、不同规模大小的神经元的匹配工作,尤其是能应用于全脑范围大规模神经元的匹配;

(3)创建多维哈希容器存储骨架点并通过多维哈希容器完成匹配的方法,可应用于任何具有管状结构且可离散为离散点序列的图像的匹配。

附图说明

图1是本发明的神经元重建结果匹配方法流程图;

图2是本发明提供的基于数组的多维哈希容器示意图;

图3是本发明与现有的距离匹配方法的耗时对比结果柱状图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。

本发明提供的神经元重建结果匹配方法,如图1所示,包括如下步骤:

(1)导入多个数字化树型神经元重建文件,并获取每一个数字化树型神经元重建文件所对应的骨架点集合,具体过程包括:

(1.1)读入n个swc格式的数字化树型神经元重建文件;

(1.2)对于读入的第i个swc格式的数字化树型神经元重建文件,将其中存储的神经元重建结果离散为三维空间中的点集pi,点集pi为第i个swc格式的数字化树型神经元重建文件所对应的神经元骨架点集合,i的取值为1、2、…、n;点集pi中每一个点对应一个三维向量,且每一个点的三个维度分别对应三维空间中的x维度、y维度和z维度;

(2)根据步骤(1)中神经元骨架点的特性,构建多维哈希容器,具体过程包括:

(2.1)指定多维哈希容器的数据结构类型,本实施例中,如图2所示,使用二维数组作为多维哈希容器,其中每个元素指向一个有序三维向量数组,该有序三维向量数组具体的数据结构为数组、链表等数据结构;有序三维向量数组中元素的存储循序为:首先按照x坐标从小到大的顺序存储;在x坐标相同时,按照y坐标从小到大的顺序存储;在x坐标、y坐标都相同时,按照z坐标从小到大的顺序存储;神经元骨架点中与维多哈希容器相对应的维度为特征维度,在本实施例中,特征维度为x维度和y维度;

(2.2)根据目标神经元的规模指定哈希函数,本实施例中,如图2所示,使用取模函数作为哈希函数,输入的哈希参数为模值;对于每一个神经元骨架点,其哈希地址包括第一维地址和第二维地址;第一维地址为该神经元骨架点x坐标根据哈希函数计算所得的哈希值,第二维地址为该神经元骨架点y坐标根据哈希函数计算所得的哈希值;

(2.3)定义处理哈希冲突的方法,在本实施例中,如图2所示,哈希冲突的处理方式为链地址法;即对于一个神经元骨架点,计算其哈希地址发生冲突时,将该神经元骨架点有序插入该哈希地址处元素所指向的有序三维向量数组;

(3)根据步骤(2)所构建的多维哈希容器,为步骤(1)导入的每一个数字化树型神经元重建文件创建一个多维哈希容器,并将每一个数字化树型神经元重建文件所对应的神经元骨架点集合保存到对应的多维哈希容器中,具体包括如下步骤:

(3.1)根据步骤(2)所构建的多维哈希容器,为步骤(1)导入第i个数字化树型神经元重建文件创建多维哈希容器hi,i的取值为1、2、…、n;

(3.2)根据步骤(2.2)定义的哈希函数,对于点集pi,计算其中每一个神经元骨架点的第一维地址和第二维地址;第一维地址为该神经元骨架点x坐标根据哈希函数计算所得的哈希值,第二维地址为该神经元骨架点y坐标根据哈希函数计算所得的哈希值;

(3.3)根据步骤(3.2)计算的哈希值,计算每一个神经元骨架点在对应多维哈希容器中的哈希地址,若发生哈希冲突,则根据步骤(2.3)定义的处理哈希冲突的方法对哈希冲突进行处理;

(3.4)根据步骤(3.3)计算的哈希地址,将每一个神经元骨架点存储到对应多维哈希容器中。

(4)根据步骤(3)所创建的多维哈希容器,对每两个多维哈希容器内的元素进行搜索匹配,输出匹配结果,具体包括如下步骤:

(4.1)指定构建匹配范围的规则,并输入用于构建匹配范围的参数;

(4.2)根据步骤(3)创建的多维哈希容器,从中选取两个多维哈希容器,分别作为第一多维哈希容器和第二多维哈希容器,使得第一多维哈希容器和第二多维哈希容器之间没有执行过匹配操作;第一多维哈希容器所对应的神经元重建结果为第一神经元重建结果,第二多维哈希容器所对应的神经元重建结果为第二神经元重建结果;

(4.3)对于第一多维哈希容器中的一个元素,即存储的神经元骨架点,根据步骤(4.1)指定的构建匹配范围的规则及输入的参数构建该神经元骨架点对应的匹配范围;所构建的匹配范围中,包括一系列离散点,每一个离散点都与该神经元骨架点匹配;对于每一个离散点,搜索第二多维哈希容器;如果能够在第二多维哈希容器中搜索到任意一个离散点,则该神经元骨架点为匹配的一致点;

(4.4)遍历第一多维哈希容器中的每一个元素,执行步骤(4.3),从而确定第一神经元重建结果与第二神经元重建结果中所有的一致点;第一神经元重建结果与第二神经元重建结果中除去一致点之外的点,即为差异点;将所有的一致点和差异点作为匹配结果输出;

(4.5)根据步骤(3)创建的多维哈希容器,从中选取两个多维哈希容器,使得所选取的两个多维哈希容器之间没有执行过匹配操作;若存在这样的两个多维哈希容器,则执行步骤(4.2)~(4.5);若不存在这样的两个多维哈希容器,则匹配过程结束。

更进一步地,步骤(4.3)中,对于一个离散点,搜索第二多维哈希容器的具体搜索方法为:计算离散点的第一维地址和第二维地址,从而确定离散点的哈希地址;若存储骨架点时,该哈希地址没有发生冲突,则直接根据计算的哈希地址访问第二多维哈希容器的元素,并确定该元素是否为被搜索的离散点;若存储骨架点时,该哈希地址发生了冲突,则根据计算的哈希地址访问第二多维哈希容器中对应的有序三维向量数组,利用二分查找法查找该有序三维向量数组中是否存在被搜索的离散点。

根据本发明提出的神经元重建结果匹配方法以及传统的距离匹配方法,分别对5个匹配组进行匹配,每一个匹配组对应一个神经元的多种重建结果;两种方法匹配耗时如图3所示。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1