Table of Contents Table of Contents
Previous Page  21 / 102 Next Page
Information
Show Menu
Previous Page 21 / 102 Next Page
Page Background

TECH INSIGHT

VISIONE ARTIFICIALE

È organizzato su tre livel-

li distinti (Fig. 1) per con-

sentire lo sviluppo della

piattaforma, dell’algorit-

mo e dell’applicazione.

Livello di piattaforma

Si tratta del livello più

basso dello stack e su

di esso sono costruiti

gli strati rimanenti dello

stack. Tale livello forni-

sce sia una definizione

hardware, sia la defi-

nizione del software di

supporto su un siste-

ma operativo persona-

lizzato. La definizione

dell’hardware può deli-

neare la configurazione

di una scheda di sviluppo o di una scheda pronta per la produzione come un system-on-module. Le interfacce

del sensore e del sistema sono definite in sede di definizione dell’hardware. La piattaforma hardware sarà cat-

turata usando Vivado HLx, e potrebbe avvalersi di blocchi IP sia di Xilinx, sia di fornitori terzi, o di blocchi IP

specializzati creati tramite sintesi ad alto livello. Questo strato fornirà se richiesto anche i driver software per i

moduli IP, e una configurazione PetaLinux aggiornata per supportare l’ambiente definito via software al livello

superiore.

Livello di Algoritmo

Lo sviluppo a questo livello ha luogo all’interno dell’ambiente SDSoC basato su Eclipse. SDSoC è un compilatore

ottimizzato a livello di sistema che consente lo sviluppo attraverso un algoritmo definito da software. È a questo

livello che è usato OpenCV per implementare gli algoritmi di elaborazione delle immagini per l’applicazione in

questione. Una volta sviluppati gli algoritmi software, i colli di bottiglia per le prestazioni sono identificati e ri-

mossi, accelerando le funzioni all’interno della logica programmabile. Ciò avviene direttamente attraverso una

combinazione di sintesi ad alto livello e di risorse per la connettività, per trasferire una funzione eseguita via

software in una implementazione su logica programmabile. L’ambiente reVISION fornisce un’ampia gamma di

funzioni OpenCV pronte per l’accelerazione che agevolano questo processo. A questo livello sono supportate

anche le librerie di reti neurali più comuni, incluse AlexNet, GoogLeNet, SqueezeNet, SSD e FCN.

Fig. 1 – Lo Stack reVISION connette l’apprendimento automatico con l’ecosistema di sviluppo dei dispositivi

programmabili