三維空間的建模方法和裝置的制造方法
【專利摘要】本發(fā)明公開了一種三維空間的建模方法和裝置,其中該三維空間的建模方法包括:讀取圖片,上述圖片為預(yù)先繪制的欲建立的模型的線條圖片;采用圖像處理技術(shù)識(shí)別上述圖片中的各個(gè)矩形;根據(jù)每個(gè)矩形的長度和寬度的大小,為每個(gè)矩形設(shè)置對(duì)應(yīng)的立體結(jié)構(gòu);其中,該立體結(jié)構(gòu)包括:與上述矩形的四邊分別對(duì)應(yīng)的四面墻體、與上述矩形對(duì)應(yīng)的頂面和地面;根據(jù)每個(gè)矩形間的相對(duì)位置關(guān)系,拼接每個(gè)矩形對(duì)應(yīng)的立體結(jié)構(gòu),得到上述線條圖片的三維空間模型。通過本發(fā)明,能夠根據(jù)粗略的線條圖片生成三維空間,且操作簡單,提高了三維建模的效率。
【專利說明】
H維空間的建模方法和裝置
技術(shù)領(lǐng)域
[0001] 本發(fā)明設(shè)及計(jì)算機(jī)建模技術(shù)領(lǐng)域,尤其是設(shè)及一種=維空間的建模方法和裝置。
【背景技術(shù)】
[0002] 在計(jì)算機(jī)內(nèi)生成物體的=維效果圖主要有兩類方法:一類是使用幾何建模軟件通 過人機(jī)交互生成人為控制下的物體的=維幾何模型,另一類是通過一定的手段獲取物體的 幾何形狀,基于該幾何形狀構(gòu)建物體的=維模型。前者實(shí)現(xiàn)技術(shù)己經(jīng)十分成熟,現(xiàn)有若干軟 件支持,比如3DMax、AutoCAD、UG等,一般使用具有數(shù)學(xué)表達(dá)式的曲線曲面表示幾何形狀。后 者一般稱為=維重建過程,=維重建是指利用二維投影恢復(fù)物體=維信息形狀的數(shù)學(xué)過程 和計(jì)算機(jī)技術(shù),包括數(shù)據(jù)獲取、預(yù)處理、點(diǎn)云拼接和特征分析等步驟。
[0003] 在虛擬現(xiàn)實(shí)、房地產(chǎn)和公共安全等領(lǐng)域,有時(shí)建筑模型中大量的細(xì)節(jié)必須手工構(gòu) 造,從而需要投入大量的人力資源,但在多數(shù)情況下,只需具有表意性的3D模型,運(yùn)種表意 性的3D模型無需細(xì)節(jié)操作,因?yàn)樯鲜龇椒ǎㄈ?DMax、AutoCAD、UG軟件)操作復(fù)雜,對(duì)操作者 的技術(shù)背景要求較高,不適合應(yīng)用于表意性的3D模型。
[0004] 針對(duì)上述=維建模方法操作復(fù)雜,對(duì)操作者的技術(shù)要求較高的問題,目前尚未提 出有效的解決方案。
【發(fā)明內(nèi)容】
[0005] 有鑒于此,本發(fā)明的目的在于提供一種=維空間的建模方法和裝置,使=維建模 簡單高效。
[0006] 為了實(shí)現(xiàn)上述目的,本發(fā)明實(shí)施例采用的技術(shù)方案如下:
[0007] 第一方面,本發(fā)明實(shí)施例提供了一種=維空間的建模方法,包括:讀取圖片,上述 圖片為預(yù)先繪制的欲建立的模型的線條圖片;采用圖像處理技術(shù)識(shí)別上述圖片中的各個(gè)矩 形;根據(jù)每個(gè)矩形的長度和寬度的大小,為每個(gè)矩形設(shè)置對(duì)應(yīng)的立體結(jié)構(gòu);其中,該立體結(jié) 構(gòu)包括:與上述矩形的四邊分別對(duì)應(yīng)的四面墻體、與上述矩形對(duì)應(yīng)的頂面和地面;根據(jù)每個(gè) 矩形間的相對(duì)位置關(guān)系,拼接每個(gè)矩形對(duì)應(yīng)的立體結(jié)構(gòu),得到上述線條圖片的=維空間模 型。
[000引結(jié)合第一方面,本發(fā)明實(shí)施例提供了第一方面的第一種可能的實(shí)施方式,其中,根 據(jù)每個(gè)上述矩形的長度和寬度的大小,為每個(gè)上述矩形設(shè)置對(duì)應(yīng)的立體結(jié)構(gòu)包括:根據(jù)每 個(gè)矩形的長度和寬度的大小,對(duì)基本空間單元進(jìn)行縮放,得到每個(gè)矩形的立體結(jié)構(gòu)。
[0009] 結(jié)合第一方面的第一種可能的實(shí)施方式,本發(fā)明實(shí)施例提供了第一方面的第二種 可能的實(shí)施方式,其中,根據(jù)如下矩陣對(duì)基本空間單元進(jìn)行縮放,
[0010]
[0011]其中,Kx,Ky,Kz分別為x,y,z坐標(biāo)方向?qū)?yīng)的縮放因子;(x,y,z)為基本空間單元的 初始坐標(biāo);當(dāng)矩形的長度為W,寬度為H,上述縮放因子如下:
[001^ 上述基本空間單元的左側(cè)墻體和右側(cè)墻體:Kx=W,Ky = a,Kz = b;
[OOU] 上述基本空間單元的前側(cè)墻體和后側(cè)墻體:Kx=a,Ky = H,Kz = b;
[0014] 上述基本空間單元的頂面和地面:Kx=W, Ky = H, Kz = b;
[0015] 其中,a為墻體厚度系數(shù),b為墻體高度系數(shù)。
[0016] 結(jié)合第一方面的第二種可能的實(shí)施方式,本發(fā)明實(shí)施例提供了第一方面的第=種 可能的實(shí)施方式,其中,當(dāng)接收到移動(dòng)上述=維空間模型中的單個(gè)墻體的指示時(shí),設(shè)置與該 單個(gè)墻體頭尾相鄰的墻體的縮放因子等于該單個(gè)墻體移動(dòng)后的坐標(biāo)與該相鄰的墻體起始 點(diǎn)坐標(biāo)之間的長度。
[0017] 結(jié)合第一方面,本發(fā)明實(shí)施例提供了第一方面的第四種可能的實(shí)施方式,其中,采 用圖像處理技術(shù)識(shí)別圖片中的各個(gè)矩形包括:對(duì)該圖片進(jìn)行灰度處理,得到該圖片的灰度 圖片;按照化下公式對(duì)該灰麼圖片講行二估化化理,得到黑白圖片:
[001 引
[0019] maxVal = 255,threash = 100,像素點(diǎn)的灰度值大于100的設(shè)定為最大值,小于100 的像素點(diǎn)的設(shè)定為0;對(duì)該黑白圖片進(jìn)行邊緣檢測并描繪輪廓;根據(jù)描繪后的輪廓識(shí)別各個(gè) 矩形。
[0020] 結(jié)合第一方面的第四種可能的實(shí)施方式,本發(fā)明實(shí)施例提供了第一方面的第五種 可能的實(shí)施方式,其中,根據(jù)描繪后的輪廓識(shí)別各個(gè)矩形包括:從描繪后的該輪廓中確定封 閉輪廓的角點(diǎn),當(dāng)角點(diǎn)數(shù)量大于2且小于5即可確定為矩形。
[0021] 結(jié)合第一方面,本發(fā)明實(shí)施例提供了第一方面的第六種可能的實(shí)施方式,其中,采 用圖像處理技術(shù)識(shí)別圖片中的各個(gè)矩形還包括:根據(jù)如下公式檢測各個(gè)矩形是否重合:
[0022] C=Min(Xi+Wi,拉+W2)-Max(Xi,X2)
[0023] R=Min (Yi+Hi,Y2+H2) -Max (Yi,Y2 )
[0024] I
[0025] 化tio = U的巧化將概保留,具甲Katio刃重疊比率,(XiJi)為第一矩形的左上角坐 標(biāo),(X2,Y2)為第二矩形的左上角坐標(biāo),和化分別為該第一矩形的長度和寬度,W2和此分別 為該第二矩形長度和寬度;如果存在兩兩重合的矩形,丟棄上述兩兩重合的矩形。
[00%]第二方面,本發(fā)明實(shí)施例提供了一種=維空間的建模裝置,包括:圖片讀取模塊, 用于讀取圖片,該圖片為預(yù)先繪制的欲建立的模型的線條圖片;圖片識(shí)別模塊,用于采用圖 像處理技術(shù)識(shí)別該圖片中的各個(gè)矩形;立體結(jié)構(gòu)構(gòu)建模塊,用于根據(jù)每個(gè)矩形的長度和寬 度的大小,為每個(gè)矩形設(shè)置對(duì)應(yīng)的立體結(jié)構(gòu);其中,該立體結(jié)構(gòu)包括:與上述矩形的四邊分 別對(duì)應(yīng)的四面墻體、與上述矩形對(duì)應(yīng)的頂面和地面;拼接模塊,用于根據(jù)每個(gè)矩形間的相對(duì) 位置關(guān)系,拼接每個(gè)矩形對(duì)應(yīng)的立體結(jié)構(gòu),得到該線條圖片的=維空間模型。
[0027] 結(jié)合第二方面,本發(fā)明實(shí)施例提供了第二方面的第一種可能的實(shí)施方式,其中,立 體結(jié)構(gòu)構(gòu)建模塊包括:縮放單元,用于根據(jù)每個(gè)矩形的長度和寬度的大小,對(duì)基本空間單元 進(jìn)行縮放,得到每個(gè)矩形的立體結(jié)構(gòu)。
[0028] 結(jié)合第二方面的第一種可能的實(shí)施方式,本發(fā)明實(shí)施例提供了第二方面的第二種 可能的實(shí)施方式,其中,縮放單元根據(jù)如下矩陣對(duì)基本空間單元進(jìn)行縮放,
[0029]
[0030] 其中,Kx,Ky,Kz分別為x,y,z坐標(biāo)方向?qū)?yīng)的縮放因子;(x,y,z)為該基本空間單元 的初始坐標(biāo);當(dāng)上述矩形的長度為W,寬度為H,縮放因子如下:
[0031] 所述基本空間單元的左側(cè)墻體和右側(cè)墻體:Kx=W,Ky = a,Kz = b;
[0032] 所述基本空間單元的前側(cè)墻體和后側(cè)墻體:Kx=a,Ky = H,Kz = b;
[0033] 所述基本空間單元的頂面和地面:Kx=W ,Ky = H,Kz = b;
[0034] 其中,a為墻體厚度系數(shù),b為墻體高度系數(shù)。
[0035] 本發(fā)明實(shí)施例提供的=維空間的建模方法和裝置,通過讀取圖片、識(shí)別圖片中的 各個(gè)矩形、為各個(gè)矩形設(shè)置對(duì)應(yīng)的立體結(jié)構(gòu)、拼接上述立體結(jié)構(gòu)實(shí)現(xiàn)=維建模,能夠根據(jù)粗 略的線條圖片生成=維空間,且操作簡單,提高了=維建模的效率。
[0036] 為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉較佳實(shí)施例,并配合 所附附圖,作詳細(xì)說明如下。
【附圖說明】
[0037] 為了更清楚地說明本發(fā)明實(shí)施例的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附 圖作簡單地介紹,應(yīng)當(dāng)理解,W下附圖僅示出了本發(fā)明的某些實(shí)施例,因此不應(yīng)被看作是對(duì) 范圍的限定,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可W根據(jù)運(yùn) 些附圖獲得其他相關(guān)的附圖。
[0038] 圖1示出了本發(fā)明實(shí)施例提供的終端的結(jié)構(gòu)框圖;
[0039] 圖2示出了本發(fā)明第一實(shí)施例提供的一種=維空間的建模方法的流程示意圖;
[0040] 圖3示出了本發(fā)明第一實(shí)施例提供的手繪線條的照片;
[0041 ]圖4示出了本發(fā)明第一實(shí)施例提供的矩形識(shí)別示意圖;
[0042] 圖5示出了本發(fā)明第一實(shí)施例提供的墻體自動(dòng)拼接示意圖;
[0043] 圖6示出了本發(fā)明第一實(shí)施例提供的S維空間模型示意圖;
[0044] 圖7示出了本發(fā)明第二實(shí)施例提供的一種=維空間的建模裝置的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0045] 本發(fā)明實(shí)施例所提供的=維空間的建模方法和裝置可W用于各種終端設(shè)備,例如 計(jì)算機(jī)、智能手機(jī)、平板電腦、穿戴式移動(dòng)終端等。
[0046] 圖1示出了一種可應(yīng)用于本發(fā)明實(shí)施例中的用戶終端100的結(jié)構(gòu)框圖。如圖1所示, 用戶終端100包括存儲(chǔ)器102、存儲(chǔ)控制器104,一個(gè)或多個(gè)(圖中僅示出一個(gè))處理器106、外 設(shè)接口 108、射頻模塊110、拍攝模塊112、觸控屏幕114等。運(yùn)些組件通過一條或多條通訊總 線/信號(hào)線116相互通訊。
[0047] 存儲(chǔ)器102可用于存儲(chǔ)軟件程序W及模塊,如本發(fā)明實(shí)施例中的=維空間的建模 方法和裝置對(duì)應(yīng)的程序指令/模塊,處理器106通過運(yùn)行存儲(chǔ)在存儲(chǔ)器102內(nèi)的軟件程序W 及模塊,從而執(zhí)行各種功能應(yīng)用W及數(shù)據(jù)處理,如本發(fā)明實(shí)施例提供的=維空間的建模方 法。
[0048] 存儲(chǔ)器102可包括高速隨機(jī)存儲(chǔ)器,還可包括非易失性存儲(chǔ)器,如一個(gè)或者多個(gè)磁 性存儲(chǔ)裝置、閃存、或者其他非易失性固態(tài)存儲(chǔ)器。處理器106W及其他可能的組件對(duì)存儲(chǔ) 器102的訪問可在存儲(chǔ)控制器104的控制下進(jìn)行。
[0049] 外設(shè)接口 108將各種輸入/輸出裝置禪合至處理器106 W及存儲(chǔ)器102。在一些實(shí)施 例中,外設(shè)接口 108,處理器106W及存儲(chǔ)控制器104可W在單個(gè)忍片中實(shí)現(xiàn)。在其他一些實(shí) 例中,他們可W分別由獨(dú)立的忍片實(shí)現(xiàn)。
[0050] 射頻模塊110用于接收W及發(fā)送電磁波,實(shí)現(xiàn)電磁波與電信號(hào)的相互轉(zhuǎn)換,從而與 通訊網(wǎng)絡(luò)或者其他設(shè)備進(jìn)行通訊。
[0051] 拍攝模塊112向用戶提供拍攝接口,其可包括相機(jī)、攝像頭等。
[0052] 觸控屏幕114在用戶終端100與用戶之間同時(shí)提供一個(gè)輸出及輸入界面。在本實(shí)施 例中,該觸控屏幕114支持單點(diǎn)和多點(diǎn)觸控操作,例如,該觸控屏幕114可為支持單點(diǎn)和多點(diǎn) 觸控操作的電容式觸摸屏或電阻式觸摸屏等。支持單點(diǎn)和多點(diǎn)觸控操作是觸控屏幕114能 感應(yīng)到來自該觸摸屏11上一個(gè)或多個(gè)位置處同時(shí)產(chǎn)生的觸控操作,并將該感應(yīng)到的多點(diǎn)觸 控操作交由處理器106進(jìn)行處理。
[0053] 可W理解,圖1所示的結(jié)構(gòu)僅為示意,用戶終端100還可包括比圖1中所示更多或者 更少的組件,或者具有與圖1所示不同的配置。圖1中所示的各組件可W采用硬件、軟件或其 組合實(shí)現(xiàn)。
[0054] 本發(fā)明實(shí)施例提出的=維空間的建模方法和裝置,提供了一種新的=維建模方 法。該S維空間的建模方法和裝置可適用于An化Oid操作系統(tǒng)、iOS操作系統(tǒng)、Windows操作 系統(tǒng)等平臺(tái)。具體地,本發(fā)明實(shí)施例提出的=維空間的建模方法和裝置可應(yīng)用于用戶終端 100中W實(shí)現(xiàn)=維建模。
[0055] 下面將結(jié)合本發(fā)明實(shí)施例中附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整 地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。通常在 此處附圖中描述和示出的本發(fā)明實(shí)施例的組件可WW各種不同的配置來布置和設(shè)計(jì)。因 此,W下對(duì)在附圖中提供的本發(fā)明的實(shí)施例的詳細(xì)描述并非旨在限制要求保護(hù)的本發(fā)明的 范圍,而是僅僅表示本發(fā)明的選定實(shí)施例。基于本發(fā)明的實(shí)施例,本領(lǐng)域技術(shù)人員在沒有做 出創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0056] 應(yīng)注意到:相似的標(biāo)號(hào)和字母在下面的附圖中表示類似項(xiàng),因此,一旦某一項(xiàng)在一 個(gè)附圖中被定義,則在隨后的附圖中不需要對(duì)其進(jìn)行進(jìn)一步定義和解釋。同時(shí),在本發(fā)明的 描述中,術(shù)語"第一"、"第二"等僅用于區(qū)分描述,而不能理解為指示或暗示相對(duì)重要性。 [0化7]實(shí)施例1
[0058] 圖2示出了本發(fā)明第一實(shí)施例提供的一種=維空間的建模方法的流程圖,應(yīng)當(dāng)說 明的是,本發(fā)明實(shí)施例所述的=維空間的建模方法并不W圖2W及W下所述的具體順序?yàn)?限制。應(yīng)當(dāng)理解,在其它實(shí)施例中,所述的=維空間的建模方法其中部分步驟的順序可W根 據(jù)實(shí)際需要相互交換,或者其中的部分步驟也可W省略或刪除。下面將對(duì)圖2所示建模方法 的具體流程進(jìn)行詳細(xì)闡述。
[0059] 步驟S110,讀取圖片,該圖片為預(yù)先繪制的欲建立的模型的線條圖片。
[0060] 具體地,上述線條圖片可W是手繪的粗略線條圖片(例如圖3所示的手繪線條的照 片),也可W是建筑、設(shè)計(jì)圖紙。
[0061] 步驟S120,采用圖像處理技術(shù)識(shí)別上述圖片中的各個(gè)矩形。
[0062] 對(duì)圖3所示的手繪線條的照片進(jìn)行灰度處理,得到圖片的灰度圖;再按照如下公式 對(duì)該灰度圖進(jìn)行二值化處理,得到黑白圖片:
[0063]
[0064] maxVal = 255,threash = 100,像素點(diǎn)的灰度值大于100的設(shè)定為最大值,小于100 的像素點(diǎn)的設(shè)定為0;對(duì)該黑白圖片進(jìn)行邊緣檢測(闊值設(shè)置為100)并描繪輪廓。在描繪輪 廓時(shí),使用單位為8像素大小的線條,W提高識(shí)別率。
[0065] 在后續(xù)步驟中對(duì)上述輪廓采用設(shè)置對(duì)應(yīng)的立體結(jié)構(gòu),擬合出該輪廓的整體,在本 實(shí)施例中使用基本空間單元來構(gòu)建對(duì)應(yīng)的立體結(jié)構(gòu),再將立體結(jié)構(gòu)拼接,因此需要識(shí)別輪 廓中的矩形。
[0066] 采用矩形逼近的方式確定矩形區(qū)域。通過確定封閉輪廓的角點(diǎn)來確定矩形,當(dāng)角 點(diǎn)數(shù)量大于2且小于5即可認(rèn)為是矩形。
[0067] 在確定矩形后,還需要檢測排除重合的矩形,重合包括部分重合和全部重合,每個(gè) 矩形與其它矩形一一計(jì)算重疊率,公式如下:
[006引 C=Min(Xi+Wi,拉+W2)-Max(Xi,X2)
[0069] R=M i n (Yi+Hi,Y2+出)-Max (Yi,Y2 )
[0070]
[0071] 上述公式中Ratio為重疊比率,當(dāng)Ratio為0時(shí),表示進(jìn)行比較的兩個(gè)矩形完全不重 合,保留上述兩個(gè)矩形;當(dāng)Ratio為其它數(shù)值時(shí),表示進(jìn)行比較的兩個(gè)矩形重合,上述兩個(gè)矩 形均不保留。上述公式中(Xi,Yi)為第一矩形的左上角坐標(biāo),(拉,Y2)為第二矩形的左上角坐 標(biāo),^^和化分別為第一矩形的長度和寬度,W2和出分別為第二矩形長度和寬度。
[0072] 圖4示出了手繪線條照片識(shí)別后的矩形示意圖。其中每個(gè)矩形的左上角點(diǎn)和右下 角點(diǎn)的坐標(biāo)分別保存,上述兩點(diǎn)的坐標(biāo)既包括了矩形的長度和寬度信息又包括了位置信 息,且由于不需要保存每個(gè)矩形的全部坐標(biāo),占用的存儲(chǔ)容量小。
[0073] 步驟S130,根據(jù)每個(gè)矩形的長度和寬度的大小,為每個(gè)矩形設(shè)置對(duì)應(yīng)的立體結(jié)構(gòu)。 其中立體結(jié)構(gòu)包括:與該矩形的四邊分別對(duì)應(yīng)的四面墻體、與該矩形對(duì)應(yīng)的頂面和地面。
[0074] 具體地,為每個(gè)矩形設(shè)置對(duì)應(yīng)的立體結(jié)構(gòu),包括根據(jù)每個(gè)矩形的長度和寬度的大 小,對(duì)基本空間單元進(jìn)行縮放。該基本空間單元包括左側(cè)墻體、右側(cè)墻體、前側(cè)墻體、后側(cè)墻 體、頂面和地面。在具體實(shí)現(xiàn)時(shí),該基本空間單元的組成尺寸可W根據(jù)需要設(shè)置,本實(shí)施例 中各墻體W長1米,寬1米,高1米為例,頂面和地面W長1米,寬1米為例。
[0075] 分別保存上述基本空間單元的頂面和地面的中屯、點(diǎn)、右側(cè)墻體的中屯、點(diǎn),前側(cè)墻 體的中屯、點(diǎn)的坐標(biāo),W上述中屯、點(diǎn)為基礎(chǔ)進(jìn)行縮放。
[0076] 縮放矩陣如下:
[0077]
[0078] 其中,Kx,Ky,Kz分別為x,y,z坐標(biāo)方向?qū)?yīng)的縮放因子;(x,y,z)為基本空間單元的 初始坐標(biāo);當(dāng)矩形的長度為W,寬度為H,上述縮放因子如下:
[0079] 基本空間單元的左側(cè)墻體和右偵鵬體:Kx=W,Ky = a,Kz = b;
[0080] 基本空間單元的前側(cè)墻體和后側(cè)墻體:Kx=a,Ky = H,Kz = b;
[0081 ] 基本空間單元的頂面和地面:Kx=W,Ky = H,Kz = b;
[0082] 其中,a為墻體厚度系數(shù),b為墻體高度系數(shù)。
[0083] 本實(shí)施例中a取值為0.3,b取值為3,即墻體的厚度為0.3米,高度為3米。
[0084] 基本空間單元可W預(yù)先放置于每個(gè)矩形的對(duì)應(yīng)位置,再在該位置進(jìn)行縮放;也可 W先縮放再根據(jù)每個(gè)矩形之間的相對(duì)位置移動(dòng)。
[0085] 步驟S140,根據(jù)每個(gè)矩形間的相對(duì)位置關(guān)系,拼接每個(gè)矩形對(duì)應(yīng)的立體結(jié)構(gòu)。
[0086] 在拼接每個(gè)矩形對(duì)應(yīng)的立體結(jié)構(gòu)時(shí),判斷上述墻體是否相交,如果相交則根據(jù)下 述方式自動(dòng)拼接。
[0087] 圖5示出了墻體自動(dòng)拼接的示意圖。首先判斷兩個(gè)墻體之間的距離,根據(jù)首尾兩點(diǎn) 坐標(biāo)分別確定墻體1和墻體2的直線方程:
[008引
[0089] 計(jì)算兩個(gè)墻體之間的距離:
[0090]
[0091] 當(dāng)cKO.3則判斷兩個(gè)墻體相交,刪除原有的墻體1、2,新建墻體4、5、6。墻體數(shù)量為: 2Nw-l,其中Nw為相交的墻體數(shù)量。
[0092] 新建墻體的坐標(biāo)W如下方式確定:
[0093] 如果是豎墻,將y按照從小到大進(jìn)行排序,兩個(gè)墻體X坐標(biāo)的中點(diǎn)坐標(biāo)即融合后的 墻體坐標(biāo)X:
[0094]
[009引按順序求出原墻體各頂點(diǎn)之間的距離,如圖5中所示,墻體1中左側(cè)頂點(diǎn)與墻體2左 側(cè)頂點(diǎn)的距離,墻體2中左側(cè)頂點(diǎn)與墻體1右側(cè)頂點(diǎn)的距離,墻體1中右側(cè)頂點(diǎn)與墻體2右側(cè) 頂點(diǎn)的距離。
[0096] 將上述距離值作為各墻體的縮放因子:
[0097]
[009引其中,(Xi,yi)與(Xj,yj)為相鄰兩頂點(diǎn)坐標(biāo)。排列經(jīng)縮放的坐標(biāo)y,即融合后的墻體 y坐標(biāo)。
[0099]如果是橫墻,將X按照從小到大進(jìn)行排序,兩個(gè)墻體y坐標(biāo)的中點(diǎn)坐標(biāo)即融合后的 墻體坐標(biāo)y:
[0100]
[0101] 按順序求出原墻體各頂點(diǎn)之間的距離,如圖5中所示,墻體I中左側(cè)頂點(diǎn)與墻體2左 側(cè)頂點(diǎn)的距離,墻體2中左側(cè)頂點(diǎn)與墻體1右側(cè)頂點(diǎn)的距離,墻體1中右側(cè)頂點(diǎn)與墻體2右側(cè) 頂點(diǎn)的距離。
[0102] 將上述距離值作為各墻體的縮放因子:
[0103]
[0104] 其中,(xi,yi)與為相鄰兩頂點(diǎn)坐標(biāo)。排列經(jīng)縮放的坐標(biāo)X,即融合后的墻體 X坐標(biāo)。
[0105] 應(yīng)用上述方法得到的=維空間模型如圖6示出的建模完成后的=維空間模型示意 圖,該=維空間模型是對(duì)圖3所示的圖片進(jìn)行操作后得到的。
[0106] 在得到上述S維空間模型后,還可W快速調(diào)節(jié)尺寸。例如可W通過移動(dòng)模型中的 單個(gè)墻體來調(diào)整空間的大小。當(dāng)移動(dòng)單個(gè)墻體時(shí),該單個(gè)墻體被移動(dòng)到預(yù)定位置,與該單個(gè) 墻體組成同一閉合空間的相鄰的兩個(gè)墻體進(jìn)行適當(dāng)?shù)目s放,從而保證空間的完整性,縮放 因子等于該單個(gè)墻體移動(dòng)后的坐標(biāo)與上述兩個(gè)相鄰的墻體起始點(diǎn)坐標(biāo)之間的長度。因此簡 單移動(dòng)單個(gè)墻體就可W靈活調(diào)節(jié)空間的尺寸。
[0107] 在得到上述=維空間模型后,還可W平移。平移矩陣如下:
[010 引
[0109]其中,(X',/,z〇為變換后的坐標(biāo);(x,y,z)為變換前的坐標(biāo)。
[0110] 實(shí)施例2
[0111] 圖7示出了本發(fā)明第二實(shí)施例中的=維空間的建模裝置。該裝置包括:圖片讀取模 塊11、圖片識(shí)別模塊12、立體結(jié)構(gòu)構(gòu)建模塊13、拼接模塊14。
[0112] 圖片讀取模塊11用于讀取圖片,該圖片為預(yù)先繪制的欲建立的模型的線條圖片。
[0113] 具體地,上述線條圖片可W是手繪的粗略線條圖片(例如圖3所示的手繪線條的照 片),也可W是建筑、設(shè)計(jì)圖紙。
[0114] 圖片識(shí)別模塊12,對(duì)圖3所示的手繪線條的照片進(jìn)行灰度處理,得到圖片的灰度 圖;再按照如下公式對(duì)該灰度圖進(jìn)行二值化處理,得到黑白圖片:
[0115]
[0116] maxVal = 255,threash = 100,像素點(diǎn)的灰度值大于100的設(shè)定為最大值,小于100 的像素點(diǎn)的設(shè)定為0;對(duì)該黑白圖片進(jìn)行邊緣檢測(闊值設(shè)置為100)并描繪輪廓。在描繪輪 廓時(shí),使用單位為8像素大小的線條,W提高識(shí)別率。
[0117] 在后續(xù)步驟中對(duì)上述輪廓采用設(shè)置對(duì)應(yīng)的立體結(jié)構(gòu),擬合出該輪廓的整體,在本 實(shí)施例中使用基本空間單元來構(gòu)建對(duì)應(yīng)的立體結(jié)構(gòu),再將立體結(jié)構(gòu)拼接,因此需要識(shí)別輪 廓中的矩形。
[0118] 采用矩形逼近的方式確定矩形區(qū)域。通過確定封閉輪廓的角點(diǎn)來確定矩形,當(dāng)角 點(diǎn)數(shù)量大于2且小于5即可認(rèn)為是矩形。
[0119] 在確定矩形后,還需要檢測排除重合的矩形,重合包括部分重合和全部重合,每個(gè) 矩形與其它矩形一一計(jì)算重疊率,公式如下:
[0120] C=Min(Xi+Wi,拉+W2)-Max(Xi,X2)
[01 別]R=Min(Yi+Hi,Y2+出)-Max(Yi,Y2)
[0122]
[0123] 上述公式中Ratio為重疊比率,當(dāng)Ratio為0時(shí),表示進(jìn)行比較的兩個(gè)矩形完全不重 合,保留上述兩個(gè)矩形;當(dāng)Ratio為其它數(shù)值時(shí),表示進(jìn)行比較的兩個(gè)矩形重合,上述兩個(gè)矩 形均不保留。上述公式中(Xi,Yi)為第一矩形的左上角坐標(biāo),(拉,Y2)為第二矩形的左上角坐 標(biāo),^^和化分別為第一矩形的長度和寬度,W2和出分別為第二矩形長度和寬度。
[0124] 圖4示出了手繪線條照片識(shí)別后的矩形示意圖。其中每個(gè)矩形的左上角點(diǎn)和右下 角點(diǎn)的坐標(biāo)分別保存,上述兩點(diǎn)的坐標(biāo)既包括了矩形的長度和寬度信息又包括了位置信 息,且需要的存儲(chǔ)容量小。
[0125] 立體結(jié)構(gòu)構(gòu)建模塊13,根據(jù)每個(gè)矩形的長度和寬度的大小,為每個(gè)矩形設(shè)置對(duì)應(yīng) 的立體結(jié)構(gòu)。其中立體結(jié)構(gòu)包括:與該矩形的四邊分別對(duì)應(yīng)的四面墻體、與該矩形對(duì)應(yīng)的頂 面和地面。
[0126] 具體地,為每個(gè)矩形設(shè)置對(duì)應(yīng)的立體結(jié)構(gòu),包括根據(jù)每個(gè)矩形的長度和寬度的大 小,對(duì)基本空間單元進(jìn)行縮放。該基本空間單元包括左側(cè)墻體、右側(cè)墻體、前側(cè)墻體、后側(cè)墻 體、頂面和地面。在具體實(shí)現(xiàn)時(shí),該基本空間單元的組成尺寸可W根據(jù)需要設(shè)置,本實(shí)施例 中各墻體W長1米,寬1米,高1米為例,頂面和地面W長1米,寬1米為例。
[0127] 分別保存上述基本空間單元的頂面和地面的中屯、點(diǎn)、右側(cè)墻體的中屯、點(diǎn),前側(cè)墻 體的中屯、點(diǎn)的坐標(biāo),W上述中屯、點(diǎn)為基礎(chǔ)進(jìn)行縮放。
[012引縮放矩陣如下:
[0129]
[0130]其中,Kx,Ky,Kz分別為x,y,z坐標(biāo)方向?qū)?yīng)的縮放因子;(x,y,z)為基本空間單元的 初始坐標(biāo);當(dāng)矩形的長度為W,寬度為H,上述縮放因子如下:
[0131] 基本空間單元的左側(cè)墻體和右側(cè)墻體:Kx=W,Ky = a,Kz = b;
[0132] 基本空間單元的前側(cè)墻體和后側(cè)墻體:Kx=a,Ky = H,Kz = b;
[0133] 基本空間單元的頂面和地面:Kx=W,Ky = H,Kz = b;
[0134] 其中,a為墻體厚度系數(shù),b為墻體高度系數(shù)。
[0135] 本實(shí)施例中a為0.3,b為3,即墻體的厚度為0.3米,高度為3米。
[0136] 基本空間單元可W預(yù)先放置于每個(gè)矩形的對(duì)應(yīng)位置,再在該位置進(jìn)行縮放;也可 W先縮放再根據(jù)每個(gè)矩形間的相對(duì)位置移動(dòng)。
[0137] 拼接模塊14,根據(jù)每個(gè)矩形間的相對(duì)位置關(guān)系,拼接每個(gè)矩形對(duì)應(yīng)的立體結(jié)構(gòu)。
[0138] 在拼接每個(gè)矩形對(duì)應(yīng)的立體結(jié)構(gòu)時(shí),判斷上述墻體是否相交,如果相交則根據(jù)下 述方式自動(dòng)拼接。
[0139] 圖5示出了墻體自動(dòng)拼接的示意圖。首先判斷兩個(gè)墻體之間的距離,根據(jù)首尾兩點(diǎn) 坐標(biāo)確定墻體1和墻體2的直線方程:
[0140]
[0141] 計(jì)算兩個(gè)墻體之間的距離:
[0142]
[0143] 當(dāng)d<0.3則判斷兩個(gè)墻體相交,刪除原有的墻體1、2,新建墻體4、5、6。新建墻體數(shù) 量為:2Nw-l,其中Nw為相交的墻體數(shù)量。
[0144] 新建墻體的坐標(biāo)W如下方式確定:
[0145] 如果是豎墻,將y按照從小到大進(jìn)行排序,兩個(gè)墻體X坐標(biāo)的中點(diǎn)坐標(biāo)即融合后的 墻體坐標(biāo)X:
[0146]
[0147] 按順序求出原墻體各頂點(diǎn)之間的距離,如圖5中所示,墻體1中左側(cè)頂點(diǎn)與墻體2左 側(cè)頂點(diǎn)的距離,墻體2中左側(cè)頂點(diǎn)與墻體1右側(cè)頂點(diǎn)的距離,墻體1中右側(cè)頂點(diǎn)與墻體2右側(cè) 頂點(diǎn)的距離。
[0148] 將上述距離值作為各墻體的縮放因子:
[0149]
[0150] 其中,(xi,yi)與為相鄰兩頂點(diǎn)坐標(biāo)。排列經(jīng)縮放的坐標(biāo)y,即融合后的墻體 y坐標(biāo)。
[0151] 如果是橫墻,將X按照從小到大進(jìn)行排序,兩個(gè)墻體y坐標(biāo)的中點(diǎn)坐標(biāo)即融合后的 墻體坐標(biāo)y:
[0152]
[0153] 按順序求出原墻體各頂點(diǎn)之間的距離,如圖5中所示,墻體1中左側(cè)頂點(diǎn)與墻體2左 側(cè)頂點(diǎn)的距離,墻體2中左側(cè)頂點(diǎn)與墻體1右側(cè)頂點(diǎn)的距離,墻體1中右側(cè)頂點(diǎn)與墻體2右側(cè) 頂點(diǎn)的距離。
[0154] 將上述距離值作為各墻體的縮放因子:
[0155]
[0156] 其中,(xi,yi)與為相鄰兩頂點(diǎn)坐標(biāo)。排列經(jīng)縮放的坐標(biāo)X,即融合后的墻體 X坐標(biāo)。
[0157] 應(yīng)用上述方法得到的=維空間模型如圖6示出的建模完成后的=維空間模型示意 圖,該=維空間模型是對(duì)圖3所示的圖片進(jìn)行操作后得到的。
[0158] 在得到上述S維空間模型后,還可W快速調(diào)節(jié)尺寸。例如可W通過移動(dòng)模型中的 單個(gè)墻體來調(diào)整空間的大小。當(dāng)移動(dòng)單個(gè)墻體時(shí),該單個(gè)墻體被移動(dòng)到預(yù)定位置,與該單個(gè) 墻體組成同一閉合空間的相鄰的兩個(gè)墻體進(jìn)行適當(dāng)?shù)目s放,從而保證空間的完整性,縮放 因子等于該單個(gè)墻體移動(dòng)后的坐標(biāo)與上述兩個(gè)相鄰的墻體起始點(diǎn)坐標(biāo)之間的長度。因此簡 單移動(dòng)單個(gè)墻體就可W靈活調(diào)節(jié)空間的尺寸。
[0159] 在得到上述=維空間模型后,還可W平移。平移矩陣如下:
[0160]
[0161] 其中,,/,z〇為變換后的坐標(biāo);(x,y,z)為變換前的坐標(biāo)。
[0162] 本發(fā)明的第二實(shí)施例中的各模塊可W是由軟件代碼實(shí)現(xiàn),此時(shí),上述的各模塊可 存儲(chǔ)于用戶終端100的存儲(chǔ)器102內(nèi)。W上各單元同樣可W由硬件例如集成電路忍片實(shí)現(xiàn)。 所屬領(lǐng)域的技術(shù)人員可W清楚地了解到,為描述的方便和簡潔,上述描述的功能模塊的具 體描述,可W參考前述的對(duì)應(yīng)方法步驟的具體描述,在此不再一一寶述。
[0163] 綜上所述,本發(fā)明實(shí)施例提供的=維空間的建模方法和裝置,通過讀取圖片、識(shí)別 圖片中的各個(gè)矩形、為各個(gè)矩形設(shè)置對(duì)應(yīng)的立體結(jié)構(gòu)、拼接上述立體結(jié)構(gòu)實(shí)現(xiàn)=維建模,能 夠根據(jù)粗略的線條圖片生成=維空間,操作簡單,建模后可快速調(diào)節(jié)尺寸,提高了=維建模 的效率。
[0164] 需要說明的是,本說明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重 點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似的部分互相參見即可。
[0165] 本發(fā)明實(shí)施例所提供的=維空間的建模方法和裝置,其實(shí)現(xiàn)原理及產(chǎn)生的技術(shù)效 果和前述方法實(shí)施例相同,為簡要描述,裝置實(shí)施例部分未提及之處,可參考前述方法實(shí)施 例中相應(yīng)內(nèi)容。
[0166] 另外,附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個(gè)實(shí)施例的系統(tǒng)、方法和計(jì) 算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在運(yùn)點(diǎn)上,流程圖或框圖中的每個(gè)方框 可W代表一個(gè)模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個(gè)或 多個(gè)用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實(shí)現(xiàn)中,方框 中所標(biāo)注的功能也可WW不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個(gè)連續(xù)的方框?qū)嶋H上 可W基本并行地執(zhí)行,它們有時(shí)也可W按相反的順序執(zhí)行,運(yùn)依所設(shè)及的功能而定。也要注 意的是,框圖和/或流程圖中的每個(gè)方框、W及框圖和/或流程圖中的方框的組合,可W用執(zhí) 行規(guī)定的功能或動(dòng)作的專用的基于硬件的系統(tǒng)來實(shí)現(xiàn),或者可W用專用硬件與計(jì)算機(jī)指令 的組合來實(shí)現(xiàn)。
[0167] 本發(fā)明實(shí)施例所提供的計(jì)算機(jī)程序產(chǎn)品,包括存儲(chǔ)了程序代碼的計(jì)算機(jī)可讀存儲(chǔ) 介質(zhì),所述程序代碼包括的指令可用于執(zhí)行前面方法實(shí)施例中所述的方法,具體實(shí)現(xiàn)可參 見方法實(shí)施例,在此不再寶述。
[0168] 所屬領(lǐng)域的技術(shù)人員可W清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng)、 裝置和單元的具體工作過程,可W參考前述方法實(shí)施例中的對(duì)應(yīng)過程,在此不再寶述。
[0169] 在本申請(qǐng)所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所掲露的系統(tǒng)、裝置和方法,可W 通過其它的方式實(shí)現(xiàn)。W上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述單元的劃分, 僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可W有另外的劃分方式,又例如,多個(gè)單元或組件可 W結(jié)合或者可W集成到另一個(gè)系統(tǒng),或一些特征可W忽略,或不執(zhí)行。另一點(diǎn),所顯示或討 論的相互之間的禪合或直接禪合或通信連接可W是通過一些通信接口,裝置或單元的間接 禪合或通信連接,可W是電性,機(jī)械或其它的形式。
[0170] 所述作為分離部件說明的單元可W是或者也可W不是物理上分開的,作為單元顯 示的部件可W是或者也可W不是物理單元,即可W位于一個(gè)地方,或者也可W分布到多個(gè) 網(wǎng)絡(luò)單元上??蒞根據(jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目 的。
[0171] 另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可W集成在一個(gè)處理單元中,也可W 是各個(gè)單元單獨(dú)物理存在,也可W兩個(gè)或兩個(gè)W上單元集成在一個(gè)單元中。
[0172] 所述功能如果W軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可W 存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中?;谶\(yùn)樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說 對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的部分可WW軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì) 算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用W使得一臺(tái)計(jì)算機(jī)設(shè)備(可W是個(gè) 人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分步驟。 而前述的存儲(chǔ)介質(zhì)包括:U盤、移動(dòng)硬盤、只讀存儲(chǔ)器(ROM,ReacK)nlyMemo巧)、隨機(jī)存取存 儲(chǔ)器(RAM, RandomAccessMemory )、磁碟或者光盤等各種可W存儲(chǔ)程序代碼的介質(zhì)。
[0173] 需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí) 體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示運(yùn)些實(shí)體或操作之間存 在任何運(yùn)種實(shí)際的關(guān)系或者順序。而且,術(shù)語"包括"、"包含"或者其任何其他變體意在涵蓋 非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要 素,而且還包括沒有明確列出的其他要素,或者是還包括為運(yùn)種過程、方法、物品或者設(shè)備 所固有的要素。在沒有更多限制的情況下,由語句"包括一個(gè)……"限定的要素,并不排除在 包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
[0174] W上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對(duì)于本領(lǐng)域的技 術(shù)人員來說,本發(fā)明可W有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修 改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。應(yīng)注意到:相似的標(biāo)號(hào)和字母在 下面的附圖中表示類似項(xiàng),因此,一旦某一項(xiàng)在一個(gè)附圖中被定義,則在隨后的附圖中不需 要對(duì)其進(jìn)行進(jìn)一步定義和解釋。
【主權(quán)項(xiàng)】
1. 一種三維空間的建模方法,其特征在于,包括: 讀取圖片,所述圖片為預(yù)先繪制的欲建立的模型的線條圖片; 采用圖像處理技術(shù)識(shí)別所述圖片中的各個(gè)矩形; 根據(jù)每個(gè)所述矩形的長度和寬度的大小,為每個(gè)所述矩形設(shè)置對(duì)應(yīng)的立體結(jié)構(gòu);其中, 所述立體結(jié)構(gòu)包括:與所述矩形的四邊分別對(duì)應(yīng)的四面墻體、與所述矩形對(duì)應(yīng)的頂面和地 面; 根據(jù)每個(gè)所述矩形間的相對(duì)位置關(guān)系,拼接每個(gè)所述矩形對(duì)應(yīng)的立體結(jié)構(gòu),得到所述 線條圖片的三維空間模型。2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,根據(jù)每個(gè)所述矩形的長度和寬度的大小, 為每個(gè)所述矩形設(shè)置對(duì)應(yīng)的立體結(jié)構(gòu)包括: 根據(jù)每個(gè)所述矩形的長度和寬度的大小,對(duì)基本空間單元進(jìn)行縮放,得到每個(gè)所述矩 形的立體結(jié)構(gòu)。3. 根據(jù)權(quán)利要求2所述的方法,其特征在于,根據(jù)如下矩陣對(duì)所述基本空間單元進(jìn)行縮 放其中,Kx,Ky,Kz分別為x,y,z坐標(biāo)方向?qū)?yīng)的縮放因子;(x,y,z)為所述基本空間單元的 初始坐標(biāo);當(dāng)所述矩形的長度為W,寬度為H,所述縮放因子如下: 所述基本空間單元的左側(cè)墻體和右側(cè)墻體:Kx=W,Ky=a,Kz = b; 所述基本空間單元的前側(cè)墻體和后側(cè)墻體:Kx = a,Ky=H,Kz = b; 所述基本空間單元的頂面和地面:Kx=W,Ky=H,Kz = b; 其中,a為墻體厚度系數(shù),b為墻體高度系數(shù)。4. 根據(jù)權(quán)利要求3所述的方法,其特征在于,所述方法還包括: 當(dāng)接收到移動(dòng)所述三維空間模型中的單個(gè)墻體的指示時(shí),設(shè)置與所述單個(gè)墻體頭尾相 鄰的墻體的縮放因子等于所述單個(gè)墻體移動(dòng)后的坐標(biāo)與所述相鄰的墻體起始點(diǎn)坐標(biāo)之間 的長度。5. 根據(jù)權(quán)利要求1所述的方法,其特征在于,采用圖像處理技術(shù)識(shí)別所述圖片中的各個(gè) 矩形包括: 對(duì)所述圖片進(jìn)行灰度處理,得到所述圖片的灰度圖片; 按照如下公式對(duì)所述灰度圖片進(jìn)行二值化處理,得到黑白圖片:maxVal = 255, threash= 100,像素點(diǎn)的灰度值大于100的設(shè)定為最大值,小于100的像 素點(diǎn)的設(shè)定為〇; 對(duì)所述黑白圖片進(jìn)行邊緣檢測并描繪輪廓; 根據(jù)描繪后的所述輪廓識(shí)別各個(gè)矩形。6. 根據(jù)權(quán)利要求5所述的方法,其特征在于,根據(jù)描繪后的所述輪廓識(shí)別各個(gè)矩形包 括: 從描繪后的所述輪廓中確定封閉輪廓的角點(diǎn),當(dāng)角點(diǎn)數(shù)量大于2且小于5即可確定為矩 形。7. 根據(jù)權(quán)利要求1所述的方法,其特征在于,采用圖像處理技術(shù)識(shí)別所述圖片中的各個(gè) 矩形還包括: 根據(jù)如下公式檢測各個(gè)所述矩形是否重合: C=Mi n (Xi+ff I, X2+ff 2) -Max (Xi, X2) R=Min (Yi+Hi,Y2+H2)-Max (Yi, Y2)Ratio = O的矩形將被保留,其中Ratio為重疊比率,(X1,Y1)為第一矩形的左上角坐標(biāo), (X2,Y2)為第二矩形的左上角坐標(biāo),Wi和Hi分別為所述第一矩形的長度和寬度,W2和H2分別為 所述第二矩形長度和寬度; 如果存在兩兩重合的矩形,丟棄所述兩兩重合的矩形。8. -種三維空間的建模裝置,其特征在于,包括: 圖片讀取模塊,用于讀取圖片,所述圖片為預(yù)先繪制的欲建立的模型的線條圖片; 圖片識(shí)別模塊,用于采用圖像處理技術(shù)識(shí)別所述圖片中的各個(gè)矩形; 立體結(jié)構(gòu)構(gòu)建模塊,用于根據(jù)每個(gè)所述矩形的長度和寬度的大小,為每個(gè)所述矩形設(shè) 置對(duì)應(yīng)的立體結(jié)構(gòu);其中,所述立體結(jié)構(gòu)包括:與所述矩形的四邊分別對(duì)應(yīng)的四面墻體、與 所述矩形對(duì)應(yīng)的頂面和地面; 拼接模塊,用于根據(jù)每個(gè)所述矩形間的相對(duì)位置關(guān)系,拼接每個(gè)所述矩形對(duì)應(yīng)的立體 結(jié)構(gòu),得到所述線條圖片的三維空間模型。9. 根據(jù)權(quán)利要求8所述的三維空間的建模裝置,其特征在于,所述立體結(jié)構(gòu)構(gòu)建模塊包 括: 縮放單元,用于根據(jù)每個(gè)所述矩形的長度和寬度的大小,對(duì)基本空間單元進(jìn)行縮放,得 到每個(gè)所述矩形的立體結(jié)構(gòu)。10. 根據(jù)權(quán)利要求9所述的三維空間的建模裝置,其特征在于, 所述縮放單元根據(jù)如下矩陣對(duì)所述基本空間單元進(jìn)行縮放,其中,Kx,Ky,Kz分別為x,y,z坐標(biāo)方向?qū)?yīng)的縮放因子;(x,y,z)為所述基本空間單元的 初始坐標(biāo);當(dāng)所述矩形的長度為W,寬度為H,所述縮放因子如下: 所述基本空間單元的左側(cè)墻體和右側(cè)墻體:Kx=W,Ky=a,Kz = b 所述基本空間單元的前側(cè)墻體和后側(cè)墻體:Kx = a,Ky=H,Kz = b 所述基本空間單元的頂面和地面:Kx=W,Ky=H,Kz = b 其中,a為墻體厚度系數(shù),b為墻體高度系數(shù)。
【文檔編號(hào)】G06K9/00GK106023305SQ201610306302
【公開日】2016年10月12日
【申請(qǐng)日】2016年5月10日
【發(fā)明人】曹屹, 蘇芮
【申請(qǐng)人】曹屹, 蘇芮