发明内容
本发明实施例所要解决的技术问题在于,提供一种三维模型的邻域点坐标确定方法及装置、构建方法及装置,可以得到较为可靠的邻域点。
为了解决上述技术问题,本发明实施例提供了一种三维模型的邻域点坐标确定方法,包括:
获取对三维物体的点云模型进行采样后的目标采样点坐标;
确定所述目标采样点的视点,并确定视点坐标,所述视点设置在目标采样点的法向的相反方向上,所述视点坐标根据所述目标采样点的坐标,并根据对预定数目的射线交点到所述目标采样点的距离值加权计算后得到,所述射线交点包括从所述目标采样点发出的围绕目标采样点的法向相反方向的射线与所述点云模型相交的交点;
根据所述视点坐标得到所述目标采样点的邻域点坐标。
其中,所述确定视点坐标,所述视点坐标根据所述目标采样点的坐标,并根据对预定数目的射线交点到所述目标采样点的距离值加权计算后得到,包括:
确定所述目标采样点所在曲面的法向值、从所述目标采样点以法向的相反方向发出的预定数目的射线与点云模型相交的射线交点的交点坐标、以及各射线与法向的相反方向的夹角;
根据目标采样点的坐标、射线交点的交点坐标计算每一个射线交点到目标采样点的距离,并以该射线交点对应的射线与法向的相反方向的夹角的余弦值作为权重值对距离进行加权计算;
根据加权计算后的结果、所述目标采样点所在曲面的法向值、射线交点的个数以及所述目标采样点的坐标,得到所述视点坐标。
其中,所述确定所述目标采样点所在曲面的法向值,包括:
获取所述目标采样点的k个最近点坐标;
拟合获取到的k个最近点坐标,得到最小二乘平面;
根据该得到的最小二乘平面得到所述目标采样点所在曲面的法向值。
其中,所述根据所述视点坐标得到所述目标采样点的邻域点坐标,包括:
将所述目标采样点的k个最近点通过预置的球形翻转函数映射到对偶空间;
根据所述视点坐标和预置的隐藏点移除算法HPR,计算所述对偶空间中相对于所述视点的凸包,所述凸包上包括一个或者多个映射点;
将所述对偶空间的凸包上映射点对应的最近点的坐标作为所述目标采样点的邻域点坐标。
其中,所述根据所述视点坐标得到所述目标采样点的邻域点坐标,包括:
采用预置的球形翻转函数对所述目标采样点的k个最近点坐标进行计算,将所述目标采样点的k个最近点映射到对偶空间;
根据所述视点坐标和预置的隐藏点移除算法HPR,计算所述对偶空间中相对于所述视点的凸包,所述凸包上包括一个或者多个映射点;
采用预置的球形翻转函数对所述目标采样点坐标进行计算,将所述目标采样点映射到对偶空间;
将所述对偶空间的所述凸包上与所述目标采样点的映射点共边的映射点对应的最近点的坐标作为所述目标采样点的邻域点坐标。
相应地,本发明实施例还提供了一种三维模型的构建方法,包括:
对三维物体的点云模块进行采样,获取对三维物体的点云模型进行采样后的各目标采样点坐标;
确定各目标采样点关联的视点及视点坐标,所述视点设置在与其关联的目标采样点的法向的相反方向上,所述视点坐标根据与该视点关联的目标采样点的坐标,并根据对预定数目的射线交点到与该视点关联的目标采样点的距离值加权计算后得到,所述射线交点包括从与该视点关联的目标采样点发出的围绕与该视点关联的目标采样点的法向相反方向的射线与所述点云模型相交的交点;
根据所述视点坐标分别得到各目标采样点的邻域点坐标;
根据各目标采样点的坐标和各目标采样点的邻域点坐标,构建所述三维物体的三维模型。
相应地,本发明实施例还提供了一种三维模型的邻域点坐标确定装置,包括:
获取模块,用于获取对三维物体的点云模型进行采样后的目标采样点坐标;
视点确定模块,用于确定所述目标采样点的视点,并确定视点坐标,所述视点设置在目标采样点的法向的相反方向上,所述视点坐标根据所述目标采样点的坐标,并根据对预定数目的射线交点到所述目标采样点的距离值加权计算后得到,所述射线交点包括从所述目标采样点发出的围绕目标采样点的法向相反方向的射线与所述点云模型相交的交点;
邻域点确定模块,用于根据所述视点确定模块确定的视点坐标得到所述目标采样点的邻域点坐标。
其中,所述视点确定模块包括:
第一计算单元,用于确定所述目标采样点所在曲面的法向值、从所述目标采样点以法向的相反方向发出的预定数目的射线与点云模型相交的射线交点的交点坐标、以及各射线与法向的相反方向的夹角;
第二计算单元,用于根据目标采样点的坐标、射线交点的交点坐标计算每一个射线交点到目标采样点的距离,并以该射线交点对应的射线与法向的相反方向的夹角的余弦值作为权重值对距离进行加权计算;
视点确定单元,用于根据加权计算后的结果、所述目标采样点所在曲面的法向值、射线交点的个数以及所述目标采样点的坐标,得到所述视点坐标。
其中,所述第一计算单元在确定所述目标采样点所在曲面的法向值时,用于获取所述目标采样点的k个最近点坐标;拟合获取到的k个最近点坐标,得到最小二乘平面;根据该得到的最小二乘平面得到所述目标采样点所在曲面的法向值。
其中,所述邻域点确定模块包括:
第一映射处理单元,用于将所述目标采样点的k个最近点通过预置的球形翻转函数映射到对偶空间;
第三计算单元,用于根据所述视点坐标和预置的隐藏点移除算法HPR,计算所述对偶空间中相对于所述视点的凸包,所述凸包上包括一个或者多个映射点;
第一邻域点确定单元,用于将所述对偶空间的凸包上映射点对应的最近点的坐标作为所述目标采样点的邻域点坐标。
其中,所述邻域点确定模块包括:
第二映射处理单元,用于采用预置的球形翻转函数对所述目标采样点的k个最近点坐标进行计算,将所述目标采样点的k个最近点映射到对偶空间;
第四计算单元,用于根据所述视点坐标和预置的隐藏点移除算法HPR,计算所述对偶空间中相对于所述视点的凸包,所述凸包上包括一个或者多个映射点;
第三映射处理单元,用于采用预置的球形翻转函数对所述目标采样点坐标进行计算,将所述目标采样点映射到对偶空间;
第二邻域点确定单元,用于将所述对偶空间的所述凸包上与所述目标采样点的映射点共边的映射点对应的最近点的坐标作为所述目标采样点的邻域点坐标。
相应地,本发明实施例还提供了一种三维模型的构建装置,包括:
邻域点坐标确定模块,用于对三维物体的点云模块进行采样,获取对三维物体的点云模型进行采样后的各目标采样点坐标;确定各目标采样点关联的视点及视点坐标,并根据所述视点坐标分别得到各目标采样点的邻域点坐标;所述视点设置在与其关联的目标采样点的法向的相反方向上,所述视点坐标根据与该视点关联的目标采样点的坐标,并根据对预定数目的射线交点到与该视点关联的目标采样点的距离值加权计算后得到,所述射线交点包括从与该视点关联的目标采样点发出的围绕与该视点关联的目标采样点的法向相反方向的射线与所述点云模型相交的交点;
建模模块,用于根据各目标采样点的坐标和各目标采样点的邻域点坐标,构建所述三维物体的三维模型。
本发明通过确定目标采样点的视点,然后基于视点确定目标采样点的邻域坐标,能够得到较为可靠的邻域点,从而能够逼近真实的采样曲面,方便后续进行较为准确的三维建模。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本邻域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,是本发明实施例的一种三维模型的邻域点坐标确定方法的流程示意图,可应用在各类需要对立体的三维物体进行三维建模的终端、服务器等设备中,具体的,所述方法包括:
S101:获取对三维物体的点云模型进行采样后的目标采样点坐标。
三维物体的点云模型可以采用现有的三维扫描仪等设备获取得到。在S101中,三维物体的点云模型中每个采样点在模型中的相对坐标是确定的,每一个采样点的坐标可通过现有方式获得。
S102:确定所述目标采样点的视点,并确定视点坐标。
所述视点设置在目标采样点的法向的相反方向上,所述视点坐标根据所述目标采样点的坐标,并根据对预定数目的射线交点到所述目标采样点的距离值加权计算后得到,所述射线交点包括从所述目标采样点发出的围绕目标采样点的法向相反方向的射线与所述点云模型相交的交点。
具体来说,目标采样点p的视点c是指位于目标采样点p所在曲面的法向Np相反的方向,且视点c到目标采样点p的距离由所有射线交点ti到p的距离加权得到,射线交点ti到p的距离则是根据射线交点ti的坐标与目标采样点p的坐标计算得到。
从目标采样点p发出的预定数目的射线会部分或者全部与点云模型相交,其射线交点实际也是点云模型中的采样点,因此,有效的射线交点的坐标实际可以根据对应采样点的坐标得到。
S103:根据所述视点坐标得到所述目标采样点的邻域点坐标。
在得到视点坐标后,通过使用HPR算法计算目标采样点p的可视邻域点的坐标,即:通过将目标采样点p的k个最近点(最近邻域点)被球形翻转函数
映射到一个对偶空间中,通过在对偶空间中计算凸包,可以滤掉那些对视点c不可见的点,从而得到较为准确的目标采样点p的可视邻域点,这些可视邻域点可以作为所述目标采样点p的邻域点。其中,凸包(convex hull)是指一个最小凸多边形,点集Q中的点在凸多边形边上或者在凸多边形边内部。对偶空间中凸包的计算可以采用现有技术。
进一步的,上述k值的选择会影响可视邻域点的个数。为了获得稳定的邻域,在上述的计算对偶空间凸包的基础上,还可以进一步地取凸包上和球形翻转函数取p点时的
共边的点(可视一环邻域点)所对应的最近点作为目标采样点p的邻域点。
本发明通过确定目标采样点的视点,然后基于视点确定目标采样点的邻域坐标,能够得到较为可靠的邻域点,从而能够逼近真实的采样曲面,方便后续进行较为准确的三维建模、点云模型测地线计算、模型分割、模型精简等应用。
再请参见图2,是本发明实施例的确定视点坐标的其中一种具体方法的流程示意图,本发明实施例的确定视点坐标的方法可以应用到上述图1对应的实施例中,实现上述图1对应实施例的S102的步骤。具体的,所述方法包括:
S201:确定所述目标采样点所在曲面的法向值、从所述目标采样点以法向的相反方向发出的预定数目的射线与点云模型相交的射线交点的交点坐标、以及各射线与法向的相反方向的夹角。
法向值Np可以通过拟合目标采样点p的k个最近点的最小二乘平面得到。所述最小二乘平面具体是指到所有k个最近点距离之和最小的平面,所述S201具体可以包括:获取所述目标采样点的k个最近点坐标;拟合获取到的k个最近点坐标,得到最小二乘平面;根据该得到的最小二乘平面得到所述目标采样点所在曲面的法向值。所述法向值Np也可以采用现有的技术,通过对定义的目标采样点所在的平面进行计算得出。其中,k个最近点坐标可以是指距离所述目标采样点p的距离值在一个较小的阈值范围内的点。
从目标采样点p发出的预定数目的射线会部分或者全部与点云模型相交,其射线交点实际也是点云模型中的采样点,因此,有效的射线交点的坐标实际可以根据对应采样点的坐标得到。
各射线与法向的相反方向的夹角则可以在发射该射线之前,先确定射线方向相对于法向的相反方向的夹角,然后再发射射线,也即在发出该射线之前,即已确定各射线与法向的相反方向的夹角。
S202:根据目标采样点的坐标、射线交点的交点坐标计算每一个射线交点到目标采样点的距离,并以该射线交点对应的射线与法向的相反方向的夹角的余弦值作为权重值对距离进行加权计算。
根据两点坐标,采用现有的计算公式即可得到射线交点到目标采样点的距离。在本发明实施例中,加权计算所采用的权重值采用该射线交点对应的射线与法向的相反方向的夹角的余弦值。
S203:根据加权计算后的结果、所述目标采样点所在曲面的法向值、射线交点的个数以及所述目标采样点的坐标,得到所述视点坐标。
具体的,所述S203所采用的计算公式包括:
其中,c为视点的坐标,p为目标采样点的坐标,Np为法向值,nt为射线交点的个数,θi为射线li和目标采样点所在曲面法向的相反方向的夹角。
本发明实施例通过上述计算方式可以简单、快速地确定视点坐标,从而方便后续进行关于该视点对应的目标采样点的邻域点坐标的计算,有利于得到较为可靠的邻域点坐标。
再请参见图3,是本发明实施例的基于视点坐标确定目标采样点的邻域点坐标的其中一种具体方法的流程示意图,该方法可以应用于图1对应实施例中,对应于图1对应实施例中的S103。具体的,所述方法包括:
S301:将所述目标采样点的k个最近点通过预置的球形翻转函数映射到对偶空间。
S302:根据所述视点坐标和预置的隐藏点移除算法HPR,计算所述对偶空间中相对于所述视点的凸包,所述凸包上包括一个或者多个映射点。
S303:将所述对偶空间的凸包上映射点对应的最近点的坐标作为所述目标采样点的邻域点坐标。将所述对偶空间的凸包上映射点在k个最近点中对应的最近点作为所述目标采样点的邻域点坐标。
在得到视点坐标后,通过使用HPR算法计算目标采样点p的可视邻域点的坐标,即通过将目标采样点p的k个最近点(最近邻域点)被球形翻转函数
映射到一个对偶空间中,通过在对偶空间中计算凸包,如果某个最近点在对偶空间中位于凸包上,则认为该最近点是视点的可见点,否则,最近点不为可视点,从而可以滤掉那些对视点c不可见的点,进一步得到较为可靠的目标采样点p的可视邻域点,这些可视邻域点可以作为所述目标采样点p的邻域点。其中,凸包(convex hull)是指一个最小凸多边形,点集中的点在凸多边形边上或者在凸多边形边内部,位于凸包边上或凸包内的点中包括部分或者全部所述K个最近点的映射点。对偶空间中凸包的计算可以采用现有技术。
进一步的,当点云模型中含有噪声或者点云模型是非均匀采样时,则可以通过鲁棒的HPR算法来处理这些情形。鲁棒的HPR算法中,在凸包附近的点也可能是可见点,并且在球形翻转函数中使用不同的球半径进行映射,通过多次计算凸包,将那些不是一直在凸包附近的点标记为假的可见点。
本发明实施例采用HPR算法,计算基于视点的凸包,得到较为可靠的目标采样点p的可视邻域点,进而得到较为可靠的所述目标采样点的邻域点,方便后续进行较为准确的三维建模。
再请参见图4,是本发明实施例的基于视点坐标确定目标采样点的邻域点坐标的其中一种具体方法的流程示意图,该方法可以应用于图1对应实施例中,对应于图1对应实施例中的S103。具体的,所述方法包括:
S401:采用预置的球形翻转函数对所述目标采样点的k个最近点坐标进行计算,将所述目标采样点的k个最近点映射到对偶空间;k值根据精度需要由用户设置。
S402:根据所述视点坐标和预置的隐藏点移除算法HPR,计算所述对偶空间中相对于所述视点的凸包,所述凸包上包括一个或者多个映射点;
S403:采用预置的球形翻转函数对所述目标采样点坐标进行计算,将所述目标采样点映射到对偶空间;
S404:将所述对偶空间的所述凸包上与所述目标采样点的映射点共边的映射点对应的最近点的坐标作为所述目标采样点的邻域点坐标。即将所述对偶空间的所述凸包上与所述目标采样点的映射点共边的映射点在k个最近点中对应的最近点作为所述目标采样点的邻域点坐标。
在得到视点坐标后,通过使用HPR算法计算目标采样点p的可视邻域点的坐标,即通过将目标采样点p的k个最近点(最近邻域点)被球形翻转函数
映射到一个对偶空间中,通过在对偶空间中计算凸包,如果某个最近点在对偶空间中位于凸包上,则认为该最近点是视点的可见点,否则,则最近点不为可视点,从而可以滤掉那些对视点c不可见的点,进一步得到较为可靠的目标采样点p的可视邻域点,这些可视邻域点可以作为所述目标采样点p的邻域点。其中,凸包(convex hull)是指一个最小凸多边形,点集中的点在凸多边形边上或者在凸多边形边内部,位于凸包边上或凸包内的点中包括部分或者全部所述K个最近点的映射点。对偶空间中凸包的计算可以采用现有技术。
上述k值的选择会影响可视邻域点的个数。为了获得稳定的邻域,在上述的计算对偶空间凸包的基础上,本发明实施例进一步将目标采样点p通过球形翻转函数映射到对偶空间中的凸包上,同时,将所述对偶空间的凸包上和所述目标采样点的映射点位于凸多边形边上的映射点对应的点作为所述目标采样点的邻域点,即将作为凸包的凸多边形内部的映射点(包括k个最近点的映射点)过滤掉,仅使用凸多边形边上的映射点所对应的最近点作为目标采样点p的邻域点。
进一步的,当点云模型中含有噪声或者点云模型是非均匀采样时,则可以通过鲁棒的HPR算法来处理这些情形。鲁棒的HPR算法中,在凸包附近的点也可能是可见点,并且在球形翻转函数中使用不同的球半径进行映射,通过多次计算凸包,将那些不是一直在凸包附近的点标记为假的可见点。
本发明实施例采用HPR算法,计算基于视点的凸包,得到较为可靠的目标采样点p的可视邻域点,进而得到更为可靠的所述目标采样点的邻域点,方便后续进行更为准确的三维建模。
请参见图5,是本发明实施例的一种三维模型的构建方法的流程示意图,本发明所述的方法可应用于各类需要对立体的三维物体进行三维建模的终端、服务器等设备中,具体的,所述方法包括:
S501:对三维物体的点云模块进行采样,获取对三维物体的点云模型进行采样后的各目标采样点坐标;
S502:确定各目标采样点关联的视点及视点坐标,所述视点设置在与其关联的目标采样点的法向的相反方向上,所述视点坐标根据与该视点关联的目标采样点的坐标,并根据对预定数目的射线交点到与该视点关联的目标采样点的距离值加权计算后得到,所述射线交点包括从与该视点关联的目标采样点发出的围绕与该视点关联的目标采样点的法向相反方向的射线与所述点云模型相交的交点;
S503:根据所述视点坐标分别得到各目标采样点的邻域点坐标;
上述S501至S503的具体实现可参见图1对应实施例,再次不赘述。
S504:根据各目标采样点的坐标和各目标采样点的邻域点坐标,构建所述三维物体的三维模型。根据所有的采样点及其邻域点接口构建出三维物体的三维模型。
本发明通过确定目标采样点的视点,然后基于视点确定目标采样点的邻域坐标,能够得到较为可靠的邻域点,从而能够逼近真实的采样曲面,方便进行较为准确的三维建模。
下面对本发明实施例的三维模型的邻域点坐标确定装置以及三维模型的构建装置进行详细说明。
请参见图6,是本发明实施例的一种三维模型的邻域点坐标确定装置的结构组成示意图,本发明实施例的所述装置可设置在各类需要对立体的三维物体进行三维建模的终端、服务器等设备中,具体的,所述装置包括:
获取模块1,用于获取对三维物体的点云模型进行采样后的目标采样点坐标;
视点确定模块2,用于确定所述目标采样点的视点,并确定视点坐标,所述视点设置在目标采样点的法向的相反方向上,所述视点坐标根据所述目标采样点的坐标,并根据对预定数目的射线交点到所述目标采样点的距离值加权计算后得到,所述射线交点包括从所述目标采样点发出的围绕目标采样点的法向相反方向的射线与所述点云模型相交的交点;
邻域点确定模块3,用于根据所述视点确定模块确定的视点坐标得到所述目标采样点的邻域点坐标。
三维物体的点云模型可以采用现有的三维扫描仪等设备获取得到。所述获取模块1获取的目标采样点坐标是根据三维物体的点云模型中每个采样点在模型中的相对坐标确定得到。具体的,所述获取模块1获取的目标采样点的坐标可通过现有方式获得。
所述视点确定模块2确定的视点设置在目标采样点的法向的相反方向上,所述视点坐标根据所述目标采样点的坐标,并根据对预定数目的射线交点到所述目标采样点的距离值加权计算后得到,所述射线交点包括从所述目标采样点发出的围绕目标采样点的法向相反方向的射线与所述点云模型相交的交点。
具体来说,目标采样点p的视点c是指位于目标采样点p所在曲面的法向Np相反的方向,且视点c到目标采样点p的距离由所有射线交点ti到p的距离加权得到,射线交点ti到p的距离则是根据射线交点ti的坐标与目标采样点p的坐标计算得到。
从目标采样点p发出的预定数目的射线会部分或者全部与点云模型相交,其射线交点实际也是点云模型中的采样点,因此,有效的射线交点的坐标实际可以根据对应采样点的坐标得到。
在得到视点坐标后,所述邻域点确定模块3通过使用HPR算法计算目标采样点p的可视邻域点的坐标,即通过将目标采样点p的k个最近点(最近邻域点)被球形翻转函数
映射到一个对偶空间中,通过在对偶空间中计算凸包,如果某个最近点在对偶空间中位于凸包上,则认为该最近点是视点的可见点,否则,则最近点不为可视点,从而可以滤掉那些对视点c不可见的点,进一步得到较为可靠的目标采样点p的可视邻域点,这些可视邻域点可以作为所述目标采样点p的邻域点。
进一步的,上述k值的选择会影响可视邻域点的个数。所述邻域点确定模块3为了获得稳定的邻域,在上述的计算对偶空间凸包的基础上,还可以进一步地取凸包上和球形翻转函数取p点时的
共边的点(可视一环邻域点)所对应的最近点作为目标采样点p的邻域点。当点云模型中含有噪声或者点云模型是非均匀采样时,则可以通过鲁棒的HPR算法来处理这些情形。鲁棒的HPR算法中,在凸包附近的点也可能是可见点,并且在球形翻转函数中使用不同的球半径进行映射,通过多次计算凸包,将那些不是一直在凸包附近的点标记为假的可见点。
再请参见图7,是图6中视点确定模块的其中一种具体结构示意图,所述视点确定模块2可以包括:
第一计算单元21,用于确定所述目标采样点所在曲面的法向值、从所述目标采样点以法向的相反方向发出的预定数目的射线与点云模型相交的射线交点的交点坐标、以及各射线与法向的相反方向的夹角;
第二计算单元22,用于根据目标采样点的坐标、射线交点的交点坐标计算每一个射线交点到目标采样点的距离,并以该射线交点对应的射线与法向的相反方向的夹角的余弦值作为权重值对距离进行加权计算;
视点确定单元23,用于根据加权计算后的结果、所述目标采样点所在曲面的法向值、射线交点的个数以及所述目标采样点的坐标,得到所述视点坐标。
所述第一计算单元21计算的法向值Np可以通过拟合目标采样点p的k个最近点的最小二乘平面得到。其中,所述第一计算单元20在确定所述目标采样点所在曲面的法向值时,用于获取所述目标采样点的k个最近点坐标;拟合获取到的k个最近点坐标,得到最小二乘平面;根据该得到的最小二乘平面得到所述目标采样点所在曲面的法向值。所述法向值Np也可以采用现有的技术,通过对定义的目标采样点所在的平面进行计算得出。
从目标采样点p发出的预定数目的射线会部分或者全部与点云模型相交,其射线交点实际也是点云模型中的采样点,因此,所述第一计算单元21计算有效的射线交点的坐标实际可以根据射线对应采样点的坐标得到。
所述第一计算单元21计算的各射线与法向的相反方向的夹角则可以在发射该射线之前,先确定射线方向相对于法向的相反方向的夹角,然后再发射射线,也即在发出该射线之前,即已确定各射线与法向的相反方向的夹角。
第二计算单元22可以根据两点坐标,采用现有的计算公式即可得到射线交点到目标采样点的距离。在本发明实施例中,加权计算所采用的权重值采用该射线交点对应的射线与法向的相反方向的夹角的余弦值。
具体的,所述视点确定单元23所采用的计算公式包括:
其中,c为视点的坐标,p为目标采样点的坐标,Np为法向值,nt为射线交点的个数,θi为射线li和目标采样点所在曲面法向的相反方向的夹角。
再请参见图8,是图6中的邻域点确定模块的其中一种结构组成示意图,所述邻域点确定模块3包括:
第一映射处理单元31,用于将所述目标采样点的k个最近点通过预置的球形翻转函数映射到对偶空间;
第三计算单元32,用于根据所述视点坐标和预置的隐藏点移除算法HPR,计算所述对偶空间中相对于所述视点的凸包,所述凸包上包括一个或者多个映射点;
第一邻域点确定单元33,用于将所述对偶空间的凸包上映射点对应的最近点的坐标作为所述目标采样点的邻域点坐标。
在得到视点坐标后,所述第一映射处理单元31通过使用HPR算法计算目标采样点p的可视邻域点的坐标,即通过将目标采样点p的k个最近点(最近邻域点)被球形翻转函数
映射到一个对偶空间中,所述第三计算单元32通过在对偶空间中计算凸包,可以滤掉那些对视点c不可见的点,从而使得第一邻域点确定单元33得到较为可靠的目标采样点p的可视邻域点,这些可视邻域点可以作为所述目标采样点p的邻域点。
请参见图9,是图6中的邻域点确定模块的其中另一种结构组成示意图,所述邻域点确定模块3包括:
第二映射处理单元34,用于采用预置的球形翻转函数对所述目标采样点的k个最近点坐标进行计算,将所述目标采样点的k个最近点映射到对偶空间;
第四计算单元35,用于根据所述视点坐标和预置的隐藏点移除算法HPR,计算所述对偶空间中相对于所述视点的凸包,所述凸包上包括一个或者多个映射点;
第三映射处理单元36,用于采用预置的球形翻转函数对所述目标采样点坐标进行计算,将所述目标采样点映射到对偶空间;
第二邻域点确定单元37,用于将所述对偶空间的所述凸包上与所述目标采样点的映射点共边的映射点对应的最近点的坐标作为所述目标采样点的邻域点坐标。
在得到视点坐标后,第二映射处理单元34通过使用HPR算法计算目标采样点p的可视邻域点的坐标,即通过将目标采样点p的k个最近点(最近邻域点)被球形翻转函数
映射到一个对偶空间中,第四计算单元35通过在对偶空间中计算凸包,可以滤掉那些对视点c不可见的点,从而得到较为准确的目标采样点p的可视邻域点。
由于上述k值的选择会影响可视邻域点的个数。为了获得稳定的邻域,在上述的计算对偶空间凸包的基础上,所述第三映射处理单元36进一步地取凸包上和球形翻转函数取p点时的
共边的点(可视一环邻域点)所对应的最近点,第二邻域点确定单元37将这些最近点作为目标采样点p的邻域点。
本发明实施例采用HPR算法,计算基于视点的凸包,得到较为可靠的目标采样点的可视邻域点,进而得到更为可靠的所述目标采样点的邻域点,方便后续进行更为准确的三维建模。
再请参见图10,是本发明实施例的一种三维模型的构建装置的结构组成示意图,本发明实施例的所述装置可设置在各类需要对立体的三维物体进行三维建模的终端、服务器等设备中,具体的,所述装置包括:
邻域点坐标确定模块100,用于对三维物体的点云模块进行采样,获取对三维物体的点云模型进行采样后的各目标采样点坐标;确定各目标采样点关联的视点及视点坐标,并根据所述视点坐标分别得到各目标采样点的邻域点坐标;所述视点设置在与其关联的目标采样点的法向的相反方向上,所述视点坐标根据与该视点关联的目标采样点的坐标,并根据对预定数目的射线交点到与该视点关联的目标采样点的距离值加权计算后得到,所述射线交点包括从与该视点关联的目标采样点发出的围绕与该视点关联的目标采样点的法向相反方向的射线与所述点云模型相交的交点;
建模模块200,用于根据各目标采样点的坐标和各目标采样点的邻域点坐标,构建所述三维物体的三维模型。
具体的,上述的邻域点坐标确定模块100可以采用上述的三维模型的邻域点坐标确定装置实现。而所述建模模块200根据所有的采样点及其邻域点接口构建出三维物体的三维模型。
本发明通过确定目标采样点的视点,然后基于视点确定目标采样点的邻域坐标,能够得到较为可靠的邻域点,从而能够逼近真实的采样曲面,方便后续进行较为准确的三维建模。
本邻域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。