Cela fait un moment que je n’ai pas traité des capteurs de profondeur pour la numérisation 3D, car il n’y en a pas eu de nouveaux intéressants depuis quelque temps. Lorsque des personnes me demandent quel capteur acheter pour faire leurs premiers pas dans le monde de la numérisation 3D, je conseille généralement un Structure Sensor (Test) aux propriétaires d’iPad et un 3D Systems Sense 2 (Test) — qui intègre un capteur Intel RealSense SR300 — aux personnes souhaitant utiliser un ordinateur portable ou une tablette Windows 10.
Je souligne toujours que le capteur lui-même ne représente que 50% de l’expérience de numérisation. Le logiciel constitue l’autre moitié. Le Sense 2 est livré avec son propre logiciel Sense for RealSense, bien conçu, et pour le Structure Sensor je conseille soit itSeez3D, soit Skanect, selon le cas d’utilisation.
Mais le SR300 a été remplacé par la dernière série D400 de capteurs de profondeur RealSense d’Intel, et je reçois beaucoup de questions à son sujet en rapport avec la numérisation 3D. Je constate également une forte hausse de la popularité de la gamme Astra d’Orbbec, qui est aussi le fournisseur de capteurs privilégié de HP pour l’ordinateur tout-en-un Sprout Pro G2 (Test) et pour la HP Z Camera récemment introduite (que je teste actuellement en bêta et dont je publierai bientôt le test). Et bien sûr, de nombreuses personnes recherchent sur Google des alternatives à Microsoft Kinect, et ces capteurs sont tous candidats à ce titre.
Matériel

Pour ce test, j’ai donc testé les capteurs à $172.55 Intel RealSense D415 et à $159.99 Orbbec Astra S afin de voir leurs performances pour la numérisation 3D d’objets petits à moyens. Et comme référence, j’ai confronté ces capteurs au RealSense SR300 que j’utilise depuis presque deux ans — aussi bien sous la forme du 3D Systems Sense 2 que dans sa version plus dépouillée (kit de développement), le modèle à $149.99 Creative BlasterX Senz3D.
Quelques éléments méritent d’être signalés avant de poursuivre :
- Le SR300 et l’Astra S sont tous deux des capteurs à courte portée (d’où les noms des modèles). Le D415 a une portée plus longue, mais commence à une distance très proche, ce qui le rend plus adapté à la numérisation d’objets que des capteurs longue portée tels que le RealSense R200 et l’Orbbec Astra (non-S), dont la distance minimale de numérisation est respectivement de 0.5m et 0.6m.
- Il existe également un modèle RealSense D435, qui possède un champ de vision plus large grâce à des objectifs grand-angle et un système d’obturateur global pour toutes les caméras. Ces deux caractéristiques présentent des avantages pour les cas d’utilisation de suivi d’objets ou de personnes qui doivent soit couvrir une grande zone, soit concerner des sujets se déplaçant rapidement, mais elles n’apportent aucun avantage pour la numérisation (lente) de petits à moyens objets ou de personnes.
- Les modes à plus haute résolution de l’Astra S ne fonctionnent qu’à des fréquences d’images très lentes, ce qui les rend moins adaptés à la numérisation à main levée (la numérisation sur plateau tournant fonctionne). Nous y reviendrons plus loin.
- L’Astra S est beaucoup plus grand que les autres capteurs, ce qui éloigne davantage le projecteur du capteur IR. Cela peut compliquer la numérisation des zones difficiles d’accès, masquées par d’autres parties d’un objet.
Enfin, il est bon de savoir que les trois capteurs disposent de filetages standard pour trépied, mais que le SR300 est impossible à monter sur les plateaux de la plupart des grands trépieds, car le filetage n’est pas situé au point le plus bas de l’appareil.Un lecteur a signalé dans les commentaires que, bien que mon Astra S soit doté d’un filetage standard pour trépied 1/4″-20TPI, les modèles récents ont un filetage M6x7.2mm qui pourrait ne pas être compatible avec les trépieds dont vous disposez (les miens ont tous des vis 1/4″). Les modèles RealSense disposent tous d’un unique filetage pour trépied 1/4-20, et la série D400 possède en plus deux filetages M3 à l’arrière.

Logiciel
Pour tester correctement ces appareils, j’avais besoin d’un logiciel qui les prenait tous en charge. Le seul logiciel commercial que je connaisse qui le fasse est RecFusion. J’utilise pour ce test la version à un seul capteur à $99, mais il est bon de savoir qu’il existe également une version multi-capteurs à $499. Avec celle-ci, vous pouvez créer une configuration calibrée avec plusieurs capteurs autour d’un sujet afin de minimiser ou d’éliminer les mouvements et d’augmenter la vitesse de numérisation.
Je publierai bientôt un test complet de RecFusion, dans lequel j’aborderai également ses fonctions d’édition. Mais en résumé, le grand avantage du logiciel est sa prise en charge d’un grand nombre de capteurs et le fait qu’il vous permet de choisir indépendamment toutes les résolutions de profondeur et de couleur disponibles (bien que toutes les résolutions ou combinaisons de résolutions ne semblent pas fonctionner).
Remarque sur la qualité des textures
Un inconvénient de RecFusion qui affecte fortement ce test est la manière dont il capture et gère les données de couleur. Contrairement à la version récente de Skanect, qui propose un mode capable de capturer les images couleur indépendamment des données de profondeur et de projeter ensuite ces images comme textures sur la géométrie, RecFusion utilise strictement une coloration par sommet en interne. Il peut exporter une carte de texture UV dans certains formats de fichier, mais celle-ci sera générée à partir des couleurs par sommet, et non de fichiers image externes. Cela signifie que la qualité des textures n’est pas au niveau d’autres logiciels à mon avis ; je suis donc contraint de me concentrer principalement sur la qualité géométrique des scans dans ce test.
Configuration du test
Bien que tous les capteurs puissent être utilisés à main levée, j’ai choisi de les monter sur un Manfrotto Action Tripod et d’utiliser un simple plateau tournant IKEA SNUDDA. Je peux ainsi m’assurer que les résultats de numérisation ne sont pas influencés par des variables humaines telles que les mouvements de la main. Comme j’ai numérisé depuis un seul angle statique, les modèles obtenus comporteront des trous. Cependant, l’objectif de ce test n’est pas de réaliser des scans complets, mais plutôt d’examiner les résultats relatifs entre les capteurs.

Comme vous pouvez le voir, j’utilise deux boîtes à lumière avec éclairages de studio continus, mais c’est uniquement pour une meilleure qualité de texture (ce qui n’est pas le point fort de RecFusion). La capture de profondeur n’est pas du tout influencée par les éclairages artificiels — les capteurs de profondeur peuvent même « voir » la profondeur dans l’obscurité totale. À noter : le SR300 et l’Astra S n’aiment pas la lumière du soleil provenant de fenêtres proches, tandis que le D415 est conçu pour fonctionner également en extérieur. Je ne l’ai toutefois pas encore testé.
Il est appréciable que RecFusion permette de régler l’orientation du capteur à la verticale. Pour les objets hauts, cela est souvent préférable car la taille d’image des capteurs est rectangulaire. Voici à quoi ressemblent les flux de couleur et de profondeur, et comment ils se traduisent en un nuage de points 3D en temps réel :

Les réglages par défaut du SR300 (ci-dessus, une image fixe) sont plutôt bons. Et comme la portée s’arrête à 2 mètres, je n’ai eu aucun problème avec le mur du fond de mon bureau. L’image de profondeur n’est peut-être qu’en résolution VGA, mais elle est très stable et presque dépourvue de bruit. L’histoire est différente avec la carte de profondeur du D415 (ci-dessous, un GIF animé), qui présente beaucoup de bruit mobile — quelle que soit la résolution :

Lors de mes tests, j’ai constaté que le bruit important affectait à la fois le suivi pendant la numérisation et la qualité du scan. Régler la coupure de profondeur à 1 mètre a aidé (puisque le capteur peut détecter jusqu’à 10 mètres), même si l’image 3D ne se forme qu’à l’intérieur du volume englobant.
Remarque sur les résultats D400
Après la publication de cet article, le CTO d’Intel RealSense a commenté avec des conseils sur la manière d’améliorer les niveaux de bruit et les résultats de numérisation de la série D400. Je vais étudier cela et mettre à jour l’article en conséquence si les résultats s’améliorent effectivement.
Avec l’Astra S, RecFusion affichait les modes couleur et profondeur haute résolution à 30fps, tandis que les spécifications indiquent 5-7fps.

Mais si vous regardez attentivement le coin inférieur droit, vous pouvez voir que la fréquence d’images combinée réelle chute à 3fps avec la résolution de profondeur la plus élevée sélectionnée. C’est très faible, même pour la numérisation sur plateau tournant. Cela pourrait être une limitation de la connexion USB 2.0 du capteur Orbbec, contre USB 3.0 sur les appareils RealSense. D’une manière ou d’une autre, la résolution couleur la plus élevée ne diffusait que des parasites colorés statiques.
Résultats
Remarque sur les résultats D400
Après la publication de cet article, le CTO d’Intel RealSense a commenté avec des conseils sur la manière d’améliorer les niveaux de bruit et les résultats de numérisation de la série D400. Je vais étudier cela et mettre à jour l’article en conséquence si les résultats s’améliorent effectivement.
Mais examinons maintenant quelques résultats ! Ce que vous voyez dans l’intégration Sketchfab ci-dessous est (de gauche à droite) : le résultat du SR300 avec la résolution de profondeur 640×480 ; le résultat du D415 en résolutions 640×480 et 1280×720, et le résultat de l’Astra S en résolutions 640×480 et 1280×1024.
Remarque : tous les modèles ont été capturés avec la résolution de volume de RecFusion réglée sur 512×512, ce qui se traduit par une « taille de voxel » de 2mm, ce qui signifie qu’elle ne capturera pas les détails plus petits que cela. Théoriquement, ces capteurs ont une résolution de profondeur supérieure à cette valeur à courte distance (la résolution dépend de la distance). Par exemple, Intel indique que la série D400 est inférieure à 1% de la distance, soit ~1mm à 1m. Mais toute résolution supérieure s’est révélée trop exigeante pour mon Surface Book avec GTX965 et 2GB de VRAM. RecFusion affichait simplement une erreur indiquant qu’il ne pouvait pas aller plus fin — du moins en temps réel*.
*Remarque sur la reconstruction en temps réel et hors ligne
Après avoir publié cet article, j’ai poursuivi mon test complet de RecFusion (bientôt disponible !) et j’ai découvert sur le site web qu’il prend également en charge la reconstruction hors ligne sur le CPU, en plus de la reconstruction en temps réel sur le GPU. Cependant, je n’ai pas réussi à trouver le panneau Compute Unit décrit sur la page du tutoriel, qui devrait vous permettre de choisir le mode CPU ou GPU. J’ai contacté le développeur pour obtenir des conseils à ce sujet et mettrai l’article à jour en conséquence. Je suis particulièrement curieux de l’amélioration de la résolution couleur lorsque je pousse la résolution des voxels au maximum.
https://sketchfab.com/models/2e10777289b44ad2b3bd935df5ff6408
Pour commencer, examinons rapidement les couleurs. De loin, elles sont toutes plutôt correctes, mais en zoomant, elles sont floues. Puisque RecFusion réalise une coloration par sommet, augmenter la résolution de volume peut éventuellement donner des textures légèrement meilleures, mais je ne peux pas dire dans quelle mesure cela est significatif. De plus, une résolution supérieure serait excessive pour le réglage de profondeur 640×480 ; vous vous retrouveriez donc simplement avec un nombre de polygones inutilement élevé.
Appuyez sur 3 de votre clavier pour voir l’intégration en mode MatCap sans les textures. Le SR300 a rendu le buste un peu potelé pour une raison quelconque, mais dans l’ensemble la géométrie est très propre (encore une fois, les trous sont dus à la numérisation sous un seul angle depuis un trépied).
Le résultat « basse résolution » du D415 semble révéler que le capteur utilise des motifs circulaires de lumière structurée, ou quelque chose de ce genre, car des déformations circulaires sont visibles à la surface. Il n’y a pas non plus beaucoup de définition, peut-être à cause du bruit normalisé. Ce bruit mobile a été lissé sur la surface réelle car le logiciel fusionne les données d’image au fil du temps, mais il reste visible sur le dessus du modèle. La version « haute résolution » comporte un peu plus de détails (regardez les yeux). Cela aurait peut-être pu être davantage le cas avec un réglage de résolution de volume plus élevé, mais je doute que cela soit significatif en raison du bruit important.
Les résultats de l’Astra S comportent quelques erreurs, mais sont globalement lisses et même le modèle « basse résolution » contient davantage de définition que le modèle SR300 avec la même résolution de profondeur 640×480. Le modèle « haute résolution » est un peu plus défini, mais contient également un peu plus de bruit de surface. Et puisque la numérisation a été réalisée à 3fps, c’était aussi la session de numérisation la plus lente de toutes.
Vient ensuite le scan d’une tête en mousse grandeur nature. J’ai choisi cet objet parce qu’il ne possède pas beaucoup de détails et présente une surface très lisse, ce qui rend le suivi plus difficile (en particulier à l’arrière) et le bruit plus facile à repérer. Pour cette comparaison, j’ai numérisé avec les 3 capteurs en résolution 640×480. J’ai complètement écarté la couleur puisque la tête en mousse est de toute façon entièrement blanche.
https://sketchfab.com/models/a42b4da4bd4344058fd6f9c5398e0362
Dans cette comparaison, l’influence du bruit (probablement encore exagéré par la surface blanche) sur le D415, à la fois sur le suivi et la qualité de capture, devient très claire — c’est horrible ! Le visage est complètement différent du réel et, si vous regardez l’arrière, vous pouvez voir qu’il n’a pas capturé la petite indentation dans le crâne, alors que les deux autres capteurs n’ont eu aucun problème avec cela.
En comparant les résultats des deux capteurs à courte portée, vous pouvez constater qu’ils sont très similaires en matière de détails, mais le scan de l’Astra S est plus lisse et comporte moins de déformations.
Pour terminer, un scan d’un vieux vase de 30cm de haut avec les trois capteurs :
https://sketchfab.com/models/0d6662b7694d4192a4a740ff077744e9
Au fait, la qualité des couleurs en termes de teinte, saturation et luminosité peut être facilement contrôlée dans RecFusion — tant à l’étape de capture qu’après coup — mais je n’y ai simplement prêté aucune attention ici. De plus, les déformations du scan de l’Astra S sont probablement dues au fait que son projecteur et son capteur sont plus éloignés l’un de l’autre par rapport aux ensembles RealSense, ce qui devient problématique lors de la numérisation d’objets plus petits, surtout depuis un angle fixe.
Bien qu’un objet de cette taille soit tout juste dans la zone de confort d’un capteur de ce type, il est clair que le D415 présente le plus de bruit et que les surfaces du SR300 et de l’Astra S sont similaires, ce dernier ayant l’avantage en matière de lissage global.
Conclusion
Tout d’abord, permettez-moi de répéter que je ne peux pas évaluer dans ce test la qualité de capture des couleurs pour le texturage avec les caméras RGB natives, en raison de la nature par sommet de RecFusion. En général, les deux capteurs RealSense devraient offrir une meilleure qualité de texture avec leurs caméras RGB Full HD (~2 mégapixels), tandis que l’Orbbec Astra S ne peut capturer des textures qu’en résolution VGA (~0.3 mégapixel), du moins à une fréquence d’images convenable pour la numérisation 3D. Mais même une caméra Full HD ne suffira pas pour créer des ressources de qualité destinées à des usages tels que la création de ressources pour le développement de jeux et de VR/AR ou les applications 3D mobiles en temps réel. C’est pourquoi HP a ajouté une caméra RGB externe de 14.2 mégapixels à l’ensemble de capteurs Astra S pour ses produits Sprout G2 (Test) et Z Camera (test bientôt disponible !), combinée à un logiciel capable d’effectuer un mappage de texture UV asynchrone.
Besoin de conseils personnalisés ?
Vous voulez savoir quel capteur de profondeur est le mieux adapté à votre cas d’utilisation — ou si un capteur de profondeur est d’abord la meilleure technologie pour cela ?
Je conseille des particuliers et des startups, ainsi que de grandes entreprises du Fortune 50 ; n’hésitez donc pas à m’envoyer un e-mail concernant vos défis de numérisation 3D.
Mais peut-être que la couleur ne vous importe pas du tout ! Dans ce cas, il est clair que les derniers capteurs de profondeur de la série D400 d’Intel, ou du moins le D415 (mais je pense fermement que le D435 offre des performances similaires), ne constituent pas une avancée pour la numérisation 3D par rapport au capteur courte portée SR300 de la génération précédente. Je ne sais pas si cela peut être corrigé par logiciel, mais les niveaux de bruit importants de mon D415 le rendent inacceptable pour la numérisation 3D, tant en termes de suivi que de capture géométrique effective.
Remarque sur les résultats D400
Après la publication de cet article, le CTO d’Intel RealSense a commenté avec des conseils sur la manière d’améliorer les niveaux de bruit et les résultats de numérisation de la série D400. Je vais étudier cela et mettre à jour l’article en conséquence si les résultats s’améliorent effectivement.
Cela vaut bien entendu pour les petits objets que je teste dans cet article. Le D415 peut numériser jusqu’à un impressionnant 10 mètres, ce que je testerai bientôt. À une plus grande distance et pour des objets plus grands ou des intérieurs, les niveaux de bruit pourraient être plus acceptables.
Pour les objets, mon conseil serait d’acheter un SR300 si la capture des couleurs est importante pour vous, ou d’acheter un Astra S si vous accordez davantage d’importance aux surfaces lisses dans la géométrie. Vous pourriez aussi attendre la sortie de la HP Z Camera, puisqu’elle intègre une caméra RGB secondaire haute résolution et un logiciel de mappage de texture UV de qualité, mais vous devrez attendre mon test pour savoir si cette combinaison fonctionne — et prévoir un budget un peu plus élevé puisque le prix « commencera à $599 » selon HP.
Je publierai ensuite un test complet de RecFusion et de ses fonctions d’édition. Suivez-moi sur LinkedIn, Facebook ou Instagram et soyez les premiers informés lorsque cet article sera en ligne !