一種基于單幅線條圖像的三維立體重建方法
【專利摘要】本發(fā)明公布了一種基于單幅線條圖像的三維立體重建方法。該方法首先將輸入的線條圖像進(jìn)行矢量化處理,將其轉(zhuǎn)換為二維矢量線條圖,然后應(yīng)用子圖同構(gòu)的方法將二維矢量線條圖與預(yù)先設(shè)定的三維模型庫進(jìn)行匹配,與之匹配的模型稱為候選模型,最后將線條圖與候選模型的坐標(biāo)差距函數(shù)進(jìn)行最小化求解,以選擇最優(yōu)的模型并得出重建結(jié)果。本發(fā)明可以有效地對單幅線條圖像進(jìn)行三維立體重建,極大地提高了相關(guān)文檔的閱讀體驗(yàn)。
【專利說明】一種基于單幅線條圖像的三維立體重建方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于圖像處理與計(jì)算機(jī)視覺領(lǐng)域,涉及一種基于單幅線條圖像的三維立體 重建方法。
【背景技術(shù)】
[0002] 在各式各樣的電子文檔中存在著大量的立體幾何圖形。這些文檔包括教材、試題、 演示稿等等。然而,這些立體幾何圖形絕大部分以二維線條圖像的方式存儲在文檔中,而無 法直接呈現(xiàn)物體的三維立體結(jié)構(gòu),對讀者的閱讀造成了不便。特別是在移動閱讀設(shè)備、三維 顯示設(shè)備越來越成熟的今天,以二維線條圖像方式存儲和顯示的立體幾何圖形已經(jīng)落后于 先進(jìn)的顯示技術(shù),影響了讀者的閱讀體驗(yàn)。如果可以將這些線條圖像恢復(fù)重建為三維立體, 將極大地提1?讀者的閱讀體驗(yàn)。
[0003] "線條圖"是一種人造的二維圖形,它能夠以清晰直觀的方式描述物體的結(jié)構(gòu)。不 同于一般的自然圖像,線條圖的結(jié)構(gòu)往往由點(diǎn)、線構(gòu)成,具有清晰的幾何結(jié)構(gòu),由平行投影 構(gòu)成,沒有透視特征,并不具有一般自然圖像中的紋理信息。人們常見的線條圖包括手繪圖 形,工程制圖,CAD制圖,教材插圖,等等。線條圖實(shí)際上是一個含有頂點(diǎn)和邊的連通圖(對 于非連通圖可以劃分為連通子圖分別進(jìn)行處理)。對線條圖進(jìn)行三維重建的算法一般需要 一個預(yù)處理把圖形轉(zhuǎn)換為頂點(diǎn)二維坐標(biāo)和連接邊集合。頂點(diǎn)之間的連接邊,可以是直線段, 也可以是曲線。
[0004] 過去20年,出現(xiàn)了大量基于單幅線條圖的三維立體重建方法的研究。這些研 究采用的方法、適用對象、應(yīng)用場景都不盡相同。按重建方法采用的算法分類,有基于優(yōu) 化準(zhǔn)則、基于幾何假設(shè)推理、基于分治策略等方法?;谝?guī)則是早期大部分方法所采用 的,它們將三維立體定義為幾何物體,并用一些幾何規(guī)則對其加以約束,以在求解空間中 尋求最佳的結(jié)果。常用的規(guī)則有平面規(guī)則(文獻(xiàn)"An optimization-based approach to the interpretation of single line drawings as3D wire frames. International Journal of Computer Vision,1992·,')、MSDA 規(guī)則(文獻(xiàn)"Emulating the human interpretation of line-drawings as three-dimensional objects. International Journal of Computer Vision,1991·,')、MSDSM 規(guī)則(文獻(xiàn)"3D Object Recovery from 2D Images : ANew Approach. SPIE Proc. Robotics and Computer Vision,1996.,')、 MEAD 規(guī)則(文獻(xiàn)"3_D interpretation of single line drawings based on entropy minimization principle. Computer Vision and Pattern Recognition,2001.,')等。 求解優(yōu)化函數(shù)一般是這類方法的最終步驟;基于幾何假設(shè)的方法首先假設(shè)其所處理的 三維立體遵循一定的要求,如含有立方角點(diǎn)(文獻(xiàn)"3D reconstruction of polyhedral objects from single parallel projections using cubic corner. Computer-Aided Design,2011. ")、有空間對稱性(文獻(xiàn)"Inferring mirror symmetric 3D shapes from sketches. Computer-Aided Design,2012·")等。在假設(shè)的基礎(chǔ)上,它們對整個物體的點(diǎn) 和邊坐標(biāo)進(jìn)行推測,最終得到立體重建結(jié)果。這種方法中不一定包含優(yōu)化求解步驟,一般 計(jì)算復(fù)雜度相對較低,但其假設(shè)條件通常較苛刻,只適用于一些特殊的圖形;近年出現(xiàn)的一 些方法(文獻(xiàn) "A divide-and-conquer approach to 3D object reconstruction from line drawings. IEEE 11th International Conference on Computer Vision, 2007.,',文 獻(xiàn)"Decomposition of complex line drawings with hidden lines for 3Dplanar-faced manifold object reconstruction. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2011. ",文獻(xiàn) "Object cut: Complex 3d object reconstruction through line drawing separation. IEEE Conference on Computer Vision and Pattern Recognition, 2010. ")采用了分治的策略來解決一些復(fù)雜的三維立體重建問題,它們先將 復(fù)雜的圖形劃分為盡量簡單的基本部分,然后應(yīng)用一些規(guī)則來進(jìn)行優(yōu)化求解,最后將各個 部分求得的結(jié)果組合起來得到整個重建的結(jié)果。
[0005] 可見,目前的對單幅線條圖的三維立體重建方法大多只能處理矢量化的線條圖, 而無法對圖像進(jìn)行處理。即使可以通過一定的預(yù)處理將線條圖像轉(zhuǎn)化為矢量的線條圖,目 前方法也高度依賴線條圖的完整性和正確性,有些甚至必須依賴手工處理提取線條圖,而 沒有一種高效的、可以直接處理圖像的、有容錯能力的三維立體重建方法。
【發(fā)明內(nèi)容】
[0006] 為了實(shí)現(xiàn)對單幅線條圖像進(jìn)行高效的三維立體重建,本發(fā)明提出一種基于單幅線 條圖像的三維立體重建方法。該方法首先將輸入的線條圖像進(jìn)行矢量化處理,將其轉(zhuǎn)換為 二維矢量線條圖,然后應(yīng)用"子圖匹配"的方法將二維矢量線條圖與預(yù)先設(shè)定的三維模型庫 進(jìn)行匹配,與之匹配的模型稱為候選模型,最后將線條圖與候選模型的坐標(biāo)差距函數(shù)進(jìn)行 最小化求解,以選擇最優(yōu)的模型并得出重建結(jié)果。本發(fā)明可以有效地對單幅線條圖像進(jìn)行 三維立體重建。
[0007] 本發(fā)明的處理對象是從PDF或其它格式的電子文檔中提取的幾何線條圖像,或通 過手機(jī)及其它照相設(shè)備拍攝,或通過掃描儀掃描紙質(zhì)教材獲取的幾何線條圖像。
[0008] 本發(fā)明提供的技術(shù)方案如下:
[0009] -種基于單幅線條圖像的三維立體重建方法,其特征是,包括如下步驟:
[0010] 1)從輸入圖像中提取出矢量線條圖;
[0011] 2)從三維模型庫中為矢量線條圖選取若干候選模型;
[0012] 3)將矢量線條圖的頂點(diǎn)坐標(biāo)固定,在三維空間中旋轉(zhuǎn)、平移和縮放候選模型以匹 配矢量線條圖的二維頂點(diǎn)坐標(biāo),使得矢量線條圖與候選模型各個頂點(diǎn)的坐標(biāo)之方差達(dá)到最 小值;然后從若干個候選模型中選出坐標(biāo)之方差最小的模型,作為三維立體重建的結(jié)果。
[0013] 優(yōu)選的:
[0014] 所述的三維立體重建方法,其特征是,步驟1)的實(shí)現(xiàn)方法為:
[0015] 1. 1)將輸入圖像進(jìn)行二值化處理和連通分支搜索;
[0016] 1. 2)將圖像中待提取的線條分為實(shí)線和虛線進(jìn)行直線的提?。?br>
[0017] 1. 3)根據(jù)所提取的直線的交點(diǎn)把直線切分成線段;
[0018] 1. 4)過濾掉多余的線條,得到矢量線條圖。
[0019] 所述的三維立體重建方法,其特征是,步驟2)中所述的三維模型庫中,以參數(shù)化 形式保存三維模型:一個三維模型為一個三維空間中的線條圖,其頂點(diǎn)坐標(biāo)由一組參數(shù)控 制。
[0020] 所述的三維立體重建方法,其特征是,步驟2)中,使用子圖同構(gòu)的方法為矢量線 條圖選取若干候選模型。
[0021] 所述的三維立體重建方法,其特征是,步驟2)中,需進(jìn)行兩次匹配,第一次將矢量 線條圖作為大圖,將三維模型作為小圖;第二次將三維模型作為大圖,將矢量線條圖作為小 圖。
[0022] 所述的三維立體重建方法,其特征是,步驟1)的實(shí)現(xiàn)方法為:
[0023] 1. 1)對輸入圖像的連通分支進(jìn)行k-means聚類,采用連通分支的包圍框大小和像 素面積作為其聚類屬性,分為三類:主框架、虛線點(diǎn)、描述文字;
[0024] 1. 2)使用Hough變換對主框架連通分支進(jìn)行實(shí)線提取,使用RANSAC方法進(jìn)行虛線 提??;
[0025] 1.3)去除懸空線、??烤€、對角線等多余線條,生成矢量線條圖。
[0026] 所述的三維立體重建方法,其特征是,步驟3)的實(shí)現(xiàn)方法為:
[0027] 3. 1)將矢量線條圖頂點(diǎn)坐標(biāo)固定,在三維空間中旋轉(zhuǎn)、平移和縮放候選模型以匹 配矢量線條圖的二維頂點(diǎn)坐標(biāo);
[0028] 3. 2)計(jì)算候選模型經(jīng)過平行投影到矢量線條圖平面的坐標(biāo),并得到模型投影坐標(biāo) 和線條圖頂點(diǎn)坐標(biāo)的方差,構(gòu)成目標(biāo)函數(shù)并對其進(jìn)行優(yōu)化求解;
[0029] 3. 3)選取使得目標(biāo)函數(shù)最小的候選模型作為最優(yōu)模型。
[0030] 所述的三維立體重建方法,其特征是,還包括以下步驟:
[0031] 4)輸出三維立體重建的結(jié)果。
[0032] 本發(fā)明的效果在于:實(shí)現(xiàn)了一種基于單幅線條圖像的三維立體重建方法。通過對 輸入圖像抽取二維矢量線條圖,并將其與預(yù)先設(shè)定的三維模型庫進(jìn)行匹配,擇出候選模型, 再通過對候選模型的旋轉(zhuǎn)、平移和縮放得到三維立體重建的結(jié)果。該方法能夠解決目前方 法不能直接處理圖像、對輸入線條圖完整性要求高等缺點(diǎn),可以提升處理效率并豐富移動 設(shè)備用戶的閱讀體驗(yàn)。
【專利附圖】
【附圖說明】
[0033] 圖1為本發(fā)明的流程框架圖;
[0034] 圖2為本發(fā)明的從圖像中提取矢量線條圖的方法流程圖;
[0035] 圖3為從圖像中提取矢量線條圖的示意圖。(a)輸入圖像(b)對連通分支聚類(c) 提取實(shí)線(d)提取虛線(e)合成矢量線條圖;
[0036] 圖4為預(yù)設(shè)的三維模型庫示例(a)長方體(b)四棱錐(c)三棱柱(d)三棱臺;
[0037] 圖5為提取虛線的方法示意圖(a)虛線點(diǎn)(b) (c)提取直線(d)離群點(diǎn);
[0038] 圖6為多余線條過濾的示意圖;
[0039] 圖7為具體實(shí)施例的輸入文檔圖像;
[0040] 圖8為抽取矢量線條圖的結(jié)果示意圖;
[0041] 圖9為子圖同構(gòu)匹配候選模型的示意圖;
[0042] 圖10為三維立體重建輸出結(jié)果示意圖;
【具體實(shí)施方式】
[0043] 下面針對將文檔圖像作為三維立體重建系統(tǒng)的輸入的應(yīng)用場景,介紹本發(fā)明的具 體實(shí)施流程。這里的文檔圖像是從PDF或其它格式的電子文檔中提取的幾何線條圖像,或 通過手機(jī)及其它照相設(shè)備拍攝,或通過掃描儀掃描紙質(zhì)教材獲取的幾何線條圖像。用戶U 的設(shè)備(個人電腦、手持設(shè)備等)需要先安裝實(shí)現(xiàn)本發(fā)明功能的執(zhí)行軟件,安裝完畢后,用 戶U可以在軟件中打開PDF文檔,通過鼠標(biāo)或手勢定位和截取圖像,在軟件中自動執(zhí)行三維 立體重建工作并輸出結(jié)果。用戶U可以在屏幕上觀看和旋轉(zhuǎn)輸出的三維圖形。
[0044] 本發(fā)明的具體實(shí)施步驟為(參圖1):
[0045] (1)提取矢量線條圖
[0046] 方法的流程如圖2所示。對于圖像中的實(shí)線,將圖像中的最大連通分支進(jìn)行Hough 變換處理;對于圖像中的虛線,通過K-means聚類將圖像中較小的連通分支篩選出來,然后 通過RANSAC方法進(jìn)行提取直線。然后計(jì)算所提取直線的交點(diǎn),從交點(diǎn)處把直線切分為線 段,并合并相鄰交點(diǎn)。最后經(jīng)過過濾處理去除多余線條,生成最終的線段和矢量線條圖,圖3 依次顯示了文檔圖像示例,實(shí)線、虛線的提取結(jié)果,和生成的矢量線條圖。以下為具體的實(shí) 現(xiàn)方法:
[0047] 1. 1)連通分支聚類。如圖3(b)所示,文檔圖像中通常有三種類型的連通分支:主 框架,虛線點(diǎn),以及描述文字。使用k-means方法對圖像中的連通分支進(jìn)行聚類。設(shè)k = 3, 并且采取連通分支的包圍框大小和像素面積作為其聚類屬性。經(jīng)過一輪聚類之后,成功地 將連通分支劃分為三類,其中面積最大的一類被選為主框架,面積相似且最小的一類為虛 線點(diǎn),其他的為描述文字。
[0048] 1. 2)實(shí)線提取。采用了 Hough變換和基于邊緣線段的方法在主框架的Canny邊緣 上進(jìn)行直線提取。由于圖像上的一條邊有兩條Canny邊緣,因此一條邊提取的直線共有兩 條并且具有幾乎相同的斜率與非常近的距離。根據(jù)它們的斜率和距離關(guān)系將這些直線合并 為一條。
[0049] 1. 3)虛線提取。如圖5所示,采用RANSAC方法來進(jìn)行虛線的提取。首先,所有被 劃分為虛線點(diǎn)的連通分支被縮小為其中心點(diǎn),然后每兩點(diǎn)可確定一條直線。在這些直線中 尋找包含內(nèi)點(diǎn)(離直線的距離不超過一個足夠小的范圍)最多的直線,取出這一直線并把 它包含的內(nèi)點(diǎn)剔除。重復(fù)以上過程直到找不到包含3個內(nèi)點(diǎn)以上的直線。余下的點(diǎn)成為離 群點(diǎn)。
[0050] 1.4)多余線條過濾。對于一些不必要的線條(輔助線,錯誤抽取的線條等等),需 要將它們除去以提高模型匹配的成功率。具體去除的線條類型如下:
[0051] A)懸空線:在抽取出的矢量線條圖中,若一個線條端點(diǎn)的度為1,則它稱為懸空 線。如圖6(a)中的線條6-7就是一條懸空線,它的端點(diǎn)7的度為1。其他典型的懸空線多 見于坐標(biāo)軸和不完整抽取的矢量線條圖。對于懸空線需要將它們?nèi)コ?br>
[0052] B)??烤€:若一個線條的端點(diǎn)正好在另一線條的中間部分(不是兩端),則它是一 條??烤€(圖eO^CE^hC^QF)。許多文檔圖像中的輔助線都是??烤€。這些線條也需 要被除去。
[0053] C)對角線:另一種多余線條是圖中的平行四邊形的對角線,如圖6(c)中 ΑΛ A&。這些對角線破壞了原本物體的拓補(bǔ)結(jié)構(gòu),因此需要被去除。
[0054] (2)三維模型匹配
[0055] 基于對典型文檔圖像的分析,本發(fā)明建立了如下的三維模型庫:三維模型庫由若 干個三維模型組成,一個模型為一個三維空間中的線條圖,其頂點(diǎn)坐標(biāo)是由一組參數(shù)控制 的。三維模型庫中的模型都是文檔圖像中的典型立體圖形,如長方體,四棱錐,三棱臺等,如 圖4所示。以圖4(a)為例,一個長方體模型有三個參數(shù):a = {x,y,z},用參數(shù)矩陣V來表 示這個模型的所有頂點(diǎn)坐標(biāo)為
[0056]
【權(quán)利要求】
1. 一種基于單幅線條圖像的三維立體重建方法,其特征是,包括如下步驟: 1) 從輸入圖像中提取出矢量線條圖; 2) 從三維模型庫中為矢量線條圖選取若干候選模型; 3) 將矢量線條圖的頂點(diǎn)坐標(biāo)固定,在三維空間中旋轉(zhuǎn)、平移和縮放候選模型以匹配矢 量線條圖的二維頂點(diǎn)坐標(biāo),使得矢量線條圖與候選模型各個頂點(diǎn)的坐標(biāo)之方差達(dá)到最小 值;然后從若干個候選模型中選出坐標(biāo)之方差最小的模型,作為三維立體重建的結(jié)果。
2. 如權(quán)利要求1所述的三維立體重建方法,其特征是,步驟1)的實(shí)現(xiàn)方法為: 1. 1)將輸入圖像進(jìn)行二值化處理和連通分支搜索; 1. 2)將圖像中待提取的線條分為實(shí)線和虛線進(jìn)行直線的提取; 1. 3)根據(jù)所提取的直線的交點(diǎn)把直線切分成線段; 1.4)過濾掉多余的線條,得到矢量線條圖。
3. 如權(quán)利要求1所述的三維立體重建方法,其特征是,步驟2)中所述的三維模型庫中, 以參數(shù)化形式保存三維模型:一個三維模型為一個三維空間中的線條圖,其頂點(diǎn)坐標(biāo)由一 組參數(shù)控制。
4. 如權(quán)利要求3所述的三維立體重建方法,其特征是,步驟2)中,使用子圖同構(gòu)的方法 為矢量線條圖選取若干候選模型。
5. 如權(quán)利要求4所述的三維立體重建方法,其特征是,步驟2)中,需進(jìn)行兩次匹配,第 一次將矢量線條圖作為大圖,將三維模型作為小圖;第二次將三維模型作為大圖,將矢量線 條圖作為小圖。
6. 如權(quán)利要求1所述的三維立體重建方法,其特征是,步驟1)的實(shí)現(xiàn)方法為: 1. 1)對輸入圖像的連通分支進(jìn)行k-means聚類,采用連通分支的包圍框大小和像素面 積作為其聚類屬性,分為三類:主框架、虛線點(diǎn)、描述文字; 1. 2)使用Hough變換對主框架連通分支進(jìn)行實(shí)線提取,使用RANSAC方法進(jìn)行虛線提 ??; 1.3)去除包括懸空線、停靠線、對角線在內(nèi)的多余線條,生成矢量線條圖。
7. 如權(quán)利要求1所述的三維立體重建方法,其特征是,步驟3)的實(shí)現(xiàn)方法為: 3. 1)將矢量線條圖頂點(diǎn)坐標(biāo)固定,在三維空間中旋轉(zhuǎn)、平移和縮放候選模型以匹配矢 量線條圖的二維頂點(diǎn)坐標(biāo); 3. 2)計(jì)算候選模型經(jīng)過平行投影到矢量線條圖平面的坐標(biāo),并得到模型投影坐標(biāo)和線 條圖頂點(diǎn)坐標(biāo)的方差,構(gòu)成目標(biāo)函數(shù)并對其進(jìn)行優(yōu)化求解; 3. 3)選取使得目標(biāo)函數(shù)最小的候選模型作為最優(yōu)模型。
8. 如權(quán)利要求1所述的三維立體重建方法,其特征是,還包括以下步驟: 4) 輸出三維立體重建的結(jié)果。
【文檔編號】G06T17/00GK104252715SQ201410450000
【公開日】2014年12月31日 申請日期:2014年9月5日 優(yōu)先權(quán)日:2014年9月5日
【發(fā)明者】鄭金鑫, 王勇濤, 湯幟 申請人:北京大學(xué)