圖像處理的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及用于自動從對象集合的點云數(shù)據(jù)生成這些對象集合的三維表示的方 法和設(shè)備。
【背景技術(shù)】
[0002] 實踐證明,對現(xiàn)實世界的對象產(chǎn)生精確的三維(3D)計算機模型在考古學、建筑 學、土木與機械工程、地理測繪及諸多其他領(lǐng)域極具實用價值。在許多此類應(yīng)用中,掃描儀 自動測量對象表面上的大量點,以產(chǎn)生表面點的3D "點云"。這種點云會包含超多數(shù)據(jù),出 于這種原因及其他因素,該點云可能難以有效操作或處理用于并入到最終模型。由此,需將 點云數(shù)據(jù)轉(zhuǎn)換成更易于操作的形式,例如轉(zhuǎn)換成3D計算機輔助設(shè)計(CAD)模型格式。
[0003] 點云數(shù)據(jù)的特性意指其分析角度并未在其他成像技術(shù)中呈現(xiàn)。舉例而言,如磁共 振成像(MRI)及軸向計算層析成象技術(shù)(CAT)等醫(yī)學影像技術(shù)掃描特定塊體并從在所掃描 塊體各點定義的連續(xù)密度值產(chǎn)生3D圖像。然而,針對點云而言,點密度是到掃描儀位置和 掃描儀底座的距離和角度的函數(shù),而并非表示對象的密度或其他屬性。此外,所掃描塊體中 大部分區(qū)域可能完全缺乏任何特征。目前,將點云數(shù)據(jù)發(fā)送至專業(yè)人員(或?qū)<医M),該專 業(yè)人員通過認知結(jié)構(gòu)解釋數(shù)據(jù)并手動生成已標識數(shù)據(jù)的3D模型。該過程尚有若干不足之 處。首先,完成這一過程需要大量人工時間,由此導致成本增加。其次,不同人員解釋相同 的點云可能產(chǎn)生不同的3D模型。這種模型的使用者由此無法高度信賴其準確性。特別在 采用動態(tài)掃描儀導致點云數(shù)據(jù)擾動的情況下,普遍存在第二類問題。盡管動態(tài)掃描儀的干 擾較大,但由于其掃描區(qū)域大于靜態(tài)掃描儀的范圍,因此動態(tài)掃描儀與上述掃描技術(shù)相比 更為可取。而現(xiàn)有技術(shù)中公開的其他要求自動產(chǎn)生3D模型的設(shè)備另具其他缺陷。例如,US 8, 244, 026描述了一種用于處理地面掃描的光探測與測距(LIDAR)點云的設(shè)備。地面過濾 器濾除地面,從而在地面上延伸的特征能夠得到標識。同時,自動式特征搜索及識別單元能 夠識別與某一特征相關(guān)的點并將這些點替換為表示該特征的虛擬對象。這一設(shè)備利用地面 作為基準點,因而無法用于其它應(yīng)用中。另外,僅在對象具有虛擬對象的情況下才能進行替 換,專業(yè)人員可能須手動監(jiān)測結(jié)果或模型的更多異常特征。EP 1691335B1描述了一種用于 沿二維輪廓將表面擬合為點云的設(shè)備。其缺陷在于,必須首先以手動方式或通過某種自動 機構(gòu)(不屬于該發(fā)明的保護范圍)確定輪廓。相比之下,本發(fā)明毋須提供二維或其他輪廓。
[0004] ClearEdge 3D制作的軟件自動從點云提取特征。該軟件可利用在W02010/042466 中所述的技術(shù),其中從點云中提取一個或多個曲面片并將其用于確定對象的一個或多個主 軸。然而,在掃描的對象并不具備常規(guī)直線主軸的情況下則無法采用該方法,在分析動態(tài)掃 描儀生成的數(shù)據(jù)時尤其如此。實際上,ClearEdge 3D要求用戶手動標識特征的初始版本, 隨后自動標識其副本。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明在權(quán)利要求書中所述的特征提供一種計算效率高且節(jié)省勞動力的解決方 案,其可用于但并非限定于將顯著特征標識為現(xiàn)實世界的對象并將其替換為等效的虛擬場 景。此外,本發(fā)明的示例性實施方案充分說明能夠從移動式掃描系統(tǒng)轉(zhuǎn)換點云數(shù)據(jù)。
[0006] 本發(fā)明需要頻繁計算3x 3對稱矩陣的特征值及相應(yīng)的特征向量。借助Jacobi (雅 可比)的對角化方法即可實現(xiàn)這一過程,請參閱由G.H. Golub和C.F. van Loan所著并 由John Hopkins University Press (約翰霍普金斯大學出版社)所出版的"Matrix Computations (矩陣計算)"。然而,任何特征值和特征向量的其他有效計算方法若能正確 應(yīng)對兩個或全部特征值可能不夠顯著的情況,即可采用該方法作為替代。
【附圖說明】
[0007] 通過所附權(quán)利要求書限定本發(fā)明的范圍。結(jié)合下文和附圖,本發(fā)明示例性實施方 案的其他的特點和優(yōu)點得以進一步明確。
[0008] 圖1表示其中生成點云數(shù)據(jù)并將其轉(zhuǎn)換成三維模型的示例性系統(tǒng);
[0009] 圖2表示所述方法的主要步驟Ml至M12的流程圖;
[0010] 圖3表示將立方體分類為包含共面點或共線點的示例性方法的步驟Al至A7的流 程圖;
[0011] 圖4表示通過整合公共面上共面立方體以形成面立方體集合來標識表面的示例 性方法的步驟Bl至B24的流程圖;
[0012] 圖5表示使屬于面立方體集合的立方體平整化從而使其全部與公共面相交的示 例性方法的步驟Yl至Y8的流程圖;
[0013] 圖6表示標識在其上形成面立方體集合邊界的立方體的示例性方法的步驟Xl至 XlO的流程圖;
[0014] 圖7表示圍繞面立方體集合外部或圍繞其內(nèi)部空洞跟蹤邊界多邊形的示例性方 法的步驟Zl至Z21的流程圖;
[0015] 圖8表示標識邊界多邊形上云邊界點位置的示例性方法的步驟Ul至Ull的流程 圖;
[0016] 圖9表示將云邊界點移動至與相鄰面相交處的示例性方法的步驟Vl至V14的流 程圖;
[0017] 圖10表示通過整合公共線上共線立方體以形成線立方體集合來標識線的示例性 方法的步驟Wl至W18的流程圖;
[0018] 圖11表示將屬于線立方體集合的立方體整合從而使其全部與公共線相交的示例 性方法的步驟Tl至T8的流程圖;
[0019] 圖12表示從線立方體集合內(nèi)部查找有限線段末端位置的示例性方法的步驟Sl至 S16的流程圖;
[0020] 圖13是表示計算平面間距離的示例性方法的平面圖;
[0021] 圖14是表示示例性多邊扇形的平面圖;
[0022] 圖15是表示跟蹤面立方體集合的邊界多邊形的示例性方法的平面圖;
[0023] 圖16是表示多邊形上的下一邊緣的兩個可選位置的平面圖;
[0024] 圖17是表示在點云邊界在相交多邊形內(nèi)呈直線情況下計算云邊界點的示例性方 法的平面圖;
[0025] 圖18是表示在點云邊界在相交多邊形內(nèi)呈非直線情況下計算云邊界點的示例性 方法的平面圖;
[0026] 圖19是表示存在一個以上候選云邊界點的情況下計算云邊界點的示例性方法的 平面圖;
[0027] 圖20是表示將云邊界點移動至平面交線上的示例性方法的透視圖;
[0028] 圖21是在特定點云立方體集合上執(zhí)行本文所述方法所產(chǎn)生的用于建筑場景的線 條圖。
【具體實施方式】
[0029] 圖1是表示根據(jù)本發(fā)明一示例性實施方案的設(shè)備總體布局的框圖。掃描儀120包 括發(fā)射一系列激光脈沖的LIDAR掃描模塊102。這些激光脈沖掃過目標對象104的表面,脈 沖從表面反射并由掃描模塊中的傳感器接收。掃描儀120中的處理模塊106可由激光脈沖 的渡越時間計算到表面上點的距離并能夠基于該距離數(shù)據(jù)生成點云。隨后,點云數(shù)據(jù)108 在進一步處理之前可存儲于點云數(shù)據(jù)庫110中。在需要進一步處理時,將點云數(shù)據(jù)發(fā)送至 計算機112,在此點云處理模塊執(zhí)行用于將數(shù)據(jù)轉(zhuǎn)換為3D表示118的方法。下文將詳細說 明這種方法的示例。該方法完成后,3D表示118可作為數(shù)據(jù)文件存儲于存儲器114中并/ 或以可視形式輸出。
[0030] 這種3D表示能夠用于眾多不同應(yīng)用中。例如,在汽車裝配線場景中,可通過LIDAR 掃描儀掃描設(shè)計用于組裝的不同部件。可將產(chǎn)生的點云轉(zhuǎn)換為3D向量模型并能確定這些 部件是否能在特定公差內(nèi)組裝。在不采用如本發(fā)明所述自動技術(shù)的情況下,利用常規(guī)技術(shù) 將耗費大量人工時間才能獲得精確的結(jié)果,這在計劃時間內(nèi)并不實用。
[0031] 另一示例性應(yīng)用涉及公路防撞護欄。許多公共部門對高速公路上的防撞護欄規(guī)定 了最低高度。為確保符合該規(guī)定,車載掃描儀會掃描公路的多個路段,以產(chǎn)生防撞護欄的點 云數(shù)據(jù)。該數(shù)據(jù)可轉(zhuǎn)換為3D模型并確定護欄高度。同樣,用于將數(shù)據(jù)轉(zhuǎn)換為向量圖模型的 手動方法將耗費較長時間。然而,由于不同的人工操作者極可能對護欄的同一部分確定出 不同的高度,該問題愈發(fā)嚴重。既得利益不同的各方會為數(shù)據(jù)提供配合,從而產(chǎn)生的模型有 意無意間或許代表建模者的實際喜好。若建模者在特定防撞護欄高度不夠時卻認定其高度 足矣,則可能帶來災(zāi)難性后果。因此,如本發(fā)明所述的客觀方法更為適宜。
[0032] 點云是一組三維向量x(k) = (X k,Yk,Zk)。假定點云點分布在一個或多個3D對象的 表面上。本發(fā)明所述的技術(shù)將點云轉(zhuǎn)換為對象的CAD模型表示。這些對象由多組相連的線 段組成,這些線段包括閉合的平面多邊形(表示對象的平坦表面)的邊緣以及其他表示對 象的線段,諸如并不具平坦表面的電源線、電話線等。通過充足數(shù)量與對象表面相切的小平 面表示由如圓柱體(例如管道和隧道)等非平坦表面組成的對象。該方法可使任意3D對 象得到表示。
[0033] 圖2是表示所述方法主要步驟Ml至Ml2的流程圖。
[0034] ML將3D網(wǎng)格疊加至對象所占用的部分空間上。網(wǎng)格將空間劃分成大量而有限 的立方體列表。為避免浪費計算機存儲空間,列表將所有空白立方體都排除在外。在當前 實施方案中,立方體均為相同大小。每一立方體的一側(cè)長度稱為其分辨率。在必要情況下 (例如由于所掃描表面在局部的曲率較大),其中某些立方體可再細分為更小的立方體,這 些更小的立方體可進一步細分,以此類推。通過這種方式,可在不同位置使用不同的局部分 辨率。還可對3D空間進行其他方式的分區(qū),例如采用四面體。在下文中,術(shù)語"立方體"可 理解為四面體或其他空間填充三角曲面(tessellation)。
[0035] M2.將每一非空立方體分類為重合(立方體的全部點都大致位于相同位置)、共面 (立方體的全部點都大致位于同一平面內(nèi))、共線(立方體的全部點都大致位于同一直線 上)或空間填充(局部點云既非線也非表面)。下面將在步驟Al至A8中參照圖3詳細闡 明步驟M2。
[0036] M3.通過整合相鄰的共面立方體產(chǎn)生面立方體集合,所述共面立方體的平面(其 點云點的平面)大致共面。每一面立方體集合均與稱作立方體集合公共面的單一數(shù)學面相 關(guān)。在步驟M3結(jié)束時,各共面立方體將確切僅屬于一個面立方體集合。每一面立方體集合 將包含一個或多個共面立方體。下面將在步驟Bl至B24中參照圖4詳細闡明步驟M3。
[0037] M4.如下所述,使每一面立方體集合平整化。若任一共面立方體并未與其面立方 體集合的公共面相交,則將該立方體移出該面立方體集合并將其全部點都投射至公共面 上。若任一投影點位于尚未屬于面立方體集合的立方體中,則將該立方體添加至面立方體 集合。這表示,在步驟M4結(jié)束時,面立方體集合可能包含在步驟M2中并未分類為共面的立 方體。此刻,立方體可能歸屬于一個以上面立方體集合。然而,任何屬于一個以上面立方體 集合的立方體都