A DIGITÁLIS KÉPFELDOLGOZÁS OKTATÁSÁNAK EREDMÉNYEI ÉS NÉHÁNY AKTUÁLIS KÉRDÉSE A DEBRECENI EGYETEMEN CURRENT QUESTIONS AND RESULTS ABOUT THE EDUCATION OF DIGITAL IMAGE PROCESSING AT THE UNIVERSITY OF DEBRECEN Fazekas Attila, fattila@math.klte.hu Fazekas Gábor, fazekasg@math.klte.hu Hajdu András, hajdua@math.klte.hu Kormos János, kormos@math.klte.hu Debreceni Egyetem Abstract This paper gives a short overview on the teaching of digital picture processing as a special facultative part of the major called informatics at the University of Debrecen. After some remarks on the historical background and motivation of the introduction of such facultation we briefly summarise the tematics of different subjects involved and list the textbooks and softwares used. Some of our experiences are discussed as well. Összefoglaló Ezen cikkben egy rövid áttekintést kívánunk adni a Debreceni Egyetemen folyó digitális képfeldolgozás oktatásával kapcsolatos tapasztalatainkról. A történeti áttekintés után a terjedelmi korlátok által megengedett részletességgel ismertetjük az egyes tárgyak tematikáját, az oktatás során használatos oktatási segédleteket, beleértve a szoftvereket is. Röviden ismertetjük a tárgy oktatása során szerzett tapasztalatainkat is.
A DIGITÁLIS KÉPFELDOLGOZÁS OKTATÁSÁNAK EREDMÉNYEI ÉS NÉHÁNY AKTUÁLIS KÉRDÉSE A DEBRECENI EGYETEMEN Fazekas Attila, fattila@math.klte.hu Fazekas Gábor, fazekasg@math.klte.hu Hajdu András, hajdua@math.klte.hu Kormos János, kormos@math.klte.hu Debreceni Egyetem 1. Bevezetés Az informatikában valamilyen távlati oktatási munkaprogram megfogalmazásakor (reálisan) csak a gyorsan változó körülményekhez való állandó alkalmazkodást lehet vállalni. Az elmúlt évek, évtizedek alatt letisztult, azonban kikristályosodott egy alapvetőnek tekinthető ismeretanyag és néhány tendencia, amit a rövid- és középtávú tervezéskor nem lehet figyelmen kívül hagyni. Az a fő tendencia, amelynek a hatását az informatika, de különösképpen a számítógépes képfeldolgozás oktatási programjának kidolgozásánál tekintetbe kellett és kell venni, a számítástechnika humanizálódása. Ebbe az összetett folyamatba beletartozik többek között a számítógépek számának növekedése, a kezelésükhöz szükséges szakismeretek drasztikus csökkenése, az ember-gép kommunikációnak az ember számára egyre természetesebb formában (látás és hallás, kép és hang) történő megvalósítására való erőteljes törekvés. Az INTERNET és a mobil távközlés megjelenésével a számítástechnika a média részévé vált, s ezen a szinten már nem egyszerűen humanizálódásról, hanem társadalmasításról, szocializálódásról beszélhetünk. Ebben a folyamatban gyakran fordul elő, hogy korábbi egyetemi kurzusok anyaga az alapfokú tanfolyamok tananyagává, vagy egyszerűen egy termék használati utasításának részévé válik. A számítógépes képfeldolgozás oktatása és kutatása a humanizálódási folyamathoz több vonatkozásban is kötődhet: mint a számítógépes látás (alakfelismerés) alapjait magában foglaló tudomány, mint a multimédia megoldások, képi adatbázisok megfelelő háttérismereteit részben tartalmazó tudomány, s végül mint egyéb (térinformatikai, távérzékelési, animációs, grafikai, stb.) alkalmazások háttértudománya. A mára kialakult számítástechnikai kapacitás lehetővé teszi igényesebb a matematikai analízisre és statisztikára alapozott módszerek alkalmazását is. Ezért az oktatásban az ad-hoc módszerek helyett az előbbi szisztematikus elméleteket lehet és kell előnyben részesíteni. 2. Előzmények Egyetemünkön 1972 óta képeznek programozó matematikusokat, 1985 óta számítástechnika (később informatika) tanárokat. Az 1989-es tanévben indult az egyetemi szintű programtervező matematikus képzés, kezdetben a főiskolai szintű (3 éves) programozó matematikus szakra második lépcsőként épülve. Ezeken a szakokon mély matematikai és elméleti informatikai
alapokra támaszkodó magas szintű gyakorlati ismeretekkel rendelkező szakemberek illetve tanárok képzése a cél. A számítógépes képfeldolgozás oktatásának bevezetése a Debreceni Egyetem Matematikai és Informatikai Intézetében azokra a kutatói és alkalmazásfejlesztői tapasztalatokra épült, amiket munkatársaink ezen a területen a nyolcvanas évek eleje óta folyamatosan szereztek. Ez az időszak nagyjából egybeesik a hazai kutatások intenzifikálódásával. A kutató fejlesztő munka kezdetben szoros kooperációban folyt más hazai intézményekkel. Több periódusban végeztünk pl. alapkutatásokat és azokhoz kapcsolódó szoftverfejlesztést a Számítástechnikai Koordinációs Intézet számára. Ezek közül kiemelendő egy MSS RGB konverzációs eljárás multispektrális műholdfelvételek kiszínezésére, permutációs forráskódolási eljárások kifejlesztése és implementálása digitalizált hang és kép kódolására, továbbá bizonyos alakfelismerési (OCR) algoritmusok vizsgálata. Az alakfelismerési kutatásokat később más partnerek megbízásából tovább folytattuk és sikerült egy ujjlenyomat-azonosításon alapuló beléptető rendszert és egy OCR eljárást is magában foglaló hibrid bizonylatarchiváló rendszert kifejleszteni. A fejlesztésekért kapott anyagi támogatás lehetővé tette az intézeti hardverfeltételek fokozatos javítását. Így a munkába egyre több hallgató kapcsolódhatott be, a kutatások eredményeit tartalmazó tanulmányok, publikációk mellett hallgatói szakdolgozatok, diákköri dolgozatok születtek. A hallgatók felkészítésére a növekvő létszám miatt az egyéni konzultációk mellett speciálkollégiumokat, szemináriumokat szerveztünk. A kilencvenes évek elején bevezetett tantervi reform tette lehetővé a helyzet újragondolását. Ekkor lehetővé vált a hallgatók által választható szakosító tantárgycsoportok, ún. Sávok bevezetése. Ekkor fogalmazták meg a szerzők egy Képfeldolgozás, alakfelismerés sáv koncepcióját és dolgozták ki a tantárgyak tematikáját. A sáv bevezetésére vonatkozó a bevezetésben már érintett, az informatika fejlődésének jelenlegi szakaszában erősen megfogalmazódó igény szerencsésen találkozott a kiváló debreceni sztochasztikus iskola adta lehetőséggel. Ez a sáv bevezetését nemcsak motiválta, hanem a tematika kidolgozásánál tudatosan építettünk rá. A tananyagot négy félévre, heti négy órás elfoglaltságot alapul véve osztottuk el. Az első kísérletinek tekintett ciklus 1995-ben zárult le. A kilencvenes évek végén újabb módosítások történtek a tanagyaggal kapcsolatban, ennek megfelelően a sáv jelenleg hat tárgyat tartalmaz, tárgyanként átlagosan heti három-négy órás elfoglaltságot jelentve a hallgatóságnak. 3. Tantárgyi tematikák A digitális képfeldolgozás oktatása az egyetemünkön az 1986-os évtől van jelen rendszeresen. Kezdetben választható tárgyként (speciálkollégium rendszerbe építve). Egy tantervi reform következtében az 1990/91-es tanévben a programtervező matematikus szakon és az informatika tanárok képzésében megjelent az ún. sávos oktatási rendszer. Ennek lényege az, hogy a hallgatók a 6. félévtől kezdve négy féléven keresztül az általuk választott modulok tárgyait tanulhatják a kötelező tárgyaik mellett. Az egyik ilyen sáv a Képfeldolgozás, alakfelismerés sáv. Ez a sáv a kilencvenes évek végén bekövetkezett módosítások óta a következő tárgyakat tartalmazza: A képfeldolgozás matematikája (2+2) Képfeldolgozási módszerek (2+2) Alakfelismerés (2+2) Képfeldolgozó rendszerek (0+3)
Válogatott fejezetek a képfeldolgozásból (0+3) Képfeldolgozási esettanulmányok (0+3) A képzés alapvető célja, hogy a hallgatók megismerjék a digitális képfeldolgozás alapjait, annak alkalmazási lehetőségeit, igény szerint abban tovább képezhessék magukat és specializálódhassanak. 3.1. A képfeldolgozás matematikája A Képfeldolgozás, alakfelismerés sáv bevezető kurzusa. Az előadás feladata a digitális képfeldolgozás, mint diszciplína elhelyezése az informatikán belül és más tudományterületekkel való kapcsolódásának megvilágítása. Ehhez természetesen meg kell ismertetni a hallgatósággal a digitális képfeldolgozásban használatos alapvető módszereket és eszközöket, legfontosabb eredményeket. A felsőoktatás átstrukturálódásának következményeként a korábban oktatott matematikai tárgyak egy bizonyos része kimaradt a tantervi hálókból. Ezért a bevezető kurzusnak a tudományterület megértéséhez szükséges alapvető fizikai, fiziológiai ismeretek áttekintése mellett, a korábban ismert matematikai alapok rendszerező áttekintése során azokat új matematikai ismeretekkel is ki kell egészítenie. Az oktatás során nagy hangsúlyt helyezünk arra is, hogy az alapvető szakkifejezések angol nyelvű megfelelőit is megismerhessék és elsajátíthassák a hallgatók. Ezen ismeretek számonkérése a gyakorlaton történik meg. Az alábbiakban egy rövid tételes felsorolásban próbáljuk felvázolni a tárgy tematikáját [1,2,3,4,5,6]: alapfogalmak (digitális tér, digitális halmaz, képreprezentációk, képi jellemzők, zaj), geometriai transzformációk, konvolúció, korreláció, Fourier transzformáció és tulajdonságai, Walsh transzformáció, Hadamard transzformáció, Koszinusz transzformáció, Hotelling transzformáció, Hough transzformáció, waveletek, digitális topológia alapvető fogalmai, kapcsolódási fogalmak, szomszédsági szekvenciák, matematikai morfológia alapfogalmai, váz és annak kijelölése, középtengely-transzformáció, képalgebrák. A gyakorlat egyrészt követi az előadás anyagát és lehetőséget biztosít a hallgatóságnak a megismert matematikai fogalmak megfelelő szintű elsajátításához és használatuk begyakorlásához. Másrészt megismerteti őket az alapvető képfeldolgozást elősegítő szoftverek és hardver elemek készségszintű kezelésével. A gyakorlati foglalkozások keretében bemutatunk néhány praktikusan használható szoftvert is. Ezek közül néhány ízelítőül: Alchemy, Photo Styler, Recognita, Cantata, Pickit, stb. A félév során minden hallgatónak választania kell egy programozási feladatot. A programozási feladat egy, a gyakorlati életből merített probléma a digitális képfeldolgozás területéről. Ezek a feladatok kreatív, problémamegoldó gondolkodást követelnek. Oktatói részről kontrollal és konzultációval járulunk hozzá ezekhez a munkákhoz. 3.2. Képfeldolgozási módszerek E tárgy keretén belül a hallgatók megismerkedhetnek a digitális képfeldolgozásban széleskörűen alkalmazott képfeldolgozási módszerekkel. Külön hangsúlyt helyezünk arra, hogy az előadás keretében megismert algoritmusokat különböző forrásokból származó képeken is kipróbálhassák, ezzel elősegítve egy vizuális értékítélet kialakulását bennük, amelynek a későbbiekben a szubjektív minőség megítélésben nagy szerepe lehet.
A tárgy tematikája vázlatosan [1,3,4,5,6]: képi adatstruktúrák, képtömörítő algoritmusok (veszteséges és veszteségmentes), képjavítások képtartományban (világosságkód-transzformációk, hisztogram-transzformációk, küszöbölés, átlagolás, box-módszer), képjavítások frekvenciatartományban (szűrők, rekonstrukció, lineáris elmozdulás korrigálása), szegmentálási technikák (gradiens módszer, Roberts gradiens, Laplace-operátor), összetett morfológiai műveletek, sablonozási technikák, vázkijelölési technikák, mozgáskövetés, sztereolátás. Hasonlóképpen az előző tárgyhoz, minden hallgatónak választania kell egy programozási feladatot. A programozási feladat egy, a gyakorlati életből merített probléma a digitális képfeldolgozás területéről. Ezek a feladatok lehetővé teszik, hogy az előadás során elhangzott irodalmi algoritmusok alkalmazhatóságát a hallgatók saját programjaikba építve kipróbálhassák. 3.3. Alakfelismerés E tárgy keretében a hallgatók az alakfelismerés két irányzatának, a statisztikus illetve a szintaktikus alakfelismerésnek, alapvető elméleti fogalmaival, módszereivel ismerkedhetnek meg. A statisztikus alakfelismerés tanulmányozása során az alakfelismerésben széleskörűen alkalmazott statisztikai elméletekkel, módszerekkel ismerkedhetnek meg a hallgatók. A tanított elméleti anyag esetében nagy hangsúlyt kap a tekintett statisztikai modellek, módszerek univerzalitása, a képfeldolgozástól független alkalmazhatósága is. Ez azért is fontos, mert a tárgy épít ugyan a bevezető valószínűségelméleti kurzus anyagára, de sok-sok értékes és általános statisztikai módszer csupán e kurzus keretében hallgatható. A félév során szóba kerül [7,8,9] többek között a Bayes-féle osztályozás, a Bayes hiba becslése, az osztályozó tervezés és kiértékelés, a klaszteranalízis, klaszterezési technikák, validitás, a sajátosság kiválasztás és kivonás, kritériumok, a valószínűségi távolság, függőség, entrópia, osztályok közötti távolsági mértékek, sajátosság kiválasztó algoritmusok, parametrikus- és nemparametrikus mértékek, Karhunen Loeve kifejtés. A gyakorlat keretében a hallgatók példákat látnak az elméleti anyag gyakorlati alkalmazásaira. Ezen kívül nagy hangsúlyt helyezünk a statisztikai programcsomagok használatának oktatására is. A szintaktikus alakfelismerés oktatása alapjában véve a korábban tanult, a formális nyelvekkel és az automata elmélettel kapcsolatos ismeretek általánosítása a digitális képfeldolgozás céljainak leginkább megfelelő módon. A korábbiakhoz hasonlóan röviden ismertetjük a tematikát [10,11,12,13]: nyelvek és grammatikák, grammatikák típusai, műveletek nyelvekkel és azok tulajdonságai, zártsági tételek, normál alakok, grammatikák egyértelműsége, automata modellek, véges automata, veremautomata, korlátos automata, Turing-gépek, automaták által felismert nyelvek, automaták és grammatikák kapcsolata, szintaktikus elemzők, párhuzamos számítási modellek, acceptorok, szó-acceptorok, tömb-acceptorok, celluláris acceptorok, egyutas ill. háromutas acceptorok, trianguláris és piramis acceptorok, párhuzamos/soros acceptorok, kavicsacceptorok, kavics-nyelvek végtelen hierarchikus rendszere, tömbgrammatikák, párhuzamos grammatikák, zártsági tételek, szóprobléma párhuzamos grammatikákban, több dimenziós Markov-algoritmus, alapvető képfeldolgozási algoritmusok implementálása különböző automata modell esetén és azok elméleti tár és időbonyolultsága.
A gyakorlat ebben a félévben szorosan követi az előadás anyagát. A fogalmak megértését és használatát feladatok megoldásával és az irodalomból ismert algoritmusokkal történő illusztrálással segítjük. 3.4. Képfeldolgozó rendszerek Ez a tárgy a képfeldolgozó rendszerek elméleti, valamint szoftveres és hardveres hátterének ismertetésével foglalkozik. A tematika rugalmasan változhat a bemutatásra kerülő rendszerektől függően. Kisebb súllyal ugyan, de szó esik a digitális képfeldolgozás modern gyakorlatban használt, a bemutatott képfeldolgozó rendszerben alkalmazott elméleti eszközeiről, így például a sztereolátáshoz, robotvezérléshez, alakfelismeréshez, mozgásdetektálás és -követéshez, ujjlenyomat-felismeréshez, különbözõ karakterfelismerési eljárásokhoz, véges elemes rendszerekhez kapcsolódó elméleti alapokról. Szoftveres részről az oktatásban és iparban használható kifejezetten képfeldolgozás témájú vagy általános célú, de képfeldolgozó csomagot is tartalmazó programok bemutatására kerülhet sor, mint például a Choros, Matlab, Recognita DTK, Halcon, DIPE, MSC Patran/Nastran, Cosmos, Ansys, MatrixVision stb. Hardver oldalról a képfeldolgozási alkalmazásokhoz használt hardvereszközökkel ismerkedhetnek meg a hallgatók: kamerák, letapogatók, digitalizáló kártyák, robotkarok, CAD/CAM eszközök, stb. 3.5. Válogatott fejezetek a képfeldolgozásból Ezen előadás feladata rövid áttekintést adni az aktuális kutatási témákról és irányvonalakról. A hallgatók lehetőséget kapnak arra is, hogy az óra keretében egy-egy önállóan feldolgozott cikk ismertetésével fejlesszék előadói készségüket. A tárgy tematikáját az adott téma, a téma választását pedig annak aktualitása határozza meg. A gyakorlat keretében a hallgatók által alkotott csoportok egy-egy komolyabb képfeldolgozási feladat megoldására vállalkoznak vagy valamely a korábban tanult elméleti anyaggal kapcsolatos elméleti probléma megoldásával foglalkoznak. A gyakorlat keretében lehetőségük van az eddig megismert képfeldolgozási módszereket szintetizálva azok által együttesen alkotott rendszert megalkotni. Az egyes csoportok ismertetik az eredményeiket egymással és a felmerülő problémákat megpróbálják közösen megoldani. 3.6. Képfeldolgozási esettanulmányok Létező, elsősorban a kutatócsoportunk által kifejlesztett rendszerek elméleti és gyakorlati leírását vállalja fel ez a tárgy. A félév során a hallgatók a kiválasztott rendszer kifejlesztéséhez használatos elméleti ismeretek elsajátítása mellett megismerkednek annak gyakorlati realizálása során tapasztalt nehézségekkel és azok kiküszöbölésének lehetőségeivel. Ez a tárgy lehetővé teszi, hogy a hallgatóság képet alkothasson egy projekt életéről, a probléma kezdeti megfogalmazásától kezdődően az esetleges termék elkészüléséig. Gyakran nyitott problémák is felbukkannak, amelyek megoldásához az érdeklődő hallgatók a kurzus keretében és az után is kapcsolódhatnak. A tárgy speciális jellegéből adódóan nem adjuk meg a tematikáját, hanem inkább megemlítünk néhány rendszert, amelyeket a tárgy keretében részletesebben megvizsgáltuk már: ujjlenyomatfelismerő rendszer, robotkocsi optikai vezérlő rendszere, műtéti tervezőszoftver stb.
4. Oktatási tapasztalatok, tervek A tantárgyi tematikákat már a kezdetektől fogva rugalmasan kezeltük és az ésszerű változtatásokat különösen a gyakorlatokon használt technika és szoftver tekintetében azonnal foganatosítottuk. Az elmúlt pár év oktatási tapasztalata alapján elmondható, hogy a hallgatók szívesen választják a Képfeldolgozás, alakfelismerés sávot. Évente számos szakdolgozat készül ebben a témában magas színvonalon. A téma az oktatók körében is népszerű, más kutatási területen dolgozó oktatók is szívesen tesznek rövidebb-hosszabb utazást erre a területre. A legkomolyabb nehézséget az 1. féléves tárgy jelenti a sávot választók számára. A matematikai ismeretek megszerzése komoly munkát kíván meg tőlük. A sávos oktatás során fontosnak tartjuk, hogy a jobb képességű hallgatók a megfelelő témában jártas kutatókkal is találkozhassanak. Lehetőségeinkhez mérten külső előadókat is felkérünk egy-egy előadás vagy kurzus megtartására. Mivel a számítógépes képfeldolgozás az intézeti Ph.D. képzési programnak is részévé vált, célszerűnek látszott a megfelelő összhang megteremtése a két képzési forma között. Az intézetünkben folyó secondary képzési formák némelyikében a digitális képfeldolgozás oktatása szintén bevezetésre került, összhangban a nappali képzéssel. Nagyon fontosnak tartjuk az egyetemen belüli kooperációkat, amelyek lehetővé teszik, hogy a kutatási feladatok némelyikébe hallgatókat is bevonhassunk. Ez több szempontból is hasznos: egyrészt a hallgatók valós feladatokon tehetik próbára tudásukat, másrészt olyan alkalmazási területekkel is megismerkedhetnek, amik bizonyítják a digitális képfeldolgozás széleskörű alkalmazhatóságát. Alapvető irodalom [1.] M. Sonka, V. Hlavac and R. Boyle: Image Processing, Analysis and Machine Vision, Chapman & Hall, London 1993. [2.] K. Voss: Theoretische Grundlagen der digitalen Bildverarbeitung, Akademie-Verlag, Berlin 1988. [3.] P. Zamperoni: Methoden der digitalen Bildsignalverarbeitung, Friefr. Bieweg & Sohn, Braunschweig 1989. [4.] L. P. Jaroslavskij: Einführung in die digitale Bildverarbeitung, VEB Deutscher Verlag der Wissenschaften, Berlin 1985. [5.] R. C. Gonzalez, P. Wintz: Digital Picture Processing, Addison-Wesley, Massachusetts 1977. [6.] A. Rosenfeld, C. A. Kak: Digital Picture Processing, Academic Press, New York 1982. [7.] K. Fukunage: Introduction in Statistical Pattern Recognition, Academic Press, New York 1990. [8.] P. Barona, A.Frigessi, M. Piccioni: Stochastoc Models, Statistical Methods and Algortihms in Image Analysis, Springer-Verlang, Berlin 1992. [9.] G. J. McLachlan: Discriminant Analysis and Statistical Pattern Recognition, John Wiley & Sons, 1992. [10.] Révész György: Bevezetés a formális nyelvek elméletébe, Akadémiai Könyvkiadó, Budapest 1979. [11.] A. Rosenfeld: Picture Languages, Academic Press, New York, 1979. [12.] K. S. Fu: Syntactic Methods in Pattern Recognition, Academic Press, New York 1974. [13.] R. C. Vogt: Automatic Generation of Morphological Set Recognition Algorithms, Springer Verlag, Berlin 1989.