Am tot zis că o să vorbesc un pic aici despre proiectul meu de doctorat și în ce stadiu suntem acum cu el. Here goes.
Tema generală a proiectului este conversia imaginii în sunet, cu aplicații în ghidarea nevăzătorilor. Adică vrem să transmitem unui nevăzător un sunet care să descrie scena pe care o are în față, în sunet. De aici, pornind de la conceptul de brain plasticity, sperăm ca nevăzătorii să poată să își re-antreneze zona din creier responsabilă cu captarea imaginii pentru a prelucra informația sonoră pe care o suprapunem noi sunetelor existente. Există ceva cercetare în domeniul ăsta, și eu sunt în procesul de a descoperi exact câtă și ce rezultate are.
Între timp, ne-am propus să facem niște teste, să ne facem o imagine asupra diferitelor abordări posibile. Continuând munca începută de Alex Iordan la proiectul lui de diplomă, am scris o aplicație care folosește gstreamer (pentru captură), PIL (pentru procesare imagine), glade și pygtk (pentru interfață) și pyaudiere (pentru generare sunet), pe care să o putem folosi în teste. Mi-a luat ceva vreme până am citit toate cele, dar acuma merge destul de ok.
În principiu, preiau imaginea de la un webcam, o trec în grayscale și apoi în imagine binară (alb / negru). Pe imagine definesc macropixeli (pentru a mă ajuta cu viteza de procesare :P) în funcție de care decid dacă imaginea pe care o văd este în interiorul unei ținte, dacă am prins și din țintă și din fundal sau daca văd doar fundal. Evident, testele sunt extrem de simple, cu doar două culori, ținta și fundalul, și doar două dimensiuni.
Obiectivul testelor de acum este de a vedea dacă prin mișcarea capului și limitarea puternică a dimensiunii imaginii poți să îți dai seama care sunt formele pe care le ai în față (curbe, unghiuri drepte, colțuri, dimensiuni …). Săptămâna trecută, înainte să plec la Alba, am făcut un prim rând de teste, și a mers destul de bine. Evident, sunt și lucruri care nu au mers atât de bine (spre exemplu, sunetul pentru cele trei cazuri posibile este continuu și înnebunitor), dar pentru asta avem versiunea 0.02 :P
Astăzi am făcut partea de binarizare și m-am mai jucat un pic cu pyaudiere pentru generarea de sunet intermitent.
Deși proiectul ăsta este mai puțin despre software decât despre alte chestii, ta-daaa, un screenshot din varianta curentă a aplicației: