La technique développée par le MIT fait correspondre rapidement et en douceur les objets à ceux cachés dans des nuages de points denses (à gauche), par rapport aux techniques existantes (à droite) qui produisent des matchs décousus. Crédit :Avec l'aimable autorisation des chercheurs
Une nouvelle technique développée par le MIT permet aux robots d'identifier rapidement des objets cachés dans un nuage de données en trois dimensions, Cela rappelle la façon dont certaines personnes peuvent donner un sens à une image "Magic Eye" à motifs denses si elles l'observent de la bonne manière.
Les robots "voient" généralement leur environnement à travers des capteurs qui collectent et traduisent une scène visuelle en une matrice de points. Pensez au monde de, bien, "La matrice, " sauf que les 1 et les 0 vus par le personnage fictif Neo sont remplacés par des points - beaucoup de points - dont les motifs et les densités décrivent les objets dans une scène particulière.
Les techniques conventionnelles qui tentent de repérer des objets dans de tels nuages de points, ou nuages de points, peut le faire avec rapidité ou précision, mais pas les deux.
Avec leur nouvelle technique, les chercheurs disent qu'un robot peut repérer avec précision un objet, comme un petit animal, qui est autrement obscurci dans un nuage dense de points, dans les secondes qui suivent la réception des données visuelles. L'équipe affirme que la technique peut être utilisée pour améliorer une multitude de situations dans lesquelles la perception de la machine doit être à la fois rapide et précise, y compris les voitures sans conducteur et les assistants robotiques dans l'usine et la maison.
"Ce qui surprend dans ce travail, c'est si je te demande de trouver un lapin dans ce nuage de milliers de points, il n'y a aucun moyen que tu puisses faire ça, " dit Luca Carlone, professeur assistant d'aéronautique et d'astronautique et membre du Laboratoire des systèmes d'information et de décision (LIDS) du MIT. "Mais notre algorithme est capable de voir l'objet à travers tout ce fouillis. Nous atteignons donc un niveau de performance surhumain dans la localisation d'objets."
Carlone et l'étudiant diplômé Heng Yang présenteront les détails de la technique plus tard ce mois-ci lors de la conférence Robotics:Science and Systems en Allemagne.
"Echouer sans savoir"
Les robots tentent actuellement d'identifier des objets dans un nuage de points en comparant un objet modèle - une représentation par points 3-D d'un objet, comme un lapin, avec une représentation en nuage de points du monde réel qui peut contenir cet objet. L'image du modèle comprend « fonctionnalités, " ou des ensembles de points qui indiquent les courbures ou les angles caractéristiques de cet objet, comme l'oreille ou la queue du lapin. Les algorithmes existants extraient d'abord des caractéristiques similaires du nuage de points réel, puis essayez de faire correspondre ces fonctionnalités et les fonctionnalités du modèle, et finalement faire pivoter et aligner les entités sur le modèle pour déterminer si le nuage de points contient l'objet en question.
Mais les données de nuage de points qui affluent dans le capteur d'un robot incluent invariablement des erreurs, sous forme de points mal placés ou mal espacés, ce qui peut considérablement perturber le processus d'extraction et de mise en correspondance des caractéristiques. En conséquence, les robots peuvent faire un grand nombre de mauvaises associations, ou ce que les chercheurs appellent des « valeurs aberrantes » entre des nuages de points, et finalement mal identifier les objets ou les manquer complètement.
Carlone dit que les algorithmes de pointe sont capables de séparer les mauvaises associations des bonnes une fois que les caractéristiques ont été mises en correspondance, mais ils le font en "temps exponentiel, " ce qui signifie que même un cluster d'ordinateurs lourds de traitement, passer au crible des données de nuages de points denses avec des algorithmes existants, ne serait pas en mesure de résoudre le problème dans un délai raisonnable. De telles techniques, tout en étant précis, ne sont pas pratiques pour analyser plus grand, des jeux de données réels contenant des nuages de points denses.
D'autres algorithmes capables d'identifier rapidement des caractéristiques et des associations le font à la hâte, créant un grand nombre de valeurs aberrantes ou de détections erronées dans le processus, sans être au courant de ces erreurs.
"C'est terrible si cela fonctionne sur une voiture autonome, ou toute application critique pour la sécurité, " dit Carlone. " Échouer sans savoir que vous échouez est la pire chose qu'un algorithme puisse faire. "
Les robots tentent actuellement d'identifier des objets dans un nuage de points en comparant un objet modèle - une représentation par points 3-D d'un objet, comme un lapin - avec une représentation en nuage de points du monde réel qui peut contenir cet objet. Crédit :Christine Daniloff, MIT
Une vue détendue
Yang et Carlone ont plutôt conçu une technique qui élimine les valeurs aberrantes en « temps polynomial, " ce qui signifie qu'il peut le faire rapidement, même pour des nuages de points de plus en plus denses. La technique permet ainsi d'identifier rapidement et précisément des objets cachés dans des scènes encombrées.
Les chercheurs ont d'abord utilisé des techniques conventionnelles pour extraire les caractéristiques d'un objet modèle à partir d'un nuage de points. Ils ont ensuite développé un processus en trois étapes pour correspondre à la taille, position, et l'orientation de l'objet dans un nuage de points avec l'objet modèle, tout en identifiant simultanément les bonnes et les mauvaises associations de caractéristiques.
L'équipe a développé un algorithme de « schéma de vote adaptatif » pour élaguer les valeurs aberrantes et faire correspondre la taille et la position d'un objet. Pour la taille, l'algorithme fait des associations entre les entités de modèle et de nuage de points, compare ensuite la distance relative entre les entités dans un modèle et les entités correspondantes dans le nuage de points. Si, dire, la distance entre deux entités dans le nuage de points est cinq fois celle des points correspondants dans le modèle, l'algorithme attribue un "vote" à l'hypothèse selon laquelle l'objet est cinq fois plus grand que l'objet modèle.
L'algorithme fait cela pour chaque association de caractéristiques. Puis, l'algorithme sélectionne les associations qui tombent sous l'hypothèse de taille avec le plus de votes, et les identifie comme les associations correctes, en éliminant les autres. De cette façon, la technique révèle simultanément les associations correctes et la taille relative de l'objet représenté par ces associations. Le même processus est utilisé pour déterminer la position de l'objet.
Les chercheurs ont développé un algorithme distinct pour la rotation, qui trouve l'orientation de l'objet modèle dans l'espace tridimensionnel.
Pour ce faire, c'est une tâche de calcul incroyablement délicate. Imaginez tenir une tasse et essayer de l'incliner juste ainsi, pour faire correspondre une image floue de quelque chose qui pourrait être cette même tasse. Il y a un certain nombre d'angles que vous pouvez incliner cette tasse, et chacun de ces angles a une certaine probabilité de correspondre à l'image floue.
Les techniques existantes traitent ce problème en considérant chaque inclinaison ou rotation possible de l'objet comme un "coût" - plus le coût est bas, plus il est probable que cette rotation crée une correspondance précise entre les entités. Chaque rotation et le coût associé sont représentés dans une sorte de carte topographique, composé de multiples collines et vallées, avec des altitudes inférieures associées à un coût inférieur.
Mais Carlone dit que cela peut facilement confondre un algorithme, surtout s'il y a plusieurs vallées et aucun point le plus bas discernable représentant le vrai, correspondance exacte entre une rotation particulière d'un objet et l'objet dans un nuage de points. Au lieu, l'équipe a développé un algorithme de « relaxation convexe » qui simplifie la carte topographique, avec une seule vallée représentant la rotation optimale. De cette façon, l'algorithme est capable d'identifier rapidement la rotation qui définit l'orientation de l'objet dans le nuage de points.
Avec leur approche, l'équipe a pu identifier rapidement et avec précision trois objets différents :un lapin, un dragon, et un Bouddha — caché dans des nuages de points de densité croissante. Ils ont également pu identifier des objets dans des scènes de la vie réelle, comprenant un salon, dans lequel l'algorithme a rapidement pu repérer une boîte de céréales et une casquette de baseball.
Carlone dit que parce que l'approche est capable de fonctionner en "temps polynomial, " il peut être facilement mis à l'échelle pour analyser des nuages de points encore plus denses, ressemblant à la complexité des données des capteurs pour les voitures sans conducteur, par exemple.
"La navigation, fabrication collaborative, robots domestiques, chercher et sauver, et les voitures autonomes sont là où nous espérons avoir un impact, " dit Carlone.
Cette histoire est republiée avec l'aimable autorisation de MIT News (web.mit.edu/newsoffice/), un site populaire qui couvre l'actualité de la recherche du MIT, innovation et enseignement.