La caméra LiDAR Onion Tau est une petite caméra à détection de profondeur basée sur le temps de vol (ToF) qui ressemble et fonctionne un peu comme une webcam USB, mais avec une très grande différence: les cadres du Tau comprennent 160 x 60 « pixels ”Des informations de profondeur ainsi que des niveaux de gris. Ces données sont facilement accessibles via une API Python, et des exemples de scripts facilitent la mise en service rapide. L’objectif est d’être une option abordable et facile à utiliser pour les projets qui pourraient bénéficier de la détection de profondeur.

Lorsque le Tau a été annoncé sur Crowd Supply, j’ai immédiatement passé une pré-commande pour environ 180 $. Depuis lors, les gens d’Onion ont eu la gentillesse de m’envoyer une unité de pré-production, et j’ai joué avec l’appareil pour avoir une idée de son fonctionnement et pour me faire une idée du type de projets qu’il impliquerait. être un bon choix pour. Voici ce que j’ai appris jusqu’à présent.

Qu’est ce que ça fait?

Le moyen le plus simple de visualiser ce que fait la caméra est d’utiliser les exemples d’applications, en commençant par Tau Studio. Il s’agit d’une application Web qui s’exécute localement et peut être visualisée dans n’importe quel navigateur, et affiche une carte de profondeur en direct et un nuage de points 3D générés par la caméra connectée.

Capture d’écran de Tau Studio montrant le nuage de points 3D, la carte de profondeur (en haut à droite) et l’échelle de gris (en bas à droite).

Tau Studio (et en particulier la génération de nuages ​​de points) fonctionne mieux dans les applications à l’échelle de la pièce. Le nuage de points devient bizarre si les choses se rapprochent trop de la caméra, mais plus à ce sujet dans un instant.

C’est pour quoi?

Les données de profondeur 3D générées par la caméra Tau permettent à un projet de prendre des décisions basées sur des mesures de distance dans des espaces réels. La façon dont cela fonctionne est que chaque image de profondeur de la caméra peut être considérée comme un tableau de mesures de profondeur 160 x 60 représentant la vue de la caméra, mais elle peut également fournir des données supplémentaires.

Un peu de Python suffit pour demander des informations telles que des informations de profondeur, une carte de profondeur de couleur ou une image en niveaux de gris. Les cadres sont également presque faciles à convertir en objets OpenCV Mat, ce qui signifie qu’ils peuvent être facilement passés aux opérations OpenCV telles que la détection de blob, la détection de bord, etc. Le matériel et l’API prennent même en charge la possibilité de brancher et d’utiliser plusieurs caméras en même temps, configurées de manière à ne pas interférer les unes avec les autres.

Appareil et configuration

Laissez cette fenêtre découverte, sinon la caméra ne fonctionnera pas correctement. (En fait, je recommande de le recouvrir d’un peu de papier et de regarder à quel point la sortie change, juste pour le plaisir.)

L’Onion Tau est assez petit, avec quatre trous de montage de taille M3 et des côtés plats qui le rendent facile à monter ou à enfermer, et un seul connecteur USB-C. Il a un seul objectif, et à côté de l’objectif se trouve une fenêtre rectangulaire sombre à travers laquelle les émetteurs infrarouges clignotent pendant que l’appareil photo fonctionne. Assurez-vous de laisser cette zone découverte, sinon cela ne fonctionnera pas correctement.

L’alimentation et les données sont gérées via le connecteur USB-C et un câble court est inclus avec l’appareil photo. J’ai trouvé qu’un câble plus long était extrêmement utile pendant les premières étapes de jeu avec le matériel. J’ai utilisé un câble d’extension actif USB 3.0 de haute qualité de 5 mètres de long, qui semblait fonctionner correctement. Au début de l’utilisation, je déplaçais la caméra de toutes sortes de façons tout en exécutant un exemple de code sur mon ordinateur de bureau et en regardant les résultats. C’était une bouée de sauvetage car cela me permettait de déplacer librement la caméra tout en expérimentant.

Il existe un bon guide de démarrage qui décrit tout ce qui est nécessaire pour être opérationnel, mais pour avoir une bonne connaissance pratique de ce à quoi la caméra est (et n’est pas) bonne, il vaut la peine d’aller un peu plus loin que ce que ce guide énonce. .

Test et renforcement de la familiarité

Si j’avais un conseil à donner aux gens qui jouent avec le Tau pour voir ce qu’il fait et ce qu’il ne fait pas bien, ce serait celui-ci: ne vous arrêtez pas après avoir utilisé Tau Studio. Tau Studio est une belle démo interactive, mais elle ne donne pas une idée complète de ce que la caméra peut faire.

Voici un exemple de ce que je veux dire: le nuage de points dans l’image ci-dessous se transforme en un désordre rouge en forme de sablier si quelque chose est trop proche de la caméra. Mais cela ne signifie pas que les données de la caméra sont des déchets. Si l’on regarde la fenêtre Profondeur (en haut à droite du nuage de points), il est clair que la caméra capte des données bien mieux que le nuage de points déformé ne le laisserait entendre.

Se rapprocher trop de l’appareil photo sature le sujet en IR (représenté en violet sur la carte de profondeur). Le nuage de points panique également dans un désordre pincé, mais la carte de profondeur montre que la caméra peut toujours voir mieux que le rendu du nuage de points ne l’implique.

C’est pourquoi il est important de ne pas se limiter à regarder le nuage de points pour décider ce que la caméra peut et ne peut pas faire. Le nuage de points 3D est bien sûr, mais la vue en profondeur donne une meilleure idée de ce que la caméra peut réellement sens.

Pour avoir une idée complète des capacités de la caméra, assurez-vous d’exécuter les autres exemples et de jouer avec les paramètres de configuration à l’intérieur. J’ai trouvé les exemples distance.py et distancePlusAmplitude.py particulièrement utiles, et j’ai joué avec la modification des valeurs de setIntegrationTime3d (un peu comme un réglage d’exposition), setMinimalAmplitude (des valeurs plus élevées filtrent les choses reflétant moins de lumière), et setRange (ajuste la gamme de couleurs dans la carte de profondeur) étaient les plus instructifs. Le référentiel GitHub contient l’exemple de code et la documentation de l’API est disponible ici.

En général, plus le temps d’intégration est élevé, mieux la caméra détecte la profondeur et traite les objets moins coopératifs. Mais si les objets sont saturés d’IR (représenté par le violet dans la carte de profondeur), réduire le temps d’intégration peut être une bonne idée. La vue d’amplitude est une représentation visuelle de la quantité de lumière réfléchie captée par le capteur et constitue un moyen pratique d’évaluer rapidement une scène. Un réglage d’amplitude minimale plus élevé a tendance à filtrer les objets plus petits et plus éloignés.

Qu’est-ce que le Tau est le meilleur à

Le Tau semble fonctionner le mieux dans ce que j’appellerai des opérations «à bout de bras et à l’échelle de la pièce», ce qui signifie que le point idéal est les zones et les plages de la taille d’une pièce, sans que rien ne se rapproche trop de la caméra elle-même. Pour ce type d’opération, les paramètres par défaut de la caméra fonctionnent très bien.

L’appareil photo ne traite pas de très petits objets à courte distance sans avoir à modifier les paramètres, et même dans ce cas, la recherche des résultats peut ressembler un peu à l’insertion d’une cheville carrée dans un trou rond. Par exemple, je n’ai pas été en mesure de faire en sorte que le Tau détecte de manière fiable des choses comme des pièces de jeu de société sur une table, mais il a fait un excellent travail de détection de la disposition de mon atelier.

Vue de Tau depuis le plafond de mon atelier.

Monter le Tau au plafond et regarder la pièce, par exemple, a donné des résultats glorieux et pouvait facilement et de manière fiable détecter les personnes, les objets et les activités dans la pièce.

Les objets réfléchissants (boîtes métalliques et carton imprimé brillant dans mes tests) pourraient être un peu imprévisibles, mais seulement à des distances proches. En général, la détection de la profondeur n’était pas facilement confuse tant que les choses n’étaient pas trop proches de la caméra. Pour des résultats optimaux, il est préférable de garder l’appareil photo à distance (ou plus) de tout ce qu’il regarde.

Une caméra de profondeur abordable, avec l’API Python

Le Tau est petit, facilement montable et peut être considéré comme une caméra en niveaux de gris qui fournit également des cadres composés de 160 x 60 mesures de profondeur. Un peu de code Python est tout ce qu’il faut pour obtenir des données d’image simples de la caméra, et ces images sont presque faciles à convertir en objets OpenCV Mat pour une utilisation dans les fonctions de traitement de la vision. Cela fonctionne mieux dans les applications à pleine longueur et à l’échelle de la pièce, mais il est possible d’ajuster suffisamment les paramètres pour obtenir des résultats décents dans certains cas extrêmes.

Les exemples d’applications Python sont simples et efficaces, et je tiens à réitérer l’importance de jouer avec chacun d’eux pour avoir une idée plus complète de ce que fait et ne fait pas la caméra. Tau Studio, avec son nuage de points coloré rendu en 3D, est un bon outil mais est à certains égards très restreint dans ce qu’il fait. Regarder le nuage de points ne donne pas l’image la plus complète de ce que fait la caméra et de la façon dont elle peut être configurée, alors assurez-vous d’essayer tous les exemples lors de l’évaluation.

LAISSER UN COMMENTAIRE

Rédigez votre commentaire !
Entrez votre nom ici