裴焱棟,顧克江
(1.南京理工大學(xué)計算機科學(xué)與工程學(xué)院,南京 210094;2.中石化華東石油工程有限公司,南京 210019)
(*通信作者電子郵箱jsflow@sina.com)
目前人類對現(xiàn)實世界描述從一維的文本、聲音,到二維的圖像等信息,發(fā)展到了三維模型和三維場景的領(lǐng)域。三維模型技術(shù)是物體的多邊形表示方法,是使用多媒體技術(shù)描述現(xiàn)實的三維世界的方式。三維模型描述的物體更直觀,更符合人類的感知方式,可以提供更能滿足人類視覺需要的信息。與其他計算機應(yīng)用技術(shù)相似,三維模型技術(shù)也存在著模型查找和復(fù)用的需求。與耗費時間創(chuàng)造一個新的模型相比,檢索并利用已有模型更具有效率。因此,近年來三維模型檢索技術(shù)已成為多媒體技術(shù)領(lǐng)域一個新的研究熱點[1]。
一般而言,三維模型檢索首先需要對模型進行特征提取,然后對所提取的特征采用相似度匹配算法進行形狀比較計算。檢索系統(tǒng)的邏輯示意圖如圖1。這里的特征是指能夠唯一確定模型的某種屬性,如棱角、邊等幾何特征,或基于變換域的特征分量等。特征提取的結(jié)果一般是一個高維向量,或者一個圖結(jié)構(gòu)[2]。提取特征的算法稱為特征提取子,特征的表示方式通常稱作描述子。相似度計算與匹配過程是計算查詢模型和各個待檢索模型的特征空間距離并排序的過程,距離較近的一類模型被看作是相似的,而距離較遠(yuǎn)的一類模型被視作非相似的[3]。
早期的三維模型檢索使用文本信息標(biāo)注模型,通過檢索文本實現(xiàn)模型檢索。因為文本信息很難精確描述三維模型所包含的豐富內(nèi)容,所以一種關(guān)注模型物理性質(zhì)的數(shù)學(xué)表達的檢索方法快速發(fā)展。這類方法關(guān)注對模型物理性狀的描述和模型的特征空間匹配計算,被稱為基于內(nèi)容的三維模型檢索技術(shù)[4]。常見模型形狀包括幾何特征(Geometric Properties)、視覺外觀(Visual Shapes)、拓?fù)浣Y(jié)構(gòu)(Topological Structure)等方面。常用的空間距離度量方式有歐氏距離(Euclidean Distance)、曼哈頓距離(Manhattan Distance)、Hausdorff 距離、馬氏距離(Mahalanobis Distance)等[5-7]。現(xiàn)實中,人類對物體的分類除了依賴于物理形狀特征,還會綜合考慮物體的內(nèi)涵、功能等高級信息[8]。外形相似的模型可能屬于不同的類別[9]?;趦?nèi)容的檢索技術(shù)無法提取這種特征信息,因此在檢索效果的提高上遇到瓶頸。因為這些信息一般是語義學(xué)概念(Semantic Meaning)上的,所以該現(xiàn)象被稱為語義鴻溝(Semantic Gap)[10-11]。因此,基于語義的三維模型檢索技術(shù)開始成為熱點,常見方法包括用戶反饋、本體技術(shù)等。本文將分別介紹這兩種檢索技術(shù)。
圖1 三維模型檢索系統(tǒng)邏輯示意圖Fig.1 Logic diagram of 3D model retrieval system
基于內(nèi)容的檢索技術(shù)主要關(guān)注模型的物理性狀,可供選擇的物理性狀特征很多。早期曾選擇顏色、大小、材質(zhì)等特征屬性,并歸檔建庫的方法進行模型檢索[12]。該類方法對模型描述精準(zhǔn)程度較為粗糙,檢索結(jié)果錯誤率較高。提取的特征需要能充分描述模型的性狀。目前,按照所提取的特征類型,基于內(nèi)容的檢索算法大致可分為4類:1)基于統(tǒng)計數(shù)據(jù),將物理特征用統(tǒng)計學(xué)表示;2)基于幾何外形,主要側(cè)重外形的函數(shù)表達以及函數(shù)變換;3)基于拓?fù)浣Y(jié)構(gòu),發(fā)掘模型的骨干以及模型不同部位的空間關(guān)系;4)基于視覺特征,研究模型的二維平面投影。
該類方法要求先對三維模型的特征進行取樣,然后用直方圖等統(tǒng)計方法存儲、比較。常見的統(tǒng)計特征包括:距離、角度、法向量等[12],頂點的曲率分布[13]、各類數(shù)學(xué)矩[14]和數(shù)學(xué)變換的系數(shù)[15]等。早期學(xué)者研究了三種不同的直方圖表示方法[16],分別為同心球格子劃分(Shell Bins)、扇形格子劃分(Sector Bins)和組合格子劃分(Combine Bins),如圖2。這三種方法對三維噪聲有較好的魯棒性,但對網(wǎng)格細(xì)分和網(wǎng)格簡化的魯棒性不足。李海生等[16]提出一種基于模型內(nèi)二面角分布直方圖的特征描述方法,對內(nèi)二面角直方圖統(tǒng)計特征進行了定義并對其性質(zhì)進行探討;Lian 等[17]提出基于模型表面關(guān)鍵點間測地距離的分布直方圖特征(Geodesic Distances,GD);Pickup 等[18]提出基于模型表面積的分布直方圖特征(Surface Area,SA)。張開興等[19]提出一種基于模型內(nèi)二面角分布直方圖的非剛性三維模型檢索,首先對內(nèi)二面角直方圖統(tǒng)計特征進行了定義并對其性質(zhì)進行探討;然后提出基于融合特征的非剛性三維模型檢索算法。Schmitt 等[20]利用掃描得到的深度信息,估算得到厚度信息,然后建立聯(lián)合直方圖進行計算,該方法計算量較大。
圖2 三維模型空間分割方法Fig.2 Spatial segmentation methods of 3D model
高斯噪聲干擾、網(wǎng)格簡化等對模型表面有較大影響的變換時,直方圖向量會發(fā)生較大變化,從而降低檢索效率。
另一部分學(xué)者研究模型的幾何矩表示,幾何矩是模型的形狀密度函數(shù)在核函數(shù)下的積分。幾何矩系列算法要求在特征計算前對模型的二階矩矩陣進行奇異值分解,保證三維模型有相同的方向。相應(yīng)的,一些無需保證模型方向的算法出現(xiàn)了,如三維Zernike 矩[21]。Hosny[22]提出一種快速計算三維Legendre 矩的方法,利用對稱性分析,采用加速算法,有效地減少了三維Legendre矩的計算量。文獻[23]將僅能取整數(shù)階的傳統(tǒng)Zernike 矩推廣為分?jǐn)?shù)階Zernike 矩,提出一種分?jǐn)?shù)階Zernike 矩構(gòu)造算法。該算法可構(gòu)造出比傳統(tǒng)Zernike 矩重構(gòu)性能好、抗噪性能強的分?jǐn)?shù)階Zernike 矩。文獻[24]提出一種W-系統(tǒng)矩及其快速算法,通過計算體素模型的W-系統(tǒng)矩和物體運動不變量,提高了構(gòu)造效率和檢索準(zhǔn)確率。
基于統(tǒng)計數(shù)據(jù)的檢索方法對三維模型進行統(tǒng)計學(xué)分析計算完成對模型的匹配和檢索,計算簡單,對有較多噪聲的模型有較強的適應(yīng)性;缺點是對模型的描述較為粗糙,基于統(tǒng)計的特征之間相似性強度普遍較低[25],對局部特征描述不足,特征較為接近的模型區(qū)分準(zhǔn)確度較低檢索效果不夠直觀。
基于幾何外形的特征提取子主要研究模型的幾何外形和外形函數(shù)表達等特征,包含了表面特性的直觀描述、球諧函數(shù)投影分解等多類方法。幾何外形模型的高層信息具有完整的描述,一般會將模型建模的多面體表達方式轉(zhuǎn)換為由若干個較小規(guī)模的元模型組合成的物體。根據(jù)對模型的幾何外形的描述方法,該類算法也可以分成了若干子類,如網(wǎng)格化、體素描述、點云等。
文獻[26]中,作者率先提出基于表面特征的算法,將模型的表面模糊擬合為微小的三角形平面集合,然后計算每個三角形面片的法向量(Normal)作為模型的特征。針對該算法,一般存在兩種優(yōu)化方向:一種優(yōu)化策略以體積距離作為重點,文獻[27]假設(shè)一個模型存在一個外接球(Bounding Sphere),然后計算模型表面和外接球的距離,用一個透視圖(Penetration Map)記錄映射模型到邊界球而必須被壓縮到一個面元中的面片數(shù)量[28];另一種優(yōu)化策略關(guān)心模型表面的幾何性質(zhì)。文獻[29]提出了一種基于希爾伯特曲線(Hilbert Scanning Distance,HSD)的方法,通過離散小波變換和人工神經(jīng)網(wǎng)絡(luò)進行體積掃描、降維。該方法的過程如圖3。文獻[30]通過核密度估計法和高斯變換計算局部面積特征和相應(yīng)的組合。
直接對三維模型的外形進行描述有時相對復(fù)雜,文獻[31]最早提出將模型轉(zhuǎn)換為最相似物體的體積元素的表示(體素化)。體素化通過將三維形體表示進行一定的邊界判斷處理,產(chǎn)生體數(shù)據(jù)集(Volume Datasets)。體素集的形狀逼近于體素化之前的表面形狀。體素化在將三維形體表面信息有效保留的同時,也得到了形體內(nèi)部特征信息,如圖4。文獻[32]使用基于空間結(jié)構(gòu)圓描述子(Spatial Structure Circular Descriptor,SSCD)來獲取空間值。體素精度和使用的分辨率有關(guān),也和計算復(fù)雜度有關(guān)。模型的表面元素適用高精度、低規(guī)格的體素,而模型內(nèi)部的元素可以使用較大規(guī)格的體素,以減少體素數(shù)量,降低計算量。文獻[33]總結(jié)了自適應(yīng)體素合并的算法,實驗表明,經(jīng)過自適應(yīng)合并后的模型體素數(shù)量可以減少大約80%。近年來部分學(xué)者考慮引入深度學(xué)習(xí)的方法,將三維物體表征為一個二值或?qū)嵵档娜S張量,并以此為輸入,構(gòu)建各種三維卷積神經(jīng)網(wǎng)絡(luò),已取得了非常好的分類效果[34-36]。只是這類表征方式存在高維、稀疏的特點,在一定程度上影響了對應(yīng)網(wǎng)絡(luò)的分類性能。在此之上使用多尺度方法可以一定程度上提高分類效果[37-38]。
圖3 使用HSD的檢索方法示意圖Fig.3 Schematic diagram of retrieval method using HSD
圖4 三角網(wǎng)絡(luò)模型的體素化表示Fig.4 Voxelization representation of triangular network model
另一種是基于球諧函數(shù)投影的幾何形狀的提取方法。球諧函數(shù)方法是傅里葉變換在球面坐標(biāo)系上的拓展,在旋轉(zhuǎn)不變性、效率和識別力方面有優(yōu)勢,因此成為三維模型特征提取的一種代表性方法。該方法最早由文獻[39]中提出,作者使用兩個球諧函數(shù)記錄模型特征,隨后用傅里葉變換得到球諧函數(shù)的系數(shù)作為特征向量。隨后,研究者們對原方法進行優(yōu)化,使用更復(fù)雜的變換或函數(shù)以增強效果,如修正球諧函數(shù)[40]、球諧熵函數(shù)[41]、橢球諧函數(shù)[42]等。在最近的研究中,研究人員進一步針對形狀比較的效率問題進行了優(yōu)化,如Wu等[43-44]利用球諧函數(shù)提取特征向量的低頻分量表示,構(gòu)建了一種簡化的三維模型幾何空間描述子,可用于三維幾何形狀的快速比較;此外,Wang 等[45]在傅立葉變換系統(tǒng)上引入了非負(fù)約束,通過采樣方法極大簡化了形狀表示的過程。
隨著雷達、激光掃描建模技術(shù)的成熟,近年來流行一種基于點云(Point Cloud)的檢索方法,點云是指通過測量儀器得到的物體外觀表面的點數(shù)據(jù)集合。目前在各類工程應(yīng)用中,激光掃描儀等儀器極大提升了掃描精度,因此點云已成為非常普遍的建模輔助工具[46],也為三維模型檢索提出了需求[47]。文獻[48]使用基于低頻球諧函數(shù)的點云編碼方法,該方法結(jié)構(gòu)緊湊,緩解了噪聲帶來的編碼困難。文獻[49]將形狀空間描述為點云,而網(wǎng)格空間則通過黎曼度量[50]方式描述;基于這樣的表示,通過測地線提出了一種對模型空間進行插值描述的方法。文獻[51]提出了一種基于自適應(yīng)收斂閾值的多視點云配準(zhǔn)算法重建三維模型的框架,將迭代最近點(Iterative Closest Point,ICP)算法與運動平均算法相結(jié)合,實現(xiàn)了多視點云的配準(zhǔn)。
基于幾何外形的特征提取方法對模型的高層信息具有完整的描述,但是,大多數(shù)方法需要對三維模型進行轉(zhuǎn)換,例如從多邊形網(wǎng)格模型變換為體元網(wǎng)格模型,而且此類方法很難有效地直接提取網(wǎng)格模型的特征,所以計算復(fù)雜,轉(zhuǎn)換速度較慢,并且需要大量的存儲空間。
拓?fù)涿枋隽四P涂臻g組織的相互關(guān)系,提取三維模型的主要結(jié)構(gòu)特征,與人類的感知方式較為一致,是一種相對高級的表示方法。該方法主要用于描述非剛體模型的特征提取,如人體模型。文獻[52]提出了一個數(shù)據(jù)集,已被廣泛使用。
文獻[53]提出一種多分辨率的Reeb 圖像,在不同的分辨層次上表征三維模型的拓?fù)浣Y(jié)構(gòu),主要思想是把連通的且具有相同的連續(xù)函數(shù)μ 函數(shù)值的區(qū)域表示為一個節(jié)點,再將互連的節(jié)點連接起來形成Reeb 圖。文獻[54]提出一種快速的改進方案,使用計算其最大公共子圖的變型來評估兩個形狀之間的部分相似性。Li等[55]提出一種混合形狀描述方法來形成公共子圖,集成了基于測地線距離的全局特征和基于曲率的局部特征。實踐證明,多分辨率Reeb 圖具有旋轉(zhuǎn)無關(guān)性,對分辨尺度的改變具有魯棒性,缺乏區(qū)分模型不同部位的能力。圖5是一種有代表性的三維模型及其Reeb圖像。
圖5 利用高度函數(shù)的環(huán)面及其Reeb圖Fig.5 Torus and Reeb graph using height function
另一部分研究嘗試將模型表述為骨架圖,以忽視外表面形狀對模型檢索的干擾。骨架體現(xiàn)了模型的形狀特征和拓?fù)涮卣鳎P偷耐負(fù)浣Y(jié)構(gòu)特征則由各個骨架枝之間的連接和層次關(guān)系來確定。文獻[56]提出一種基于骨架填充率的檢索方法,根據(jù)模型生成骨架,然后估算骨架的覆蓋部分和骨架的比例關(guān)系。文獻[57]根據(jù)模型的骨架端點間的路徑進行匹配,文獻[58]提出兩層編碼框架,提高形狀匹配的效率,魯棒性更好。文獻[59]提出基于骨架樹進行機械零件三維模型檢索的方法,該算法骨架轉(zhuǎn)換成骨架樹并用鄰接矩陣來描述骨架樹的拓?fù)浣Y(jié)構(gòu)特征,如圖6。骨架圖可以提供比Reeb 圖像算法更精準(zhǔn)的局部比對,但缺點是骨架算法有較高的計算量,對模型噪聲較為敏感。
對于大多數(shù)三維模型而言,計算提取三維模型的拓?fù)浣Y(jié)構(gòu)特征的資源耗費較大?;谕?fù)浣Y(jié)構(gòu)的檢索算法可以區(qū)分三維物體的主要結(jié)構(gòu)和次要結(jié)構(gòu),在提取特征之前,必須進行一系列的模型歸一化處理。但是目前仍然不能對三維物體進行快速準(zhǔn)確的解構(gòu),而且解構(gòu)過程對模型的噪聲較為敏感。
圖6 模型、模型骨架圖、模型骨架樹Fig.6 Model,model skeleton diagram and model skeleton tree
該類算法在特征提取時會將三維模型投影到二維平面,然后使用二維平面圖形領(lǐng)域的技術(shù)對投影面進行處理。按照投影角度的數(shù)量劃分,可以分為單方向的二維函數(shù)投影方法[60]和多視角二維視圖投影方法[61]。二維函數(shù)投影方法認(rèn)為若兩個模型相似,那么從同一角度觀察的表面形狀、旋轉(zhuǎn)投影[62]、切面形狀[63]都應(yīng)該是相似的,避免了多角度視圖帶來的計算復(fù)雜度問題。文獻[63]還提到切面方向、切割函數(shù)等問題。多視角方法認(rèn)為若兩個模型相似,則不同視角觀察到的影像也會是相似的,所以多視角二維視圖投影需要從多個不同的角度對模型進行投影,從而得到一組投影圖像,然后組合建模計算。該方法并不要求對兩個模型的觀察視角在方向或角度上一一對應(yīng)。多視圖會提升檢索精度,但是也會增大計算復(fù)雜度。Gao 等[64]提出在正六面體上放置216 個虛擬攝像頭的方法。Su 等[65]提出12 個視圖的方法。文獻[66]提到使用主成分分析(Principal Component Analysis,PCA)降低表示物體所必需的視圖數(shù)量,同時解決PCA 修改后的軸對齊的問題。文獻[67]提出LFD(Light Field Descriptor)方法,假設(shè)模型周圍存在一個正12 面體,其20 個頂點上都存在視點,然后根據(jù)捕捉到的投影生成特征。文獻[68]在LFD方法中引入深度圖信息進行檢索。針對LFD 的特征生成過程,學(xué)者們提出了一些有效的改進,如通過2D Zernike 矩[69]和傅里葉描述符[70]。文獻[71]進行正交投影,從一組全局視角觀察,然后使用傅立葉變換和二維離散小波變換來計算得到特征值。文獻[72]使用基于模糊C-均值的自適應(yīng)視圖聚類和形狀上下文進行檢索。
全局特征關(guān)注整體,可以快速分類;而局部特征關(guān)注局部細(xì)節(jié),適于精確區(qū)分,因此也有一些研究重點關(guān)注局部特征的投影。學(xué)者Lowe 提出一種不變階特征轉(zhuǎn)換(Scale-Invariant Feature Transform,SIFT)方法[73]。針對此方法,文獻[74]提出一種具有局部特征旋轉(zhuǎn)不變性的Volumetric-SIFT(V-SIFT),如圖7。文獻[75]基于投影圖像的紋理,使用小波變換處理紋理圖像的像素值得到特征值,該方法可以很好地避免圖像分割過程中帶來的誤差影響。有研究引入加速特征袋的并行計算方法,將局部特征集成到整體特征向量中,但相應(yīng)的計算復(fù)雜度很高[76]。
從三維模型得到二維投影是一種模糊的降維過程,會丟失表達精度。在一些應(yīng)用場景中,用戶也會輸入二維圖像搜索相似模型。因此近年來也有很多學(xué)者考慮根據(jù)二維圖像還原構(gòu)建三維模型,然后進行檢索的方法,稱為基于草圖三維重建的檢索方法。相較于其他三維模型檢索方法,使用草圖對三維模型進行檢索具有簡單、方便的優(yōu)點。這類方法的輸入是不包含三維深度信息的二維圖像信息,可能是模型的草圖,或只帶有線條的簡筆畫[77],不一定是準(zhǔn)確投影。根據(jù)輸入的二維圖像的數(shù)量,草圖三維重建分為單視圖輸入和多視圖輸入[78]。文獻[79]提出一種基于單張三維手繪草圖的卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)進行搜索,如圖8。文獻[80]提出一種基于多視角投影的復(fù)合卷積神經(jīng)網(wǎng)絡(luò),且對相機位置沒有約束。為了建立草圖和模型之間的弱連接關(guān)系,文獻[81]將模型的特征與草圖特征一起整合成一個多金字塔層次的特征,并設(shè)計出相應(yīng)的神經(jīng)網(wǎng)絡(luò)?;谌S草圖重建的檢索方法需要幾何學(xué)的知識重建三維模型,計算復(fù)雜。
圖7 基于面積描述的模型轉(zhuǎn)換為基于體積描述的模型[74]Fig.7 Area based model transforming to volume based model[74]
圖8 基于單張草圖的卷積神經(jīng)網(wǎng)絡(luò)檢索方法架構(gòu)Fig.8 CNN retrieval method framework based on single sketch
基于視覺特征的特征提取和檢索方法能夠借助發(fā)展較為成熟的圖像特征提取技術(shù),降低了三維模型特征提取的復(fù)雜度,獲得比較好的檢索效率,另外對噪聲的抗干擾能力強,擁有較好的魯棒性。三維模型的投影過程會丟失一些關(guān)于物體的結(jié)構(gòu)和空間信息。單方向的二維函數(shù)投影計算量最小,但也最容易丟失信息。多視角的投影組合后,會覆蓋盡可能多的三維物體表面,所以可以盡可能地保留信息,但同時會增加計算量。
另外,投影得到二維圖像之后,可以利用圖像處理領(lǐng)域非常多的較為成熟的方法,目前非常流行的深度學(xué)習(xí)方法也因此被引入了進來。先將將三維模型表征為一組二維視圖的集合,并以此為基礎(chǔ)構(gòu)建深度學(xué)習(xí)模型完成特征學(xué)習(xí)及模型分類。典型工作有:基于全景視圖的DeepPano 算法[82]、基于幾何圖像的Geometry Image 算法[83]以及多視角下的卷積神經(jīng)網(wǎng)絡(luò)(Multi-View Convolutional Neural Network,MVCNN[84-86],MVCNN 模型過程如圖9)、基于成對圖像的Pairwise 算法[87]等??梢灶A(yù)見,還會有更多深度學(xué)習(xí)方法被引入到投影檢索類方法中。
基于內(nèi)容的三維模型檢索方法面臨很多挑戰(zhàn):1)提取出準(zhǔn)確的特征仍然非常困難,而且特征的精度受旋轉(zhuǎn)、大小、分辨率影響[88],因此很多時候需要將模型變換到一個正則坐標(biāo)系中,變換過程仍然需要大量開銷。2)三維模型的描述方法多種多樣,對應(yīng)特征種類很多,仍然沒有一個簡單有效的標(biāo)準(zhǔn)格式。大多數(shù)的檢索算法只針對特定的描述和數(shù)據(jù)格式。某些場合下,某些描述特征對檢索結(jié)果沒有足夠的影響,卻會極大提升計算復(fù)雜度。3)隨著技術(shù)的發(fā)展,新的模型構(gòu)建技術(shù)快速出現(xiàn),而針對這類技術(shù)的模型檢索方法發(fā)展滯后。一個關(guān)鍵難點是如何有效地將新技術(shù)表達的模型轉(zhuǎn)變?yōu)橐阎摹⑦m用于已有的模型檢索方法的格式[89]。在原有的分類方法之后,深度學(xué)習(xí)的工具被引入進來。深度學(xué)習(xí)的優(yōu)點在于可以弱化特征選擇過程影響,而且有較好的普適性。
圖9 應(yīng)用多視角卷積神經(jīng)網(wǎng)絡(luò)的3D模型識別過程Fig.9 Application of MVCNN to 3D model recognition process
基于內(nèi)容的三維模型檢索技術(shù)可以解決模型本身的形狀相似性問題,提取的特征是對模型的物理形狀的反映,無法反映模型得內(nèi)涵意義,因此最終的檢索結(jié)果僅能反映模型之間形狀相匹配的特性,而無法反映該模型的本質(zhì)特征。例如,一支鉛筆和一根筷子外形上是相近的,但對用戶而言,它們是相異的物體。這就是前文提到的“語義鴻溝”現(xiàn)象。為解決此問題,基于語義的三維模型檢索技術(shù)產(chǎn)生并發(fā)展起來[8]。
在基于內(nèi)容檢索的基礎(chǔ)上,基于語義檢索技術(shù)同時利用了模型的語義知識,構(gòu)建出一個三維的語義學(xué)習(xí)框架,其中,基于內(nèi)容的特征稱為低層特征(Low-Level),基于語義知識的特征稱為高層特征(High-Level)[90]。主要解決方法有要求人機交互的相關(guān)反饋技術(shù)(Relevance Feedback)[91],利用統(tǒng)計學(xué)習(xí)理論獲取語義的高級信息的主動學(xué)習(xí)技術(shù)(Active Learning)[92],面向特定領(lǐng)域、需要建立領(lǐng)域內(nèi)規(guī)范知識的本體技術(shù)(Ontology)[93]。
相關(guān)性反饋技術(shù)是非常有效的技術(shù),它不斷將基于底層特征得到的搜索結(jié)果反饋給用戶,要求用戶給出是否“相關(guān)”的二值評價,然后對評價進行學(xué)習(xí),最終返回高層語義上最相似的結(jié)果模型[94]。如圖10,可以看出,該方法分為在線語義獲取和離線特征提取、語義學(xué)習(xí)兩個部分。搜索過程中,系統(tǒng)會和用戶進行多次交互行為。每次返回一批檢索結(jié)果,根據(jù)用戶的二值化評價結(jié)果進行迭代,再次搜索并返回結(jié)果,等待用戶評價,如此反復(fù),直到符合結(jié)束條件。該方法的主要改進和優(yōu)化思路是改進分類器性能,簡化交互流程。
Leng 等[95]提出了對特征向量進行加權(quán)的反饋技術(shù),較好地解決了小樣本問題和正負(fù)樣本數(shù)目差距過大的問題。近年來,更多模式識別中的分類技術(shù)與相關(guān)性反饋技術(shù)相融合[96]。如在分類工具中非常經(jīng)典的支持向量機(Support Vector Machine,SVM)[97-98]及其擴展SVM-OSS(Support Vector Machine-One Shoot Score)[99]、LibSVM(Support Vector Machine Library)[100]等。SVM 算法將用戶反饋回來的二元數(shù)據(jù)用于訓(xùn)練,然后將未標(biāo)記的樣本當(dāng)作測試樣本分類,之后返回正相關(guān)樣本,用分類計算的結(jié)果作為正負(fù)樣本的相似度度量值。
圖10 基于語義的檢索方法架構(gòu)示意圖Fig.10 Architecture of semantic-based retrieval method
SVM 的性能受訓(xùn)練樣本數(shù)量影響較大,在相關(guān)性反饋的應(yīng)用中,表現(xiàn)為正負(fù)樣本數(shù)目不對稱,正相關(guān)樣本數(shù)量遠(yuǎn)少于負(fù)相關(guān)樣本數(shù)量(非對稱問題)[101]。因此文獻[66]只采用SVM 作為負(fù)樣本的相似度距離值的度量,正樣本仍然用歐氏距離計算。另外,SVM的參數(shù)受實際問題影響較大,難以做到不同類別場合的通用性。文獻[102]采用半監(jiān)督學(xué)習(xí)思想,引入基于高斯核的超限學(xué)習(xí)機算法,放寬了對標(biāo)記樣本數(shù)量的要求,使搜索結(jié)果更精確。引入感知機、深度學(xué)習(xí)等分類方法后,相關(guān)性反饋的應(yīng)用范圍和準(zhǔn)確率都得到了提升。搭建好合適的網(wǎng)絡(luò)結(jié)構(gòu)、生成初始參數(shù)后,迭代訓(xùn)練[103]。
相關(guān)性反饋技術(shù)需要在檢索過程中和用戶進行交互,以完成整個過程。實際使用過程中,而用戶未必可以忍受多輪的交互和標(biāo)記行為。另外數(shù)據(jù)樣本的非對稱問題極大影響了分類器的效果。
相關(guān)性反饋技術(shù)沒有長期存儲語義知識,每次使用過程都依賴于當(dāng)前用戶的反饋結(jié)果。如果用戶需要多次查詢同一個模型,而且用戶的檢索需求或語義知識保持不變,那么采用短期學(xué)習(xí)機制的算法需要用戶多次經(jīng)歷反饋過程。一種較好的思路是引入長期學(xué)習(xí)機制,將針對某一特定類型的模型的標(biāo)記結(jié)果作為參數(shù)的一部分進行保存,供下一次檢索時使用[104],即主動學(xué)習(xí)(長期學(xué)習(xí))技術(shù)。
該類方法最早使用日志記錄用戶的反饋結(jié)果,相關(guān)算法將挖掘歷史反饋結(jié)果,調(diào)整當(dāng)前輸出值[105]。隨后的研究傾向于和機器學(xué)習(xí)融合。實際上大部分針對圖像的機器學(xué)習(xí)/主動學(xué)習(xí)的檢索算法也可以用于三維模型檢索,并且都能取得不錯的效果。文獻[106]使用半監(jiān)督學(xué)習(xí)的SVM 進行聚類,并提出一種在分類中使用基于內(nèi)容的搜索方法的整合策略。文獻[107]提出一種基于核密度估計的分類方法。該小組另一項研究針對僅存在正向反饋的數(shù)據(jù),提出分別估計正向反饋數(shù)據(jù)和未標(biāo)記數(shù)據(jù)的概率密度,然后計算信息量的期望值[108]。該方法在一分類問題(One-class classification)中表現(xiàn)較好[109]。文獻[110]提出基于高斯過程的一分類方法,并比較了源于高斯過程回歸和近似高斯過程的各類方法。
主動學(xué)習(xí)中需要更新存儲的檢索記錄,將其整合進新的特征向量,故特征向量維數(shù)較高。因此相關(guān)研究提出多種降維方法,如基于主成分分析(PCA)的線性降維,包括PCADAISY 描述符[111]、IKPCA[112](Improved Kernel-PCA)等和基于流型學(xué)習(xí)的非線性降維,如Isomap(Isometric Feature Mapping)[113]、拉普拉斯變換[114]等。
主動學(xué)習(xí)技術(shù)會記錄用戶的反饋數(shù)據(jù),將記錄的歷史數(shù)據(jù)和最新的在線反饋結(jié)果綜合加以分析,最終得到檢索結(jié)果。因此,對反饋數(shù)據(jù)的記錄、分析和挖掘,是該類方法的一個熱點。另外,如何將主動學(xué)習(xí)技術(shù)與目前的神經(jīng)網(wǎng)絡(luò)更好地融合,也是一個難點。
本體(Ontology)是某一領(lǐng)域內(nèi)的知識和概念的一種規(guī)范的形式化表示[115]。對領(lǐng)域進行劃分可以將待檢索模型限定在一個更符合用戶實際需要的子集中。本體最早是對語言學(xué)進行定義的工具,擁有一整套成熟的理論體系和表達方式OWL(Web Ontology Language),如圖11。后來學(xué)者發(fā)現(xiàn)可以用來定義復(fù)雜的概念與屬性的關(guān)系,因此該方法很快在計算機領(lǐng)域流行。
圖11 基于本體的語義檢索的過程Fig.11 Process of semantic retrieval based on ontology
本體技術(shù)依賴于事先對模型庫進行的語義標(biāo)注工作。在文獻[116]中,將這一技術(shù)概括為三個要素:形狀、動作和功能。即用戶輸入功能信息,本體自動推演,查找相應(yīng)的動作和形狀信息,然后綜合計算得到符合功能的模型。對其進行的改進主要是改進其對模型特性的表達能力和改進對新模型的搜索能力。比較有代表性的工作有:文獻[117]提出一種基于規(guī)則引擎的語義網(wǎng)規(guī)則語言(Semantic Web Rule Language,SWRL)的本體三維模型搜索方法;文獻[118]對其進行了改進,使其可以更好地應(yīng)用在異構(gòu)模型中;文獻[119]從物理性狀特征中提取語義特征,并提出一種融合語義特征與物理性狀特征的本體分類技術(shù);文獻[120]提出一種忽視存儲、特征提取的,基于內(nèi)容的本體搜索方法。本體技術(shù)與關(guān)鍵詞關(guān)系較為緊密,結(jié)構(gòu)化與非結(jié)構(gòu)化的文本信息挖掘也有所提及[121]。
本體技術(shù)在三維模型檢索的工業(yè)化上已經(jīng)有了很多成功的范例[122]。構(gòu)建正確的本體語義網(wǎng)絡(luò)需要相關(guān)領(lǐng)域?qū)<业呐?,而且隨著新模型的發(fā)明,原有本體語義網(wǎng)絡(luò)的擴展工作也很重要。對本體的動態(tài)生成與維護工作也是一個研究點[123]。另外,如何在現(xiàn)有的產(chǎn)品知識規(guī)范的基礎(chǔ)上,實現(xiàn)高級語義知識的自動提取和演繹推理,也是一個值得深入的重點。
三維模型檢索和圖像檢索類似,性能依賴于特征提取過程?;趦?nèi)容的檢索方法從模型的物理形狀、骨架出發(fā),最終檢索出一個外形相似的模型。基于語義的檢索方法在分析模型的物理性狀之外,也考慮到實際物體的意義與內(nèi)涵,在形狀相似的基礎(chǔ)上達到了意義相似,最終檢索出一個更符合用戶需求的模型?;谡Z義的檢索方法由基于內(nèi)容的檢索方法的衍生,而基于內(nèi)容的檢索方法仍然有發(fā)展空間。因為兩種檢索方法都需要進行模式分類,所以與機器學(xué)習(xí)、深度學(xué)習(xí)相結(jié)合的方法也更受到重視?;诒倔w的語義檢索方法和領(lǐng)域知識的關(guān)聯(lián)性較強,但是受到維護技術(shù)、檢索技術(shù)的制約,仍然有廣闊的發(fā)展前景。