Kratki uvod u tematiku

Sve veća složenost ADAS (engl. Advanced Driver-Assistance System) algoritama zahtjeva sukcesivno testiranje i davanje potvrda o validnim i nedvosmislenim odlukama algoritama. Danas je ovo vrlo složen proces, uzimajući u obzir da svaki put kada se napravi određena promjena algoritma tu promjenu treba ispitati direktno na poligonu ili u realnim uvjetima u prometu. Gledajući cijeli sustav, s jedne strane figurira cijena poligona, a s druge rizici ispitivanja algoritama u realnim uvjetima. Iz ovih razloga je potekla motivacija za projektiranjem ispitnog sustava s kojim bi se sustavi za računalnu percepciju okoline vozila mogli testirati u zatvorenim prostorijama – laboratorijima.

AMV ADAS Grabber predstavlja više-kanalni video uređaj za simultano preuzimanje i reprodukciju video sadržaja. Uređaj ADAS Grabber omogućuje prikupljanje, a ujedno i reprodukciju video signala s devet kamera koje su prostorno raspoređene na vozilu. Također, podržava prijenos podataka (video signala) velikim brzinama putem PCIe sučelja kao i upravljanje samim uređajem.

Arhitektura ADAS Grabber uređaja: Uređaj se povezuje na ispitivanu jedinicu preko koaksijalnih FPD Link III kablova za prijem i reprodukciju video signala. Centralna procesorska jedinica je realizirana u hibridnoj programabilnoj mreži Zynq XC7Z030, koja osim FPGA dijela sadrži i dvojezgreni procesor ARM® Cortex™-A9.  Na računalu se nalazi programska podrška koja obuhvaća upravitelje radom uređaja (PCIe) kao i korisnička aplikacija za snimanje/puštanje video sadržaja.

Općenita priča opisana iznad zajednička je za svih 8 tema koje slijede. Posebno je definiran u nastavku zadatak svake od 8 tema.

 

Tema 1: Korisnička aplikacija uređaja za snimanje i reprodukciju video sadržaja za verifikaciju ADAS algoritama (User application for recording and playback of video content for verification of ADAS algorithms)

Radi bržeg testiranja i verifikacije algoritama za pomoć vozaču u vožnji, razvijaju se uređaji za snimanje i reprodukciju podataka koji simuliraju realno okruženje vozila (između ostalog i video sadržaj).  U okviru ovog zadatka potrebno je osmisliti i napraviti korisničku aplikaciju za AMV Grabber uređaj koja će se izvršavati na PC računalu. Ova aplikacija treba kroz korisničko sučelje omogućiti prikaz dostupnih kamera (prednja, zadnja, bočna, za praćenje vozača i sl.), odabir kamera za snimanje/reprodukciju, izbor putanje izvorišne/odredišne datoteke, pokretanje i zaustavljanje snimanja odnosno reprodukcije, kao i prikaz snimljenog sadržaja. Za realizaciju funkcionalnosti potrebno je koristiti komponente koje omogućavaju komunikaciju s AMV Grabber uređajem, kao i snimanje i reprodukciju sadržaja. Aplikaciju je potrebno realizirati u Windows radnom okruženju.

mentor: Doc.dr.sc. Mario Vranješ

sumentor: mag.ing.el. Matija Pul

 

Tema 2: Programska podrška za snimanje video sadržaja za verifikaciju ADAS algoritama na strani PC računala

ADAS algoritmi se sve više testiraju u laboratorijama s unaprijed snimljenim podacima (uključujući video podatke). U tu svrhu se razvijaju uređaji koji podatke snimaju s kamera i dostavljaju do PC računala koje ih skladišti na disk. U okviru ovog zadatka potrebno je napraviti programsku podršku za snimanje video sadržaja na strani PC računala koja komunicira i dobavlja sadržaj s namjenskog uređaja za snimanje. Potrebno je realizirati protokol za komunikaciju preko PCIe sabirnice između PC računala i uređaja za snimanje video sadržaja – AMV Grabber. Ova komponenta treba podržavati kontrolne poruke, slanje zahtjeva za video sadržajem kao i prihvat video sadržaja preko PCIe sabirnice i njegovo smještanje na disk u stvarnom vremenu za podesiv broj kamera (do 9 kamera). Rješenje je potrebno realizirati u Windows radnom okruženju, u programskom jeziku C.

mentor: Doc.dr.sc. Ratko Grbić

sumentor: mag.ing.el. Matija Pul

 

Tema 3: Programska podrška za reprodukciju video sadržaja za verifikaciju ADAS algoritama na strani PC računala

ADAS algoritmi se sve više testiraju u laboratorijama s unaprijed snimljenim podacima (uključujući video podatke). Ovi podaci se skladište na diskovima i u toku testiranja i verifikacije ADAS algoritama dostavljaju do ADAS platforme (na kojoj se izvršava algoritam) preko namjenskih uređaja za reprodukciju sadržaja. U okviru ovog zadatka potrebno je napraviti programsku podršku za reprodukciju video sadržaja na strani PC računala koje komunicira i dostavlja sadržaj namjenskom uređaju za reprodukciju. Potrebno je realizirati protokol za komunikaciju preko PCIe sabirnice između PC računala i uređaja za reprodukciju video sadržaja – AMV Grabber. Ova komponenta treba podržavati kontrolne poruke, čitanje video sadržaja s diska, kao i njegovo slanje preko PCIe sabirnice u stvarnom vremenu (30 slika u sekundi) za podesiv broj kamera (do 9 kamera). Rješenje je potrebno realizirati u Windows radnom okruženju, u programskom jeziku C.

mentor: Doc.dr.sc. Ratko Grbić

sumentor: mag.ing.el. Matija Pul

 

Tema 4: Razvoj upravljačkog programa PCIe sabirnicom na strani PC računala

ADAS algoritmi se sve više testiraju u laboratorijama s unaprijed snimljenim podacima (uključujući video podatke). U tu svrhu se razvijaju uređaji koji podatke snimaju s kamera, skladište na PC računalo i kasnije dostavljaju do ADAS platforme. Zahtjevi za ove uređaje su rad u realnom vremenu, tj. veliku količinu video podataka je potrebno prenijeti s PC računala na uređaj i obrnuto. Jedna od sabirnica preko koje je moguće prenijeti više video tokova je PCIe sabirnica. U okviru ovog zadatka potrebno je napraviti upravljački program (engl. driver) PCIe sabirnicom koji će omogućiti komunikaciju i prijenos podataka s uređajem za snimanje/verifikaciju u realnom vremenu. Rješenje je potrebno realizirati u Windows radnom okruženju, u programskom jeziku C.

mentor: Doc.dr.sc. Ratko Grbić

sumentor: mag.ing.el. Matija Pul

 

Tema 5: Snimanje i reprodukcija video signala uz podršku za više kamera zasnovano na FPGA

Testiranje i verifikacija algoritama za pomoć vozaču predstavlja složen proces i zahtijeva vrijeme i resurse ukoliko se izvodi u stvarnom okruženju. Kako bi se testiranje i verifikacija ubrzali, okruženje se snima (video i drugi podaci) i kasnije reproducira u laboratorijima. U tu svrhu razvijaju se uređaji za snimanje i reprodukciju video sadržaja. Ovaj zadatak je potrebno realizirati na FPGA dijelu jednog takvog uređaja, koji sadrži centralnu procesorsku jedinicu Zynq XC7Z030. U sklopu zadatka potrebno je realizirati podršku za dva tipa kamera (koje daju RAW i YUV format) koja će video signal s kamera slati putem PCIe sabirnice za potrebe snimanja, odnosno primati video signal putem PCIe i slati na video izlaze za potrebe reprodukcije. Također je potrebno osigurati rad u realnom vremenu (30 slika u sekundi) za do 9 kamera, koje pripadaju podržanim tipovima kamera. Rješenje je potrebno realizirati korištenjem VHDL programskog jezika.

mentor: Izv.prof.dr.sc. Marijan Herceg

sumentor: mag.ing.comp. Danijel Babić

 

Tema 6: Programska podrška za reprodukciju snimljenog video sadržaja na namjenskom uređaju

Testiranje i verifikacija algoritama za pomoć vozaču predstavlja složen proces i zahtijeva vrijeme i resurse ukoliko se izvodi u stvarnom okruženju. Kako bi se testiranje i verifikacija ubrzali, okruženje se snima (video i drugi podaci) i kasnije reproducira u laboratorijima. U tu svrhu razvijaju se uređaji za snimanje i reprodukciju video sadržaja. U okviru ovog zadatka potrebno je omogućiti podršku za reprodukciju prethodno snimljenog video sadržaja na jednom takvom uređaju. Rješenje je potrebno realizirati na centralnoj procesorskoj jedinici Zynq XC7Z030, na ARM jezgri, u programskom jeziku C, gdje prethodno snimljeni video sadržaj treba dobavljati s računala preko PCIe sabirnice, smještati u memoriju i slati k uređaju koji se testira preko video izlaza. Reprodukcija video sadržaja treba raditi u realnom vremenu (30 slika u sekundi) za do devet kamera.

mentor: Izv.prof.dr.sc. Marijan Herceg

sumentor: mag.ing.comp. Danijel Babić

 

Tema 7: Programska podrška za prikupljanje snimljenog video sadržaja i komunikaciju s računalom uređaja za snimanje podataka

Testiranje i verifikacija algoritama za pomoć vozaču predstavlja složen proces i u tu svrhu se razvijaju uređaji koji pomažu razvoj u laboratorijima sa što pouzdanijim podacima. U okviru ovog zadatka potrebno je realizirati programsku podršku koja sudjeluje u prikupljanju tih podataka (video sadržaja) na samom uređaju za snimanje. Programska podrška je zadužena za prebacivanje dobavljenog video sadržaja s kamera k računalu. Rješenje podrazumijeva realizaciju mehanizma komunikacije s računalom preko PCIe sabirnice uključujući, kako komunikaciju kontrolnih poruka, tako i video sadržaja. Rješenje je potrebno realizirati u realnom vremenu (30 slika u sekundi) za najviše devet kamera na ARM jezgri uređaja za snimanje koji sadrži centralnu procesorsku jedinicu Zynq XC7Z030.

mentor: Izv.prof.dr.sc. Marijan Herceg

sumentor: mag.ing.comp. Danijel Babić

 

Tema 8: Programska podrška za upravljanje kamerama uređaja za snimanje podataka

U okviru ovog zadatka potrebno je realizirati mehanizam upravljanja kamerama na uređaju koji vrši snimanje video sadržaja, koji se kasnije koristi za testiranje i verifikaciju algoritama za pomoć vozaču. Rješenje je potrebno realizirati u programskom jeziku C, u okviru ARM jezgre centralne procesorske jedinice Zynq XC7Z030, koja predstavlja sastavni dio uređaja za snimanje video sadržaja. Uređaj podržava priključivanje najviše devet kamera. Kontrolna jedinica podrazumijeva prepoznavanje broja priključenih kamera, kao i kontrolu odgovarajućih video DMA kontrolera koji sudjeluju u snimanju video sadržaja. Potrebno je podržati dvije vrste kamera (kamere koje daju RAW i YUV format na izlazu).

mentor: Izv.prof.dr.sc. Marijan Herceg

sumentor: mag.ing.comp. Danijel Babić