牙齿类型的识别方法、装置、用户终端及存储介质与流程

文档序号:15888833发布日期:2018-11-09 19:57阅读:228来源:国知局
牙齿类型的识别方法、装置、用户终端及存储介质与流程

本发明涉及正畸技术领域,特别是涉及一种牙齿类型的识别方法、装置、用户终端及存储介质。

背景技术

隐形牙套由于其美观、方便等优点越来越受人们的欢迎。隐形牙套的制造过程中,需要先获取患者的牙颌模型,再将该牙颌模型进行重建、分割等,将牙颌模型中的牙齿一颗一颗分出来,再进行排牙和治疗计划的确定。然而对于有缺牙的患者来说,在牙齿分割出来之后,需要确认每一颗牙齿属于什么类型,如切牙、磨牙等。一般地,根据经验来确定每颗牙齿的类型,这种方式比较容易出错且效率低。



技术实现要素:

基于此,有必要针对如何提高牙齿识别的准确率的问题,提供一种牙齿类型的识别方法、装置、用户终端及存储介质。

一种牙齿类型的识别方法,包括步骤:

建立标准三维牙齿模型,并构建所述标准三维牙齿模型的标准坐标系;

获取已分割的待识别三维牙齿模型,并构建所述待识别三维牙齿模型的坐标系;

根据所述标准坐标系和所述待识别三维牙齿模型的坐标系,确定所述标准三维牙齿模型中的每颗标准牙齿的重心位置以及所述待识别三维牙齿模型中每颗待识别牙齿的重心位置;

根据所述标准牙齿的重心位置和所述待识别牙齿的重心位置,通过对齐配准的方式确定所述待识别牙齿的类型。

在其中一个实施例中,确定所述标准三维牙齿模型中的每颗标准牙齿的重心位置以及所述待识别三维牙齿模型中每颗待识别牙齿的重心位置的步骤包括:

将所述标准坐标系和所述待识别三维牙齿模型的坐标系进行重合,得到重合坐标系;

确定在所述重合坐标系下的每颗所述标准牙齿以及每颗所述待识别牙齿的重心位置。

在其中一个实施例中,根据所述标准牙齿的重心位置和所述待识别牙齿的重心位置,通过对齐配准的方式确定所述待识别牙齿的类型的步骤包括:

(1)根据当前mk、rk、tk、所述标准牙齿的重心位置以及所述待识别牙齿的重心位置,确定目标函数的当前值;其中,m表示匹配矩阵,m∈zn×16,n表示所述待标识牙齿的数目;r表示旋转量;t表示平移量;k为迭代次数;

(2)固定所述mk不变,更新所述rk和tk,使得所述目标函数的值最小,确定所述目标函数的值最小时所对应的rk和tk为rk(min)和tk(min);

(3)固定所述rk(min)和tk(min)不变,更新所述mk,使得所述目标函数的值最小,确定所述目标函数的值最小时所对应的mk为mk(min);

(4)根据所述rk(min)、tk(min)以及mk(min),计算所述目标函数的当前最小值;

(5)若所述目标函数的当前值与所述目标函数的当前最小值的变化小于阈值,则所述mk(min)中每一行的最大值所对应的列所表示的标准牙齿的类型即为其所对应的行表示的所述待标识牙齿的类型;若所述目标函数的当前值与所述目标函数的当前最小值的变化大于等于阈值,则返回步骤(1),k加1。

在其中一个实施例中,初始m的确定过程如下:基于在所述重合坐标系下的每颗所述标准牙齿以及每颗所述待识别牙齿的重心位置,计算第i颗所述待标识牙齿与第j颗牙齿所述标准牙齿之间的重心距离,并根据所述重心距离确定所述初始m;其中,i为1至n中的整数;j为1至16中的整数。

在其中一个实施例中,所述目标函数的公式为:其中,pj表示第j颗所述标准牙齿的重心位置;qi表示第i颗所述待标识牙齿的重心位置;mij为m中第i行第j列的元素,mij表示第i颗所述待标识牙齿属于第j颗所述标注牙齿的匹配程度。

在其中一个实施例中,

所述tk的更新公式为:所述rk的更新公式为:rk=vut;其中,v和u通过矩阵s的svd分解得到,且

在其中一个实施例中,所述mk的第i行第j列的元素的更新公式为:mij=exp(-||rkqi+tk-pj||2)。

一种牙齿类型的识别装置,包括:

标准三维牙齿模型建立模块,用于建立标准三维牙齿模型,并构建所述标准三维牙齿模型的标准坐标系;

待识别三维牙齿模型获取模块,用于获取已分割的待识别三维牙齿模型,并构建所述待识别三维牙齿模型的坐标系;

重心位置确定模块,用于根据所述标准坐标系和所述待识别三维牙齿模型的坐标系,确定所述标准三维牙齿模型中的每颗标准牙齿的重心位置以及所述待识别三维牙齿模型中每颗待识别牙齿的重心位置;

待识别牙齿类型确定模块,用于根据所述标准牙齿的重心位置和所述待识别牙齿的重心位置,通过对齐配准的方式确定所述待识别牙齿的类型。

一种用户终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。

上述牙齿类型的识别方法、装置、用户终端及存储介质,通过建立三维牙齿模型,并构建其标准坐标系,再获取已分割的待识别三维牙齿模型,构建其坐标系,根据两者的坐标系,确定标准三维牙齿模型中每颗标准牙齿的重心位置以及待识别三维牙齿模型中每颗待识别牙齿的重心位置,再根据标准牙齿的重心位置和待识别牙齿的重心位置,通过对齐配准的方式确定待识别牙齿的类型,从而实现自动识别牙齿类型,提高正确率,还能提高效率。

附图说明

图1为一实施例的牙齿类型的识别方法的流程示意图;

图2为一实施例的确定待识别牙齿的类型的流程示意图;

图3为一实施例的牙齿类型的识别装置的结构示意图;

图4为一实施例的用户终端的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

请参阅图1,图1为一实施例中的牙齿类型的识别方法的流程示意图。该方法具体包括以下步骤:

s110:建立标准三维牙齿模型,并构建其标准坐标系。

具体地,在数据库中选取若干个三维牙齿模型,这些三维牙齿模型的牙齿数量均为16颗,并且每一个三维牙齿模型中每一颗牙齿的类型均已知,如左侧切牙、左侧尖牙、左侧第一前磨牙、左侧第一磨牙等。此外,每一个三维牙齿模型中的16颗牙齿按照患者的实际牙齿的顺序排列,并对每一颗牙齿进行标号,标号依次为1,2…16。从而若干个三维牙齿模型中的同一类型的牙齿的标号相同。需要说明的是,此处所描述的三维牙齿模型指的是上牙颌三维牙齿模型或者下牙颌三维牙齿模型。

若干个三维牙齿模型中各个牙齿单独分开,并分别对每一类牙齿进行处理,得到该类牙齿的标准牙齿。具体地,在其中一个实施例中,以切牙为例,对每一个三维牙齿模型中的前切牙用模板进行处理,从而使得每一颗前切牙上的点进行统一,再将所有前切牙的点的位置进行平均,得到的平均值作为标准前切牙的点,这些点构成标准前切牙。同样地,采用相同的方式,得到标准磨牙等,这些标准牙齿的标号与三维牙齿模型中同类型的牙齿的标号相同,从而16颗标准牙齿按照顺序排列得到标准牙齿模型。

在本实施例中,以上牙颌三维牙齿模型为例,在数据库中选取50个已知上牙颌三维牙齿模型,对50个三维牙齿模型中的每颗牙齿进行编号,并且同一类型牙齿的编号相同。以尖牙为例,采用相同的模板对50颗前尖牙进行处理,再对50颗处理后的前尖牙进行平均,得到标准前尖牙。采用相同的方式,得到其他15颗标准牙齿,进而建立标准三维牙齿模型。需要说明的是,对于下牙颌三维牙齿模型的标准牙齿模型也采用相同的方式得到。

接着,对标准三维牙齿模型建立牙颌平面,牙颌平面的法向为z轴;将标准三维牙齿模型的牙颌数据点投影到牙颌平面进行椭圆拟合,确定椭圆的短轴为x轴,椭圆的长轴为y轴,从而建立标准三维牙齿模型的标准坐标系。

s120:获取已分割的待识别三维牙齿模型,并构建其坐标系。

具体地,获取已分割的待识别上牙颌三维牙齿模型或者下牙颌三维牙齿模型。以待识别上牙颌三维牙齿模型为例,对待识别上牙颌三维牙齿模型建立牙颌平面,牙颌平面的法向为z轴;将待识别上牙颌三维牙齿模型的牙颌数据点投影到牙颌平面进行椭圆拟合,确定椭圆的短轴为x轴,椭圆的长轴为y轴,从而建立待识别上牙颌三维牙齿模型的坐标系。需要说明的是,待识别三维牙齿模型可以通过重建、切牙等过程后而得到。

s130:根据标准坐标系和待识别三维牙齿模型的坐标系,确定标准三维牙齿模型中的每颗标准牙齿的重心位置以及待识别三维牙齿模型中每颗待识别牙齿的重心位置。

具体地,将步骤s110得到的标准坐标系和步骤s120得到的待识别三维牙齿模型的坐标系进行重合,得到重合坐标系;确定在重合坐标系下的每颗标准牙齿以及每颗待识别牙齿的重心位置。也就是说,对标准牙齿模型和待识别三维牙齿模型建立统一的坐标系,再确定在统一坐标系下的标准牙齿和待识别牙齿的重心坐标。

在本实施例中,将通过50个上牙颌三维牙齿模型得到的标准三维牙齿模型的坐标系和待识别上牙颌三维牙齿模型的坐标系进行重合,得到重合坐标系,再得到标准牙齿的重心位置以及待识别上牙颌三维牙齿模型中每一颗待识别牙齿的重心位置。

s140:根据标准牙齿的重心位置和待识别牙齿的重心位置,通过对其配准的方式确定待识别牙齿的类型。

具体地,通过标准牙齿的重心位置和待识别牙齿的重心位置的距离,再将待识别牙齿进行旋转和/或平移来优化待识别牙齿和标准牙齿的重心位置的距离,从而最优下所对应的待识别牙齿和标准牙齿的类型相同,即确定待识别牙齿的类型。

如图2所示,在其中一个实施例中,根据标准牙齿的重心位置和待识别牙齿的重心位置,通过对齐配准的方式确定待识别牙齿的类型的步骤包括:

s410:根据当前mk、rk、tk、标准牙齿的重心位置以及待识别牙齿的重心位置,确定目标函数的当前值。

其中,m表示匹配矩阵,m∈zn×16,n表示待标识牙齿的数目;r表示旋转量;t表示平移量;k为迭代次数。具体地,在一实施例中,目标函数的公式为:其中,pj表示第j颗标准牙齿的重心位置;qi表示第i颗待标识牙齿的重心位置;mij为m中第i行第j列的元素,mij表示第i颗待标识牙齿属于第j颗标注牙齿的匹配程度;i为1至n中的整数;j为1至16中的整数。需要说明的是,目标函数也可以为和的平均值等,在此并不做限定。

换而言之,根据当前的mk、rk、tk、标准牙齿的重心位置以及待识别牙齿的重心位置,计算得到目标函数的当前值。在其中一个实施例中,初始m的确定过程如下:基于在重合坐标系下的每颗标准牙齿以及每颗待识别牙齿的重心位置,计算第i颗待标识牙齿与第j颗牙齿标准牙齿之间的重心距离,并根据重心距离确定所述初始m。

具体地,在本实施例中,当k为1时,对应的初始m1的确定过程如下:基于步骤s130得到的重合坐标系,计算第i颗待标识牙齿与第j颗牙齿标准牙齿之间的重心距离,根据该重心距离的大小来确定匹配矩阵m1,比如:重心距离大的所对应的匹配程度小,则对应的匹配程度值小。从而得到行为n、列为16的匹配矩阵m1。r1和t1可以根据为经验值。将m1、r1以及t1代入上述目标函数,再将第i颗待标识牙齿的重心位置与第j颗牙齿标准牙齿的重心位置代入,再求和,得到目标函数值,也就是目标函数值e1。

s420:固定mk不变,更新rk和tk,使得目标函数的值最小,确定目标函数的值最小时所对应的rk和tk为rk(min)和tk(min)。

具体地,保持mk不变,优化rk和tk,使得目标函数的值最小,此时,确定目标函数值最小时的rk(min)和tk(min)。其中,在一个实施例中,tk的更新公式为:

rk的更新公式为:rk=vut;其中,v和u通过矩阵s的svd分解得到,且

在本实施例中,步骤s410得到的m1不变,更新r1以及t1使得目标函数值最小,得到r1(min)和t1(min)。

s430:固定rk(min)和tk(min)不变,更新mk,使得目标函数的值最小,确定目标函数的值最小时所对应的mk为mk(min)。

具体地,在其中一个实施例中,保持步骤s420得到的rk(min)和tk(min)恒定,更新mk,mk的第i行第j列的元素的更新公式为:mij=exp(-||rkqi+tk-pj||2)。从而得到一系列的目标函数值,确定目标函数的值最小时所对应的mk(min)。

在本实施例中,r1(min)和t1(min)恒定,更新m1,直至目标函数的值最小,确定m1(min)。

s440:根据rk(min)、tk(min)以及mk(min),计算目标函数的当前最小值。

在本实施例中,根据步骤s420得到的r1(min)和t1(min),以及步骤s430得到的m1(min),再将步骤s130中得到的第i颗待标识牙齿的重心位置与第j颗牙齿标准牙齿的重心位置代入目标函数,得到目标函数的当前最小值e1(min)。

s450:判断目标函数的当前值与目标函数的当前最小值的变化值是否小于阈值。若目标函数的当前值与目标函数的当前最小值的变化值小于阈值,则执行步骤s460,mk(min)中每一行的最大值所对应的列所表示的标准牙齿的类型即为其所对应的行表示的待标识牙齿的类型。也就是说,对于mk(min)中第i行中最大值所对应的列所表示的牙齿类型就是第i颗待识别牙齿的类型,两者的类型相同,从而可以识别所有待识别牙齿的类型。若目标函数的当前值与目标函数的当前最小值的变化值大于等于阈值,则返回步骤s410,k增加1,且此时的mk+1、rk+1、tk+1为mk(min)、rk(min)以及tk(min)。需要说明的是,阈值可以为0.01。

在本实施例中,判断目标函数值e1与目标函数的当前最小值e1(min)之间的变化值与阈值之间的大小,若目标函数值e1与目标函数的当前最小值e1(min)之间的变化值小于阈值,则m1(min)中第i行中最大值所对应的列所表示的牙齿类型就是第i颗待识别牙齿的类型。若目标函数值e1与目标函数的当前最小值e1(min)之间的变化值大于等于阈值,则返回步骤s410,此时,m1min)、r1(min)以及t1(min)作为m2、r2、t2。根据m2、r2、t2以及第i颗待标识牙齿的重心位置与第j颗牙齿标准牙齿的重心位置,得到目标函数值e2。再保持m2不变,更新r2以及t2使得目标函数值最小,得到r2(min)和t2(min);再保持r2(min)和t2(min)恒定,更新m2,直至目标函数的值最小,确定m2(min)。接着,根据r2(min)和t2(min),以及m2(min),再将步骤s130中得到的第i颗待标识牙齿的重心位置与第j颗牙齿标准牙齿的重心位置代入目标函数,得到目标函数的当前最小值e2(min)。判断目标函数值e2与目标函数的当前最小值e2(min)之间的变化值与阈值之间的大小,若目标函数值e2与目标函数的当前最小值e2(min)之间的变化值小于阈值,则m2(min)中第i行中最大值所对应的列所表示的牙齿类型就是第i颗待识别牙齿的类型。若目标函数值e2与目标函数的当前最小值e2(min)之间的变化值大于等于阈值,则返回步骤s410,此时,m2min)、r2(min)以及t2(min)作为m3、r3、t3。以此类推,得到待识别牙齿模型中每颗待识别牙齿的类型。

上述牙齿类型的识别方法,通过建立三维牙齿模型,并构建其标准坐标系,再获取已分割的待识别三维牙齿模型,构建其坐标系,根据两者的坐标系,确定标准三维牙齿模型中每颗标准牙齿的重心位置以及待识别三维牙齿模型中每颗待识别牙齿的重心位置,再根据标准牙齿的重心位置和待识别牙齿的重心位置,通过对齐配准的方式确定待识别牙齿的类型,从而实现自动识别牙齿类型,提高正确率,还能提高效率。

在一个实施例中,如图3所示,提供了一种牙齿类型的识别装置,该装置包括:

标准三维牙齿模型建立模块310,用于建立标准三维牙齿模型,并构建标准三维牙齿模型的标准坐标系;

待识别三维牙齿模型获取模块320,用于获取已分割的待识别三维牙齿模型,并构建待识别三维牙齿模型的坐标系;

重心位置确定模块330,用于根据标准坐标系和待识别三维牙齿模型的坐标系,确定标准三维牙齿模型中的每颗标准牙齿的重心位置以及待识别三维牙齿模型中每颗待识别牙齿的重心位置;

待识别牙齿类型确定模块340,用于根据标准牙齿的重心位置和待识别牙齿的重心位置,通过对齐配准的方式确定待识别牙齿的类型。

在其中一个实施例中,重心位置确定模块330包括:

重合模块,用于将标准坐标系和待识别三维牙齿模型的坐标系进行重合,得到重合坐标系;

确定模块,用于确定在重合坐标系下的每颗标准牙齿以及每颗待识别牙齿的重心位置。

在其中一个实施例中,待识别牙齿类型确定模块340包括:

当前值确定模块,用于根据当前mk、rk、tk、标准牙齿的重心位置以及待识别牙齿的重心位置,确定目标函数的当前值;其中,m表示匹配矩阵,m∈zn×16,n表示所述待标识牙齿的数目;r表示旋转量;t表示平移量;k为迭代次数;

rk和tk优化模块,用于固定mk不变,更新rk和tk,使得目标函数的值最小,确定目标函数的值最小时所对应的rk和tk为rk(min)和tk(min);

mk优化模块,用于固定rk(min)和tk(min)不变,更新mk,使得目标函数的值最小,确定目标函数的值最小时所对应的mk为mk(min);

当前最小值计算模块,用于根据rk(min)、tk(min)以及mk(min),计算目标函数的当前最小值;

比较模块,用于若目标函数的当前值与目标函数的当前最小值的变化小于阈值,则mk(min)中每一行的最大值所对应的列所表示的标准牙齿的类型即为其所对应的行表示的待标识牙齿的类型;若目标函数的当前值与目标函数的当前最小值的变化大于等于阈值,则返回当前值确定模块,k加1。

请参阅图4,图4为一实施例中的用户终端的结构示意图,该用户终端可以是常规服务器或者其他任意用户终端,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其中该存储器可以包括非易失性存储介质以及内存储器,该计算机程序可以存储在该非易失性存储介质中,处理器执行程序时实现以下步骤:建立标准三维牙齿模型,并构建标准三维牙齿模型的标准坐标系;获取已分割的待识别三维牙齿模型,并构建待识别三维牙齿模型的坐标系;根据标准坐标系和待识别三维牙齿模型的坐标系,确定标准三维牙齿模型中的每颗标准牙齿的重心位置以及待识别三维牙齿模型中每颗待识别牙齿的重心位置;根据标准牙齿的重心位置和待识别牙齿的重心位置,通过对齐配准的方式确定待识别牙齿的类型。

在其中一个实施例中,处理器执行程序时还可以实现以下步骤:将标准坐标系和待识别三维牙齿模型的坐标系进行重合,得到重合坐标系;确定在重合坐标系下的每颗标准牙齿以及每颗待识别牙齿的重心位置。

在其中一个实施例中,处理器执行程序时还可以实现以下步骤:(1)根据当前mk、rk、tk、标准牙齿的重心位置以及待识别牙齿的重心位置,确定目标函数的当前值;其中,m表示匹配矩阵,m∈zn×16,n表示待标识牙齿的数目;r表示旋转量;t表示平移量;k为迭代次数;(2)固定mk不变,更新rk和tk,使得目标函数的值最小,确定目标函数的值最小时所对应的rk和tk为rk(min)和tk(min);(3)固定rk(min)和tk(min)不变,更新mk,使得目标函数的值最小,确定目标函数的值最小时所对应的mk为mk(min);(4)根据rk(min)、tk(min)以及mk(min),计算目标函数的当前最小值;(5)若目标函数的当前值与目标函数的当前最小值的变化小于阈值,则mk(min)中每一行的最大值所对应的列所表示的标准牙齿的类型即为其所对应的行表示的待标识牙齿的类型;若目标函数的当前值与目标函数的当前最小值的变化大于等于阈值,则返回步骤(1),k加1。

上述对于终端的限定可以参见上文中对于牙齿类型的识别方法的具体限定,在此不再赘述。

请继续参阅图4,还提供一种计算机可读存储介质,其上存储有计算机程序,如图4中所示的非易失性存储介质,其中,该程序被处理器执行时实现以下步骤:建立标准三维牙齿模型,并构建标准三维牙齿模型的标准坐标系;获取已分割的待识别三维牙齿模型,并构建待识别三维牙齿模型的坐标系;根据标准坐标系和待识别三维牙齿模型的坐标系,确定标准三维牙齿模型中的每颗标准牙齿的重心位置以及待识别三维牙齿模型中每颗待识别牙齿的重心位置;根据标准牙齿的重心位置和待识别牙齿的重心位置,通过对齐配准的方式确定待识别牙齿的类型。

在其中一个实施例中,处理器执行程序时还可以实现以下步骤:将标准坐标系和待识别三维牙齿模型的坐标系进行重合,得到重合坐标系;确定在重合坐标系下的每颗标准牙齿以及每颗待识别牙齿的重心位置。

在其中一个实施例中,处理器执行程序时还可以实现以下步骤:(1)根据当前mk、rk、tk、标准牙齿的重心位置以及待识别牙齿的重心位置,确定目标函数的当前值;其中,m表示匹配矩阵,m∈zn×16,n表示待标识牙齿的数目;r表示旋转量;t表示平移量;k为迭代次数;(2)固定mk不变,更新rk和tk,使得目标函数的值最小,确定目标函数的值最小时所对应的rk和tk为rk(min)和tk(min);(3)固定rk(min)和tk(min)不变,更新mk,使得目标函数的值最小,确定目标函数的值最小时所对应的mk为mk(min);(4)根据rk(min)、tk(min)以及mk(min),计算目标函数的当前最小值;(5)若目标函数的当前值与目标函数的当前最小值的变化小于阈值,则mk(min)中每一行的最大值所对应的列所表示的标准牙齿的类型即为其所对应的行表示的待标识牙齿的类型;若目标函数的当前值与目标函数的当前最小值的变化大于等于阈值,则返回步骤(1),k加1。

上述对于计算机可读存储介质的限定可以参见上文中对于牙齿类型的识别方法的具体限定,在此不再赘述。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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