乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      復(fù)雜戶型圖處理(基于邊緣特征)...

       獵狐肥 2021-05-24

      需求突然轉(zhuǎn)換到,識(shí)別有背景的戶型圖:

      具體效果參考空間大師,首先提出墻體,然后識(shí)別門窗、家具。

      空間大師對(duì)實(shí)現(xiàn)思路幾乎沒有幫助,絕望之際找到一篇論文,看結(jié)果還不錯(cuò),于是我們就開始根據(jù)論文一步步實(shí)現(xiàn)。

      論文為:基于形狀與邊緣特征的戶型圖識(shí)別研究_江州,有兩種方法:

      一、基于形狀特征的戶型圖識(shí)別

      1、墻體線分割

      彩色圖-->灰度圖-->統(tǒng)計(jì)灰度直方圖,最大值即為背景灰度。

      墻體的幾何特征,平直度

      若某灰度值的平直度越高,則代表該灰度值的整體分布越趨于平直化。

      墻體分割算法的主要流程為:

      (1)統(tǒng)計(jì)全局圖像的灰度值,(2)計(jì)算分布圖中峰值灰度的平直度,(3)平直度最高的灰度值即為墻體線的灰度,(4)二值化閾值(通常取灰度域)。

      2、墻體線降噪

      觀察發(fā)現(xiàn),噪聲部分連圖片連通區(qū)大小遠(yuǎn)小于墻體線構(gòu)成的連通區(qū),且峰值連通區(qū)的數(shù)目決定了墻體的數(shù)量。

      提出,基于連通區(qū)的快速去噪算法,主要思路:(1)統(tǒng)計(jì)全局的連通區(qū)大小,(2)找到能分割出所有峰值連通區(qū)對(duì)應(yīng)的最小閾值,(3)以該閾值的1/2作為分割閾值,對(duì)圖像中的連通區(qū)進(jìn)行分割。

      3、墻體線矯正與分析

      4、門窗的分割與識(shí)別

      窗:平行線的紋理特征

      門:圓弧所分割兩個(gè)區(qū)域的面積比

      二、基于邊緣特征的戶型圖識(shí)別(我們進(jìn)行了代碼實(shí)現(xiàn))

      1、像素級(jí)邊緣提取

      對(duì)于邊緣提取,canny算子的效果最好,保留了圖像更多的細(xì)節(jié),且對(duì)部分破損邊緣進(jìn)行修補(bǔ),但處理時(shí)間長;

      sobel算子,能較好地保持邊緣細(xì)節(jié),速度快,但自動(dòng)過濾掉了一部分不關(guān)注的邊緣。

      選擇了sobel算子進(jìn)行邊緣檢測(cè)。

      (1)去標(biāo)尺,得到處理圖像的邊界(灰度值投影找峰值的方法)

      imageWithoutRuler(image, imageWithoutR, border);

      (2)邊緣梯度的計(jì)算,計(jì)算四個(gè)方向的sobel梯度模板,選取最大的作為其梯度值及方向。

      采用四個(gè)方向的梯度模板的好處在于充分利用8鄰域內(nèi)像素灰度信息的同時(shí),判斷方向快速且只涉及到加法。

      sobelGrad(src_gray, gradImage, thetaImage, ShowthetaImage, border);

      梯度圖:

      方向圖:

      (3)閾值分割非極大值抑制

      閾值分割,對(duì)感興趣的圖像進(jìn)行分離,提取出梯度較高的像素點(diǎn),這些像素點(diǎn)灰度值變化劇烈,為邊緣的候選點(diǎn)。

      論文推薦分割的閾值:

      非極大值抑制,保證該店為局部范圍內(nèi)梯度最大的點(diǎn),保證邊緣為單像素寬度,方便進(jìn)行后續(xù)的邊緣追蹤。

      方法:在該梯度上,該像素點(diǎn)大于等于相鄰的兩個(gè)像素點(diǎn)的梯度值。

      threshold_nms(gradImage, thetaImage, gradImage1, border, 0.3);

      (4)去冗余點(diǎn)與毛刺

      (冗余點(diǎn)的定義沒看懂。)

      毛刺,即分支點(diǎn)的特征為:在像素的八鄰域內(nèi),有不超過一個(gè)像素點(diǎn)。

      removeBurr(gradImage1, gradImage2, border);

      (5)邊緣跟蹤

      為了方便后續(xù)對(duì)邊緣數(shù)據(jù)進(jìn)行參數(shù)化,必須對(duì)提取的邊緣進(jìn)行編碼。其編碼算法的步驟如下:

      步驟 1:從左到右,從上到下,檢索出所有連續(xù)邊界的起始點(diǎn),記下起始點(diǎn)坐標(biāo),并將該點(diǎn)的灰度值,置為背景灰度 0;

      步驟 2:以該點(diǎn)的梯度方向?yàn)樗阉鞣较颍粩嘌h(huán)檢索下一個(gè)頂點(diǎn)。若找到,則加下該檢索方向,并將該點(diǎn)的灰度值置為背景灰度 0;若沒找到,說明該點(diǎn)是孤立點(diǎn),即邊緣的終點(diǎn),跳出循環(huán);

      步驟 3:以像素?cái)?shù)目門限對(duì)跟蹤結(jié)果進(jìn)行過濾,低于門限的邊緣被濾除。

      該邊緣編碼方案與傳統(tǒng)的編碼方法進(jìn)行比較,一方面,直接對(duì)源圖像內(nèi)的像素點(diǎn)進(jìn)行置零操作,極大地減少了遍歷次數(shù);另一方面,在檢索下一個(gè)邊界點(diǎn)時(shí),把上一個(gè)檢索方向作為優(yōu)先檢索方向,檢索效率得到了較大的提升。

      edgeTracking(gradImage2, thetaImage, border, lines_before);

      2、亞像素級(jí)邊緣提取

      。。。。。。

      我們的困境在于不知道怎么去除干擾項(xiàng),實(shí)現(xiàn)了部分代碼后,發(fā)現(xiàn)論文中是手動(dòng)去除干擾。。放棄。

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多