3D Érzékelés és Mobilrobotika Kutatócsoport

Valósidejű képfeldolgozás

Jelentkezés gyakorlatra

A tárgy adatai

Tárgy címe: Valósidejű képfeldolgozás
Tárgy kódja: BMEVIIIM128
Tárgyfelelős: Dr. Loványi István
Előadók: Dr. Loványi István, Dr. Vajda Ferenc, Kertész Zsolt
Képzés: Villamosmérnök és Informatikus MSc

Ezen az oldalon Vajda Ferenc előadásaival kapcsolatos kiegészítő anyagok találhatók. A tárgy fő honlapja elérhető az alábbi webhelyen: http://edu.iit.bme.hu/courses/VIIIM128/.

A tárgy célkitűzése

A "valósidejű képfeldolgozás" fogalma nem egyszerűen a valósidejűség és a képfeldolgozás együttesét takarja. Természetesen a képfeldolgozási alkalmazások során is nagyon sok esetben elengedhetetlen a valósidejű reakció egy-egy eseményre, kevésbé egzakt ugyanakkor olyan szempontból, hogy a legtöbb feladat valamilyen szinten megoldható az elvárt időkorlátokon belül, de a megoldás minősége, megbízhatósága adott esetben igen alacsony is lehet. Cél tehát az egyes algoritmusok feldolgozási sebességének nagyságrendi növelése. Természetesen valamilyen szinten megoldást jelent a számítástechnikai eszközök sebességének növekedése is, új gondolkodásmóddal, új paradigmákkal azonban nagyságrendi változásokat érhetünk el. Az előadások célja, hogy megmutassa és bevezetést adjon abba, hogy milyen módon lehetséges a képfeldolgozás során új irányokban gondolkozni. Az alapvető irány a párhuzamosítás.

Az egyik legkézenfekvőbb megoldást a játékiparnak köszönhetően nagy iramban fejlődő grafikus rendszerek nyújtják. A számítógépes grafika és a képfeldolgozás számos ponton találkozik, igen sok esetben ugyanazokat az eljárásokat, primitíveket alkalmazzuk. Az előadások első részében ismertetésre kerül a HLSL árnyaló programozási nyelv, amely elsődlegesen grafikus célokra készült. A hallgatók megtanulnak egyszerű árnyalóprogramokat készíteni. Az előadásnak nem célja, hogy behatóbban megismerjék a nyelv lehetőségeit, sokkal inkább arról szól, hogy közelebb kerüljenek a folyamalapú adatfeldolgozáshoz, és kezükben legyen egy alap, amelyre könnyedén építhetnek a jövőben.

A grafikus processzorok gyártói felismerték, hogy eszközeik általános célra is jól használhatók, ezért speciális fejlesztő rendszereket nyújtanak a felhasználónak, amelyben az eszköz lehetőségeit kényelmesebben lehet kihasználni. A tárgy során bemutatásra kerül az NVIDIA grafikus processzoraihoz tervezett CUDA fejlesztő rendszer. Cél itt is az, hogy a hallgató elsajátítsa azt a gondolkodásmódot, amely segítségével el tud rugaszkodni az egy(kevés)processzoros rendszerekben való gondolkodásmódtól. A hallgatók a tárgy hallgatása után képesek egyszerű CUDA alkalmazások létrehozására.

A párhuzamosításnak egy egészen más módja a (programozható) hardver segítségével történő feldolgozás. Ennek során (szemben a folyamalapú adatfeldolgozással) sokkal inkább pixelszinten, csővezetékrendszerekben gondolkozunk. A tárgy során ismertetésre kerülnek a felhasználható lehetőségek, illetve néhány példán keresztül bemutatásra kerül, mit jelent ez a fajta párhuzamosítási megközelítés. Amennyiben valaki FPGA rendszerek segítségével szeretne képfeldolgozási műveleteket végezni, további tanulmányok végzése javasolt.

Az előadások témakörei

Az egyes tématerületekhez elérhetővé tettünk letölthető anyagokat (fóliák, forráskódok, referenciák), amelyek folyamatosan bővülnek. Az alábbiakban ezek tématerületenként szétválasztva érhetők el.