魏巍 袁君
摘要:隨著3D打印技術的普及,越來越多的用戶通過3D打印平臺定制個性化產品。3D打印產品個性定制的前提是進行三維建模,而傳統(tǒng)的三維建模軟件操作復雜,需要用戶掌握專業(yè)的設計知識。因此,如何快速地進行三維重建是3D打印深度定制的關鍵。文章提出了一種三維重建的3D打印產品定制化建模方法,用戶可以通過待重建目標的多視角圖像序列來獲取物體表面的三維坐標信息,進而得到物體的三維模型并用于3D打印產品定制。
關鍵詞:三維重建;3D打印;產品定制
中圖分類號:TB476
文獻標識碼:A
文章編碼:1672-7053(2020)02-0026-02
目前,大部分的3D打印平臺可以對材料、顏色、填充方法等進行定制。對于產品的拓撲結構來說,用戶依然需要進行三維建模來構建自己想要的產品,三維建模一般借助三維設計軟件,軟件安裝復雜且版權費用較高,而且要求客戶具有一定的三維設計基礎,這使得用戶設計自己的三維模型變得更加困難。此外,對于一些現(xiàn)實中的物體,例如寵物、玩具、家具[2]等,用戶要想構建其三維模型將是一件難度很大的任務。因此,如何讓用戶更加方便快捷地構建定制化的模型,將是推動3D打印產品深度定制的關鍵。文章提出了一種快速三維重建的方法,使得用戶可以在計算機中快速地還原真實物體的三維模型,更加個性化地定制屬于自己的3D打印產品。
1三維重建概述
三維重建是指通過大量物體表面的點,對物體建立三維模型的過程。這種方法首先通過特定的設備與方法來獲取物體的三維形狀特征,獲取到的三維信息通常以點云的數(shù)據(jù)形式存儲。點云數(shù)據(jù)經過一系列的處理,可以將其轉換為常用的三維數(shù)據(jù)格式(如STEP/STL/IGES/OBJ等),從而用于3D打印。與傳統(tǒng)建模方法不同,三維重建是一種逆向的建模過程。這種建模過程可以獲取產品或實物的幾何數(shù)據(jù)模型,且不需要用戶與復雜難懂的建模軟件進行交互。在3D打印、機器人自動導航、人造器官等方面有廣泛的應用背景,如圖1。
2基于三維重建的3D打印產品定制化建模步驟
如圖2所示,三維重建通常分為點云獲取、點云預處理、點云精簡和網(wǎng)格生成四個步驟。
2.1點云獲取
點云獲取是指利用特定的測量方法獲取物體表面的三維坐標信息,按照測量方式分可以為接觸式方法與非接觸式方法。接觸式測量的方式通過傳感器測頭與物體表面接觸來獲取物體表面的三維坐標,其優(yōu)點是不會受到光照和物體表面紋理變化的影響,測量的精度高。接觸式測量常用的設備有三維坐標測量儀。非接觸式測量方法可以在不接觸物體表面的前提下獲得物體表面大量離散點的坐標信息,測量效率高,因此被廣泛采用在三維重建中。常見的非接觸式測量方法有主動視覺法和被動視覺法兩種。主動視覺法借助額外的光源來計算物體表面的三維坐標,主要有激光掃描法、結構光法、TOF法等,常用的設備有三維激光掃描儀、工業(yè)CT、深度相機等。被動視覺法不借助外部光源,也不需要借助額外的設備,只需要依據(jù)物體的圖像序列來提取物體表面的三維坐標信息,常用的方法有單目視覺法、雙目視覺法、亮度法等[3-4]。
2.2點云去噪
在點云數(shù)據(jù)獲取時,由于測量設備精度和操作過程等因素對激光掃描或攝像帶來的影響,得到的點云數(shù)據(jù)必將含有許多噪聲點,因此在點云的預處理過程中必須要對散亂的點云進行去噪處理。當前,點云去噪的方法多種多樣,有基于距離的去噪方法、基于曲率的去噪方法、基于幾何結構的去噪方法等。基于距離的去噪方法計算簡單,算法的時間復雜度與空間復雜度低,因此被廣泛采用?;诰嚯x的點云去噪方法的主要原理是計算點在一個鄰域內與其他點的平均距離,依據(jù)這個平均距離設定一個閾值,把超出距離閾值范圍的點剔除掉。利用基于距離的方法需要對每個點進行鄰域點檢索。最簡單的檢索方法是窮舉法,即計算每個點到該點的距離,然后選取鄰域內的點進行計算。在點云數(shù)量多的情況下,這種計算方法的時間復雜度與空間復雜度極高,占用內存多且計算速度慢。因此基于距離的點云去噪方法往往要與快捷有效的檢索方法一起使用。k—d樹檢索方法是由二叉搜索樹推廣而來的一種用于高維空間中范圍搜索和最鄰近搜索方法,k—d樹法將數(shù)據(jù)空間剖分為幾個部分,然后剖分后的子空間內進行搜索計算,這種方法具有高效的特點。
2.3點云精簡
由于獲取的點云數(shù)據(jù)往往具有數(shù)據(jù)量大、密度不均勻、數(shù)據(jù)冗余等特點,因此有必要對散亂的點云進行精簡處理,降低三維重建算法的復雜度。點云精簡可以提高計算效率并獲得較好的網(wǎng)格化效果。點云精簡的難點在于刪除冗余數(shù)據(jù)的同時如何保留原始模型的幾何特征和原始數(shù)據(jù)的準確性。一般要求精簡后的點云既能滿足三維重建的精度要求,又能最大程度地降低計算量,提高計算速度。包圍盒法是常用的點云精簡算法,包圍盒法將點云所在的空間的長方體進行剖分,將其剖分成為若干的小立方體,每一個小立方體就是一個包圍盒。然后按照一定規(guī)則選擇立方體中合適的點代表立方體內所有的點。常用的規(guī)則是選擇最接近于包圍盒中心的點來代替該立方體內所有的點。這種方法可以將點云的數(shù)量降低到包圍盒的數(shù)量,操作簡單且計算效率高。
2.4網(wǎng)格生成
經過濾波和簡化后的點云是無組織的散亂點云,點與點之間沒有幾何聯(lián)系,因此必須要進行表面重建,對其進行網(wǎng)格化,還原點云中點與點間的空間拓撲結構。由于散亂點云的空間分布是無序的,如何正確、快速、高效地構建點云之間的幾何關系是關鍵。散亂點云的網(wǎng)格化要對三維空間中的點云網(wǎng)格化可以采用人工交互的方式來實現(xiàn),但是在點云數(shù)量較多時,這種方法就變得不現(xiàn)實,因此必須要依靠計算機借助點云拼接算法來生成三維網(wǎng)格。一個物體的三維模型在計算機中的通常有兩種表示方法:邊界表示法和空間劃分法。邊界表示法是將該物體用一組平面表示,把它分為里邊和外邊兩部分分別進行表示,可以用來精確地表示簡單的規(guī)則的物體,并且方便計算機進行集合運算和操作,它又可以分為多面體表述法和曲面表述法。多面體表述法是指將物體表示成一組封閉物體空間的多邊形,而曲面表述法就是利用曲面函數(shù)的思想把多面體上的每一個面用函數(shù)表達出來??臻g劃分法(Space—partitioningRepresentation)是指將物體從內部開始,逐步地劃分為細小且不重疊的連續(xù)實物用來表達物體形狀,常用的方法有體素構造法、八叉樹法和二分空間法。
3基于三維重建的3D打印產品定制化建模實驗分析
實驗使用了多視圖密集點云重建Multi—viewstereo(MVS)技術來提取物體表面的點云。多視圖密集點云重建MVS是對一個物體的多視角圖片序列中所有圖片的每個像素點進行匹配,該方法將不僅局限于獲得的匹配的特征點,它的對象是直接量化的像素,然后針對每一個像素,重建出這個像素在空間中的三維點,這樣大大提高了點云的稠密程度,甚至達到圖像給人直接展現(xiàn)的清晰度。
采用MVS方法獲取點云的方法雖然不需要借助額外的設備,但是其點云提取的結果較為粗糙,必須要對其進行點云的去噪,基于距離的去噪方法具有計算簡單的特點,因此實驗采用基于距離的去噪方法。由于點云數(shù)量大,該實驗還采用了k—d樹的方法對空間進行剖分,簡化去噪的計算復雜度。
對于點云的精簡,該實驗采用了包圍盒法,并且使用了局部曲面插值的方法來保證精簡后點云精度。
實驗最后采用了邊界表示法來表達重建后的模型。前面已經提到,多面體表述法是指將物體表示成一組封閉物體空間的多邊形,而其中最常用的就是三角形,利用三角形的這種方法就是三角剖分法,該方法的穩(wěn)定性好,適用性強[5]??紤]到3D打印實際的應用需求,該實驗選擇了三角剖分法來拼接點云。
用于3D打印的產品定制化建模實驗選擇桌面上的鼠標作為重建的對象,參考了開源的三維重建項目MVE,在Ubuntu系統(tǒng)下運行,使用Clion編譯器以及CMake管理軟件。重建后的效果如圖3所示。
4結語
本文提出了一種三維重建的方法,3D打印平臺的用戶可以借助這種方法快速重建出真實世界中物體的三維模型,且不需要借助昂貴的3D掃描設備。這使得用戶更加個性化地定制自己的3D打印產品。該方法可廣泛應用于玩具、首飾、古董玩物、寵物等3D打印產品中,具有實際的應用價值。
本文系國家重點研發(fā)計劃重點專項項目《面向創(chuàng)新創(chuàng)業(yè)的3D打印云服務平臺研發(fā)及應用》,課題1《支持3D打印普及應用的關鍵技術研究》(項目編號:2017YFB1104201)。
參考文獻
[1]魏冬松.3D打印技術在工業(yè)設計中的應用研究[J].工業(yè)設計,2018(03):121-122.
[2]朱琳,劉家興.基于3D打印技術的定制化家具創(chuàng)新設計[J].工業(yè)設計,2017(07):46-47.
[3]鄭太雄,黃帥.基于視覺的三維重建關鍵技術研究綜述[N].自動化學報,2013,11(01).
[4]張濤.基于單目視覺的三維重建[D].西安:西安電子科技大學,2013.
[5]高向敏.散亂點云模型三角網(wǎng)格化處理算法的研究與實現(xiàn)[D].南京:南京師范大學,2012.
[6]解密3D打印[J].工業(yè)設計,2013(02):15-19.