一種基于投影變換的連通域標(biāo)記方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種計(jì)算機(jī)數(shù)字圖像處理方法,特別涉及一種基于投影變換的連通域標(biāo)記方法。
【背景技術(shù)】
[0002]連通域標(biāo)記作為一種重要的數(shù)字圖像處理技術(shù),有著廣泛的應(yīng)用領(lǐng)域。對基于圖像的目標(biāo)提取和跟蹤,連通域標(biāo)記是一項(xiàng)關(guān)鍵技術(shù),是進(jìn)行后續(xù)目標(biāo)提取和識別的必要步驟。正確快速的連通域標(biāo)記和提取手段將為后續(xù)的分析和識別帶來很大的便利。
[0003]近年來,隨著技術(shù)的發(fā)展,人們通過各種傳感器(光、電)獲得的圖像分辨率越來越高。目標(biāo)的檢測與跟蹤的關(guān)鍵技術(shù)之一,連通域標(biāo)記算法已成為其走向?qū)嶋H應(yīng)用的制約瓶頸。因此,幾十年來,研究者們不斷地提出改進(jìn)的方法,以降低連通域標(biāo)記方法的時(shí)間復(fù)雜度和空間復(fù)雜度。
[0004]二值圖像連通域標(biāo)記方法,按照處理對象的不同主要分為基于像素和基于線段兩大類。
[0005]像素點(diǎn)掃描方式有區(qū)域增長法、順序掃描法、遞歸標(biāo)記法等。線段掃描算法主要有基于游程的標(biāo)記算法以及多種改進(jìn)算法?;谙袼氐乃惴ㄈ菀讓?dǎo)致堆棧溢出或者像素多次反復(fù)遍歷,效率不高。
[0006]基于線段的標(biāo)記算法相比基于像素的方法效率要高,利用鄰接表來記錄沖突標(biāo)記,一旦遇到等價(jià)對就記錄在鄰接表中,對于大尺寸圖像,容易使鄰接表存儲大量的等價(jià)對信息,使等價(jià)區(qū)域的合并邏輯復(fù)雜而且浪費(fèi)存儲空間。
【發(fā)明內(nèi)容】
[0007]發(fā)明目的:本發(fā)明所要解決的技術(shù)問題是針對現(xiàn)有技術(shù)的不足,提供一種基于投影變換的連通域標(biāo)記方法。
[0008]本發(fā)明的目的是設(shè)計(jì)一種存儲量小、邏輯簡單、且適合實(shí)時(shí)實(shí)現(xiàn)的連通域標(biāo)記算法。
[0009]本發(fā)明方案的實(shí)施步驟如下:
[0010]步驟(1),圖像二值化:對灰度圖像作過閾值處理,得到一個(gè)二值圖像,其中為1的像素點(diǎn)是能量高于閾值gate的單元,為0的是能量低于閾值的單元;
[0011]步驟(2),濾波處理:對二值圖像做一次腐蝕和膨脹處理,以去除圖像中的噪聲和雜點(diǎn);
[0012]步驟(3),列向投影;對二值圖像作列向投影(縱向),只要該列上有值為1的像素點(diǎn),則該列的投影值為1,否則為0。這樣便得到一行由0、1組成的列向投影二值序列;
[0013]步驟(4),分區(qū):對列向投影的結(jié)果分區(qū),連續(xù)為1的區(qū)域標(biāo)記為一個(gè)子分區(qū);
[0014]步驟(5),依次在二值圖像上取出列向投影的子分區(qū),對其做行向投影(橫向),只要該行上有值為1的像素點(diǎn),則該行的投影值為1,否則為0。這樣便得到一列由0、1組成的行向投影二值序列;
[0015]步驟¢),分區(qū):對行向投影的結(jié)果分區(qū),連續(xù)為1的區(qū)域標(biāo)記為一個(gè)子分區(qū);
[0016]步驟(7),記錄各個(gè)子分區(qū)的起始和終止坐標(biāo),依次在二值圖像上取出行向投影(橫向)的子分區(qū),對各個(gè)子分區(qū)重復(fù)步驟3-6,直到投影分區(qū)結(jié)果為1。這樣便提取出了所有分區(qū)。
[0017]步驟(1)中,像素點(diǎn)的能量由圖像的灰度值表征,灰度值的范圍是0?255。
[0018]步驟(3)中,對二值圖像作列向投影即縱向投影,只要該列上有值為1的像素點(diǎn),則該列的投影值設(shè)為1,否則為零,由此得到一行由0和1組成的列向投影二值序列。
[0019]驟(5)中,依次在二值圖像上取出列向投影的子分區(qū),對其做行向投影即橫向投影,只要該行上有值為1的像素點(diǎn),則該行的投影值設(shè)為1,否則為0,由此得到一列由0和1組成的行向投影二值序列。
[0020]步驟(7)中,記錄各個(gè)子分區(qū)的起始和終止坐標(biāo),依次在二值圖像上取出行向投影的子分區(qū),對各個(gè)子分區(qū)重復(fù)步驟3?6,直到投影分區(qū)結(jié)果為1,由此提取出所有分區(qū)。
[0021]在上述步驟(2)中,對圖像作開運(yùn)算處理,能有效去除圖像中的雜點(diǎn)和噪聲。在上述步驟(3)、(4)和(5)、(6)中,通過將二維圖像投影到一維方向上,并根據(jù)其投影結(jié)果進(jìn)行區(qū)域的分割和提取,將一個(gè)二維區(qū)域分割問題轉(zhuǎn)化為一個(gè)一維線段分割問題,將連通域標(biāo)記問題簡單化。在上述步驟(7)中,對各個(gè)子分區(qū)進(jìn)行投影變換和區(qū)域提取,可以區(qū)分投影重疊的各個(gè)區(qū)域。在上述步驟(7)中,只需記錄各分區(qū)的起始和終止兩個(gè)坐標(biāo)點(diǎn),避免了傳統(tǒng)連通域標(biāo)記方法中需要存儲大量等價(jià)信息和整理等價(jià)對的缺點(diǎn),極大地節(jié)省了存儲空間并且降低了算法復(fù)雜度。這一點(diǎn)對于高分辨率、大尺寸圖像尤其重要。
[0022]本發(fā)明與現(xiàn)有技術(shù)相比,具有以下顯著優(yōu)點(diǎn):
[0023]1、性能穩(wěn)定:對圖像作開運(yùn)算處理,能有效去除圖像中的雜點(diǎn)和噪聲。
[0024]2、邏輯簡單:利用投影變換,將一個(gè)二維區(qū)域分割問題轉(zhuǎn)化為一個(gè)一維線段分割問題,將連通域標(biāo)記問題簡單化;
[0025]3、存儲量小:只需記錄各分區(qū)的起始和終止兩個(gè)坐標(biāo)點(diǎn),避免了傳統(tǒng)連通域標(biāo)記方法中需要存儲大量等價(jià)信息的缺點(diǎn),極大地節(jié)省了存儲空間;
[0026]4、速度快:相對像素掃描方法,不存在大量的訪問堆棧和領(lǐng)域搜索。相對于基于線段的標(biāo)記算法,無需整理大量的等價(jià)對,簡化了算法的邏輯,同時(shí)也提高了算法速度。
【附圖說明】
[0027]下面結(jié)合附圖和【具體實(shí)施方式】對本發(fā)明做更進(jìn)一步的具體說明,本發(fā)明的上述和/或其他方面的優(yōu)點(diǎn)將會變得更加清楚。
[0028]圖1是處理流程圖。
[0029]圖2是原始圖像。
[0030]圖3是二值化后圖像。
[0031]圖4是開運(yùn)算處理后圖像。
[0032]圖5是第一次列向投影分區(qū)結(jié)果。
[0033]圖6是對al分區(qū)行向投影分區(qū)結(jié)果。
[0034]圖7是對bl分區(qū)列向投影分區(qū)結(jié)果。
[0035]圖8是對b2分區(qū)列向投影分區(qū)結(jié)果。
【具體實(shí)施方式】
[0036]本發(fā)明涉及一種連通域標(biāo)記方法,特別涉及一種基于投影變換的連通域標(biāo)記方法。本方法以二值圖像為研究對象,采用投影變換的方法,實(shí)現(xiàn)對圖像中連通區(qū)域的提取和分析?;谕队白儞Q的連通域標(biāo)記方法,通過將二維圖像投影到一維方向上,并根據(jù)其投影結(jié)果進(jìn)行區(qū)域的分割和提取,來實(shí)現(xiàn)連通域標(biāo)記和分析。本方法利用投影變換的思想,將一個(gè)二維區(qū)域分割問題轉(zhuǎn)化為一個(gè)一維線段分割問題,將連通域標(biāo)記問題簡單化。相對傳統(tǒng)方法,本文方法實(shí)現(xiàn)簡單,處理速度更快。
[0037]本發(fā)明的目的是設(shè)計(jì)一種存儲量小、邏輯簡單、且適合實(shí)時(shí)實(shí)現(xiàn)的連通域標(biāo)記算法。
[0038]下面結(jié)合圖對本發(fā)明方案作進(jìn)一步詳細(xì)描述。
[0039]圖1是整體的處理流程圖。結(jié)合圖1,本發(fā)明方法包括以下步驟:
[0040]1.圖像二值化:對灰度圖像作過閾值處理,得到一個(gè)二值圖像,其中為1的像素點(diǎn)是能量高于閾值的單元,為0的是能量低于閾值的單元。閾值gate由圖像的灰度均值m決定:
[0041]gate = m;
[0042]2.濾波處理:對二值圖像做一次開運(yùn)算,以去除圖像