Family Assistant DeepLens

Inspiration

En réfléchissant à des idées pour le défi DeepLens, nous avons rapidement décidé que nous souhaitions créer quelque chose pour aider les personnes qui en ont besoin. Nous voulions utiliser la technologie pour rapprocher les gens et non pas juste pour dire d'utiliser la technologie. Après avoir envisagé de nombreuses applications de l'appareil DeepLens, nous avons conclu que la possibilité de reconnaître les visages pouvait s'avérer précieuse pour aider les personnes qui ont des difficultés à reconnaître les autres. Les patients diagnostiqués comme étant atteints de démence ont des difficultés à reconnaître leurs amis et même les membres de leur famille, ce qui peut les désorienter et les troubler lorsqu'ils discutent avec des proches.

Fonctionnement

Les patients souffrant de pertes de mémoire peuvent utiliser notre application pour les aider à se souvenir de leurs proches. L'appareil photo de l'appareil DeepLens configuré avec notre application peut jouer le rôle d'assistant. Cet assistant reconnaît les membres de la famille et les amis dans le viseur de l'appareil photo et lit oralement leur nom ainsi qu'une courte biographie. Cela aide les personnes souffrant de pertes de mémoire à comprendre la situation.

Les photos des membres de la famille et des amis accompagnées de brèves informations sont préconfigurées et chargées dans une banque de données. Ce chargement peut être effectué par n'importe quel membre de la famille du patient via l'interface utilisateur web de l'application, très simple d'utilisation.

Les patients peuvent également utiliser l'appareil photo de l'appareil DeepLens et l'application chez eux, pour faire des exercices de mémoire. Les études montrent que les exercices peuvent ralentir le processus de perte de la mémoire. Les patients peuvent montrer à l'appareil photo des photos des membres de leur famille et de leurs amis stockées dans leur smartphone. L'image est reconnue et le nom est lu oralement, avec une biographie. Ce système peut également être utilisé par les professionnels de santé et le personnel soignant qui suivent le patient.

Élaboration

Les services AWS suivants ont été utilisés pour développer l'application : modèle de détection des visages fourni par défaut par DeepLens, Elastic Beanstalk, Rekognition, Polly, Lambda et S3.

Interface utilisateur : Elastic Beanstalk est utilisé pour créer une application web simple et conviviale permettant de charger des photos de membres de la famille ou d'amis avec leur biographie. La biographie doit contenir de brèves informations sur la personne, pouvant aider le patient à faire le lien. Toutes les informations sont stockées dans un compartiment S3 principal.

Modèle de Machine Learning : le modèle de détection des visages fourni par défaut avec DeepLens est utilisé au sein de l'application. La fonction Lambda associée à ce modèle, qui s'exécute au sein du service Greengrass sur l'appareil, a été personnalisée de façon à charger les images dans le compartiment S3 et à lire le son.

Reconnaissance faciale : le service AWS Rekognition est utilisé pour reconnaître les visages chargés grâce aux images capturées par l'appareil.

Synthèse vocale : nous avons utilisé la fonctionnalité SynthesizeSpeech d'AWS Polly pour transformer le souvenir qu'a l'utilisateur d'un ami en un fichier audio impliquant l'utilisateur de manière interactive.

Flux de bout en bout: les compartiments S3 et les fonctions Lambda sont utilisés pour lier le tout de manière asynchrone pour le flux de bout en bout. Les images placées dans le compartiment S3 déclenchent une fonction Lambda, qui se connecte à AWS Rekognition pour reconnaître la personne. Les informations sur la personne stockées dans le compartiment S3 principal sont récupérées et synthétisées en discours vocal à l'aide d'AWS Polly. Le discours vocal est ensuite placé dans un compartiment S3 audio, dans lequel la fonction Lambda s'exécutant sur l'appareil vient piocher pour le lire.

Défis

La plupart des défis étaient liés à l'appareil DeepLens. Nous sommes reconnaissants de l'aide fournie par l'équipe AWS, qui a patiemment répondu à nos questions sur les forums et l'espace de travail Slack. Les sessions individuelles « Office Hour » nous ont vraiment été d'une grande aide pour résoudre les problèmes spécifiques, grâce à l'assistance pratiquement personnalisée fournie par des experts. Voici certains défis que nous avons rencontrés avec l'appareil :

  • Enregistrement de l'appareil : plusieurs essais ont été nécessaires pour configurer l'appareil, en raison de problèmes tels qu'un conflit entre l'URL par défaut et le sous-réseau Wi-Fi.
  • Lecture audio : nous avons grandement bénéficié de l'aide de l'équipe AWS et d'autres participants pour parvenir à un flux de bout en bout avec un son lu depuis l'appareil. Les principales étapes pour que cela fonctionne ont été la modification manuelle du fichier group.json avec chaque déploiement de projet, et la configuration des modules Python Boto accessibles à ggc_user.

Les réalisations dont nous sommes fiers

Nous sommes fiers d'avoir créé quelque chose qui va être réellement utile aux personnes qui en ont besoin. Notre application et solution va aider ceux qui souffrent de pertes de mémoire à être plus sociables et à retrouver leur place dans leur cercle familial et d'amis. L'application met à leur disposition un outil qu'ils peuvent utiliser de manière autonome.

Leçons apprises

  1. Réussir à travailler avec plusieurs services AWS, notamment Rekognition et Polly.
  2. Configurer l'appareil DeepLens, notamment de façon à exécuter les modèles de Machine Learning, et se développer pour agir sur les inférences.

Prochaines étapes pour le Family Assistant DeepLens

  1. Exécuter l'application d'assistant sans connexion Internet, ni connexion au cloud. Cela va nécessiter la création de modèles de Machine Learning personnalisés pour la détection de visages, afin que la reconnaissance faciale soit assurée par SageMaker et MXNet. Les charger dans l'appareil afin que l'inférence de reconnaissance faciale s'effectue entièrement sur l'appareil lui-même. Il s'agira d'une mise à jour majeure, qui rendra l'appareil portable. L'approche Basic et le code Lambda pourraient être réutilisés avec l'appareil DeepLens actuel ou tout appareil similaire pouvant faire office de vrai compagnon.
  2. Améliorer les performances de reconnaissance faciale de bout en bout et lire oralement la biographie correspondante. #1 devrait grandement aider sur ce point.
  3. Sécuriser le tout afin de pouvoir associer un appareil à un patient et à une famille spécifiques.

Créé avec

amazon-web-services
lambda
s3
python
rekognition
deeplens
polly