Deep Learning

Esempio guidato LIDAR

Scopri come caricare dati di nuvole di punti, pre-elaborare i set di dati, definire e addestrare le reti e generare rilevamenti.

Come iniziare:

  1. Scarica il codice
  2. Apri il codice in MATLAB
  3. Attieniti alla procedura indicata di seguito.

Non hai l’accesso?

Tempo necessario:
15–30 minuti
Livello:
Principianti/Intermedio

Ti serve un aggiornamento? Prova un tutorial gratuito e interattivo.

Fase 1

Caricamento di dati di nuvole di punti e delle etichette corrispondenti

Con una rete neurale profonda, puoi esplorare il rilevamento oggetti multiclasse sui dati di nuvole di punti. In questo esempio viene utilizzata la rete PointPillars, che è in grado di rilevare oggetti nella nuvola di punti e di adattare i riquadri di delimitazione orientati attorno agli oggetti stessi.

  • Crea dei datastore per gestire i dati.
  • Crea un fileDatastore per caricare i file PCD dal percorso specificato usando la funzione pcread.
  • Carica le etichette dei riquadri di delimitazione con la funzione boxLabelDatastore per le etichette di verità di base (ground truth).

Aspetti importanti da ricordare:

  • Questa demo utilizza una nuvola di punti a visualizzazione frontale piuttosto che una nuvola di punti a visualizzazione completa. Questo approccio ha due vantaggi: (1) addestramento ed esecuzione più veloci e (2) prestazioni migliori della rete per precisione, somiglianza e orientamento medio.

Fase 2

Pre-elaborazione dei set di dati

A questo punto è tutto pronto per suddividere i set di dati e scoprire le varie tecniche di incremento.

  • Suddividi il set di dati in set di addestramento e test.
  • Esegui l’incremento dei dati di verità di base (ground truth), che aggiunge in modo casuale un numero fisso di oggetti di classe automobile a ogni nuvola di punti. Nell’immagine che segue il 70% dei dati è destinato all’addestramento e la parte restante ai test. Questa tecnica aiuta a migliorare la precisione della rete in fase di addestramento aumentando sinteticamente le dimensioni del set di dati di addestramento.
  • Prova le varie tecniche di incremento dei dati, come il capovolgimento, il ridimensionamento, la rotazione e la traslazione di una nuvola di punti.
  • Verifica il risultato ottenuto.

Aspetti importanti da ricordare:

  • In questo esempio viene utilizzato un set di dati di piccole dimensioni, con un basso numero di frame, per dimostrare il workflow. Per ottenere risultati migliori, addestra la rete con un set di dati più grande.

Fase 3

Definizione delle reti

Inizia a definire i box di ancoraggio, i pilastri per la rete PointPillars e la rete PointPillars.

  • Definisci i box di ancoraggio.
  • Definisci il numero di pilastri della rete PointPillars.
  • Usa la funzione di rilevamento oggetti PointPillar per creare una rete di rilevamento oggetti PointPillar.

Fase 4

Addestramento delle reti

Una volta definita la rete, addestra il modello con il set di dati di addestramento.

  • Specifica i nuovi parametri di addestramento.
  • Usa la funzione trainedPointPillarsObjectDetector per addestrare PointPillars.
  • Se non vuoi addestrare un modello partendo da zero, carica un rilevatore di oggetti pre-addestrato.

Aspetti importanti da ricordare:

  • In un workflow di Deep Learning, la fase di addestramento è quella che richiede più tempo. In alternativa, è possibile utilizzare un modello pre-addestrato per rilevare gli oggetti nella nuvola di punti.

Fase 5

Generazione di rilevamenti

Nella fase finale, utilizza la rete addestrata per rilevare oggetti nei dati di test e visualizza la nuvola di punti con i riquadri di delimitazione.

  • Leggi la nuvola di punti dai dati di test.
  • Usa la funzione detect sulla nuvola di punti di test per ottenere i riquadri di delimitazione previsti e i punteggi di confidenza.
  • Visualizza la nuvola di punti generata rilevata con riquadri di delimitazione. I riquadri di delimitazione verdi rappresentano le automobili nella nuvola di punti generata.

Segui i video con esempi guidati LIDAR:

Accedi ai link qui sotto per proseguire con altre attività LIDAR o continua a esplorare il Deep Learning con applicazioni correlate.

Johanna Pingel

Contatta Johanna, esperta di Deep Learning presso MathWorks