Distribuzione di Ultralytics YOLO su Luxonis OAK#
Le telecamere Luxonis OAK eseguono modelli Ultralytics YOLO on-device dopo la conversione con gli strumenti Luxonis. Si tratta di un flusso di lavoro di distribuzione manuale; Luxonis non è una destinazione nativa di model.export(format="...") di Ultralytics.
Questa guida tratta i dispositivi RVC2 e RVC4. Converti il modello per la piattaforma della tua telecamera: gli artefatti RVC2 e RVC4 non sono intercambiabili. Le famiglie di modelli e le attività supportate possono variare; prima della conversione, consulta la matrice di compatibilità di Luxonis Tools.
Inizia con un checkpoint YOLO .pt supportato, ad esempio yolo26n.pt, oppure con un tuo modello addestrato. L'NN Archive convertito include il modello e i metadati del runtime.
Conversione cloud con Luxonis Hub#
- Accedi a Luxonis Hub e apri Quick Conversion.
- Seleziona YOLO, scegli RVC2 o RVC4 e carica il checkpoint
.pt. - Imposta la forma dell'input e i parametri di conversione, quindi avvia la conversione.
- Al termine, copia l'identificatore del modello convertito per l'esempio di inferenza qui sotto oppure scarica il relativo NN Archive.
Per la conversione automatizzata o per usare dati di calibrazione RVC4 personalizzati, usa HubAI SDK. Segui le istruzioni di installazione in un ambiente Python 3.10 o versioni successive. Detailed Conversion offre la gestione del registro e dataset di calibrazione predefiniti.
Conversione locale con Tools e ModelConverter#
Usa Python 3.10 o versioni successive e Docker. Installa Luxonis Tools seguendo le istruzioni di configurazione upstream, compresi i vincoli sulle dipendenze. Tools prepara gli output YOLO per l'elaborazione di Luxonis; un'esportazione ONNX generica non sostituisce questo passaggio.
# Export the checkpoint to an ONNX NN Archive
tools yolo26n.pt --imgsz "640 640" --output-dir output
# Install the target-platform converter
pip install modelconv==0.6.0Tools scrive yolo26n.tar.xz in una directory con data e ora nel percorso output/. Sostituisci il percorso di esempio qui sotto con quello di questo file. Per la conversione INT8 su RVC4, inserisci immagini rappresentative della distribuzione in calibration_images/; consulta i requisiti dei dati di calibrazione.
modelconverter convert rvc4 --path output/yolo26n_20260807_104858/yolo26n.tar.xz \
calibration.path calibration_images/Per RVC2, usa rvc2 al posto di rvc4; per la conversione FP16 non servono immagini di calibrazione. Per l'inferenza, usa l'NN Archive compilato risultante dalla directory di output di ModelConverter, non l'archivio ONNX intermedio. Consulta ModelConverter per i percorsi di output e le opzioni specifiche della piattaforma.
Esegui l'inferenza su una telecamera OAK#
Collega una telecamera OAK compatibile e installa DepthAI nel tuo ambiente Python:
pip install depthai==3.9.0Per un modello privato su Hub, prima di eseguire lo script imposta DEPTHAI_HUB_API_KEY su una chiave API di Luxonis Hub. Sostituisci your-model-identifier con l'identificatore fornito da Hub oppure usa l'alternativa locale con NN Archive compilato.
import depthai as dai
model = "your-model-identifier"
# In alternativa, usa l'artefatto locale convertito:
# model = dai.NNArchive("path/to/model.rvc4.tar.xz")
visualizer = dai.RemoteConnection()
with dai.Pipeline() as pipeline:
camera = pipeline.create(dai.node.Camera).build()
detection = pipeline.create(dai.node.DetectionNetwork).build(camera, model)
visualizer.addTopic("rgb", detection.passthrough, group="RGB")
visualizer.addTopic("detections", detection.out, group="RGB")
pipeline.start()
visualizer.registerPipeline(pipeline)
while pipeline.isRunning():
if visualizer.waitKey(1) == ord("q"):
pipeline.stop()Apri http://localhost:8082 per visualizzare il flusso RGB e le rilevazioni. DetectionNetwork supporta anche modelli compatibili di segmentazione di istanze e stima della posa. Per altre attività, tra cui la segmentazione semantica e la classificazione, segui le indicazioni di inferenza specifiche per attività.
Per le pipeline di profondità stereo, consulta l'esempio di rilevamento spaziale. Misura le prestazioni del modello sulla telecamera di destinazione usando la guida al benchmarking; il throughput dipende dal modello, dalle dimensioni dell'input, dalla precisione e dalla configurazione della pipeline.
Domande frequenti#
No. Luxonis non è un formato di esportazione nativo di Ultralytics. Converti un checkpoint
.ptcon Luxonis Hub o con il flusso di lavoro locale Tools e ModelConverter, quindi esegui l'NN Archive risultante con DepthAI.No. Gli artefatti RVC2 e RVC4 sono compilati per hardware diverso e non sono intercambiabili, quindi esegui una conversione per ciascuna piattaforma.
Il supporto dipende dagli strumenti Luxonis, non da Ultralytics. Prima della conversione, consulta la matrice di compatibilità di Luxonis Tools e, per eseguire modelli diversi da quelli di rilevamento, leggi le indicazioni di inferenza specifiche per attività.