Lineární filtrace je lineární ve smyslu platnosti principu superpozice nad vstupy a výstupy filtru: f(x₁ + x₂) = f(x₁) + f(x₂)
Typicky 2D FIR filtry (okénko 3 × 3, 5 × 5 nebo 7 × 7).
Ve 2D mají tyto filtry podobu konvolučních filtrů. Konvoluční jádra se postupně aplikují na celý obraz a mění hodnoty pixelu podle jeho sousedů. Velikosti těchto jader jsou typicky 3 × 3, 5 × 5 nebo 7 × 7). Protože jde o 2D signál, hodnota výsledného pixelu y je suma součinu okolních pixelů x s konvolučním jádrem k:
<m>y_{(i,j)} = \sum{ii \in I, jj \in J}{}{x_{(i + ii, j + jj)} k_{(ii, jj)}}/{2^K}</m>
kde I = J = {−1, 0, 1}.
Velmi často se filtry implementují pomocí celých čísel. Pointa spočívá v tom, že se koeficienty násobí takovou konstantou a zaokrouhlí se na celá čísla tak, aby vzniklá chyba byla malá. Vhodné je, aby ona konstanta byla zároveň mocninou dvou tak, aby dělení výsledku bylo ve formě „posunu celých čísel doprava“. f(x) = IFFT(FFT(x) · F)
Rozostření | ||
---|---|---|
1 | 1 | 1 |
1 | 1 | 1 |
1 | 1 | 1 |
Doostření | ||
---|---|---|
0 | −1 | 0 |
−1 | 5 | −1 |
0 | −1 | 0 |
Detekce hran | ||
---|---|---|
0 | 1 | 0 |
1 | −4 | 1 |
0 | 1 | 0 |
Výsledek se pak ještě musí normalizovat (podělit sumou matice)!
Je možné použít širokou škálu konvolučn9ch jader pro dosažení mnoha efektů.
Kvalitnější filtry se dají realizovat pomocou filtrace ve frekvenční oblasti. Je třeba zaručit lokalitu filtru, aby obraz neobsahoval artefakty. Postup:
Edge detection, Sobel operatorl, Prewitt operator, Robinson
Je aplikace nelineární prostorové transformace na jeden obraz. Podle způsobu zadávání kontrolní struktury můžeme warping rozdělit na:
Zkreslení zobrazovacích zařízení – Mapování druhého, příp. vyššího řádu se používá ke kompenzaci prostorového zkreslení způsobeného zobrazovacím zařízením.
Morphing je převod jednoho obrazu na jiný, kdy nezadáváme pouze jeden obraz a jeho změnu, nýbrž obrazy dva. Algoritmus pak provádí sekvenci warpingů z interpolovaných řídících struktur a pomocí tzv. alfa míchání počítá výsledný obraz.