一种基于视觉认知特征的彩色三维模型检索方法 【技术领域】
本发明涉及多媒体信息检索领域,特别是涉及一种基于视觉认知特征的彩色三维模型检索方法。
背景技术
最近几年,借助计算机进行模拟仿真成为认知心理学的一个主流方向。由于三维模型的广泛应用和模型库规模的快速增长,需要提供一种检索三维模型的高效方法。
目前已经有一些比较合理的三维模型检索方法,但大多仅仅利用了模型的几何特征,而彩色三维模型的检索却鲜有涉及。2001年8月在美国洛杉矶举行的国际图形学年会(ACM SIGGRAPH)上Masaki Hilaga等人的《TopologyMatching for Fully Automatic Similarity Estimation of 3D Shapes)》论文中提出了一种基于近似测地线的MRG图匹配算法;另外,普林斯顿大学的三维模型检索引擎中利用多角度拍照的方法将三维模型降维到二维图片进行匹配。这些方法虽然都较好地利用了模型的几何信息,同时保持了旋转、平移等的不变性,但是它们提取的特征过于抽象,不太符合人类认知事物的一般规律。另外,上述采用的算法当中都忽略了模型的颜色信息,而颜色却是视觉计算理论中的一个重要因子,因此降低了检索的效率和性能。
【发明内容】
为克服上述缺陷,本发明的目的是提供一种基于视觉认知特征的彩色三维模型检索的方法,该方法利用颜色、几何特征构建特征向量,并通过全局特征匹配和局部特征匹配相结合的方式,提高了检索的效率。
为实现上述目的,本发明提供了一种基于视觉认知特征的彩色三维模型检索方法,该方法包括如下步骤:将彩色三维模型模板存储在数据库中,提交待检索的彩色三维模型并将待检索的彩色三维模型与存储在数据库中的彩色三维模型模板进行匹配操作,输出与数据库中匹配成功的彩色三维模型。
其中,上述匹配操作包括如下步骤:构建彩色三维模型各顶点的六维向量并计算六维坐标特征值,根据上述六维坐标特征值选取颜色采样点;提取颜色采样点的特征信息,构建全局特征直方图和局部特征直方图;根据全局特征直方图和局部特征直方图对彩色三维模型进行全局特征和局部特征匹配。
本发明提出的彩色三维模型的方法,具有以下特点:
(1)保持对模型仿射变换良好的稳定性。
(2)结合视觉认知特征:首先采用颜色的强度变化选取采样点,再利用采样点的几何特征构建特征向量,并通过全局特征匹配与局部特征对应匹配相结合的方式进一步提高检索的效率。在选取采样点的过程中还利用了测地距离的信息,更加符合人类认识物体形状的一般规律。
【附图说明】
图1a为根据本发明的彩色三维模型检索方法的流程图;
图1b为图1a中匹配操作方法的流程图;
图2为选取颜色采样点的流程图;
图3为提取向量特征信息的流程图;
图4为检索匹配输出结果的流程图;
图5为根据本发明的一个实施例的彩色三维模型的检索效果图。
【具体实施方式】
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
为实现本发明的目地,本发明提供了一种基于视觉认知特征的彩色三维模型的检索方法。图1a示出本发明的涉及的彩色三维模型检索方法。该方法包括如下步骤:
S101:将彩色三维模型模板存储到数据库中。
将彩色三维模型模板存储到服务器端的彩色三维模型数据库中。
S102:提交待检索的彩色三维模型,将待检索的彩色三维模型与存储在数据库中的彩色三维模型模板进行匹配操作。
通过客户端向服务器端提交待检索的彩色三维模型,将步骤102中客户端提交的待检索的彩色三维模型与步骤101中的彩色三维模型模板进行匹配操作。
图1b示出了上述匹配操作的步骤。
待检索的彩色三维模型与彩色三维模型模板匹配的包括如下步骤:
S1021:计算六维坐标特征值并选取颜色采样点。
上述选取颜色采样点的流程如图2所示。
选取彩色三维模型的各顶点,将各顶点的RGB值转换为HSV。HSV值用于表示色调、饱和度、亮度,分别对应于色浓、色深和色调。
对上述各顶点的局部区域采用MDS映射算法将三维区域展开二维平面上。
其中,各顶点的局部区域的选取包括以彩色三维模型的各顶点为中心沿邻接的三角面片以射线状向外延伸r个顶点。具体解释为,以顶点F0为中心沿邻接的三角面片G0向外延伸得到k个顶点,其中k为F0邻接的面片数,再分别以这k个顶点为中心向外延伸,如此执行直至得到r个顶点,由此r+1个顶点构成的区域即为顶点F0局部区域。其中,三角面片为由三个顶点构成的面。
上述MDS映射算法的方法包括如下步骤:
首先,对各顶点的局部区域,计算顶点总个数n及各顶点之间的测地距离dij,其中i,j分别表示局部顶点的序号且i<j。
然后,在二维平面上随机生成对应的n个顶点,计算上述对应的n个顶点的各顶点之间的欧式距离dij’。
根据各顶点之间的测地距离dij以及其对应的n个顶点的各顶点之间的欧式距离dij’,计算应变能L=1cΣi<ji=n(dij-dij′)2dij′,]]>其中c=Σi<ji=ndij′.]]>
最后,采用应变能梯度下降的方法移动平面上的顶点,通过迭代计算得到L的最小值,从而确定三维区域在二维平面上各点映射。
将彩色三维模型从三维区域展开到二维平面上以后,构建出顶点之间的对应关系。将顶点的坐标值(X,Y,Z)与顶点经过转换的颜色值(H,S,V)一起构成顶点的六维特征向量(X,Y,Z,H,S,V)。
对每个顶点根据其各相邻顶点计算对应的六维坐标特征值Td,其中d=1,2,...s,s为该顶点的相邻点总数,选择最大的特征值作为该顶点的特征值。
其中,计算六维坐标特征值的具体方法为:
计算矩阵D=∂X∂x∂Y∂x∂Z∂x∂H∂x∂S∂x∂V∂x∂X∂y∂Y∂y∂Z∂y∂H∂y∂S∂y∂V∂y′,]]>其中(x,y)为顶点所对应的二维平面上各点的坐标值。
根据矩阵D,计算矩阵C=DTD,通过数值解法求解矩阵C的特征值。从中选取最大特征值Tmax和最小特征值Tmin,计算出T=Tmax-Tmin]]>作为该点的一个特征值Td。
统计是否有未计算的相邻顶点的六维坐标特征值Td,
如果有,则重复上述计算步骤;
如果没有,则从上述已计算的特征值中选取最大值作为该顶点的特征值。
检测经过上述步骤是否完成所有顶点的计算,
如果有未计算的顶点,则重复上述步骤直至完成所有顶点的特征值计算。
统计上述各顶点的特征值,选择特征值高的前M个顶点作为颜色采样点。
根据步骤1021中已获取的征值高的前M个顶点,对各顶点根据相互间测地距离进行K-medoids聚类操作,划分并标定为不同的类Si,i=1,2,3...。上述的前M个顶点为颜色采样点。
根据步骤1021中获取的颜色采样点,执行步骤1022:提取颜色采样点的特征信息,构建全局特征直方图和局部特征直方图。其中,颜色采样点对应的六维特征向量包括全局特征向量和局部特征向量。图3示出了上述提取全局向量特征信息和局部向量特征信息的流程。
在步骤1021获取的采样点中,选取采样点对(A,B),其中A∈Si,B∈Sj,且i≠j,计算全局角度值∠AOB,(A,B)与(B,A)不重复计算,角度值用v表示。
统计各顶点对的角度值,构建模型整体的全局特征直方图。
其中,计算全局角度值∠AOB包括如下步骤:
计算彩色三维模型的中心点O,
其中,中心点O的坐标值为,(Xi,Yi,Zi)为彩色三维模型的各顶点坐标,N为模型的顶点总数。
利用O,A,B的坐标值分别计算出向量OA,OB。然后,计算arccos(dot(OA,OB))得到全局角度值∠AOB,。实际的全局角度值∠AOB的范围在[0,π]之间。
对于经过聚类操作后的各选定类Si,选取的采样点对(A’,B’),其中A’∈Si,B’∈Si,A’≠B’,计算局部角度值∠A’OiB’,(A’,B’)与(B’,A’)不重复计算,角度值用v’表示。
统计各类Si中的各顶点对的总的角度值,构建模型整体关键部分的局部特征直方图。
其中,计算局部角度值∠A’OiB’包括如下步骤:
计算彩色三维模型的中心点Oi,
其中,中心点Oi的坐标值为(Xi,Yi,Zi)为Si中的各采样点坐标,Ni为类Si中的顶点数。
利用Oi,A’,B’的坐标值分别计算出向量OiA′,OiB′。然后,计算arccos(dot(OiA′,OiB′))得到局部角度值∠A’OiB’,实际的局部角度值的范围在[0,π]之间。
检查是否已完成对所有采样点的计算,如果还有未完成计算的采样点,则重复上述步骤。如果已完成全部采样点的计算,则对上述全局角度值和局部角度值进行归一化处理。
即,利用公式v‾i=vi-minp∈Sv(p)maxp∈Sv(p)]]>对全局角度值∠AOB和局部角度值∠A’OiB’分别做归一化处理,其中p为各角度值。S根据情况不同为全局角度值类和局部角度值类,计算局部角度值时将各类的角度值统一处理,构成一个新的大类,vi代表第i个角度值的归一化值。
根据上述获得角度值的归一化值,构建角度值的直方图信息及相应的特征向量。
首先将0-1分成m等份,其中m为整数且大于1。各角度值根据归一化值vi划入不同的等份,统计各等份采样点个数,构建直方图。再将各等份角度值个数除以角度值总个数从而得每一等份所占比例,构成m维特征向量。其中,Wm表示彩色三维模型的全局特征信息,W′m表模型示关键部分的局部特征信息,用Wx、W′x和Wi、W′i分别表示从客户端提交的彩色三维模型和服务器端的彩色三维模型模板中得到的上述m维特征向量的全局特征信息和局部特征信息。
根据上述步骤1022中构建的全局特征直方图和局部特征直方图,执行步骤1023,具体包括:将客户端提交的待检索的彩色三维模型的特征与服务器端的彩色三维模型模板的特征进行全局特征和局部特征对应匹配。图4示出了上述全局特征和局部特征对应匹配的流程。
其中,全局特征匹配包括如下步骤:
首先将待检索的彩色三维模型全局特征向量Wx与数据库中彩色三维模型模板的全局特征向量Wi进行比较,通过公式‖Wx-Wi‖计算距离长度ΔWi。
然后再将各彩色三维模型按照距离长度ΔWi从小到大的顺序进行排序,选择距离值小的前u个模型进行局部匹配。
局部特征匹配包括如下步骤:
首先,从上述全局特征匹配确定的u个待考虑彩色三维模型中选择各自的局部特征向量W′i,与待检索模型的局部特征向量W′x进行计算比较,从而得到各自的相似距离。
然后,选取局部特征匹配中距离值较小的前p个彩色三维模型作为匹配成功的彩色三维模型,完成检索。
S103:输出步骤102中匹配成功的彩色三维模型。
图5示出根据本发明实施例的检索结果的效果图。如图5中所示,左侧显示的是客户端提交的待检索的彩色三维模型,其检索出来的结果显示在右侧。排位越靠前,则其与待检索三维模型越接近。
本领域普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所披露的仅为本发明的优选实施例,当然不能以此来限定本发明的权利保护范围。可以理解,依据本发明所附权利要求中限定的实质和范围所作的等同变化,仍属于本发明所涵盖的范围。