Hledat:

Invia.cz Last minute Tunisko Dovolená v Chorvatsku Pojeďte do Egypta Bulharsko Vydělávejte peníze s INVIA.CZ
 

Předzpracování obrazu

Obrázky (fotografie), které vidíme jako výsledek po vyfocení na svém monitoru nebo fotografii, jsou obrazy fotografované scény na níž jsou aplikováné určité deformace díky nedokonalosti CCD čipů (ostatních snímacích zařízení), šumu prostředí, nežádoucího pootočení obrazu, či jeho prostorové deformace. To, jak nejlépe odstranit tyto nežádoucí efekty, souvisí s tím, jak dobře odhadneme operátor těchto degradací, označme ho z = D(u) \,, kde z je výsledný obraz po sejmutí a u je originální snímaný obraz(scéna).

Naším úkolem je tedy najít inverzní operaci, abychom zpětně z vyfocené fotky získali původní správný obraz u(x, y) \,, tedy

u = D^{-1}(z) \,


Obsah

[editovat] Formulace úlohy

Abychom mohli lépe rozeznat jednotlivé degradující vlivy, zapíšeme rovnici z = D(u) \, jako


z(T(x,y)) = (u * h)(x, y) + n(x, y) \,


kde T(x, y) \, je operátor pro geometrické zkreslení a deformace(natočení obrázku, změna meřítka, posunutí), (u * h)(x, y) \, značí konvoluci snímaného obrázku s impulzní odezvou zařízení, kterým snímáme(fotoaparát). Ideální snímací zařízení má impulzní funkci  \delta (x) \,, tedy jednotkový pulz, n(x, y) \,značí šum v obraze. Tato rovnice a její řešení se nazývá Radiometric Inverze Problem a řešení se rozlišuje na případy:

[editovat] Impulzní odezva je známa

Nejdříve se zabývejme řešením, kdy není přítomen na fotce šum ani geometrická deformace, tedy n(x, y) = 0 \, a T(x,y) ~ (x, y) \,. Řešíme tedy konvoluční rovnici z = u * h \,, která v diskrétní oblasti (obrázek je reprezentován jako matice intenzit) přechází v soustavu lineárních rovnic. Mějme výsledný obrázek z(x, y) \, o rozměrech N \times N \,, dále známe impulzní odezvu h(x, y) \, i její parametry (a, b, c)\, tedy např. gaussova tvaru:


\mathbf{h}=\begin{pmatrix}
b & a & b \\
a & c & a \\
b & a & b \end{pmatrix}


[editovat] Výpočet v obrázkové oblasti

Po provedení u * h \, konvoluce dostáváme soustavu lineárních rovnic:


\mathbb{Z} = \mathbb{H} \cdot \mathbb{U} \,


kde \mathbb{Z} a \mathbb{U} \, jsou vektory o rozměru N^2\,. Prvky obrázku v nich jsou seřazeny po řádcích:


\mathbf{\mathbb{Z} =}
\left(
\begin{array}{c}
z_{11}\\
z_{12}\\
\ldots\\
z_{1N}\\
z_{21}\\
z_{22}\\
\ldots\\
\ldots\\
z_{NN}\\
\end{array}
\right) ,

\mathbf{\mathbb{U} =}
\left(
\begin{array}{c}
u_{11}\\
u_{12}\\
\ldots\\
u_{1N}\\
u_{21}\\
u_{22}\\
\ldots\\
\ldots\\
u_{NN}\\
\end{array}
\right)


A matice \mathbf{\mathbb{H}} (soustava lin. rovnic složená z výpočtu konvoluce) má rozměry N^2 \times N^2 \, a následující tvar:


\mathbf{\mathbb{H}}=\begin{pmatrix}
D & B & 0 & 0 & 0 & \dots & 0 \\
B & D & B & 0 & 0 & \dots & 0  \\
0 & B & D & B & 0 & \dots & 0  \\
\vdots  &   & \ddots & \ddots & \ddots &  & \vdots  \\
\vdots  &  &  &  &  &  & \vdots \\
\vdots  &  &  &  & \ddots & \ddots & \ddots \\
0 & 0 & 0 & 0 & B & D & B \\
0 & 0 & 0 & 0 & 0 & B & D \\
\end{pmatrix}


, kde B a D jsou také matice rozměru N \times N \, a tvaru:


\mathbf{D}=\begin{pmatrix}
c & a & 0 & 0 & 0 & \dots & 0 \\
a & c & a & 0 & 0 & \dots & 0  \\
0 & a & c & a & 0 & \dots & 0  \\
\vdots  &   & \ddots & \ddots & \ddots &  & \vdots  \\
\vdots  &  &  &  &  &  & \vdots \\
0 & 0 & 0 & 0 & a & c & a \\
0 & 0 & 0 & 0 & 0 & a & c \\
\end{pmatrix}, 

\mathbf{B}=

\begin{pmatrix}
a & b & 0 & 0 & 0 & \dots & 0 \\
b & a & b & 0 & 0 & \dots & 0  \\
0 & b & a & b & 0 & \dots & 0  \\
\vdots  &   & \ddots & \ddots & \ddots &  & \vdots  \\
\vdots  &  &  &  &  &  & \vdots \\
0 & 0 & 0 & 0 & b & a & b \\
0 & 0 & 0 & 0 & 0 & b & a \\
\end{pmatrix}


Jak je vidět na první pohled, tak matice \mathbb{H} i jednotlivé její "bloky" (B, D) jsou tridiagonální. Tyto matice jsou řešitelné poměrně jednoduše a rychle. Výsledkem tedy bude vektor \mathbb{U}, což je požadovaný obrázek před konvolucí s h(x, y) \,.

[editovat] Výpočet ve frekvenční oblasti

Výpočet v obrázkové oblasti je poměrně složitý (díky konvoluci), tak využijeme konvolučního teorému, který převádí konvoluci na násobení, což je nepoměrně rychlejší operace. Násobením je zde myšleno násobení (nebo dělení) po prvcích! Jestliže matice nemají stejný rozměr, tak se menší matice periodicky prodlouží na rozměr větší matice. Aplikujeme tedy Fouriérovu transformaci na konvoluci u * h \, a máme tedy:


\mathcal{F}(z) = \mathcal{F}(u * h) = U \cdot H \,


Z toho si lehce vyjádříme původní obrázek u, resp. jeho fouriérův obraz U.

U = \frac{Z}{H} \,

Pro obrazovou oblast tedy platí:

\mathcal{F}^{-1}(\frac{Z}{H}) \,

Tato metoda je používanější a nazývá se Inverzní filtr ve frekvenční oblasti (anglicky: Inverse Filter in Fourier Domain).

[editovat] Obrázek obsahující šum

Graf veličin N, H a N/H

V minulých odstavcích jsme předpokládali nulový šum, tedy n(x, y) = 0 \, všude v obrázku. Nyní ho nezanedbáme a použijeme na rekonstrukci obrázku inverzní filtr. Vycházíme tedy z


z(x,y) = (u * h)(x, y) + n(x, y) \,


Provedeme fouriérovu transformaci a vyjádříme si obrázek u(x, y) \, před degradací.


Z = U \cdot H + N \,,
U = \frac{Z}{H} - \frac{N}{H} \,.

Z této rovnice je vidět, že jsme v předchozích metodách (pro případ zašuměného obrázku) zanedbali člen - \frac{N}{H} \,. Tento člen ale dosahuje obrovských hodnot, takže tyto metody dávají velmi špatné výsledky při použití u zašuměných obrázků. Jako impulzní odezvu mějme standardní gaussovu funkci (= h(x, y) \,). Její fouriérova transformace je opět gaussova funkce dělená jejím rozptylem (= H \,). Šum bereme libovolný, například takový, že jeho fourierův obraz je konstantní funkce (ale není podmínkou, bereme jen pro jednoduchost). A protože gaussovka jde pro velké x k nule, tak její převrácená hodnota jde k nekonečnu a to násobené nějakým nenulovým šumem je zase velmi velké číslo (viz obrázek vpravo). Z toho plyne, že je při výpočtu zanedbán velmi významný člen. To je také důvod, proč se inverzní filtr moc nepoužívá. Místo něho se dá aplikovat na zašuměný obrázek Wienerův filtr, který dává o moc lepší výsledky.

 
Tento článek je převzat z české wikipedie - otevřené encyklopedie, originální článek naleznete na adrese: „http://cs.wikipedia.org/wiki/P%C5%99edzpracov%C3%A1n%C3%AD_obrazu
Stránka byla naposledy upravena v Stránka byla naposledy editována 6. 9. 2008 v 12:45.
Veškerý text je dostupný za podmínek GNU Free Documentation License (Autorské právo pro podrobnosti).
Další služby: Portál | Katalog | Hledej | Zprávy | Počasí | Kurzy | Práce | Slovník | TV | Online hry | Java hry | SMS | Loga a melodie | Chat | Fórum | Kontakt