国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

局部相關點平衡的三維激光點云骨架提取

2022-11-28 06:09:38周明全李純輝王麗清張雨禾耿國華
光學精密工程 2022年22期
關鍵詞:法向鄰域骨架

周明全,李純輝,王麗清,張雨禾,耿國華

(西北大學 信息科學與技術學院,陜西 西安 710127)

1 引言

通過激光掃描設備掃描獲取物體的點云模型,具有簡單便捷、準確率高等優(yōu)點[1],成為目前最常用的數字化手段之一[2]。由一組骨架點和骨架點之間的拓撲關系[2-4]構成的點云模型骨架線能夠有效描述點云模型的整體形狀和拓撲結構[4-5]。因此,骨架線的計算、提取和匹配等成為計算機圖形學[6-7]、計算機視覺[8-9]和機器智能[10]等領域的研究熱點,并被廣泛應用于形狀分析[11]與重建[12]、路徑規(guī)劃[13-14]、動作和手勢識別[15-17]、模型檢索[18-20]以及植物分析[21-22]等任務中?;诠羌芊治龅南嚓P研究都需要以骨架提取為基礎,因此骨架線的提取至關重要。常見的骨架類型按照空間維度可以分為2D骨架和3D骨架兩類[12],其中2D骨架是由一組位于模型各分支的中間曲 線 構 成 的[4,6,23],而3D骨架[24]則是由 中 心曲面和中心曲線共同構成的。相較于3D骨架,2D骨架線具有信息壓縮程度高、拓撲關系明確等優(yōu)勢,因此其應用也更為廣泛[9]。

目前已有諸多研究人員開展了點云模型2D骨架線提取相關工作,具體可以分為:(1)基于質心Voronoi細 分(Centroidal Voronoi Tessellation,CVT)的方法[25-26]。該方法是骨架提取中應用最多的策略。例如:Lu等[26]通過變分特征將CVT概念推廣到圖中,將CVT應用在骨架提取的任務中,在提取骨架的同時還實現了對模型的形狀分割,但該方法時間復雜度較高,針對大規(guī)模點云模型處理時間較長。(2)基于平均曲率流(Mean Curvature Flow,MCF)的方法[27-29],該方法能提取到高質量的骨架。例如:Chuang等[29]發(fā)表了一種基于有限元跟蹤的快速MCF的方法,隨 后Tagliasacchi等[27]將MCF應 用 在 骨 架 提 取的任務中,通過分析流動的微分特征,發(fā)現MCF局部增加了形狀各向異性,利用其面積最小化的特性將曲率流推向極值,從而折疊輸入網格幾何體并獲得骨架結構。(3)基于拉普拉斯收縮的算法。Cao等[4]提出了一種基于拉普拉斯收縮的曲線骨架提取算法(Laplacian-Based Contraction,LBC)。但是這些方法只能應用在經過降噪、去除異常值等操作處理之后的模型上,難以應用于使用激光掃描設備所獲取的點云模型。(4)基于深度學習的方法。Atienza等[30]基于Pyramid UNets提出了PSPU-SkelNet,適用于從二維形狀點云模型中提取曲線骨架任務。Lin等[24]基于中軸變換(Medial Axis Transform,MAT)提出了Point2Skeleton(P2S),用于從三維點云模型中提取二維骨架,從而指導表面重構和分割。Dou等[31]基于覆蓋軸(Coverage Axis)提出一種深度學習的提取骨架的算法,其結果接近基于MAT的骨架提取算法。

適用于激光掃描點云模型的曲線骨架提取方法,大多都基于幾何學相關原理[2-7]。Tagliasacchi等[2]基于旋轉對稱軸(Rotational Symmetry Axis,ROSA)的概念,構造了一種可以針對缺失大量數據的不完整點云模型的曲線骨架提取方法。Huang等[6]將L1中軸(L1-Medial)應用于曲線骨架提取任務中,將L1中軸局部化自適應提取不同位置的中值點作為骨架點。Qin等[7]通過構建基于質量驅動拓撲感知的最優(yōu)傳輸方案提取粗糙曲線骨架(MdCS),然后使用能量正則化完成幾何優(yōu)化,最終獲得平滑曲線骨架。ROSA雖然能夠應對大面積缺失數據的原始掃描點云模型,但是旋轉對稱軸的計算需要無噪聲擾動的點云,因此針對噪聲點云效果較差。L1中軸骨架和MdCS雖然能應對存在噪聲、異常值和缺失數據的原始掃描點云模型,但是L1中軸骨架不能處理多分支結構的模型,MdCS拓撲結構準確度不高,且計算所需時間資源消耗巨大。

針對上述工作中存在的問題,受文獻[32-34]的啟發(fā),本文提出一種快速提取激光掃描點云骨架線的方法。該方法將初始骨架點定義為三維模型中具有對稱法向的最近相關點的中點,通過中點狀態(tài)的平衡化迭代得到最終的骨架點;然后使用主成分分析法(Principal Component Analysis,PCA)分析骨架點的方向一致性,從而得到骨架曲線段;最后將使用廣度優(yōu)先搜索(Breadth First Search,BFS)合并后的曲線段利用拉普拉斯平滑進行優(yōu)化并得到最終曲線骨架。本文實驗將此算法應用在通過激光掃描設備得到的點云模型上,驗證了算法的有效性、魯棒性和高效性。將提取的激光掃描點云的骨架線應用在點云模型的動作變換任務中,展示了骨架線的實際作用。

2 基本原理

本文的骨架提取方法主要可以分為兩步:提取骨架點和生成骨架線。首先,通過選擇具有對稱法向和最近距離的對稱點的中點,獲取初始骨架點,如圖1(a)所示;應用射線法去除模型外的初始骨架點,如圖1(b)所示;通過迭代來平衡骨架點并篩選權重大的骨架點組成最終骨架點,如圖1(c)所示。然后,基于PCA判斷骨架點的方向一致性并重建骨架曲線,采用廣度優(yōu)先遍歷算法合并骨架曲線,效果如圖1(d)所示;最后將平滑后的骨架曲線相連得到最終的曲線骨架,如圖1(e)所示;基于骨架的模型動作變換實際效果如圖1(f)所示。

圖1 本文曲線骨架提取算法的過程展示Fig.1 Pipeline of proposed method

2.1 提取骨架點

骨架點可以看作模型的部分采樣點投影到模型內部得到的局部中心點[6],也就是說,初始的骨架點是模型的點集通過采樣處理得到的子集;另外,直接對采樣點進行計算,還可以有效提高骨架線提取的效率,避免遍歷點云上的所有點數據。除了基于效率的考慮,對模型下采樣還能減少模型本身的一些不利因素對最終骨架的影響。例如,當模型不均勻時,通過均勻采樣便可以避免這一缺陷;當遇到噪聲時,采樣也會減少異常值噪聲對骨架提取任務的干擾。因此,本文算法首先進行隨機采樣,使得采樣點能均勻的覆蓋模型,從而避免骨架線變形。具體而言,對于一個離 散 點云模型P={pi}i∈I?R3,其中I是 點 云P的點數,將采樣點組成的集合記作Ps,從P中使用隨機算法獲得點的索引,本文實驗中采樣點的規(guī)模為0.1×I。

2.1.1 法向估計和重定向

本文中初始骨架點需要基于法向求解,所以首先需要估計采樣點的法向[35-36]。本文使用PCA對Ps中的點進行法向估計,即:ps及其在P上的鄰域點共同構成點集Pt,對Pt進行特征分解得到特征值和特征向量,將最小特征值對應的特征向量pn t作為ps的法向。具體如下,利用式(1)計算鄰域點集Pt的中心點pm:

此時ps和法向pnt應該滿足pnt使 得Pt中 所 有的鄰域點在方向pnt上的投影分布最密集:

式中:k=20,將pt-pm記作則有

由于上述過程計算的法向具有二義性[37],如圖2(a)所示,而這種二義性會影響骨架點的求解過程,所以還需要對法向的二義性進行消除,即法向的重定向。具體而言,對于兩個距離很近的采樣點pi,pj,如果他們的法向pni,pnj同向,則滿足≈1。本文使用深度優(yōu)先算法(Depth First Search,DFS)來快速完成重定向。具體而言,選擇距離Pt的中心點PsO最遠的采樣點pi,如果‖(pi+pni)-PsO‖>‖pi-PsO‖,則pni=-pni,反 之則不改變pni。隨后使用K最鄰近算法(K-Nearest Neighbor,KNN)可以直接得到pi的距離最近的一個Ps中的點pj,如果pni?pnj/(|pni|×|pnj|)≤-0.5,則pnj=-pnj,并將pj標記為已經訪問的狀態(tài),此時令pi=pj。通過KNN算法尋找一個沒有被標記為已訪問狀態(tài)的采樣點作為pj,重復上述過程,直到Pt中所有的點都被標記為訪問的狀態(tài)。此時Pt中所有的點都將指向模型的同側,消除了法向的二義性,如圖2(b)所示。用該重定向方法重定向之后的法向,都指向模型的內部。

圖2 法向二義性示意圖Fig.2 Schematic diagram of normal vector ambiguity

2.1.2 骨架點的求解

要進行骨架點識別,本節(jié)首先做以下定義:

定義一:對于采樣點集合Ps中的任意一點pi,存在pj∈P,j∈S{i}是和pi具有相反法向的點中距離pi最近的點,將pj和pi定義為一組相關點。

定義二:一組相關點的中點是初始骨架點。

對于Ps中的任意一點pi,從Ps中識別出一組法向與pni相反的點,在這里法向pni和pnj使用一個帶閾值的點積來判斷。在得到的這一組法向中,進一步找到特定點pj,使得pj到pi的歐氏距離最小,隨后計算出pj和pi的中點作為初始骨架點。當模型的分支之間的距離較小時,識別到的相關點可能并不在一個分支上,導致提取到無效的冗余骨架點,如圖1(a)中手臂和身體之間產生的無效骨架點,此時需要通過算法將不在模型中的相關點之間的中點,也就是無效的骨架點去除掉。具體而言,本文使用射線法來去除無效骨架點,從而得到有效骨架點。射線法具體是指從任意一點出發(fā),從該點射出的射線,如果與模型邊界的交點數量為奇數,則該點在模型內部;反之,如果交點為偶數,則該點在模型的外部,如圖3所示(彩圖見期刊電子版)。

圖3 (a)中所需判斷的點(被標記為紅色)在模型外部,黃色射線與模型的交點(被標記為綠色)有兩處,是偶數。(b)中所需判斷的點(被標記為紅色)處于模型內部,黃色射線與模型的交點(被標記為綠色)有一處,為奇數Fig.3 Figure(a)shows that when the point(marked red)to be judged is outside the model,the intersection of the yellow ray and the model(marked green)has two even numbers.The point(marked red)to be judged in the figure(b)is inside the model,and there is an odd number at the intersection of the yellow ray and the model(marked green)

在將無效的骨架點去除之后,效果如圖1(b)所示。當模型足夠簡單時,例如圓柱模型,這些點可以直接形成模型P的骨架,但是當模型不是簡單的基本幾何形狀時,還需要使初始骨架點進一步收斂到最終骨架點的位置。由于此時的有效骨架點qi∈Q可以看作是模型上的采樣點pi經過位置變換得到的,受文獻[38]的啟發(fā),在垂直于骨架點法向qni的平面上,在每個有效的骨架點qi處均勻地發(fā)射出m條射線,其中第j條和第j+m/2條射線的方向是相反的。從骨架點qi出發(fā),沿著每條射線方向迭代地向前搜索,直到靠近模型上的任意一點,將qi到該點的距離記作dj,將qi到模型上該點的方向標記為向量vqji。本文實驗中,m的數量為16條,被分為8對,每對由兩個方向相反的向量組成。對于點集Q中的任意一點qi,定義qi的能量Eqi為:

由上述定義可得到骨架點Q的平衡狀態(tài)如式(4)所示:

其中:NQ是Q中點的數量,r是模型的最小邊界球的半徑。根據上述定義,可知qi和qi+1之間的關系如式(5)所示:

其中,L=0.01是步長參數。當式(3)中能量梯度為0時,意味著任意一個qi的E=0,也就是qi的位置處于模型橫截面的中心位置,如圖4(c)所示。根據上述過程,便可以完成骨架點的提取。在獲取初始骨架點下個位置的同時也可以得到下次移動的方向,可以加速初始骨架點平衡化的過程。但是此時的骨架點數量還是遠遠大于最終用來生成骨架點的數量,所以還需要進一步從骨架點中篩選合適的骨架點。這里使用二次鄰域中權值比較的方式來完成骨架點的選擇。具體而言,對于一個骨架點qi,其權值被定義為骨架點qi的rknn鄰域內點的數量N。對于Q中任意一個骨架點qi,將qi的rknn鄰域中的點記作Q r,則對于Q r中所有的骨架點而言,應該保留的qr應該滿足式(6):

圖4 (a)展示的是得到垂直于qni的平面的方法,pi+1是pi距離最近的采樣點,(b)中骨架點qi處于不平衡的位置,(c)中骨架點qi處于平衡位置Fig.4(a)shows the method of obtaining the plane perpendicular to qni,and pi+1 is the nearest sampling point from pi,in(b),the skeleton point qi is in an unbalanced position,and in(c),the skeleton point qi is in an balanced position

2.2 骨架生成

上述迭代過程能夠得到一組骨架點Q={qi},i∈NQ,它是輸入點云模型P的各個分支的中間地帶,僅表示了模型P骨架的位置信息,而完整的骨架線還包含了骨架點之間及骨架分支之間的拓撲連接信息。所以本節(jié)計算骨架點Q的拓撲連接信息。

首先,使用PCA來檢查qi和它的鄰域點集是否滿足方向一致性的條件,隨后將滿足要求的鄰域點集生成模型曲線骨架拓撲關系的子集,進一步通過廣度優(yōu)先搜索算法將存在連接關系的子集合并得到模型的骨架曲線分支,再通過拉普拉斯平滑骨架曲線分支,最后將平滑后的骨架曲線分支組織成完整的曲線骨架。

PCA常被用來檢測骨架點是否達到收斂要求[6,23],即:對于骨架點qi,計算qi及其k鄰域內點集的協方差矩陣的特征值和特征向量,如式(7)所示:

其中:所有的特征值滿足λ0i≤λ1i≤λ2i都是實值,對應的特征向量{v0i,v1i,v2i}形成一個正交框架,即qi和其鄰域點的主成分。定義qi和其鄰域點的方向一致性為σi,則有如式(8)的關系:

σi的實際含義是當σi越接近1,即λ0i,λ1i和λ2i相比越小,更多的點分布在沿著分支對齊的位置,也就是方向一致性越高。實踐中,設置k=3,對于任意qi而言,如果σi>0.9,便可以認為qi和它的兩個鄰域點已經滿足骨架點的收斂要 求,可 以 認 為 對 于 點qi和qi+1,qi+1和qi+2而言,存在拓撲關系。隨后遍歷所有骨架點,便可以得到達到要求的所有的兩個點之間的拓撲關系,記 作R={(rmn)}m∈Q,n∈Q,m≠n,rmn=(qm,qn),如圖5(a)所示。

圖5 R和RL的區(qū)別,(a)是R,(b)是根據R通過廣度優(yōu)先搜索得到RLFig.5 Difference between R and RL.(a)is R,and(b)is RLobtained through breadth first search according to R

得到R之后,使用廣度優(yōu)先搜索,增長(qm,qn)的關系,得到RL,如圖5(b)所示。增長后的效果如圖1(c)所示。隨后對于RL中任意rnm=(qm,qm+1,…,qn-1,qn)兩端的端點qm和qn,對qm尋找最近骨架點qm+1,構成方向向量vm+1m=qm+1-qm,同理得qn的方向向量vn n-1=qn

qn-1,使它們在此方向上迭代尋找合適的骨架點相連即可得到完整的骨架。由于在此過程中,在尺度變化劇烈時,可能會導致骨架曲線的變化不夠平滑。為了減少這種劇烈變化帶來的質量上的影響,采用拉普拉斯收縮以獲得平滑的骨架曲線。對于拉普拉斯平滑策略點qm的定義如式(9)所示:

其中:i=m+1,m+2,…,n-1。

經過平滑后,便可以得到完整的曲線骨架,如圖1(d)所示。

3 實驗以及結果分析

本文實驗所用硬件和實驗環(huán)境包括:CPU是AMD的 銳 龍7代3700X,內 存 為32 GB,GPU為NVIDIA GeForce RTX 2060 SUPER,Visual Studio 2017 Professional,PCL(Point Cloud Library)1.8.0,開發(fā)語言為C++。為了測試和評估算法的實際性能和效果,本文實驗采用了公開數據集Visionair Repository中的多個三維模型,以及部分利用FARO Focus Premium激光掃描儀激光掃描設備掃描獲取的點云模型作為測試數據,測試本文方法及對比方法的結果。

3.1 本文方法實驗結果

圖6所示為本文算法應用于鹿、手掌、人、雕塑模型的實驗結果。圖6(a)中鹿模型的難點在于,鹿的脖子部位存在軸向偏轉,骨架點位置易偏移,導致骨架線失真;然而,從圖6中的結果可以看出本文算法受到的擾動較小,原因是雖然存在軸向偏轉,但軸向偏轉并沒有導致模型脖子部位的形狀產生較大變化,所以對骨架生成沒有產生干擾。圖6(b)中手掌模型的難點在于多個距離很近的手指會導致骨架點出現在手指之間的位置,產生錯誤的骨架點和骨架線。在本文中,為了避免這種現象的產生,采用了射線法來去除掉出現在模型之外的錯誤位置的骨架點,最終結果證實了此算法的有效性。圖6(c)中人模型對于骨架提取算法的挑戰(zhàn)在于可能會在手臂和身體之間產生錯誤的分支;圖6(d)中雕塑模型的難點在于存在復雜的拓撲結構,然而本文算法都能有效應對這些難點,提取出完整平滑的曲線骨架。

圖6 本文算法提取的模型的曲線骨架(右側)和原模型(左側)Fig.6 Curve skeleton of some models(right)and the display of the original model(left)extracted by this algorithm

為了進一步驗證本文算法的有效性和優(yōu)勢,本文將其與目前3種前沿方法進行比較,即:L1中軸骨架算法、MdCS算法和Point2Skeleton算法。Point2Skeleton所使用的模型已按照其要求通過均勻采樣,將點云下采樣到2 000點后作為其輸入。圖7(a)為4種算法應用于稀疏點云狗模型上的結果。由于狗模型本身的點數較少,狗模型的腹部存在一些點的空白,導致使用點的坐標作為輸入的方法提取到曲線骨架的難度更高。L1中軸骨架算法由于內切球的半徑增長,導致無法提取到其他腿部的骨架。MdCS算法在狗模型的身體上提取到了錯誤的拓撲結構。Point2 Skeleton算法將狗的身體提取為二維骨架,雖然存在拓撲連接錯誤和狗模型的右前腿的骨架缺失,但整體效果好于L1中軸骨架算法。然而,本文算法能夠得到較為滿意的效果,這是因為雖然模型上點缺失的部分難以估計法向,但本文采用了迭代提取骨架點的方法,降低了這種稀疏采樣對骨架線提取的影響。圖7(b)所示為馬模型的骨架線提取結果。馬模型在骨架線提取任務中的難點在于,四肢和身軀之間存在巨大的尺度變化,這種尺度變化會影響基于幾何性質收縮或者內切球增長的算法的有效性。從圖中可以看出,L1中軸骨架算法繼續(xù)受到內切球半徑增長導致分支骨架缺失,MdCS算法即使存在拓撲檢查的過程,但依然不能應對馬腿和身體之間的巨大尺度變化。Point2Skeleton算法在馬頭部位與真實情況相差較大,在身體部位提取的二維骨架失真嚴重。而本文算法能夠得到合理的拓撲關系并生成完整的骨架線。圖7(c)所示為人模型,人腿部和腹部的連接點的選擇是一個難點,導致L1中軸骨架算法選擇的連接點不在模型的內部,MdCS算法在腹部依然存在拓撲結構錯誤,Point2Skeleton算法則未提取到模型的左手。而本文算法在腹部未選擇合并,導致腿部骨架和身體骨架合二為一。

圖7 各種方法提取的曲線骨架效果對比Fig.7 Effect comparison of curve skeleton extracted by various methods

3.2 魯棒性實驗

為了驗證本文算法的魯棒性,本節(jié)針對添加高斯噪聲的模型開展實驗。本節(jié)實驗中,定義高斯噪聲的標準差為2×dmin。其中dmin是模型中點之間最小距離。結果如圖8所示。MdCS算法在應對有噪聲的點云模型時效果好于沒有噪聲的模型,原因在于,添加噪聲后,模型點的坐標發(fā)生了變化,導致算法在拓撲檢查時使用了較大的半徑,減少了拓撲錯誤。由于MAT易受噪聲影響,所以Point2Skeleton算法在應對噪聲時的表現變差,產生錯誤拓撲連接的可能性相較于不受噪聲干擾時有所提高。受到噪聲干擾時,Point2Skeleton生成了更少的拓撲連接,由此雖然拓撲連接錯誤的數量下降了,但是骨架的質量卻沒有提高。

圖8 輸入帶噪聲的模型時各種方法提取的曲線骨架效果對比Fig.8 Effect comparison of curve skeleton extracted by various methods when inputting the model with noise

由于較低程度的高斯噪聲對PCA中最小特征值的影響有限,所以對基于PCA的法向計算的影響也非常有限。并且中點狀態(tài)的平衡化迭代可以在得到居中性更好地骨架點的同時,降低噪聲的干擾,所以本文算法受到噪聲影響較小。

為了定量地分析幾種算法的實際效果,統計了幾種方法在應對模型無噪聲和有噪聲的情況下的骨架點數量、拓撲連接的數量、交叉點數量和拓撲連接錯誤的數量。其中,拓撲連接錯誤的數量等于骨架缺少的分支數量和去掉的拓撲連接數量的和,去掉的拓撲連接數量為去掉拓撲能使拓撲連接正確所需去除的數量。如表1所示。從表1可以看出,L1中軸骨架線提取算法提取的骨架點數量較多,拓撲連接錯誤的數量也較多,骨架分支缺失的情況較多。MdCS算法由于提取的骨架線可能存在環(huán)結構,所以拓撲連接錯誤較多,而且可能存在骨架點和拓撲連接在模型外的情況。Point2Skeleton具有固定的輸出,即:100個骨架點和骨架點的拓撲關系。由于其輸出的是二維骨架,二維骨架的連接狀態(tài)較多,所以拓撲連接關系出現錯誤的可能性較大,這也反應在了圖8中。本文算法提取的骨架線和骨架點數量中等,交叉點較少,拓撲連接數量錯誤較少,并且受到噪聲影響時,提取的骨架點數量和拓撲連接數量變化不大,表現出了對噪聲的魯棒性。

表1 幾種方法的骨架點數量、拓撲連接數量、交叉點數量、拓撲連接錯誤數量的統計Tab.1 Statistics of the number of skeleton points,topological connections,junction points and topological connection errors of several methods

3.3 算法效率

利用相同的軟硬件設備運行L1中軸骨架線提取算法、MdCS算法、Point2Skeleton算法和本文算法,并對計算耗時進行統計,結果如表2所示。從表2中可以看到,本文算法的時間損耗小于其他三種算法,即:略小于Point2Skeleton算法,相較于L1中軸骨架算法速度提升了10倍以上,比MdCS算法速度提升了百倍以上。由于Point2Skeleton是基于深度學習的算法,所以在計算骨架時相較于傳統算法更有優(yōu)勢,而該方法實際耗時表現略差與本文方法的原因是,Point2Skeleton在加載深度學習模型和保存運算結果步驟中耗時較多。

表2 各算法的運行時間Tab.2 Running time of different algorithms(s)

本文算法速度較快的原因是,使用了降采樣的方式降低了參與運算的點的數量。骨架點迭代時,由于骨架點平衡狀態(tài)判斷的同時,也會在常數時間內獲取骨架點迭代的方向,這種設計加速了骨架點的平衡移動過程。

3.4 應用

骨架線常被應用于動作捕捉識別[15-17],基于骨架線可以改變模型的姿態(tài)和動作,對于點云重建、數據生成以及形狀變化具有重要作用。直接通過三維圖形編輯軟件制作動畫的效率瓶頸是導入的模型需要手動綁定系統內預置的骨架,包括骨架的三維坐標和拓撲連接關系。此過程不僅耗費時間,并且因為系統預置骨架的種類有限,也會影響軟件的通用性。通過骨架線提取算法得到骨架線后,三維圖形圖像編輯軟件可以自動獲取骨架點的三維坐標、構建拓撲連接,不再需要手動調整參數和綁定骨架設定,可以提高動畫制作的效率。

圖9(a)中展示的是,使用FARO Focus Premium激光掃描儀得到玩具馬(右上黃棕色)的三維點云模型(右下);通過本文的算法提取到計算掃描點云的骨架線,如圖9(b)所示;將骨架線和點云模型導入三維圖形編輯軟件Blender中,可以輕松實現對于模型動作的改變,圖9(c)中展示的是對馬的激光掃描點云基于骨架線的動作變形,將馬的右前腿從彎曲動作改變?yōu)橄蚯奥N起。圖1(e)和1(f)展示了基于骨架線將人模型的右腳和右手臂抬起后的效果(彩圖見期刊電子版)。

圖9 基于本文骨架線指導的激光點云的動作變換Fig.9 Action transformation of lidar point cloud based on the guidance of curve skeleton

4 結論

本文提出了一種適用于激光掃描點云的骨架線的方法,并在此骨架基礎上實現了對模型的變形。通過將骨架點定義為具有對稱法向且距離最近相關點的中點,通過迭代使中點平衡化得到骨架點。然后采取主成分分析法尋找滿足方向一致性要求的曲線段,使用廣度優(yōu)先搜索算法合并各曲線段,最后將拉普拉斯平滑后的曲線段相連得到完整的骨架線。通過在多個點云模型上開展對比實驗,驗證了本文算法的有效性、魯棒性和高效性,將原本處理由33 041個點組成的點云所需86.110 s縮短到4.356 s。將提取的骨架應用在激光雷達點云的動作變換任務中,展示骨架線的實際作用。

猜你喜歡
法向鄰域骨架
落石法向恢復系數的多因素聯合影響研究
淺談管狀骨架噴涂方法
稀疏圖平方圖的染色數上界
骨架密度對炭/炭多孔骨架壓力浸滲銅的影響
基于鄰域競賽的多目標優(yōu)化算法
自動化學報(2018年7期)2018-08-20 02:59:04
低溫狀態(tài)下的材料法向發(fā)射率測量
關于-型鄰域空間
落石碰撞法向恢復系數的模型試驗研究
內支撐骨架封抽技術在突出煤層瓦斯抽采中的應用
中國煤層氣(2014年3期)2014-08-07 03:07:45
不透明材料波段法向發(fā)射率在線測量方法
登封市| 武夷山市| 苏尼特右旗| 永善县| 墨脱县| 江永县| 尚志市| 朔州市| 格尔木市| 华宁县| 星子县| 永丰县| 商都县| 威海市| 旬阳县| 鹤壁市| 台南市| 江安县| 称多县| 清水河县| 永吉县| 新巴尔虎左旗| 桑植县| 柳州市| 惠水县| 平武县| 陆丰市| 弋阳县| 六安市| 铁岭县| 治多县| 绥阳县| 大丰市| 清涧县| 进贤县| 拉萨市| 敦化市| 都昌县| 鱼台县| 阳西县| 文化|