IDS simplifie le traitement des données de caméra 3D
23/08/2018Le nouveau kit de développement logiciel Ensenso SDK 2.2 et des nouvelles variantes 5 MP de la série Ensenso X ont permet d'améliorer de nombreux détails ont ainsi été améliorés au profit d'une intégration nettement plus simple.
Optimisation d'une vaste gamme de modèles en termes de vitesse et de qualité
Les caméras 3D Ensenso conviennent aussi bien aux applications fixes que mobiles. Pour la préhension dans les bacs (Bin Picking) ou les comparaisons d'objets extrêmement précises, la technologie FlexView associée aux algorithmes SC sophistiqués (corrélation séquentielle) optimise l'exactitude des résultats des modèles de caméras N35, X36 1,3 MP, X36 5 MP. De plus, un projecteur haute performance installé de manière mobile projette un modèle aléatoire sur l'objet de test générant une image de l'objet de test avec une structure superficielle différente. Les algorithmes SC calculent ainsi les données d'objet 3D qui bénéficient à chaque fois de deux images supplémentaires (jusqu'à 16) pour augmenter la précision.
De même, pour les applications présentant des objets en mouvement, comme sur les convoyeurs en continu ou les chutes, dans lesquelles la caméra elle-même bouge, les modèles de caméras Ensenso N30, X30 1,3 MP, X30 5 MP sont parfaits. Les algorithmes SGM (Semi-Global-Matching) optimisés peuvent aussi parvenir
à une précision remarquable des informations de profondeur à partir de l'enregistrement d'une seule paire d'images. Le sélecteur de caméras Ensenso proposé sur la page Web de la société IDS aide ainsi à trouver la caméra adaptée à chaque application.
Des yeux plus grands avec un champ de vision plus large
L'intégration de deux capteurs d'image Sony IMX264 5 MP permet d'augmenter la résolution 3D de la famille de caméras 3D Ensenso d'environ 35 % par rapport à la variante actuelle 1,3 MP, pour un gain simultané d'environ 20 % en termes de champ de vision. Pour détecter complètement une euro-palette chargée d'un
volume de 120 x 80 x 100 cm, la distance entre la caméra et l'objet du test peut ainsi être réduite de 1,5 m à seulement 1,25 m. Avantage : la résolution native des capteurs est également exploitée bien plus efficacement. Le faible bruit numérique des capteurs Sony ajouté à cela améliore de façon spectaculaire le calcul des informations de profondeur (précision Z) de 0,43 mm à 0,2 mm.
Adéquation avec des applications embarquées grâce au calcul accéléré
Des capteurs plus performants génèrent naturellement des quantités de données plus importantes ; les temps de traitement qui en résultent peuvent donc être plus longs jusqu'à l'obtention des résultats. Des études de référence avec un modèle 5 MP ont confirmé des temps de traitement environ quatre fois plus longs pour l'appariement des images d'une paire ou jusqu'à l'obtention d'une image 3D complète.
Cependant, les temps de calcul complet d'image 3D d'une corrélation séquentielle avec 16 paires d'images 5 MP haute résolution s'élèvent seulement à 2,5 secondes environ. Pour la plupart des applications, ces temps sont largement suffisants. Pour les applications ayant des exigences plus drastiques en termes de
vitesse, un appariement semi-global (Semi Global Matching, SGM) avec une paire d'images 5 MP fournit une précision suffisante avec un temps de calcul de 1,1 seconde seulement.
Pour contrecarrer cependant les quantités plus importantes de données et les ralentissements associés, d'importants calculs ont été optimisés pour l'architecture CUDA. En fonction du processeur graphique utilisé et de la configuration des algorithmes correspondants, la capacité de calcul supplémentaire des processeurs
graphiques NVIDIA accélère quasiment par cinq les processus de traitement.
Avec la prise en charge CUDA, les applications 3D deviennent également intéressantes pour l'environnement intégré. Exemple de plateforme adaptée : la carte NVIDIA Jetson TX2. Tandis que les calculs stéréo sont capables de recourir ici à 256 coeurs CUDA, un traitement d'image en aval fonctionne comme HALCON pour les périphériques intégrés sur les processeurs ARM disponibles.
Capacité multicaméra
Les bibliothèques logicielles Ensenso offrent une série de fonctions utiles pour utiliser plusieurs caméras dans une application. Grâce à différentes représentations et positions, les systèmes de coordonnées doivent comparer plusieurs caméras entre elles ou avec des points de repère du monde réel et être calibrés sur un
système de coordonnées d'objet uniforme. Si les caméras doivent fonctionner avec un robot dont les mouvements doivent être coordonnés avec les données des caméras, un calibrage main-oeil peut également être réalisé. Un assistant de calibrage intégré assiste l'utilisateur lors de cette opération.
Outre les caméras stéréo Ensenso supplémentaires, le SDK permet aussi d'intégrer et de calibrer très simplement des caméras uEye 2D monoculaires dans une application. La qualité des résultats de test et de mesure dans les applications 3D s'améliorent de manière significative grâce aux capacités des caméras 2D.
Là où les caméras stéréo présentent des difficultés à identifier les objets dans les plages limites, les caméras 2D sont d'une aide incroyable avec la détection des contours et la reconnaissance des couleurs.
Par ailleurs, les caméras 2D permettent aussi de capturer des informations supplémentaires comme les contenus de codes-barres. C'est la raison pour laquelle le logiciel Ensenso prend parfaitement en charge l'intégration des deux technologies. Les modèles de calibrage développés spécialement à cette fin facilitent aussi la conception et l'ajustement dans des systèmes multicaméra. Grâce à plusieurs plaques de calibrage logées de façon partiellement dissimulée dans les caméras, la bibliothèque NxLib détecte des systèmes de coordonnées d'objet de taille quelconque et les positions des caméras entre elles, puis peut les comparer.
La virtualisation au service du développement et du dépannage
Les développeurs d'application devraient surtout bénéficier des extensions « File Cameras » et « Virtual Cameras ». Pour améliorer les algorithmes et les processus, il est essentiel de pouvoir déboguer à plusieurs reprises des données identiques. Une caméra-fichier se comporte sur le système comme une véritable caméra, à la différence que ses images proviennent d'un dossier local avec des jeux de données enregistrés. Il est ainsi possible de re-simuler des séquences d'application avec les données sans avoir à accéder au système réel ou à reproduire les situations. C'est également un outil parfait pour détecter les erreurs : les utilisateurs peuvent enregistrer des jeux de données problématiques pour les mettre à la disposition de spécialistes du traitement des images. Les erreurs peuvent ainsi être reproduites simplement.
Les caméras virtuelles permettent d'exécuter des simulations dans un environnement hors ligne pour évaluer la qualité des données, l'intégrité, la résolution et le bruit d'une scène avec différents modèles de caméra. Pour cela, il est possible d'importer, d'afficher et de positionner librement des objets au format STL ou PLY (formats de fichier usuels pour l'enregistrement de données tridimensionnelles).
Des évaluations de performances sur différentes variantes d'un processus de vérification peuvent ainsi être effectuées sans avoir à concevoir un système réel. Un éditeur de scène comme alternative à la création manuelle de modèles est également déjà intégré. Les applications de prélèvement dans les bacs (Bin
Picking) peuvent alors être facilement simulées, avec différentes pièces et leurs orientations dans les bacs. Une fonction aléatoire offre un nombre illimité de variantes pour les tests, comme c'est le cas dans la réalité avec une alimentation en pièces non triées. Chaque modèle Ensenso peut être créé en tant que « caméra
virtuelle ». Ainsi, chaque modèle éligible peut être choisi via le sélecteur de caméra en ligne et simulé avant la conception du système. Avec ces deux outils, les études préliminaires et les optimisations peuvent aussi être réalisées simplement pour les applications 3D.