Les innovations mobiles : collection 2017–2018

Réalité augmentée et Machine Learning embarqué sont au programme chez Apple et bientôt chez Google.

La réalité augmentée avec ARKit (source: Apple)

De l’intelligence dans le smartphone

Le Machine Learning permet, à partir d’un échantillon de données, de définir un modèle statistique.

Ce modèle est ensuite utilisé pour réaliser des prédictions.

Concrètement, on peut anticiper le texte saisi par un utilisateur à partir des saisies précédentes ou de son profil.

On peut aussi rechercher un objet (ou une personne) dans une image à partir de l’apprentissage d’autres images. (ex. trouver les photos de chien)

Jusqu’alors, le Machine Learning était limité aux serveurs.

Apple avait déjà commencé à intégrer quelques petites choses dans iOS 10 au travers de son API Metal et de Core Image. Mais ce n’était guère accessible au commun des mortels.

Atouts et cas d’usage

2 gros atouts du Machine Learning dans le smartphone :

  • répartition de la charge (pas besoin d’un serveur)
  • confidentialité (les données restent dans le smartphone)

Autant dire, ça ouvre le champs des possibles.

On peut imagine une app qui lit les étiquettes de vêtements. Ou bien une app qui va adapter le fond d’écran d’un contenu selon le lieux détecté dans le texte.

Et tout ce qui a attrait aux données personnelles : géo-localisation, confidentialité, santé. Peu importe : aucune donnée ne sort du smartphone.

Ou bien une app qui détecte les hotdogs (Source: Silicon Valley)

CoreML et Metal 2

Disponibilité : automne 2017, sur tous les iPhone 5S et supérieurs

En juin 2017, Apple a présenté CoreML qui sera intégré à iOS 11. Metal 2 est une évolution de Metal, qui permet d’effectuer des traitements optimisés sur le GPU.

CoreML propose d’exploiter, au sein de l’iPhone, des modèles pré-conçus. Il existe dans cet outil des API simplifiant la gestion du texte et de l’image. Les développeurs disposent également d’API bas niveau permettant de gérer les choses plus finement. Et même d’effectuer l’apprentissage depuis l’iPhone.

Pour cela, toutes les puces de l’iPhone sont sollicitées de manière optimale.

Sachant que le framework CoreML est également exploitable par les autres frameworks. Comme, par hasard, les frameworks de traitements graphiques.

TensorFlow Lite

Disponibilité : prochainement, sur les Android compatibles (Google Pixel et Samsung S8 et supérieurs)

En mai 2017, Google a annoncé le développement de la version mobile de TensorFlow.

La disponibilité sur une future version de Android 8 a été confirmée. Sans plus de précisions en termes d’échéances, le temps de finaliser l’outil.

Le procédé est similaire à CoreML en termes de fonctionnement.

La seule limite est le nombre d’appareils compatibles.

Et de la réalité augmentée

La réalité augmentée existe depuis plusieurs années. Mais souvent, le résultat n’est pas terrible et les cas d’usages sont limités.

Il s’agit de disposer des objets virtuels dans le monde réel.

Avec les technologies avancées d’analyse d’image, on peut détecter les surfaces planes. Pour simuler des objets posés et aussi se permettre d’avoir une estimation précise de l’échelle de l’environnement réelle. ( 1 cm dans le monde réel = 1 cm dans le monde virtuel )

Et, grâce aux nombreux capteurs des appareils, on peut se permettre d’aller beaucoup plus loin. On peut laisser un objet à un endroit, s’en aller, et revenir pour le retrouver au même endroit.

La nouvelle réalité augmentée détecte également la luminosité de l’environnement, de sorte à correctement projeter les ombres des objets 3D tout en ajustant la luminosité des objets en eux-même.

Atouts et cas d’usage

Cette évolution permet de se détacher des contraintes habituelles. Et donc améliorer l’expérience utilisateur.

Les cas d’usage sont multiples : contenu géo-localisé, enrichissement du contenu (dans un musée par exemple), jeu vidéo (Pokemon Go) et autres.

Un lien fort avec le Machine Learning

Le Machine Learning permet de détecter des éléments dans une scène de la vie réelle.

La réalité augmentée détecte (grâce au Machine Learning, aux technologies d’image et aux capteurs du smartphone) les surfaces dans l’environnement réel pour y placer des éléments virtuels.

En détectant des éléments précis grâce au Machine Learning, on peut placer des éléments virtuels en respectant les coordonnées de l’environnement réel.

Une petite démo ARKit

ARKit

Disponibilité : automne 2017, sur tous les iPhone 6S/SE et supérieurs

En juin 2017, Apple a présenté ARKit qui sera intégré à iOS 11.

L’API ARKit est optimisée pour le matériel Apple. Elle simplifie grandement le développement de la réalité augmentée.

Et s’intègre parfaitement aux technologies existantes :

  • SceneKit et SpriteKit, les technologies propres à Apple
  • Unity
  • Unreal.

Cette première version est limitée aux surfaces planes. Pour le reste, on devra pour l’instant utiliser CoreML pour les autres éléments.

ARCore

Disponibilité : plus tard, sur les Android compatibles (Google Pixel et Samsung S8 et supérieurs)

Au 30 août 2017, Google a fait suite à Apple en annonçant ARCore en version beta. ARCore est équivalent à ARKit.

ARCore s’intègre aux technologies existantes :

  • Java / OpenGL, les technologies propres à Java embarqué
  • Unity
  • Unreal.

ARCore gèrerait plus de types de surfaces que ARKit. Avec des performances honorables.

Il serait intégré à Android 7 et supérieurs via un composant externe. Sous réserve de pouvoir étendre le parc des appareils compatibles.

Conclusion

Que ce soit cette année avec les technologies Apple, ou un peu plus tard avec les technologies Google, l’avenir est à la réalité augmentée et au machine learning. Au plus tard en 2018.

Une fois encore, le numérique fait sa révolution !


Vous pouvez également me suivre sur Twitter et LinkedIn