Vous êtes sur la page 1sur 27

REPUBLIQUE DU CAMEROUN REPUBLIC OF CAMEROON

***** *****
Paix-Travail-Patrie Peace-Work-Fatherland
***** *****
MINISTERE DE L’ENSEIGNEMENT MINISTRY OF HIGHER EDUCATION
SUPERIEUR *****
***** University of Yaoundé 1
Université de Yaoundé 1 *****
***** University Saint Jean
Université Saint Jean

COURS D’ELECTROMECANIQUE avec Arduino

RECONNAISSANCE DE L’ETRE
HUMAIN

NOMS DES MEMBRES NOMS DES ENCADREURS


 MEDADJIO Mahiva(c) - M.NJIKE Idris
 MELAGO Patricia - Dr.MBIEDA Frank
 KOUKEP Patricia

ANNEE SCOLAIRE

2023-2024
SOMAIRE
.................................................................................................................................................................... 2
REMERCIEMENT..........................................................................................................................................3
CERTIFICATION............................................................................................................................................5
RÉSUMÉ.......................................................................................................................................................6
INTRODUCTION GÉNÉRALE..........................................................................................................................7
CHAPITRE 1: PRESENTATION DU MATERIEL................................................................................................8
1.1-La carte Arduino................................................................................................................................8
1.2-Les résistors.....................................................................................................................................10
1.3-La caméra........................................................................................................................................10
1.4-Les câbles de connexion..................................................................................................................11
1.5-Le câble de televersement..............................................................................................................12
1.6- L‘écran............................................................................................................................................13
1.7-La plaque à essaie ou breadboard...................................................................................................13
TABLEAU 1 :Matérielles utilisés.........................................................................................................14
CHAPITRE 2 :PRESENTATION DU PROJET ET MÉTHODOLOGIE..................................................................15
2.1-Presentation du projet....................................................................................................................15
2.2-Méthodologie..................................................................................................................................17
2.2.1- Code........................................................................................................................................17
2.2.1.1- Comprehension du projet.....................................................................................................17
2.2.1.2-Préparation de l'environnement de développement............................................................18
2.2.1.3-Téléchargement du code source...........................................................................................18
2.2.1.4-Installation des dépendances................................................................................................19
2.2.1.5-Téléchargement des modèles pré-entrainés.........................................................................19
2.2.1.6-Utilisation d'Alphapose..........................................................................................................19
2.2.1.7-Personnalisation....................................................................................................................20
2.2.1.8-Ressources supplémentaires.................................................................................................20
2.2.2- Montage..................................................................................................................................21

2
2.2.2.2-Ecran Arduino........................................................................................................................23
CHAPITRE 3 : BUSINESS PLAN....................................................................................................................25
3.1 Résume opérationnel......................................................................................................................25
3.2 Naissance et origine du projet.........................................................................................................25

3
4
REMERCIEMENT
Nous tenons avant de présenter ce travail de fin de semestre, d’exprimer toute ma
gratitude envers les personnes qui, de près ou de loin, m’ont apporté leur soutien.
J’adresse tout d’abord ma plus grande reconnaissance à mes professeurs de
mécatronique M.NJIKE Idris et Dr.MBIEDA Frank pour leur excellent
encadrement et pour le suivi attentif et continu de ce projet. Nous tenons aussi a
remercier Mr KEISPER qui nous a encadrer dans toutes les étapes de notre projet
qui vont du choix du projet, de l’achat des matériels a la réalisation du montage.
Nous exprimons notre profonde gratitude aux membres de nos familles respective
qui nous a apporter un grand soutient aussi bien morale que financier. Nous tenons
exprimer une vive a l’institut saint jean et a Mr PARFAIT pour le matériel mit à
notre disposition.

5
CERTIFICATION

6
RÉSUMÉ
Le projet auquel nous nous attelons depuis quelques semaines vise à la détection
des pose humaines en temps réel en utilisant les approches avancées
d’apprentissage profond pour repérer et suivre les approches avancées
d’apprentissage profond pour repérer et suivre les articulations clés du corps
humain telles que les épaules les hanche et les coudes dans les images ou vidéo .
ll sera principalement utile dans l’analyse de mouvement, la capture de
mouvement, la surveillance des vidéos l’animation 3D la recherche en
biomécanique et d’autre domaine lies a l’analyse des mouvement humains.

7
INTRODUCTION GÉNÉRALE
Le cour de mécatronique a été intégrer au programme de l’institut saint gens afin
de d’amener les étudiants a développer de compétences professionnelle tels que
leur esprit d’équipe, de créativité , leur bon sens de discernements et la capacite à
résoudre des problèmes . Ainsi au terme du semestre il doivent concevoir un projet
qu’il devrons présenter afin de montrer leurs capacités a concevoir un projet qui
dans notre cas est un projet arduino .

Créée en 2005 par 5 collégiens, la carte Arduino Uno est une plateforme
électronique de prototypage rapide sur laquelle on peut raccorder des capteurs
(entrées) et des actionneurs (sorties). Celle ci est utilisée dans plusieurs domaine
vie comme l'électronique, la robotique, le pilotage des capteurs pour la physique,
systèmes embarqués. Parlant des domaines de la sécurité, la surveillance et
l'authenticité, la carte Arduino peut être utilisée dans la reconnaissance des êtres
humains. Au cours des dernières semaines, nous avons réunis nos idées, efforts
dans le but de mettre sur pied un dispositif capable d'estimer avec précision les
positions des points clés du corps humain sur des photos et même des vidéos. Celui
ci est efficace aussi bien en présence d'un seul individu que de plusieurs. Vous le
connaissez peut être sous le nom d'Alphapose. La reproduction et amélioration du
premier système Open Source qui atteint 75mAP sur l'ensemble des données
COCO et plus de 80mAP sur l'ensemble de données MP11 nous a paru être un
choix de qualité pour notre tout premier projet de mécatronique.

8
CHAPITRE 1: PRESENTATION DU MATERIEL

Le projet de reconnaissance des êtres humains à l'aide d'Arduino est une


initiative passionnante nécessitant des composants tels que la carte Arduino, des
résistances, une caméra, un écran, des fils, une plaque et des câbles. En combinant
ces éléments, nous cherchons à réaliser un dispositif capable de distinguer le corps
humain dans une image, de suivre ses mouvements, ouvrant ainsi la voix à une
multitude d'applications potentielles dans les domaines de la sécurité, la domotique
et la technologie portable. Il convient alors de mentionner, l'usage que nous feront
de ce matériel.

1.1-La carte Arduino

Précisément la carte Arduino UNO est utilisée dans ce projet en raison de sa


facilité de manipulation de sa flexibilité et de sa capacité à interagir avec différents
capteurs et périphériques. À partir du code source, elle contrôle et interagit avec la
caméra et l'écran, respectivement périphériques d'entrée et de sortie indispensables
à notre projet

Il existe plusieurs types de carte Arduino parmi lesquels on a :


TYPE ARDUINO IMAGE DESCRIPTION

Arduino Uno C’est l’Arduino standard, le plus


utilisé et le plus simple mais le
microcontrôleur e (ATMega328P)
ne gère pas la communication en
USB, il doit donc utiliser une
puce secondaire (atmega16u2,

9
CH340, CH341 ou FTDI).

Figure1 : Arduino Uno

Arduino Nano C’est la version miniature de


l’Arduino UNO (même
microcontrôleur), il est utilisé
pour les petites réalisations
spécialement adaptée aux plaques
à essaie ou à une intégration dans
un petit boitier.
Figure2 : Arduino Nano

Arduino Leonardo Une évolution de l’Arduino


Uno, il possède le même format,
mais son microcontrôleur
(ATMega32U4) gère directement
l’USB, ce qui lui permet d’être
reconnu comme un périphérique
USB (clavier, souris, manette de
jeu) par l’ordinateur.

Figure3 : Arduino Leonardo

Arduino Mega 2560 C’est une autre évolution de


Arduino, il propose 16 entrée
analogiques et 54 entrées/sorties
numériques dont 15 sorties
analogiques virtuelles PWM.

Figure4 : Arduino Mega 2560

Fig : tableau des different types de carte Arduino

10
1.2-Les résistors

Ils sont utilisés pour limiter le courant électrique qui circule à travers les
composants. Dans le cadre de notre projet, nous les utiliserons pour protéger la
caméra en réduisant le courant qui circule à travers elle, ce qui contribue à
prolonger sa durée de vie. Aussi, les résistors de 680 K, 1 K, et 2 résistors de 10 K
seront utilisés pour limiter le courant qui circule à travers l'écran. Les résistances
sont donc des éléments importants dans l'assemblage du dispositif, car ils
permettent de limiter le courant traversant les composants électriques et d'adapter
les niveaux de tension si nécessaire.

Fig.: résistors de 680K Fig.: résistors de 10K Fig.: résistors 1K

1.3-La caméra

La camera utilisée dans notre projet est Camera Ov7670 elle capture les images
et vidéos en temps réel. Ces dernières sont ensuite traitées suivant le code source
afin de détecter les êtres humains présents dans les zones filmées. En résumé, la
caméra fournit les données visuelles nécessaires à l'analyse et à la détection des
êtres humains.

11
Fig. Camera OV7670

1.4-Les câbles de connexion


Ils nous sont généralement utiles dans ce sens où ils permettent de connecter les
capteurs, les modules, les LEDs, résistances et autres composants à la carte
Arduino. Ils sont utilisés dans ce projet pour relier la caméra, l'écran les résistances
et la carte Arduino. Il est important de choisir les bons types de câbles afin d'éviter
les erreurs de connexion il existe 3 type de câbles a savoirs :

Les câbles mâles mâles

Les câbles femelles femelles

12
Les câbles males femelles

Dans notre projet nous avons utilisés les câbles de connexion males femelles et
males males

1.5-Le câble de televersement

Il est indispensable dans tous les projets qui utilisent Arduino, car permet
d'alimenter l'ensemble du matériel, et de transférer le code source de l'ordinateur
pour la carte Arduino.

13
fig. Câble de connexion

1.6- L‘écran

L’écran FLYsight permet dans ce projet d'afficher l'image finale, qui a


préalablement été capturée à l'aide de la caméra et traitée selon les indications du
code source. Cet image finale doit comprendre la photo où image initiale ainsi que
plusieurs lignes de couleur formant à peu près le squelette de l'être humain, et ceci
autant qu'il y a de personnes sur l'image initiale.

1.7-La plaque à essaie ou breadboard

14
C'est grâce à elle qu'il est possible de réaliser des montages électroniques sans
soudure en association notamment avec une carte à microcontrôleurs à l'instar
d'Arduino. Elle permet d'économiser de l'argent car en l'utilisant l'on peut se
tromper plusieurs fois et recommencer sans pour autant gâcher le matériel. Elle
s'utilise avec des bouts de fils de cuivre monobrins appelés straps. La majeure
partie du matériel du projet y est connectée. Et en l'utilisant, on peut réaliser des
montages en parallèle comme en série.

Fig. plaque a essaie

TABLEAU 1 :Matérielles utilisés


Materielles Caractéristique
01 Carte Arduino UNO ATmega328, Tension 5 V, Entrées/sorties
digitale :14, Entrées analogique :6, Mémoire
Flash : 32 KB, Frequence d’horloge 16 MHz

04 Resistores 1 de 680 K, 2 de 10 K,1 de 1 K

01 Camera OV7670 Objectif de 1,6 ¨, angle de vision de


25°,resolution max de 640x480 pixel(VGA)

Fils de connexion (males femelles et males Compatible avec les en tete de bronche a
males ) espacement de 2,54mm.120pcs fils de
different bande(40M/M+ 40 F/F)

01 Cable de televersement Cables USB-A vers USB-B 1,5 mètre


(OT2480)

01 Ecran FLYsight 3,2pouces, definition 854x480 pixels

15
CHAPITRE 2 :PRESENTATION DU PROJET ET MÉTHODOLOGIE

2.1-Presentation du projet

La reconnaissance des êtres humains proprement dit est divisée en trois qui sont

 L’estimation de la pose humaine cette étape consiste dans un premier temps


a détecter l’Homme sur une image , puis capture un ensemble de
coordonnées en définissant les articulations du corps humain comme le
poignet, l'épaule, les genoux, les yeux, les oreilles, les chevilles et les bras,
ce qui est un point clé dans les images et les vidéos qui peuvent décrire la
pose d'une personne. Ensuite identifie les coordonnées de ces parties du
corps et articulations détectées afin identifie la pose de celui-ci. Il existe
plusieurs types de modèles d’estimation de la pose parmi lesquels on peut
cités
1 .Modèle basé sur le squelette : également appelé modèle cinématique, ce
représentant comprend un ensemble de points clés (articulations) tels que les
chevilles, les genoux, les épaules, les coudes, les poignets et les orientations
des membres principalement.

Ce modèle de corps humain flexible et intuitif comprend la structure


squelettique du corps humain et est fréquemment appliqué pour capturer les
relations entre les différentes parties du corps.

16
2. Modèle basé sur les contours : également appelé modèle planaire se
compose du contour et de la largeur approximative du corps, du torse et des
membres. Fondamentalement, il représente l'apparence et la forme d'un
corps humain, où les parties du corps sont affichées avec des limites et des

rectangles du contour d'une personne.

Dans le cadre de notre projet nous allons utiliser le modelé basé sur le
squelette

 La reconnaissance des gestes un geste est généré principalement par le


mouvement et la forme des mains, Les trajectoires des mains peuvent ainsi
suffire à décrire le geste. Ceux peut être fait grâce a des technique de suivi
des geste qui sont en générale les technique de suivit des objets. Il existe e
trois catégories de méthodes de suivi : les méthodes d’optimisation d’une
grandeur scalaire, les méthodes d’appariement de détection et les méthodes
probabilistes.

 La reconnaissance faciale : il s’agit d’une méthode d’identification d’une


personne grâce à l’analyse de son visage. après avoir scanné un visage, le
système tente de faire correspondre l’image à des images contenues dans une
base de données de visages. Ainsi il ne s’agit pas de se souvenir d’une
personne comme c’est le cas dans la reconnaissance faciale des smartphone,
mais de déterminer si cette personne figure dans le système.

Dans le cadre de notre travaille nous allons nous limiter à la première étape
qui est l’estimation de la pose d’une personne .

2.2-Méthodologie

17
Notre projet baser sur la pose de l’être humain s’inspire du projet alphapose
développé par l’académie chinoise des sciences. Le projet de reconnaissance des
êtres humains consiste à développer une technologie capable d'identifier et de
suivre les individus à l'aide d’un algorithme d’apprentissage profond pour analyser
des images ou des vidéo et d’estimer la pose d’un ou de plusieurs individu a temp
reel comme développer plus haut dans l’estimation de la pose humaine .Et le
résultat sera donner suivant le modèle basé sur le squelette .

En termes de précision, la reconnaissance des êtres humains a fait


d'énormes progrès ces dernières années grâce aux avancés dans l'intelligence
artificielle et l'apprentissage automatique. Cependant, il existe encore des défis à
relever tels que la protection de la vie privée, la fiabilité des systèmes, la lutte
contre fraude et contrefaçons.

2.2.1- Code

2.2.1.1- Comprehension du projet

Alphapose est un projet fascinant qui utilise des algorithmes avancés pour
détecter des poses humaines dans les images et les vidéos même dans les scénarios
les plus complexes en utilisant des réseaux de neurones convolutés .Le dispositif
est capable de tracer une esquisse du corps humain, fournissant ainsi des
informations détaillées sur les mouvements et les postures.

En raison de sa capacité à détecter les poses humaines dans les


environnements variés, il est utilisé dans une large gamme d'applications,
notamment la recherche en biomécanique, l'analyse mouvement sportifs, la réalité
virtuelle.

Il est configurable et peut être adapté aux besoins spécifiques d'un grand
nombre de projets.

18
2.2.1.2-Préparation de l'environnement de développement

Puisque alphapose est basé sur python, nous allons nous concentrer sur la
configuration de l'environnement python pour ce projet. Voici donc les principales
étapes à suivre :

•Installation de Python:

Assurez-vous d'avoir python installé sur votre système. Il est recommandé


d'utiliser python 3.x, car de nombreuses bibliothèques et projets récents sont
compatibles avec cette version.

•Création d'un environnement virtuel:

Sur Windows, commencez par ouvrir l'invité de commande. Ensuite allez dans le
répertoire de votre projet si vous voulez spécifier un emplacement pour
l'environnement virtuel. Puis exécutez la commande suivante pour créer un
environnement nommé "venv" :

""bash python -m venv venv""

Enfin, activez l'environnement virtuel en utilisant la commande :

""bash .\venv\Scripts\Activate""

Il s'agit d'une bonne pratique pour isoler les dépendances de ton projet et éviter les
conflits avec d'autres projets, mais cette étape n'est pas obligatoire.

2.2.1.3-Téléchargement du code source

Rendez-vous sur la page Github du projet Alphapose à l'adresse :

http:/github.com/MVIG-SJTU/Alphapose

Copiez le code du référentiel en appuyant sur le bouton " code " vert en
sélectionnant "clone with http". Ensuite dans la ligne de commande, déplace toi

19
dans le répertoire dans lequel tu veux stocker le code et exécute la commande
suivante en remplaçant <repost-link> par le lien que vous aurez copié.

""bash git clone <repost-link>""

Une fois la commande exécutée, tu auras une copie locale du code alphapose dans
le répertoire spécifié

2.2.1.4-Installation des dépendances

Les étapes pour installer les dépendances du projet alphapose sont :

•ouvrez une ligne de commande

•rassurez-vous d'être dans le répertoire racine du code Alphapose où se trouve


le fichier "requierents.txt"

•utilisez la commande suivante pour installer les dépendances via pip:

""bash pip install -r requirements.txt""

2.2.1.5-Téléchargement des modèles pré-entrainés

Les modèles pré-entrainés sont cruciaux pour l'utilisation d'Alphapose car ils
représentent les connaissances déjà acquises par le modèle pour détecter et suivre
les poses humaines. Ils sont disponibles sur le site d'Alphapose ou sur le référentiel
Github. Dans la plupart des cas, vous trouverez des liens directs vers les modèles
pré-entrainés.

2.2.1.6-Utilisation d'Alphapose

•Exploration du code source :

20
Prenez toujours la peine de parcourir le code source pour comprendre les
différentes fonctionnalités offertes ainsi que les méthodes d'utilisation des modèles
pré-entrainés pour la détection des poses.

•Exécution et détection des poses:

En utilisant les scripts fournis par alphapose, détectez les poses humaines sur les
modèles pré-entrainés.

2.2.1.7-Personnalisation

Explorez si nécessaire les possibilités d'extension ou de personnalisation


d'Alphapose pour répondre aux besoins spécifiques de votre projet.

2.2.1.8-Ressources supplémentaires

Voici quelques ressources supplémentaires précieuses dans la réalisation du projet


alphapose :

•La documentation officielle :

Elle fournit des détails importants sur l'installation, l'utilisation, la personnalisation,


et plus encore on y trouve des guides, des tutoriels, des exemples, des explications
détaillées sur le fonctionnement d'Alphapose.

•Les forums et communautés en ligne:

Participer à des forums de développeurs, groupes de discussion, communautés en


ligne peut être très utile. Ds plateformes telles que Stack Overflow, Reddit offrent
des conseils pratiques et réponses à des questions spécifiques.

•Blogs et articles spécialisés:

Des blogs animés par des experts en vision par ordinateur ou apprentissage
profond peuvent fournir des analyses techniques, des conseils de mise en œuvre
avancés, des études de cas...

21
Rechercher des blogs sur des sites comme Medium, Towards data science, ou des
plateformes de publication des universités donnent un aperçu approfondi sur
alphapose et ses applications.

2.2.2- Montage
2.2.2.1-Camera Arduino

Le montage de notre projet consiste principale a assembler la camera a la carte


Arduino a l’aide de matériaux cite plus haut comme c’est le cas dans la figure qui
suit

Afin de visualiser si le montage est bien fait nous allons suivre les etape suivante :

 Installer AdulmageCapture via le lien suivant


https://circuitjournal.com/download?file=ArduImageCapture.1.1.zip
 Extrait le fichier zip et copiez le dossier « ArduImageCapture » dans votre
dossier « outils » Arduino à côté du dossier « bibliothèques » d’Arduino (C:\
Users\<username>\Documents\Arduino\tools )

22
 redémarrez notre IDE Arduino, et « ArduImageCapture » était visible dans
le menu « Outils ».

 Téléchargez le code de mon projet LiveOV7670 via le lien


https://github.com/indrekluuk/LiveOV7670 et Copiez les deux
bibliothèques « LiveOV7670Library » et « Adafruit_GFX_Library » de
« src/lib » à votre dossier « bibliothèques » Arduino.
LiveOV7670Library contient le code qui communique avec le module de
caméra OV7670. Adafruit_GFX_Library est une dépendance de la
bibliothèque d’écrans « Adafruit-ST7735 ».
 Ouvert le code de LiveOV7670Library avec l’IDE Arduino apres quelques
manipulation nous avons televerser le code dans la carte , puis cliquer sur
ArduImageCapture et nous avons pu visualiser l’image qui montre que notre
camera est bien connecter

23
Cette étape terminer , nous pouvons téléverser le code du projet
proprement dit .

2.2.2.2-Ecran Arduino

Les Problèmes que ce Projet Résous

En général lorsque l'on conçoit un projet il y a un objectif à atteindre, un


problème à résoudre. Avant la réalisation de tout projet, il est important de de

24
poser la question "Quel problème vais-je résoudre ?". C'est à partir de cette
question qu'il nous est venu à l'esprit de nous engager dans un projet de détection
des êtres humains avec Arduino.

Nous savons tous que les espaces publics, marchands et même les écoles sont
truffés de caméra pour des besoins de sécurité. Mais ces caméras ne résolvent pas
totalement le problème car elles sont incapables de distinguer les humains des
autres formes dans une image. C'est pour cette raison que nous avons fait de la
sécurité le principal but de notre projet. En effet, si la caméra est apte à détecter
l'humain en général, il sera alors possible de détecter à partir d'elle un humain en
particulier ce qui serait évidemment efficace pour résoudre les cas de vol entre
autres.

De même, la détection des êtres humains sur une image peut favoriser
l'amélioration des espaces marchands. En effet, s'il est possible d'estimer
précisément la moyenne des personnes qui s'y trouvent sur une période donnée,
tout porte à croire que des décisions à prendre à cette fin deviendront plus faciles .
Aussi, afin d'améliorer le commerce et de créer un espace favorable pour les clients
et les commerçants, il serait utile de créer un dispositif qui détecte les êtres
humains et les comptent pour savoir si le lieu est propice pour l'exposition des
marchandises.

En plus, il aide à la détection des humains en temps réelles. Les ordinateurs


peuvent détecter et prédire le comportement des piétons de manière très précise,
ce qui permet une conduite plus cohérent. Il a un large éventail d’applications
pratique, notamment l’analyse sportive, la rééducation médicale, la robotique et la
sécurité.

Par exemple, par exemple, Alphapose peut être utilisé pour améliorer la
mécanique corporelle des athlètes suivre les progrès des patients dans les
programmes de rééducation contrôler les mouvements des humains et détecter les
comportements suspects dans les images de sécurité.

25
CHAPITRE 3 : BUSINESS PLAN

3.1 Résume opérationnel

Ce projet consistait à la réalisation d’un système de pose 2D en temps réels


permettant de suivre les mouvements des humains sur les photos et les vidéos. Il
repose sur des réseaux de neurones convoluté souvent couple a des méthodes de ré-
identification pour gère les défis de suivi en environnement réelle il est capable de
détecter et identifier les points d’articulation clés du corps humain : épaules,
genoux, hanches, coude...Son fonctionnement en temps réels permet une suivie
dynamique des mouvements.

3.2 Naissance et origine du projet

Tout comme le reste de nos camarades de première année, c’est au cours de


l’année que nous avons appris les premières notions de mécatronique. Au début,
c’était difficile mais peu à peu, nous nous sommes habitués à la cadence plutôt
rapide des cours. Il s’est avère que le kit Arduino avait de nombreuse
applications, toutes plus intéressantes les unes que les autres et l’utiliser en cours
n’a pu que développer notre créativité. Pour notre premier projet, nous avons
décidé ensemble de faire quelques chose de surprenant, et aussi impressionnant
que possible, quelque chose que beaucoup croisaient impossibles à réaliser. D’où
la réalisation d’un système capable de détecter les être humain dans les photos et
vidéos.

Conclusion

Bibliographie

26
Appendix

27

Vous aimerez peut-être aussi