Doctorat progress

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:

Eyecam în acțiune

Alte chestii utile prin GNOME

De câteva zile încerc să îmi găsesc un sistem cât mai bun de organizare a ideilor, a lucrurilor de făcut, a întâlnirilor și așa mai departe. Folosesc Tasque (despre care cred ca am mai scris) pentru gestiunea task-urilor, integrat în Gnome-Do (despre care cu siguranță am mai scris).

Tasque ia task-urile din mai multe back-end-uri, eu folosesc backend-ul Evolution (pentru că de acolo le pot sincroniza simplu și cu alte servicii, cum ar fi mobilul, când oi avea unu suficient de deștept). Allright, acuma intră în scenă Hamster, un proiect de gestiune a timpului despre care am mai scris. Hamster are un feature de care eu nu am știut atunci când am început să îl folosesc, și anume când îi spui activitatea de care te ocupi și pe care vrei să o urmărești, îți sugerează din task-urile existente în Evolution. Coool!

Statistici Hamster dintr-o zi productivă :P

Ok, mergând mai departe, m-am uitat un pic prin Tomboy. Tomboy este un sistem de note-taking (care nu este nicicum apropiat ca și complexitate cu OneNote de la Microsoft), care este de fapt o implementare a unui wiki, orientată pentru Desktop și pentru note. Este extensibil, prin forma unor plug-in-uri (Tomboy este scris în C#/Mono). Printre altele, știe să link-uiască între note, dar și să introducă link-uri spre fișiere și chiar și spre emailuri din Evolution.

Tomboy suportă sincronizare, și asta este îndeosebi util în combinație cu back-end-ul pentru UbuntuOne. Notele din Tomboy pot fi sincronizate cu notele din Evolution (și apoi de acolo cu notele de pe telefon, spre exemplu), folosind Conduit. Tomboy mai are și alte feature-uri cool, și câteva pluginuri third-party, cum ar fi un plugin care deschide o notă la un moment dat într-o zi.

Slightly offtopic, am fost impresionat să văd ca Pidgin suportă spellcheck în box-ul pentru mesaje.

Acum câteva zile am descoperit un progrămel, blueproximity, a cărui utilitate este discutabilă, dar al cărui factor de coolness nu este. blueproximity folosește puterea semnalului de pe legătura cu un alt dispozitiv bluetooth (gen telefonul mobil) pentru a lock-ui sau a unlock-ui calculatorul. Pentru un exemplu concret, în setup-ul meu, dacă plec la mai mult de 3- 4 metri de comp, se încuie, și se descuie automat când mă apropiu de el :D

Și ultima chestie care intra în post-ul ăsta este beagle, un serviciu de indexare și căutare, mai complex și extensibil decât tracker-ul original din Ubuntu. Beagle are și un gui, care nu are un nume deosebit (aplicația se numește Search). După ce indexează fișierele și conținutul lor, beagle poate găsi repede fișiere, poze (tag-uite), video-uri, conversații de messenger și alte informații de genul, indexarea fiind extensibilă prin plugin-uri. Încă nu a terminat de indexat tot (mai ales pe partea de poze), dar sunt fericit cu ce rezultate am obținut până acum ;)

UP12 stuff on my computer ;)
http://beagle-project.org/Main_Page

OOo pimping

OpenOffice.org este o suită de programe de office care este alternativa 1:1 a programelor din Microsoft Office, cu excepția Outlook (pentru care, am mai scris, eu folosesc Evolution). OOo e o suită robustă, care are o interfață grafică la nivelul MS Office 2000, dar care face treaba foarte bine, și repede. Unde mai pui că e și opensource?

În weekend, după ce am petrecut o săptămână sau două doar cu Writer (alternativa la Word) și cu Impress (alternativa la PowerPoint), m-am gândit să mă uit dacă nu pot să configurez / adaug lucruri să mă simt mai bine în el :).

Pentru început, a fost necesar să schimb splash-screen-ul pentru că ăla original este îngrozitor. L-am pus pe ăsta:

New OOo splash

Ca să schimbi, în Ubuntu, go to

/usr/lib/openoffice/program

și se înlocuiește openintro_ubuntu_sun.bmp cu o imagine de aceeași dimensiune, și care este tot un bmp pe 24 de biți (pe 32 de biți nu merge).

Apoi, am găsit, în sfârșit, întâmplător, cum se fac blestematele alea de icon-uri mai micuțe, să nu mai mănânce jumate de ecran.

Icon-uri micuțe

Secretul pentru asta este

Tools > Options > OpenOffice.org > View > Icon size and style > smal

Beton :)

Next up, am făcut curat în pluginurile ce le aveam, și am căutat unele noi și utile. Asta mi se pare o super caracteristică a proiectelor opensource: pentru a încuraja dezvoltarea de feature-uri, foarte multe din proiectele astea suporta pluginuri, instalabile peste aplicația de bază.

Am găsit dicționar pentru limba română (cu tot cu sugestie de cuvinte :D) și pentru limba engleză. Este și un set de template-uri suplimentare pentru Impress, care arată foarte bine. Avem și niște upgrade-uri pentru (mai săracul) echivalent de Visio, numit Draw. Este un plugin de publicat direct pe blog (ce poate fi găsit și în MS Office 2007), și un plugin pentru editare locală a fișierelor din Google Docs. Sunt toate de găsit la pagina de extensii a OOo.

Update: ah, da, și am mai găsit un plugin care face highlight la cod, pentru mai multe limbaje. numai bun pentru documentații :)

Ca și o concluzie, după mai multe luni de utilizat OOo, și după ce am fost un semi-poweruser măcar pentru word și powerpoint de la Microsoft, aș vrea să spun că alternativele lor gratuite și opensource, deși arată mai sărac, sunt în continuare foarte puternice și numa bune de folosit.

IATED2010, Valencia

În ultimele două săptămâni am contribuit, cât am putut, la două lucrări pentru INTED2010 (International Technology, Education and Development Conference). Point is că am cedat drepturile de autor pentru ambele texte, aș vrea totuși să notez pe scurt ideile principale:

Overusing the Internet – problems in technical education descrie problemele pe care departamentul în care sunt doctorand se confruntă când vine vorba de rezolvări ale diferitelor teme și proiecte, multe din ele fiind inspirate puternic din ce se găsește pe Web. În principiu este vorba despre dezamăgirea noastră că toată lumea merge pe calea cea mai ușoară, și că oamenii sunt foarte creativi când vine vorba de orice altceva decât ce și-au ales, cu mâna lor, să învețe.

Education by research – descrie implicarea studenților la diferite nivele ale pregătirii lor (anul 4, masteranzi) în diverse activități de cercetare, în cadrul unui proiect mai mare care se desfășoară în departament.

Anyway, a durat o grămadă de vreme și o grămadă de recitiri până când am ajuns la forme cu care să fim mulțumiți :) Între 8 și 10 martie voi fi la Valencia să susțin lucrările în cadrul conferinței :D

Bad tooth

Mă tot ceartă lumea că nu am mai scris de mult pe blog :) Necazul e că eu scriu pe blog când fac câte o trăznaie, și săptămâna care tocmai s-a încheiat a fost una deosebit de neproductivă pentru mine. Motive sunt multe, dar actorul principal a fost o măsea (cred că molar îl cheamă) al meu care m-o înnebunit maxim în ultimele câteva zile.

Duminică seara am cedat și mi-am înfruntat și frica de dentist și scârba generală pe care o am despre spitalele de prin România, și am fost să get treatment. Long story short, dumincă seara am fost la o clinică prin Militari (care se numește Neoclinique și e cul) și după o oră și 100 de roni eram din nou capabil să gândesc.

The culprit!