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