Kadaabra

Tutto iniziò quando il mio carissimo amico e sviluppatore "Scribi", di ritorno da Palo Alto, mi raccontò di aver conosciuto un ragazzo francese in cerca di partners per realizzare un progetto molto ambizioso: sviluppare un'app mobile in grado di mostrare, in tempo reale, abbigliamento ed accessori indossati dagli attori di film e serie tv.

Non nascondo che io in primis ritenessi impossibile realizzare, con il limitato budget a disposizione quanto Vincent, questo il nome del futuro founder di Kadaabra, avesse intenzione di realizzare. Ma il nerd che è in me non seppe resistere alla curiosità...

Fu così che iniziai a documentarmi su come fosse possibile riconoscere un suono precedentemente analizzato finchè non mi imbattei in questo paper e la relativa libreria che divenì il trampolino di lancio per i miei esperimenti.

Di li a breve sviluppai un "proof of concept" che mi portò a diventare co-founder di kadaabra.com.

Video di presentazione del servizio
Primissimo prototipo del software di riconoscimento automatico scene/attori che ho sviluppato

Di cosa mi sono occupato

Progettazione

Ho personalmente progettato ogni aspetto tecnico del progetto. Infrastruttura, protocolli, riconoscimento audio, video processing. Alcune tecnologie usate: AWS, LAMP, Python/Dejavu, Appcelerator Titanium.

Infrastruttura

Scalabile e ridondante ad alta disponibilità su piattaforma AWS. Webserver LAMP, servers di riconoscimento audio, database servers Mysql/Aurora, sistemi di backend. Fino a 2 TB di database per il solo prototipo!

Manipolazione video

Ho sviluppato un software in Python sfruttando la libreria OpenCV ed il relativo wrapper per estrarre un frame per ogni "scena" di un video e relativi metadati circa gli attori presenti.

API

Ho progettato e sviluppato le API per permettere il dialogo tra l'app e l'infrastruttura servers. L'esaustiva documentazione redatta ha permesso un'agile integrazione da parte dello sviluppatore dell'app.

Riconoscimento del suono

Per il riconoscimento del suono mi sono basato sulla libreria rilasciata sotto licensa MIT "Python Dejavu" che è stata da me ottimizzata per lo scopo. In origine questa libreria è stata sviluppata per il riconoscimento di musica, che generalmente offre uno spettro di frequenze ben più ampio e variegato rispetto al "semplice parlato" di una serie tv.

Coordinazione

Ho coordinato gli altri membri del team di sviluppo, un web developer ed uno sviluppatore mobile.

Portfolio