USTK : une boîte à outils pour la robotique médicale guidée par imagerie ultrasonore

Développée au centre Inria Rennes – Bretagne Atlantique, UltraSound ToolKit (USTK) est une librairie open source dédiée à l’image échographique. Elle s’adresse aux laboratoires de recherche et entreprises qui souhaitent développer des applications médicales intégrant des commandes de systèmes robotiques temps réel.

Contrairement à la radiographie, au scanner ou à l’IRM, la sonde à ultrason délivre des images temps réel. Un avantage clé quand on veut piloter des robots médicaux par asservissement visuel. Membre de l’équipe de robotique Rainbow, Alexandre Krupa  travaille sur ce sujet depuis 13 ans. La librairie USTK rassemble des utilitaires conçus par lui et ses doctorants au fil de leurs recherches. “Nous souhaitons maintenant mettre ces outils à la disposition d’une plus vaste communauté. D’autres laboratoires et centres de R&D pourraient vouloir les utiliser pour prototyper ou développer leurs propres applications médicales temps réel.

Plateforme de robotique médicale de l'équipe Rainbow (Inria / IRISA).

Plateforme de robotique médicale de l’équipe Rainbow (Inria / IRISA). © Inria / Photo H. Raguet

La librairie comprend plusieurs modules. Tout d’abord : la structure de données. “C’est le cœur d’USTK, résume Fabien Spindler, ingénieur de recherche. Elle sert à caractériser les images. Évidement, il existe déjà des formats pour les machines utilisées par les praticiens. Mais pour nos travaux, il nous fallait une structure de données plus complète nous permettant d’accéder aux pixels de l’image et aussi à tous les paramètres géométriques de la sonde échographique ultrasonore.
Avant de devenir une collection de pixels, la donnée mesurée par la machine est une onde, un signal radio fréquence qui vient de traverser de la matière organique plus ou moins dense. Or, il y a des sondes linéaires et d’autres curvilignes. Géométriquement, la formation de l’image est donc intrinsèquement différente. Par ailleurs, outre les sondes pour la 2D, il y en a aussi pour la 3D. Elles sont souvent motorisées. Là aussi, différents systèmes existent. On peut avoir un moteur qui effectue un balayage curviligne avec un transducteur convexe.”

Ce balayage curviligne introduit une complexité supplémentaire. “On perd la résolution spatiale, explique Alexandre Krupa. Les données arrivent dans un simple tableau où sont entreposés les résultats de chacune des lignes de tir. On doit donc ensuite effectuer la reconstruction de l’information dans l’espace cartésien. Pour cela, il faut connaître les paramètres géométriques de la sonde : son rayon de courbure, la surface du transducteur, etc. La structure de données adoptée dans USTK va permettre de coder l’information à chaque étape allant du signal radio-fréquence (RF) jusqu’à l’image géométriquement reconstruite.

De gauche à droite : Alexandre Krupa, Marc Pouliquen et Fabien Spindler

Le deuxième module sert à l’acquisition de données à partir d’un échographe 3D Ultrasonix. “C’est la machine que nous possédons, comme d’ailleurs beaucoup de laboratoires, précise Fabien Spindler. Cette station fournit une solution ouverte bien adaptée pour la recherche car elle donne accès aux paramètres interne de l’appareil. Nous pouvons faire l’acquisition d’images RF, d’images post-formées (c’est-à-dire reconstruites) et des images intermédiaires. Tout cela en temps réel, sans avoir à attendre l’écriture de la donnée sur un disque dur. C’est un point essentiel pour qui souhaite développer des commandes robotiques.

Carte de confiance

Le troisième module permet de mesurer la qualité des images. “Les images échographiques contiennent des artefacts, explique Alexandre Krupa. Par exemple, quand l’onde ne parvient pas à traverser une surface osseuse, cela crée une zone d’ombre : on ne voit pas ce qui se trouve derrière. On manque d’information. On a une incertitude. L’algorithme que nous avons développé fournit une carte de confiance capable de nous dire : j’ai une confiance absolue dans tel pixel, il contient vraiment de l’information. En revanche, pour tel autre, je suis un peu moins sûr.

À quoi va servir cette carte ? “À augmenter la robustesse. C’est intéressant, par exemple, pour faire de la réalité augmentée. L’image échographique est la plus utilisée en per-opératoire, mais elle reste aussi la plus difficile à interpréter. Il y a ces fameuses zones d’ombre et aussi du bruit. Pour améliorer la lecture, on peut superposer le modèle maillé d’une image pré-opératoire obtenue par IRM et donc de meilleure qualité. La carte de confiance facilite le recalage de ces deux images. Grâce à elle, le recalage ne va pas considérer les pixels dans la zone d’ombre de la même manière que les pixels bien visibles. De cette façon, le maillage va prendre une forme optimale par rapport à la connaissance que nous avons de l’information échographique.

Le quatrième module sert à visualiser les données et le cinquième à les stocker sur un disque dur. Le sixième permet de suivre des régions d’intérêt dans les images. “Sur l’écran, l’organe se déplace parce que le patient bouge ou parce que le praticien déplace la sonde. Avec notre outil, il suffit d’indiquer une région d’intérêt pour que celle-ci reste ensuite au centre de l’image quoi qu’il arrive.”

Détection d’aiguille

Le dernier module porte sur la détection d’aiguille. “Nous travaillons sur l’assistance au geste d’insertion d’une aiguille flexible. L’idée est d’exploiter sa flexibilité pour lui faire suivre une trajectoire. L’utilisateur clique sur la zone cible. Le système fait automatiquement avancer l’aiguille en utilisant la déformation induite par la résistance qu’elle rencontre au contact des tissus. Comme elle est biseautée à son extrémité d’un seul côté, les forces appliquées ne sont pas symétriques. Si l’on pousse, elle se déforme en partant dans un sens. Si l’on tourne le biseau, elle part dans l’autre. Mais, pour pouvoir faire cela, encore faut-il la détecter dans l’image en temps réel. Nous avons un algorithme qui y parvient dans des séquences 2D et nous travaillons sur la version 3D.

Une sonde virtuelle

L’utilisateur trouvera avec USTK plusieurs applications construites à partir de ces modules et livrées à titre d’exemples. “Nous mettons aussi à disposition des jeux de données pour ceux qui ne possèdent pas de station échographique. Prenons quelqu’un qui voudrait tester un algorithme pour positionner automatiquement une sonde afin d’avoir une image optimale d’un organe : s’il ne possède pas le robot, nous lui proposons une sonde virtuelle qui va évoluer dans le volume échographique. Il peut bouger dans ce volume en fonction des commandes qu’il applique à cette sonde virtuelle. Ensuite, il pourra faire un asservissement visuel, par exemple pour garder une zone d’intérêt au centre de l’écran. Il va prototyper tout cela en simulation.

Débuté en septembre 2016, ce travail d’industrialisation fait l’objet d’une Action de Développement Technologique (ADT) financée par Inria. “Cela nous a permis de recruter un ingénieur (1) pour une durée de deux ans, indique Fabien Spindler. Plusieurs centres de recherche ont déjà manifesté leur intérêt, dont le LIRMM de Montpellier, l’Université technique de Munich, l’Université John Hopkins de Baltimore et l’IRT b<>com à Rennes. USTK est distribuée sous licence GPL mais nous pourrons aussi proposer une licence propriétaire pour les industriels ou les laboratoires qui souhaiteraient développer des applications commerciales. La librairie est téléchargeable à partir de notre espace GitHub.


  • (1) Marc Pouliquen.

Les commentaires sont clos.