2024. április 23., kedd

Gyorskeresés

Legjobb blogbejegyzés találatok

[ ÚJ BEJEGYZÉS ]   [ ÚJ CIKK ]

  • [SVS_6] Augusztus 21-22-23.

    Augusztus 21., még 110 nap Egy dolgot kifelejtettem a grafikus programból, az SRV távolságérzékelőjét. Elég katasztrofálisan mér, nem is hiányzik igazából, de azért beraktam, ha már a .dll-be...

    Elrood 14 éve 2

  • [SVS_15] Október 18-19.

    Október 18., még 52 nap A robot következőt fogja csinálni: megy, míg túl közel nem kerül egy tárgyhoz, aztán elfordul valamerre, aztán tovább halad. Megpróbálok egy elég nagy tesztpályát készíteni,...

    Elrood 14 éve 3

  • [SVS_3] Augusztus 10-11-12.

    Augusztus 10., még 121 nap Pár OpenCV link OpenCV C++ Ref. OpenCV Examples Part 1 OpenCV Examples Part 2 Introduction to programming with OpenCV CV Reference Manual Noah Kuntz - Tutorials Kiegészítés...

    Elrood 14 éve 2

  • [SVS_5] Augusztus 17-18-19-20.

    Augusztus 17., még 114 nap Feljegyzés Ma is sok guglizás volt . Első probléma az volt, hogy a log területen, ha már túl sok a sor, nem scrollozik az utolsó üzenethez -> megcsinálva. Másik a...

    Elrood 14 éve 1

  • [SVS_8] Augusztus 26-31.

    Kicsit egyszerűsítem a dolgokat, mert sajnos kezdődik hamarosan az iskola . Például csak a munkával telt napokat jegyzem fel és a címbe se írok le minden napot, csak az időszakot. Augusztus 27., még...

    Elrood 14 éve 0

  • [SVS_4] Augusztus 13-14-15-16.

    Augusztus 13., még 118 nap Feljegyzés A .dll-be rakás simán sikerült, azzal nem lesz baj a továbbiakban. Ezt és ezt a videót használtam fel. Sajnos eléggé tré a minőség, de kivehető, hogy mit kell...

    Elrood 14 éve 1

További legjobb találatok...

Találatok

  • Sztereó látás Surveyor SVS robottal

    Bemutatok egy valós idejű alkalmazást, amivel a Surveyor SVS robot sík terepen akadályokat tud kikerülni

    Tovább a teljes címlapos íráshoz...

    Tudástár 13 éve 57

  • [SVS_20] Február 5.

    Újra itt :). Folytatódik a 57 napja leadott szakdolgozat további fejlesztése.

    GAMF-t befejeztem, diplomára jeles kerül, irány a munkaerőpiac! (jaj :O)

    KÉPAF2011-re a cikk: [pdf]

    A távolság probléma meg lett oldva, ennek nagyon örültem (lásd előző poszt).

    Fejmozgatás

    A szakdolgozathoz 3 kérdést kaptam, ezek közül az egyik, hogy mi történne, ha nem lehetne mozgatni a robot fejét.

    Először egy kis ismétlés:

    Lényegében a bal képen található (x0,y0) pixelhez úgy keressük meg a párosítást, hogy elindulunk a jobb oldali kép (x0,y0) pixeléből, és végignézünk egy tartományt, hogy melyik pixel illik rá legjobban a bal oldalon található pixelre.
    Két fontos paraméter látható a képen:
    minDisparity: (x0,y0) ponthoz mennyire térjünk el vízszintesen (ezt a továbbiakban nem bátjuk)
    numberOfDisparities: hány pixel legyen az a tartomány, amin keresünk. (továbbiakban NofD)

    Folytatás...

    Elrood 13 éve 0

  • [SVS_19] Január 5.

    Ez a bejegyzés több nap eseményeit meséli el, csak már nem emlékszem, mit mikor csináltam.

    Ha még emlékeztek rá, a múltkori bejegyzésben azon agyaltam, hogy a tényleges és számított távolságok miért nincsenek még köszönőviszonyban sem.

    Három ötletem volt a hibára:
    1. kalibráció
    2. a disparity map -> 3D megvalósításnál valami nem stimmel az OpenCV-ben
    3. Vetítési hiba

    Berakom megint a számolt és tényleges távolságokat:

    Elkezdtem a próbálgatást, először a vetítési hiba jelenséget akart leellenőrizni magasabb felbontással. Eredetileg 320x240-es képeket használtam, most kipróbáltam 640x480-on. A sebesség se volt borzasztó lassú.
    Ehhez az elmozdulásokat számoló BM függvényt is újra be kellett állítani.

    Eredmény:

    Ha megfigyelitek, akkor látható, hogy szinte teljesen ugyanaz a 320x240-en mértekkel, így vetítési hiba kizárva.

    Próbálgattam a kalibrációt, mert rendes fizikai pontok 3D-s adatait kell megadni kalibrálás előtt (gondoltam én, de az egy másik függvény és másra való). Itt is elszenvedtem 1-2 napot, de nem sikerült használható új kalibrációt csinálnom.

    Folytatás...

    Elrood 13 éve 2

  • [SVS_18] December 10.

    December 10., még 0 nap

    Lejárt az idő, végre, szakdoga leadva, befogadva, most már csak azon kell izgulni, nehogy elkeverjék :B.
    Kemény 4 hónap volt, főleg leírni ezt az egészet úgy, hogy az előző két hétben betegeskedtem.

    A blogolás bevált, így emlékeztem a bakikra, amiket bele kell írni a dogába és a teszteredmények publikálása is hasznos volt, mert így megvoltak.
    Nem is beszélve néhány képernyőmentésről, amit egyszerűen nem találok a vinyón, de itt megvoltak.

    Tehát csak tanácsolni tudom, hogy aki diplomamunkát, szakdolgozatot ír, az blogoljon (nyilvánosan, vagy csak magának).

    A szakdolgozatból tervezek ide is egy rövidebb cikket, de azt majd február fele.

    Bár szakdolgozat leadva, a történetnek még nincs vége!

    A dolgozat egy része el lett küldve cikként a KÉPAF 2011 konferenciára, ami január 25-28. között lesz (persze pont ezen a héten van a záróvizsga...).
    A cikket befogadták, de javítani kell még rajta és pár kérdést meg kell felelni.

    Folytatás...

    Elrood 13 éve 1

  • [SVS_17] Október 21-24.

    Október 21., még 49 nap

    Hétfőn sikeresen félreértettem a konzulensemet. Nem azt mondta, hogy csináljam meg jobbra, majd balra a 3D-s ponthalmazt, majd abból szűrjek, hanem azt, hogy fogjam a két disparity mapot és abból szűrjek, majd a bal oldali képre csináljam meg a 3D-s ponthalmazt.

    A jobb kép 3D-s ponthalmazával az a baj, hogy gyakorlatilag nem nyertem semmit azzal, hogy ki lett számolva. Látszódik persze minden ami kell, de nincs kapcsolat a bal és a jobb halmaz Z értékei között (ami a távolság), nem lehet felhasználni szűrésre. Ha mégis kézzel belövöm a szűrést, akkor bármilyen változtatásnál újra ki kéne kézzel számolni mindent és újra belőni.

    Az a terv, hogy "megengedő" BM-t eresztek rá a jobb és a bal képre, majd a nem egyező disparity értékeket törlöm, így a fals adatok kiszóródnak.

    Először is tartok egy kis oktatást :K.

    Miért is csinálom ezt.

    Ugye mi is így látunk, hogy a két szemből érkező képekből az agyunk rakja össze a 3D-t. Ha közelebb rakjuk az ujjunk a szemünkhöz és pislogunk felváltva, akkor látjuk, hogy jobban "mozog" az ujjunk két pislantás között, míg ha távol van, kevésbé. Magyarán minél nagyobb az elmozdulás, annál közelebb van a tárgy.

    Folytatás...

    Elrood 14 éve 3

  • [SVS_16] Október 20.

    Október 20., még 50 nap

    Az 15. bejegyzésben írtam, hogy balra rosszul lát és ezzel kezdeni kell valamit. Közben rájöttem, hogy azzal nem lehet mit kezdeni, hiszen a kamerák rögzítettek és jobbra is ez a probléma, hogy van egy sáv, amire nincs illesztés.

    Több megoldási lehetőség kínálkozik:
    1. A robot akkor fordul, mikor még biztonságosan megállapítható, hogy mehet-e balra vagy jobbra, ha szemben akadály van.
    Hátrány: szerintem elég csúnyán néz ki, hogy a tárgy előtt nagyon messze már fordul, kicsi teremben meg körbe-körbe forgolódik.
    2. A robot használja a fejét, így közelebb engedhetem a tárgyhoz és mégis biztonságosabban megállapítható merre induljon.
    Hátrány: konzulensnek nem tetszik :).
    3. 1. pontban leírtak a javítása. Eddig csak a bal képre volt megállapítva a 3D-s koordináták, most meglesz állapítva a jobb oldalra is, így kicsit biztosabb lesz a 3D-s térkép megállapítása.
    Hátrány: ugyanazt mint az elsőnek, csak kicsit talán közelebb lehet engedni.

    3. pontbelit el is kezdtem tesztelni. BM-mel van egy baj, csak balra illeszt. Szerencsére nem volt túl nagy probléma megcsinálni az ellenkezőjét. Felcseréltem a két képet a függvényben, és kicsit alakítottam a beállításokon:

    BMState->minDisparity=-90;
    BMState->uniquenessRatio=60;

    Folytatás...

    Elrood 14 éve 0

  • [SVS_15] Október 18-19.

    Október 18., még 52 nap

    A robot következőt fogja csinálni: megy, míg túl közel nem kerül egy tárgyhoz, aztán elfordul valamerre, aztán tovább halad. Megpróbálok egy elég nagy tesztpályát készíteni, ami teli lesz szórva dobozokkal.

    Az adatok megfelelőek, megkaptam a zöld jelzést, most már pontos adatok alapján kidolgozhatom azt az algoritmust, ami a fenti cselekvést meg tudja csinálni.

    Persze ezzel vannak gondok, mert jelenleg a bal képre készül el a 3D-s ponthalmaz, ezért balra rosszabbul lát. A másik probléma, hogy a kamerák távol vannak, kicsi a látószög. E két nagyobb probléma miatt a robot kénytelen lesz látványosan hamarabb fordulni.
    Van két ötlet ennek a leküzdésére, majd később leírom.

    Csináltam egy képsorozatot, ahol centivel szépen lemértem minden távolságot, elkezdtem a kapott OpenCV eredményeket hozzárendelni a valósághoz.

    Ígértem egy olyan képet is, ahol nem merőlegesen, hanem élével szemben áll egy doboz a robottal, íme:

    Folytatás...

    Elrood 14 éve 3

  • [SVS_14] Október 16-17.

    Október 16., még 54 nap

    Feljegyzés, az 1. és 2. képsorozat 54:50-s fejpozíciónál készültek

    Ma csak egy fejlesztés történt, a párhuzamosan végrehajtható dolgokat külön threadbe raktam. A sebesség fontos :). Mérések holnap, mert lámpafénynél eléggé ugrálnak az eredmények, de így is látható gyorsulás. Threadbe rakáson kívül van még egy lehetőség a gyorsításra: kiszedem a megjelenítést. A rektifikált kép és a látható disparity kép előállítása is időbe telik.

    VS2008 is tud szép hibákat irkálni:

    Pedig a parancsot az msdn oldaláról néztem, és csak a kernel32.dll volt megadva függésnek.

    Debug módban nem ilyeneket kéne feldobnia...

    Október 17., még 53 nap

    Hibaüzenetek folytatása, most SmartSVN:

    Semmi változás előtte, program újraindításánál már jó

    Folytatás...

    Elrood 14 éve 0

  • [SVS_13] Október 9-15.

    Október 11., még 59 nap

    Csak kiderült, hogy valami nem stimmel.
    A teszthez használt képekkel van egy nagy baj: a sakktábla.
    Ugyanis a BM párokat keres a két kép között, a sakktábla mintái pedig ismétlődnek, így mindig a bal szélén találja meg (ha balról kezdi, nem néztem utána) a keresett pontot, hiába van az mondjuk a sakktábla jobb szélén. Pontosan ezért volt egy kupacban minden talált pont, aaaaaah.

    Első körben saját képek kellettek, amiket lementek a programmal, mert robottal rohangászva nem lehet mindig ugyanolyan képeket csinálni.

    Rectify és remap a menüből átköltözött ide, a képmentést egyelőre a normálhoz raktam.

    Gondoltam a kép neveket a rand() nevű csoda függvénnyel teszem különbözővé, hát nem eléggé random :). Később átjavítom időbélyegre.

    Második körben csináltam egy külön projektet, hogy a BM és egyéb teszteket elvégezzem, mert az eddigiek teli voltak szemetelve marhaságokkal.

    A terv az, hogy egyelőre megpróbálom a BM-ből kihozni azt, amit lehet. Ha sikerül, és az FPS 1 lesz vagy afelett, akkor meghagyjuk, és ha még van idő, akkor próbálom meg felgyorsítani ritka illesztéssel.

    Folytatás...

    Elrood 14 éve 3

  • [SVS_12] Szeptember 20.-Október 8.

    Szeptember 20., még 80 nap

    Ebben a postban kicsit benéztem, OpenCV a C-s és a C++-s rész is 2.1-s: [link].

    Következő lépés: A két képből 3D-s adatokat nyerni.

    Október 8., még 62 nap

    Visszatértem, elég sokat szenvedtem a 3D-s adatokkal eddig.
    Elvileg az OpenCV-ben van egy függvény, cvReprojectImageTo3D, amivel elvileg rögtön 3D-s ponthalmaz nyerhető a cvFindStereoCorrespondenceBM eredményéből. Itt egy bizonyíték.

    Sajnos nálam valami nem klappol. Most a különböző próbálgatásoknak a beállításai és eredményei lesznek felsorolva.

    Először is kellett két, ami mindig ugyanaz, és van sztereókalibráció, ezért az OpenCV példák közti képet használtam. A különböző verziók között csak a változásokat írom le.

    Folytatás...

    Elrood 14 éve 0

  • [SVS_11] Szeptember 6-19.

    Magyarázat:
    Kalibrálás: mikor az opencv meghatározza, hogyan kell javítania a képet
    Remap: a kalibrációs adatok alapján rektilineárissá (lásd előző poszt) teszi.

    Kitérő

    Az OpenCV-s példák között találtam:


    screenshot

    Jó sokáig futott, több percig. Nagyon érdekes, a keresett dobozos képen felvesz valami szisztéma alapján pontokat, majd a székes képen is ugyanúgy. Párosítja a pontokat, így egész pontosan meg tudja mondani, hogy a székes képen hol helyezkedik el a doboz.

    Szeptember 6., még 94 nap

    Ami tegnap nagyon zavart, hogy az ablakkezelőbe kellett raknom a kamera kalibrálást, az megoldódott, át tudtam rakni a képfeldolgozóba. Bár ez a megoldás se tetszik 100%-san, de sokkal jobb, mint az előző.

    Szeptember 7., még 93 nap

    A mátrixokat el kell menteni, és nem mindegy, hogy milyen néven, különben felülíródik. Win32 alatt is elérhető az "Open File Dialog" és a "Save File Dialog" beépített ablak.

    Folytatás...

    Elrood 14 éve 0

Hirdetés

Copyright © 2000-2024 PROHARDVER Informatikai Kft.