Metoda pro segmentaci komplexně strukturovaných bitmapových polotónových obrázků na základě složených morfologických operátorů. Zpracování a rozpoznávání obrazu v systémech preventivního zabezpečení: výukový program

Kirschovy kompasové masky jsou dalším typem derivační masky, která se používá pro detekci hran. Tento operátor je také známý jako směrová maska. V tomto operátoru vezmeme jednu masku a otočíme ji ve všech osmi směrech kompasu, abychom získali okraje osmi směrů.

Chystáme se použít OpenCV funkce filtr 2D aplikujte Kirschův operátor na obrázky. Lze jej nalézt pod imgproc balík. Jeho syntaxe je uvedena níže −

Filter2D(src, dst, hloubka , jádro, kotva, delta, BORDER_DEFAULT);

Argumenty funkce jsou popsány níže −

Sr.No. Argument
1

Je to zdrojový obrázek.

2

Je to cílový obrázek.

3

Je to hloubka dst. Záporná hodnota (například -1) znamená, že hloubka je stejná jako zdroj.

4

Je to jádro, které má být skenováno skrz obraz.

5

Je to poloha kotvy vzhledem k jejímu jádru. Bod umístění (-1, -1) standardně označuje střed.

6

Je to hodnota, která se má přičíst ke každému pixelu během konvoluce. Ve výchozím nastavení je 0.

7

BORDER_DEFAULT

Tuto hodnotu ponecháme jako výchozí.

Kromě metody filter2D() existují další metody poskytované třídou Imgproc. Jsou stručně popsány

Sr.No. Metoda a popis
1

cvtColor(Mat src, Mat dst, int kód, int dstCn)

Převádí obrázek z jednoho barevného prostoru do druhého.

2

dilatovat (Mat src, Mat dst, Mat kernel)

Rozšiřuje obraz pomocí specifického strukturujícího prvku.

3

equalizeHist(Mat src, Mat dst)

Vyrovnává histogram obrázku ve stupních šedi.

4

filter2D (Mat src, Mat dst, int hloubka, Mat kernel, Point anchor, double delta)

Spojuje obraz s jádrem.

5

GaussianBlur (Mat src, Mat dst, Velikost ksize, double sigmaX)

Rozmaže obraz pomocí Gaussova filtru.

6

integrál (Mat src, Mat součet)

Vypočítá integrál obrazu.

příklad

Následující příklad ukazuje použití třídy Imgproc k aplikaci Kirschova operátoru na obrázek ve stupních šedi.

Importovat org.opencv.core.Core; import org.opencv.core.CvType; import org.opencv.core.Mat; import org.opencv.highgui.Highgui; import org.opencv.imgproc.Imgproc; konvoluce veřejné třídy ( public static void main(String args) ( try (int kernelSize = 9; System.loadLibrary(Core.NATIVE_LIBRARY_NAME); Zdroj mat = Highgui.imread("grayscale.jpg", Highgui.CV_LOAD_IMAGE_GRAYSCALE); Cíl mat = new Mat(source.rows(),source.cols(),source.type()); Mat kernel = new Mat(velikost jádra,velikost jádra, CvType.CV_32F) ( ( put(0,0,-3); put( 0,1,-3); put(0,2,-3); put(1,0-3); put(1,1,0); put(1,2,-3); put(2, 0,5); put(2,1,5); put(2,2,5); ) ); Imgproc.filter2D(zdroj, cíl, -1, jádro); Highgui.imwrite("výstup.jpg", cíl); ) catch (Výjimka e) ( System.out.println("Chyba: " + e.getMessage()); ) ) )

Vynález se týká prostředků pro zpracování digitálních obrazů. Technickým výsledkem je zvýšení přesnosti detekce hranic komplexně strukturovaných obrazů generováním množství směrově filtrovaných obrazů z původního polotónového obrazu lokálním zpracováním složeným morfologickým operátorem. V metodě je zadaný operátor tvořen z lineárních strukturotvorných prvků s různými orientačními parametry vzhledem k obrazovému rastru stejné délky, každý filtrovaný obraz je získán interakcí lineárního strukturotvorného prvku složeného morfologického operátoru s původního obrázku, jas pixelů ve filtrovaném obrázku se získá provedením tří morfologických operací pro každý pixel interakce původního obrázku originálního obrázku s lineárním prvkem tvořícím strukturu. 6 nemocných.

Výkresy k RF patentu 2510897

[0001] Předložený vynález se týká oblasti digitálního zpracování obrazu. Segmentace, tedy výběr homogenních oblastí v originálním digitálním snímku, je jedním z nejdůležitějších úkolů v systémech strojového vidění, které se používají v mnoha vědeckých, technických a průmyslových odvětvích: lékařství, metalografie, letecké snímkování, robotika, detekce chyb. , bezpečnostní a donucovací systémy a další.

Skutečné rastrové obrázky získané z CCD matic videokamer mohou obsahovat stínované a přeexponované oblasti. Na stejném obrázku mohou být světlé objekty tmavé pozadí a naopak tmavé předměty na světlém pozadí s různým stupněm stínování. V důsledku toho se získá složitý strukturovaný obraz, jehož rozdělení na segmenty je nejednoznačný úkol. V tomto případě je pro zlepšení kvality segmentace nutné použít technologie výběru segmentů založené na modelování procesů segmentace, které jsou implementovány v lidském vizuálním analyzátoru.

Dnes je známo mnoho různých metod segmentace, mezi nimiž jsou metody využívající informace o konektivitě oblastí: rostoucí oblasti, kombinování oblastí podle daného pravidla, dělení a slučování oblastí, segmentace podle morfologických povodí, aplikace metod teorie grafů.

Metoda pěstování regionů v její nejjednodušší implementaci [Gonzalez R.S. Digitální zpracování obrazu [Text] / R.S. Gonzalez, R.E. Woods. - M.: Technosfera, 2005. - 1072 s. - ISBN 5-94836-028-8. - S.875] lze popsat následovně:

Na původním snímku jsou vybrány body (krystalizační centra), které pravděpodobně patří do vybraných oblastí, například to mohou být body s maximální úrovní jasu;

Dále od těchto bodů začíná růst regionů, to znamená připojování sousedních regionů k již existujícím bodům, přičemž se používá určité kritérium pro jejich blízkost, například rozdíl jasu daný určitou prahovou hodnotou;

Zastavení růstu oblastí nějakou podmínkou, například maximální odchylkou jasu nových bodů v oblasti od úrovně jasu krystalizačního centra nebo maximální plochy segmentů.

Nevýhodou této metody je, že pixely stejného segmentu mohou mít úrovně jasu, jejichž rozdíl překračuje apriorní specifikaci, a na jiných fragmentech stejného obrázku může být situace opačná, kdy pixely různých segmentů budou být identifikovány jako pixely stejného segmentu, protože jejich rozdíly v úrovních jasu nepřesahují a priori danou hodnotu.

Dalším způsobem, blízkým předchozímu, je oblastní fúzní algoritmus / M.Baatz, A.Schape. - Journal of Photogrammetry and Remote Sensing. Ročník 58. Číslo 3-4. - Herbert Wichmann Verlag, 2004, s. 239-258]. Vychází z myšlenky, že pixely původního obrázku jsou již v podstatě homogenní oblasti, ale zároveň mají stejně minimální rozměry. V tomto případě by metoda segmentace měla sloučit sousední regiony, které jsou si nejblíže v nějakém parametru (například barva nebo textura) určeném na základě analýzy vzdálenosti (heterogenita, funkce sloučení nákladů), dokud (buď neporuší) nějakou danou podmínku (např. na velikosti segmentů nebo jejich počtu). Pro tento algoritmus zcela odpadá problém určování středů krystalizace, ale zvláště aktuální se stává problém určování okamžiku dokončení procesu slučování. V této implementaci, stejně jako v mnoha jiných, se používá omezení velikosti a počtu segmentů, což značně snižuje flexibilitu metody.

Při pěstování a slučování oblastí se často používají informace o texturách / Shaw M. ; Bhaskar R.; Ugarriza L.G. ; Sabre E.; Amuso V.]. Využití informací o texturách při pěstování je však omezeno tím, že pro analýzu textur (obvykle se jedná o výpočet různých vlastností popsaných v matematické statistice) je již zpravidla vyžadována plocha větší než jeden pixel, což je při růstu nemožné (přidání jednoho pixelu do oblasti).

Nárokovanému se blíží metoda segmentace / Mantao X., Qiyong G., Hongzhi L., Jiwu Z. ], sestávající v zásadě ze dvou fází: pěstování a následné slučování segmentů. Oblasti pěstování v tento případ se používá k provedení počáteční přesegmentace a plošná fúze založená na metodách teorie grafů má za cíl dosáhnout konečného optimálního stavu segmentace. Určení krystalizačních center u této metody probíhá automaticky na základě gradientového snímku získaného z původního snímku pomocí operátoru Kirschova maska. Použití gradientního obrazu zde umožňuje zcela univerzálně řešit problém automatické detekce krystalizačních center, neboť minima funkce gradientního obrazu budou odpovídat bodům s nejvíce homogenním okolím (centrům růstu potenciálních segmentů). Nevýhodou použití Kirschova operátoru v této situaci je však jeho prostorová omezenost (analyzuje se okolí pouze 3 × 3 pixelů), zatímco při hledání krystalizačních center by bylo užitečné zkoumat okolí bodu na velkých měřítcích. za účelem zohlednění nízkofrekvenčních změn ve funkci jasu obrazu a tím přesnější následné stanovení růstových center. Tento nedostatek je zbaven přístupu [Minčenkov M.V. Algoritmus pro automatickou segmentaci rastrových obrázků založený na růstu shluků z maxima R-hodnoty [Elektronický zdroj] / M.V. Minchenkov. - Sborník příspěvků z konference Graphicon 2004. - Režim přístupu: /2004/ Sborník /Technical_ru/sl.pdf. - str. 2], založený na Rayleighově detektoru hranic areálových objektů, který využívá oblasti analýzy různých velikostí.

Společnou nevýhodou všech těchto metod je striktní pravidlo pro dokončení procesu slučování na základě počtu segmentů v obraze nebo jejich velikosti. Tato podmínka prudce snižuje univerzálnost metody pro danou konfiguraci.

Výběr obrysů objektů na rastrových obrázcích ve stupních šedi lze provádět společně s výběrem objektů samotných. K tomu se obvykle používají metody prahové segmentace založené na průměrné hodnotě jasu pixelu, například [RF patent č. bitmapa»] navrhl gradientovou metodu zvýraznění obrysů objektů na matici polotónového rastrového obrázku, která spočívá ve výpočtu normy nebo čtverce normy gradientu změny jejich jasu pro všechny pixely rastrového obrázku, poté všechny prvky se vyberou na nové černobílé monochromatické matici v černé barvě na bílém pozadí, pro kterou je hodnota normy nebo druhé mocniny normy gradientu větší než prahová hodnota, a převezmou se spojené konfigurace černých prvků jako obrysy objektů na monochromatické matici se pro zvolenou metodu výpočtu gradientu experimentálně určí koeficient, následně se vypočte prahová hodnota druhé mocniny normy gradientu jako součin tohoto koeficientu součty druhých mocnin průměru. hodnoty modulů pro změnu jasu sousedních pixelů v řádcích a sloupcích, u kterých hodnoty překračují celkové průměrné úrovně nenulových změn v řádcích a sloupcích a mezi připojenými konfiguracemi černých prvků na monochromatická matrice okamžitě nevyřadí konfigurace, ve kterých je počet příchozích prvků menší než 5-7 prvků; pro zbývající konfigurace se vypočítá průměrný stupeň sousedství - kvocient dělení součtu všemi prvky konfigurace sousedních prvků součtem prvků v konfiguraci a konfigurací, ve kterých jsou okolí průměrného stupně menší než 3 vyřazeny a zbývající jsou brány jako požadované obrysy objektů.

Mezi nevýhody této metody patří také velké číslo empiricky vyladěné parametry, které neumožňují získat rozhodovací pravidla vhodná pro snímky stejné třídy získané za různých podmínek nebo při různých úrovních šumu. U fuzzy segmentů je téměř nemožné takové parametry vybrat.

Nejblíže k nárokovaným je způsob zpracování obrazu podle US patentu N 5351305, zveřejněný 27.9.94, MKI G06K 9/40, ve kterém se z původního obrazu frekvenčním filtrováním získá množství směrově filtrovaných obrazů. Výstupní obraz je tvořen vzorkováním každého obrazového prvku buď z jednoho ze směrově filtrovaných obrazů, nebo z originálního obrazu, v závislosti na přítomnosti nebo nepřítomnosti kontrastního okraje sousedícího s vybraným (zpracovaným) prvkem původního obrazu. Současně je přítomnost kontrastního okraje pro vybraný obrazový prvek určena výpočtem vlastního vektoru a porovnáním jeho délky s předem stanovenou prahovou hodnotou. Není-li ohraničení, odpovídající prvek výstupního obrazu se rovná odpovídajícímu prvku vstupního obrazu. V přítomnosti ohraničení je odpovídající prvek výstupního obrazu pořízen stejně jako odpovídající prvek tohoto směrově filtrovaného obrazu, ve kterém je směr filtrování nejblíže určenému směru ohraničení.

Ve výše popsaném způsobu zpracování obrazu je při určování hranice obrazu možné, že se délka vlastního vektoru pro sousední pixely změní v blízkosti prahové hodnoty. V tomto případě může dojít k selektivnímu zesílení šumu v důsledku vzorkování sousedních pixelů z různých obrázků (původních a směrově filtrovaných), což vede ke zhoršení kvality výstupního obrazu.

Originální snímky s různou úrovní šumu navíc vyžadují výrazně odlišné prahové hodnoty, přičemž tato metoda neumožňuje adaptivní změnu této prahové hodnoty, což vede k nemožnosti kvalitního zpracování obrázků s různou úrovní šumu.

V přítomnosti okraje jsou prvky výstupního obrazu vzorkovány pouze z jednoho ze směrově filtrovaných obrazů, což vede k úplnému potlačení všech detailů původního obrazu, které se liší směrem od detekovaného okraje, i když jsou tyto detaily jasně viditelné na původním obrázku.

Technickým cílem navrhované metody je zvýšit přesnost zvýraznění hranic segmentů komplexně strukturovaných snímků a v důsledku toho zlepšit kvalitu segmentace (lepší soulad s lidským vnímáním obrazu), jakož i zvýšit míru automatizace procesu analýzy a klasifikace segmentů obrazu.

Úkolu je dosaženo tím, že z původního polotónového obrazu se lokálním zpracováním složeným morfologickým operátorem vytvoří soubor směrem filtrovaných obrazů. Výstupní obraz je tvořen filtrovanými obrazy získanými jako výsledek zpracování původního obrazu složeným morfologickým operátorem. V tomto případě je složený morfologický operátor vytvořen z lineárních strukturotvorných prvků stejné délky V, ale s odlišnými parametry orientace vzhledem k rastru obrazu. Každý filtrovaný obraz je získán interakcí lineárního strukturotvorného prvku složeného morfologického operátoru s původním obrazem F. Jas pixelů ve filtrovaném obrazu se získá následovně. Když je střed prvku tvořícího lineární strukturu umístěn do pixelu p se souřadnicemi ij původního obrázku F, prvek tvořící lineární strukturu B p () vybere tři podmnožiny ze sady pixelů obrázku F:

1) ;

kde V>q,s>1; s l,k>1; k>l.

Po určení tří podmnožin se vypočítá celková hodnota jasu pixelů v podmnožinách A1:S1 a A2:S2. Potom se vypočte rozdíl D=S1-S2. Nová hodnota jasu pixelu je určena rekurzivními vzorci, v sadě A2: lk = lk +D a v sadě A3: qs = qs -D.

Poté, co maska ​​složeného morfologického operátoru projde všemi pixely původního obrazu F, tedy po určení filtrovaných obrazů pro všechny lineární strukturotvorné prvky složeného morfologického operátoru, se konečný obraz G určí sečtením jasů. z pixelů filtrovaných obrázků se stejnými souřadnicemi se určí minimální jas výsledného pixelu obrázku Gmin a maximální jas výsledného obrázku Gmax a posune se a normalizuje se podle vzorce

.

Obrázek 1 ukazuje schéma algoritmu, který implementuje prezentovanou metodu.

Obrázek 2 ukazuje pokračování schématu algoritmu, který implementuje prezentovanou metodu.

Obrázek 3 ukazuje příklad lineárního strukturotvorného prvku složeného morfologického operátoru B( , V) při =1, V=3, =3.

Obrázek 4 ukazuje příklad zpracování binárního obrazu složeným morfologickým operátorem znázorněným na obrázku 3 podle schématu algoritmu zobrazeného na obrázku 1 a obrázku 2.

Obrázek 5 ukazuje příklad zpracování binárního obrazu složeným morfologickým operátorem, znázorněným na obrázku 3, podle schématu algoritmu zobrazeného na obrázku 1 a obrázku 2.

Obr. 6 ukazuje příklad zpracování obrazů znázorněných na obr. 4 pomocí Prewittova detektoru.

Metoda se provádí podle schématu algoritmu uvedeného na obr. 1 a obr. 2. V bloku 1 jsou do počítače vloženy pixely původního rastrového polotónového obrázku F, jehož velikost je N ve vertikálním směru a M v horizontálním směru. Výsledkem tohoto cyklu jsou obrázky filtrované podle směru.

Obrázek 3 ukazuje příklad tvorby složeného morfologického operátoru. Na něm je po jednotkách vyčleněn jeden strukturotvorný prvek složeného morfologického operátoru odpovídající směru filtrace =1 pro V=3 a =3.

Pro každou hodnotu v blocích 4-19 je definován obrázek F() filtrovaný ve směru . Podstata filtrování podle směru je následující. Když je střed prvku tvořícího lineární strukturu umístěn do pixelu p se souřadnicemi ij původního obrázku F, prvek tvořící lineární strukturu B p () vybere tři podmnožiny ze sady pixelů F:

1) ;

kde V>q,s>1; s l,k>1; k>l.

Každý složený morfologický operátor dává triádu množin A1, A2 a A3 pro každou hodnotu parametru a pixelu p. Podmnožina A1 je podmnožinou prvků množiny F, které leží na strukturotvorném prvku B(). Podmnožina A2 je podmnožinou prvků množiny F, které leží nad nebo nalevo od strukturotvorného prvku B(). Podmnožina A3 je podmnožinou prvků množiny F, které leží pod nebo napravo od strukturotvorného prvku B(). Domníváme se, že existuje možnost, že každý strukturotvorný prvek složeného morfologického operátoru je prvkem hranice segmentu. Pak by se měl průměrný jas pixelů na obou stranách hranice segmentu od sebe lišit. Porovnání těchto jasů může potvrdit nebo vyvrátit předloženou hypotézu. Obrazové prvky F, které jsou na obou stranách hranice segmentu, definují podmnožiny A2 a A3.

V blocích 6-9 je určen součet SI jasu pixelů podmnožiny A2 pro lineární strukturu tvořící prvek Bp(). V tomto případě parametry cyklu k a l v blocích 7 a 8 nabývají následujících hodnot v závislosti na parametru pro pixel se souřadnicemi ij:

0: k=i-int(V/2), i-1; l=j-int(V/2), j-int(V/2)+V-l;

1: k=i-int(V/2), i+int(V/2)-1; l=j-int(V/2), j+int(V/2)+V-l-k;

2: k=i-int(V/2), i+int(V/2); l=j-int(V/2), j-l;

3: k=i-int(V/2)-1, i+int(V/2); l=k-1, j+int(V/2)-1.

V blocích 10-12 je určen součet S2 jasu pixelů množiny A3 pro lineární strukturu tvořící prvek Bp(). V tomto případě parametry cyklu s a q v blocích 10 a 11 nabývají následujících hodnot v závislosti na parametru pro pixel se souřadnicemi ij:

0: s=i-1, i+int(V/2); q=j-int(V/2), j-int(V/2)+V-l; j+int(V/2);

3: s=i-int(V/2), i+int(V/2); q=j-int(V/2)-1, k-1.

V bloku 13 je vypočítán parametr D=S1-S2, který určuje, jak významný je rozdíl mezi jasem pixelů množiny A2 a množiny A3. Pro akumulaci této významnosti se k jasu pixelů sady A2 přičte parametr D a od jasu pixelů sady A3 se odečte parametr D. Tyto postupy jsou implementovány v blocích 14-16 a 17- 19, resp.

V blocích 20-26 je určen výstupní obraz G. K tomu je sečten jas v pixelech se stejnými souřadnicemi v získaných filtrovaných obrazech (bloky 20-23). Stanoví se maximální Gmax a minimální Gmin prvky výsledného obrázku a poté se posunou a normalizují podle vzorce

.

Proces zpracování testovacích snímků navrženou metodou je znázorněn na Obr.4-6. Na obr. je testovací binární obraz s jasnými hraničními segmenty, se spektrem ležícím v oblasti nižších prostorových frekvencí. Na obr. 2 je tento obrázek zobrazen po zpracování složeného morfologického operátoru, implementovaného podle algoritmu na obr. 1 a obr. 2 a prvků tvořících strukturu znázorněných na obr. 3. Obr.

Na obr. je testovací binární obraz s jasnými hraničními segmenty, se spektrem ležícím v oblasti horních prostorových frekvencí. Na obr. 2 je tento obrázek zobrazen po zpracování složeného morfologického operátoru, implementovaného podle algoritmu na obr. 1 a obr. 2 a prvků tvořících strukturu znázorněných na obr. 3. Obr.

Proveďme srovnávací hodnocení účinnosti detekce hran na expertní úrovni navrženým složeným morfologickým operátorem a operátorem založeným na Prewittově detektoru hran. Na obr. 6a je znázorněn obraz (obr. 4a) získaný po jeho zpracování Prewittovým detektorem hran a na obr. 6b je znázorněn obraz (obr. 5a) po jeho zpracování Prewittovým hranovým detektorem.

Testovací snímek na obr. 4a se týká snímků, jejichž spektrum leží v oblasti nižších prostorových frekvencí. Testovací obraz na obr. 5a se týká obrazů, jejichž spektrum leží v oblasti horní prostorové frekvence. Můžeme tak získat srovnávací charakteristiky zpracování obrazu s různými prostorovými spektry.

Odborné hodnocení kvality segmentace bralo v úvahu dynamický rozsah mezi průměrným jasem pixelů původního obrázku (pozadí) a průměrným jasem pixelů na skutečné hranici segmentu ve zpracovávaných snímcích. Předpokládalo se, že čím větší je tento dynamický rozsah, tím stabilnější je proces segmentace vůči interferenci.

Analýza experimentálních výsledků při zpracování testovacích snímků pomocí navrženého morfologického operátoru ukázala, že hranice segmentů vypadají jako „mexický klobouk“ bez ohledu na prostorové frekvence, které snímek zabírá, což výrazně zvyšuje dynamický rozsah na hranicích segmentu a tím zvyšuje odolnost vůči šumu procesu segmentace.

NÁROK

Metoda segmentace složitě strukturovaných rastrových polotónových obrázků na základě kompozitních morfologických operátorů, která spočívá v tom, že z výchozího polotónového obrázku se lokálním zpracováním složeným morfologickým operátorem vytvoří množina obrázků směrem filtrovaných a výstupní obrázek se získává z filtrovaných obrázků, vyznačující se tím, že složený morfologický operátor vytvořený z lineárních strukturotvorných prvků s různými parametry orientace vzhledem k rastrovému obrázku stejné délky V a každý filtrovaný obraz je získán interakcí lineárního strukturotvorného prvku složeného morfologického operátoru s původním obrazem F, zatímco jas pixelů ve filtrovaném obrázku se získá provedením pro každý pixel p původní obrázek F tři morfologické interakční operace původního obrázku F s lineárním strukturotvorným prvkem B p (), v důsledku čehož se získají tři podmnožiny

1) ;

kde V>q , s>1; s l,k>1; k>l; po určení, ze které se vypočítá celková hodnota jasu pixelů v podmnožinách A1:S1 a A2:S2, pak vypočítejte rozdíl D=S1-S2, novou hodnotu jasu pixelů určí opakující se vzorce, v množině A2: f lk =f lk +D a v množině AS: f qs =f qs -D, načež přistoupí k určení dalších tří podmnožiny v dalším pixelu p původního obrázku, po určení filtrovaných obrázků pro všechny lineární strukturotvorné prvky složeného morfologického operátoru se konečný obrázek G určí sečtením jasů pixelů filtrovaných obrázků se stejnými souřadnicemi. , určí se minimální jas pixelů výsledného obrázku Gmin a maximální jas pixelů výsledného obrázku Gmax a ten se posune a normalizuje podle vzorce

MDT: 004.932.72CH SRSTI: 23.28.15 DOI: 10.15643/jscientia.2016.6.195

OPTIMÁLNÍ ALGORITHMY PRO DETEKCI OBRYSU OBRAZU V SYSTÉMOVÉM VIDĚNÍ

E. E. Pelevin*, S. V. Balyasny

Tula State University Rusko, 300012, Tula, Lenin Ave., 92 * e-mail: [e-mail chráněný]

Článek se zabývá problematikou rozpoznávání obrysů obrazu v robotice. Předmětem studia jsou čtyři algoritmy pro identifikaci obrysů: Kirsch, Robinson, Canny a Marr-Hildreth. S pomocí těchto algoritmů, které se často používají v moderní robotice, byla provedena studie o účinnosti extrakce obrysu obrazu v systémech vidění se vstupem různé typy objektů. Výsledky provedených studií ukázaly, že nejúčinnější při výběru kontur v obraze je metoda Canny. V průběhu práce se ukázalo, že tato metoda umožňuje dosáhnout vysoké ostrosti i detailů. Druhým nejúčinnějším výběrem lineárních obrysů byla metoda Marr-Hildreth. Na základě výsledků studie můžeme konstatovat, že existují nejuniverzálnější algoritmy, ale každý z nich je svým způsobem vhodný pro určité třídy obrázků.

Klíčová slova: Kirsch, Robinson, Canny, Marr-Hildreth, operátor, rozpoznávání, kontura, robotika, systém vidění (VTS).

OPTIMÁLNÍ ALGORITMUS DETEKCE HRAN V SYSTÉMU POČÍTAČOVÉHO VIDĚNÍ

E. E. Pelevin*, S. V. Balyasny

Státní univerzita v Tule

Prospect Lenina 92, 300012, Tula, Rusko

* e-mailem: [e-mail chráněný]

Článek se dotýká okrajové detekce digitálních obrázků v robotice. Předmětem výzkumu jsou čtyři algoritmy identifikace hran, které vybrali Kirsh, Robinson, Canny a Marr-Hildreth. Pomocí těchto algoritmů široce používaných v moderní robotice byl proveden výzkum účinnosti hranové detekce obrazů v systémech počítačového vidění, které akceptují různé vstupní typy objektů. Výsledky provedeného výzkumu ukázaly, že metoda Canny je nejúčinnější v detekci hran obrazu. Během pracovního procesu bylo zjištěno, že tato metoda umožňuje dosáhnout vysokého rozlišení i jemnosti. Metoda Marr-Hildreth se stala druhou účinnou metodou v lemování liniových kontur. Na základě výsledků výzkumu lze vyvodit následující závěr: existuje více univerzálních algoritmů, ale každý z nich jinak vyhovuje konkrétním třídám obrázků.

Klíčová slova: Kirsh, Robinson, Canny, Marr-Hildreth, operátor, detekce hran, kontura, robotika, systém počítačového vidění.

Nepochybně ve století počítačová technologie rostoucí místo v moderní věda obsazeno robotikou. Je to způsobeno zaváděním nových zařízení do továren, čerpacích stanic, letišť a dalších oblastí lidského života. Součástí těchto inovativních systémů je program s jedním nebo druhým algoritmem pro rozpoznávání obrysů obrázků, například provádění výběru obrysů různých částí nebo mechanismů. Na účinnosti tohoto algoritmu závisí veškerá následná činnost robotického systému jako celku.

V současné době existuje velké množství různých algoritmů pro extrakci obrysů, ale pouze některé z nich jsou široce používány, a to kvůli jejich univerzálnosti. V tomto článku se budeme zabývat nejpopulárnějšími algoritmy: Kirschův operátor, Robinsonův operátor, Cannyho hraniční detektor a Marr-Hildrethova metoda. K testování těchto metod bude použit testovací snímek (obrázek 1).

První z uvažovaných metod je Kirschův operátor. Tuto metodu vyvinul Roussel A. Kirsch v roce 1971. Tento algoritmus je založen na použití detekční matice (masky), která se postupně otáčí podél osmi hlavních stran.

Rýže. 1. Původní snímek pro detekci hran.

světlo: sever, severozápad, západ, jihozápad, jih, jihovýchod, východ a severovýchod. Po výzkumu Roussel A. Kirsch odvodil následující masky pro každý světový směr:

5 5 5 -3 0 -3 -3 -3 -3J

POČÍTAČOVÁ VĚDA | Juvenis scientia 2016 č. 6

V tomto případě je hodnota hranice definována jako maximální hodnota, kterou lze pomocí masky zjistit. Určitá maska ​​pomáhá směru dát maximální hodnotu. Z toho můžeme usoudit, že maska ​​ko umožňuje vybrat vertikální hranice a maska ​​k5 - diagonální. Z masek je také patrné, že ty poslední jsou podobné prvním čtyřem, ale jsou jejich zrcadlový obraz podél středové osy použité matrice.

Při zpracování zkušebního snímku lze získat následující výsledek (obr. 2).

Rýže. 2. Identifikace obrysů Kirschovým operátorem.

Později, v roce 1977, byl vyvinut Robinsonův operátor, který byl ve skutečnosti analogem Kirschovy metody, ale díky použití koeficientů o, 1 a 2 se stal snadněji implementovatelným. Matice, které tento operátor používá, jsou symetrické kolem svých centrálních os, z nichž každá je vyplněna nulami. Díky tomu lze použít pouze první čtyři matice a zbytek výsledků lze získat invertováním prvních. Robinsonův operátor bude vypadat takto:

Rýže. 3. Výsledek operace operátora Robinson.

Navzdory jednoduchosti předchozího operátora se nakonec stal nejoblíbenějším detektor hran Canny. Metodu poprvé popsal v roce 1983 vědec John Canny ve své diplomové práci. Tato metoda je účinnější než mnohé moderní, i když byla vyvinuta před více než třiceti lety. Jeho charakteristickým rysem je eliminace šumu na konturách obrazu, který nepochybně ovlivňuje konečný výsledek. Tento algoritmus se skládá z následujících kroků:

Rozmazání původního obrázku c) pomocí Gaussovy metody ^(r, c). ^(r,c)=f(r,c)*G(r,c,6);

Hledejte přechod. Hranice se kreslí tam, kde gradient nabývá maximální hodnoty;

Potlačení nemaxima. Jako hranice jsou označena pouze lokální maxima;

Výsledné hranice jsou určeny potlačením všech hran, které nejsou spojeny s definovanými hranicemi.

Výsledkem algoritmu jsou kontury na obrázku. Tato metoda není díky svým vlastnostem příliš náchylná na šum (obr. 4).

Z matic vyplývá, že poté, co je každá z nich postupně aplikována na pixel a jeho prostředí, bude maximální hodnota, kterou obdrží, považována za hodnotu gradientu. Potom lze úhel gradientu aproximovat jako úhel čáry vyplněné nulami v masce, která poskytuje maximální odezvu.

Stejně jako v předchozím případě můžete zpracovat původní snímky (obr. 3).

Rýže. 4. Výsledek metody Canny.

Nejnovější metoda pro detekci okrajů digitálních obrázků se nazývá Mugg-number, která byla vyvinuta v roce 1980. Znamená to detekci křivek ve všech oblastech, kde dochází k prudké změně jasu skupin pixelů. Tato metoda je jednoduchá a funguje konvolucí původního obrázku.

fermentace pomocí funkce LoG nebo jako rychlé přiblížení pomocí DoG. Když metoda běží, nuly v inverzním výsledku označují obrysy obrazu. Aby metoda fungovala, je nutné dodržet následující kroky algoritmu:

Rozostření obrazu Gaussovou metodou;

Aplikace Laplaceova operátoru na rozmazaný obraz(často jsou první dva kroky spojeny do jednoho);

Provede se cyklus výpočtů a v získaném výsledku se podívají na změnu znaménka. Pokud se znaménko změní ze záporného na kladné a hodnota se změní o více než daný práh, pak je nutné tento bod definovat jako hranici;

Pro lepší výsledky lze krok pomocí Laplaceova operátoru provádět pomocí hystereze, tedy tak, jak je implementována v Cannyho algoritmu.

Výsledek tohoto algoritmu na testovacím snímku bude následující (obr. 5).

Na základě provedených studií lze usoudit, že pro rozpoznávání mechanismů a dalších objektů sestávajících z křivočarých obrysů v robotice lze nejefektivněji využít Cannyho metodu, která umožňuje dosažení nejostřejších hranic a vysokých detailů. Chcete-li zvýraznit lineární obrysy objektů, například v případech, kdy se systémy vidění používají na dopravníkových linkách, nejlepší způsob vhodná je metoda Marr-Hildreth, která na snímcích zvýrazní i malé lineární kontury. Všechny popsané selekční algoritmy lze tedy použít v robotice, ale každý z nich je nejúčinnější na určitou třídu úloh a je také zaměřen na získání výsledku určité kvality.

LITERATURA

1. Ammeral L. Principy programování v počítačové grafice / L. Ammeral. M.: Sol Sistem, 1992. 665 s.

2. Butakov E.A. Počítačové zpracování obrazu: monografie. / E.A. Butakov, V.I. Ostrovský, I.L. Fadeev. Moskva: Rádio a komunikace, 1987. 205 s.

3. Pratt W. Digitální zpracování obrazu / W. Pratt. M.: Mir, 1982. svazek 2. 716 s.

4. Tu J. Principy rozpoznávání vzorů / J. Tu, R. Gonzalez. M.: Mir, 1978. 764 s.

5. Dobře V.S. Rozpoznávání obrazu / V.S. Pokuta. M.: Nauka, 2003. 322 s.

6. Yanshin V. Zpracování obrazu v jazyce C pro IBM PC: Algoritmy a programy / V. Yanshin, G. Kalinin. M.: Mir, 1994. 358 s.

V nelineárních systémech detekce hran se pro kontrast před prahováním používají nelineární kombinace hodnot jasu pixelů. Ve většině metod jsou omezeny na zpracování pomocí okna velikosti nebo .

Roberts navrhl následující jednoduchou nelineární operaci dvourozměrné diskrétní diferenciace pro kontrast a zvýraznění kapek:

.(17.4.10)

Další operace prostorové diferenciace, vyžadující méně výpočtů, je definována vzorcem

Dá se to snadno ukázat

Označením, který ze čtyř obrazových prvků umístěných v blízkosti detekovaného bodu, který má nejvyšší hodnotu jasu, lze získat informaci o přibližné orientaci gradientu. Rýže. 17.4.8 znázorňuje činnost operátorů Roberts.


Rýže. 17.4.8. Příklady detekce pádu pomocí Robertsových detektorů.

Sobel navrhl použít nelineární operátor s oknem prvků pro kontrast. Na Obr. 17.4.9 ukazuje jím používaná označení okenních prvků. Pro srovnání kapek se vypočítá hodnota

, (17.4.13а)

Hodnoty - jas prvků okna zobrazených na obr. 17.4.9. Výsledky detekce kapek pomocí Sobelova operátoru jsou uvedeny na Obr. 17.4.10.

Další nelineární operátor se stejným oknem prvků pro kontrast hran navrhl Kirsch.

Rýže. 17.4.9. Označení prvků pro operátory výběru kapek s okénkem velikosti .

Tento operátor je definován následujícím výrazem:

, (17.4.14а)

, (17.4.14b)

Indexy pojmů jsou vypočítány modulo 8. Kirschův operátor v podstatě udává maximální hodnotu gradientu kurzu v určitém bodě obrázku bez zohlednění hodnoty . Příklady detekce hran pomocí Kirschova operátoru jsou na Obr. 17.4.11.

Wallis navrhl nelineární metodu detekce hran založenou na homomorfním zpracování obrazu. Podle této metody je bod na hraně, pokud hodnota logaritmu jasu v tomto bodě překročí průměrnou hodnotu logaritmů jasu čtyř nejbližších sousedních prvků o nějakou pevnou hodnotu. Prvek kontrastního obrázku je definován jako

nebo ekvivalentně,

. (17.4.15b)

Porovnání s horním a dolním prahem je ekvivalentní porovnání zlomku výrazu v závorkách (17.4.156) s upraveným prahem. Proto není nutné přesně vypočítat hodnoty logaritmu. Hlavní výhodou logaritmického detektoru hran je kromě snadného výpočtu i to, že není citlivý na multiplikativní změny úrovně jasu. Rýže. 17.4.12 znázorňuje činnost logaritmického detektoru hran.

Rýže. 17.4.10. Příklady detekce pádu pomocí operátoru Sobel.

Rýže. 17.4.11. Příklady detekce pádu pomocí Kirsch operátoru.

Logaritmickou metodu kontrastu, definovanou výrazem (17.4.15), lze považovat za lineární kontrastování pomocí Laplaceova operátoru (17.4.5a) obrazu, jehož úrovně prvků se rovnají logaritmům jasu. Jiné kontrastní metody mohou být také snadno reprezentovány jako sekvence nelineárních operací prvek po prvku s dalším lineárním kontrastem hran a prahováním.

Rýže. 17.4.12. Příklady výběru rozdílů pomocí logaritmického Laplaceova operátoru.

Rosenfeldem byla vyvinuta nelineární metoda pro zvýšení kontrastu a zvýraznění rozdílů, založená na výpočtu součinu množiny určitých veličin. Tato metoda používá operátor jednorozměrného průměrování řádek po řádku. Aktuální průměr

kde a je celé číslo vypočítané pro každý prvek obrázku. Tato operace se provádí pro až do nějaké požadované horní hranice. Poté se pro každý prvek obrázku vypočítá součin

Je jasné, že průměrovací faktory vyššího řádu indikují poměrně široké rozsahy lokalizace hran a vytvářejí určité potlačení šumu, zatímco průměrovací faktory nižšího řádu lokalizují hranu přesněji, ale masky jsou mnohem citlivější na šum. Lze přitom předpokládat, že součin prostředků různých řádů by měl zajistit spolehlivou detekci a lokalizaci skutečných kapek. Zdůvodnění tohoto předpokladu, které uvedl Rosenfeld, je následující.

Rýže. 17.4.13. Příklady obvyklého prahového omezení a omezení potlačení dominantního souseda pro případ Sobelova operátoru: a - konvenční prahové omezení; b - zvětšená oblast obrazu a obsahující hlaveň zbraně; d - stejná oblast s koeficientem potlačení rovným 1,5; d - stejná oblast s koeficientem potlačení rovným 1,2.

Velikost má tendenci detekovat a přesně určit klíčové rozdíly a zároveň potlačit šum. To lze vysvětlit tím, že produkt je velký pouze tehdy, jsou-li všechny faktory velké, a jak se vzdalujete od bodu poklesu, faktory s malými indexy nejprve klesají a poté faktory s velkými indexy.

Rosenfeld navíc navrhl postup nelineárního prahování k izolaci velkých zřetelných kapek obklopených menšími. Tento postup, který bude označován jako „potlačení dominantními sousedy“, se provádí skenováním pole kontrastních kapek malým okénkem. Hodnota ve středu okna je potlačena (nastavena na nulu), kdykoli není největší ze všech vzorků v tomto okně. Poté se provede obvyklé prahové omezení. Další variantou tohoto zpracování je, že potlačení je povoleno pouze v případě, že jsou v okně prvky, jejichž hodnoty jsou mnohem vyšší než hodnoty . Algoritmus potlačení dominantního souseda následovaný prahováním je docela účinný při detekci špiček v kombinaci s kontrastní metodou, která poskytuje určité vyhlazení šumu. Na Obr. 17.4.13 ukazuje příklady ilustrující činnost algoritmu potlačení dominantního souseda následovaného prahováním.

Jedním z hlavních cílů počítačového vidění při zpracování obrazu je interpretovat obsah v obraze. K tomu je nutné kvalitativně oddělit pozadí od objektů. Segmentace rozděluje obrázek na jednotlivé části nebo objekty. Odděluje objekt od pozadí, takže snímky lze snadno zpracovat a identifikovat jejich obsah. Výběr kontur v obraze je v tomto případě zásadním nástrojem pro kvalitní segmentaci obrazu. Tento článek se pokouší studovat výkon běžně používaných algoritmů detekce hran pro další segmentaci obrazu a také jejich srovnání pomocí softwarový nástroj MATLAB.

Úvod

Segmentace obrazu je obrovským krokem pro analýzu obrazu. Rozděluje obrázek na jednotlivé části nebo objekty. Míra podrobnosti oblastí, které mají být odděleny, závisí na řešeném problému. Například, když si objekty zájmu přestanou udržovat integritu, jsou rozděleny na menší součásti, proces segmentace by měl být zastaven. Algoritmy segmentace obrazu jsou nejčastěji založeny na diskontinuitě a podobnosti hodnot v obraze. Přístup nespojitosti jasu je založen na náhlých změnách hodnot intenzity, zatímco podobnost je založena na rozdělení obrazu do podobných oblastí podle sady předem definovaných kritérií. Volba algoritmu segmentace obrazu tedy přímo závisí na řešeném problému. Detekce hran je součástí segmentace obrazu. Efektivita řešení mnoha problémů zpracování obrazu a počítačového vidění proto závisí na kvalitě zvolených hranic. Jejich výběr v obraze lze klasifikovat jako segmentační algoritmy, které jsou založeny na zlomech jasu.

Proces detekce přesných nespojitostí v jasu v obraze se nazývá proces detekce hran. Slzy jsou náhlé změny ve skupině pixelů, které jsou hranicemi objektů. Klasický algoritmus detekce hran využívá konvoluci obrazu pomocí operátoru, který je založen na citlivosti na velké rozdíly v jasu v obraze a při průchodu homogenními oblastmi vrací nulu. Nyní je k dispozici velké množství algoritmů detekce hran, ale žádný z nich není univerzální. Každý z existujících algoritmů řeší svou vlastní třídu problémů (tj. kvalitativně identifikuje hranice určitého typu). Pro určení vhodného algoritmu detekce hran je nutné vzít v úvahu takové parametry, jako je orientace a struktura hrany a také přítomnost a typ šumu v obrazu. Geometrie operátora určuje charakteristický směr, ve kterém je nejcitlivější na hranice. Stávající operátory jsou navrženy tak, aby nacházely vertikální, horizontální nebo diagonální hranice. Výběr hranic objektů je obtížný úkol v případě velmi zašuměného obrazu, protože operátor je citlivý na rozdíly v jasu, a proto bude šum také považován za nějaký objekt na obrázku. Existují algoritmy, které vám umožňují do značné míry zbavit se šumu, ale naopak výrazně poškozují okraje obrazu a deformují je. A protože většina zpracovaných snímků obsahuje šum, jsou algoritmy redukce šumu velmi oblíbené, což však ovlivňuje kvalitu vybraných obrysů.

Také při zjišťování obrysů objektů dochází k problémům, jako je nalezení falešných obrysů, umístění obrysů, přeskakování skutečných obrysů, interference šumu, dlouhá doba výpočtu atd. Cílem je proto prozkoumat a porovnat množství zpracovaných obrázků a analyzovat kvalitu algoritmů v různých podmínkách.

Tento článek se pokouší zhodnotit nejpopulárnější algoritmy detekce hran pro segmentaci a také jejich implementaci v softwarové prostředí MATLAB. Druhá část představuje základní definice, které se používají v literatuře. Třetí - poskytuje teoretické a matematické a vysvětluje různé počítačové přístupy k detekci hran. Část čtvrtá uvádí srovnávací analýza různé algoritmy, doprovázené obrázky. Pátá část obsahuje přehled získaných výsledků a závěr.

Segmentace obrazu

Segmentace obrazu je proces rozdělení digitálního obrazu do mnoha oblastí nebo sad pixelů. Ve skutečnosti se jedná o rozdělení na různé objekty, které mají stejnou texturu nebo barvu. Výsledkem segmentace je soubor oblastí, které společně pokrývají celý obraz, a soubor kontur extrahovaných z obrazu. Všechny pixely ze stejné oblasti jsou si nějakým způsobem podobné, jako je barva, textura nebo intenzita. Přilehlé oblasti se od sebe liší v těchto stejných charakteristikách. Různé přístupy k nalezení hranic mezi oblastmi jsou založeny na nehomogenitách úrovní intenzity jasu. Volba metody segmentace obrazu tedy závisí na řešeném problému.

Plošné metody jsou založeny na spojitosti. Tyto algoritmy rozdělují celý obrázek do podoblastí v závislosti na určitých pravidlech, například všechny pixely v dané skupině musí mít určitou hodnotu šedé. Tyto algoritmy se spoléhají na běžné vzorce intenzity hodnot ve shlucích sousedních pixelů.

Prahová segmentace je nejjednodušším typem segmentace. Na jeho základě lze oblasti klasifikovat podle základního rozsahu hodnot, které závisí na intenzitě pixelů v obrázku. Thresholding převede vstupní obraz na binární.

Segmentační metody založené na plošné detekci nacházejí přímo prudké změny hodnot intenzity. Takové metody se nazývají hraniční metody. Detekce hran je základním problémem analýzy obrazu. Techniky detekce hran se běžně používají k nalezení nepravidelností v obrázku ve stupních šedi. Detekce nespojitostí v obrázku ve stupních šedi je nejdůležitějším přístupem při detekci hran.

Algoritmy detekce hranic

Hranice objektů na snímku velmi snižují množství dat, která je potřeba zpracovat, a zároveň zachovávají důležité informace o objektech na snímku, jejich tvaru, velikosti, počtu. Hlavní rys Technika detekce hran je schopnost extrahovat přesnou linii s dobrou orientací. V literatuře je popsáno mnoho algoritmů, které umožňují detekovat hranice objektů, ale nikde není popis, jak vyhodnocovat výsledky zpracování. Výsledky jsou hodnoceny čistě individuálně a závisí na oblasti jejich použití.

Detekce hran je základním nástrojem pro segmentaci obrazu. Takové algoritmy převádějí vstupní obraz na obraz s obrysy objektu, převážně v šedých tónech. Při zpracování obrazu, zejména v systémech počítačového vidění, se pomocí konturové extrakce zvažují důležité změny úrovně jasu v obraze, fyzických a geometrických parametrů objektu ve scéně. Toto je základní proces, který načrtává objekty, čímž získává určité znalosti o obrázku. Detekce hran je nejoblíbenějším přístupem pro detekci významných nehomogenit.

Okraj je místní změna jasu v obrázku. Mají tendenci běžet podél okraje mezi dvěma oblastmi. Pomocí okrajů můžete získat základní znalosti o obrázku. Jejich akviziční funkce využívají pokročilé algoritmy počítačového vidění a oblasti, jako je lékařské zobrazování, biometrie a podobně. Detekce hran je aktivní oblastí výzkumu, protože usnadňuje analýzu obrazu na vysoké úrovni. V polotónových obrazech jsou tři typy nespojitostí: bod, čára a ohraničení. Prostorové masky lze použít k detekci všech tří typů nehomogenit.

Technická literatura poskytuje a popisuje velké množství algoritmů pro extrakci obrysů a hranic. V tomto článku jsou zvažovány nejoblíbenější metody. Patří mezi ně: Roberts, Sobel, Prewitt, Kirsch, Robinsonův operátor, Cannyho algoritmus a LoG algoritmus.

Operátor Roberts

Robertsův hraniční výběrový operátor zavedl Lawrence Roberts v roce 1964. Provádí jednoduché a rychlé výpočty 2D prostorové dimenze na obrázku. Tato metoda zdůrazňuje oblasti s vysokou prostorovou frekvencí, které často odpovídají hranám. Obraz ve stupních šedi je přiváděn do vstupu operátora. Hodnota pixelu výstupního obrazu v každém bodě předpokládá určitou hodnotu prostorového gradientu vstupního obrazu ve stejném bodě.

Operátor Sobel

Operátor Sobel byl představen společností Sobel v roce 1970. Tato metoda detekce hran využívá derivační aproximaci. To umožňuje detekci hran tam, kde je gradient nejvyšší. Tato metoda detekuje počet přechodů v obraze, čímž zvýrazní oblasti s vysokou prostorovou frekvencí, které odpovídají okrajům. Obecně to vedlo k nalezení odhadované absolutní hodnoty gradientu v každém bodě vstupního obrázku. Tento operátor se skládá ze dvou matic o velikosti 3×3. Druhá matice se od první liší pouze tím, že je otočená o 90 stupňů. To je velmi podobné operátorovi Roberts.

Detekce hran touto metodou je výpočetně mnohem jednodušší než Sobelova metoda, ale vede k většímu šumu ve výsledném obrázku.

Prewittův operátor

Detekce hran tímto operátorem byla navržena Prewittem v roce 1970. Správným směrem v tomto algoritmu bylo odhadnout velikost a orientaci hranice. I když je detekce hranic velmi pracný úkol, dává tento přístup docela dobré výsledky. Tento algoritmus je založen na použití masek 3x3, které berou v úvahu 8 možných směrů, ale přímé směry poskytují nejlepší výsledky. Všechny masky konvoluce jsou vypočteny.

Kirsch operátor

Detekci hran touto metodou zavedl Kirsch v roce 1971. Algoritmus je založen na použití pouze jedné masky, která se otáčí v osmi hlavních směrech: sever, severozápad, západ, jihozápad, jih, jihovýchod, východ a severovýchod. Masky vypadají takto:

Hraniční hodnota je definována jako maximální hodnota nalezená pomocí masky. Směr určený maskou vytváří maximální hodnotu. Například maska ​​k 0 odpovídá svislému okraji a maska ​​k 5 odpovídá diagonálnímu. Můžete si také všimnout, že poslední čtyři masky jsou vlastně stejné jako ty první, jsou zrcadlovým obrazem kolem středové osy matice.

Robinsonův operátor

Robinsonova metoda představená v roce 1977 je podobná Kirschově metodě, ale je jednodušší na implementaci díky použití koeficientů 0, 1 a 2. Masky tohoto operátoru jsou symetrické kolem středové osy vyplněné nulami. Výsledek stačí získat ze zpracování prvních čtyř masek, zatímco zbytek lze získat obrácením prvních.

Maximální hodnota získaná po aplikaci všech čtyř masek na pixel a jeho okolí je považována za velikost gradientu a úhel gradientu lze aproximovat jako úhel čar nul v masce, které poskytují maximální odezvu.

Výběr kontur metodou Marr-Hildreth

Marr-Hildreth (1980) je metoda detekce hran v digitálních obrazech, která detekuje spojité křivky všude tam, kde jsou viditelné rychlé a náhlé změny jasu skupiny pixelů. Jedná se o poměrně jednoduchou metodu, funguje jako konvoluce obrazu s funkcí LoG nebo jako rychlá aproximace s DoG. Nuly ve zpracovaném výsledku odpovídají obrysům. Algoritmus hraničního detektoru se skládá z následujících kroků:

  • rozostření obrazu Gaussovou metodou;
  • aplikace Laplaciánského operátoru na rozmazaný obraz (často jsou první dva kroky spojeny do jednoho);
  • provedeme cyklus výpočtů a ve výsledku se podíváme na změnu znaménka. Pokud se znaménko změnilo ze záporného na kladné a hodnota změny hodnoty je větší než určitá daná prahová hodnota, definujte tento bod jako hranici;
  • Pro lepší výsledky lze krok s použitím Laplaciova operátoru provést pomocí hystereze implementované v algoritmu Canny.

Výběr kontury metodou LoG

Algoritmus detekce Laplacian Gaussových obrysů byl navržen v roce 1982. Tento algoritmus je druhou derivací definovanou jako:

Provádí se ve dvou krocích. V prvním kroku vyhladí obraz a následně vypočítá Laplaciánskou funkci, jejímž výsledkem je vytvoření dvojitých kontur. Definice vrstevnic je redukována na hledání nul v průsečíku dvojitých hranic. Počítačová implementace Laplaciánské funkce se obvykle provádí pomocí následující masky:

Laplacián obvykle používá umístění pixelu na tmavé nebo světlé straně hranice.

Hraniční detektor Canni

Detektor hran Canny je jedním z nejpopulárnějších algoritmů detekce hran. Poprvé jej navrhl John Canny ve své diplomové práci v roce 1983 a je stále lepší než mnoho algoritmů vyvinutých později. Důležitým krokem v tomto algoritmu je eliminace šumu na vrstevnicích, který může výrazně ovlivnit výsledek, přičemž je nutné co nejvíce zachovat hranice. To vyžaduje pečlivý výběr prahové hodnoty při zpracování touto metodou.

Algoritmus:

  • rozmazání původního obrázku f(r, c) pomocí Gaussovy funkce f^(r, c). f^(r,c)=f(r,c)*G(r,c,6);
  • hledat gradient. Hranice se kreslí tam, kde gradient nabývá maximální hodnoty;
  • potlačení ne-maxima. Jako hranice jsou označena pouze lokální maxima;
  • výsledné hranice jsou určeny potlačením všech hran, které nejsou spojeny s definovanými hranicemi.

Na rozdíl od Robertsových a Sobelových operátorů není Cannyho algoritmus příliš citlivý na obrazový šum.

Experimentální výsledky

V tato sekce jsou uvedeny výsledky dříve popsaných algoritmů pro detekci hranic objektů v obraze.

Všechny popsané algoritmy byly implementovány v softwarovém prostředí MATLAB R2009a a testovány na fotografii univerzity. Účelem experimentu je získat zpracovaný snímek s ideálně zvolenými obrysy. původní obrázek a výsledky jeho zpracování jsou na obrázku 1.

Obrázek 1 - Původní obrázek a výsledek práce různých algoritmů pro extrakci obrysu


Při analýze získaných výsledků byly odhaleny následující zákonitosti: operátoři Roberts, Sobel a Prewitt dávají velmi odlišné výsledky. Marr-Hildreth, LoG a Kanny našli obrysy objektu téměř identicky, Kirsch a Robinson dali stejný výsledek. Ale pozorováním získaných výsledků můžeme dojít k závěru, že Cannyho algoritmus funguje o řád lépe než ostatní.

závěry

Zpracování obrazu je rychle se rozvíjející obor v oboru počítačového vidění. Jeho růst je založen na vysokých úspěších v digitálním zpracování obrazu, vývoji počítačových procesorů a zařízení pro ukládání informací.

V tomto článku byl učiněn pokus prostudovat v praxi metody výběru obrysů objektů na základě zlomů jasu polotónového obrazu. Studie relativní výkonnosti každé z metod uvedených v tomto článku byla provedena pomocí softwarového nástroje MATLAB. Analýza výsledků zpracování obrazu ukázala, že metody jako Marr-Hildreth, LoG a Canny poskytují téměř stejné výsledky. Ale přesto lze při zpracování tohoto testovacího snímku pozorovat nejlepší výsledky po operaci Cannyho algoritmu, i když za jiných podmínek může být lepší jiná metoda.

I s přihlédnutím k tomu, že problematika detekce hran v obraze je v moderní technické literatuře dostatečně objasněna, zůstává stále poměrně pracným úkolem, neboť kvalitativní detekce hran vždy závisí na mnoha faktorech, které výsledek ovlivňují.

Seznam použité literatury

1. Canny J.F. (1983) Hledání hran a čar v obrazech, diplomová práce, MIT.AI Lab.TR-720.
2. Canny J.F. (1986) Výpočetní přístup k detekci hran, IEEE Transaction on Pattern Analysis and Machine Intelligence, 8. - S. 679-714.
3. Courtney P, Thacker N.A. (2001) Charakterizace výkonu v počítačovém vidění: Role statistiky v testování a designu, kapitola v: Systémy zobrazování a vidění: Teorie, hodnocení a aplikace, Jacques Blanc-Talon a Dan Popescu (eds.), NOVA Science Books.
4. Hanzi Wang (2004) Robustní statistika pro počítačové vidění: Přizpůsobení modelu, segmentace obrazu a analýza vizuálního pohybu, Ph.D práce, Monash University, Austrálie.
5. Huber P.J. (1981) Robustní statistika, Wiley New York.
6. Kirsch R. (1971) Počítačové určování struktury složek biologických obrazů, Počítače a biomedicínský výzkum, 4, s. 315–328.
7. Lakshmi S, Sankaranarayanan V. (2010) Studium technik detekce hran pro segmentační výpočetní přístupy, Computer Aided Soft Computing Techniques for Imaging and Biomedical Applications. - S. 35-41.
8. Lee K., Meer P. (1998) Robust Adaptive Segmentation of Range Images, IEEE Trans. Analýza vzorů a strojová inteligence, 20(2). - S. 200-205.
9. Marr D, Hildreth E. (1980) Teorie detekce hran, Proc. Royal Society of London, B, 207.—S. 187–217.
10. Marr D. (1982) Vision, Freeman Publishers.
11. Marr P., Doron Mintz. (1991) Robustní regrese pro počítačové vidění: Recenze, International Journal of Computer Vision, 6(1). - S. 59-70.
12. Orlando J. Tobias, Rui Seara (2002) Image Segmentation by Histogram Thresholding using Fuzzy Sets, IEEE Transactions on Image Processing, Vol.11, No.12. - S. 1457-1465.
13. Punam Thakare (2011) Studie segmentace obrazu a Edge Detection Techniques, International Journal on Computer Science and Engineering, Vol 3, No.2. - S. 899-904.
14. Rafael C., Gonzalez, Richard E. Woods, Steven L. Eddins (2004) Digital Image Processing Using MATLAB, Pearson Education Ptd. Ltd, Singapur.
15. Ramadevi Y. (2010) Segmentace a rozpoznávání objektů pomocí technik detekce hran, International Journal of Computer Science and Information Technology, Vol 2, No.6. - S. 153-161.
16. Roberts L. (1965) Machine Perception of 3-D Solids, Optical and Electro-optical Information Processing, MIT Press.
17. Robinson G. (1977) Detekce hran kompasovými gradientními maskami, Počítačová grafika a zpracování obrazu, 6. - S. 492-501.
18. Rousseeuw P. J., Leroy A. (1987) Robustní regrese a detekce odlehlých hodnot, John Wiley & Sons, New York.
19. Senthilkumaran N., Rajesh R. (2009) Edge Detection Techniques for Image Segmentation - A Survey of Soft Computing Approaches, International Journal of Recent Trends in Engineering, sv. 1, č. 2. - S. 250-254.
20. Sowmya B., Sheelarani B. (2009) Barevná segmentace obrazu pomocí měkkých výpočetních technik, International Journal of Soft Computing Applications, vydání 4. - S. 69-80.
21. Umesh Sehgal (2011) Techniky detekce hran v digitálním zpracování obrazu pomocí Fuzzy Logic, International Journal of Research in IT and Management, Vol.1, Issue 3. — S. 61-66.
22. Yu, X, Bui, T.D. & a kol. (1994) Robustní odhad pro segmentaci a rekonstrukci rozsahu obrazu, IEEE trans. Analýza vzorů a strojová inteligence, 16(5). - S. 530-538.