- Milyen billentyűzetet vegyek?
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- OLED TV topic
- Apple MacBook
- Hogy is néznek ki a gépeink?
- Sugárkövetés nélküli sugárkövetés felé menetel az új PlayStation
- 3D nyomtatás
- Nvidia GPU-k jövője - amit tudni vélünk
- Autós kamerák
- Leállítja a legjobb CPU-hűtőinek szállítását az AMD
-
PROHARDVER!
Új hozzászólás Aktív témák
-
Micsurin
nagyúr
válasz
dabadab #19012 üzenetére
Na azóta sikerült haladni is a szakdolgozattal végre hála a nyárnak és az időnek, a végén még februárban kint leszek...
Kód gatyába rázva a teljesítményt amit akartam megnyertem végre értelmesen fut viszont még mindig szórakoztat az a "villódzás" és ötletem sincs már miért maradt meg még mindig ami csak azért ciki mert ilyenkor eltűnik a képről a körívem és értelemszerűen null problémákba futok.
Pusztán elméleti síkon ha ezek a függvények adottak:
serial_Read(); -> Gondolom egyértelmű.perspective_transform(); -> Transzformációs mátrix alapján előállít egy kb felülnézeti képet.
reverse_perspective_transform(); -> ^ eredetit adja vissza a fentebbiből.
preprocess_frame(); -> Egy konyhakész képeket ad vissza, az alap képen elvégzi az elmosást a szürke árnyalatokat az élkiemelést (ezek mind OpenCV beépítettek nem nagy téma), meghívja a transzformálást majd arra a vonal felismerést és visszatranszformálást zárásképp. A madártávlatival és a visszatranszformálttal térünk vissza.
draw_circle(); -> Serialról olvasott érték alapján rajzol egy kört. Ha nincs értelmes érték akkor 0 vagy előző értelmes érték alapján jön vissza a kör. (első futásra 0 utána mindig az előző valid érték alapján) A kör mindig úgy van a sugár alapján pozícionálva, hogy ha 0 fok jönne vissza akkor kb egy egyenes jelenjen meg középen körív által. Ehhez az előző elmozdulást alapul véve mindig balra vagy jobbra van kicsit eltolva.
A main loop pedig ebben a sorrendben hív mindent:
Serialt meghívja ezután ráhívja a preprocess_frame-et majd itt a visszajött madártávlatira ráhívja a draw_circle a kapott Serial értékkel. Ekkor megjelenítjük mind a visszatranszformált képet a felismert vonalakkal mind a madártávlatit amire csak a kört van kirajzolva. Ez mind jó és szép végre elértem, hogy ~27-30FPS-el futunk 560p-n.Na most az a gond, hogy rendszeresen jön vissza 0 mikor nem kéne ezért az amúgy szép folyamatosan kirajzolt kör vissza visszaáll középre vagy épp nem kerül kirajzolásra (kivétel nincs, nem fut hibára csak ha épp a körívet akarok szín alapján kikeresni a képen nem lesz ott... akkor már jön a kivétel.) Mintha a draw_circle(); nem kerülne meghívásra...
Még mindig az a hibája tippre, hogy lusta voltam párhuzamosítani vagy a logika lenne rossz a sorrendet tekintve, hogy mi miből mit hív?
Próbáltam szokni a Pythonos párhuzamosítást de ez valami kegyetlen .NET után. Inkább reszeltem egy hónapot a kódot, hogy nyerjek mindenhol még némi futási időt csak ne kelljen szálazzak de gondolom nem fogom megúszni...
Azért sántít, hogy valami hívási logika hiszti lesz a háttérben és nem szálkezelési mert sem a teljesítmény nem esik be sem a vonal felismerés. Egyszerűen tényleg mintha lennének esetek mikor nem kerül meghívásra a draw_circle()-öm.
-
Micsurin
nagyúr
válasz
dabadab #19012 üzenetére
Egyértelműen egy termelő egy fogyasztó köszi elindulok holnap ezen!
Erősen idegállapotba hoz a szakdoga projekt jól észleled
melóban csak .NET és webprojektek + mobildev téma megy de szakirány szerint meg beágyazott rendszereken lennék köszönhetően annak, hogy szoftverre ami .NET lenne felvettek mindenki aki rommá csalta az online félévet és mivel én 1 év csúszásban voltam hála a mateknak well én minden fizikailag bent és azokkal versenyeztem akik meg mindent online otthon progból...
Röviden: kamerával veszem az utat pozícionálás után fogom a képet Canny éldetektálás és vonal kiemelés majd transzformálom ortografikusba, itt jönne a kör téma ami valójában egy ív lenne mert a jármű sebessége és dőlésszöge (motor, és utóbbi adat jön soros portról -> kis UnoR3 és GY521) alapján berajzolnám a várható ívet. Ha megvan az ívem és tudom a sáv széli vonalakat akkor tudok biztonságos sebességre / dőlésszögre (amit épp változtatni kell) visszajelzést adni. Könnyebbnek hangzik mint amilyen lesz... csak épp ketten kezdtük projektnek de beletört a bicska viszont a saját szakdogámról kiderült nem valósítható meg hw-es limitek miatt így a félkész TDK munkánkat berántottam szakdogának. Most meg mint malac a jégen ismét... remélem így tisztább.
A teljesítmény difit egyértelműen a termelőre várakozás adta azt nem tudom (remélem) összekapcsolódik-e ezzel az, hogy a körív ha statikus/a fogyasztóban előállított értékkel van előállítva akkor rendesen kirenderelhető de ha a termelőből várt adattal tenném akkor ki kimaradnak frame-ek és teljesen hektikus az eredmény.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- !AKCIÓ! Garanciás Klipsch R-120SW 30cm aktív mélysugárzó SubWoofer - 200W RMS / 400W Peak
- Eladó megbízható, szép Toshiba Satelite C850
- Csere - Beszámítás! Gamer PC : I5-14400F / 32GB DDR5 / RTX 4060 Ti / 1TB M.2 SSD
- Ryzen 5600, 32GB RAM, EVGA 3080 Gamer PC
- Asus RT-AC68U router eladó (3 darab - egyben vagy külön is)
- Telefon felvásárlás!! iPhone 13 Mini/iPhone 13/iPhone 13 Pro/iPhone 13 Pro Max
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7800X3D 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- Eladó karcmentes Huawei Nova 8i 6/128GB / 12 hó jótállással
- Samsung Galaxy Z Fold4 / 12/256GB / Kártyafüggetlen / 12Hó Garancia
- Újra Akcióban!!! Ducky One 2 Mini és SF billentyűzetek a bolti ár töredékéért! Számla+Gari
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest
Cég: FOTC
Város: Budapest