Imparare ONNX per il trading - pagina 10

 

Tutorial sul rilevamento di oggetti Raspberry Pi



Tutorial sul rilevamento di oggetti Raspberry Pi

In questo tutorial sul rilevamento di oggetti Raspberry Pi, il relatore mostra come installare Tensorflow Lite su un Raspberry Pi e utilizzarlo per la classificazione delle immagini con la dimostrazione della classificazione in tempo reale inclusa. Spiegano anche cos'è lib atlas, un componente cruciale dell'apprendimento automatico per l'algebra lineare e come correggere gli errori correlati su un Raspberry Pi. Il presentatore osserva che un acceleratore USB Coral può essere utilizzato per aumentare la velocità del progetto, ma non è necessario. Nel complesso, il relatore sottolinea la flessibilità dello script per adattarsi a diversi casi o modelli d'uso.

  • 00:00:00 In questa sezione del video, il presentatore fornisce un tutorial per installare Tensorflow Lite su un Raspberry Pi e utilizzarlo per la classificazione delle immagini. Il relatore utilizza la libreria di esempio di Tensorflow e osserva che è possibile utilizzare un acceleratore USB Coral per aumentare la velocità del progetto, sebbene non sia necessario. Per iniziare, il presentatore aggiorna il Raspberry Pi e crea un ambiente virtuale. Il relatore mostra come attivare l'ambiente e installare i pacchetti necessari prima di installare il runtime Tensorflow Lite. Infine, il relatore controlla la versione per assicurarsi che tutto sia installato correttamente.

  • 00:05:00 In questa sezione, l'oratore esegue un esempio di rilevamento di oggetti su un Raspberry Pi, ma incontra un errore relativo a lib atlas. Spiegano che lib atlas è cruciale per l'algebra lineare, che è una componente importante dell'apprendimento automatico. Mostrano come hanno risolto il problema eseguendo sudo apt-get install lib atlas bass dash dev. Il relatore mostra quindi la classificazione in tempo reale utilizzando il Raspberry Pi e sottolinea che lo script può essere modificato per adattarsi a diversi casi d'uso o modelli.
 

Rilevamento oggetti OpenCV Python | Facile e veloce (2020)



Rilevamento oggetti OpenCV Python | Facile e veloce (2020)

In questo video tutorial intitolato "Object Detection OpenCV Python | Easy and Fast (2020)", il relatore mostra come creare un rilevatore di oggetti utilizzando la libreria OpenCV in Python. Il video si concentra sulla creazione di un rilevatore con un equilibrio tra accuratezza e velocità in grado di rilevare più oggetti comunemente trovati in tempo reale. Il modello MobileNet SSD viene utilizzato per il rilevamento di oggetti grazie alla sua velocità e precisione, mentre il set di dati Coco viene utilizzato per rilevare classi come persona, bicicletta e auto. Il video mostra come scorrere varie variabili utilizzando la funzione zip per creare un rettangolo attorno all'oggetto rilevato e come modificare il codice per eseguire il rilevamento di oggetti su un feed della webcam. Il presentatore spiega anche come regolare il valore di soglia e aggiungere valori di confidenza agli oggetti rilevati per comprendere la probabilità di ciascun oggetto.

  • 00:00:00 In questa sezione del video, il creatore spiega come creare un rilevatore di oggetti con un buon equilibrio tra precisione e velocità. Il rilevatore può essere eseguito in tempo reale durante il rilevamento di più oggetti comuni e non richiede l'esecuzione di librerie di terze parti diverse da OpenCV. Il video passa attraverso i codici di creazione di un rilevatore di oggetti e spiega in dettaglio l'utilizzo dell'SSD MobileNet, che ha un buon equilibrio tra precisione e velocità e può essere eseguito su una CPU quasi in tempo reale, rendendolo una scelta eccellente per rilevare oggetti comuni. Infine, opencv-python è l'unica libreria necessaria per eseguire il rilevatore e il set di dati coco viene utilizzato per rilevare classi come persona, bicicletta e auto.

  • 00:05:00 In questa sezione del video tutorial, il presentatore mostra come visualizzare un'immagine utilizzando la libreria OpenCV in Python. Importano i nomi degli oggetti dal set di dati coco utilizzando la funzione with open e li leggono come un array. Quindi importano file di configurazione e pesi e utilizzano la funzione OpenCV per creare il modello. A differenza del tutorial video YOLO, in cui è stato necessario applicare le tecniche per estrarre il riquadro di delimitazione, la funzione esegue tutta l'elaborazione per noi e tutto ciò che dobbiamo fare è passare l'immagine e visualizzerà il riquadro di delimitazione e i nomi degli ID.

  • 00:10:00 In questa sezione, il video tutorial spiega come eseguire il rilevamento di oggetti utilizzando OpenCV e Python. Dopo aver configurato il modello di rilevamento, il codice invia l'immagine di input al modello e restituisce gli ID classe, i livelli di confidenza e i riquadri di delimitazione. Il tutorial si concentra sull'installazione e il funzionamento di un rilevatore di oggetti nel modo più rapido e semplice possibile senza installazioni o formalità estese. Il codice può essere utilizzato per varie applicazioni come auto a guida autonoma o dispositivi robotici. Il tutorial tocca anche l'importanza degli ID di classe e il significato di sottrarne uno dai loro valori quando si fa riferimento ai nomi delle classi.

  • 00:15:00 In questa sezione, l'istruttore spiega come scorrere tre diverse variabili o informazioni utilizzando la funzione zip. Usano zip per appiattire le variabili di confidenza e del riquadro di delimitazione e quindi usano un ciclo for per creare un rettangolo attorno all'oggetto rilevato. Scrivono anche il nome dell'oggetto rilevato utilizzando la funzione putText e utilizzano la variabile dei nomi delle classi per sottrarre uno dall'id della classe per ottenere il nome appropriato. L'istruttore aggiunge altri parametri per rendere l'etichetta più visibile e cambia persino il testo in modo che sia tutto in maiuscolo. Infine, rilevano con successo una persona nell'immagine.

  • 00:20:00 In questa sezione, il tutorial mostra come modificare il codice per eseguire il rilevamento degli oggetti su un feed della webcam anziché su immagini statiche. Il codice utilizza "cv2.videoCapture" per inizializzare la webcam e impostare i parametri della dimensione dell'immagine. Il ciclo while viene utilizzato per catturare e visualizzare costantemente il feed della webcam e viene aggiunta una condizione per verificare se è stato rilevato un oggetto prima di visualizzarlo. Il sistema rileva accuratamente oggetti come tastiera, monitor, telefono cellulare e mouse in tempo reale utilizzando il feed della webcam.

  • 00:25:00 In questa sezione, l'autore spiega che l'algoritmo di rilevamento degli oggetti può rilevare gli oggetti con una buona velocità e precisione, anche se potrebbe non essere la massima precisione. Il video prosegue quindi mostrando come modificare il valore di soglia e aggiungere valori di confidenza agli oggetti rilevati. Lo YouTuber esegue quindi il programma e dimostra come vengono visualizzati i valori di confidenza per gli oggetti rilevati, che sono visibili e sufficientemente chiari per comprendere la probabilità di ciascun oggetto.
 

Come configurare il rilevamento degli oggetti TensorFlow sul Raspberry Pi



Come configurare il rilevamento degli oggetti TensorFlow sul Raspberry Pi

In questo video, viene spiegato passo dopo passo il processo di configurazione dell'API TensorFlow Object Detection su un Raspberry Pi. Innanzitutto, vengono installati i pacchetti richiesti, inclusi TensorFlow, OpenCV e protobuf. Quindi, viene configurata la struttura TensorFlow e i modelli SSD Lite vengono scaricati dallo zoo dei modelli di rilevamento TensorFlow. Viene fornito uno script Python per il rilevamento degli oggetti e agli spettatori viene mostrato come utilizzarlo con una fotocamera Pi o una webcam USB. Il video copre anche argomenti più avanzati, come il download e l'utilizzo di un modello personalizzato. Il Raspberry Pi è consigliato per progetti creativi che richiedono basso costo e portabilità, come una gattaiola digitale che può inviare un messaggio quando rileva il gatto residente all'esterno.

  • 00:00:00 In questa sezione del video, il narratore fornisce una guida su come configurare l'API TensorFlow Object Detection su un Raspberry Pi. I passaggi includono l'aggiornamento di Raspberry Pi, l'installazione di TensorFlow, OpenCV e protobuf, l'impostazione della struttura della directory TensorFlow e il test del rilevatore di oggetti. Il narratore consiglia inoltre di installare dipendenze aggiuntive, come numpy, pillow, scipy e matplotlib. Inoltre, il video fornisce suggerimenti utili come l'installazione di libatlas e del codec libAV per un'elaborazione fluida.

  • 00:05:00 In questa sezione, il relatore fornisce una guida passo passo su come installare l'API TensorFlow Object Detection sul Raspberry Pi. Iniziano installando i pacchetti necessari, inclusi lib xvid core dev, lib x264 dev e QT for dev tools, seguiti da OpenCV. L'oratore spiega quindi le sfide che derivano dall'installazione di protobuf sul Raspberry Pi e guida lo spettatore su come compilarlo dal sorgente, incluso ottenere i pacchetti necessari per compilare proto bruh fun source e scaricare la pagina delle versioni di protobuf. Infine, l'oratore fornisce i necessari comandi di percorso ed emette il comando per installare l'implementazione Python dei buffer di protocollo.

  • 00:10:00 In questa sezione, il relatore spiega il processo di configurazione della directory TensorFlow sul Raspberry Pi. Ciò comporta la creazione di una directory per TensorFlow e il download del repository TensorFlow da GitHub. La variabile d'ambiente del percorso Python deve essere modificata per puntare ad alcune directory all'interno del repository TensorFlow, e questo viene fatto modificando il file bash RC. Il relatore spiega anche come scaricare il modello SSD Lite dallo zoo dei modelli di rilevamento TensorFlow e l'uso di Pro Talk per compilare i file del buffer di protocollo utilizzati dall'API di rilevamento degli oggetti. Infine, viene fornito uno script Python per il rilevamento di oggetti sui feed live da una fotocamera Pi o una webcam USB, il cui codice è disponibile sul repository GitHub del relatore.

  • 00:15:00 In questa sezione, il relatore guida gli spettatori su come utilizzare TensorFlow Object Detection su Raspberry Pi. Per prima cosa istruiscono i visualizzatori a scaricare ed eseguire lo script python per il rilevamento degli oggetti, assicurandosi che la telecamera PI sia abilitata nel menu di configurazione. Spiegano inoltre che si consiglia di chiudere tutte le altre applicazioni, in particolare il browser Web, poiché tensorflow utilizza molta memoria. Il relatore mostra anche come utilizzare un modello che l'utente ha addestrato autonomamente e fornisce un collegamento Dropbox per il proprio modello di rilevamento delle carte da gioco come esempio. Si consiglia ai visualizzatori di eseguire lo script di rilevamento degli oggetti, che potrebbe richiedere fino a un minuto per l'inizializzazione, quindi rileverà gli oggetti comuni e li visualizzerà in una finestra con un rettangolo. Infine, il relatore consiglia il Raspberry Pi per applicazioni creative che richiedono basso costo e portabilità, come una gattaiola digitale che invia un messaggio quando rileva il gatto residente all'esterno.
 

Riconoscimento facciale con Raspberry Pi + OpenCV + Python



Riconoscimento facciale con Raspberry Pi + OpenCV + Python

Core Electronics mostra come creare un sistema di riconoscimento facciale utilizzando OpenCV e il pacchetto di riconoscimento facciale di Python su un Raspberry Pi. Il tutorial include l'addestramento del sistema utilizzando un codice Python denominato "train_model.py" e il test tramite un codice di identificazione chiamato "facial_req.py". Il sistema può differenziare volti sconosciuti e noti e può anche ruotare il servo una volta che il sistema riconosce un volto noto. Il creatore ringrazia i team di OpenCV e del pacchetto di riconoscimento facciale, insieme a Carolyn Dunn, per aver reso possibile questo tipo di software e nutre grandi speranze per il suo potenziale nei loro progetti futuri.

  • 00:00:00 In questa sezione, Core Electronics mostra come utilizzare OpenCV e il pacchetto di riconoscimento facciale di Python su un Raspberry Pi per creare un sistema di riconoscimento facciale. Innanzitutto, raccolgono i materiali necessari, tra cui il Raspberry Pi, la fotocamera ufficiale, la scheda Micro SD, il cavo HDMI e l'alimentatore. Dopo aver configurato il raspberry pi e installato i pacchetti, mostrano come addestrare il sistema di riconoscimento facciale utilizzando un codice Python chiamato "train_model.py" e quindi testarlo utilizzando un codice di identificazione denominato "facial_req.py". Il programma consente alla fotocamera Raspberry Pi di cercare i volti dal vivo e di identificarli correttamente una volta individuati. Il sistema può anche distinguere tra volti sconosciuti e noti, visualizzando rispettivamente "sconosciuto" o il nome del soggetto.

  • 00:05:00 In questa sezione, il creatore del video spiega come aggiungere sei righe di codice allo script per controllare un servo utilizzando i pin GPIO del Raspberry Pi, che possono ruotare solo quando il sistema Raspberry Pi riconosce il volto del suo proprietario. Il sistema non attiverà il servo se non riconosce alcun volto o un volto sconosciuto. Il creatore del video nasconde la sua faccia e mostra come si muove il servo quando riconosce la sua faccia. Ringrazia i team di OpenCV e del pacchetto di riconoscimento facciale e Carolyn Dunn per aver creato il software che fa funzionare questi sistemi così bene insieme. Il creatore del video ritiene che questo software abbia un immenso potenziale per portare i progetti in luoghi incredibili.
 

Come installare TensorFlow 2 e OpenCV su un Raspberry Pi



Come installare TensorFlow 2 e OpenCV su un Raspberry Pi

Questo video fornisce una guida passo passo su come installare TensorFlow 2 e OpenCV su un Raspberry Pi. Il presentatore sottolinea l'importanza di avere un Pi più recente, in particolare un Pi 4 a 64 bit, e fornisce istruzioni su come installare il sistema operativo Raspberry Pi, aggiornare e aggiornare il sistema e selezionare lo script della shell TensorFlow appropriato per il proprio sistema. Il video spiega anche come modificare la versione di Python in 3.7 per coloro che riscontrano problemi con l'installazione e fornisce istruzioni dettagliate sull'installazione di ambienti virtuali, pacchetti di sistema, TensorFlow e OpenCV. In tutto il video, il presentatore fornisce utili suggerimenti e soluzioni a potenziali errori. Il video si conclude testando l'installazione di OpenCV e TensorFlow utilizzando i comandi di importazione e incoraggia gli spettatori a lasciare feedback o richieste.

  • 00:00:00 In questa sezione del video, il presentatore spiega come configurare un Raspberry Pi per un'installazione all-in-one di TensorFlow e OpenCV, partendo dall'importanza di avere un Pi più recente, in particolare un Pi 4 che è a 64 bit. Il video copre il processo di installazione del sistema operativo Raspberry Pi e l'impostazione di un nome host, nome utente, password e configurazioni Wi-Fi utilizzando l'imager Raspberry Pi. Dopo aver avviato il Pi, il presentatore indica agli spettatori di aggiornare e aggiornare prima di controllare la loro versione di Python e l'output "uname -m", che sono importanti per selezionare lo script della shell TensorFlow appropriato per il loro sistema. Il presentatore indirizza inoltre gli spettatori a script di shell ospitati privatamente e file wheel che possono far funzionare TensorFlow con Raspberry Pi.

  • 00:05:00 In questa sezione del video, il relatore spiega come modificare la versione di Python in 3.7 per coloro che riscontrano problemi durante l'installazione di TensorFlow 2 e OpenCV su un Raspberry Pi. Per fare ciò, i visualizzatori devono utilizzare pi m e installare la versione Python richiesta. Il presentatore mostra come installare pi m, aggiungere righe al file dot bash rc, installare pacchetti di sistema e aggiornare pi m. Il presentatore spiega quindi come installare Python versione 3.7.12 e creare una directory di progetto. Infine, il presentatore mostra agli spettatori come funziona pi m e verifica la versione di Python.

  • 00:10:00 In questa sezione, il relatore spiega come installare TensorFlow 2 e OpenCV su un Raspberry Pi. L'oratore suggerisce di utilizzare Python3.9 o Python3.7 con il comando shell della ruota TensorFlow appropriato. Eseguono l'installazione di un pacchetto di ambiente virtuale e la creazione di un ambiente in cui lavorare. Il relatore spiega quindi come installare i pacchetti di sistema e TensorFlow. Viene fornito un semplice test per determinare se l'installazione ha esito positivo. L'oratore discute anche di un errore che gli utenti potrebbero riscontrare e presenta la soluzione al problema.

  • 00:15:00 In questa sezione, il relatore fornisce le istruzioni per l'installazione di OpenCV su Raspberry Pi. Per gli utenti di Raspberry Pi 3, consiglia di seguire un metodo particolare descritto in un video specifico e quindi di eseguire un singolo comando: pip install opencv-python. Questo comando richiede solo dai dieci ai venti secondi per essere eseguito e l'oratore consiglia di non aggiungere alcuna funzionalità opzionale a meno che tu non sia un utente avanzato. Il video termina testando l'installazione di OpenCV e TensorFlow utilizzando i comandi di importazione e il relatore incoraggia gli spettatori a lasciare commenti, richieste o feedback.
 

Identificazione di oggetti e riconoscimento di animali con Raspberry Pi + OpenCV + Python



Identificazione di oggetti e riconoscimento di animali con Raspberry Pi + OpenCV + Python

Il video mostra un progetto Raspberry Pi 4 che utilizza una libreria addestrata e una fotocamera Pi per identificare una vasta gamma di 91 animali e oggetti in tempo reale con una valutazione di affidabilità. Il relatore fornisce una dimostrazione completa di come impostare l'hardware, configurare il Raspberry Pi e installare il software OpenCV per abilitare la visione artificiale in tempo reale e le operazioni di elaborazione delle immagini. Attraverso l'esempio di una tazza come bersaglio, gli spettatori imparano come modificare il codice per inviare segnali tramite i pin GPIO di Raspberry Pi per eseguire azioni specifiche quando OpenCV identifica il bersaglio. Il presentatore evidenzia il potenziale del software per progetti entusiasmanti ed esprime gratitudine verso i team OpenCV e CoCo.

  • 00:00:00 In questa sezione del video, il presentatore introduce il progetto di utilizzare un Raspberry Pi 4 in combinazione con una libreria addestrata e una fotocamera Pi per identificare 91 oggetti e animali unici in tempo reale, con un indice di affidabilità aggiornato . Il software Opencv viene utilizzato per fornire risorse per aiutare a risolvere i problemi di visione artificiale e di elaborazione delle immagini in tempo reale. Il relatore illustra i passaggi necessari per configurare l'hardware, configurare il Raspberry Pi e installare il software. Allo spettatore viene quindi mostrato come eseguire il codice e come armeggiare con molti dei valori del codice per perfezionare il processo di identificazione dell'oggetto e dell'animale.

  • 00:05:00 In questa sezione, il presentatore mostra come modificare il codice per inviare segnali attraverso i pin GPIO di un Raspberry Pi ogni volta che un particolare target, in questo caso una tazza, viene visto dal software OpenCV. Il codice modificato comanda al Raspberry Pi di ruotare ogni volta che viene rilevata la tazza. Viene evidenziato il potenziale di questo software per intraprendere progetti straordinari, insieme a un ringraziamento ai team OpenCV e CoCo per il loro lavoro su questo software.
 

Rilevamento oggetti Raspberry Pi utilizzando OpenCV Python



Rilevamento oggetti Raspberry Pi utilizzando OpenCV Python

Il video di YouTube "Object Detection Raspberry Pi using OpenCV Python" mostra come accedere e modificare un codice per il rilevamento di oggetti, in particolare MobileNet SSD. Il tutorial enfatizza la codifica modulare e fornisce suggerimenti per l'utilizzo del codice su diverse piattaforme, incluso Raspberry Pi. Il video mostra come trasformare il codice in un modulo e creare una funzione che rileva oggetti specifici e controlla i risultati del modello. Il relatore mostra anche come modificare il codice per il rilevamento degli oggetti aggiungendo parametri come il valore di soglia e la soppressione non massima. Il video fornisce i file e le istruzioni necessari per impostare il rilevamento di oggetti su un Raspberry Pi e offre una dimostrazione del rilevamento di oggetti specifici. Il presentatore invita gli spettatori a visitare il loro sito Web per informazioni sul download e sull'abbonamento.

  • 00:00:00 Il video mostra come accedere al codice per il progetto di rilevamento degli oggetti e creare una funzione che consenta agli utenti di ottenere informazioni su oggetti specifici. Il codice utilizzato proviene da un video precedente che rileva diversi oggetti utilizzando l'SSD MobileNet. Il tutorial enfatizza anche la scrittura di codice modulare per semplificare la rimozione e l'aggiunta di codice. Oltre a spiegare il codice, il tutor fornisce anche utili suggerimenti su come scrivere e utilizzare il codice su diverse piattaforme, incluso Raspberry Pi.

  • 00:05:00 In questa sezione, il relatore descrive come trasformare il codice precedentemente scritto in un modulo accessibile da altri script. L'oratore dimostra creando una funzione chiamata "get_objects" che accetta un'immagine come input e restituisce un'immagine con rettangoli ed etichette di rilevamento degli oggetti come output. L'oratore mostra anche come utilizzare il parametro "nms" per rimuovere i rilevamenti di oggetti sovrapposti. Alla fine della sezione, il relatore ha creato una funzione modulare che può essere utilizzata per rilevare oggetti in un'immagine con OpenCV e Python.

  • 00:10:00 In questa sezione, il video mostra come aggiungere funzionalità per controllare se visualizzare i riquadri di delimitazione ei nomi delle classi per aumentare o diminuire la frequenza dei fotogrammi. Il video spiega che è possibile impostare un valore booleano per determinare se disegnare i riquadri di delimitazione e quindi mostra come implementarlo nel ciclo for. Il video aggiunge anche la funzione per inviare informazioni sul riquadro di delimitazione e sul nome della classe, consentendo di ricevere le informazioni effettive anziché solo visualizzarle. Infine, il video mostra come aggiungere funzionalità per rilevare oggetti specifici e controllare i risultati del modello.

  • 00:15:00 In questa sezione del video, il presentatore spiega come personalizzare il modulo di rilevamento degli oggetti per rilevare oggetti specifici. L'utente può creare un elenco di oggetti da rilevare annotandoli nell'elenco degli oggetti. Se l'utente lascia vuoto l'elenco, rileverà tutte le classi su cui è stato addestrato. Il presentatore mostra un esempio di come rilevare solo le tazze aggiungendo "tazza" all'elenco degli oggetti. È possibile aggiungere più oggetti all'elenco e il programma rileverà solo quegli oggetti. Il presentatore fornisce anche un modo per eseguire il modulo di rilevamento degli oggetti da un altro modulo utilizzando il modulo principale.

  • 00:20:00 In questa sezione del video, il presentatore spiega come modificare il codice per il rilevamento degli oggetti aggiungendo parametri come un valore di soglia e la soppressione non massima (NMS). Il parametro NMS aiuta a rimuovere i rilevamenti duplicati nell'immagine. Il presentatore mostra come aggiungere questi parametri al codice e dimostra gli effetti della modifica dei loro valori. Più avanti nel video, il presentatore spiega che per eseguire il codice su un Raspberry Pi, è necessario OpenCV versione 4.3 o successiva. Se l'utente non ha installato questa versione in precedenza, può seguire le istruzioni del relatore sul proprio sito web.

  • 00:25:00 In questa sezione, l'istruttore dimostra come impostare il rilevamento di oggetti su un Raspberry Pi utilizzando OpenCV e Python. Ciò comporta la sostituzione di diversi file con l'ultima versione, l'importazione di cv2 e il controllo del numero di versione. L'istruttore fornisce anche i file necessari per il rilevamento degli oggetti e dimostra come modificare il percorso del file in modo che funzioni correttamente. Inoltre, l'istruttore mostra un esempio di rilevamento di oggetti utilizzando una videocamera esterna e osserva che l'elaborazione potrebbe richiedere del tempo. Il codice viene eseguito correttamente e il modello è in grado di rilevare oggetti come bottiglie, tazze e telecomandi.

  • 00:30:00 In questa sezione, il relatore dimostra la capacità di rilevare oggetti specifici utilizzando OpenCV e Python su un Raspberry Pi. Testano il rilevamento cambiando l'etichetta da "remote" a "cup" e poi a "bottle" e procedono a eseguire nuovamente il rilevamento. Il rilevamento sembra funzionare bene sul Raspberry Pi, ma è lento. Il presentatore afferma che proveranno lo stesso rilevamento su un Jetson Nano nel prossimo video per vedere quanto funziona meglio. Invitano inoltre gli spettatori a visitare il loro sito Web per scaricare gratuitamente i file e i codici e ad iscriversi al loro canale.
 

Installa e compila OpenCV python From Source su Raspberry pi 4 e 3



Installa e compila OpenCV python From Source su Raspberry pi 4 e 3

Il video di YouTube spiega due metodi per installare OpenCV per Python su un Raspberry Pi, con il primo che prevede un singolo comando di terminale per installare binari precompilati e il secondo metodo che richiede la creazione di OpenCV dal sorgente. Dopo aver scaricato il sorgente dal repository Github, i passaggi finali della creazione di OpenCV dal sorgente su un Raspberry Pi comportano l'esecuzione dei comandi cmake e make, che potrebbero richiedere diverse ore per essere completati, prima di digitare il comando "sudo make install". Il video mostra come verificare la corretta installazione utilizzando un comando Python. Il video si conclude con un incoraggiamento a mettere mi piace, iscriversi e porre qualsiasi domanda nella sezione dei commenti.

  • 00:00:00 In questa sezione del video, il presentatore spiega due metodi per installare OpenCV per Python su un Raspberry Pi. Il primo metodo prevede l'installazione di binari predefiniti con un singolo comando di terminale, che è semplice ma potrebbe non garantire l'ultima versione di OpenCV. Il secondo metodo consiste nel creare OpenCV dal sorgente, che richiede prima l'installazione di alcune dipendenze, il download del sorgente dal repository Github e la creazione e l'esecuzione di un comando per compilare il sorgente. Entrambi i metodi sono mostrati passo dopo passo nel video.

  • 00:05:00 In questa sezione, il video illustra i passaggi finali dell'installazione e della compilazione di OpenCV Python dal sorgente su un Raspberry Pi 4 o 3. Dopo aver eseguito il comando cmake e quindi il comando make, il cui completamento può richiedere diverse ore, il passaggio finale consiste nel digitare "sudo make install". Per verificare se l'installazione è andata a buon fine, il video mostra come inserire il comando "python3" e quindi "import cv2 as cv" seguito da un'istruzione print. Se il terminale restituisce un messaggio con la versione di OpenCV, l'installazione è andata a buon fine. Il video incoraggia gli spettatori a mettere mi piace e iscriversi al canale e a porre qualsiasi domanda nella sezione dei commenti.
 

Rete neurale nel tuo telefono: dalla formazione alla distribuzione tramite ONNX



Rete neurale nel tuo telefono: dalla formazione alla distribuzione tramite ONNX

In questo video su "Neural Net in your Phone: From Training to Deployment through ONNX", il relatore mostra come addestrare una rete neurale utilizzando l'API della comunità iNaturalist per identificare diverse specie di funghi in base al fatto che siano tossiche o commestibili. Quindi spiegano come distribuire il modello su un iPhone utilizzando il pacchetto Core ML di Apple. Il relatore sottolinea inoltre l'importanza di formattare il modello addestrato nel formato di file ONNX prima di importarlo in Core ML. Il presentatore sottolinea che EfficientNet sarà il futuro modello per la classificazione delle immagini, con la cura richiesta nella selezione del modello, e suggerisce di costruire classificatori per piante, animali o uccelli.

  • 00:00:00 In questa sezione, il presentatore spiega come addestrare un classificatore di immagini di funghi utilizzando l'API della comunità iNaturalist per ottenere centinaia di immagini diverse di tutti i tipi di specie di funghi. Utilizzando Mathematica, hanno archiviato le immagini e le hanno classificate in base al fatto che fossero tossiche o commestibili, sulla base di 11 specie di funghi tossici e 11 commestibili comuni nella loro regione. Le immagini sono state ritagliate e ridimensionate prima del successivo addestramento della rete neurale. Il presentatore dimostra sia con Fly Agarik che con Death Cap, un fungo mortale anch'esso classificato efficacemente con lo stesso metodo.

  • 00:05:00 In questa sezione, il relatore discute il processo di addestramento di una rete neurale per identificare diverse specie di funghi, utilizzando un modello di rete pre-addestrato dal repository di rete. Descrivono come hanno creato etichette di classe e set di addestramento e test e hanno utilizzato l'apprendimento del trasferimento per addestrare il modello con un metodo di discesa del gradiente stocastico. Menzionano anche l'importanza di esportare il modello addestrato nel formato di file ONNX, che è un formato di scambio di reti neurali aperto creato alcuni anni fa dai leader del settore nell'apprendimento automatico.

  • 00:10:00 In questa sezione, il relatore spiega come le reti neurali possono essere distribuite su un dispositivo con sistema operativo iOS utilizzando il pacchetto Core ML di Apple. Per convertire il modello nel formato Core ML, il relatore mostra come utilizzare gli strumenti CoreML per importare vari tipi di modelli di rete, incluso ONNX, e come specificare gli argomenti di pre-elaborazione e le etichette di classe per il set di dati dei funghi utilizzato come esempio. Il relatore osserva inoltre che i modelli Core ML hanno un modo di lavorare simile a quello dei modelli in linguaggio naturale, con codificatore e decodificatore, e sottolinea alcune differenze tra i due formati in termini di valori dei pixel e bias di colore.

  • 00:15:00 In questa sezione, il relatore spiega i passaggi da eseguire per distribuire un modello Core ML su un iPhone. Dimostrano come sostituire il modello MobileNet preesistente su un progetto Xcode con il proprio modello di specie di funghi. Il relatore dimostra che il modello funziona correttamente testandolo su vari funghi trovati nel bosco. Incoraggiano il pubblico a controllare il proprio taccuino Jupyter per ulteriori informazioni.

  • 00:20:00 In questa sezione, il relatore afferma che il modello più performante per la classificazione delle immagini è EfficientNet, che sarà disponibile in futuro. Tuttavia, l'utente deve fare attenzione a non scegliere un modello EfficientNet troppo pesante in memoria. L'oratore mette in guardia contro l'uso del classificatore per cucinare senza la consulenza di esperti, poiché alcuni tipi di funghi possono essere mortali. In futuro, il relatore prevede di creare un flusso di lavoro per la presentazione e offrire post sul blog sull'argomento. Hanno anche in programma di includere esempi per l'audio, come l'identificazione dei canti degli uccelli. Il relatore suggerisce di avviare un gruppo di studio su tali applicazioni e argomenti e sottolinea che il punto ONNX è all'altezza dell'utilizzo di Android.

  • 00:25:00 In questa sezione, il relatore discute diverse opzioni per l'importazione di osservazioni di specie e altre utili funzioni, come l'importazione di ricerca gpif, importazione gpif e dati globali, che possono essere utilizzate per creare classificatori su animali o piante. Il relatore ringrazia anche il pubblico per l'attenzione e lo invita a porre ulteriori domande nel gruppo di machine learning della community.
 

ONNX su MCU



ONNX su MCU

Rohit Sharma parla delle sfide e delle opportunità dell'esecuzione di modelli ONNX su microcontrollori. Sottolinea che mentre questi dispositivi mancano delle risorse dei server ad alte prestazioni, c'è stato un numero crescente di applicazioni di apprendimento automatico per dispositivi minuscoli a causa del miglioramento delle risorse hardware e degli sforzi della comunità AI per ridurre le dimensioni del modello. Sharma illustra due strumenti per implementare con facilità l'apprendimento automatico sui microcontrollori: DeepSea, un compilatore anticipato open-source che supporta Python e consente agli sviluppatori di creare algoritmi ML personalizzati, e Canvas, una piattaforma senza codice/a basso codice che fornisce oltre 70 minuscole applicazioni ML che possono essere personalizzate per adattarsi al set di dati dell'utente. Fornisce due casi d'uso per questi strumenti, tra cui un guanto indossabile che traduce i gesti dei segni in parole e il rilevamento di parole deboli per dispositivi con assistenza vocale come Amazon Echo.

  • 00:00:00 In questa sezione, Rohit Sharma discute le sfide e le opportunità dell'esecuzione di modelli ONNX su microcontrollori, che sono piccoli dispositivi che funzionano a batterie per mesi. Sebbene questi dispositivi non dispongano delle risorse di elaborazione di server ad alte prestazioni con acceleratori o computer a scheda singola, il numero crescente di applicazioni di apprendimento automatico in esecuzione su dispositivi minuscoli è dovuto al fatto che i fornitori di MCU continuano a migliorare le risorse hardware mentre la comunità di ricerca sull'IA sta lavorando per ridurre le dimensioni del modello. Sharma spiega che tutte le minuscole app ML sono app AI edge, ma non tutte le app AI edge sono piccole app ML, poiché la differenza è radicata nel consumo energetico. Passa quindi a discutere il processo di compilazione di modelli ONNX con DeepSea, un compilatore di librerie di deep learning open source e indipendente dal fornitore e un framework di inferenza progettato per dispositivi con fattore di forma ridotto, inclusi microcontrollori, IoT e dispositivi edge.

  • 00:05:00 In questa sezione, il relatore descrive due strumenti per implementare facilmente l'apprendimento automatico sui microcontrollori. Il primo strumento è DeepSea, un compilatore AOT (ahead-of-time) open source che supporta Python e consente agli sviluppatori di creare algoritmi di machine learning personalizzati. Il secondo strumento è Canvas, una piattaforma no-code/low-code che fornisce una galleria di oltre 70 minuscole applicazioni di machine learning. Canvas consente la personalizzazione di queste applicazioni per creare un piccolo modello di machine learning adatto al set di dati dell'utente. L'oratore ha anche fornito due casi d'uso per questi strumenti: un guanto indossabile che converte i gesti dei segni in parole pronunciate e il rilevamento di parole deboli per abilitare dispositivi con assistenza vocale come Amazon Echo.