EMB 96
EMBEDDED 96 • MAGGIO • 2025 17 COMPUTER VISION | IN TEMPO REALE stituisce il precursore della moderna Computer Vision, supervisionando lo sviluppo di numerosi algoritmi basa- ti su regole e ottimizzazione che hanno portato la visione artificiale a quello che è oggi. L’Image Processing può essere definita come il compito di eseguire una serie di operazioni su un’immagine in base ai dati raccolti da algoritmi per analizzare e manipolare il contenuto di un’immagine o i dati dell’immagine. Operazioni svolte dalla Computer Vision La Computer Vision svolge le seguenti operazioni: - - Acquisizione delle immagini Le immagini vengono acquisite in tempo reale attra- verso video, foto e tecnologia 3D per essere analiz- zate. - - Elaborazione delle immagini I modelli delle immagini ottenuti mediante il deep learning automatizzano l’elaborazione, ma i modelli delle immagini sono spesso addestrati creando un migliaio di immagini etichettate o pre-identificate. - - Interpretazione delle immagini La fase finale eseguita dal sistema di Computer Vi- sion è l’interpretazione dell’immagine in cui un og- getto viene identificato e quindi classificato. Mentre i tre passaggi che delineano le basi della visione artificiale sembrano facili da eseguire, l’elaborazione e la comprensione di un’immagine tramite la visione arti- ficiale sono attività piuttosto difficili. Un’immagine è composta da diversi pixel, dove un pixel è il quanto più piccolo in cui può essere suddivisa l’im- magine. I computer elaborano le immagini sotto forma di una matrice di pixel, in cui ciascun pixel ha una serie di va- lori, che rappresentano la presenza e l’intensità dei tre colori primari: rosso, verde e blu. Tutti i pixel si uniscono per formare un’immagine digi- tale. L’immagine digitale, quindi, diventa una matrice e la Computer Vision diventa un sistema di studio delle ma- trici. Mentre gli algoritmi di visione artificiale più sem- plici utilizzano l’algebra lineare per manipolare queste matrici, le applicazioni complesse implicano operazioni come convoluzioni con kernel apprendibili e sottocam- pionamento tramite pooling. In figura 1 è riportato un esempio di come un computer “vede” una piccola immagine. Di seguito alcune operazioni comunemente utilizzate nella visione artificiale basata su una prospettiva di deep learning: Convoluzione: la convoluzione nella visione artificiale è un’operazione in cui un kernel apprendibile viene “con- voluto” con l’immagine. In altre parole, il kernel viene fatto scorrere sull’immagine, pixel per pixel, e viene ese- guita una moltiplicazione per elemento tra il kernel e l’immagine in ogni gruppo di pixel. Pooling: Il pooling è un’operazione utilizzata per ridurre le dimensioni di un’immagine eseguendo operazioni a li- vello di pixel. Un kernel di pooling scorre sull’immagine e solo un pixel del gruppo di pixel corrispondente viene selezionato per l’ulteriore elaborazione, riducendo così la dimensione dell’immagine. Attivazioni non lineari: le attivazioni non lineari intro- ducono non linearità nella rete neurale, consentendo così l’impilamento di più convoluzioni e il raggruppa- mento di blocchi per aumentare la profondità del mo- dello. Il ruolo della visione artificiale In sostanza, le attività di visione artificiale mirano a far sì che i computer comprendano le immagini digitali e i dati visivi del mondo reale. Ciò può comportare l’estrazione, l’elabora- zione e l’analisi delle in- formazioni da tali input per prendere decisioni. L’evoluzione della visio- Fig. 1 - Immagine “vista” da un computer
Made with FlippingBook
RkJQdWJsaXNoZXIy Mzg4NjYz