Stereo Vision
Scopri come la visione stereo ricava la profondità 3D per l’IA. Apprendi come funziona, quali sono le sue applicazioni e come integrarla con l’ultima versione di Ultralytics YOLO26.
La visione stereo, nota anche come visione stereoscopica, è una tecnica di visione artificiale usata per estrarre informazioni sulla profondità 3D da immagini digitali. Confrontando due o più immagini 2D della stessa scena acquisite da angolazioni leggermente diverse, imitando la visione binoculare umana, i sistemi AI possono calcolare con precisione la distanza dagli oggetti. Questa capacità è fondamentale per l'intelligenza spaziale, che permette alle macchine di navigare nell'ambiente e interagire in sicurezza con gli oggetti fisici.
Come funziona la visione stereo#
Il processo si basa sull'individuazione delle differenze tra le viste della telecamera sinistra e destra. La sfida principale è il problema della corrispondenza, che consiste nell'identificare esattamente gli stessi pixel o le stesse feature in entrambe le immagini. Una volta individuati i punti corrispondenti, il sistema calcola lo spostamento orizzontale e crea una mappa di disparità.
In una mappa di disparità, spostamenti maggiori indicano oggetti più vicini, mentre spostamenti minori indicano oggetti più lontani. Tramite la triangolazione, la mappa viene poi convertita in una nuvola di punti 3D densa. Se in passato questi calcoli si basavano soprattutto su algoritmi matematici tradizionali, gli approcci moderni si affidano sempre più alle reti neurali convoluzionali (CNN) e al deep learning per migliorare la precisione della corrispondenza delle feature in condizioni di illuminazione complesse o in aree prive di texture, come illustrato dalle recenti ricerche IEEE sulla visione artificiale.
Visione stereo e stima della profondità monoculare#
È importante distinguere la visione stereo dalle tecniche di stima della profondità che utilizzano una sola telecamera. La stima della profondità monoculare usa modelli di deep learning per prevedere strutture 3D a partire da una singola immagine 2D, basandosi su indizi visivi come prospettiva e ombreggiatura. I sistemi stereo, al contrario, misurano direttamente la profondità usando la relazione geometrica tra due obiettivi. I metodi monoculari richiedono meno risorse di calcolo, ma la visione stereo fornisce in genere misurazioni della profondità in tempo reale più precise, essenziali per i sistemi di sicurezza critici.
Applicazioni AI nel mondo reale#
I sistemi stereo sono fondamentali in diversi settori che richiedono il rilevamento di oggetti 3D nel mondo reale e consapevolezza spaziale.
- Navigazione per la guida autonoma: le tecnologie di guida autonoma sviluppate da aziende come Waymo usano telecamere stereo per misurare con precisione in tempo reale la distanza da pedoni, altri veicoli e ostacoli, fornendo questi dati precisi sulla profondità ai sistemi di modellazione predittiva per pianificare percorsi sicuri.
- Automazione della robotica industriale: i robot di produzione usano la visione stereo per le complesse attività di prelievo da contenitori. Calcolando la profondità e l'orientamento esatti dei pezzi sparsi su un nastro trasportatore, i sistemi robotici possono allineare perfettamente le pinze, migliorando l'efficienza nelle pipeline di produzione intelligente.
- Imaging medico avanzato: i robot chirurgici e i sistemi diagnostici utilizzano telecamere stereoscopiche per offrire ai chirurghi una vista 3D altamente accurata dell'anatomia del paziente durante gli interventi minimamente invasivi, una tendenza spesso evidenziata nei recenti preprint di arXiv sull'AI in medicina.
Integrare l'AI con i dati stereo#
Spesso gli sviluppatori usano la visione stereo insieme al rilevamento degli oggetti per identificare sia il che cosa sia il quanto è lontano. Il framework OpenCV è comunemente usato per generare mappe di disparità, spesso integrato in pipeline più ampie basate su PyTorch o TensorFlow, mentre i modelli AI gestiscono la percezione. Di seguito trovi un esempio concettuale di rilevamento degli oggetti con Ultralytics YOLO26 e recupero delle relative caselle di delimitazione, che potrebbero poi essere usate per estrarre i valori medi di distanza da una mappa di disparità OpenCV associata.
import cv2
from ultralytics import YOLO
# Load the recommended Ultralytics YOLO26 model for high-speed edge inference
model = YOLO("yolo26n.pt")
# Read the left camera frame (typically used as the primary frame for detection)
left_frame = cv2.imread("left_camera_frame.jpg")
# Run inference to detect objects in the scene
results = model(left_frame)
# Extract bounding boxes to later combine with a stereo disparity map
for result in results:
for box in result.boxes.xyxy:
x1, y1, x2, y2 = map(int, box[:4])
print(f"Detected object bounding box: [{x1}, {y1}, {x2}, {y2}]")
# Depth values can now be extracted from the disparity map within this specific regionProgressi e tendenze future#
L'addestramento e la distribuzione di modelli di percezione avanzati sono diventati molto più semplici. Con strumenti come la Ultralytics Platform, i team possono annotare in sicurezza coppie stereo, addestrare modelli robusti ed esportarli in formati ottimizzati come TensorRT per un'inferenza a bassa latenza su dispositivi di edge AI.
I recenti progressi di organizzazioni come lo Stanford Vision and Learning Lab mostrano una tendenza crescente a combinare la visione stereo con i Transformer visivi (ViT) e i modelli fondazionali di Google DeepMind per risolvere più rapidamente il problema della corrispondenza. Inoltre, con l'evoluzione dei modelli AI multimodali di leader come Anthropic e OpenAI, l'integrazione di dati spaziali 3D robusti continuerà ad ampliare le capacità percettive e di comprensione degli agenti AI incarnati.










