Zanza!

mixed.p1.x = p1.a.x*(1-amt)+p1.b.x*amt. Egy árva kukkot sem ért ebből? Nem baj, mi sem, de nem is ez a lényeg. A rejtélyes képlet egy animáció születésének apró részlete, amit egy 11. osztályos neumannos tanuló készített - önszorgalomból. A munkafolyamat egyes lépéseit pedig egy érdekes és tanulságos blogbejegyzésben részletezte.

„Az eljárás neve face morphing, és kicsit bonyolultabb, mint elsőre gondoltam... Elképesztően sokat foglalkoztam ezzel a bejegyzéssel, annak ellenére, hogy senki nem fogja elolvasni – lehet, hogy kezdem elveszíteni a kapcsolatot a valósággal”  – írja Pintér Tamás, aki osztályfőnöke meghívására látogatott el a Festők, múzsák, szerelmek című kiállításra, ahol megihlette egy képernyőn vetített Zorka-animáció. Annyira, hogy elkezdett azon gondolkodni, hogyan lehetne egy programozási nyelv segítségével reprodukálni a mozgóképet.

„A Neumannban (BMSZC Neumann János Számítástechnikai Szakgimnáziuma – szerk.) elég magas óraszámban oktatnak programozást, de a digitális képfeldolgozás egy nagyon speciális szakterület, ezért a tanórákon nem érintjük a témakört. Az Adobe Photoshop egy ideig a tananyag része volt, de az nem igényel programozói tudást, így a képmanipulálással, legalábbis a programozással kapcsolatos részével a szabadidőmben kezdtem el foglalkozni” – mesélte a Díványnak Tamás, aki a programozás mellett a bölcsészettudományok iránt is érdeklődik, ezért munkája során arra törekszik, hogy valamilyen módon ötvözze a két területet.

De, hogy értsünk is belőle valamit: alább a lapozgatgató, beilleszthető embed, ami megmutatja, mit is csinál valójában Tamás.

„A programnyelvek elsajátítása szerintem leginkább a matematikatanuláshoz hasonlítható. Kell hozzá absztrakt gondolkodás, de még fontosabb, hogy képesek legyünk folyamatosan, az adott problémához igazítani, változtatni a nézőpontunkat. De a nyelvtudás is nagyon sokat számít, hiszen rengeteg angol nyelvű tananyag található az interneten. A programnyelvek között pedig elég nagy az átfedés, szinte mindegyik ugyanazon az elven alapul, tehát ha valaki megtanul egy nyelvet, akkor már a többihez is érteni fog, annyira, hogy csak az új programozási nyelv egyedi részleteinek kell utánanéznie” – magyarázta.

„Az animáció elkészítése során meg kellett határoznom az egymásba átmenő képek közös arcvonásainak koordinátáit, ami nagyon időigényes feladat volt, mert rengetegszer újra kellett kezdenem. Ráadásul mivel szerettem volna részenként szemléltetni az animáció menetét, minden egyes videóhoz át kellett írnom a programomat” – árulta el Tamás, aki 14 éves korában, online anyagok segítségével kezdett el programozni.

„Mivel a Zorka-morfhoz használt programkód bármilyen képek között képes átmenetet képezni, szeretnék készíteni egy programot, ami a felhasználó által megadott képekből hoz létre egy animációt. A mozgókép itt természetesen már nem csak a szoftver futtatásakor lenne megtekinthető, hanem a program egy tetszőleges videóformátumba mentené az átmenetet. A hosszabb távú terveim között szerepel a közös arcvonásokat meghatározó koordináták automatikus felismerése is, ami a Cambridge-i Egyetem kutatásán alapulna. A program egyébként egész jól halad, már van egy korai verzióm, ami a felhasználó által meghatározott képekből és a szükséges pontokból képes átmenetet képezni” – fűzte hozzá.

Blogmustra