Expérimentation Réalité Augmentée sur iOS

Quand tu as trop chaud pour dormir… Plus sérieusement, j’ai expérimenté ce qu’il est possible de faire avec le SDK ARKit d’Apple. Le résultat est bluffant; vivement la sortie des Apple Glass pour pouvoir développer des nouveaux Use Cases…

Voici à titre d’exemple une petite application permettant d’augmenter le contenu éditorial du journal 20 Minutes. En survolant une photo particulière (définie dans le code), il est possible d’ajouter un overlay (Spritekit SKVideoNode) qui vient jouer une vidéo locale ou remote… J’ai pris l’édition du 20 Minutes de ce weekend (13 juin 2021) et une vidéo Youtube aléatoire qui traitait du sujet de la première de couverture et voici le résultat:



... Lire plus

Installer Tensorflow 2 avec GPU backend avec un eGPU, Kubuntu 20.04 et Docker

Dans deux articles précédents, nous avions vu comment installer Tensorflow 1 et 2 avec GPU support sur Ubuntu 18.04 avec une carte graphique Gefore GTX 1080 ou une plus ancienne carte plus supportée, la Geforce GTX 660 Ti. J’ai récemment fait un système upgrade et suis passé sur Kubuntu 20.04. Il est excellant et très stable, je le recommande grandement. Je suis toujours partisan des stations de Deep Learning personnelles (non dans le Cloud).


... Lire plus

Autonomous 3D printed car using Nvidia Jetson Nano and Torch

Voici une de mes dernières réalisations.


... Lire plus

Installer un eGPU sur un Intel Nuc avec Ubuntu 18.04

image


... Lire plus

Devenir Atari Pong master grâce à l’apprentissage par renforcement

Qu’est-ce que l’apprentissage par renforcement ?

L’apprentissage par renforcement est utilisé dans l’intelligence artificielle pour enseigner aux ordinateurs comment prendre de meilleures décisions en fonction des récompenses qu’ils reçoivent.

En d’autres termes, l’apprentissage par renforcement, c’est un peu comme apprendre à faire quelque chose en obtenant des récompenses pour ses actions.

En trading par exemple, on évalue quelle stratégie va maximiser les récompenses qui sont le retour sur investissement. Les récompenses peuvent être obtenues longtemps après une action.

Autre exemple, avec un jeu d’échec, on peut obtenir des récompenses mieux que ce qu’on aurait pu jouer simplement en sacrifiant des pièces pour jouer un meilleur coup.

En apprentissage par renforcement, on crée une politique qui définit l’action qui maximisera les récompenses lorsqu’une action sera exécutée en fonction de l’état du système.


Atari Pong

Pour coder mon réseau de neurones et faire de l’apprentissage par renforcement sur un cas pratique et simple, j’ai utilisé le framework OpenAI gym.

“Gym is a toolkit for developing and comparing reinforcement learning algorithms”

Ce framework permet d’intéragir avec des jeux basiques Atari. J’ai choisi le jeu Atari Pong pour implémenter mon algorithme gradients de politique.

Voici 2 vidéos que j’ai enregistré qui montrent des parties jouées entre un agent qui est l’ordinateur et un agent qui est piloté par un réseau de neurones.

  • Dans la première vidéo, le réseau de neurones n’a pas encore été entraîné.



  • Dans la seconde vidéo, le réseau de neurones a été entraîné pendant des jours avec un algorithme policy gradients.


... Lire plus

Voiture autonome avec Unity et Keras


... Lire plus

Smart Gate ou comment ouvrir un portail électrique par reconnaissance faciale


... Lire plus

Ma présentation du Deep Learning

Ces dernières semaines j’ai été invité à parler de Deep Learning dans plusieurs entreprises des Hauts de France.

Ma présentation est publiques et accessible ci-dessous:

Vous trouverez ci-dessous les 2 des 3 vidéos que j’ai présenté durant la phase de démo de ma présentation. Les 2 apps font appel à des modèles Tensorflow. La première app est construite en Ionic. La seconde en React.


... Lire plus

« Ok google… Ouvre le portail » !

Pour bien commencer l’année et ce blog avec ce premier article, voici comment j’ai transformé mon portail en un portail connecté.

Lorsque je prononce les mots « Ok Google… Ouvre le portail » sur mon Smartphone, ce dernier déclenche une commande qui actionne le moteur du portail. Je peux ainsi en fonction des messages que j’ai programmé, ouvrir ou fermer le portail de n’importe où.


Description du fonctionnement

Voici un schéma qui décrit globalement le fonctionnement du système.

image


... Lire plus