本發(fā)明涉及一種形狀分析的處理方法,屬于計(jì)算機(jī)圖形學(xué)技術(shù)領(lǐng)域,具體地說(shuō)是一種三維模型部件類別自動(dòng)標(biāo)注方法。
背景技術(shù):
對(duì)三維模型部件構(gòu)成的理解是形狀理解和高層次幾何處理的基礎(chǔ)。近年來(lái),研究人員逐步將發(fā)展成熟的機(jī)器學(xué)習(xí)技術(shù)引入到三維形狀分析研究中,數(shù)據(jù)驅(qū)動(dòng)的幾何模型的聯(lián)合分割方法正越來(lái)越受到關(guān)注。利用數(shù)據(jù)驅(qū)動(dòng)的“信息傳遞”這一核心概念,可在輸入的預(yù)先指定或計(jì)算的樣本形狀和需要分析和處理的目標(biāo)形狀之間建立一種相關(guān)性,并可將感興趣的信息從樣本形狀傳遞到目標(biāo)形狀。因此,數(shù)據(jù)驅(qū)動(dòng)的形狀分割可產(chǎn)生一致性的具有語(yǔ)義標(biāo)注的部件,并能夠有效地支持三維模型的合成、實(shí)例建模、以及紋理合成等后續(xù)幾何處理任務(wù)。
基于學(xué)習(xí)中是否具有可用的標(biāo)簽標(biāo)注數(shù)據(jù)作為輸入信息,可將三維形狀分割劃分為:有監(jiān)督分割,無(wú)監(jiān)督分割和半監(jiān)督分割。一般來(lái)講,有監(jiān)督學(xué)習(xí)方法通過(guò)給定的標(biāo)注數(shù)據(jù)傾向于輸出與人們期望相接近的結(jié)果,從而獲得更高的分割精度。有監(jiān)督形狀分割通常形式化為一個(gè)分類問(wèn)題。如文獻(xiàn)1:KALOGERAKIS E.,HERTZMANN A.,SINGH K.:Learning 3d mesh segmentation and labeling.ACM Trans.Graph.29(2010),102:1–102:12.將分割問(wèn)題形式化為條件隨機(jī)場(chǎng)CRF的優(yōu)化問(wèn)題。其條件隨機(jī)場(chǎng)CRF模型,包含評(píng)價(jià)面片與標(biāo)簽一致性的一元項(xiàng),以及相鄰面片標(biāo)簽一致性的二元項(xiàng),其一元項(xiàng)和二元項(xiàng)均可根據(jù)標(biāo)注信息通過(guò)JointBoost分類器學(xué)習(xí)得到。文獻(xiàn)2:GUO K.,Zou D.,and Chen X.3D Mesh Labeling via Deep Convolutional Neural Networks[J].ACM Transactions on Graphics,2015,35(1):3:1-3:12.通過(guò)深度神經(jīng)網(wǎng)絡(luò)從數(shù)據(jù)中學(xué)習(xí)得到一種有效且魯棒的形狀表示,來(lái)進(jìn)一步提高分割和標(biāo)注性能。然而,上述方法的訓(xùn)練過(guò)程是非常耗時(shí)的,如僅對(duì)6個(gè)形狀進(jìn)行訓(xùn)練時(shí),訓(xùn)練過(guò)程就需要耗費(fèi)幾個(gè)小時(shí)。為了提高訓(xùn)練效率,文獻(xiàn)3:XIE Z.,XU K.,LIU L.,XIONG Y.:3d shape segmentation and labeling via extreme learning machine.Computer Graphics Forum 33,5(2014).則基于ELM分類器進(jìn)行面片的分類,訓(xùn)練過(guò)程大大加快,當(dāng)訓(xùn)練6個(gè)形狀時(shí)平均僅需不到1分鐘時(shí)間。然而,該方法僅僅考慮了根據(jù)訓(xùn)練數(shù)據(jù)中的面片標(biāo)注信息來(lái)產(chǎn)生一個(gè)面片分類器,并沒(méi)有利用標(biāo)注數(shù)據(jù)中所給出的邊界信息,而是通過(guò)對(duì)目標(biāo)形狀進(jìn)行過(guò)分割獲取大致的邊界位置,再進(jìn)行優(yōu)化,其最終的分割結(jié)果質(zhì)量極大地依賴于過(guò)分割的結(jié)果。本發(fā)明公開(kāi)的方法則通過(guò)修改ELM中神經(jīng)元的激活函數(shù),進(jìn)一步調(diào)整ELM的分類效果和分類時(shí)間,并將標(biāo)注數(shù)據(jù)中的邊界信息也加以充分利用。根據(jù)面片分類標(biāo)注概率分布和網(wǎng)格邊分類概率分布,構(gòu)建圖模型,通過(guò)多標(biāo)簽圖割優(yōu)化方法精調(diào)獲得更為平滑和精確的分割結(jié)果。
技術(shù)實(shí)現(xiàn)要素:
發(fā)明目的:本發(fā)明所要解決的技術(shù)問(wèn)題是針對(duì)現(xiàn)有技術(shù)的不足,提供一種快速的三維模型部件類別自動(dòng)標(biāo)注方法,用于支持對(duì)三維模型進(jìn)行快速地自動(dòng)分割與標(biāo)注。
為了解決上述技術(shù)問(wèn)題,本發(fā)明公開(kāi)了一種三維模型部件類別自動(dòng)標(biāo)注方法,包括以下步驟:
步驟1,訓(xùn)練三維模型標(biāo)注訓(xùn)練集,訓(xùn)練集中的三維模型為同類模型且模型中部件已給出標(biāo)準(zhǔn)標(biāo)注,其中標(biāo)注信息包括三維模型中每個(gè)網(wǎng)格面片從屬于構(gòu)成部件的類別標(biāo)注以及每條網(wǎng)格邊從屬于邊界邊的類別標(biāo)注,通過(guò)對(duì)三維模型標(biāo)注訓(xùn)練集進(jìn)行快速訓(xùn)練,獲得用于對(duì)目標(biāo)三維模型進(jìn)行分割與標(biāo)注的快速面片標(biāo)注模型和快速網(wǎng)格邊標(biāo)注模型,并獲得三維模型面片分類標(biāo)注概率分布和網(wǎng)格邊分類標(biāo)注概率分布,并學(xué)習(xí)得到圖割模型的平滑項(xiàng)權(quán)重;
步驟2,標(biāo)注目標(biāo)三維模型:利用步驟1得到的快速面片標(biāo)注模型和快速網(wǎng)格邊標(biāo)注模型分別對(duì)目標(biāo)三維模型進(jìn)行分割與標(biāo)注,獲得目標(biāo)三維模型的每個(gè)面片從屬于構(gòu)成部件的類別標(biāo)注以及每條網(wǎng)格邊從屬于邊界邊的類別標(biāo)注,構(gòu)建圖模型,通過(guò)多標(biāo)簽圖割優(yōu)化得到平滑的分割和標(biāo)注結(jié)果。
步驟1包括以下步驟:
步驟1-1,對(duì)訓(xùn)練集中所有三維模型進(jìn)行預(yù)處理,提取每個(gè)網(wǎng)格面片的面片特征和每條網(wǎng)格邊的邊特征;
步驟1-2,訓(xùn)練集中三維模型的所有面片構(gòu)成訓(xùn)練網(wǎng)格面片集,采用改進(jìn)的極限學(xué)習(xí)機(jī)方法(ELM,extreme learning machine),對(duì)訓(xùn)練網(wǎng)格面片集中的每個(gè)網(wǎng)格面片的面片特征及其標(biāo)準(zhǔn)標(biāo)注進(jìn)行快速訓(xùn)練,獲得快速面片標(biāo)注模型;
步驟1-3,訓(xùn)練集中三維模型的所有網(wǎng)格邊構(gòu)成訓(xùn)練網(wǎng)格邊集,采用改進(jìn)的極限學(xué)習(xí)機(jī)方法對(duì)訓(xùn)練網(wǎng)格邊集中的每條網(wǎng)格邊的邊特征及其標(biāo)準(zhǔn)標(biāo)注進(jìn)行快速訓(xùn)練,獲得快速網(wǎng)格邊標(biāo)注模型。
步驟1-4,獲得三維模型面片分類標(biāo)注概率分布和網(wǎng)格邊分類標(biāo)注概率分布,并學(xué)習(xí)得到圖割模型的平滑項(xiàng)權(quán)重。
步驟1-1中所述對(duì)訓(xùn)練集中所有三維模型進(jìn)行預(yù)處理包括模型歸一化處理和特征提取,其中,模型歸一化處理包括以下步驟:
步驟1-1-1,將訓(xùn)練集中的三維模型的質(zhì)心移動(dòng)到坐標(biāo)原點(diǎn),三維模型的質(zhì)心通過(guò)計(jì)算模型上所有頂點(diǎn)的面積加權(quán)平均值獲得;
步驟1-1-2,計(jì)算訓(xùn)練集中的三維模型每個(gè)面片中心到其質(zhì)心的歐式距離,取所有歐式距離的中值作為規(guī)范項(xiàng),將訓(xùn)練集中的三維模型上各點(diǎn)的坐標(biāo)除以該規(guī)范項(xiàng),完成訓(xùn)練集中的三維模型的歸一化處理;
特征提取包括以下步驟:
步驟1-1-3,將訓(xùn)練集中的三維模型每個(gè)網(wǎng)格面片的面片特征,由曲率特征、PCA特征、形狀直徑特征、平均測(cè)地距離特征和形狀上下文特征級(jí)聯(lián)形成一個(gè)特征向量;
步驟1-1-4,將訓(xùn)練集中的三維模型每條網(wǎng)格邊的邊特征,由邊二面角特征、邊鄰域頂點(diǎn)的二面角特征,邊兩側(cè)鄰域頂點(diǎn)的曲率差和導(dǎo)數(shù)特征、共享網(wǎng)格邊的兩個(gè)鄰接面片形狀直徑差異特征、共享邊的兩個(gè)鄰接面片的體形狀圖像差異征級(jí)聯(lián)形成一個(gè)特征向量。
步驟1-2包括以下步驟:
步驟1-2-1,將訓(xùn)練網(wǎng)格面片集中每個(gè)面片的面片特征作為單隱層前饋神經(jīng)網(wǎng)絡(luò)的輸入單元值進(jìn)行輸入;
步驟1-2-2,建模單隱層前饋神經(jīng)網(wǎng)絡(luò)為:
其中,j=1,2,…N,N為訓(xùn)練集網(wǎng)格面片集中面片的數(shù)量,xj為面片j對(duì)應(yīng)的面片特征向量,為隱藏層神經(jīng)元的數(shù)目;wi=(wi1,wi2,…,wiN)T表示隱藏層神經(jīng)元與輸入單元連接的權(quán)向量,可設(shè)置為(-1,1)之間的隨機(jī)數(shù);為偏移向量,可設(shè)置為(0,1)之間的隨機(jī)數(shù);g(y)為激活函數(shù);lj為根據(jù)模型所得的訓(xùn)練集中面片j的實(shí)際輸出,βk為輸出單元與隱藏層連接的輸出權(quán)重,k=1,2,…m,m為輸出層的維度,即分類的標(biāo)簽數(shù)目;
步驟1-2-3,選擇近似生物的神經(jīng)激活函數(shù)ReLu(Rectified Linear Units)函數(shù)作為激活函數(shù),相比傳統(tǒng)的sigmoid激活函數(shù)可以具有更好的單側(cè)抑制性,獲得相對(duì)寬闊的興奮邊界,獲取稀疏的激活性,從而可以獲得更快的訓(xùn)練的速度和更穩(wěn)定的訓(xùn)練精度。ReLu激活函數(shù)定義為:g(y)=max(0,y)。
步驟1-2-4,以零誤差逼近該模型時(shí),即:
其中,tj為訓(xùn)練集中各面片所對(duì)應(yīng)的標(biāo)準(zhǔn)標(biāo)注,g為步驟1-2-3中選擇的神經(jīng)激活函數(shù),隱藏層與輸出層之間的權(quán)矩陣可表示為:
其中,表示輸出單元與第r個(gè)隱藏層神經(jīng)元的權(quán)向量,
步驟1-2-5,根據(jù)步驟1-2-4中對(duì)模型進(jìn)行零誤差逼近,給出矩陣表示為Hβ=T,其中,T=(t1 t2 … tj),tj為訓(xùn)練集中面片j所對(duì)應(yīng)的標(biāo)準(zhǔn)標(biāo)注;g為步驟1-2-3中選擇的神經(jīng)激活函數(shù)。通過(guò)求解得到輸出權(quán)重。為矩陣的Moore-Penrose廣義逆。至此得到了面片的快速標(biāo)注模型。
步驟1-3中所述采用ELM對(duì)訓(xùn)練網(wǎng)格邊集中的每條網(wǎng)格邊的邊特征及其標(biāo)準(zhǔn)標(biāo)注進(jìn)行快速訓(xùn)練,獲得快速網(wǎng)格邊標(biāo)注模型,包括以下步驟:
步驟1-3-1,將訓(xùn)練網(wǎng)格邊集中每條邊的邊特征作為單隱層前饋神經(jīng)網(wǎng)絡(luò)的輸入單元值進(jìn)行輸入。
步驟1-3-2,建模單隱層前饋神經(jīng)網(wǎng)絡(luò)為:
其中,ej=1,2,…Ne,Ne為訓(xùn)練網(wǎng)格邊集中網(wǎng)格邊的數(shù)量,xej為網(wǎng)格邊ej對(duì)應(yīng)的邊特征,為隱藏層神經(jīng)元的數(shù)目,wei=(wei1,wei2,…,weiN)T表示隱藏層神經(jīng)元與輸入單元連接的權(quán)向量,可設(shè)置為(-1,1)之間的隨機(jī)數(shù);為偏移向量,可設(shè)置為(0,1)之間的隨機(jī)數(shù);g(y)為激活函數(shù),lej為根據(jù)模型所得的網(wǎng)格邊ej的實(shí)際輸出,βek為輸出單元與隱藏層連接的輸出權(quán)重,ek=1,2,…me,me為輸出層的維度,即分類的標(biāo)簽數(shù)目;
步驟1-3-3,選擇近似生物的神經(jīng)激活函數(shù)ReLu(Rectified Linear Units)函數(shù)作為激活函數(shù),相比傳統(tǒng)的sigmoid激活函數(shù)可以具有更好的單側(cè)抑制性,獲得相對(duì)寬闊的興奮邊界,獲取稀疏的激活性,從而可以獲得更快的訓(xùn)練的速度和更穩(wěn)定的訓(xùn)練精度。ReLu激活函數(shù)定義為:g(y)=max(0,y)。
步驟1-3-4,以零誤差逼近該模型時(shí),即:
其中,tej∈{1,2}為訓(xùn)練集中網(wǎng)格邊ej所對(duì)應(yīng)的標(biāo)準(zhǔn)標(biāo)注,分別對(duì)應(yīng)非邊界邊和邊界邊,g為步驟1-3-3中選擇的神經(jīng)激活函數(shù),隱藏層與輸出層之間的權(quán)矩陣可表示為:
其中,表示輸出單元與第l個(gè)隱藏層神經(jīng)元的權(quán)向量,為隱藏層神經(jīng)元的數(shù)量,me為輸出層單元數(shù)目,亦即分類標(biāo)簽數(shù)目。
步驟1-3-5,根據(jù)步驟1-2-4中對(duì)模型進(jìn)行零誤差逼近,給出矩陣表示為Heβe=Te,其中,Te=(te1 te2 … tej),tej為訓(xùn)練集中網(wǎng)格邊ej所對(duì)應(yīng)的標(biāo)準(zhǔn)標(biāo)注;g為步驟1-3-3中選擇的神經(jīng)激活函數(shù)。通過(guò)求解得到輸出權(quán)重。為矩陣的Moore-Penrose廣義逆。至此得到了網(wǎng)格邊的快速標(biāo)注模型。
步驟1-4包括以下步驟:
步驟1-4-1,采用面片標(biāo)注過(guò)程根據(jù)快速面片標(biāo)注模型對(duì)訓(xùn)練集中三維模型的面片集進(jìn)行部件類別標(biāo)注,具體步驟為將訓(xùn)練集中模型面片集的面片特征作為輸入,根據(jù)訓(xùn)練得到的面片快速標(biāo)注模型得到模型的輸出值,將輸出值通過(guò)softmax函數(shù)映射到[0,1],從而得到具有面片特征向量Xf的面片f分類概率分布P(lf,Xf),lf表示網(wǎng)格面片f的標(biāo)注。
步驟1-4-2,采用邊標(biāo)注過(guò)程根據(jù)快速網(wǎng)格邊標(biāo)注模型對(duì)訓(xùn)練集中三維模型的邊集進(jìn)行邊界邊類別標(biāo)注,具體步驟為將訓(xùn)練集中模型網(wǎng)格邊集的邊特征作為輸入,根據(jù)訓(xùn)練得到的網(wǎng)格邊快速標(biāo)注模型得到模型的輸出值,將對(duì)應(yīng)于邊界邊標(biāo)注的輸出值通過(guò)sigmoid函數(shù)映射到[0,1],從而得到具有邊特征向量Xe的邊界邊e的分類概率分布P(lf≠lf',Xe),lf'表示網(wǎng)格面片f'的標(biāo)注,面片f和面片f'為具有一條共享邊的相鄰面片;
步驟1-4-3,針對(duì)訓(xùn)練集中的每個(gè)三維模型構(gòu)建圖模型,圖的節(jié)點(diǎn)為網(wǎng)格面片,圖的邊為相鄰面片f和面片f'間的共享邊,面片的分類標(biāo)注的負(fù)概率對(duì)數(shù)作為圖割優(yōu)化的數(shù)據(jù)項(xiàng)Edata(lf,Xf),Edata(lf,Xf)=-ln(P(lf|Xf)),網(wǎng)格邊分類標(biāo)注的負(fù)概率對(duì)數(shù)Eweight(lf≠lf',Xe)×α作為圖模型中邊的權(quán)重,用于調(diào)節(jié)分割邊界的平滑程度,采用多標(biāo)簽圖割優(yōu)化算法計(jì)算優(yōu)化后的目標(biāo)三維模型中每個(gè)網(wǎng)格面片的標(biāo)注。α的取值范圍為[0,10],在此范圍內(nèi),設(shè)置步長(zhǎng)為0.1進(jìn)行網(wǎng)格搜索優(yōu)化,找到使得訓(xùn)練集中三維模型的平均分割精度最高的α,記為圖割模型的最優(yōu)平滑項(xiàng)權(quán)重αbest。
步驟2包括如下步驟:
步驟2-1,對(duì)目標(biāo)三維模型進(jìn)行預(yù)處理,提取每個(gè)網(wǎng)格面片的面片特征和每條網(wǎng)格邊的邊特征;
步驟2-2,利用步驟1得到的快速面片標(biāo)注模型和快速網(wǎng)格邊標(biāo)注模型,采用面片標(biāo)注過(guò)程對(duì)目標(biāo)三維模型的面片集進(jìn)行部件類別標(biāo)注,采用邊標(biāo)注過(guò)程對(duì)目標(biāo)三維模型的邊集進(jìn)行邊界邊類別標(biāo)注;
步驟2-3,根據(jù)目標(biāo)三維模型的面片分類標(biāo)注概率分布和網(wǎng)格邊類別標(biāo)注概率分布,構(gòu)建圖模型,通過(guò)多標(biāo)簽圖割優(yōu)化進(jìn)行分割邊界的平滑,得到優(yōu)化后的目標(biāo)三維模型面片類別標(biāo)注結(jié)果,完成對(duì)目標(biāo)三維模型部件類別的快速自動(dòng)標(biāo)注。
步驟2-1中所述對(duì)目標(biāo)三維模型進(jìn)行預(yù)處理包括模型歸一化處理和特征提取,其中,模型歸一化處理包括以下步驟:
步驟2-1-1,將目標(biāo)三維模型的質(zhì)心移動(dòng)到坐標(biāo)原點(diǎn),三維模型的質(zhì)心通過(guò)計(jì)算模型上所有頂點(diǎn)的面積加權(quán)平均值獲得;
步驟2-1-2,計(jì)算目標(biāo)三維模型每個(gè)面片中心到其質(zhì)心的歐式距離,取所有歐式距離的中值作為規(guī)范項(xiàng),將目標(biāo)三維模型上各點(diǎn)的坐標(biāo)除以該規(guī)范項(xiàng),完成目標(biāo)三維模型的歸一化處理;
特征提取包括以下步驟:
步驟2-1-3,將目標(biāo)三維模型每個(gè)網(wǎng)格面片的面片特征,由曲率特征、PCA特征、形狀直徑特征、平均測(cè)地距離特征和形狀上下文特征級(jí)聯(lián)形成一個(gè)特征向量;
步驟2-1-4,將目標(biāo)三維模型每條網(wǎng)格邊的邊特征,由邊二面角特征、邊鄰域頂點(diǎn)的二面角特征,邊兩側(cè)鄰域頂點(diǎn)的曲率差和導(dǎo)數(shù)特征、共享網(wǎng)格邊的兩個(gè)鄰接面片形狀直徑差異特征、共享邊的兩個(gè)鄰接面片的體形狀圖像差異征級(jí)聯(lián)形成一個(gè)特征向量。
步驟2-2包括以下步驟:
步驟2-2-1,采用面片標(biāo)注過(guò)程根據(jù)快速面片標(biāo)注模型對(duì)目標(biāo)三維模型的面片集進(jìn)行部件類別標(biāo)注,具體步驟為將目標(biāo)模型面片集的面片特征作為輸入,根據(jù)訓(xùn)練得到的面片快速標(biāo)注模型得到模型的輸出值,為了能夠更好地表示每個(gè)面片標(biāo)注為不同標(biāo)簽的概率,將輸出值通過(guò)softmax函數(shù)映射到[0,1],從而得到具有面片特征向量Xf的面片f分類概率分布P(lf,Xf),lf表示網(wǎng)格面片f的標(biāo)注。
采用邊標(biāo)注過(guò)程根據(jù)快速網(wǎng)格邊標(biāo)注模型對(duì)目標(biāo)三維模型的邊集進(jìn)行邊界邊類別標(biāo)注,具體步驟為將目標(biāo)模型網(wǎng)格邊集的邊特征作為輸入,根據(jù)訓(xùn)練得到的網(wǎng)格邊快速標(biāo)注模型得到模型的輸出值,將對(duì)應(yīng)于邊界邊標(biāo)注的輸出值通過(guò)sigmoid函數(shù)映射到[0,1],從而得到具有邊特征向量Xe的邊界邊e的分類概率分布P(lf≠lf',Xe),lf表示網(wǎng)格面片f的標(biāo)注,lf'表示網(wǎng)格面片f'的標(biāo)注,面片f和面片f'為具有一條共享邊相鄰面片;
步驟2-2-2,針對(duì)目標(biāo)三維模型構(gòu)建圖模型,圖的節(jié)點(diǎn)為網(wǎng)格面片,圖的邊為相鄰面片f和面片f'間的共享邊,面片的分類標(biāo)注的負(fù)概率對(duì)數(shù)作為圖割優(yōu)化的數(shù)據(jù)項(xiàng)Edata(l,Xf),網(wǎng)格邊分類標(biāo)注的負(fù)概率對(duì)數(shù)Eweight(lf≠lf',Xe)×αbest作為圖模型中邊的權(quán)重,用于進(jìn)行分割邊界的平滑優(yōu)化,采用多標(biāo)簽圖割優(yōu)化算法計(jì)算優(yōu)化后的目標(biāo)三維模型中每個(gè)網(wǎng)格面片f的標(biāo)注lf。
有益效果:本發(fā)明具有以下優(yōu)點(diǎn):首先,本發(fā)明可對(duì)同種類型的三維模型標(biāo)注訓(xùn)練集進(jìn)行快速訓(xùn)練學(xué)習(xí),獲得該類三維模型的快速面片標(biāo)注模型和快速網(wǎng)格邊標(biāo)注模型;其次,本發(fā)明訓(xùn)練時(shí)間相比于以往的有監(jiān)督學(xué)習(xí)時(shí)間大大減少,訓(xùn)練時(shí)間可從幾小時(shí),縮減為幾秒鐘;最后,本發(fā)明不僅利用了訓(xùn)練集中三維模型的面片標(biāo)注信息,還進(jìn)一步利用了訓(xùn)練集中三維模型的網(wǎng)格邊標(biāo)注信息,從而進(jìn)一步提高分割和標(biāo)注精度。
附圖說(shuō)明
下面結(jié)合附圖和具體實(shí)施方式對(duì)本發(fā)明做更進(jìn)一步的具體說(shuō)明,本發(fā)明的上述和/或其他方面的優(yōu)點(diǎn)將會(huì)變得更加清楚。
圖1是本發(fā)明的處理流程示意圖。
圖2a是面片的標(biāo)準(zhǔn)標(biāo)注。
圖2b是網(wǎng)格邊的標(biāo)準(zhǔn)標(biāo)注。
圖3a是一個(gè)待標(biāo)注的三維模型。
圖3b是本發(fā)明由圖2a訓(xùn)練集學(xué)習(xí)的快速面片標(biāo)注模型對(duì)圖3a的目標(biāo)三維模型進(jìn)行面片標(biāo)注的結(jié)果。
圖3c是本發(fā)明由圖2b訓(xùn)練集訓(xùn)練得到的快速邊標(biāo)注模型對(duì)圖3a的目標(biāo)三維模型進(jìn)行網(wǎng)格邊標(biāo)注的結(jié)果。
圖3d是本發(fā)明由訓(xùn)練集學(xué)習(xí)得到的面片標(biāo)注和網(wǎng)格邊標(biāo)注概率構(gòu)建圖模型,進(jìn)行多標(biāo)簽圖割優(yōu)化后的對(duì)圖3a的目標(biāo)三維模型進(jìn)行面片標(biāo)注的結(jié)果,即最終的分割標(biāo)注結(jié)果。
具體實(shí)施方式
本發(fā)明公開(kāi)的一種快速的三維模型部件類別自動(dòng)標(biāo)注方法,具體包括以下步驟(圖1是整個(gè)方法的流程圖):
步驟一,三維模型標(biāo)注訓(xùn)練集的快速訓(xùn)練:訓(xùn)練集中為同類模型且模型中部件已給出標(biāo)準(zhǔn)標(biāo)注,其中標(biāo)注信息包括三維模型中每個(gè)網(wǎng)格面片從屬于構(gòu)成部件的類別標(biāo)注以及每條網(wǎng)格邊從屬于邊界邊的類別標(biāo)注。如圖2a所示,為面片的標(biāo)準(zhǔn)標(biāo)注。圖2b是網(wǎng)格邊的標(biāo)準(zhǔn)標(biāo)注。每個(gè)飛機(jī)模型網(wǎng)格面片都通過(guò)不同顏色指示的不同標(biāo)注類進(jìn)行標(biāo)注,訓(xùn)練集中的標(biāo)注為標(biāo)準(zhǔn)標(biāo)注。通過(guò)對(duì)三維模型標(biāo)注訓(xùn)練集進(jìn)行快速訓(xùn)練,獲得可用于對(duì)未知三維模型進(jìn)行分割與標(biāo)注的快速面片標(biāo)注模型和邊界標(biāo)注模型。并根據(jù)訓(xùn)練集數(shù)據(jù)學(xué)習(xí)得到圖割模型的平滑項(xiàng)權(quán)重。
步驟二,目標(biāo)三維模型的標(biāo)注:利用三維模型標(biāo)注訓(xùn)練集的訓(xùn)練過(guò)程所得快速面片標(biāo)注模型和快速網(wǎng)格邊標(biāo)注模型分別對(duì)目標(biāo)三維模型的面片和網(wǎng)格邊進(jìn)行標(biāo)注,從而獲得目標(biāo)三維模型的每個(gè)面片從屬于構(gòu)成部件的類別標(biāo)注以及每條網(wǎng)格邊從屬于邊界邊的類別標(biāo)注概率,構(gòu)建圖模型,并通過(guò)多標(biāo)簽圖割優(yōu)化得到平滑的分割和標(biāo)注結(jié)果。
下面具體介紹各個(gè)步驟的主要流程:
1、三維模型標(biāo)注訓(xùn)練集的快速訓(xùn)練
通過(guò)對(duì)三維模型標(biāo)注訓(xùn)練集進(jìn)行快速訓(xùn)練,獲得可用于對(duì)未知三維模型進(jìn)行標(biāo)注的快速面片標(biāo)注模型和快速網(wǎng)格邊標(biāo)注模型。其中包括對(duì)訓(xùn)練集中所有三維模型進(jìn)行預(yù)處理,采用改進(jìn)的ELM方法獲得快速面片標(biāo)注模型和快速網(wǎng)格邊標(biāo)注模型三個(gè)步驟。
1.1、三維模型預(yù)處理
三維模型預(yù)處理過(guò)程包括模型歸一化處理和特征提取兩個(gè)步驟。
輸入:三維模型標(biāo)注訓(xùn)練集。
輸出:三維模型標(biāo)注訓(xùn)練集所有面片的面片特征和所有網(wǎng)格邊的邊特征。
步驟1對(duì)訓(xùn)練集中所有三維模型進(jìn)行預(yù)處理,得到歸一化的三維模型集。包括首先將三維模型的質(zhì)心移動(dòng)到坐標(biāo)原點(diǎn),模型的質(zhì)心通過(guò)計(jì)算模型上所有頂點(diǎn)的面積加權(quán)平均值獲得,即每個(gè)頂點(diǎn)的坐標(biāo)通過(guò)包含該頂點(diǎn)的所有面片面積和作為權(quán)重。質(zhì)心mV(x,y,z)的計(jì)算為:
其中,V表示三維模型的頂點(diǎn)集,頂點(diǎn)i的三維坐標(biāo)為(xi,yi,zi),包含頂點(diǎn)i的表面面積為ai,Vnum為頂點(diǎn)集中的頂點(diǎn)數(shù)目。
然后計(jì)算三維模型每個(gè)面片中心到其質(zhì)心的歐式距離,取所有歐式距離的中值作為規(guī)范項(xiàng),將三維模型上各點(diǎn)的坐標(biāo)除以該規(guī)范項(xiàng),從而完成三維模型的歸一化處理。
步驟2提取三維模型每個(gè)網(wǎng)格面片的面片特征,包括曲率特征、PCA特征、形狀直徑特征、平均測(cè)地距離特征和形狀上下文特征,級(jí)聯(lián)形成一個(gè)特征向量。其中,曲率特征參照文獻(xiàn)4:Ohtake Y.,Belyaev A.,Seidel H.-P.Ridge-valley lines on meshes via implicit surface fitting.ACM Transactions on Graphics,2004,23(3):609-612.所述方法計(jì)算。PCA特征參照文獻(xiàn)1所述方法計(jì)算。形狀直徑函數(shù)特征參照文獻(xiàn)5:Shapira L.,Shalom S.,Shamir A.,Cohen-OrD.,ZhangH.Contextual part analogies in 3D objects.InternationalJournal of Computer Vision,2010,89(2-3):309-326.所述方法計(jì)算。平均測(cè)地距離特征參照文獻(xiàn)6:Hilaga M.,Shinagawa Y.,Kohmura T.,Kunii T.L.Topology matching for fully automatic similarity estimationof 3d shapes.Proceedings of the 28th annual conferenceon Computer graphics and interactive techniques(New York,NY,USA,2001),SIGGRAPH’01,ACM,pp.203-212.所述方法計(jì)算。形狀上下文特征參照文獻(xiàn)7:Belongie S.,Malik J.,Puzicha J.Shape matchingand object recognition using shape contexts.IEEE Transactions OnPattern Analysis and Machine Intelligence,2002,24(4):509-522.所述方法計(jì)算。
步驟3提取三維模型每條網(wǎng)格邊的邊特征,由邊二面角特征、邊鄰域頂點(diǎn)的二面角特征,邊兩側(cè)鄰域頂點(diǎn)的曲率差和導(dǎo)數(shù)特征、共享邊的兩個(gè)鄰接面片形狀直徑差異特征、共享邊的兩個(gè)鄰接面片的體形狀圖像差異特征,級(jí)聯(lián)形成一個(gè)特征向量。邊特征的提取參照文獻(xiàn)1所述方法計(jì)算。
1.2、快速面片標(biāo)注模型
快速面片標(biāo)注模型獲取過(guò)程對(duì)訓(xùn)練集中的三維模型的面片進(jìn)行快速分類訓(xùn)練,進(jìn)而獲得圖模型的數(shù)據(jù)項(xiàng)。
輸入:三維模型面片標(biāo)注訓(xùn)練集
輸出:圖模型的數(shù)據(jù)項(xiàng)。
步驟1根據(jù)三維模型面片的面片特征Xf與其標(biāo)準(zhǔn)標(biāo)注l采用改進(jìn)的ELM方法進(jìn)行訓(xùn)練。其中,標(biāo)注l∈L,L為預(yù)定義的所有可能的面片從屬類別標(biāo)注集合,如,“機(jī)身”、“機(jī)翼”、“垂直尾翼”和“水平尾翼”。根據(jù)訓(xùn)練集中所有三維模型的面片集及面片特征Xf,以及每個(gè)面片已有的標(biāo)準(zhǔn)標(biāo)注,采用文獻(xiàn)8:Huang G.-B.,Zhou H.,Ding X.,ZhangR.Extreme learning machine for regression and multiclass classification.,2012,42(2):513–529。所述的ELM分類方法進(jìn)行訓(xùn)練。在ELM分類訓(xùn)練的過(guò)程中,修改神經(jīng)元的激活函數(shù)為ReLu(Rectified Linear Units)函數(shù),從而在穩(wěn)定性和精度上進(jìn)一步改進(jìn)原文所述ELM分類效果,并進(jìn)一步減少計(jì)算開(kāi)銷(xiāo)。
步驟2針對(duì)待標(biāo)注模型面片在ELM分類器的分類輸出結(jié)果,通過(guò)softmax函數(shù)得到具有面片特征向量Xf的面片,標(biāo)注為l的概率分布P(l|Xf),圖模型相應(yīng)的數(shù)據(jù)項(xiàng)為:
Edata(l,Xf)=-ln(P(l|Xf))。
1.3、快速網(wǎng)格邊標(biāo)注模型
快速網(wǎng)格邊標(biāo)注模型獲取過(guò)程對(duì)訓(xùn)練集中的三維模型的網(wǎng)格邊進(jìn)行快速分類訓(xùn)練,進(jìn)而獲得圖模型中邊的權(quán)重。
輸入:三維模型網(wǎng)格邊標(biāo)注訓(xùn)練集
輸出:圖模型的邊權(quán)重。
步驟1根據(jù)三維模型網(wǎng)格邊的邊特征Xe與其標(biāo)準(zhǔn)標(biāo)注進(jìn)行快速訓(xùn)練。對(duì)于“邊界邊”而言,共享該網(wǎng)格邊的面片f和面片f'的面片標(biāo)注不同,即lf≠lf';反之,若共享該網(wǎng)格邊的面片f和面片f'的面片標(biāo)注相同,即lf≠lf',則為“非邊界邊”。根據(jù)訓(xùn)練集中所有三維模型的網(wǎng)格邊集及邊特征Xe,以及每條邊界邊已有的標(biāo)準(zhǔn)標(biāo)注,采用文獻(xiàn)7所述的ELM方法進(jìn)行訓(xùn)練。在ELM訓(xùn)練的過(guò)程中,采用ReLu函數(shù)作為神經(jīng)元的激活函數(shù),從而在穩(wěn)定性、精度與效率上進(jìn)一步改進(jìn)原文所述ELM分類效果。
步驟2針對(duì)待標(biāo)注模型網(wǎng)格邊在ELM分類器的測(cè)試輸出結(jié)果,通過(guò)sigmoid函數(shù)得到具有邊特征向量e的網(wǎng)格邊,邊界邊的概率分布P(lf≠lf'|Xe),圖模型相應(yīng)的邊權(quán)重為:
Eweight(lf≠lf',Xe)=-ln(P(lf≠lf',Xe))
1.4、根據(jù)訓(xùn)練集數(shù)據(jù)學(xué)習(xí)得到圖割優(yōu)化平滑項(xiàng)的最佳權(quán)重。
輸入:訓(xùn)練集根據(jù)面片標(biāo)注模型得到的圖的數(shù)據(jù)項(xiàng)和邊權(quán)重。
輸出:圖割優(yōu)化平滑項(xiàng)的最佳權(quán)重。
步驟1針對(duì)訓(xùn)練集中的每個(gè)三維模型構(gòu)建圖模型,圖的節(jié)點(diǎn)為網(wǎng)格面片,圖的邊為相鄰面片f和面片f'間的共享邊,數(shù)據(jù)項(xiàng)為Edata(lf,Xf),Edata(lf,Xf)=-ln(P(lf|Xf)),平滑項(xiàng)Eweight(lf≠lf',Xe)×α作為圖模型中邊的權(quán)重,用于調(diào)節(jié)分割邊界的平滑程度,采用多標(biāo)簽圖割優(yōu)化算法計(jì)算優(yōu)化后的目標(biāo)三維模型中每個(gè)網(wǎng)格面片的標(biāo)注。α的取值范圍為[0,10],在此范圍內(nèi),設(shè)置步長(zhǎng)為0.1進(jìn)行網(wǎng)格搜索優(yōu)化,找到使得訓(xùn)練集中三維模型的平均分割精度最高的α,記為圖割模型的最優(yōu)平滑項(xiàng)權(quán)重αbest。
2、目標(biāo)三維模型的標(biāo)注
利用三維模型標(biāo)注訓(xùn)練集的訓(xùn)練過(guò)程所得的快速面片標(biāo)注模型和快速網(wǎng)格邊標(biāo)注模型對(duì)目標(biāo)三維模型進(jìn)行面片和網(wǎng)格邊的標(biāo)注,構(gòu)建圖模型,通過(guò)多標(biāo)簽圖割優(yōu)化獲得目標(biāo)三維模型構(gòu)成部件的類別標(biāo)注。該目標(biāo)三維模型為與訓(xùn)練集中模型從屬于同種類型且具有相同部件構(gòu)成,但尚未分割與標(biāo)注的三維模型,過(guò)程如下:
輸入:目標(biāo)三維模型。
輸出:目標(biāo)三維模型分割后的面片標(biāo)注。
步驟1對(duì)目標(biāo)模型進(jìn)行預(yù)處理,提取每個(gè)網(wǎng)格面片的面片特征和每條網(wǎng)格邊的邊特征。
步驟2采用面片標(biāo)注過(guò)程根據(jù)快速面片標(biāo)注模型對(duì)目標(biāo)三維模型的面片集進(jìn)行部件類別標(biāo)注,采用邊標(biāo)注過(guò)程根據(jù)快速網(wǎng)格邊標(biāo)注模型對(duì)目標(biāo)三維模型的邊集進(jìn)行邊界邊類別標(biāo)注。其中,面片分類和邊分類的ELM輸出值,分別通過(guò)softmax函數(shù)和sigmoid函數(shù)映射到[0,1],用于表示面片分類概率分布P(l|Xf)和邊界邊的概率分布P(lf≠lf'|Xe)。
步驟3針對(duì)目標(biāo)三維模型構(gòu)建圖模型,圖中節(jié)點(diǎn)為網(wǎng)格面片,邊為相鄰面片f和f'間的共享邊,面片的類別標(biāo)注負(fù)概率對(duì)數(shù)作為圖割優(yōu)化的數(shù)據(jù)項(xiàng)Edata(l,Xf),網(wǎng)格邊從屬于邊界邊的標(biāo)注負(fù)概率對(duì)數(shù)Eweight(lf≠lf',Xe)作為圖模型中邊的權(quán)重。采用文獻(xiàn)9:Boykov Y.,Veksler O.,Zabih R.Fast Approximate Energy Minimization via Graph Cuts.IEEE Transactions OnPattern Analysis and Machine Intelligence,2001,23(11):1222-1239.中的多標(biāo)簽圖割優(yōu)化算法,計(jì)算優(yōu)化后的目標(biāo)三維模型中每個(gè)網(wǎng)格面片f的標(biāo)注lf。
所述預(yù)處理過(guò)程對(duì)輸入的目標(biāo)三維模型進(jìn)行歸一化處理,提取每個(gè)網(wǎng)格面片的面片特征和每條網(wǎng)格邊的邊特征,過(guò)程如下:
輸入:目標(biāo)三維模型。
輸出:目標(biāo)三維模型中每個(gè)面片的面片特征和每條邊的邊特征。
所述面片標(biāo)注過(guò)程的目標(biāo)為輸入三維模型中的面片進(jìn)行初始標(biāo)注,標(biāo)注為l∈L,L為預(yù)定義的所有可能的標(biāo)注集合,如,“機(jī)身”、“機(jī)翼”、“水平尾翼”和“垂直尾翼”,過(guò)程如下:
輸入:快速面片標(biāo)注模型和目標(biāo)三維模型的面片集。
輸出:該目標(biāo)三維模型面片集中每個(gè)面片的分類概率分布P(l|Xf)。
所述邊標(biāo)注過(guò)程的目標(biāo)為輸入目標(biāo)三維模型中的網(wǎng)格邊進(jìn)行標(biāo)注。對(duì)于“邊界邊”而言,共享該網(wǎng)格邊的面片f和面片f'的面片標(biāo)注不同,即lf≠lf';反之,對(duì)于“非邊界邊”而言,共享該網(wǎng)格邊的面片f和面片f'的面片標(biāo)注相同,即lf=lf'。過(guò)程如下:
輸入:快速邊界標(biāo)注模型和目標(biāo)三維模型的網(wǎng)格邊集。
輸出:該目標(biāo)三維模型網(wǎng)格邊集中邊界邊的概率分布P(lf≠lf'|Xe)
所述構(gòu)建圖模型過(guò)程的目標(biāo)為對(duì)初始面片標(biāo)注進(jìn)行邊界的平滑與優(yōu)化,從而獲得對(duì)目標(biāo)三維模型的構(gòu)成部件的類別進(jìn)行標(biāo)注,過(guò)程如下:
輸入:圖模型,包括圖中節(jié)點(diǎn)的數(shù)據(jù)項(xiàng)Edata(l,Xf)=-ln(P(l|Xf)),平滑項(xiàng)Esmooth以及圖中節(jié)點(diǎn)間連接邊的權(quán)重Eweight(lf≠lf',Xe)×αbest=-ln(P(lf≠lf',Xe))×αbest。
輸出:目標(biāo)三維模型中每個(gè)面片f從屬于構(gòu)成部件類別的標(biāo)注lf。
步驟1構(gòu)建一個(gè)圖,圖的節(jié)點(diǎn)為三維模型的面片,相鄰面片間存在網(wǎng)格邊作為圖的邊,面片f和面片f'被標(biāo)注為標(biāo)注lf和標(biāo)注lf'時(shí),邊{f,f'}的權(quán)重Eweight(lf≠lf',Xe)為:
Eweight(lf≠lf',Xe)×αbest=-ln(P(lf≠lf',Xe))×αbest
步驟2計(jì)算數(shù)據(jù)項(xiàng)Edata(l,Xf):
Edata(l,Xf)=-ln(P(l|Xf))
步驟3設(shè)置平滑項(xiàng)Esmooth為主對(duì)角線為0,其它元素為1的Lnum階方陣,用于表示面片類別標(biāo)注標(biāo)簽之間的距離度量。其中,Lnum為面片的標(biāo)準(zhǔn)標(biāo)注類別數(shù)。
步驟4采用文獻(xiàn)9中的多標(biāo)簽圖割優(yōu)化算法,通過(guò)計(jì)算該圖最小割的方式,計(jì)算三維模型網(wǎng)格上每個(gè)面片的最佳標(biāo)號(hào)l,優(yōu)化圖模型,進(jìn)而求得優(yōu)化后目標(biāo)三維模型中每個(gè)網(wǎng)格面片f的標(biāo)注lf。
本發(fā)明中,如圖2所示為輸入的三維模型標(biāo)注訓(xùn)練集示例,通過(guò)本發(fā)明所述的快速三維模型部件類別自動(dòng)標(biāo)注方法,可對(duì)圖3a中模型進(jìn)行分割,得到初始的面片分類圖3b,邊分類概率圖3c,構(gòu)建圖模型并進(jìn)行圖割優(yōu)化后的面片標(biāo)注為如圖3d所示。
本發(fā)明提供了一種三維模型部件類別自動(dòng)標(biāo)注方法,具體實(shí)現(xiàn)該技術(shù)方案的方法和途徑很多,以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。本實(shí)施例中未明確的各組成部分均可用現(xiàn)有技術(shù)加以實(shí)現(xiàn)。