Domov / Detekcia hrán – funkcie pre meranie rozmerov
Kategórie
Výrobcovia
Voliteľný boxík #1
ĽUDIA, objednávajte!

Väčšina produktov, ktoré na týchto stránkach ponúkame, sú tzv. na objednávku. To však neznamená, že by išlo o nedostupné, alebo okrajové produkty. Opak je pravdou! Ide ale zvyčajne o drahé meracie prístroje alebo prístrojovú techniku, ktorú nie je možné držať skladom. Je však bežne dostupná na objednávku.

Teda  nebojte sa opýtať! Sme tu k dispozícii pre vás, na druhej strane týchto stránok, pripravení vám poskytnúť cenovú ponuku a zaistiť dodanie potrebného vybavenia.

DOPYTOVAŤ

 

Detekcia hrán – funkcie pre meranie rozmerov

Pri meraní vzdialeností a rozmerov systém strojového videnia v podstate vyhľadáva miesta s vysokým kontrastom svetlosti. Taká oblasť v obraze je označená ako hrana – miesto, ktoré sa líši jasom pixelu od jasu pixelov okolitých. Hrana vykazuje viac či menej strmý nárast, či pokles hodnoty obrazovej funkcie digitálneho obrazu. V mieste najväčšej strmosti zmeny dosahuje maximum prvá derivácia funkcie a druhá derivácia funkcie tu prechádza nulou. Strmosť zmeny funkcie udáva jej gradient ako vektor, určujúci smer najväčšieho rastu funkcie a strmosť tohto rastu.

detekce_hran

Priebeh prvej a druhej derivácie hrany v obrazovej funkcii

Softvérové prostriedky so schopnosťou detekcie hrán využívajú niekoľko princípov. Prvým môže byť využitie konvolučných jadier aproximujúcich prvú deriváciu obrazovej funkcie. Konvolučné jadrá môžu mať rad podôb, od jednoduchej matice 2x2, až po komplikované, avšak viac účinné napr. Sobelov, Robinsonov či Cannyho operátor. V tomto prípade ide o matice 3x3 prvky, ktoré viac či menej pomáhajú zvýrazniť hrany.

Použitie Sobelovho filtra pre detekciu hrán

hrany_puvodni hrany_Sobel
Pôvodná snímka Snímka po filtrácii

 

Častým problémom detektorov hrán je ich mierka — veľkosť konvolučného jadra by mala zodpovedať veľkosti detailov v obrázku. S mierkou, a teda veľkosťou konvolučného jadra, súvisí i citlivosť na šum. V prípade malých jadier sa ich odozva na šum zväčšuje.

Posledný krok v detekcii hrán je vždy prahovanie. Pomocou neho je potrebné rozhodnúť, ako silná odozva už znamená hranu. Príliš nízka hodnota označí za hrany i šum, príliš vysoká zas odstráni i niektoré dôležité hrany. Obvykle sa používa tzv. prahovanie s hysterézou, kedy sa nastavia dva prahy. Najskôr sa nájdu pixely výrazných hrán pomocou vysokého prahu a od tých sa pokračuje v označovaní takých pixelov, v ktorých je odozva hranového detektora väčšia ako nízky prah. Vďaka tomu sa obmedzí šum a hrany zostanú súvislé.

Detekcie hrán na základe prahovania gradientov

Jednoduchším a rýchlejším postupom môže byť jednoduchá aproximácia prvej derivácie počítajúcej diferencie každého pixelu od svojho okolia. Na základe prahovania získaných diferencií sú potom umiestňované nájdené hrany. Nevýhodou tohto detektora je opakované nachádzanie hrán na susedných pixeloch.

Morfologické detekcie hrán

Morfologické detekcie hrán pracujú na úplne iných princípoch, ktoré vychádzajú z morfologických transformácií binárnych obrazov. Nie je tu vyhodnocovaná strmosť zmeny obrazovej funkcie, ale vychádza sa "iba" z prahovania úrovne jasu. Pre niektoré prípady môže byť ale práve taký spôsob detekcie obrysov objektov najlepším riešením.

hrany_morfolog

Detekcie hrán pomocou morfologických funkcií

Môžeme detegovať vnútorné alebo vonkajšie hrany prahovaných objektov. Princíp je veľmi jednoduchý. Najskôr potrebujeme kvalitne prahovaný binárny obraz. Algoritmus prahovania nám v tomto prípade rozhodne o pozícii okraja objektov v gradientoch jasu na ich okrajoch. Potom v závislosti na tom, či chceme nájsť vnútorné alebo vonkajšie obrysy objektov urobíme eróziu alebo naopak dilatáciu obrazu. Nakoniec urobíme logické operácie XOR tohto upraveného obrazu s obrazom pôvodným a získame tak presne jednopixelové súvislé hranové obrysy prahovaných objektov.

obálka

Chcete byť informovaní o novinkách v našom sortimente?