Aller au contenu


Little french kev

Inscrit(e) (le) 04 sept. 2019
Déconnecté Dernière activité nov. 04 2021 08:45
-----

#114540 voiture télécommandée autonome

Posté par Little french kev - 31 octobre 2021 - 08:07

Le project est toujours en cours, malheureusement je n'ai pas beaucoup de temps à y consacrer ducoup il avance très lentement .

J'ai entrainé un agent à conduire conduire une voiture virtuelle et lui faire passer des portes dans le bon sens . Un petit bras robotique réplique les mouvements de l'agent sur la télécommande . J'aurai surment pu me passer su bras robotique mais j'aivais envie d'éssayer de conserver la vrai voiture téléguider le moins modifié possible .
remotec9ntroller.gif

J'ai presque résolu mon problème de tracking de la vrai voiture en utilisant un system de realité virtuelle (HTC Vive) . C'est fou de voir à qu'elle vitesse on peut régler ce genre de soucis juste en dépensant de l'argent . 
tracking_test_1.gif

20211031_153444.jpg

La prochaine étape est de donner la position de la vrai voiture à l'agent et qu'il utilise la télécommande pour la contrôler .




#113134 voiture télécommandée autonome

Posté par Little french kev - 10 mars 2021 - 09:22

Genial! J'ai hate de voir comment tu vas gérer toute la partie pilotage autonome . 

Malheureusement de mon coter j'ai eu beaucoup de travail et peu de temps pour mes projets ces derniers mois . Apres avoir experimenté avec deux IMU differentes (comme le dis Loduvic plus haut) sans un deuxieme type de capteur je n'ai aucun moyen de compenser la derive des IMU .

Je suis en train d'experimenter une technique utilisant la bibliotheque servant aux applications de realité augmenté (AR foundation) . La camera est pointé vers le plafond, l'idée étant suivre les deplacement du plafond pour determiner la position de la voiture sur le sol .

IMG_4014.JPG

IMG_4013.JPG




#110844 Les meilleurs vidéos LEGO

Posté par Little french kev - 16 août 2020 - 09:03

Citroen à aussi sorti un modèle avec un moteur rotatif dans les années 60 mais ca na pas été un réussite . Etant l'heureux propriétaire un Mazda RX-7, j'ai une relation amour-haine avec ces moteurs!




#110552 Un jeu qui apprend à se jouer lui-même

Posté par Little french kev - 16 juillet 2020 - 06:55

Ca fait un petit moment que j'ai le vigibot en tete . Il faut que je m'y mette . Je pense qu'il y a vraiment des trucs cool a faire .
Un truc auquel je pense depuis quelques temps serai de fabriquer deux robot avec des competences differentes et organiser un parcour dans une piece de la maison dont il serait possible d'atteindre le bout qu'en jouant en coopération .
Ou alors un genre d'escape room pour vigibot avec des indices à trouver pour pouvoir sortir de la piece .




#110437 voiture télécommandée autonome

Posté par Little french kev - 07 juillet 2020 - 09:51

Avant d'etre confiné, avec quelques-uns de mes collegues de travail on profitait d'une zone vide du bureau pour joué avec des voitures téléguidées (desfois on travaillait aussi :D ) . En général on posait quelques obstacles ou bouts de scotch au sol pour créer un circuit . Les voitures étaient équipé pneus en plastique dur pour pouvoir drifter les virages .

Le but de ce projet est donc de créer une voiture télécommandée autonome . L'idée est de pouvoir enregistrer la position des obstacles mis au sol et faire en sorte que la voiture face le tour du circuit d'elle meme (Le plus vite possible) .  Je pense utilisé une IMU pour pouvoir calculer la position, direction et vitesse de la voiture par rapport au circuit .

Comme je n'avais pas envie de mutiler la voiture que j'ai déjà, j'ai décidé d'en concevoir une que je peux imprimer . J'ai privilégié la simplicité car je vais surment utilisé de l'apprentissage par renforcement sur Unity pour apprendre à une IA à conduire, il me faut donc quelque chose qui soit le plus "facile" possible a simuler .
Je suis donc parti sur une propulsion sans différenciel, sans suspension et avec aucune géométrie (carrossage, pincement, Ackermann....) . La géométrie de la crémaillaire (meme si il y en a pas ici) est faite de manière à ce que l'angle des roues avants soit égal à l'angle du servo de direction  .
Au niveau des proportions (empattement, voie, diamètre des roues...), j'ai prix les dimensions d'une Nissan silvia S15 et est tout mis à l'échelle 1/10 .

 

Pour ce qui est des differents composants, j'ai décidé d'utiliser ce qui trainait dans mes tiroirs . La seul chose que j'ai acheté est une courroie pour la transmission . Je ne sais pas trop si le moteur sera assez puissant pour ce que je veux faire .

3d_model.jpg

Les premières pièces ont été assemblées et montées . Jusque la, tout va bien !

steering_gif.gif




#110406 Wall-E

Posté par Little french kev - 02 juillet 2020 - 10:08

 

C'est vrai qu'on est loin de la boîte de Nesquick d'il y a 2 ans  :ignat_02:

Joli boulot! C'est vrai que ca a bien progressé . Je trouve quand meme que la construction en boites de Nesquik avait un certain charme .

Personnelement je bosse toujours en perspective et j'utilise les vues orthographiques pour déplacer mes pièces . Pour tous ce qui est pièces esthétiques les vues isométriques ca donne des proportions bizares .




#110313 Présenter ses robots sur Youtube

Posté par Little french kev - 22 juin 2020 - 10:16

Discussion très intéressante . Beaucoup de point soulevés!

     D'un sens je pense qu'il y a tout à fait possibilité de touché un publique assez large avec des vidéos en francais, 284 millions de francophones (si google est correct) c'est pas rien non plus . Quelqu'un avec une personnalité haute en couleurs peut rendre n'importe quoi interressant à regarder, je me surprend souvent à visionner des vidéos sur des sujets qui ne me passionnent pas forcement mais si il est amené sous un bon angle par une personne agréable à regarder/écouter ca peut quand meme etre passionnant . 
Malheureusement dans ces cas la on tombe plus souvent sur du divertissement sans info bien pointues et précises surtout pour les sujets de niches .

    Aillant fait l'experience sur ma propre chaine en sortant les meme vidéos en anglais et en francais j'ai constaté que les vidéos en francais font entre 50 et 90% de vues en moins que les meme vidéos en version anglaise . Sachant le temps que prend l'enregistrement et le montage, le choix de ne faire des vidéos qu'en anglais a été assez rapide .
J'imagine que c'est un peu un effet boule de neige, mais quand j'ai des recherches à faire je commence directement par l'anglais car je sais que je trouverai toujours plus de resultats, ce qui en retour n'incite peut etre pas les francophones à produire des articles/vidéos en francais .

     Le truc des gens qui utilisent des mots anglais a outrance dans une conversation en francais me font toujours un peu sourire parce que ca donne l'impression d'avoir un faire à un stéréotype lambda d'une agence marketing qui essaye de faire un peu trendy(ironie) . Les langues sont en constantes évolution, on vit dans un monde très connecté et elles se mélangent, je ne pense pas que ca soit forcement une mauvaise chose au final . 
D'un autre coté, ca fait plus d'une dizaine d'années que je vis au Royaume-Unis et beaucoup de gens aime coller des mots francais qui ont un équivalent anglais dans des discussions pour faire un peu classe, ca n'est pas un 'problème' purement francais .

 




#110292 Un jeu qui apprend à se jouer lui-même

Posté par Little french kev - 21 juin 2020 - 08:35

J'ai recyclé mon projet utilisant une manette de Xbox pour jouer . Je me suis amusé à faire s'affronter deux IA sur un jeu de air hockey . 
Cette fois ci j'ai réussi à passer directement de l'entrainement completement virtuel au control physique sans avoir à réentrainer les réseaux neuronaux .
 




#110016 Un jeu qui apprend à se jouer lui-même

Posté par Little french kev - 31 mai 2020 - 11:07

Après avoir suivi les conseil de Laurent42, les prédictions du réseaux neuronal se sont améliorées . 
Je me suis amusé à essayer de la perturber pendant le jeu mais elle arrive toujours à jouer .

 

shake_to_gif.gif




#109884 Un jeu qui apprend à se jouer lui-même

Posté par Little french kev - 23 mai 2020 - 05:39

Après avoir collecté quelques milliers de nouvelles images de bonne qualité et une autre session d'apprentissage les résultats s'améliorent mais il y a encore des moments ou il reste coincé dans des boucles .
 

better_fb_gif.gif




#109860 Un jeu qui apprend à se jouer lui-même

Posté par Little french kev - 22 mai 2020 - 08:38

Je me suis rendu compte que le data que j'ai collecté est vraiment pas top donc il faudra que je  recommence cette partie mais j'ai quand meme décidé de tester le tout avec un réseau neuronal assez mal entrainé (75% de précision) pour m'assurer que sur le principe ca fonctionne .
Je suis vraiment impressionné par les performances du jetson Nano, il tourne nikel a 25FPS . Bon par contre comme espéré le réseau neuronal lui ne fonctionne pas tres bien donc le robot se retrouve coincé dans des boucles .

round h.gif




#109776 Un jeu qui apprend à se jouer lui-même

Posté par Little french kev - 17 mai 2020 - 08:31

Les progrès ont été plus lents que prévu ce weekend .

La première chose à faire était de trouver une nouvelle solution pour collecter des images du jeu . Je me suis dit qu'il serait une bonne idée de prendre les images directement à partir de la Pi camera du robot . 
Le challenge était de faire communiquer le robot (jetson nano) et le jeu qui tourne sur un PC . J'ai decidé d'utiliser le jetson nano comme server et le jeu comme client . Le robot envoi un signal au jeu pour afficher l'image désirée avant de la capturer .

data_collection_Moment.jpg

 

Je pensais que le contrôle du bras consisterai simplement à brancher les servos sur les GPIOs du jetson Nano et à les controller directement . Je n'avais juste pas prévu qu'il n'est pas possible d'utiliser le 'PWM' sur les GPIO du jetson . J'ai donc choisi de resortir le arduino nano du projet précédent pour controller les servos .

glados (1).jpg

Maintenant il ne reste plus qu'à collecter des images, entrainer l'IA et ensuite écrire un petit script pour connecter les décisions de l'IA au servos (enfin ca c'est le plan :laugh1: ) .




#109582 Un jeu qui apprend à se jouer lui-même

Posté par Little french kev - 13 mai 2020 - 05:39

J'ai commencé à m'attaquer à la partie logiciel et surtout à la vision du robot qui ne se passe pas tout à fait comme prevu . J'ai donc commencer par créer un jeu tout simple dont le but est de bouger le portal(le truc rond) au dessus du gateau .

game_screenshot.png

 

Une fois le jeux fini, j'ai commencé à m'interesser à comment le robot allait voir le jeux . J'ai un peu hésité à utiliser un méthode de traitement d'image 'classique' (détection de couleur et autre) . Et comme le but de ce projet est quand meme d'apprendre de nouvelle chose je me suis dis qu'il serai sympa de créer et entrainer un réseau neuronal convolutif à l'aide de tensorflow .

Le but de ce 
réseau neuronal convolutif est de prendre une image en entrée et de donner une position de joystick en sortie . Il y a 9 positions de joystick, centre, gauche, haut+gauche, haut, haut+droite...etc
Pour entraîner un réseau de neurones il faut du data et si possible beaucoup . Ici le data consiste en des images du jeu avec le label associé a chaque image est la position du joystick . Collecter toutes ces images prend du temps, j'ai décidé de créer du data synthetique , c'est à dire qu'au lieu de prendre des photos du jeux en train de tourner sur ma télé, j'ai créer des images completements digitales du jeu .

synthetic_data.png

Ici on peu voir que j'ai donc créé un écran noir qui simule l'écran de la télé avec les éléments du jeu dessus . La position de la télé est assez aléatoire de manière à ce que le robot puisse apprendre à jouer sans être parfaitement aligné avec l'écran . Le fond est aussi remplacé par un bruit aléatoire, l'idée derrière cela est que le robot apprendrai à ignorer ce qui se passe en dehors de l'écran .

Avec cette méthode, j'ai pu en quelques heures créer un demi millions d'images labelées . J'ai ensuite créé mon réseau neuronal à l'aide de Tensorflow . J'ai même passé quelques heures a créer un script pour importer les images et labels pour l'entrainement du réseau pour finalement me rendre compte que Tensorflow avait un fonction qui permet de le faire de manière plus efficace en 2 lignes de code!!!

Apres avoir bidouiller un moment avec les paramètres et entraîné le réseau neuronal, il était capable de prédire correctement la bonne position du joystick pour une image donnée a 90% sur le data synthétique.

Malheureusement sur les photos réelles les performances sont très mauvaises .

bad_prediction_on_real_data.png

 

Je pense que cela vient du fait que mon data synthétique est bien trop simpliste (pas de réflexion sur l'écran et fond trop uniforme) .
Je pense que le travail effectué sur le réseau neuronal peut être gardé mais il faut que les data collectées soient de meilleure qualité .
 




#109335 Au bistrot du coin ...

Posté par Little french kev - 06 mai 2020 - 10:14

Je me rappel avoir entendu James Bruton mentionner dans certaines de ses videos qu'il était designer de jouet a l'origine . Sur son site il dit aussi qu'il est passionné d'electronique depuis toujours . 
Je suis toujours impressionné par le volume de travail qu'il arrive a sortir tte les semaines . Entre la création des project et la partie vidéo je ne sais pas comment il arrive a 
tenir la cadence .




#109280 Un jeu qui apprend à se jouer lui-même

Posté par Little french kev - 04 mai 2020 - 08:53

La prochaine étape pour ce projet est d'incorporer une caméra et d'éssayer de le faire jouer en regardant la télé . Pour ca je vais tenter d'entrainer un réseaux convolutif .
Niveau design je me suis bien amusé, . Il est basé sur un de mes personnage de jeu vidéo favori, GLaDOS du jeu portal . J'ai éssayé d'imaginer comment la première version du robot aurai pu voir le jour et à quoi il aurai pu ressembler . J'ai aussi créé un jeu qui consiste a essayé d'attraper un gateau histoire de rester sur le thème du jeu .

dark_vertical.jpg

 

J'espere que le Jetson Nano va etre efficasse!

20200504_181633.jpg