RoboDK offre molte utilità per simulare, sviluppare e distribuire sistemi di visione artificiale. RoboDK le permette di simulare telecamere 2D e 3D per sviluppare e addestrare i suoi algoritmi di computer vision. Può anche integrare telecamere 2D e 3D reali.
Questo documento la guiderà attraverso alcuni passaggi per simulare le telecamere.
Le telecamere simulate le permettono di vedere ciò che vede la telecamera. Può specificare i parametri della telecamera, come la dimensione del sensore, la dimensione dei pixel, il campo visivo e sarà in grado di vedere una vista simulata della telecamera. Può collegare le telecamere a un robot o tenerle ferme.
L'aggiunta di una telecamera richiede di collegarla a un punto di ancoraggio per determinare la sua posizione. Questo viene solitamente fatto con un piano di riferimento.
1.Selezioni Programma➔ Aggiungi quadro di riferimento per creare un nuovo sistema di coordinate. Maggiori informazioni nella sezione Come iniziare.
2.Posiziona la cornice nella posizione desiderata della telecamera, dove le coordinate XYZ rappresentano la posizione della telecamera, l'asse Z+ rappresenta la direzione di puntamento e l'asse Y+ rappresenta la direzione di discesa.
3.Selezioni Collega➔ Simula telecamera 2D e selezioni il piano di riferimento.
Ora ha una telecamera predefinita collegata al punto di ancoraggio.
La finestra di anteprima della telecamera le permette di vedere ciò che vede la telecamera. Questa finestra viene aperta automaticamente quando viene aggiunta una nuova telecamera.
Per riaprire la finestra di anteprima di una telecamera, può semplicemente fare doppio clic sulla voce della telecamera nella struttura. Può anche cliccare con il tasto destro del mouse sulla voce nella struttura e selezionare Mostra telecamera. Per impostazione predefinita, la finestra di anteprima può essere ridimensionata, ridotta a icona o chiusa (veda la prossima sezione per ulteriori opzioni).
Quando si apre la finestra di anteprima, l'area di lavoro della telecamera viene mostrata anche nell'ambiente 3D. Può disattivare l'area di lavoro della telecamera facendo clic con il pulsante destro del mouse sulla telecamera e selezionando Mostra area di lavoro della telecamera.
Le impostazioni della telecamera le consentono di personalizzare i parametri della sua telecamera per avere una visione realistica della sua telecamera nell'ambiente simulato di RoboDK.
Per modificare le impostazioni di una telecamera, faccia clic con il pulsante destro del mouse nella struttura e selezioni Impostazioni telecamera. RoboDK fornisce le seguenti impostazioni predefinite per le telecamere appena aggiunte:
●Telecamera: Fornisce il nome dell'ancora (Fotogramma 1)
●Lunghezza focale (mm): lunghezza focale, in millimetri (5,00). Si tratta della distanza tra il centro ottico virtuale dell'obiettivo e il sensore di immagine virtuale della fotocamera. La modifica di questo valore influisce sulla dimensione dei pixel.
●Dimensione del pixel (μm): dimensione del pixel, in micrometri (2,481). La modifica di questo valore influisce sul campo visivo.
●Campo visivo (deg): campo visivo (FOV), in gradi (30.0). Questo influisce sulla dimensione dell'area che può essere percepita dalla telecamera. La modifica di questo valore influisce sulla dimensione dei pixel.
●Distanza di lavoro (mm): distanza di lavoro, in millimetri (2000.0). Si tratta della distanza a cui la fotocamera può percepire l'ambiente; gli oggetti che superano tale distanza non faranno parte dell'immagine.
●Dimensione fissa del sensore: Se viene lasciata deselezionata, la dimensione del sensore della fotocamera (o la risoluzione) viene impostata dalla dimensione della finestra di anteprima della fotocamera, che può essere ridimensionata dall'utente.
●Dimensione del sensore della fotocamera: Per una dimensione fissa del sensore, fornisce la larghezza e l'altezza della fotocamera, in pixel. Il ridimensionamento della finestra di anteprima non influisce sulle dimensioni.
●Consentire il ridimensionamento della finestra: Consente all'utente di ridimensionare la finestra di anteprima senza influire sulle dimensioni del sensore. Ad esempio, ridimensionare la finestra a 720p mantenendo la risoluzione a 4K.
●Vista prospettica: Deselezionando questa opzione, la telecamera si trasformerà in una telecamera ortografica, eliminando le prospettive.
●Tipo di vista: Determina il tipo di visualizzazione della telecamera, come Colore, Scala di grigi o Profondità. Il tipo di visualizzazione cambierà l'immagine di uscita in base ai dati pertinenti.
●Vista bloccata: consente di trascinare la finestra di anteprima sulle barre degli strumenti, anziché una finestra separata e fluttuante.
●Imposta i colori della luce: Sovrascrive i colori della luce predefiniti con i propri (colori della luce ambientale, diffusa e speculare). Non influisce sul colore dello sfondo ed è compatibile solo con il tipo di visualizzazione Colore.
●Colore di sfondo: colore dell'ignoto, dell'infinito. Questo è il colore utilizzato se non si incontra alcun oggetto dal sensore della fotocamera alla distanza di lavoro.
È possibile accedere all'immagine della telecamera per tutti i tipi di vista attraverso l'API. Ad esempio, può recuperare l'immagine a colori (8 bit), l'immagine in scala di grigi (8 bit) e la mappa di profondità (8 bit o 32 bit) come file su disco o come dati semplici.
L'accesso ai dati della telecamera simulata le consente di elaborarli esternamente, attraverso una libreria di immagini di terze parti o la sua.
Sebbene RoboDK non fornisca la propria libreria di imaging né sia associato ad essa, la nostra API Python fornisce esempi di codice per elaborare i dati di immagine 2D e 3D. Vengono trattati i seguenti argomenti:
●Recupera i dati dell'immagine e li visualizza come livestream.
●Calibrare una fotocamera stenopeica utilizzando un modello a scacchiera.
●Stimare la posa della telecamera utilizzando i modelli supportati.
●Apporre l'immagine della telecamera simulata su un feed della telecamera hardware per la realtà aumentata.
●Leggere i codici a barre e i codici QR.
●Rileva caratteristiche come bolle, immagine di riferimento, superficie, contorni, momenti dell'immagine e altro ancora.
●Recupera le mappe di profondità, le elabora in nuvole di punti, ricostruisce le maglie, crea un livestream 3D.
Per accedere ai nostri esempi di API Python, segua questo link: https://robodk.com/doc/en/PythonAPI/examples.html.
La calibrazione dell'occhio è il processo di calibrazione della posizione della telecamera rispetto alla flangia o all'utensile del robot.
RoboDK le permette di simulare il processo di calibrazione occhio-mano. Può utilizzare la stessa procedura per calibrare le telecamere reali rispetto alla flangia o all'utensile del robot.
Può trovare un esempio perfettamente funzionante nella sezione esempi dell'API RoboDK per Python: https://robodk.com/doc/en/PythonAPI/examples.html#camera-hand-eye-calibration.
Questa sezione fornisce alcuni esempi per integrare la computer vision nel suo processo di produzione.
La maggior parte degli esempi che integrano la visione computerizzata richiedono una certa codifica per sfruttare appieno il potenziale degli algoritmi di visione computerizzata.
Può leggere automaticamente i codici a barre, compresi i codici QR, i codici a barre EAN-13 e UPC-A 1D, utilizzando una fotocamera simulata in RoboDK.
Può trascinare le immagini dei codici a barre in RoboDK e creare una nuova telecamera simulata che punta al suo codice a barre.
Troverà l'esempio nella sezione API di RoboDK Python: https://robodk.com/doc/en/PythonAPI/examples.html#qr-codes-and-barcodes
Può ottenere la stima della posizione di un oggetto (posa 2D) utilizzando una telecamera simulata in RoboDK.
Può trovare l'esempio nella sezione Esempi di API di RoboDK: https://robodk.com/doc/en/PythonAPI/examples.html#object-detection