Úvod do digitálního zpracování obrazu

04 Lineární filtry

Cílem čtvrtého cvičení je seznámit se s konvolučním operátorem, včetně různých řešení okrajových podmínek při jeho použití, a se základními lineárními filtry.

Materiály na cvičení: 04.zip
Odevzdávárna pro běžné odevzdání: Cvičení 04
Odevzdávárna pro opravné odevzdání: Oprava 04
Soubory k odevzdání: My_Convolution.java, My_CyclicConvolution.java

Užitečné metody: floorMod()

Typické chyby:
  • Implementace doConvolution() překlápí konvoluční jádro kernel nebo vstupní matici matrix
Typické neobratnosti:
  • Procházení matice po sloupcích (tj. vnější cyklus přes x a vnitřní cyklus přes y) místo po řádcích
  • Zbytečné testování platnosti indexů před voláním metody getElement() při použití nulových okrajových podmínek
  • Periodické okrajové podmínky jsou implementovány pomocí cyklů či podmíněných výrazů místo modulární aritmetiky