Porteurs ImViA : Julien Dubois, Cyrille Migniot
Partenaires : Maxime Ambard (LEAD)
Début du projet : 01/09/2020
Fin du projet : 31/08/2023
Résumé :
Le projet consiste à développer des lunettes électroniques permettant d’aider les personnes non-voyantes à éviter les obstacles lorsqu’elles se déplacent à pied. Ce système est basé sur une technologie qui convertit l’information visuo-spatiale collectée en trois dimensions par une caméra temps-de-vol ou stéréoscopique en un flux sonore spatialisé grâce à une méthode dite de substitution sensorielle. Les 3 dimensions visuo-spatiales (droite-gauche, bas-haut et éloigné-rapproché) sont traduites par les indices auditifs (oreille droite-oreille gauche, grave-aigüe, son plat-son percussif). Pour être opérationnel, le système matériel doit valider 4 critères : ne pas être trop encombrant, ne pas trop chauffer, avoir une bonne autonomie énergétique et avoir une bonne réactivité. Ces critères ne peuvent être remplis que si les algorithmes utilisés sont optimisés pour une implémentation sur support mobile.
Le traitement de l’information qui convertit le flux vidéo acquis par une caméra temps-de-vol ou caméra stéréoscopique en un flux sonore spatialisé se fait en deux temps. Tout d’abord, le flux vidéo brut provenant de la caméra est filtré pour ne conserver que les éléments graphiques que l’on souhaite retenir. Une fois le flux vidéo simplifié, il doit être transformé lors d’une seconde étape en un flux sonore stéréophonique. Pour cela, nous associons chaque pixel graphique conservé lors de la première étape (filtrage vidéo) avec un pixel sonore. Par exemple un pixel graphique situé à droite de l’image est associé à un son mono-tonal stéréophonique qui sonnera plus fort dans l’oreille droite. Si le pixel graphique est situé en haut de l’image, il est associé à une tonalité aigüe. S’il est détecté comme proche de la caméra, un effet sonore de grésillement lui est appliqué.
Malgré les progrès fulgurants de l’informatique mobile cette dernière décennie, ce type de traitement en temps réel, constitué d’une part d’un filtrage de flux vidéo et d’autre part d’une synthèse audio, reste un défi. C’est donc sur l’optimisation de ces deux étapes de traitement algorithmique et leurs implémentations sur support mobile que les travaux de ce workpackage « informatique » porteront.
Tout d’abord, la reconstruction en 3D de l’information suite à l’acquisition de la caméra n’est pas triviale. Par exemple, si la caméra utilisée est de type temps-de-vol (infrarouge) le signal est rapidement brouillé par la lumière du soleil et le champ d’utilisation du système se restreint à l’intérieur des bâtiments ou à l’extérieur en condition nocturne. Si cette caméra est de type stéréoscopique, les algorithmes de reconstruction 3D habituels sont très gourmands en capacité de calculs et génèrent souvent des artefacts qui visuellement sont tolérables mais qui se révèlent rédhibitoires lorsqu’ils sont sonifiés. Nous pourrons tirer parti du fait que dans notre cas spécifique, nous ne souhaitons pas reconstruire toute l’image en 3D mais que seuls les contours mobiles nous intéressent. Ceci devra nous permettre de concevoir des algorithmes spécifiques moins exigeants.
La synthèse sonore est également exigeante en termes de calculs. Par exemple les pixels sonores activés, bien qu’ils soient précalculés au démarrage de l’application grâce à des techniques de spatialisation audio HRTF (Head-Related Transfert Function), doivent être ajoutés les uns aux autres en temps réel au sein du flux audio de la carte son avant d’être envoyés en sortie stéréophonique à l’utilisateur. Nous avons déjà travaillé sur ces aspects dans le cas d’une acquisition vidéo par caméra 2D mais l’utilisation d’une information 3D démultiplie les ressources en calculs et en mémoire nécessaires. Nous avons déjà une version de l’algorithme en 3D sur station de travail mais celui-ci doit être optimisé pour être moins exigeant en vue d’une implémentation mobile.
La caractéristique algorithmique principale de ces traitements est qu’ils peuvent largement se réaliser de manière parallèle. Ceci est un atout très important laissant présager d’optimisations radicales si l’on s’attache à concevoir ces algorithmes pour des architectures matérielles offrant des grandes capacités de calculs parallèles. Nous pensons que c’est la clé pour valider les 4 critères cités dans le premier paragraphe de ce texte.