Dobókocka projekt Képfeldolgozás II..

Slides:



Advertisements
Hasonló előadás
Készítette: Kosztyán Zsolt Tibor
Advertisements

ÉRDEKES PONTOK KINYERÉSE DIGITÁLIS KÉPEKEN. BEVEZETÉS  ALAPPROBLÉMA  Jellemzőpontok detektálása mindkét képen  Kinyert pontok megfeleltetése  Megfeleltetések.
2005. október 7..
Nevezetes algoritmusok
Grafikus felhasználó felület Windows alatt
Készítette: Kun Béla.  Operációs rendszernek nevezzük a számítástechnikában a számítógépeknek azt az alapprogramját, mely közvetlenül kezeli a hardvert,
L ÁTHATÓSÁG MEGHATÁROZÁSA tavaszi félév.
C++ programozási nyelv Gyakorlat hét
F IGYELMI ALGORITMUSOKKAL VEZÉRELT HELYSZÍNANALÍZIS A BIONIKUS SZEMÜVEGBEN Persa György.
Számítógépes ismeretek 5. óra
Balogh Tamás, Koós Krisztián, Laczi Balázs, Tari Tamás 2013 Tavasz.
1 / / 13 Bevezető Forgalmi dugók okozta problémák: - Feszültség - Sietség - Szabálytalan közlekedés → baleseti források Megoldás: A jó megoldások.
Követelmények Szoftver- környezet SQL ismétlés ADATBÁZIS ALAPÚ RENDSZEREK.
MI 2003/9 - 1 Alakfelismerés alapproblémája: adott objektumok egy halmaza, továbbá osztályok (kategóriák) egy halmaza. Feladatunk: az objektumokat - valamilyen.
MI 2003/ A következőkben más megközelítés: nem közvetlenül az eloszlásokból indulunk ki, hanem a diszkriminancia függvényeket keressük. Legegyszerűbb:
Számítógépes algebrai problémák a geodéziában
Sűrűségfüggvény Parzen becslés Mintapontszám, szigma.
Alapok Néhány apróság, amit tisztázni kell. Első feladatok Szúrj be egy diát a legelső helyre! Legyen rajta valami főcímszerű szöveg!
Algoritmusok és adatszerkezetek 2 Újvári Zsuzsanna.
Gubicza József (GUJQAAI.ELTE)
Dijkstra algoritmus Baranyás Bence. Feladat Adott egy G=(V,E) élsúlyozott, irányított vagy irányítás nélküli, negatív élsúlyokat nem tartalmazó, véges.
Poliéderek térfogata 3. modul.
Mozgó Objektumok Detektálása és Követése Robotkamera Segítségével
Ipari képfeldolgozás projekt I. mérföldkő
Balogh Tamás, Koós Krisztián, Laczi Balázs, Tari Tamás 2013 Tavasz.
MI 2003/ Alakfelismerés - még egy megközelítés: még kevesebbet tudunk. Csak a mintánk adott, de címkék nélkül. Csoportosítás (klaszterezés, clustering).
Metal/plastic foam projekt
Intelligens ébresztő óra Számítógépes látás projekt 2011.
Prototípuskészítés Verilog nyelven Screen Saver Készítette: Mészáros Péter.
Készítette: Pető László
L ÁTHATÓSÁG MEGHATÁROZÁSA tavaszi félév.
Papp Róbert, Blaskovics Viktor, Hantos Norbert
Küszöbölés Szegmentálás I.
Valószínűségszámítás
Többmagos processzorok
KÖZMŰ INFORMATIKA NUMERIKUS MÓDSZEREK I.
Szélességi bejárás A szélességi bejárással egy irányított vagy irányítás nélküli véges gráfot járhatunk be a kezdőcsúcstól való távolságuk növekvő sorrendjében.
Hasonlóságelemzés COCO használatával a MY-X elemzőben
INNOCSEKK 156/2006 Hasonlóságelemzés-alapú vizsgálat a COCO módszer használatával Készítette: Péter Gábor
Online hasonlóságelemzések: Online hasonlóságelemzések: Tapasztalatok elítéltek képzésének engedélyezése kapcsán Pitlik László, SZIE Gödöllő (Forrás: My-X.hu.
STM nanolitográfia Készítette: VARGA Márton,
Miskolci Egyetem Informatikai Intézet Általános Informatikai Tanszé k Pance Miklós Adatstruktúrák, algoritmusok előadásvázlat Miskolc, 2004 Technikai közreműködő:
Készítette: Kosztyán Zsolt Tibor
Horváth Zsolt Schnádenberger Gábor Varjas Viktor
Implementált képfeldolgozó algoritmusok
Ipari képfeldolgozás projekt II. mérföldkő
Végrehajtási, nyomon követési fázis Készítette: Szentirmai Róbert (minden jog fenntartva)
Textúra elemzés szupport vektor géppel
Készítette: Gergó Márton Konzulens: Engedy István 2009/2010 tavasz.
3.2. A program készítés folyamata Adatelemzés, adatszerkezetek felépítése Típus, változó, konstans fogalma, szerepe, deklarációja.
Problémás függvények : lokális optimalizáció nem használható Globális optimalizáció.
Térképészet és térinformatika
Részecskenyom analízis és osztályozás Pálfalvi József MSc, Intelligens Rendszerek, Önálló labor 1.
Tömeggyarapodás hasonlóságelemzése Melyik tápanyag összeállítás lenne a legmegfelelőbb sertések számára, minél nagyobb tömeggyarapodás elérése céljából.
CUDA C/C++ programozás Szál struktúra A segédanyag készítése a TÁMOP A/ Nemzeti Kiválóság Program című kiemelt projekt keretében.
Algoritmizálás, adatmodellezés tanítása 8. előadás.
Single View Metrology Juhász Réka Pintér Csaba Papp László Soponyai György.
Menetrend optimalizálása genetikus algoritmussal
Webes MES keretrendszer fejlesztése Kiss Miklós Dániel G-5S8 Tervezésvezető: Dr. Hornyák Olivér.
Készítette: Derecskei Nikolett
Készítette: Mátyás István agrár mérnöktanár szakos hallgató,
Kutatási beszámoló 2002/2003 I. félév Iváncsy Renáta.
Máté: Orvosi képfeldolgozás12. előadás1 Három dimenziós adatok megjelenítése Metszeti képek transzverzális, frontális, szagittális, ferde. Felület síkba.
PhD beszámoló 2003/2004 I. félév Készítette: Iváncsy Renáta Konzulens: Dr. Vajk István.
Quick-Search algoritmus. Bevezet ő Az eljárás működése során két esetet különböztetünk meg: A szöveg minta utáni első karaktere nem fordul elő a mintában.
A Mozilla magyar nyelvű szerkesztőjének használata
OpenCV CV = Computer Vision
Fejmozgás alapú gesztusok felismerése Bertók Kornél, Fazekas Attila Debreceni Egyetem, Informatikai Kar Debreceni Képfeldolgozó Csoport KÉPAF 2013, Bakonybél.
Árnyékszerkesztés alapjai
Gazdaságinformatika MSc labor
Előadás másolata:

Dobókocka projekt Képfeldolgozás II.

A csapat Bátori Csaba Borbola Péter Kovács Norbert

Feladatkiírás A feladat szerint két dobókockával kell dobni, majd készíteni egy olyan képet, amin mindkét dobókocka 3 lapja látszik, végül a két felső lapon látható pontokat összeadni

Kezdeti problémák Legelső probléma maga a kocka ¯ Kezdetben úgy véltük, hogy a kerekített csúcsú kocka nem megfelelő /kiderült, hogy más a gond/ üzletekben csak ilyen kapható ¯ saját dobókocka készítése

Kezdeti problémák Következő nehézség a szegmentálás Ezt megfelelő világítással küszöböltük ki A kockák felső lapja kellőképpen megvilágítva jó eredményt hozott Fontos a képalkotás megfelelő szöge Mind a látható felszínek Mind a későbbi feladatok miatt

Kezdeti problémák Ami menetközben került felszínre: Az órán bemutatott K-means klaszterezés „cityblock”-ot használunk, de néha jobb a „sqEuclidean” Mindössze a tapasztalat döntött

A program felépítése Szürkeárnyalatossá alakítás Otsu algoritmus végrehajtása Mediánszűrés Objektumszám vizsgálat (>2?) Ha szükséges, eróziót hajtunk végre Egy újabb objektumszám vizsgálat (==2?) Ha az objektumok száma kettő, akkor megvizsgáljuk, hogy a második komponens kocka felszíne-e 7. a, Felszínek kiválasztása, majd a pöttyök megszámolása 7. b, Egyébként klaszterezés, végül az egyes klasszterekbe tartozó pöttyök összeadása

Az egyes lépések részletezése

Szürkeárnyalatossá alakítás Egy beépített Matlab függvényt használtunk: I a beolvasott kép J = rgb2gray(I);

Otsu-algoritmus A bemeneti J kép szürkeárnyalatos A normalizált hisztogram minden x szürkeértékhez megadja az előfordulási gyakoriságát(valószínűségét): px Az algoritmus lényege: keressük meg azt a T küszöbszámot, amely maximalizálja az objektumháttér közötti varianciát.

Otsu-algoritmus A globális küszöbérték meghatározása: level = graythresh(J); A küszöbérték alapján a bináris kép előállítása: BW = im2bw(J,level);

A mediánszűrés Ez szintén beépített Matlab függvény: BWMED = medfilt2(BW,[25 20]); Ahol szűrő mérete 25x20 maszk, mert ekkora méret már kellően zaj mentesíti a képet.

Az objektumszám vizsgálata Megnézzük, hogy az objektumok száma nagyobb-e mint 2 (bwlabel()) Ha igen, akkor eróziót hajtunk végre: st = strel('disk',6); //6-os méretű ‘disk’ szerkesztőelem BWR = imerode(BWMED,st); Ha pontosan kettő, akkor megnézzük, hogy a második kockafelszín-e (pöttyök keresése az objektumon)

Első eset Amikor mindkét objektum kockafelszín A felszínek különválasztása: [r,c] = find(bwlabel(BWR)==1); CUBE1 = bwselect(BWR,c,r) Inverzképzés (pöttyszámolás miatt): CUBE1INV = ~CUBE1; Pöttyszámolás: [labeled,numObjects] = bwlabel(CUBE1INV); cube1Sum = numObjects-1; (-1 a háttér miatt)

Második eset A két kocka felszíne összefolyik Inverzképzés (pöttyszámolás miatt) Pöttyök koordinátájának tárolása (medián x,y) Ezeken K-means eljárás végrehajtása kMeansResult = kmeans(comps,2,'Distance','cityblock'); Klasszterek alapján az eredeti képen színezünk is

Ennyit az elméleti háttérről Magának a programnak a bemutatása

A felhasználói felület

A felhasználói felület Fejléc A betöltött kép Tallózás Tallózás után Futtatás Az egyes eredményképek Végül az összeg

Működés közben

Az összesített képek Szürkeárnyalatos Otsu Mediánszűrés Inverzek Két dobókocka felszín

Lehetséges esetek A kockák egymáshoz való viszonya különböző lehet Különálló felszínek Összeérő felszínek

Első eset Különálló felszínek esetén erózió legtöbbször nem szükséges A mediánszűrés szépen letisztítja az Otsu-algoritmus eredményét Erre példát korábban láthattunk

Második eset Amikor a kockák felszíne összeér szükség lehet erózióra De vannak esetek, amikor az sem szükséges

Összeér, de nem kell erózió Mediánszűrés letisztította Zaj, az Otsu után

Összeér és kell erózió Zaj, amiből maradt a mediánszűrés után is

Összeér, kell erózió, nincs zaj Összeérő felszínek, de itt az erózió leszedte a zajt

Volt…., Nincs… volt nincs

Ahogy semmi, ez sem tökéletes Nem megfelelő elhelyezkedés (szög) Kis pöttyöt a mediánszűrés leszedi

Ahogy semmi, ez sem tökéletes Van, amikor a „zaj is pötty” 

Ahogy semmi, ez sem tökéletes Ha nem megfelelő a megvilágítás, nyílván az Otsu-algoritmus sem működik megfelelően, ahogy azt korábban megemlítettük. Valamint a K-means esetében a távolságszámítás néha nem megfelelő, vagyis a ‘cityblock’, ilyenkor a 'sqEuclidean ' jól működne. Gyakorlatban a ‘cityblock’ több jó eredményt produkál.

Összefoglalás Kiindulási ötletként a felülről való megvilágítást találtuk ki, a szegmentálás megkönnyítésre Ehhez Otsu algoritmus megtalálása hozta meg a sikert Ezek után már csak a dobókockák elhelyezkedése (összeér, nem ér össze) okozta a nehézséget Mediánszűrés, erózió, objektum címkézés, kiválasztás, klaszterezés Továbbá készítettünk egy grafikus felhasználó felületet, megkönnyítve ezzel a program kezelését Vannak esetek, amikor egy gyári dobókockára is működik

A gyári kocka esetében

Részletek A zaj itt is szépen eltűnt A klaszterezés is jól működik

Köszönöm a figyelmet!