Passer au contenu principal
est notre conteneur d’enregistrement multi-caméras, produit lorsque vous enregistrez dans Discovery. Le contenu est au format MJPEG, donc chaque image du fichier est déjà un JPEG complet — la lecture ne nécessite qu’un seul cv2.imdecode, et l’exportation est une copie d’octets sans réencodage ni perte de qualité.

Enregistrement DWVO dans Discovery

Nouveau sur DWVO ? Commencez ici pour diffuser et enregistrer des fichiers .dwvo.

Prérequis

  • Python (version 3.x)
  • opencv-python, numpy et pillow
  • Un enregistrement .dwvo — les exemples ci-dessous utilisent test.dwvo

Configuration

Clonez le dépôt OpenCV Guides et ouvrez le dossier de ce guide, puis créez un environnement virtuel et installez les dépendances :

Lecture

main.py décode chaque caméra et les affiche côte à côte dans une seule fenêtre OpenCV.
La lecture est calée sur un rythme fixe : si le décodage prend un retard équivalent à une image complète, cette image est ignorée plutôt qu’affichée en retard, afin que la vidéo reste à la vitesse de l’horloge murale.

Exportation en JPEG

Comme DWVO stocke déjà du MJPEG, export.py copie chaque image directement sur le disque — sans décodage ni perte de qualité.
La sortie est un répertoire par caméra, numéroté au format KITTI :

PNG sans perte (jeu de données KITTI)

dwvo_to_kitti.py produit la même arborescence mais décode via Pillow afin de pouvoir générer du PNG sans perte. Utilisez-le lorsqu’un outil en aval n’accepte pas le JPEG ; sinon export.py est plus rapide.

Lire du DWVO par programmation

Dans dwvo.py, DWVOReader itère sur les blocs d’horodatage, DWVOWriter les écrit, et combine_dwvos() concatène les enregistrements qui partagent un même en-tête.

FAQ

Dans Discovery, certaines caméras nécessitent de définir le FPS manuellement. S’il était réglé à 30 FPS alors que la vidéo était diffusée à 60 FPS, le fichier .dwvo enregistre 30 FPS dans ses métadonnées et indique aux applications de lire à 30 FPS. Remplacez cette valeur lors de la lecture avec --fps.

Informations supplémentaires

Pour plus de détails, des exemples dans d’autres langages, et le code source complet des scripts ci-dessus, consultez le dépôt OpenCV Guides.

Dépôt OpenCV Guides

Code source du lecteur DWVO, de la lecture, de l’exportation et de la conversion KITTI.