Objectif : récupérer une image ou un flux d’image de la caméra
- Durée : 15 minutes
- Niveau de difficulté : facile
- Objectif : explorer la fonctionnalité de capture d’images
Les prérequis
- Avoir installé et activé Cozmo SDK (consulter notre tutoriel Cozmo SDK : comment activer le mode SDK de Cozmo)
- Avoir établi la connexion entre Cozmo et l’ordinateur : Cozmo SDK : deux méthodes pour se connecter au robot
Accéder à la caméra du robot Cozmo
Présentation de la caméra de Cozmo
Cozmo dispose d’une camera VGA 30 embarquée. Celle-ci fournit des images en noir et blanc de dimension 320 x 240 pixels. L’angle de la caméra est de 60° et la longueur de la focale de 290 mm. Cozmo possède également un logiciel de reconnaissance faciale qui ouvre de nombreuses possibilités d’applications.
Récupération d’une image
Pour récupérer une image depuis la caméra de Cozmo, il faudra effectuer les deux étapes ci-dessous :
- Activer le streaming vidéo du robot auquel vous êtes connecté : robot.camera.image_stream_enabled = True
-
Récupérer l’image
elle-même via l’objet robot.world.latest_image :
latest_image = robot.world.latest_image
L’activation du streaming vidéo se fait par un paramètre de la caméra, qui va activer le flux caméra. L’objet latest_image est un objet CameraImage renvoyé par le robot. Ces images peuvent être annotée. Nous verrons cela dans un prochain tutoriel.
Ci-dessous, un exemple de code qui va servir à récupérer l’image de la caméra avec un rafraîchissement de 100 ms :
Ce code se contente uniquement de récupérer l’image. Nous allons donc l’améliorer afin de créer un streaming vidéo avec ces images caméra.
Streaming vidéo du flux caméra
Ici, nous allons utiliser TkInter (une librairie très simple d’utilisation permettant de construire des interfaces graphiques avec Python) pour afficher le streaming vidéo de Cozmo dans un fenêtre dédiée. Cette classe est disponible sur notre repository GitHub de même que l’exemple complet.
Vous devriez maintenant voir le streaming vidéo de la caméra de Cozmo sur l’écran de votre PC.
Informations supplémentaires sur le streaming vidéo avec Cozmo
La caméra de Cozmo peut fournir des images en 640 x 480 pixels, mais le firmware ne supporte que des images de résolution inférieure pour le moment.
De même, la caméra du robot perçoit les couleurs, mais la transmission des vidéos se fait en noir et blanc pour économiser la bande passante utilisée.