Hledání parametrického popisu objektů pomocí Houghovy transformace

Houghova transformace je metoda pro nalezení parametrického popisu objektů v obraze. Při implementaci je třeba znát analytický popis tvaru hledaného objektu. Proto je tato metoda používána pro detekci jednoduchých objektů v obraze jakou jsou přímky, kružnice, elipsy, atd. Houghova transformace je používána především pro segmentaci objektů, jejichž hranice lze popsat jednoduchými křivkami. Hlavní výhodou této metody je robustnost vůči nepravidelnostem a porušení hledané křivky.

Houghova transformace je využívána k nalezení parametrů matematického modelu hledaného objektu za předpokladu známých vstupních dat (pixelů). Princip této metody si ukážeme na příkladu detekce přímky v obraze. Přímku v rovině můžeme popsat několika způsoby. Jako model přímky použijeme rovnici


eqnhtln1 (1K)

kde r je délka normály od přímky k počátku souřadnic, theta je úhel mezi normálou a osou x, viz. obr. 1.

hough2 (1K)
Obr. 1 - Parametrický popis přímky.

V našem případě jsou vstupními daty souřadnice pixelů (např. přímková hranice objektu) a neznámými jsou parametry r, theta. Jestliže do předchozí rovnice dosadíme souřadnice nějakého bodu (x_i,y_i), pak množina všech možných řešení (r,theta) vytvoří v Houghově prostoru spojitou křivku. Jestliže si tímto způsobem promítneme do Houghova prostoru všechny body ležící na nějaké přímce p, pak uvidíme, že křivky odpovidající jednotlivým bodům (x_i,y_i) se protnou v jediném bodě (r_max, theta_max). Tato dvojice jsou ve skutečnosti hledané parametry přímky p.

Houghova transformace je implementována tak, že v prvním kroku je Houghův prostor diskretizován. Každý element tohoto prostoru, který nazýváme akumulační buňka je vynulován. Každý bod (x_i,y_i) je transformován do diskretizované křivky (r,theta), přičemž hodnota akumulačních buňek podél této křivky je inkrementována. Souřadnice maxima v akumulační rovině (r_max, theta_max) jsou parametry hledané přímky v obraze.

Stejný postup můžeme použít pro nalezení parametrů hranic objektů, které lze popsat analytickou rovnicí. Například v případě kružnice je tento geometrický objekt popsán rovnicí

eqnht2 (1K)

kde a, b a r jsou hledané parametry. V tomto případě vypočetní náročnost algoritmu vzroste, protože hledáma tři parametry a tudíž Houghův prostor má dimenzi 3.