Projekty ze zpracování obrazu: PV162, podzim 2011 Tento dokument obsahuje seznam projektů, které lze řešit v kurzu PV162. V závorce je uveden vedoucí práce. Po konzultaci s vyučujícími lze dohodnout i vlastní téma. 1. Implementace Watershed pluginu do aplikace Acquiarium (Ondřej Daněk) Student implementuje grafické rozhraní pro Watershed algoritmus dostupný v i3d knihovně, tak aby bylo možné tento algoritmus používat při dávkovém zpracování (segmentaci) 2D a 3D obrazových dat v aplikaci Acquiarium. Předpokládá se znalost programování v C++, výhodou je znalost i3d knihovny a grafické knihovny wxWidgets. 2. Implementace algoritmů na odstranění nerovnoměrného osvětlení (Ondřej Daněk) do knihovny i3d a zapojení do aplikace Acquiarium - student implementuje vybrané metody (Bspline, homomorfní filtrování) pro korekci nerovnoměrného osvětlení, tak aby bylo možné tyto metody používat při dávkovém zpracování 2D a 3D obrazových dat v aplikaci Acquiarium. Předpokládá se znalost programování v C++, výhodou je znalost i3d knihovny a grafické knihovny wxWidgets. 3. Propojení i3dcore s OpenCV (Vladimír Ulman) Podle šikovnosti studenta je potřeba vyrobit buď funkce převádějící mezi reprezentacemi obrazu (třídy jazyka C++) použitých v obou knihovnách. Optimální potřeba je však vyrobit třídu odvozenou z reprezentací použitých v obou knihovnách -- nová třída půjde potom transparentně používat s funkcemi z obou knihoven. Implementace v C++. 4. Propojení i3dcore s ITK (Vladimír Ulman) Obdoba 3. 5. Zarovnání obrazů řezů tkání (Vladimír Ulman) Tkáň je v laboratoři rozřezáná na tenké plátky, každý plátek nějak obarven. Plátky jsou potom snímány mikroskopem za různých podmínek. Vzniknuvší obrazy jsou různě veliké, zobrazené plátky tkání jsou různě otočené, eventuelně převrácené. Cílem projektu je otestovat (naprogramovat) a případně obměnit nebo doladit (vedoucím) zadaný postup zpracování obrazů. Implementace libovolná. 6. 2D rotace velmi velkých obrazů (Vladimír Ulman) Na vstupu je zadaný velký (řádově 1GB veliký) 2D RGB obraz tkáně, dále střed rotace a úhel rotace. Na výstupu by měl být orotovaný vstupní obraz. Implementace musí řešit co možná nejefektivnější práci s pamětí a diskem, interpolace a vůbec fakt, že se do paměti nemusí vejít celý vstupní a výstupní obraz najednou. Implementace v C nebo C++. 7. Algoritmus vyrábějící sekvenci obrazů simulující roztržení/dělení buňky/jádra (Vladimír Ulman) Algoritmus krom samotné sekvence vyrobí také ještě tzv. flow field – pole vektorů zachycující vizuální změny mezi dvěmi posobějdoucímí obrazy. Implementace v C nebo C++. 8. Algoritmus vyrábějící sekvence obrazů simulující "rohlíkovatění" buňky/jádra (Vladimír Ulman) obdoba 7. 9. Rozšíření dema optického toku o Heegerovu metodu (Vladimír Ulman) Do stávajícího programu of_ofd doimplementovat rozhraní pro ovládání a spouštění výpočtů Heegerovy metody pro výpočet optického toku. Rozhraní bude obsahovat i vizualizaci filtrové banky, která je klíčovým parametrem této metody. 10. Rozšíření dema optického toku o podporu delších časových sekvencí (Vladimír Ulman) Do stávající programu of_ofd doimplementovat podporu zobrazení a počítání nad časovými sekvencemi (timelapse imaging) o libovolné délce. Současná implementace podporuje pouze dva časové snímky. 11. Houghova přímková transformace (Karel Štěpka) Nastudovat a do i3dlib naimplementovat článek C. Galambos, J. Kittler, J. Matas: Progressive Probabilistic Hough Transform for Line Detection (http://www.computer.org/portal/web/csdl/doi/10.1109/CVPR.1999.786993). Článek se zabývá úpravou Houghovy přímkové transformace tak, aby bylo možné provádět detekci čar efektivněji než použitím standardní verze. (Varianta algoritmu je součástí knihovny OpenCV.) 12. Srovnání algoritmů pro výpočet morfologické rekonstrukce (Pavel Karas) Morfologická rekonstrukce je nejen důležitou metodou v oblasti morfologického zpracování obrazu, ale na jejím základu stojí celá skupinu metod. Její efektivní implementace je tedy klíčová. V literatuře existuje několik algoritmů, z nichž každý má své výhody a nevýhody. Vhodným algoritmem je tzv. Downhill filter, jehož rychlost navíc téměř nezávisí na obsahu vstupních dat. Jeho nevýhodou je, že seřazuje body v obrazu podle intenzity, a jeho efektivita tedy závisí na použitém datovém typu. Dalšími algoritmy jsou sekvenční rekonstruční (SRA) a hybridní rekonstrukční algoritmus (HRA), které ale počítají rekonstrukci v iteracích, přičemž počet iterací závisí na tvaru a rozložení struktur, šumu v obraze apod. Výhodou SRA je, že je snadno paralelizovatelný. Cílem práce je naprogramovat do I3D knihovny Downhill filter, a to jak pro 8bitová, tak pro 16bitová data. Dále porovnat rychlost algoritmu s již naprogramovanými algoritmy (SRA a HRA) a analyzovat, jaký vliv mají různé charakteristiky obrazu (šum, datový typ, tvar struktur, velikost vstupních dat apod.) na rychlost jednotlivých algoritmů. Literatura: Luc Vincent, Morphological grayscale reconstruction in image analysis: applications and efficient algorithms, IEEE Transactions on Image Processing, vol.2, no.2, pp.176-201, Apr 1993, DOI: 10.1109/83.217222 Kevin Robinson, Paul F. Whelan, Efficient morphological reconstruction: a downhill filter, Pattern Recognition Letters, Volume 25, Issue 15, November 2004, pp. 1759-1767, ISSN 0167-8655. Možné rozšíření na BP: Navrhnout a naprogramovat efektivní paralelní algoritmus na GPU, který by zkombinoval výhody výše zmíněných metod. Pavel Karas, Efficient Computation of Morphological Greyscale Reconstruction, Sixth Doctoral Workshop on Mathematical and Engineering Methods in Computer Science (MEMICS'10) -- Selected Papers, vol. 16, 2011, pp. 54-61, ISBN 978-3-939897-22-4, ISSN 2190-6807, DOI: 10.4230/OASIcs.MEMICS.2010.54 13. A New Alogrithm for Image Segmentation via Watershed Transformation (David Svoboda) Student nastuduje a naprogramuje vybraný algoritmus segmentace, a to dle vedoucím dodaného článku. Předpokladem výběru tohoto projektu je minimálně pasivní znalost angličtiny kvůli pochopení obsahu článku a zkušenosti s programovaním. 14. Entropy-Based Localization of Textured Regions (David Svoboda) Student nastuduje a naprogramuje algoritmus rozpoznávání specifických oblastí v obraze. Předpokladem výběru tohoto projektu je minimálně pasivní znalost angličtiny kvůli pochopení obsahu článku a zkušenosti s programováním. 15. Interaktivní Houghova transformace (David Svoboda) Student nastuduje princip přímkové šedotonní Houghovy transformace. S pomocí nástrojů v Matlabu vytvoří uživatelsky přívětivou interaktivní aplikaci, která bude názorným výukovým nástrojem při prezentaci Houghovy transformace. Předpokladem výběru tohoto projektu je zkušenost s Matlabem a zkušenost s událostmi řízeným programováním. 16. Implementacia Local Binary patterns (LBP) do i3d (Tomáš Majtner) Cielom studenta bude nastudovat problematiku z poskytnutych odbornych clankov a naimplementovat tieto vlastnosti do kniznice i3d vyvijanej v ramci laboratoria CBIA. Literatura a demo ukazka budu upresnene na prvom cviceni. Literatura: T. Ojala, M. Pietikäinen, and D. Harwood, A Comparative Study of Texture Measures with Classification Based on Feature Distributions, Pattern Recognition, vol. 29, pp. 51-59, 1996. Timo Ojala, Matti Pietikäinen, Topi Mäenpää, "Multiresolution Gray-Scale and Rotation Invariant Texture Classification with Local Binary Patterns," IEEE Transactions on Pattern Analysis and Machine Intelligence, pp. 971-987, July, 2002 17. Značení komponent šedotóních obrázků (Pavel Matula) Cílem projektu je do i3dlib naimplementovat algoritmus na uspořádané značení komponent víceúrovňového obrazu. Podmínkou udělení zápočtu bude funkční implementace včetně dokumentace zdrojových kódů a dodržení pravidel GNU GPL. Předpokládá se znalost programování v jazyce C++. Literatura: R. Klette, A. Rosenfeld, Digital Geometry, Morgan Kaufmann, 2004 18. Rozpoznání digitálně rovných úseků (Pavel Matula) Cílem projektu je do i3dlib naimplementovat algoritmy na rozpoznání digitálních rovných úseků. Podmínkou udělení zápočtu bude funkční implementace včetně dokumentace zdrojových kódů a dodržení pravidel GNU GPL. Předpokládá se znalost programování v jazyce C++. Literatura: R. Klette, A. Rosenfeld, Digital Geometry, Morgan Kaufmann, 2004 19. Výpočet digitálního konvexního obalu (Pavel Matula) Cílem projektu je do i3dlib naimplementovat algoritmy na výpočet digitálního konvexního obalu binárního obrazu. Podmínkou udělení zápočtu bude funkční implementace včetně dokumentace zdrojových kódů a dodržení pravidel GNU GPL. Předpokládá se znalost programování v jazyce C++. Literatura: R. Klette, A. Rosenfeld, Digital Geometry, Morgan Kaufmann, 2004 P. Soille, Morphological Image Analysis, principles and Applications, Springer, 2004