一種建筑圖紙墻體識別方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信領(lǐng)域,具體涉及一種建筑圖紙墻體識別方法和裝置。
【背景技術(shù)】
[0002]目前,覆蓋預(yù)測是室分設(shè)計中評估室分方案合理性的一種重要手段。進行覆蓋預(yù)測所采用的模型大體上分為兩種:傳統(tǒng)經(jīng)驗?zāi)P秃蜕渚€跟蹤模型。但是無論采用哪一種模型,進行覆蓋預(yù)測都需要對場景中內(nèi)外墻進行區(qū)分。
[0003]在現(xiàn)有的對建筑圖處理中,識別內(nèi)外墻一般是依靠在繪制建筑平面圖的過程中向圖元中添加屬性或者根據(jù)墻體的厚度來識別。這種方法是建立在建筑圖紙初始繪制過程極其規(guī)范的基礎(chǔ)上,但是現(xiàn)階段由于人為因素以及時間的考慮,現(xiàn)有的大部分建筑平面圖一般沒有這些屬性信息,導(dǎo)致無法識別內(nèi)外墻。這樣需要人工按照規(guī)范對建筑圖紙進行重新繪制。這種方法會耗費大量的人力和時間,并且一旦繪制過程出現(xiàn)失誤,就會導(dǎo)致識別結(jié)果出現(xiàn)錯誤。
[0004]在現(xiàn)有對墻體識別的方法中,一種是將待識別的物體的照片進行圖像處理轉(zhuǎn)成灰度圖,然后根據(jù)邊緣檢測的算法將其輪廓識別出來。
[0005]現(xiàn)有的對墻體識別的方法中,還有一種是讀取給定建筑平面圖中的所有線段數(shù)據(jù)并進行遍歷,根據(jù)遍歷的結(jié)果和預(yù)設(shè)條件對滿足條件的線段進行優(yōu)化;然后根據(jù)優(yōu)化結(jié)果還原墻體平面輪廓。這個方法根據(jù)建筑圖中圖元的信息(僅僅包括點的坐標(biāo)值)通過比較中位線來識別建筑平面圖中的墻體平面輪廓。
[0006]現(xiàn)有技術(shù)的不足之處在于:將待識別的物體的照片進行圖像處理轉(zhuǎn)成灰度圖的墻體識別方法需要大量資源進行計算而且需要人工對建筑平面圖進行預(yù)先處理,且這種方法對輪廓識別的精度不高,而進行室內(nèi)覆蓋預(yù)測需要很精確的結(jié)果,因此此種方法并不適用于室內(nèi)覆蓋預(yù)測;而讀取給定建筑平面圖中的所有線段數(shù)據(jù)并進行遍歷的墻體識別方法中僅對整個建筑平面圖中所有墻體的輪廓進行識別,并沒有對內(nèi)外墻進行區(qū)分,但是在進行覆蓋預(yù)測時不僅需要得到所有的墻體信息,而且更重要的是對內(nèi)墻和外墻做出區(qū)別標(biāo)識。不同墻體其自身磁導(dǎo)率等屬性也不同,因此在獲得墻體信息的基礎(chǔ)上區(qū)分不同墻體是尤為必要的;再者,該識別方法在計算時相對繁瑣,并且輸出的墻體輪廓并不是基于原來建筑圖圖元基礎(chǔ)上的,而是自動生成的新的線段數(shù)據(jù),這對為圖元添加信息及對圖元進行處理帶來了困難。
【發(fā)明內(nèi)容】
[0007]為克服上述缺陷,本發(fā)明提供一種建筑圖紙墻體識別方法和裝置。
[0008]第一方面,本發(fā)明實施例提供一種建筑圖紙墻體識別方法,所述方法包括如下步驟:
[0009]將圖紙的所有線段中符合最外點條件的端點放入最外點集合中;
[0010]將所述最外點所在線段放入所述最外點的線段集合中;
[0011]對所述線段集合中所包含的線段進行處理,得到外墻線段候選集合;
[0012]從所述外墻線段候選集合中確定外墻對應(yīng)的線段。
[0013]優(yōu)選地,所述將圖紙的所有線段中符合最外點條件的端點放入最外點集合中具體包括:
[0014]對圖紙中的所有線段進行遍歷,選出長度大于雙線墻厚度的線段;
[0015]對所選出線段的端點坐標(biāo)進行遍歷,確定線段端點的最值坐標(biāo);
[0016]判斷線段的任一端點坐標(biāo)與任一最值坐標(biāo)是否相同,獲得一判斷結(jié)果;
[0017]當(dāng)所述判斷結(jié)果指示線段的任一端點坐標(biāo)與任一最值坐標(biāo)相同時,則確定該端點為最外點;
[0018]將確定的最外點放入最外點集合中。
[0019]優(yōu)選地,所述方法還包括:
[0020]判斷所述最外點集合中任一最外點是否為場景中的線段的端點,得到一判斷結(jié)果;
[0021]當(dāng)所述判斷結(jié)果指示某最外點為場景中的線段的端點,則從所述最外點集合中舍棄此最外點。
[0022]優(yōu)選地,所述對所述線段集合中所包含的線段進行處理,得到外墻線段候選集合具體包括:
[0023]遍歷所述最外點集合中的最外點;
[0024]判斷所述最外點的連通度是否小于2,得到一判斷結(jié)果;
[0025]若判斷結(jié)果指示連通度小于2,則將所述最外點從所述最外點集合中舍棄;
[0026]將被舍棄的最外點所在線段的另一端點作為最外點加入所述最外點集合中;
[0027]將新加入的最外點所在線段和與所述新加入的最外點所在線段相連的連接線段加入到外墻線段候選集合中。
[0028]優(yōu)選地,所述對所述線段集合中所包含的線段進行處理,得到外墻線段候選集合還具體包括:
[0029]遍歷所述最外點集合中的所述最外點;
[0030]判斷所述最外點的連通度是否大于2,得到一判斷結(jié)果;
[0031]若判斷結(jié)果指示連通度大于2,則計算所述最外點的線段集合中的各條線段與預(yù)先設(shè)置的對比線段的夾角;
[0032]將夾角符合要求的線段放入所述外墻線段候選集合中。
[0033]優(yōu)選地,所述將夾角符合要求的線段放入所述外墻線段候選集合中具體包括:
[0034]若各條線段與預(yù)先設(shè)置的對比線段的夾角都大于等于0,則將夾角為O和最大夾角對應(yīng)的線段放入所述外墻線段候選集合中;
[0035]若各條線段與預(yù)先設(shè)置的對比線段的夾角都小于等于0,則將夾角為O和最小夾角對應(yīng)的線段放入所述外墻線段候選集合中;
[0036]若各條線段與預(yù)先設(shè)置的對比線段的夾角有正有負(fù),則將最大夾角和最小夾角對應(yīng)的線段放入所述外墻線段候選集合中。
[0037]優(yōu)選地,所述對比線段為所述最外點的線段集合中的第一條線段。
[0038]優(yōu)選地,所述從所述外墻線段候選集合中確定外墻所在的線段具體包括:
[0039]遍歷所述最外點集合中的所述最外點;
[0040]判斷所述最外點的連通度是否小于2,得到一判斷結(jié)果;
[0041]若判斷結(jié)果指示連通度小于2,則所述最外點在所述外墻線段候選集合中的線段就是外墻對應(yīng)的線段。
[0042]優(yōu)選地,所述從所述外墻線段候選集合中確定外墻所在的線段還具體包括:
[0043]遍歷所述最外點集合中的所述最外點;
[0044]判斷所述最外點的連通度是否等于2,得到一判斷結(jié)果;
[0045]若判斷結(jié)果指示連通度等于2,則計算所述最外點的外墻線段候選集合中各條線段與預(yù)先設(shè)定的初始線段的夾角;
[0046]確定所述初始線段與所述各條線段形成夾角時的旋轉(zhuǎn)方向;
[0047]根據(jù)所述各條線段與所述初始線段的夾角和所述初始線段的旋轉(zhuǎn)方向確定外墻對應(yīng)的線段。
[0048]優(yōu)選地,所述根據(jù)所述各條線段與所述初始線段的夾角和所述初始線段的旋轉(zhuǎn)方向確定外墻對應(yīng)的線段具體包括:
[0049]根據(jù)所述各條線段與所述初始線段的夾角與旋轉(zhuǎn)方向,計算所述各條線段與所述初始線段的關(guān)系;
[0050]根據(jù)計算得到所述各條線段與所述初始線段的關(guān)系,確定各條線段與所述初始線段的交點到所述初始線段的起始點的距離;
[0051]根據(jù)所述各條線段與所述初始線段的交點到所述初始線段的起始點的距離,確定與所述外墻對應(yīng)的線段。
[0052]優(yōu)選地,所述初始線段為所述外墻線段候選集合中的任意線段;所述初始線段所包括的最外點為起始點。
[0053]優(yōu)選地,所述方法還包括:
[0054]判斷所有外墻對應(yīng)的線段中是否存在相互平行且小于預(yù)設(shè)距離的線段,得到一判斷結(jié)果;
[0055]若判斷結(jié)果指示存在相互平行且小于預(yù)設(shè)距離的線段,則保留所述相互平行且小于預(yù)設(shè)距離的線段中長度最大的線段。
[0056]第二方面,本發(fā)明實施例提供一種建筑圖紙墻體識別裝置,所述裝置包括:
[0057]第一選擇模塊,用于將圖紙的所有線段中符合最外點條件的端點放入最外點集合中;
[0058]第二選擇模塊,用于將所述最外點所在線段放入所述最外點的線段集合中;
[0059]處理模塊,用于對所述線段集合中所包含的線段進行處理,得到外墻線段候選集合;
[0060]選擇模塊,用于從所述外墻線段候選集合中確定外墻對應(yīng)的線段。
[0061]優(yōu)選地,所述第一選擇模塊具體用于:
[0062]對圖紙中的所有線段進行遍歷,選出長度大于雙線墻厚度的線段;
[0063]對所選出線段的端點坐標(biāo)進行遍歷,確定線段端點的最值坐標(biāo);
[0064]判斷線段的任一端點坐標(biāo)與任一最值坐標(biāo)是否相同,獲得一判斷結(jié)果;
[0065]當(dāng)所述判斷結(jié)果指示線段的任一端點坐標(biāo)與任一最值坐標(biāo)相同時,則確定該端點為最外點;
[0066]將確定的最外點放入最外點集合中。
[0067]優(yōu)選地,所述第一選擇模塊還用于:
[0068]判斷所述最外點集合中任一最外點是否為場景中的線段的端點,得到一判斷結(jié)果;
[0069]當(dāng)所述判斷結(jié)果指示某最外點為場景中的線段的端點,則從所述最外點集合中舍棄此最外點。
[0070]優(yōu)選地,所述處理模塊具體用于:
[0071]遍歷所述最外點集合中的最外點;
[0072]判斷所述最外點的連通度是否小于2,得到一判斷結(jié)果;
[0073]若判斷結(jié)果指示連通度小于2,則將所述最外點從所述最外點集合中舍棄;
[0074]將被舍棄的最外點所在線段的另一端點作為最外點加入所述最外點集合中;
[0075]將新加入的最外點所在線段和與所述新加入的最外點所在線段相連的連接線段加入到外墻線段候選集合中。
[0076]優(yōu)選地,所述處理模塊還具體用于:
[0077]遍歷所述最外點集合中的所述最外點;
[0078]判斷所述最外點的連通度是否大于2,得到一判斷結(jié)果;
[0079]若判斷結(jié)果指示連通度大于2,則計算所述最外點的線段集合中的各條線段與預(yù)先設(shè)置的對比線段的夾角;
[0080]將夾角符合要求的線段放入所述外墻線段候選集合中。
[0081]優(yōu)選地,在所述將夾角符合要求的線段放入所述外墻線段候選集合中:
[0082]若各條線段與預(yù)先設(shè)置的對比線段的夾角都大于等于0,則將夾角為O和最大夾角對應(yīng)的線段放入所述外墻線段候選集合中;
[0083]若各條線段與預(yù)先設(shè)置的對比線段的夾角都小于等于0,則將夾角為O和最小夾角對應(yīng)的線段放入所述外墻線段候選集合中;
[0084]若各條線段與預(yù)先設(shè)置的對比線段的夾角有正有負(fù),則將最大夾角和最小夾角對應(yīng)的線段放入所述外墻線段候選集合中。
[0085]優(yōu)選地,所述對比線段為所述最外點的線段集合中的第一條線段。
[0086]優(yōu)選地,所述選擇模塊具體用于:
[0087]遍歷所述最外點集合中的所述最外點;
[0088]判斷所述最外點的連通度是否小于2,得到一判斷結(jié)果;