Main Page

From Kulki

todo

Kompiuterinio matymo algoritmai menin�je praktikoje

(Kompiuterinis matymas ir skaitmeninio vaizdo apdorojimas menin�je praktikoje)

Bartošas Polonskis,

fotografijos ir medijos meno studijų programos studentas

Vizualiojo ir taikomojo meno fakultetas

magistro darbas

Vadovas dokt. Vytautas Michelkevi�ius

Redaktor� Justina Christauskait�, Rūta Kiškyt�

Vilniaus dail�s akademija

Vilnius, 2006

Santrauka

Contents

Kompiuterinio matymo samprata


Kas yra kompiuterinis matymas

Bendrai kompiuterinis (mašinos) matymas tai kompiuterio sugeb�jimas perimti ir apdoroti vaizd�. Paskutinius 40 metų kompiuterinis matymas (angl. computer vision) išsivyst� kaip brandi dirbtinio intelekto mokslo šaka, kurios laim�jimai taikomi apsaugos sistemose, apžiūros sistemose medicinoje, robotų asambliažui, transporto priemonių valdymui, jud�jimo monitoringui ir kontrolei, asmeninių duomenų tikrinimui, biometriniams matavimams, nuotolyje matomo vaizdo analizei. Ne mažiau įdomiai kompiuterinis matymas yra naudojamas menin�se praktikose, pradedant nuo interaktyviųju erdvinių s�sajų sistemų baigiant vizualiniais efektais kine.


Psichologiniai aspektai

Šnekant apie kintan�io vaizdo matym�, kompiuteryje vyksta su laiku susij� (angl. time based) procesai, t.y. realiam laike kadre judan�ių objektų analiz�. Kompiuterinio matymo sensorin�s savyb�s siejasi su matymo skaitmenizavimu. Video kameros vaizdo per�mimas ir išsaugojimas yra akies (ir smegenų) simuliacijos atitikmuo. Ta�iau protingas vaizdo skenavimas primena tam tikr� m�stantį vaizdo apdorojim�. Kognityvin� informacij� apie vaizdo signal� gauname per kompiuterinio matymo algoritmus, (kamera siun�ia video kadrus į kompiutrio atmintį ir atintinkama programa perskaito kiekvieno kadro pikselio spalvos kod� ir pagal tai daro išvadas). Kompiuterinis matymas yra pakankamai supaprastintas palyginus su žmogaus matymu, ta�iau jis gali atsakyti į kai kuriuos naudingus klausimus:

  • Ar (judantis) objektas matomoje zonoje iÅ¡vis egzistuoja?
  • Kokia yra objekto judÄ�jimo trajektorija/greitis?
  • Kokia yra judanÄ�io objekto forma/spalva?

Tai yra pakankamai naudinga informacija skaitmeninei mašinai, kuri gal�tų iš tokio vaizdo daryti išvadas ir vykdyti komunikacij� tarp žmogaus ir kompiuterio.

b66a2a30799de3ea24d738f03e7157c4.jpg

1 pav. Atskirų kūno dalių detekcija ir sekimas realiame laike (programa segmentuoja atskiras žmogaus kūno dalis ir seka jų judesį)

Sud�tingi kompiuterinio matymo algoritmai gali atpažinti veid� (http://www.betaface.com/), ta�iau perskaityti jo emocijas yra sud�tingiau, kadangi tai siejasi su atskirų veido bruožų analize, o kompiuterinio matymo algoritmai yra labai konkretūs, tod�l bendrų principų (emocijų) analiz� yra kolkas sud�tingesn�. Veido atpažinimas yra naudojamas žmogaus identiteto detekcijai. Anks�iau tik filmuose naudotas efektas, kai durys atidaromos atpažinus žmogaus vyzdžius, pirštų atspaudus, šiandien tampa realiai naudojama priemone. Pvz. Tokijo metro stotel�se įrengtos veido atpažinimo sistemos, kurios pvz. paleidžia signal�, jei veidas yra atpažįstamas iš tam tikro s�rašo, pvž. policijos ieškomų įtariamujų s�rašo. [[1]]

Kognityviniai aspektai

Kompiuterinio matymo algoritmai mene dažniausiai yra skirti augmentuotos realyb�s kūrimui ir žmogaus-kompiuterio s�sajų konstrukcijai. Tai susij� su žmogaus veiksmų detekcija, jų augmentacija ir atitinkama skaitmenine reakcija.

Augmentacija yra realyb�s iš­pl�­ti­mas, kai tam tikri žmogaus veiksmai (pvz. gestai) yra apdorojami kompiuterio, nuo kurių priklauso tolesni skaitmeniniai signalai, besiskverbiantys į aplink�, t.y., į fizin� žmogaus erdv�. Augmentuotos realyb�s principai suformuluoti PARC laboratorijoje 1980-taisiais metais ir kilo iš �visur esan�io� kompiuterizavimo (angl. ubiquitous computing) koncepcijos. Priešingai negu virtuali realyb�, kuri įtraukia žmogų į savo erdv�, augmentuota realyb� dalyvauja žmogaus erdv�je.

Kompiuterinis matymas meno kurinyje atlieka psichologin� funkcij�, suvokia matom� objekt� (žmogų-žiūrov�, daikt�). Kompiuterinis matymas meniniame procese reikalingas pereinamajam etapui. Šis etapas tai meno kūrinio žiūrovo(-atlik�jo) detekcija bendriausia prasme.

Levo Manovi�iaus požiūriu kompiuterinis matymas yra dar vienas (po fotografijos) reg�jimo automatizavimas. Šiuolaikin�s laboratorijos išvyst� labai sudetingas reg�jimo simuliacijas, skirtas pvz. roboto asambliažui, simuliuojan�ias r�g�jim�, o v�liau ir matym�. Skaitmenin�s mašinos ne tik perim� vaizd�, bet ir jį atitinkamai interpretuoja. Būtent interpretavimo būd� gerai užprogramavus, galima kurti nepaprastai protingas sistemas, galin�ias komunikuoti su žmogumi.

Praktiniai aspektai

Nors skaitmeninis vaizdo per�mimas ir apdorojimas realiam laike reikalauja didel�s skai�iavimo galios, 1990-ųjų metų pabaigoje išpopuliar�jo procesoriai (~1Ghz), kurių pakako kompiuterinio matymo s�sajoms implementuoti ruošiant meninį projekt�. Šių s�sajų kūrimas prieinamas daugybei individų ir institucijų, nes tam reikalingas yra kompiuteris ir mažos skaitmenin�s kameros, kurių kainos n�ra per didel�s eiliniam vartotojui. Jos nereikalauja specialaus paruošimo ir neriboja kūno judesių specialia apranga jų sekimui. Tod�l paskutiniu metu vykstantis programin�s įrangos progresas, atviro kodo platinimas tarp meninikų/dizainerių/programuotojų, kompiuterių procesorių grei�ių intensyvus did�jimas, video įrangos kainų sumaž�jimas s�lygojo staigų meninių eksperimentų, įtraukiant kompiuterinio matymo technikas, padid�jim�.

===Estetin� kategorija=== Kompiuteriniame matyme estetika yra susijusi su matymo kokybe.Insert non-formatted text hereInsert non-formatted text here

Meno ir technologijų kontekstas

Algoritmų paskirtis

Kompiuterinis matymas kilo iš 1950-ųjų koncepcijų apie žmogaus percepcijų kompiuterizavim�. Kompiuterinis matymas siejasi su daugeliu algoritmų, kurie leidžia kompiuteriams atlikti protingus tvirtinimus apie skaitmeninį vaizd� (statišk� ir video). Istoriškai kompiuterinio matymo sistemos buvo laikomos išskirtine sritimi, prieinama tik mokslininkams ekspertams ir inžinieriams, dirbantiems signalų apdorojimo (angl. signal processing) ir dirbtinio intelekto srityse. Kompiuterinio matymo technologijos pl�tra buvo nukreipta militarizmo ir įstatymų griežtinimo linkme.

Pirmieji bandymai buvo susij� su paprastų formų/raštų atpažinimu [Selfridge, 1960]. Kiti buvo tobulesni ir susij� su sud�tingesniu vaizdo suvokimu, pavyzdžiui, erdv�s suvokimu. Iš fotografijos, kurioje buvo pavaizduota geometrin� trimat� figūra, kompiuteris gal�jo perskaityti duomenis apie trimates figūros savybes: "Tam, kad galima būtų įgalinti kompiuterį sudaryti trimatį masyv� iš geometrinio kūno dvimat�je fotografijoje, atidžiai buvo išanalizuotos ir mechanizuotos taisykl�s ir prielaidos apie trimatį suvokim�. Yra taikoma prielaida, jog fotografija yra geometrinių objektų serijos perspektyvin� projekcija, kuri gali būti sudaryta iš trima�ių modelių pakeitimų ir kad objektai gali remtis kitais matomais objektais arba plokštuminiu pagrindu. Šios prielaidos leidžia kompiuteriui gauti nuosaikų trimatį apibūdinim� iš kraštų (angl. edges) informacijos per topologinį, matematinį proces�." [[2]Lawrence 1963]

mach-per-fig2.jpg

2 pav. Vieni iš pirmųjų kompiuterio erdvinio vaizdo suvokimo eksperimentų.

Kompiuterinis matymas s�sajų kūrime

Kompiuteris turi savo istorij�, kilusi� iš militaristinių ir komercinių iniciatyvų. Kompiuterio ekrano vaizdo konvencijos turi ilg� reprezentacijos istorij� Vakarų kultūroje, pradedant nuo tapybos ir perspektyvos, fotografijos, kino, iki kompiuterin�s animacijos ir darbastalio metaforos (angl. desktop metaphor). Fizin� kompiuterio klaviatūros ir pelyt�s s�saja taip pat turi savo istorij� (PARC). Žmogus nesuvokia, kad be pelyt�s ir klaviatūros yra kitų skaitmenin�s informacijos ar metodo integracijos būdų į jo gyvenim�. Faktas, jog pelyt� ir klaviatūra reikalauja iš žmogaus prisirišimo prie įrenginio, patvirtina, kad Vakarų kultūroje galioja disciplinos ir kontrol�s modeliai. Žmogaus kūno veiksmai sumažinami iki minimumo. Kai kurie analitikai teigia, kad tokie fiziniai ribojimai suprantami pla�iau kaip kultūriniai modeliai, susij� su kūno baime ir neapykanta. [Wilson 2002]

Tyrin�tojai ir menininkai prad�jo abejoti d�l to, kaip s�sajos tarp skaitmeninių sistemų ir žmogaus gal�tų pl�totis ir integruotis į žmogaus gyvenim�. Žvelgiant toliau negu pelyt� ir klaviatūra, kyla klausimas, kaip kompiuteris gali perskaityti tokius žmogaus veiksmus kaip judesys, gestas, prisilietimas, žvilgsnis, kalb�jimas ir interakcija su fiziniais objektais.

Tam tikri kompiuterizuoti rūbai (duomenų pirštin�s, duomenų švarkai, galvos sekimo šalmai, elektroniniai pieštukai) sukuria virtualios realyb�s s�saj�, kurioje kompiuteris įgali skaityti įvairius žmogaus veiksmus. Specialūs šalmai ar kambario dydžio ekranai žmogaus judesio atitikmenį perteikia vizualizacija.

20e7090c62c6a19c93f781050bb95bd7.jpg

3 Pav. 1989 m. Mattel firmos pristatyta "Power Glove" duomenų pirštin� skirta rankų judesio sekimui. Power Glove buvo skirtas Nintedo žaidimams valdyti (rankų judesiais arba pirštų sulenkimais).

Kitos sistemos bando perskaityti judesį nesinaudojant papildomais kūno įrenginiais. Naudojant video vaizdo apdorojim� (per kompiuterinio matymo algoritmus) judesiui ar gestui susekti laisvoje, specialiai neparuoštoje erdv�je. Nuo 1980-ųjų menininkai sukūr� daugyb� projektų, kurie reaguoja į daugelį žiūrovų veiksmų. Šios į kūn� orientuotos s�sajos atitolsta nuo tradicinių stereotipų ir gali skaitmeninį men� integruoti į gilesnes ir platesnes gyvenimo sritis.

Myron Krueger

Pirmasis atliktas kompiuterinio matymo technika meno kūrinys/projektas buvo Myrono Kruegerio "Videoplace" (1969-1975). Myron Krueger tikslas buvo atskleisti žmogaus ir kompiuterio interakcijos principus. Jis sukūr� dirbtin� realyb�, kur žmogaus kūno veiksmai yra nuskaitomi simuliuoto reg�jimu, garsu ir kitais pojū�iais, daran�iais šį patyrim� įtikinam�. Dirbdamas Wisconsino universitete 1960-ais ir 1970-tais Krueger išvyst� kelet� klasika tapusių meno projektų, iš kurių "Videoplace" skaitomas pirmuoju kompiuterinio matymo technika atliktu meno kūriniu. Šiame darbe kompiuteris kontroliavo ryši tarp dalyvio-žmogaus ir grafinių objektų ekrane. Grafiniai objektai buvo koordinuojami dalyvio kūno veiksmais. Realyb�je žmogaus kūnas yra s�lygotas traukos ir kitais fizikinias d�sniais, bet kompiuterio sugeneruotam pasaulyje šie d�sniai gali nebegalioti. Vystant "Videoplace" Krueger sukūr� apie 50 interakcijos būdų, pradedant nuo virtualios tapybos ar skaitmeninio piešimo, baigiant virtualiais prisilietimais tarp dviejų žmonių skirtingose patalpose.

"Dirbtin� realyb� yra grafin�s fantazijos pasaulis, kuriame žmogus naudoja vis� savo kūn� dalyvavimui kompiuterio sugeneruotoje aplinkoje. Supratau, jog tai yra daugiau negu technologija - tai kultūrinis reiškinys. Nuo pat pradžių nor�jau sukurti tarpdisciplinines priemones, kuriose gal��iau vystyti medij�, kuri gali būti pritaikyta estetiniams, moksliniams ir praktiniams tikslams". [Krueger 1991]

c985cfab0554b66a5a1a3ddbfb32c3cc.jpg

3 pav. Myron Krueger video eksperimentai: moteris pirštais įjungia šviesas Niujorko dangoraižiuose

Myrono Kruegerio darbas labai stipriai prisid�jo prie žmogaus-kompiuterio interakcijos pl�tros, jo "dirbtinos realyb�s" koncepcijoje n�ra papildomos įrangos/aprangos, padedan�ios kompiuteriui sekti žmogaus judesius, bet analizuoja būdus, kaip kompiuteris gali suprasti žmogaus judesius (norus), naudojant video perdavim� ir jo analiz�.

"Nors praejo 30 metų, interaktyvumas yra pradin�je stadijoje. Daug preliminarių id�jų, kurias prad�jau, iki šiol yra nerealizuotos, dar sud�tingesn�s koncepcijos laukia savo atradimų" - po 30-ties metų sako Krueger. [[3]Krueger 1998]

Very Nervous System

"Very Nervous System" (1986-1990) tai Davido Rockeby klasika tap�s interaktyvaus meno kūrinys, naudojantis kompiuterinio matymo technikas. Trylika metų šį darb� vyst�s menininkas pripažista, jog sukūr� kompiuterin� varl�s akies kopij�: "Žmogaus akis yra nepaprastai jautri formai ir spalvai, tuo tarpu varl�s akis yra labiau specializuota, ji turi ribot� statišk� matym�, bet labai jautrų judesio jutim�, tod�l varl� pastebi muses ir staigiai pagauna jas savo liežuviu." [[4]Rockeby 1995]

VNSjump.jpeg

4 Pav. Very Nervous System instaliacija ir kompiuterinis matymas (T.p. žr. DVD-doku: video 1)

VNS yra interaktyvi instaliacija, susidedanti iš kelių kamerų ir kompiuterio, su atitinkama programa, kuri perdirbin�ja kamerų siun�iam� vaizd�. VNS labai jautriai reaguoja į žmogaus judesį. Skirtingi judesiai gali sukelti skirtingas VNS sistemos reakcijas: priklausomai nuo rankų ar kojų judesio realiu laiku garso sintezatorius generuoja muzik� (pvz., kair� ranka gali sukelti žemus sintezuotus dažnius, o dešin� aukštus, ir panašiai).

Šiuolaikin�s menin�s praktikos

Dabar kompiuterinis matymas mene naudojamas labai įvairiai. Tokie meno projektai būna tiek visiškai individualaus pobūdžio, dalyvaujant tik menininkui ar vienam žiūrovui, tiek ir labai socialūs, įtraukiantys daugyb� žmonių.

Snibbe

Scott Snibbe ekrano instaliacijos įtraukia dalyvius į interaktyvųjį žaidim�. Dalyviai tampa meno kūrinio herojai. Dalyvių šeš�liai ekrane pavirsta gyvomis formomis ir transformuojasi priklausomai nuo dalyvių judesių. Kai kuriais atv�jais šeš�lių judesiai atkartojami, kitais atvejais jie pradeda gyvuoti pagal savo taisykles, nepriklausomai nuo dalyvio.

http://snibbe.com/scott/screen/concentration/images/concentration 2 people med.jpg http://snibbe.com/scott/screen/concentration/images/concentration 2 people touching med.jpg

5 pav. Aplink dalyvio šeš�lį sukuriama švie�ianti aura, kuri gali būti perduodama šalia esan�iam žmogui (t.p. žr: DVD-doku video 2)

Cheese

Kompiuterinio matymo algoritmai konkre�iai apskai�iuoja informacij� apie matom� objekt�, kurį fiksuoja kamera. Gauname tiksli� informacij� apie žmogaus projekcij� kadre. Turime judesio trajektorij� įrašyt� skai�iais (kartezin�je koordina�ių sistemoje), kitaip tariant, gauname informacij� apie pagrindines žmogaus (objekto) fizines savybes (lokacija, jud�jimo greitis, spalva). Kuo tiksliau algoritmas apskai�iuoja objekto savybes, tuo didesn� tikimyb�, kad objekto intencija būs apskai�iuota. Pla�iai naudojamas kompiuterinis matymas siejasi su ekrano metafora, tai yra, kai turime žmogaus interakcij� su ekranu. Ta�iau pažangios laboratorijos vysto projektus, kuriuose yra įmanoma trimat� žmonių analiz� bei interakcija, suteikianti didesn� galimyb� "apskai�iuoti" žmogų-interaktorių. Galima šnek�ti apie virtuali� realyb� arba dirbtin� realyb� (Myron Krueger). Kuo detaliau galime atskirti žmogaus kūno savybes (atskirai rankų judesį, atskirai veido detales), tuo iš kompiuterinio matymo išgaunama didesnis psichologinio kodo rezultatas. Christiano Möllerio meninis projektas "Cheese" (2003) naudoja kompiuterinį matym� veido analizei. Speciali programin� įranga sukurta atskirti, ar žmogaus šypsena yra natūrali, ar dirbtina.

digkunst040707_3.jpg

6 pav. Moeller cost (t.p. žr DVD-doku: video 3).

Emocijų atpažinimo sistema paleidžia "neigiam�" signal� jeigu žmogus nesišypso arba tampa šypsena nebenatūrali.

Žaidimai

Mene kompiuterinio matymo algoritmai yra s�kmingai panaudojami interaktyviems žaidimams, kuriuose žaidimo personažas yra valdomas ne pele ar klaviatūra, o gestais.

"Kick Ass Kung-Fu" (2004) [5] projektas į žaidim� įtraukia vis� žmogaus kūn�. Kompiuterinio matymo ir vaizdo apdorojimo metodais žaid�jas neprivalo dev�ti specialios sekimo įrangos/aprangos.

fdc6b6923586199bdec4447e62c54eec.jpg

7 pav. Žmogaus kūnas augmentuotas į video žaidim� (t.p. žr DVD-doku: video 4)

Steb�jimo sistemos

Socialinis, su steb�jimu susij�s projektas yra "Access" (2003). "Access" - tai viešosios erdv�s instaliacija, kurioje dalyviai yra sekami robotizuotos šviesos d�m�s, valdomos interneto žiūrovų. Sekami individai nežino kas juos seka, o sekantys interneto žiūrovai nežino, jog jų veiksmai generuoja gars�, nukreipt� į taikinį. Rezultate sekantys ir sekamieji yra surišti paradoksalia komunikacijos grandine. "Access" projektas nuteikia apm�stymams apie vieš�jį steb�jim�, sekim�, buvimo garsenybe fenomen� ir jų įtak� visuomenei. Projekto struktūra yra s�moningai dviprasm� (bauginanti arba šmaikšti vienu metu), atskleidžianti žmonių žav�jim�si kontrole, budrumu ir buvimu matomu. [6]

54efe8213e5c84a13654b86d32febffe.jpg

8 pav. Access instaliacijoje žmogų seka koncentruota šviesos d�m�, valdoma interneto žiūrovų. (t.p. žr DVD-doku: video 5)

"(In)security camera" (2003) projektas yra steb�jimo kamera, naudojanti kompiuterinio matymo program�, galin�i� sekti, priartinti, eiti paskui judantį objekt� matomoje zonoje. Ji yra paremta JAV militarizme naudojamais dirbtinio intelekto algoritmais. Ta�iau ši kamera yra užprogramuota šiek tiek nesaugiai, turint omenyje jos paskirtį tarnauti saugumui. Projekto autoriai perstato priežiūros sistem� ir jos subjekt�. Menininkai kamerai suteikia žmogaus savybių. Kamera tampa drovi ir vengia akies kontakto su nepažįstamais. (Žr. DVD-doku video 8)

S�sajų sistemos

Kompiuterinis matymas taip pat yra taikomas s�sajų sistemų vystymui. Ispanų-vokie�ių dizainerių projektas "reacTable" (2004) yra labai įdomus s�sajos sprendimas audiovizualiniams performansams vykdyti. Kompiuterinis matymas šiuo atveju yra naudojamas rašto (angl. pattern) atpažinimui. Kiekvienas miniatiūrinis kubas ir cilindras turi specifin� žym�, kuri reiškia tam tikr� tos figur�l�s paskirtį. Kompiuteris esamuoju laiku seka figur�l�s pad�tį ir perskaito rašt� (infraraudon�ja šviesa), pagal kurį generuoja gars� ir vaizd�. [7]

39816425_52626d5084_d.jpg

9 pav. reacTable s�sajų sprendimai (t.p. žr DVD-doku; video 6)

Nors pats "reacTable" projektas yra gana abstraktus ir Austrijos Linz mieste per Ars Electronica festivalį buvo panaudotas audio-vizualinio tinklo performansui, jo kodas (visas projektas yra paremtas atviru kodu) ir id�ja yra naudojami konkre�iuose atvejuose, kur vietoj garso ir vaizdo gali būti generuojamas tekstas. Pavyzdžiui Linz�o interaktyvaus dizaino studentai sukūr� "recipeTable" (2005) - maisto produktų ingredientų atpažinimo s�saj�, kuri ekrane parodo produkto sud�tį. Kai produktas padedamas atitinkamoje skenavimo vietoje, kompiuterinio matymo programa automatiškai perskaito pakuot�s apa�ioje esantį specifinį rašt�.

r_t_closeup.jpg

10 pav. "recipeTable" s�saja. Maisto produkto pakuot�s apa�ioje yra specialus raštas, kuris yra nuskaitomas kompiuteriu ir ekrane automatiškai parodoma maisto produkto sud�tis.

Drawn

"Drawn" (2005) yra menininko Zachary Lieberman performansas, kuriame tapybos metu tušo pot�piai pavirsta gyvomis organin�mis formomis, kurios, jau nupaišytos, reaguoja į menininko rankas. Jis jas m�to po ekran�, tampo, stumdo. Vaizdas matomas ekrano projekcijoje, rodan�ioje menininko stal�. Augmentacijos procesas vyksta taip: kamera yra nukreipta į menininko stal�, kuriame jis paišo pot�pius. Realiame laike kamera pot�pių formas siun�ia į kompiuterį ir įrašo jas kaip formų koordinates. Tuo pat metu rankos ir teptukas, kuriais autorius judina savo pot�pius, yra įrašomos kaip formos koordinat�s. Pot�pių ir rankų koordinat�s kompiuteryje yra sujungtos fizin�mis formul�mis. Taip gauname iliuzij�, jog menininkas fiziškai judina savo pot�pius. Nors augmentavimo rezultatai matomi tik ekrane, gyvas tapymas ir pot�pių judrumas atrodo įspūdingai.

Image:madrid.jpg

11 pav. pot�pio formos pavirsta gyvom formom, kurios reaguoja į žmogaus gestus (t.p. žr. DVD-doku: video 7)

Kompiuterinio matymo technikas naudojantis menininkas savo darbuose dažnai sujungia aukšt�sias technologijas ir sud�tingus dinamikos d�snius su šmaikš�iomis, netgi vaikiškomis realizacijomis, kurios kelia nuostab�.

Eksperimentai

Motyvacija

Matymas yra pažintinis procesas. Be matymo pasaulio suvokimas būtų labai ribotas. Kiekvienas vizualios raiškos menininkas matym� naudoja savo kūrybiniame procese - tai vaizdo suvokimas. 2005 m. vasar� dirbau Ars Electronica skaitmeninių medijų laboratorijoje. Ten sutikau žmonių, kurie dirba su skaitmenin�mis medijomis, naudojant žemo lygmens programavim� (angl. 'low level') vaizdo kūrimui ir apdorojimui. Ten supratau, kad aukšto lygmens vaizdo, video, interaktyvios grafikos įrankiai (pavyzdžiui tokie, kaip Adobe ar Macromedia produktai), kuriuos naudojau iki šiol, yra toli gražu ne viskas, k� galima daryti skaitmeniniame mene. Naudojant atitinkam� programavim� (java, c ), skaitmenin� erdv� galima formuoti ir kurti daug giliau ir valdyti vis� kūrybinį proces�. Vizualumas ir matymas mene yra bene svarbiausi reiškiniai, kurie vyksta kuriantis bet kokiam darbui, tod�l jo [matymo] simuliacija skaitmenin�je erdv�je yra neišvengiama. Kompiuterinis matymas yra programavimo algoritmai, kurie analizuoja skaitmeninį vaizd� ir kurie yra išeities taškas kuriant bet kokias skaitmenines simuliacijas, susijusias su fizin�s erdv�s analize (žmogaus detekcija). Nor�damas t�sti s�moning� medijų meno kūrim�, tur�jau įsigilinti į matymo programavim�, tai yra supaprastint� (o kai kuriais aspektais ir sud�ting�) matymo simuliacij�, lyginant su žmogaus matymu.

Metodologija

Nor�damas suprasti kaip veikia kompiuterinis matymas, tur�jau pats matyti ne kaip žmogus, o kaip kompiuteris. Tod�l tur�jau ekperimentuoti su vaizdo manipuliavimu, t.y. pikselių skaitymu ir apdorojimu. Taip pat tur�jau išsiaiškinti kaip vyksta tiesiogin� interakcija tarp žmogaus ir kompiuterio. Iki šiol komunikacij� tarp kompiuterio ir žmogaus laikiau peliuko ir klaviatūros spaudin�jim�. Ta�iau naudojant kompiuterinį matym�, komunikacija išsiple�ia iki viso žmogaus kūno. Nor�jau išsiaiškinti, kaip vyksta tokia s�sajos metafora, kai žiūrovas komunikuoja su ekranu savo gestais ir kaip ekrane vyksta atitinkama reakcija į juos. Rašau metaforiškai, nes šioje komunikacijoje įvyksta taktiliškumas, kuris yra simuliuotas -- taip pat, kaip metaforiška yra sakyti, jog perjungin�ju langelius grafin�je operacin�s sistemos aplinkoje, o tiesiogine prasme judinu savo rank� ir spaudin�ju peliuko mygtuk�. Tur�jau suprasti, kokiu tikslumu kompiuteris gauna informacij� apie žiūrovo rankos pad�tį ir kaip jis t� pad�tį augmentuoja tolesnei komunikacijai. Savo eksperimentuose apsiribojau iki žmogaus kūno komunikacijos su ekranu (videoprojekcija).

Tokiu pat būdu kaip architektas ar scenografas vystydamas savo projekt� visada eskizuoja maketus, taip pat aš tur�jau simuliuoti miniatiūrin� projekcij�. Mano atveju tai buvo kompiuterio monitorius ir pieštukas, kurį judinau prieš monitorių. Kamera-sensorius yra nukreipta į monitorių taip, kad vaizdo srautas suktųsi ratu ir fiksuotų pasikeitimus vaizde. Šis augmentavimo procesas vyksta 25 kadrus per sekund� (nors srauto greitį galima keisti priklausomai nuo poreikio):

c8b1d4ac5954f02bf68a4292e4aa7d15.jpg

12 pav. Augmentacijos procesas: 1) Monitoriuje matome krentan�ius objektus; 2) Fizinis dirgiklis (ranka pieštukas) yra priešais monitorių; 3) video kamera nukreipta į monitorių, fiksuoja dirgiklio pad�tį ir jo koordinat�s (x,y) siun�iamos programai, kuri jas transformuoja į kliūtį sukurdama iliuzij�, jog virtualūs objektai atsimuša nuo fizinio dirgiklio.

Vystant šį diplominį darb� bandžiau išsiaiškinti pagrindinius kūno augmentavimo į virtuali� erdv� principus. Galima šnek�ti apie dviejų realybių susipynim�:

  • realybÄ�, kuri yra sugeneruota kompiuterio - generatyviniu (programavimo) bÅ«du sukuriami objektai ekrane, kuriems suteikiamos dinamiÅ¡kos savybÄ�s (krentatys rutuliukai);
  • fizinÄ� realybÄ�, tai yra žmogus - interaktorius, kuris iÅ¡ esmÄ�s kompiuterio atžvilgiu savo veiksmais yra nenuspÄ�jamas, nuo kurių priklauso dirbtinos realybÄ�s generavimas. TodÄ�l objektų ekrane realybÄ� turÄ�jo bÅ«ti kuo protingesnÄ�, kad galÄ�tų reaguoti į kuo ivairesnius interaktoriaus veiksmus. Daug dÄ�mesio skyriau paprastų fizinių savybių priskyrimui rutuliukams, kad jie taisyklingai atsimuÅ¡inÄ�tų nuo interaktoriaus rankos. Tam rankos yra skenuojamos video kameros ir rankų siluetas yra užraÅ¡omas kaip dÄ�mÄ�, kurios koordinatÄ�s yra siunÄ�iamos kaip informacija rutuliukams atsimuÅ¡ti nuo kÅ«no (kolizija). Darbo pirminis uždavinys buvo susijÄ�s su taisyklinga detekcija ir fizinÄ�mis generuojamų objektų savybÄ�mis. Detalesnis apraÅ¡ymas yra skyriuje "Eksperimentai". Konceptualioji Å¡io darbo pusÄ� siejosi su žmogaus ir kompiuterio tiesiogine interakcija, jų taisyklinga/teisinga komunikacija, kai dalyvauja visas žmogaus kÅ«nas, o ne tik vienas pirÅ¡tas (klaviatÅ«ra ir pÄ�lÄ�). TiesioginÄ� interakcija yra tada, kai realiu laiku įvyksta "dirgiklis - reakcija" veiksmas, o ne metaforinÄ� ar medijuota interakcija.

Pikselių apdorojimas

Šiame etape kodo pagalba apdorojau pikselius. Pikselių apdorojimas iki šiol buvo susij�s su vaizdin�mis manipuliacijomis naudojant tokius įrankius kaip Photoshop ar Premiere. "Processing" programavimo aplinka kodavimo lygmenyje labai išple�ia skaitmeninio vaizdo manipuliacijos suvokim�. Programavimo lygmenyje menininkas gali kontroliuoti kiekvien� pikselį, ko [paradoksaliai] su Photoshop padaryti neįmanoma, turint omenyje, kad galima apdoroti vaizd� laike, o dar svarbiau realiam laike.

Norint atlikti skaitmeninio vaizdo manipuliacijas, reikia suvokti kiekvieno pikselio spalvos kod� ir jį atitinkamai apdoroti. Grupinis pikselių perdirbin�jimas gali būti susij�s ne tik su vaizdo spalvin�m transformacijom, bet ir formos hibridizacija (filtrai, deformacija). Naudojantis geometrin�mis žiniomis, galima pikselius d�lioti plokštumoje/erdv�je/laike kuriant generatyvinį vaizd�.

Mano požiūris į skaitmeninį vaizd� pakito. Nuo šiol egzistuoja tik pikseliai ir jų apdorojimas (angl. image processing). Tur�jau matyti vaizd� taip, kaip jį mato kompiuteris. Kompiuteris mato vaizd� kaip pikselių rinkinį kartezin�je koordina�ių sistemoje (x,y,z). Ribotas vaizdo manipuliavimas (Photoshop principu) pavirto pilna kontrole ties skaitmeniniu vaizdu. Pavyzdžiui., norint paversti vaizd� negatyvu, Photoshope naudojama funkcija invert, o norint padaryti negatyv� �Processing� aplinkoje, rašomas toks kodas, kuris yra interpretuojamas kompiuterio:

for(int i=0;i<width*height;i  ){
    pixels[i]=color(255-red(pixels[i]), 255-green(pixels[i]), 255-blue(pixels[i])); 
}

žmogaus kalba tai reiškia perskaityk kiekvien� vaizdo pikselį; perskaityk kiekvien� pikselio raudonojo, žaliojo, m�lynojo kanalo intensyvum�; pakeisk t� intensyvum� į atvirkštin� spalv�.

Pikselių suvokimas turi didelį privalum�. Mokant manipuliuoti vaizdo pikselį, menininkas gali manipuliuoti kintan�io vaizdo (kadro) pikselį - tai yra neišvengiam� s�moningam matymui, nes turim� mažiausi� kompiuterinio matymo detal�, tai yra pikselį. Tod�l manipuliavimas pikseliais yra svarbus vystant kompiuterinį matym� (meninam projekte) art�jant prie žmogaus matymo, tai yra absoliu�iai protingo matymo.

Programavimo lygmenyje kuriant grafik�, jos formas, id�jas, eskizus galima modeliuoti matematiškai preciziškai, o tai yra labai svarbu kuriant s�moning� men�. Naudojantis Adobe ar Macromedia programomis, menininkas gauna iš anksto užprogramuotus įrankius, kurie teikia apribotas vizualin�s išraiškos galimybes. Tod�l nenuostabu, kad dauguma 1990-ojo dešimtme�io vizualinių kūrinių labai panašūs į šimtus tūkstan�ius kitų skaitmeninio meno kūr�jų darbus.

Šiame diplominiame darbe pikselių apdorojimas yra pereinamasis etapas, susij�s su "žiūr�jimo" į vaizd� specifika. Vaizdo "matymas" buvo susij�s su jo poky�ių analize ir išvadom. Buvo pereita prie kompiuterinio matymo technikų.

Pot�pių �dikas

Muzikoje, tapyboje ir šokyje dažnai pradiniu tašku tampa gestas. Žmogaus įvestis į skaitmenin� erdv� daugumoje atvejų yra susijusi su pelyt�s metafora � tai yra minimaliu rankos judesiu sukuriama iliuzija, kad žmogus keliauja po vis� ekran�. Ši metafora siejasi su vizualumu, kadangi žmogus juda pagal kartezin� koordina�ių sistem� (x,y).

Buvo bandoma išnagrin�ti, kaip pelyt�s judesį suvokia kompiuteris ir k� įmanoma su tuo padaryti. Tur�jau pereiti šį etap�, kad gal��iau užprogramuoti kompiuterį skaityti ne pelyt�s judesį, o žmogaus gest� naudojantis kompiuterinio matymo technikomis.

Prad�jau nuo papras�iausio piešimo. Tam, kad gal��iau nupiešti linijas su peliuku, tur�jau parašyti labai paprast� kod� �Processing� programavimo kalba:

void draw(){
    line(pmouseX,pmouseY,mouseX, mouseY);
}

(draw() yra funkcija, kuri atliekama cikliškai laike, tai yra, ji atstovauja kadrų metafor�, kai kadrai eina vienas po kito). Šis kodas žmogaus kalba reiškia "kartok ši� funkcij� (draw()) cikliškai: nupiešk linij� nuo praeito kadro peliuko pad�ties (pmouseX, pmouseY) iki esamojo kadro peliuko pad�ties (mouseX, mouseY). Kadangi šios funkcijos vyksta apie 30 kartų per sekund�, yra sukuriama iliuzija, jog žmogus paišo vaizdus, nors iš tikrųjų tai tik peliuko judesio pavaizdavimas linijų pagalba.

"Potepių �dikas" yra programa, kurioje nupiešt� žmogaus linij� su�da virtualus padaras. Kai paspaudžiama pelyt�, į kompiuterio atmintį yra išsaugojama x,y pelyt�s pad�tis. Kai paleidžiama, visa trajektorija nuo paspaudimo iki paleidimo yra atkartojama. Papildomai pagal ši� trajektorij� yra piešiamas padaras, pagal linijas ir sulenkimus suprogramuotas "valgyti" potepius, sukurdamas iliuzij�, jog potepiai yra naikinami.

6fc06d0f4f7bb6cb4c64a9b409b7c16f.jpg

13 Pav. "Potepių �dikas" su�d� kiekvien� žmogaus nupiešt� potepį.

"Potepių �dikas" yra programa, kuri siūlo pasitraukti nuo peliuko ir klaviatūros tam, kad kitokiais būdais būtų komunikuojama su kompiuterio ekranu. [8]

Virtuali tapyba

Virtuali tapyba yra pirmas bandymas pereiti prie kitokios komunikacijos tarp žmogaus ir kompiuterio. Šiuo atv�ju tam, kad įvyktų pasikeitimai ekrane, naudojamas ne peliukas ar klaviatūra, o žmogaus ranka. Kompiuterinio matymo pagalba, naudojant video kamer� kaip žmogaus judesio sensorių, Virtualios tapybos instaliacijos dalyvio rankos judesys yra interpretuojamas kaip teptukas, nuo kurio ekrane atsiranda potepiai. Turint omenyje komunikacij�, "Virtuali tapyba" neturi daug bendro tarp emocionalios žmogaus-kompiuterio interakcijos (kalbant apie ekspresyvųji tapym�), ji pagrįsta žmogaus rankų judesio aktartojimu, tod�l reik�tų pamin�ti taktiliškumo simuliacij� (tarp kompiuterio ir žmogaus). Lyginant su klasikine, "virtualioje" tapyboje kompiuterinis matymas yra etapas jungiantis daž�, žmogaus gest�, teptuk� ir drob�. Estetinis rezultatas ekrane priklauso nuo dalyvio-tapytojo.

38c3753de0184936a238936106d52680.jpg

Pav. 14 Virtuali tapyba. Rankų judesiais paišomos grafin�s formos ekrane (t.p. žr. DVD-doku: video 9, video 10).

"Kulki"

8a207dbaed34ad829069d6955d53597b.jpg

15 Pav. Virtualūs rutuliukai atsimušin�ja nuo fizinių rankų (T.p. žr DVD-doku: video 11)

Norint suvokti, kokiu būdu vyksta komunikacija tarp žmogaus ir kompiuterio padaroma prisilietimo simuliacija. Šiuo atveju prisilietimas įvyksta tarp žmogaus rankos ir virtualaus objekto (rutuliuko).

"Kulki" yra interaktyvi programa, sukurta �Processing� aplinkoje, atliekanti fizin�s erdv�s sensorik� ir generuojanti virtualius objektus. Virtualūs objektai yra sugeneruoti rutuliukai, kurie krenta ir matosi tik ekrane (monitoriaus, projekcijos) ir kurie atsimuša nuo žmogaus rankų, kurios yra fizin�je erdv�je. Šio eksperimento tikslas buvo išsiaiškinti kaip elementariais dinamikos d�sniais simuliuoti kontakt� tarp žmogaus rankos ir virtualių objektų esan�ių ekrane. "Kulki" augmentavimas vyko dviem pagrindiniais etapais: rankos judesio detekcija ir virtualiųjų objektų generavimu.

Pirmas Etapas: judesio analiz�

Kad ranka butų augmentuota į virtuali�j� erdv�, kamera turi būti nukreipta į ekran� taip, kad ji gal�tų taisyklingai fiksuoti poky�ius ekrane. Ekrano fonas yra baltas, ir ekrane atsiradus rankai arba rankos šeš�liui, kamera automatiškai fiksuoja tamsi� d�m�.

2db18643b794caf186842fdd96ef9608.jpg a 617f531ace299db4d9dafa33cf4c9691.jpg b

16 pav. kompiuteris (kameros pagalba) privalo suvokti tamsi� (arba skirting� nuo fono) d�m�, judan�iam objektui (rankai) augmentuoti: a) pradinis vaizdas; b) tamsaus objekto atskyrimas slenkstinimo būdu

Tada vykdomas skirtingos spalva/tonu nuo fono d�m�s išsaugojimas kompiuteryje slekstinimo (angl. thresholding) algoritmu (žr. Priedas 3 slenkstinimas ). D�m�s pikseliai yra išsaugojami kompiuteryje, o informacija apie aptiktus pikselius panaudojama tolesniam interakcijos vykdymui ir grafiniam atsakui (rutuliukų atsimušimui nuo rankos). Prieš darant grafinį atsak�, reikia apibr�žti silueto koordinates. Panaudotas Lucas Kanade sekimo algoritmas. 1981 m. sukurtas Lucas Kanade metodas yra dažniausiai naudojamas kompiuteriniame matyme judantiems objektams sekti. Turint siluet�, panaudojamos jo linkio taškų koordinat�s, kad gal�tų būti panaudotos kaip informacija rutuliukų atsimušimui.

191d2d9b57d719a02f97b7090600c728.jpg

17 pav. tam, kad rutuliukai atsimuštu nuo rankos, randamos judan�io objekto koordinat�s.

Antras Etapas: reakcija į judesį

Judesio analiz�s ir reakcijos etapai vyksta apie trisdešimt kartų per sekund�, ta�iau norint juos suvokti, reikia sustoti ir analitiškai susisteminti proces� bei panagrin�ti kaip vyksta vieno rutuliuko taisyklingas atsimušimas nuo rankos nepriklausomai nuo laiko.

Rutuliukų generavimas

Rutuliukai generuojami algoritmu, kuriame yra rutuliuko gravitacijos simuliacija, tai yra, nupaišyta elips� krenta į apa�i� pagal x=x vx ir y=x yx formules, kur x ir y yra elips�s koordinat�s, o vx ir vy yra kritimo greitis (iki simuliacijos pagal Newtono d�snius reikalingas pagreitis, mas� ir kitos fizin�s savyb�s, ta�iau šiame aprašyme apsiribojama iki minimumo, kuris užtikrintų įtikinam� gravitacijos simuliacij�).

Fizin� simuliacija

Jeigu krentantis rutuliukas "prisilie�ia" prie rankos, tai reiškia, jog rutuliukas atsirado [atsimušimo momentu] tarp dviejų rankų koordina�ių taškų, ir tada pagal atspindžio d�snius galima simuliuoti taisykling� rutuliuko atsimušimo kamp�:

54491e883f9d52027406d4665e493310.jpg 2989bdd6a93b24b3f2f08a8a3291674a.jpg

18 pav. jeigu atstumas AB yra du koordina�ių taškai paimti iš silueto, tai rutuliukas atsimuša β kampu.

Trigonometrijos d�sniai rutuliukų programavimui yra neišvengiami taisyklingam atsimušimui įvykti. Rutuliukai atsimuša nuo interaktoriaus [rankos] pagal fizikos d�snius,pavyzdžiui, gravitacijos trinties. Trigonometrin�s formul�s užtikrina taisykling� rutuliukų atsimušim� nuo šeš�lio.

Trigonometrinių savybių panaudojimas ir algoritmas, žr. Priedas1.

"Kulki" įrangos instaliavimas

Bendra ekrano kompiuterinio matymo įrangos instaliavimo schema ir sensorika naudojant video kamer�:

66c4b9bcdba7d5a548c82fe3febb4067.jpg

19 pav. 1) Kompiuteris atliekantis visus apskai�iavimus. Apie 2Ghz yra pakankama instaliacijai įvykdyti, ta�iau turint silpnesnį procesorių galima naudoti du kompiuterius: vien� judesio detekcijai, kit� rutuliukų generavimui, informacij� siun�iant per tinkl�; 2) Kamera, fiksuojanti pasikeitimus ekrane, tai yra, šeš�lio arba tamsios d�m�s pad�tį; 3) Projektorius, rodantis vaizd�, kuriame krenta rutuliukai bei "atsimuša" nuo rankų; 4) Projekcija yra kameros matymo zonoje.

Išvados

Isvados

Etc.

Vartojamos S�vokos

Bibliografija

Priedas A. Trigonomerija

Priedas B. Slenkstinimas

Terms of use