ID articolo: 000038064 Tipo di contenuto: Manutenzione e prestazioni Ultima recensione: 08/07/2021

Distanza non letta per gli oggetti che non sono al centro con telecamere Intel® RealSense™ videocamere utilizzando Python

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Riepilogo

Come modificare il codice utilizzando OpenCV per ottenere la distanza tra Intel® RealSense™ serie D400 e un oggetto

Descrizione

Ho risteso il programma in python per la misurazione della distanza. Link all'origine.

while True:
       frames = pipeline.wait_for_frames()
       depth_frame = frames.get_depth_frame()
       if not depth_frame: continue
        width = depth_frame.get_width()
        height = depth_frame.get_height()
        #print(width,height)
        
        #Calculate distance
        dist_to_center = depth_frame.get_distance(int(width/2), int(height/2))
        print('The camera is facing an object:',dist_to_center,'meters away')


Restituisce la distanza come previsto, ma se sposto l'oggetto in una posizione diversa, non restituisce informazioni sulla distanza.

Soluzione

Nella riga:

dist_to_center = depth_frame.get_distance(int(width/2), int(height/2))

si legge la distanza solo dal centro del flusso, non da qualsiasi punto.

Se si desidera ottenere la distanza da qualsiasi punto, si potrebbe desiderare di consultare l'esempio OpenCV DNN, che classifica e oggetto utilizzando il flusso RGB (rossa, verde, blu) e quindi utilizza il flusso di profondità per calcolare di quanto lontano è l'oggetto dalla videocamera.

Disclaimer

1

Tutti i post e l'utilizzo dei contenuti su questo sito sono soggetti ai Termini di utilizzo Intel.com.

Il contenuto di questa pagina è il risultato della combinazione tra la traduzione umana e quella automatica del contenuto originale in lingua inglese. Questo contenuto è fornito soltanto a titolo di informazione generale e non ha pretese di completezza o accuratezza. In presenza di contraddizioni tra la versione in lingua inglese di questa pagina e la sua traduzione, fa fede la versione inglese. Visualizza la versione in lingua inglese di questa pagina.