Vyberte si dve úlohy – za ich vyriešenie máte o stupeň lepšiu známku (za predpokladu úspešného zvládnutia skúšky).
A1: Vanishing point (LINK na github classroom)
Implementujte algoritmus popísaný v článku (Ebrahimpour, R., Rasoolinezhad, R., Hajiabolhasani, Z. and Ebrahimi, M., 2012. Vanishing point detection in corridors: using Hough transform and K-means clustering. IET computer vision, 6(1), pp.40-51.).
Článok na stiahnutie: tu alebo tu (ak by bol problém so stiahnutím, napíšte mi, prepošlem pdf).
Konkrétne kroky:
- Nájdite si obrázok chodby. Môžete prispôsobiť rozlíšenie. Môžete použiť aj vlastnú fotku nejakej chodby. Postačuje jeden obrázok, ideálne vyskúšať aspoň na 2-3 obrázkoch.
- Obrázok konvertujte na šedotónový
- Ekvalizujte histogram
- Aplikujte 45° masku (je v článku – ide o maticu 3×3 kde na diagonále sú 2 a na ostatných miestach -1), [[-1,-1,2],[-1,2,-1],[2,-1,-1]]
- Aplikujte Cannyho detektor na detekciu hrán
- Použite Hough transformáciu na získanie čiar. Odporúčam HoughLinesP, kde je výstupom zoznam čiar, ktoré sú tvorené štvoricou čísel (x a y súradnice začiatočného a koncového bodu)
- Aplikujte K-means (k=4) na množine bodov – koncových bodov detegovaných čiar. Výsledné centroidy pre klastre vykreslite do pôvodného obrázka.
- Aplikujte K-means (k=1) na množine 4 centroidov. Zakreslite výsledný centroid – v ideálnom prípade by to mal byť vanishing point. Vo výslednom obrázku nech sú iba pozície centroidov. Avšak vykreslite osobitne aj čiastkové riešenia vrátane výstupu po detekcii čiar.
Repozitár je v githube prázdny. Vstupné obrázky si hľadáte samostatne.
A2: RTG detekcia zlomeniny (LINK na github classroom)
Zľahka si prečítajte nasledovný vedecký príspevok:
Basha, Cmak Zeelan, et al. „Enhanced computer aided bone fracture detection employing X-ray images by Harris Corner technique.“ 2020 Fourth International Conference on Computing Methodologies and Communication (ICCMC). IEEE, 2020.
Článok na stiahnutie tu: PDF (ak by bol problém sa k nemu dostať, viem preposlať).
Implementujte popísaný postup:
- Preprocessing s použitím Gaussian filtering. Rozostrenie obrázka.
- Segmentácia pomocou Cannyho hranového detektora.
- Feature extraction s použitím Harris rohového detektora.
- Klasifikácia, či je na obrázku zlomenina (toto nemusí byť implementované v kóde – stačí slovný popis).
V Github classroom nájdete nejaké vstupné obrázky. Vybral som 3, na ktorých je dobre vidieť zlomenina. Plus dve bez zlomeniny. Môžete si doplniť vlastné vstupné obrázky. Dataset FracAtlas je dostupný na stiahnutie (322MB). Snímky so zlomeninou sú v osobitnom priečinku.
Moje postrehy po prečítaní článku:
- Matematiku za tým nemusíte čítať, je to vysvetlenie tých metód vo všeobecnosti. Nie ich prístup.
- Pri všetkých použitých metódach chýbajú detaily – napr. thresholdy na Cannyho detektor. To je úloha pre vás.
- Nie je mi úplne jasné ako robili tú samotnú klasifikáciu a keď som si pozeral podobné články, tak mám pochybnosť o výsledku tohto prístupu.
Skúste sa pozrieť na výstup detekcie rohov pri zlomeninách aj pri zdravých kostiach. K samotnému kódu priložte aj slovný popis ako by ste robili rozhodnutie (klasifikáciu).
A3: Gitara (LINK na github classroom)
Pozrite si článok.
Duke, B. and Salgian, A., 2019, October. Guitar tablature generation using computer vision. In International Symposium on Visual Computing (pp. 247-257). Cham: Springer International Publishing.
Článok nie je ľahko dostupný online. Dostanete ho emailom, prípadne si ho vypýtajte.
Obrázky nie sú k dispozícii. Nájdite si vlastné. Odporúčam zobrať screenshoty z nejakých youtube videí. Pozrite si v článku časť 2.2 Recording Preparation – aby ste videli, aké obrázky hľadáme. Môžete to samozrejme vyskúšať aj pre nevyhovujúce obrázky.
Implementujte:
- detekciu strún – Canny edge detektor + Hough lines
- detekciu prstov
- nejakú vec navyše – Napríklad použitie inej metódy na detekciu strún. Priradenie čísla struny k detegovaným prstom. Prípadne nejaké ďalšie vylepšenie pre nie ideálnu scénu.