EMBEDDED
52 • MAGGIO • 2014
57
HARDWARE
SoC
dimensioni e consumi delle piattaforme destinate ad applica-
zioni di visione artificiale basate su PC. Questi SoC, grazie
all’integrazione dell’ICH (I/O Controller Hub) a bordo
del die, sono caratterizzati da un’architettura più semplice
rispetto alle APU, che prevede due chip. Caratterizzati da
prestazioni di calcolo comprese tra 85 e 185 GFLOPS in
precisione singola, i SoC della serie G possono garantire
un aumento della velocità di elaborazione dell’immagine
senza ricorrere a FPGA e DSP. Le ridotte dimensioni dei
SoC (24,5x24,5 mm) permettono di semplificare il progetto,
consentendo agli sviluppatori di sistemi di visione artificia-
le di ridurre i tempi di design e utilizzare fattori di forma
particolarmente compatti senza per questo penalizzare le
prestazioni di elaborazione.
Caratterizzati da prestazioni assimilabili a quelle di un PC e
da una notevole versatilità – a cui si aggiunge la disponibilità
di un ecosistema collaudato formato da software standard
ottimizzato per l’architettura x86, applicazioni e ambienti
di sviluppo – i sistemi di visione basati su x86 assicurano
maggiori efficienze nelle fasi di sviluppo, installazione e
gestione. L’architettura x86 inoltre agevola l’interoperabilità
con l’infrastruttura di fabbrica basata su IP, semplificando
la gestione dei dati e favorendo l’integrazione con le reti
IT e i sistemi di controllo distribuiti basati sulla medesima
architettura. Ciò si traduce in ulteriori vantaggi per le appli-
cazioni ospitate su queste reti come ad esempio la possibilità
di sfruttare le medesime applicazioni per la sicurezza, la
gestione del database e il controllo remoto.
Globalmente, questo incremento di efficienza può contri-
buire a “snellire” le strutture di costo di integratori e utenti
finali e consentire loro di superare le incompatibilità tra
hardware e software, evitando i costi legati alla manuten-
zione del software che è necessario affrontare a causa della
presenza nella medesima fabbrica di differenti architetture
di processore.
I vantaggi di OpenCV OCL:
elaborazione parallela ad alta velocità
e portabilità del codice
Per consentire ai progettisti di sistemi di visione artificiale
di sfruttare in modo efficace l’aumento delle prestazioni di
elaborazione parallela consentito dalle architetture di tipo
eterogeneo, i programmi devono avere una struttura sca-
labile in modo che possano essere eseguiti sulla più ampia
gamma di sistemi possibile senza modifiche del codice. Tool
di sviluppo aperti come OpenCV e OpenCL giocano un ruolo
fondamentale in questo contesto.
La libreria di programmazione OpenCV (Open Source
Computer Vision), gratuita e di tipo cross-platform (ovvero
compatibili con più piattaforme) è divenuta un elemento fon-
damentale per le applicazioni di visione artificiale che sfrutta-
no l’elaborazione parallela ad alte prestazioni: grazie ad essa
è possibile realizzare sistemi di telecamere “intelligenti” in
grado di fornire risposte in tempo reale utilizzate in appli-
cazioni quali misure e ispezioni automatizzate, sicurezza e
sorveglianza, identificazione e rilevamento dell’immagine.
Gli algoritmi ottimizzati per la visione artificiale di OpenCV
sono ampiamente utilizzati per rilevare e riconoscere volti,
identificare oggetti, classificare le azioni in un filmato, rile-
vare i movimenti della telecamera e oggetti in movimento e
persino estrarre modelli tridimensionali degli oggetti.
Contemporaneamente OpenCL, lo standard di programma-
zione aperto e royalty-free utilizzato per ottimizzare l’uso
dell’elaborazione parallela su sistemi eterogenei, mette a
disposizione dei progettisti di sistemi di visione artificiale
Fig. 1 – Una telecamera “smart” può sfruttare i
benefici di OpenCV OCL
Fig. 2 – Schema a blocchi delle APU della serie R
di MAD