立體視覺三維重建系統及方法與流程
2023-09-16 15:52:00 2

本發明涉及三維重建技術領域,特別涉及一種立體視覺三維重建系統及方法。
背景技術:
目前使用立體視覺技術進行多視角重建的方法主要有:單攝像機/雙攝像機圍繞物體運動進行多視角重建、單/雙攝像機不動物體旋轉實現多視角重建、多攝像機固定不動從多個角度採集物體表面圖像進行重建等。第一種方法使用靈活,但需要第三方設備標定單/雙攝像機的運動,且恢復的三維形貌往往不能得到被測物體真實的物理尺度,只能得到近似模型;第二種方法需要額外的物體運動控制設備,成本較高,使用不靈活;第三種方法往往也需要提前標定多攝像機之間的位置,設備成本較高,使用不靈活。
例如,現有技術中有以下幾種技術方案:
第一:該技術方案公開了一種基於雙目立體視覺系統的多視角三維重建方法,包括根據被重建物體規模,設計雙目立體視覺系統,提前對雙目立體視覺系統攝像頭進行標定,製作雙目立體視覺系統恢復三維信息的查找表;雙目攝像頭採集被重建物體視頻信息,對右攝像頭採集的視頻信息進行單應變換,單應性變換後和左攝像頭視頻信息進行立體匹配得到被重建物體視差圖,由視差圖恢復被重建物體對應的三維信息;得到被重建物體不同視角三維點雲信息,經過點雲預處理、粗配準、精配準,將不同視角三維點雲轉換到同一坐標系下,完成對被重建物體多視角的三維重建。
該技術本質上是使用兩個攝像機採集的圖像進行重建,不能消除相機性能差異對圖像採集的影響;且要求物體做多角度旋轉運動,需要第三方運動控制機構。
第二:該技術方案公開了一種基於雙目立體視覺多視角的物體表面重建方法,包括:(1)構建雙目立體視覺系統,並對系統進行標定;(2)對物體多視角攝像,獲得物體表面三維空間信息;(3)計算轉軸的三維空間信息;(4)計算旋轉矩陣和平移向量,對物體表面三維空間信息進行配準;(5)對物體表面進行重建。本發明還公開了一種基於雙目立體視覺多視角的物體表面重建裝置,包括轉盤、電機、投影儀、左攝像機、右攝像機和計算機。
該技術本質上也是使用兩個攝像機採集的圖像進行重建,不能消除相機性能差異對圖像採集的影響;也需要轉盤等裝置帶動被測對象做旋轉運動。
第三:該技術方案公開了一種可移動文物的多視角三維重建方法及裝置,包括:獲取待進行三維重建的文物的兩組影像,其中,兩組影像中一組影像需要連同測量控制板一起獲取,兩組影像分別是利用相機通過圍繞放置在不同位置的不同支撐檯面上的文物拍攝多圈影像得到,拍攝兩組影像中第一組影像時文物的頂部不與文物所在的支撐臺面接觸,拍攝兩組影像中第二組影像時文物的底部不與文物所在的支撐臺面接觸;根據兩組影像生成文物的部分密集點雲,基於測量控制板上的多個控制點構建三維坐標系,在三維坐標系中將部分密集點雲進行合併生成文物的密集點雲;根據文物的密集點雲重建文物的三維模型。
該技術需要額外的測量控制板,提供控制點完成多視角坐標系的統一。
技術實現要素:
本發明實施例提供了一種立體視覺三維重建系統,以解決現有技術中進行多視角重建時由於相機之間的性能差異對圖像採集有影響、需要第三方標定設備或額外的物體運動控制設備的技術問題。該系統包括:第一相機、第二相機以及計算機,其中,所述第一相機和所述第二相機固定聯結,所述第一相機和所述第二相機同步圍繞待重建物體移動,在多個視角位置上同步採集所述待重建物體的圖像;所述計算機根據所述第一相機和所述第二相機採集的圖像,確定所述第一相機在所述多個視角位置上的運動關係,根據所述運動關係和所述第一相機在多個視角位置上採集的圖像,重建所述待重建物體的三維模型。
在一個實施例中,所述計算機具體用於,針對兩個相鄰視角位置,所述計算機獲取所述第一相機在該兩個相鄰視角位置上分別採集的第一圖像;獲取在該兩個相鄰視角位置中一個視角位置上所述第二相機採集的第二圖像;確定多個匹配特徵,所述匹配特徵為在所述第一圖像和所述第二圖像中均具備且相同的特徵;根據多個所述匹配特徵在該兩個相鄰視角位置上的所述第一圖像中的歸一化圖像坐標,計算多個所述匹配特徵的第一空間坐標,所述第一空間坐標中包括有所述第一相機在該兩個相鄰視角位置上的運動關係;根據多個所述匹配特徵在該兩個相鄰視角位置中所述一個視角位置上的所述第一圖像和所述第二圖像中的歸一化圖像坐標,計算多個所述匹配特徵的第二空間坐標,所述第二空間坐標包括有由所述第一相機和所述第二相機固定聯結確定的所述第一相機相對於所述第二相機的已知的運動關係;根據所述第一空間坐標與所述第二空間坐標相等,計算出所述第一相機在該兩個相鄰視角位置上的運動關係,其中,所述運動關係包括旋轉運動參數和平移運動參數,所述匹配特徵的個數大於等於7。
在一個實施例中,所述計算機還用於,通過以下公式計算本質矩陣後,通過分解法計算得到所述第一空間坐標中運動關係的旋轉運動參數:其中,是匹配特徵在該兩個相鄰視角位置中一個視角位置上的所述第一圖像中的歸一化圖像坐標;是匹配特徵在該兩個相鄰視角位置中另一個視角位置上的所述第一圖像中的歸一化圖像坐標;t是所述第一相機在該兩個相鄰視角位置上的運動關係中的平移運動參數;r是所述第一相機在該兩個相鄰視角位置上的運動關係中的旋轉運動參數;e是所述本質矩陣;將所述第一相機在該兩個相鄰視角位置上的運動關係中的旋轉運動參數代入所述第一空間坐標與所述第二空間坐標的等式中,計算得到所述第一相機在該兩個相鄰視角位置上的運動關係中的平移運動參數。
在一個實施例中,所述計算機還用於,在根據所述運動關係和所述第一相機在多個視角位置上採集的圖像,重建所述待重建物體的三維模型之前,根據所述第一相機在所述多個視角位置上的運動關係,確定所述第一相機在所述多個視角位置上的坐標,將所述第一相機在所述多個視角位置上的坐標統一到預設參考坐標繫上,針對每個視角位置,計算每個視角位置分別到第一個視角位置的最短距離;按照每個視角位置到第一個視角位置的最短距離的大小順序,將所述第一相機在每個視角位置上採集的圖像依次拼接起來。
本發明實施例還提供了一種立體視覺三維重建方法,以解決現有技術中進行多視角重建時由於相機之間的性能差異對圖像採集有影響、需要第三方標定設備或額外的物體運動控制設備的技術問題。該方法包括:採用第一相機和第二相機同步圍繞待重建物體移動,在多個視角位置上同步採集所述待重建物體的圖像,其中,所述第一相機和所述第二相機固定聯結;根據所述第一相機和所述第二相機採集的圖像,確定所述第一相機在所述多個視角位置上的運動關係,根據所述運動關係和所述第一相機在多個視角位置上採集的圖像,重建所述待重建物體的三維模型。
在一個實施例中,根據所述第一相機和所述第二相機採集的圖像,確定所述第一相機在所述多個視角位置上的運動關係,包括:針對兩個相鄰視角位置,獲取所述第一相機在該兩個相鄰視角位置上分別採集的第一圖像;獲取在該兩個相鄰視角位置中一個視角位置上所述第二相機採集的第二圖像;確定多個匹配特徵,所述匹配特徵為在所述第一圖像和所述第二圖像中均具備且相同的特徵,所述匹配特徵的個數大於等於7;根據多個所述匹配特徵在該兩個相鄰視角位置上的所述第一圖像中的歸一化圖像坐標,計算多個所述匹配特徵的第一空間坐標,所述第一空間坐標中包括有所述第一相機在該兩個相鄰視角位置上的運動關係;根據多個所述匹配特徵在該兩個相鄰視角位置中所述一個視角位置上的所述第一圖像和所述第二圖像中的歸一化圖像坐標,計算多個所述匹配特徵的第二空間坐標,所述第二空間坐標包括有由所述第一相機和所述第二相機固定聯結確定的所述第一相機相對於所述第二相機的已知的運動關係;根據所述第一空間坐標與所述第二空間坐標相等,計算出所述第一相機在該兩個相鄰視角位置上的運動關係,其中,所述運動關係包括旋轉運動參數和平移運動參數。
在一個實施例中,根據所述第一空間坐標與所述第二空間坐標相等,計算出所述第一相機在該兩個相鄰視角位置上的運動關係,包括:通過以下公式計算本質矩陣後,通過分解法計算得到所述第一空間坐標中運動關係的旋轉運動參數:其中,是匹配特徵在該兩個相鄰視角位置中一個視角位置上的所述第一圖像中的歸一化圖像坐標;是匹配特徵在該兩個相鄰視角位置中另一個視角位置上的所述第一圖像中的歸一化圖像坐標;t是所述第一相機在該兩個相鄰視角位置上的運動關係中的平移運動參數;r是所述第一相機在該兩個相鄰視角位置上的運動關係中的旋轉運動參數;e是所述本質矩陣;將所述第一相機在該兩個相鄰視角位置上的運動關係中的旋轉運動參數代入所述第一空間坐標與所述第二空間坐標的等式中,計算得到所述第一相機在該兩個相鄰視角位置上的運動關係中的平移運動參數。
在一個實施例中,在根據所述運動關係和所述第一相機在多個視角位置上採集的圖像,重建所述待重建物體的三維模型之前,還包括:根據所述第一相機在所述多個視角位置上的運動關係,確定所述第一相機在所述多個視角位置上的坐標,將所述第一相機在所述多個視角位置上的坐標統一到預設參考坐標繫上,針對每個視角位置,計算每個視角位置分別到第一個視角位置的最短距離;按照每個視角位置到第一個視角位置的最短距離的大小順序,將所述第一相機在每個視角位置上採集的圖像依次拼接起來。
在本發明實施例中,通過固定聯結的第一相機和第二相機同步圍繞待重建物體移動,在多個視角位置上同步採集待重建物體的圖像,並根據第一相機和第二相機採集的圖像,確定第一相機在多個視角位置上的運動關係,進而根據運動關係和第一相機在多個視角位置上採集的圖像,重建待重建物體的三維模型。可見,第二相機採集的圖像只用於和第一相機採集的圖像一起確定第一相機在多個視角位置上的運動關係,即第二相機只用於在多個視角位置上確定第一相機的運動關係,實現第一相機的跟蹤定位,第二相機可以稱為跟蹤相機,使得可以避免第三方標定設備的使用,有利於降低成本;同時,由於只使用第一相機在多個視角位置上採集的圖像進行重建待重建物體的三維模型,第二相機採集的圖像並不用於三維模型的重建,第一相機可以稱為工作相機,可以消除攝像機性能差異對圖像採集的影響,使得提高了數據的準確性,有助於恢復待重建物體真實尺度的表面形貌;由於是第一相機和第二相機同步圍繞待重建物體自由移動,不需要待重建物體自身進行旋轉,這對於需要保持原樣的文物等貴重物體來說具有很高的實用性,也使得避免物體運動控制設備的使用,有利於降低成本。
附圖說明
此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,並不構成對本發明的限定。在附圖中:
圖1是本發明實施例提供的一種立體視覺三維重建系統的示意圖;
圖2(a)是本發明實施例提供的一種用於確定工作相機運動關係的兩種基本的特徵傳遞方式一;
圖2(b)是本發明實施例提供的一種用於確定工作相機運動關係的兩種基本的特徵傳遞方式二;
圖3是本發明實施例提供的一種匹配特徵的極線約束幾何關係的示意圖;
圖4是本發明實施例提供的一種上述立體視覺三維重建系統的工作原理示意圖;
圖5是本發明實施例提供的一種立體視覺三維重建方法的流程圖。
具體實施方式
為使本發明的目的、技術方案和優點更加清楚明白,下面結合實施方式和附圖,對本發明做進一步詳細說明。在此,本發明的示意性實施方式及其說明用於解釋本發明,但並不作為對本發明的限定。
在本發明實施例中,提供了一種立體視覺三維重建系統,如圖1所示,該系統包括:第一相機101、第二相機102以及計算機(圖中未示出),其中,
所述第一相機101和所述第二相機102固定聯結,所述第一相機和所述第二相機同步圍繞待重建物體103移動,在多個視角位置上同步採集所述待重建物體的圖像;
所述計算機根據所述第一相機和所述第二相機採集的圖像,確定所述第一相機在所述多個視角位置上的運動關係,根據所述運動關係和所述第一相機在多個視角位置上採集的圖像,重建所述待重建物體的三維模型。
由圖1所示可知,在本發明實施例中,通過固定聯結的第一相機和第二相機同步圍繞待重建物體移動,在多個視角位置上同步採集待重建物體的圖像,並根據第一相機和第二相機採集的圖像,確定第一相機在多個視角位置上的運動關係,進而根據運動關係和第一相機在多個視角位置上採集的圖像,重建待重建物體的三維模型。可見,第二相機採集的圖像只用於和第一相機採集的圖像一起確定第一相機在多個視角位置上的運動關係,即第二相機只用於在多個視角位置上確定第一相機的運動關係,實現第一相機的跟蹤定位,第二相機可以稱為跟蹤相機,使得可以避免第三方標定設備的使用,有利於降低成本;同時,由於只使用第一相機在多個視角位置上採集的圖像進行重建待重建物體的三維模型,第二相機採集的圖像並不用於三維模型的重建,第一相機可以稱為工作相機,可以消除攝像機性能差異對圖像採集的影響,使得提高了數據的準確性,有助於恢復待重建物體真實尺度的表面形貌;由於是第一相機和第二相機同步圍繞待重建物體自由移動,不需要待重建物體自身進行旋轉,這對於需要保持原樣的文物等貴重物體來說具有很高的實用性,也使得避免物體運動控制設備的使用,有利於降低成本。
具體實施時,由於上述立體視覺三維重建系統主要只需要兩個固定聯結的相機,結構簡單,且可以做到很小的體積,方便集成到各類終端產品中;同時適用於大型物體和中小型物體,只需要根據對象相應地靈活調整系統的觀測位置即可,具有應用範圍廣的優勢。
具體實施時,為了實現確定第一相機在多個視角位置上的運動關係在,在本實施例中,所述計算機具體用於,針對兩個相鄰視角位置,所述計算機獲取所述第一相機在該兩個相鄰視角位置上分別採集的第一圖像;獲取在該兩個相鄰視角位置中一個視角位置上所述第二相機採集的第二圖像;確定多個匹配特徵,所述匹配特徵為在所述第一圖像和所述第二圖像中均具備且相同的特徵;根據多個所述匹配特徵在該兩個相鄰視角位置上的所述第一圖像中的圖像坐標,計算多個所述匹配特徵的第一空間坐標,所述第一空間坐標中包括有所述第一相機在該兩個相鄰視角位置上的運動關係;根據多個所述匹配特徵在該兩個相鄰視角位置中所述一個視角位置上的所述第一圖像和所述第二圖像中的圖像坐標,計算多個所述匹配特徵的第二空間坐標,所述第二空間坐標包括有由所述第一相機和所述第二相機固定聯結確定的所述第一相機相對於所述第二相機的已知的運動關係;根據所述第一空間坐標與所述第二空間坐標相等,計算出所述第一相機在該兩個相鄰視角位置上的運動關係,其中,所述運動關係包括旋轉運動參數和平移運動參數,所述匹配特徵的個數大於等於7。
具體的,針對兩個相鄰視角位置,匹配特徵的傳遞方式基本有兩種,如圖2(a)和圖2(b)所示,例如,兩個相鄰掃描位置(即視角位置)i和j(i,j=1,2,…,n,i≠j)處,上述立體視覺三維重建系統(binocularvisionsystem,簡稱為bvs)的第一相機用wi和wj表示,第二相機用fi和fj表示,若想標定第一相機wi和wj之間真實尺度的運動關係,可通過其與第二相機fi或fj的共同特徵來確定。基於圖2(a)和圖2(b)所示的兩種基本的特徵傳遞方式,以第一種傳遞方式為例,設wi、fi和wj採集的場景圖像有q個共同可見的匹配特徵,用表示,其歸一化的圖像坐標用表示。若匹配特徵不足7個,則換用另外一種特徵傳遞方式,或移動bvs系統到更合適的掃描位置。由wi和fi組成的bvs(表示為bvs-wifi)根據wi和fi在掃描位置i上分別採集的圖像中匹配特徵的歸一化圖像坐標,基於三角重建原理可以計算得到匹配特徵的第二空間坐標,設為(世界坐標系位於第一相機wi上)。由wi和wj組成的bvs根據wi和wj在掃描位置i和j上分別採集的圖像中匹配特徵的歸一化圖像坐標,基於三角重建原理可以計算得到匹配特徵的第一空間坐標,設為(世界坐標系位於相機wi上)。由於匹配特徵是一致的,因此,第一空間坐標和第二空間坐標存在如下等式關係:
由於bvs系統中第一相機和第二相機固定聯結,由此可基於固定聯結預先標定第一相機相對於第二相機的運動關係即已知,因此,為了基於上述公式(1)計算第一相機在該兩個相鄰視角位置上的運動關係只需計算中的旋轉運動參數和平移運動參數
具體實施時,在本實施例中通過以下方式計算第一相機在該兩個相鄰視角位置上的運動關係中的旋轉運動參數所述計算機還用於,通過以下公式計算本質矩陣後,通過分解法計算得到所述第一空間坐標中運動關係的旋轉運動參數:
其中,是匹配特徵在該兩個相鄰視角位置中一個視角位置上的所述第一圖像中的歸一化圖像坐標;是匹配特徵在該兩個相鄰視角位置中另一個視角位置上的所述第一圖像中的歸一化圖像坐標;t是所述第一相機在該兩個相鄰視角位置上的運動關係中的平移運動參數;r是所述第一相機在該兩個相鄰視角位置上的運動關係中的旋轉運動參數;e是所述本質矩陣;
將所述第一相機在該兩個相鄰視角位置上的運動關係中的旋轉運動參數代入所述第一空間坐標與所述第二空間坐標的等式中,計算得到所述第一相機在該兩個相鄰視角位置上的運動關係中的平移運動參數。
具體的,如圖3所示,針對第一相機在兩個相鄰視角位置上採集的兩幅圖像中的匹配特徵x1,x2存在如下極線約束幾何關係:
由於匹配特徵x1,x2也存在於兩個相機在相鄰兩個視角位置中的一個視角位置上分別採集的圖像中,設兩個相機的內參矩陣分別為k1,k2,則的表示方法如公式(3)所示。e稱為本質矩陣。
由公式(2)求得本質矩陣後,可由分解法得到運動關係[r,t]。然而得到的t存在深度不確定性,含有一個未知的深度因子λ。即,只是用匹配特徵無法得到真實尺度的運動關係中的t,存在深度歧義。在此,我們暫時用歸一化的平移矩陣t=t/||t||來表示兩個相機之間的平移運動(在使用匹配特徵恢復[r,t]時,為了使結果更加準確,使用ransac對原始匹配點集進行處理,去掉匹配不可靠的點,以得到更加魯棒可靠的匹配特徵)。基於上述公式(2)和(3)可計算得到中但只能得到帶有一個未知尺度因子的平移矩陣將和代入上述等式(1)即可計算得到如下公式(4):
由公式(1)和(4)可以恢復第一相機wi和wj之間在兩個相鄰視角位置上的平移矩陣的尺度因子,如公式(5)所示:
在實際中,可利用全部匹配特徵獲得最優的具有真實尺度的平移矩陣如公式(6)所示:
因此計算得到第一相機在該兩個相鄰視角位置上的運動關係中的平移運動參數,進而得到第一相機在該兩個相鄰視角位置上的運動關係
計算得到第一相機在多個相鄰視角位置上的運動關係之後,為了進一步提高數據的準確性,在本實施例中,所述計算機還用於,在根據所述運動關係和所述第一相機在多個視角位置上採集的圖像,重建所述待重建物體的三維模型之前,根據所述第一相機在所述多個視角位置上的運動關係,確定所述第一相機在所述多個視角位置上的坐標,將所述第一相機在所述多個視角位置上的坐標統一到預設參考坐標繫上,針對每個視角位置,計算每個視角位置分別到第一個視角位置的最短距離;按照每個視角位置到第一個視角位置的最短距離的大小順序,將所述第一相機在每個視角位置上採集的圖像依次拼接起來,基於拼接後的圖像數據和第一相機在多個相鄰視角位置上的運動關係重建待重建物體的三維模型。
以下結合圖4具體說明上述立體視覺三維重建系統的工作方法,該方法包括如下步驟:
1)bvs系統組成:兩個固定聯結的第一相機和第二相機(第一相機和第二相機中包括有圖像採集卡),計算機,計算機包括有相應的數據處理軟體。
2)工作方式:bvs中的第一相機和第二相機同步圍繞待重建物體自由移動,兩個相機採集一系列不同視角的圖像,直至完成全視角掃描,實現三維全場重建。其中,第一相機為工作相機,其在多視角運動中採集的圖像用於三維重建;第二相機為跟蹤相機,用於bvs中第一相機的跟蹤定位。
3)重建技術:詳細的重建方法主要包括以下幾個關鍵技術和步驟:
(1)使用本申請的bvs在圍繞待重建物體的n個視角位置上進行圖像拍攝(n可根據測量對象調整),在每個視角位置上工作相機wi和跟蹤相機fi(i=1,2,…,n)同步拍攝場景信息。使用工作相機進行全場重建需要標定工作相機在多視角位置中的運動關係,該運動關係可通過跟蹤相機來確定。
(2)根據上述公式(2)和公式(3),基於工作相機在相鄰兩個視角位置上分別採集的兩幅圖像中的匹配特徵還原工作相機在相鄰兩個視角位置之間的運動關係[r,t]。
(3)使用跟蹤相機恢復工作相機真實尺度的運動關係:
(a)設兩個相鄰掃描位置(即視角位置)i和j(i,j=1,2,…,n,i≠j)處,上述立體視覺三維重建系統(binocularvisionsystem,簡稱為bvs)的第一相機用wi和wj表示,第二相機用fi和fj表示,若想標定第一相機wi和wj之間真實尺度的運動關係,可通過其與第二相機fi或fj的匹配特徵來確定。如圖2(a)和圖2(b)所示的兩種基本的特徵傳遞方式。
(b)基於圖2(a)和圖2(b)所示的兩種基本的特徵傳遞方式,以第一種傳遞方式為例,設wi、fi和wj採集的場景圖像有q個共同可見的匹配特徵,用表示,其歸一化的圖像坐標用表示。若匹配特徵不足7個,則換用另外一種特徵傳遞方式,或移動bvs系統到更合適的掃描位置。由wi和fi組成的bvs(表示為bvs-wifi)根據wi和fi在掃描位置i上分別採集的圖像中匹配特徵的歸一化圖像坐標,基於三角重建原理可以計算得到匹配特徵的第二空間坐標,設為(世界坐標系位於第一相機wi上)。由wi和wj組成的bvs根據wi和wj在掃描位置i和j上分別採集的圖像中匹配特徵的歸一化圖像坐標,基於三角重建原理可以計算得到匹配特徵的第一空間坐標,設為(世界坐標系位於相機wi上)。由於匹配特徵是一致的,因此,第一空間坐標和第二空間坐標存在如公式(1)所示的等式關係。
(c)由於bvs系統中第一相機和第二相機固定聯結,由此可基於固定聯結預先標定第一相機相對於第二相機的運動關係即已知,因此,為了基於上述公式(1)計算第一相機在該兩個相鄰視角位置上的運動關係只需計算中的旋轉運動參數和平移運動參數基於上述公式(2)和公式(3)可計算得到中但只能得到帶有一個未知尺度因子的平移矩陣將和代入上述等式(1)即可計算得到如上述公式(4)所示的等式關係。
(d)由公式(1)和(4)可以恢復工作相機wi和wj之間在兩個相鄰視角位置上的平移矩陣的尺度因子,如上述公式(5)所示。
在實際中,可利用全部共同可見特徵獲得最優的具有真實尺度的平移矩陣如上述公式(6)所示。
(4)相鄰掃描位置上工作相機之間的運動關係確定之後,確定所述第一相機在所述多個視角位置上的坐標,將所述第一相機在所述多個視角位置上的坐標統一到預設參考坐標系(一般將參考坐標系設在工作相機的第一個掃描位置處)上,針對每個視角位置,計算每個視角位置分別到第一個視角位置的最短距離;按照每個視角位置到第一個視角位置的最短距離的大小順序,將所述第一相機在每個視角位置上採集的圖像依次拼接起來,實現多視角掃描運動和數據的統一。
(5)以拼接後的工作相機採集的一系列場景圖像為輸入,進行特徵提取、匹配、重建,獲得初步的三維點雲數據。
(6)結合已確定的運動關係信息使用光束平差對三維數據和運動關係進行全局優化,排除誤差較大的數據,得到優化的三維全視角重建數據。
(7)根據得到的三維重建數據生成待重建物體的三維模型。
基於同一發明構思,本發明實施例中還提供了一種立體視覺三維重建方法,如下面的實施例所述。由於立體視覺三維重建方法解決問題的原理與立體視覺三維重建系統相似,因此立體視覺三維重建方法的實施可以參見立體視覺三維重建系統的實施,重複之處不再贅述。
圖5是本發明實施例的立體視覺三維重建方法的一種流程圖,如圖5所示,該方法包括:
步驟501:採用第一相機和第二相機同步圍繞待重建物體移動,在多個視角位置上同步採集所述待重建物體的圖像,其中,所述第一相機和所述第二相機固定聯結;
步驟502:根據所述第一相機和所述第二相機採集的圖像,確定所述第一相機在所述多個視角位置上的運動關係,根據所述運動關係和所述第一相機在多個視角位置上採集的圖像,重建所述待重建物體的三維模型。
在一個實施例中,根據所述第一相機和所述第二相機採集的圖像,確定所述第一相機在所述多個視角位置上的運動關係,包括:針對兩個相鄰視角位置,獲取所述第一相機在該兩個相鄰視角位置上分別採集的第一圖像;獲取在該兩個相鄰視角位置中一個視角位置上所述第二相機採集的第二圖像;確定多個匹配特徵,所述匹配特徵為在所述第一圖像和所述第二圖像中均具備且相同的特徵,所述匹配特徵的個數大於等於7;根據多個所述匹配特徵在該兩個相鄰視角位置上的所述第一圖像中的歸一化圖像坐標,計算多個所述匹配特徵的第一空間坐標,所述第一空間坐標中包括有所述第一相機在該兩個相鄰視角位置上的運動關係;根據多個所述匹配特徵在該兩個相鄰視角位置中所述一個視角位置上的所述第一圖像和所述第二圖像中的歸一化圖像坐標,計算多個所述匹配特徵的第二空間坐標,所述第二空間坐標包括有由所述第一相機和所述第二相機固定聯結確定的所述第一相機相對於所述第二相機的已知的運動關係;根據所述第一空間坐標與所述第二空間坐標相等,計算出所述第一相機在該兩個相鄰視角位置上的運動關係,其中,所述運動關係包括旋轉運動參數和平移運動參數。
在一個實施例中,根據所述第一空間坐標與所述第二空間坐標相等,計算出所述第一相機在該兩個相鄰視角位置上的運動關係,包括:通過以下公式計算本質矩陣後,通過分解法計算得到所述第一空間坐標中運動關係的旋轉運動參數:其中,是匹配特徵在該兩個相鄰視角位置中一個視角位置上的所述第一圖像中的歸一化圖像坐標;是匹配特徵在該兩個相鄰視角位置中另一個視角位置上的所述第一圖像中的歸一化圖像坐標;t是所述第一相機在該兩個相鄰視角位置上的運動關係中的平移運動參數;r是所述第一相機在該兩個相鄰視角位置上的運動關係中的旋轉運動參數;e是所述本質矩陣;將所述第一相機在該兩個相鄰視角位置上的運動關係中的旋轉運動參數代入所述第一空間坐標與所述第二空間坐標的等式中,計算得到所述第一相機在該兩個相鄰視角位置上的運動關係中的平移運動參數。
在一個實施例中,在根據所述運動關係和所述第一相機在多個視角位置上採集的圖像,重建所述待重建物體的三維模型之前,還包括:根據所述第一相機在所述多個視角位置上的運動關係,確定所述第一相機在所述多個視角位置上的坐標,將所述第一相機在所述多個視角位置上的坐標統一到預設參考坐標繫上,針對每個視角位置,計算每個視角位置分別到第一個視角位置的最短距離;按照每個視角位置到第一個視角位置的最短距離的大小順序,將所述第一相機在每個視角位置上採集的圖像依次拼接起來。
在本發明實施例中,通過固定聯結的第一相機和第二相機同步圍繞待重建物體移動,在多個視角位置上同步採集待重建物體的圖像,並根據第一相機和第二相機採集的圖像,確定第一相機在多個視角位置上的運動關係,進而根據運動關係和第一相機在多個視角位置上採集的圖像,重建待重建物體的三維模型。可見,第二相機採集的圖像只用於和第一相機採集的圖像一起確定第一相機在多個視角位置上的運動關係,即第二相機只用於在多個視角位置上確定第一相機的運動關係,實現第一相機的跟蹤定位,第二相機可以稱為跟蹤相機,使得可以避免第三方標定設備的使用,有利於降低成本;同時,由於只使用第一相機在多個視角位置上採集的圖像進行重建待重建物體的三維模型,第二相機採集的圖像並不用於三維模型的重建,第一相機可以稱為工作相機,可以消除攝像機性能差異對圖像採集的影響,使得提高了數據的準確性,有助於恢復待重建物體真實尺度的表面形貌;由於是第一相機和第二相機同步圍繞待重建物體自由移動,不需要待重建物體自身進行旋轉,這對於需要保持原樣的文物等貴重物體來說具有很高的實用性,也使得避免物體運動控制設備的使用,有利於降低成本。
顯然,本領域的技術人員應該明白,上述的本發明實施例的各模塊或各步驟可以用通用的計算裝置來實現,它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網絡上,可選地,它們可以用計算裝置可執行的程序代碼來實現,從而,可以將它們存儲在存儲裝置中由計算裝置來執行,並且在某些情況下,可以以不同於此處的順序執行所示出或描述的步驟,或者將它們分別製作成各個集成電路模塊,或者將它們中的多個模塊或步驟製作成單個集成電路模塊來實現。這樣,本發明實施例不限制於任何特定的硬體和軟體結合。
以上所述僅為本發明的優選實施例而已,並不用於限制本發明,對於本領域的技術人員來說,本發明實施例可以有各種更改和變化。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。