Università degli Studi di Messina Facoltà di Ingegneria Visilab – Computer Vision and Image Processing Lab PROGETTAZIONE E SVILUPPO DI UN SDK PORTABILE.

Slides:



Advertisements
Presentazioni simili
Training On Line - CONP. 2 Richiesta Da Menu: Conferimenti ad inizio anno termico > Agosto > Pluriennali > Nuova Richiesta Si accede alla pagina di Richiesta.
Advertisements

Dipartimento di Ingegneria Idraulica e Ambientale - Universita di Pavia 1 Caduta non guidata di un corpo rettangolare in un serbatoio Velocità e rotazione.
TAV.1 Foto n.1 Foto n.2 SCALINATA DI ACCESSO ALL’EREMO DI SANTA CATERINA DEL SASSO DALLA CORTE DELLE CASCINE DEL QUIQUIO Foto n.3 Foto n.4.
1 Introduzione ai calcolatori Parte II Software di base.
Code::Blocks Ambiente di sviluppo.
Referenti: Prof. Anna Antola Ing. Marco Domenico Santambrogio
CONOSCIAMO IL WINDOWS '95.
Massa Laura Mela Enrica
Gestione del processore
Progetto e realizzazione del software "Solar Data Manager"
Dr. Francesco Fabozzi Corso di Informatica
Frontespizio Economia Monetaria Anno Accademico
INTRODUZIONE AI SISTEMI OPERATIVI
Implementazione dell algortimo di Viterbi attraverso la soluzione del problema di cammino mi- nimo tramite software specifico. Università degli studi di.
Anno Accademico Corso di Informatica Informatica per Scienze Biologiche e Biotecnologie Anno Accademico
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Lab 5 – Info B Marco D. Santambrogio – Riccardo Cattaneo –
2 Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione dati memorizzazione dati trasferimento.
Introduzione allinformatica. Cosè linformatica ? Scienza della rappresentazione e dellelaborazione dellinformazione ovvero Studio degli algoritmi che.
Algoritmo di Ford-Fulkerson
Programmazione 1 9CFU – TANTE ore
Laboratorio di Linguaggi note sull'uso dell' IDE DevC++ Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese.
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Introduzione al linguaggio Java
OPEN OFFICE e IMPRESS Masucci Antonia Maria.
Ufficio Studi UNIONCAMERE TOSCANA 1 Presentazione di Riccardo Perugi Ufficio Studi UNIONCAMERE TOSCANA Firenze, 19 dicembre 2000.
Introduzione DSP. Trestino Cosmo Università degli studi di Padova Capitolo 1, Slide 2 Obiettivi della lezione Perché elaborare i segnali in digitale ?
Dicembre 2006 Informatica applicata prof. Giovanni Raho 1 Informatica applicata La comunicazione ed IL FORMATO DEI FILE.
Unalternativa a Microsoft Office OpenOffice Author Kristian Reale Rev by Kristian Reale Liberamente distribuibile secondo i termini della licenza.
I Thread.
1 A cura di Vittorio Villasmunta Metodi di analisi dei campi meteorologici Corso di base sulluso del software di analisi meteorologica DIGITAL ATMOSPHERE.
Master universitario di II livello in Ingegneria delle Infrastrutture e dei Sistemi Ferroviari Anno Accademico 2012/2013 Cultura dimpresa, valutazione.
Dipartimento di Ingegneria Idraulica e Ambientale - Universita di Pavia 1 Scritte scritte scritte scritte scritte scritte scritte Scritte scritte Titolo.
3. Architettura Vengono descritte le principali componenti hardware di un calcolatore.
2) Sistemi operativi Lab. Calc. AA2004/05 - cap.2.
Università di Trieste Calcolatori Elettronici a.a Omero TuzziL01, Basi 1 Sommario: 1. Concetto di bit. 2. Indirizzi di memoria. 3. Ordinamento.
Lezione 6 Encoder ottici
Università degli studi Roma TRE Dipartimento di Informatica e Automazione Corso di Laurea in Ingegneria Informatica Tesi di Laurea Prototipo per lacquisizione.
Introduzione alle basi di dati
Argomenti della lezione
UNIVERSITA’ STUDI DI ROMA “FORO ITALICO”
UNIVERSITA’ STUDI DI ROMA “FORO ITALICO”
Trattamento di Foto e Immagini Digitali
Modulo 1: 1.3 Le Reti.
Università degli Studi di Messina Facoltà di Ingegneria Visilab – Computer Vision and Image Processing Lab Librerie OpenCV Corso di Calcolatori Elettronici.
Università Politecnica delle Marche
WIFI-DOC Gestione Documenti su Palmare. WIFI-DOC Su palmare in collegamento: - WiFi (WLAN b integrata) - Bluetooth (Versione 1.1) - IrDA (porta.
1 Negozi Nuove idee realizzate per. 2 Negozi 3 4.
ISOIVA (LOCALE) TO ISOIVA (WEB) RIPARTIZIONE INFORMATICA UFFICIO APPLICATIVI AMMINISTRATIVI 13/04/2011 UNIVERSITÀ DEGLI STUDI DI FERRARA 1.
Modulo 1 - Concetti di base della Tecnologia dell'Informazione
STRUTTURA GENERALE DI UN ELABORATORE
TRASMISSIONE DATI CON MODEM
VIRTUALIZZAZIONE Docente: Marco Sechi Modulo 1.
Architettura del calcolatore
QUIZ – PATENTE EUROPEA – ESAME WORD
Dal modello alla visualizzazione: Verso il foto realismo Daniele Marini.
Single knowledge project
1Piero Scotto - C14. Finalità del corso Programma Materiale Requisiti Spendibilità 2Piero Scotto - C14.
Sviluppare un programma in C che, dato un array da 100 elementi interi caricato con numeri casuali compresi tra [10,100], sia in grado di cercare il valore.
METODI DI RAPPRESENTAZIONE TECNICA
TRASFORMATA DI FOURIER
3  Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione  elaborazione dati  memorizzazione dati 
IL GIOCO DEL PORTIERE CASISTICA. Caso n. 1 Il portiere nella seguente azione NON commette infrazioni.
Star Office è una suite di software di produttività personale commercializzata da Sun Microsystems. StarOffice nasce come software commerciale sviluppato.
Tecnologie Informatiche ed Elettroniche per le Produzioni Animali (corso TIE) CORSO LAUREA MAGISTRALE IN SCIENZE E TECNOLOGIE DELLE PRODUZIONI ANIMALI.
Sistemi operativi di rete Ing. A. Stile – Ing. L. Marchesano – 1/18.
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
I Sistemi Operativi. Definizione Per Sistemi Operativi (di seguito SO) si intendono quei pacchetti software, a loro volta costituiti da più sottoprogrammi.
I Microprocessori Unità 3 del libro Internet Working Sistemi e reti.
Programmazione orientata agli Oggetti Introduzione a Java.
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Transcript della presentazione:

Università degli Studi di Messina Facoltà di Ingegneria Visilab – Computer Vision and Image Processing Lab PROGETTAZIONE E SVILUPPO DI UN SDK PORTABILE PER SISTEMI EMBEDDED FINALIZZATO ALLA REALIZZAZIONE DI SOFTWARE DI VISIONE ARTIFICIALE, CON APPLICAZIONI NEL SETTORE DELL’ASSISTENZA AI NON VEDENTI Tesi di laurea di Filippo Battaglia Relatore Prof. Giancarlo Iannizzotto Correlatore Dr. Francesco La Rosa

Esecuzione di algoritmi di visione artificiale su sistema mobile Nanodesktop tecnology Problema iniziale: Esecuzione di algoritmi di visione artificiale su sistema mobile Librerie Intel OpenCV disponibili solo per sistemi operativi per piattaforma x86 (Windows, Linux, FreeBSD) Necessità di elevate prestazioni del processore nei calcoli in virgola mobile Necessità di elevate prestazioni dell’hardware (memory bandwidth, video acceleration) Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

OpenCV Sono le librerie open source più comuni per l’esecuzione di Nanodesktop tecnology OpenCV Sono le librerie open source più comuni per l’esecuzione di algoritmi di visione artificiale. Rilasciate da Intel come OSS sotto licenza BSD (Berkeley Software License) http://sourceforge.net/projects/opencvlibrary/ Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Eseguire le librerie OpenCV su un palmare ? Nanodesktop tecnology Eseguire le librerie OpenCV su un palmare ? Processori ARM (Advanced RISC Machine) come Intel XScale ottimizzati per calcoli a precisione fissa Supporto VFP, NEON (SIMD) disponibile solo nei modelli più avanzati e costosi (core ARM11, processori CORTEX) Spesso un solo processore disponibile Mancanza di uno standard comune a tutti i palmari Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Approccio sperimentale: Usare la potenza di calcolo di una console Nanodesktop tecnology Approccio sperimentale: Usare la potenza di calcolo di una console per videogiochi portatile per eseguire algoritmi di visione artificiale Il nostro è il primo tentativo su piattaforma mobile Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Nanodesktop tecnology Vantaggi Le società produttrici dotano tali device di processori molto sofisticati e specializzati nei calcoli in virgola mobile, di acceleratori grafici 2D/3D e di memorie molto veloci, allo scopo di assicurare l’esecuzione dei più moderni videogiochi L’hardware viene venduto a costi accessibili a causa dell’ampia diffusione e della concorrenza tra i vendor (Sony vende addirittura sottocosto la propria console per reggere la concorrenza del Nintendo DS) Le console per videogiochi sono ampiamente diffuse, accessibili, e facilmente acquistabili dagli utenti finali Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Sony Playstation Portable (PSP) Nanodesktop tecnology Sony Playstation Portable (PSP) La più potente console portatile mai realizzata Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Caratteristiche hardware della PSP Nanodesktop tecnology Caratteristiche hardware della PSP Architettura Dual Processor 128-bit: Processore centrale MIPS R4000 (RISC) a 333 Mhz istruzioni FP, Allegrex (SIMD) Processore secondario MediaEngine CXD5026 a 333 Mhz (funzionalità DSP, decodifica audio/video, programmabile per l’esecuzione di programmi custom) Unità VFPU (potenza di calcolo 2,6 Gflops/sec., 128 registri in virgola mobile a 32 bit, capacità di calcolo matriciale, trigonometrico e logaritmico, funzionalità SIMD) Memoria DRAM 32 o 64 Mb Accelerazione grafica 2D/3D Supporto WIFI IEEE-802.11, USB, IRDA Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Problemi Nessun supporto da parte di Sony per sviluppatori non Nanodesktop tecnology Problemi Nessun supporto da parte di Sony per sviluppatori non affiliati Nessun SDK ufficiale fornito da Sony Architettura totalmente diversa da quella di un PC Sistema operativo dedicato (PSP-OS), incompatibile con standard Unix e Posix Nessun ambiente a finestre fornito dal sistema operativo Unico strumento a disposizione degli sviluppatori era Il PSPSDK (www.ps2dev.org) Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Problemi programmazione PSPSDK Nanodesktop tecnology Problemi programmazione PSPSDK Libreria libc non standard Non conformità linguaggio C con gli standard ANSI Mancanza di un ambiente grafico a finestre Nessuna integrazione con un IDE Nessun emulatore su PC Nessun supporto per VFPU NID change trouble: interazione tra codice e diverse versioni del firmware Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Un Hello world sul PSPSDK (parte 1) Nanodesktop tecnology Un Hello world sul PSPSDK (parte 1) #include <pspdebug.h> #include <pspkernel.h> PSP_MODULE_INFO("Hello World", 0, 1, 1); /* Exit callback */ int exit_callback(int arg1, int arg2, void *common) { sceKernelExitGame(); return 0; } /* Callback thread */ int CallbackThread(SceSize args, void *argp) int cbid; cbid = sceKernelCreateCallback("Exit Callback", exit_callback, NULL); sceKernelRegisterExitCallback(cbid); sceKernelSleepThreadCB(); Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Un Hello world sul PSPSDK (parte 2) Nanodesktop tecnology Un Hello world sul PSPSDK (parte 2) /* Sets up the callback thread and returns its thread id */ int Setupcallback(void) { int thid = 0; thid = sceKernelCreateThread("update_thread", CallbackThread, 0x11, 0xFA0, 0, 0); if(thid >= 0) sceKernelStartThread(thid, 0, 0); } return thid; int main() Setupcallback(); pspDebugScreenInit(); pspDebugScreenPrintf("Hello, world!\n"); sceKernelSleepThread(); return 0; Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Sono necessarie 40 righe di codice per un semplice “Hello world” Nanodesktop tecnology Sono necessarie 40 righe di codice per un semplice “Hello world” Il nostro programma C non risponde agli standard ANSI (manca la printf !!!!) Il problema dello sviluppo di ambienti compatibili con il normale codice C ed in grado di facilitare la creazione di homebrew per PSP, era considerata questione centrale su tutti i forum per programmazione PSP del mondo Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Nanodesktop Sviluppiamo un nostro SDK per la programmazione di Nanodesktop tecnology Sviluppiamo un nostro SDK per la programmazione di sistemi embedded Nanodesktop Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Caratteristiche di Nanodesktop (1) Nanodesktop tecnology Caratteristiche di Nanodesktop (1) Piena integrazione con l’IDE Dev-C++ Supporto per lo pseudoemulatore MIPS PSPE Compatibilità ANSI C e C++ Supporto libm IEEE754. Accelerazione matematica in hardware via VFPU (EMI, EMIEMU, ndHAL_XFPU) Architettura HAL-based Supporto tastiere virtuali Accesso al disco con cache write back Sistema grafico accelerato in hardware Phoenix (NanoTile acceleration) Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Caratteristiche di Nanodesktop (2) Nanodesktop tecnology Caratteristiche di Nanodesktop (2) Il sistema grafico supporta Routines grafiche di disegno Char overscreen Font TrueType Wallpaper e trasparenze Pulsanti, Textbox, TextArea, ListBox, CheckBox, TrackBar, ProgressBar, Windows menu Icone e classi di file Caricamento e salvataggio di 12 formati grafici distinti Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Caratteristiche di Nanodesktop (3) Nanodesktop tecnology Caratteristiche di Nanodesktop (3) Sistema audio: supporta 8 canali hardware PCM con frequenze tra 8000 e 48000 Hz (interpolazione eseguita via software ove la piattaforma non supporti la funzionalità) Decodifica assistita in hardware di file WAVE e MP3 USB: Supporto per Sony GoCam e per qualsiasi webcam via Eyeserver tecnology (ndUsbDriver.Prx) Interfaccia per il controllo di dispositivi hardware via infrarossi (RawIR, IRDA) Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Caratteristiche di Nanodesktop (4) Nanodesktop tecnology Caratteristiche di Nanodesktop (4) Supporto compressione/decompressione dei file ZIP Funzionalità di connessione di rete Wi-Fi (IEEE802.11) Supporto funzionalità standard di rete Supporto libreria Curl e ndGCurl per trasferimento file Monitor di rete integrato Capacità VOIP (ndOSIP, ndeXOSIP, ndRTP) Quest’ultima caratteristica viene usata nel nuovo software di telefonia cellulare VOIP per PSP ndFurikup Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Qualche dato su Nanodesktop Nanodesktop tecnology Qualche dato su Nanodesktop Un SDK sviluppato totalmente in Italia, nell’Università di Messina 2 anni di sviluppo 100 Mb di codice sorgente La Nanodesktop distribution contiene 450 Mb di sorgenti, documentazione, demo, binari 1.900.000 righe di codice Le applicazioni nd hanno ricevuto svariati articoli sui siti psp-ita, QJ (USA), maxconsole (ENG), scene-beta (SPA), psp-freaks (GER), planete-psp (FRA) Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

La tecnologia alla base di Nanodesktop consente di portare Nanodesktop tecnology La tecnologia alla base di Nanodesktop consente di portare su dispositivi handheld librerie di tipo scientifico universitario che erano state progettate per girare su piattaforma x86. L’interfaccia ndHAL_XFPU è in grado di usare le unità dedicate della PSP (VFPU) parallelizzando l’algoritmo in più flussi di esecuzione distinti. Il sistema grafico compatto ed efficiente, che rinuncia alla retrocompatibilità con le API grafiche di Windows e di X, consente di sfruttare ogni ciclo di clock del dispositivo. Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Le caratteristiche di Nanodesktop hanno consentito di Nanodesktop tecnology Le caratteristiche di Nanodesktop hanno consentito di portare diverse tecnologie sviluppate da svariate Università e centri di ricerca su piattaforma PSP. In questo modo, non solo abbiamo aperto il progetto a centri di ricerca esteri, ma abbiamo anche ottenuto un ambiente di sviluppo per piattaforma mobile unico del suo genere. Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

In particolare, sono state portate le librerie: ndOpenCV Nanodesktop tecnology In particolare, sono state portate le librerie: ndOpenCV Per gli algoritmi di visione artificiale ndFLite Un motore di sintesi vocale sperimentale sviluppato dal Dr. Alan Black della Carnegie Mellon University ndGOCR/ndOCRAD Due motori OCR open-source. Il porting di Tesseract è in corso. Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Un correttore ortografico rilasciato da GNU ndSIFT Nanodesktop tecnology ndISpell Un correttore ortografico rilasciato da GNU ndSIFT Scalar Image Feature Transform: una tecnologia per il riconoscimento di oggetti e di luoghi ideata da David Lowe ed implementata dal Dr.R.Hess presso l’Oregon State University. Per la prima volta gira su PSP. ndSQLLite Per l’accesso ai file database Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Diamo ora un’occhiata alla Nanodesktop Architecture (rev. 4). Nanodesktop tecnology Diamo ora un’occhiata alla Nanodesktop Architecture (rev. 4). Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Visilab – Computer Vision and Image Processing Lab Nanodesktop tecnology Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Attualmente, Nanodesktop supporta 4 HAL: HAL PSPE HAL_PSP HAL_KSU_PSP Nanodesktop tecnology Attualmente, Nanodesktop supporta 4 HAL: HAL PSPE Consente la programmazione sull’emulatore per PC PSPE HAL_PSP Consente di programmare la vera PSP (senza USB e IR) HAL_KSU_PSP Compatibile con il firmware 1.50 Sony. Supporta le funzioni Raw-IR, USB, Network HAL_CFW_PSP Compatibile con i custom firmware serie 3.XX. Supporta USB, IRDA, Raw-IR, MP3, WAV, Network, GoCam Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Ogni HAL ha una sua struttura interna specifica HAL PSPE HAL PSP Nanodesktop tecnology Ogni HAL ha una sua struttura interna specifica HAL PSPE HAL PSP HAL KSU HAL CFW Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Tra l’HAL ed il livello applicativo CODE si pongono Nanodesktop tecnology Tra l’HAL ed il livello applicativo CODE si pongono le librerie NanoC, NanoCPP e NanoM che forniscono la compatibilità con gli standard ANSI ed ISO consentendo la programmazione della piattaforma con il normale codice C. Questi tre componenti costituiscono il livello NanoCore Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Al di sopra di HAL e NanoCore si pone il livello CODE, Nanodesktop tecnology Al di sopra di HAL e NanoCore si pone il livello CODE, che contiene il codice indipendente dalla piattaforma Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Nanodesktop integra un sistema grafico accelerato Nanodesktop tecnology Nanodesktop integra un sistema grafico accelerato multithreading con event manager di tipo message passing Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Nanodesktop è in grado di prelevare dati da una Nanodesktop tecnology Nanodesktop è in grado di prelevare dati da una webcam (GoCam o via Eyeserver) Inoltre, integra funzioni di acquisizione audio che consentono la registrazioni di suoni Sono già usate dall’applicazione Nanodesktop Audio Recorder e verranno usate nella prossima tecnologia ndPocketSphynx, che consentirà l’uso di un sistema di comando a riconoscimento vocale su piattaforma embedded in ambiente Nanodesktop Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Possiede inoltre capacità di rete: ndGCurl permette di Nanodesktop tecnology Possiede inoltre capacità di rete: ndGCurl permette di scaricare un file da internet in modo simile a come si fa su Windows Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Questo è un Hello World equivalente sotto Nanodesktop Nanodesktop tecnology Questo è un Hello World equivalente sotto Nanodesktop #include <nanodesktop.h> int ndMain () { ndInitSystem (); printf (“Hello world \n”); } Questo codice funzionerà, identico, su qualsiasi piattaforma supportata da nd Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Tramite Nanodesktop, abbiamo dunque la possibilità di Nanodesktop tecnology Tramite Nanodesktop, abbiamo dunque la possibilità di utilizzare un ambiente a finestre per la PSP. Il passo successivo, è consistito nella realizzazione di una reimplementazione del componente HighGUI di Intel. ndHighGUI è in grado di visualizzare su nd un immagine IPL (OpenCV) dopo l’elaborazione da parte degli algoritmi di visione artificiale. Le funzioni di ndHighGUI sono analoghe alle corrispondenti della versione per x86. Il codice sorgente è stato invece completamente riscritto. Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Stiamo eseguendo le OpenCV su un dispositivo portatile come la PSP ! Nanodesktop tecnology Stiamo eseguendo le OpenCV su un dispositivo portatile come la PSP ! Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

L’idea è stata quella di usare tutte queste tecnologie in Nanodesktop tecnology L’idea è stata quella di usare tutte queste tecnologie in un’applicazione di assistenza ai non vedenti In questo modo, avrebbero potuto accedere a delle tecnologie avanzate di visione artificiale al costo di acquisto di una semplice PSP. Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Blind Assistant Visilab – Computer Vision and Image Processing Lab Nanodesktop tecnology Blind Assistant Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Visilab – Computer Vision and Image Processing Lab Nanodesktop tecnology Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Blind Assistant fornisce le seguenti funzionalità: Nanodesktop tecnology Blind Assistant fornisce le seguenti funzionalità: Face Detection e Recognition: è in grado di indicare al non vedente la posizione e l’identità di un individuo inquadrato dalla webcam GoCam Per fare questo, fa uso dell’algoritmo di Viola-Jones per la face detection, seguito dall’algoritmo di PentLand di face recognition. Nelle nostre prove il sistema ha riconosciuto il viso in più dell’85% dei casi Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

L’algoritmo di PentLand (PCA) cerca di descrivere una Nanodesktop tecnology L’algoritmo di PentLand (PCA) cerca di descrivere una immagine come una combinazione lineare di n vettori immagine noti (EigenFaces). Un particolare processo matematico consente di ridurre la dimensionalità del problema. Il viso di appartenenza viene individuato attraverso un meccanismo minimum distance nel face space Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Blind Assistant è in grado di riconoscere il luogo in Nanodesktop tecnology Place recognition Blind Assistant è in grado di riconoscere il luogo in cui il cieco si trova. Per fare questo, esso si appoggia ad un server che gira su x86 chiamato BlindServer, il quale esegue l’algoritmo SIFT (Scalar Image Feature Transform) ed invia i risultati all’unità mobile attraverso la rete wireless Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Nelle nostre prove, il sistema è riuscito a riconoscere Nanodesktop tecnology Nelle nostre prove, il sistema è riuscito a riconoscere il luogo in più del 70% dei casi. Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Blind Assistant è in grado di leggere un testo al non Nanodesktop tecnology OCR Blind Assistant è in grado di leggere un testo al non vedente. Questo inquadra il testo con la GoCam... Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Il sistema supporta due motori di riconoscimento ottico: Nanodesktop tecnology Il sistema supporta due motori di riconoscimento ottico: Tesseract, il noto software sviluppato dalla Google Foundation; ndOcrad, il software sviluppato da Antonio Diaz e rilasciato sotto GPL Blind Assistant fa uso di un algoritmo di correzione dei termini errati che si appoggia su un dizionario. Anche questa tecnologia di correzione è stata sviluppata al Visilab. Il testo viene sintetizzato in tempo reale e letto dalla PSP al cieco. Quando si usa Tesseract, il sistema ha un rate di riconoscimento superiore al 90% Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Il Visilab ha dedicato a Nanodesktop uno spazio sul Nanodesktop tecnology Il Visilab ha dedicato a Nanodesktop uno spazio sul proprio sito Internet: http://visilab.unime.it/~filippo/Nanodesktop/nanodesktop.htm Psp-Ita ospita il forum di assistenza tecnica http://www.psp-ita.com/forum/ La fondazione Wikipedia ha dedicato una pagina all’SDK http://it.wikipedia.org/wiki/Nanodesktop Attualmente, sia in Italia che negli Stati Uniti diversi sviluppatori stanno lavorando su applicazioni nd compatibili Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Gli sviluppatori possono fare riferimento alla Nanodesktop User Guide Nanodesktop tecnology Gli sviluppatori possono fare riferimento alla Nanodesktop User Guide http://visilab.unime.it/~filippo/Nanodesktop/PSP_PSPE/Docs/Docs.htm L’ultima versione dell’SDK (0.3.4) è scaricabile qui [*] http://visilab.unime.it/~filippo/Nanodesktop/PSP_PSPE/Downloads/Downloads.htm [*] o da uno dei mirror che si occupano del progetto in Italia o in USA Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

Nanodesktop verrà migliorato a breve con un nuovo Nanodesktop tecnology Sviluppi futuri Nanodesktop verrà migliorato a breve con un nuovo engine grafico 3d, il supporto a Python, il motore di comando vocale PocketSphynx, la compatibilità con SDL ed Allegro. Per Blind Assistant, è prevista l’aggiunta di funzioni come collision avoidance, lettura dell’ora, delle mail, e delle news, oltre ad un miglioramento degli algoritmi utilizzati Visilab – Computer Vision and Image Processing Lab University of Messina - Italy

GRAZIE Visilab – Computer Vision and Image Processing Lab Nanodesktop tecnology GRAZIE Visilab – Computer Vision and Image Processing Lab University of Messina - Italy