Paramètres de la caméra

Il est très difficile d’obtenir de bons résultats de traitement d’image sans de bonnes images. Avec une lumière montée près de l’objectif de la caméra, vous devriez pouvoir utiliser les exemples fournis, le tableau de bord ou Shuffleboard LabVIEW, NI Vision Assistant ou un navigateur Web pour afficher les images de la caméra et jouer avec les paramètres de la caméra.

Modification des paramètres de la caméra

Camera Setting page of the AXIS web UI.

Pour modifier les paramètres sur l’une des caméras Axis supportées (206, M1011, M1013), accédez à la page Web de la caméra en entrant son adresse (généralement 10.TE.AM.11) dans un navigateur Web. Cliquez sur « Setup » dans le coin supérieur droit de la page. Sur le M1013, les paramètres répertoriés ci-dessous sont répartis entre la page « Video Stream » et la page « Camera Steeings » toutes deux répertoriées dans la section Vidéo.

Mise au foyer (focus)

L’Axis M1011 possède un objectif à mise au foyer fixe et aucun réglage n’est nécessaire. La caméra Axis 206 a une lunette noire autour de l’objectif qui tourne pour déplacer l’objectif vers l’intérieur et l’extérieur et régler la mise au point. L’Axis M103 est doté d’une lunette noire et argentée autour de l’objectif pour régler la mise au point. Assurez-vous que les images que vous traitez sont relativement nettes et focalisées sur les distances nécessaires sur votre robot.

Compression

Three images with different compression settings of 0, 30, and 100.

La caméra Axis renvoie des images au format BMP, JPEG ou MJPEG. Les images BMP sont assez volumineuses et prennent plus de temps à transmettre au cRIO et à l’ordinateur portable. Par conséquent, les implémentations WPILib utilisent généralement MJPEG (motion JPEG). Le paramètre de compression varie de 0 à 100, 0 étant des images de très haute qualité avec très peu de compression, et 100 étant des images de très faible qualité avec une compression très élevée. La valeur par défaut de l’appareil photo est de 30, et c’est un bon compromis, avec peu d’artefacts qui dégradent le traitement de l’image.

Note

Il est conseillé aux équipes de considérer comment le paramètre de compression de la caméra affecte la bande passante si vous effectuez un traitement sur l’ordinateur Driver Station, consultez le document « FMS Whitepaper » pour plus de détails.

Résolution

Under image appearance there is a dropdown for setting the resolution.

Les tailles d’image partagées par les caméras prises en charge sont 160x120, 320x240 et 640x480. Les M1011 et 1013 ont des tailles supplémentaires, mais elles ne sont pas intégrées à WPILib. La plus grande taille d’image a quatre fois plus de pixels, mais ceux-ci sont un quart de la taille de ceux de l’image de taille moyenne. La grande image a seize fois plus de pixels que la petite image.

La bande utilisée sur la cible mesure 4 pouces (~ 10 cm) de large, et pour un bon traitement, vous voudrez que la fonction de 4 pouces (~ 10 cm) ait au moins deux pixels de large. En utilisant les équations de distance ci-dessus, nous pouvons voir qu’une image de taille moyenne devrait être fine jusqu’au point où le champ de vision est d’environ 640 pouces (~ 16 m), un peu plus de 53 pieds (~ 16 m), ce qui est presque le double de la largeur du terrain FRC. Cela se produit à environ 60 pieds (~ 18 m), plus long que la longueur du terrain. La petite taille de l’image doit être utilisable pour le traitement à une distance d’environ 30 pieds (~ 9 m) ou un peu au-dessus du milieu du terrain.

La taille de l’image influe également sur le temps de décodage et de traitement. Les images plus petites seront traitées environ quatre fois plus rapidement que la taille suivante. Si le robot ou la cible se déplace, il est très important de minimiser le temps de traitement de l’image car cela augmentera le délai entre l’emplacement cible et l’emplacement perçu. Si le robot et la cible sont immobiles, le temps de traitement est généralement moins important.

Note

Lorsque vous demandez des images à l’aide de LabVIEW (tableau de bord ou code robot), les paramètres de résolution et de fréquence d’images de la caméra seront ignorés. Le code LabVIEW spécifie le débit d’images et la résolution dans le cadre de sa demande de flux (cela ne modifie pas les paramètres stockés dans la caméra, il remplace ce paramètre pour le flux spécifique). Le SmartDashboard et le code du robot en C++ ou Java utiliseront la résolution et la fréquence d’images stockées dans la caméra.

Fréquence d’images (Framerate)

The Video Stream section allows the user to set a maximum frame rate.

Les caméras Axis ont une fréquence d’images maximale de 30 images par seconde. Si vous le souhaitez, une limite peut être définie plus basse pour réduire la consommation de bande passante.

Choisir ou non la couleur

Les caméras Axis renvoient généralement des images en couleur, mais sont capables de désactiver la couleur et de renvoyer une image monochrome ou en niveaux de gris. L’image résultante est un peu plus petite en taille de fichier, et considérablement plus rapide à décoder. Si le traitement est effectué uniquement sur la luminosité ou la luminance de l’image et que la couleur de l’anneau d’éclairage n’est pas utilisée, cela peut être une technique utile pour augmenter la fréquence d’images ou réduire l’utilisation du processeur.

Équilibre du blanc (White Balance)

White balance controls how the camera blends the component colors.

Si la couleur de la lumière est utilisée pour identifier le marqueur, assurez-vous de contrôler les paramètres de la caméra qui affectent la coloration de l’image. Le réglage le plus important est l’équilibre du blanc. Il contrôle la façon dont la caméra mélange les couleurs des composants du capteur afin de produire une image qui correspond au traitement des couleurs du cerveau humain. La caméra possède cinq ou six préréglages, également un réglage automatique qui s’adapte constamment à l’environnement et finalement un réglage de maintien - pour un étalonnage personnalisé.

L’approche la plus simple consiste à utiliser un préréglage défini, qui préserve la saturation de la cible et n’introduit pas de problèmes en teintant les objets neutres avec la couleur de la source lumineuse.

Pour calibrer l’équilibre du blanc, placez un objet de couleur neutre devant la caméra. Une feuille de papier blanc est un objet raisonnable pour commencer. Réglez le paramètre d’équilibre du blanc sur auto, attendez que la caméra ajuste ses filtres (une dizaine de secondes) et réglez l’équilibre du blanc sur hold.

Exposition

The Image Appearance section has a bunch of settings that can be tuned as described below.

La luminosité ou l’exposition de l’image a également un impact sur les couleurs signalées. Le problème est que lorsque la luminosité globale augmente, la saturation des couleurs commence à baisser. Regardons un exemple pour voir comment cela se produit. Un objet rouge saturé placé devant la caméra renverra une mesure RVB haute en rouge et basse dans les deux autres, par ex. (220, 20, 30). À mesure que l’éclairage blanc augmente, la valeur RVB augmente à (240, 40, 50), puis (255, 80, 90), puis (255, 120, 130), puis (255, 160, 170). Une fois que la composante rouge est maximisée, une lumière supplémentaire ne peut qu’augmenter le bleu et le vert, et agit pour diluer la couleur mesurée et réduire la saturation. Si le but est d’identifier l’objet rouge, il est utile d’ajuster l’exposition pour éviter de diluer votre couleur principale. L’image souhaitée paraîtra un peu sombre à l’exception de l’éclat coloré.

Il existe deux approches pour contrôler les temps d’exposition de la caméra. L’une consiste à laisser la caméra calculer automatiquement les paramètres d’exposition, en fonction de ses capteurs, puis d’ajuster le paramètre de luminosité de la caméra à un petit nombre pour réduire le temps d’exposition. Le paramètre de luminosité agit de manière similaire à celui de la compensation d’exposition sur les appareils photo reflex. L’autre approche consiste à calibrer la caméra pour utiliser un paramètre d’exposition personnalisé. Pour ce faire, sur une 206 ou une M1011, définissez le paramètre d’exposition sur auto, présenter la caméra à des lumières vives afin qu’il calcule une exposition courte, puis le mettre en mémoire dans la caméra. Les deux approches se traduiront par une image sombre globale avec des couleurs cibles saturées lumineuses qui ressortent de l’arrière-plan et sont plus faciles à masquer.

Les paramètres d’exposition du M1013 sont un peu différents. L’option de compensation « Enable Backlight » est similaire aux paramètres d’exposition automatique des M1011 et 206 et vous voudrez généralement décocher cette case. Ajustez les curseurs de luminosité et d’exposition jusqu’à ce que votre image soit comme vous le souhaitez. La priorité d’exposition doit généralement être réglé sur « Motion ». Cela donnera la priorité à la fréquence d’images au lieu de la qualité de l’image. Notez que même avec ces paramètres, la caméra M1013 effectue toujours une compensation d’exposition automatique, il est donc recommandé de vérifier fréquemment l’étalonnage pour minimiser tout impact de l’éclairage sur le traitement de l’image. Voir Étalonnage pour plus de détails.