Úkolem je implementovat nějakou kvalitnější metodu redukce šumu. Cílem je potlačit šum, ale zachovat co nejvíce informací, zejména ostré hrany.
Základem poslouží projekt 005denoise z repository grcis. Je připravena jednoduchá aplikace, ve které uživatel zadává vstupní obrázek a ihned se automaticky spouští metoda Filter.Recompute() přepočítávající vstup do nové podoby. Výstup je poté zobrazen ve formuláři. Tuto metodu musíte přeprogramovat, příslušný úsek kódu je v souboru Denoise.cs označen závorkami:
// {{ // }}
Pokud nechcete používat rychlou (ale nebezpečnější a méně přehlednou) variantu přístupu k datům obrázků, nemusíte, prostě použijte kód založený na první větvi (normálně zakomentované pomocí #if SLOW). Pozn: pomalá verze nemá úmyslně implementovaný paralelní výpočet, nedával žádné urychlení, naopak se to celé kvůli nutnosti zamykání zpomalilo..
Stačí umět odšumovat monochromatické (šedotónové = "gray") obrázky. Já to ani na jiných datech zkoušet nebudu!
N. Sladoje: Image analysis slides, Uppsala University, spring 2017,
on line
Kuwahara/Nagao filtering, Wikipedia,
on line
Lin Zhong et al.: Handling Noise in Single Image Deblurring using Directional Filters, Adobe Research,
on line
Vinh Hong et al.: Edge Preserving Filters on Color Images, LNCS 3039:39-40, 2004,
on line
A. Buades, B. Coll, J.M. Morel: "A review of image denoising methods, with a new one",
Multiscale Modeling and Simulation, Vol4 (2), pp: 490-530, 2006,
on line
A. Buades, B. Coll, J.M. Morel: "A non local algorithm for image denoising",
IEEE Computer Vision and Pattern Recognition 2005, Vol 2, pp: 60-65, 2005,
on line
Musíte poslat zdrojový soubor Denoise.cs.
V parametru 'name' procedury InitParams() vraťte své jméno.
Do procedury InitParams() můžete napsat sadu vhodných vstupních parametrů
včetně stručné obláčkové nápovědy k nim ('tooltip'].
Pokud jste dosáhli nějakého pěkného výsledku s konkrétním vstupním obrázkem,
můžete poslat i ten vstup. Ale pozor na velikost přílohy, radši ho někam vystavte
(Dropbox, GoogleDrive) a pošlete jen URL.
Do odevzdaného zdrojáku připište podrobnější komentář o původu vašeho algoritmu: zda jste ho sami vymysleli, zda jste se inspirovali literaturou, nějakým filtrem ze známého programu (PhotoShop, GiMP, ..), apod.
Odevzdat do: 2. 12. 2018
Základ: 8 bodů, bonus až 6 bodů.
Visual Studio projekt: 005denoise.
Modifikujte a odevzdejte soubor: Denoise.cs
Do funkce InitParams() napište své jméno!
Váš algoritmus by měl fungovat na libovolný vstupní obrázek, pro testování můžete použít pár obrázků přímo z repository, z adresáře data, například Nadar-SarahBernhard1.png nebo dále noiseGauss05.png až noiseGauss20.png.
Copyright (C) 2010-2018 J.Pelikán, last change: 2019-05-09 17:52:59 +0200 (Thu, 09 May 2019)