Université Ahmed Draia - Adrar Faculté des Sciences et de la Technologie Département des Mathématiques et Informatique
Mémoire de fin d’étude, en vue de l’obtention du diplôme de master en informatique
Option: réseaux et système intelligents
Thème
Commande à distance des appareils électroniques par vision
artificielle
Préparé par
M
elleMaissa DAOUDI et
M
elleFatima Zohra BEKRAOUI
Encadré par
Mr. Djilali CHOGUEUR
2
Remerciements
Avant d'entamer ce rapport de fin d'études, nous tenons
d'abord à exprimer nos sincères gratitudes envers tous ceux qui
nous ont aidés. Nous citons particulièrement notre encadreur
Monsieur «CHOGUEUR» qui s’est montré à l’écoute et très
disponible, pour l’aide précieuse et pour le temps important qu'il a
bien voulu réserver pour examiner notre petite expérience et porter
des corrections à chaque fois qu'il est nécessaire.
Nous remercions infiniment nos collègues Mademoiselle
BOUTADARA Nadia et Mademoiselle ELAZZAOUI Noura
pour nous avoir fourni des informations importantes et combien
profitables. Beaucoup de respect à l’égard de monsieur KOHILI
et monsieur YAICHI pour leurs conseils et leurs orientations de
grandes valeurs.
Nos remerciements s’adressent également à tous les membres
du jury pour avoir accepté de lire et de valoriser ce travail, tous les
enseignants du département mathématiques et informatique pour le
temps important qu'ils ont bien voulu nous consacrer.
A mes parents, pour leur bienveillance et leur tendresse.
A mon frère et à ma sœur – A toute ma famille.
Je vais me contenter de vous dédier ce modeste travail en
guise de ma reconnaissance éternelle.
A tous mes amis, mes professeurs pour leur aide et soutien
A mon binôme « Fatima Zohra »
A tous ceux qui m'aiment.
4
Dédicace
A mes parents - Aucune des expressions ne saurait exprimer
l’immense amour que je vous porte.
Que le bon dieu vous garde et vous préserve.
A tous mes frères et toutes mes sœurs.
A mes professeurs dignes de mon respect pour leurs orientations et
leurs enseignements.
A mon binôme « Maissa »
A tous mes amis.
5
Résumé
La réalisation des dispositifs de commande à distance des appareils électroniques en utilisant les aspects géométriques et cinématique de la vision par caméra, est un projet qui est très recherché et apprécié de nos jours. Il s’inscrit dans le cadre de modernisme et des nouvelles technologies de pointe que l’homme réalise pour son service et son bien être. Il est cependant formidable de voir émergé de nouveaux types de comportements, de développer les appareils domestiques facilement contrôlés par le propriétaire dans une maison intelligente ou une domotique.
Son utilité vise surtout des actions importantes dans notre quotidien tel que le contrôle à distance des appareils électroniques. Ce système est conçu pour aider les personnes âgées, les catégories particulières telles que les personnes muettes, aveugles ou autres handicapées répondre à leurs besoins, surtout les soutenir, faciliter leurs tâches et permettre leur intégration dans la société d’une manière très simple.
Le système de commande met en œuvre la technologie sans fil à travers le module Bluetooth, LED infrarouge, et des signaux de radio fréquence. Pour concrétiser cette démarche à faible cout, la conception est basée sur l’outil Arduino qui est considéré à notre avis le plus adéquat, ou les appareils ménagers sont connectés aux ports d’entrée / sortie de cette carte via les relais.
Les mots clefs : commande, domotique, Arduino, traitement d’image.
صخلم
ةيسدنهلا سيياقملا لامعتساب متي ةينورتكللاا تلالآل صصخملا دعب نع مكحتلاب ةصاخلا ةزهجلأا نأ كش لا يئامنيسلاو ة اريماكلا ةقيرطب . نهارلا تقولا يف بولطمو عساو هيف ثحبلا قاطن عورشملا اذهو . هليجستب زيمتي وهو كتلا ثحبلا تاذ ةيرصعلا عيراشملا نمض نم هل هرفوي امم ديفتسيو هفشتكي نأ ناسنلإا ديري املاطل يذلا يلاعلا يجولون هتحارو هتمدخ . ناسنلإا نكمت اهريغو ةيلزنمورهكلا تلالآا ريوطت يف زربت تلاماعتلا نم ةديدج اعاونأ نأ ادج عئارو ةيللآا قيرط نع ةطاسبب اهيف مكحتلا نم . ةزهجلأا لامعتسا يف دعب نع مكحتلا نإ رثكأ ديفم نوكيو صخشلل ةيمويلا تاجايتحلااب امومع طبترم ةيلزنملا نيقاعملا وأ ةصاخلا تاهاعلا يوذ وأ نينسملا سانلل . نم ففخيو عمتجملا يف مهجامدإ لهسيو مهبسانيو مهدعاسي وهو مهديقعت .6 كلسلالا لاصتلاا مادختسا ىلع ماظنلا اذه دمتعيو ي تاراشلإاو توثولبلا ةينقت لامعتساب ءارمحلا تحت ويدارلا تاددرتو . ونيدرأ ةحول ىلع دنتست عورشملا ةينب نإ ظحلان عورشملا ميمصت متي ثيح ( arduino ) لصوت ثيح لوخدلا ذفانم للاخ نم اهعم ةزهجلأا و ونيودرلأل ةعباتلا جورخلا . ةيحاتفملا تاملكلا : ةروصلا ةجلاعم ،ونيودرأ ،لزنملا ةيلآ،مكحتلا .
7
Introduction générale
De nos jours, la science et la nouvelle technologie de pointe évoluent d’une manière galopante. Les résultats obtenus récemment dans les domaines informatiques et électroniques sont très impressionnants. Ces recherches ont conduits à de nouvelles découvertes en matière de puissance de calculs des microprocesseurs, des systèmes de sécurité de surveillance ou d’alarme, la caméra numérique, le système robotique ainsi que la commande des appareils électroniques par vision artificielle entre autres. Toutes ces installations sont devenues extrêmement performantes pour un cout de plus en plus réduit.
Ce constat nous permet de relever d’abord un contexte industriel, qui est en rapport avec les progrès enregistrés par la fabrication des composants électroniques et informatiques mais il est très important de mieux situer la vraie problématique de la commande des appareils électroniques par vision artificielle et c’est notre thème, qu’il s’agit surtout de la mise en place d’un système particulièrement sensible qui va toucher des millions ou des milliards d’individus dans le monde avec l’objectif soit d’améliorer leurs conditions de vie soit de leur apporter assistance et secours. Dans une certaine logique, nous remarquons que la frange des personnes âgées, les franges des catégories particulières des sourds, des muets ou d’autres personnes handicapées profiteront de ces avantages.
C’est grâce à ces atouts qui sont potentiellement utiles que notre projet et beaucoup d’autres constituent ce large éventail d’applications qui vise à améliorer et développer le niveau de vie existant.
Objectif de l'étude
Par conséquent la commande à distance des appareils électroniques vient d’ajouter une valeur de plus au soutien de l’homme afin de lui permettre d’assumer des taches qui sont devenues pour lui au fil des jours difficiles ou pénibles. Ce principe doit rester, bien sur, loin de la notion de faire substituer la machine à l’homme dans un sens négatif. Au contraire, les facultés de perception et de raisonnement progressent dans un objectif positif et vital pour améliorer le quotidien de chaque individu.
8
Si nous pensons à intervenir ou aider des personnes âgées ou handicapées, surtout ceux qui n’ont plus la force d’utiliser un fauteuil roulant, ou d’autres personnes qui ne peuvent plus bouger pour exécuter facilement des taches quotidiennes telles que éteindre une lumière ou mettre en veille un téléviseur, ceci n’a aucune relation avec la paresse, ce sont des réflexions positives.
Plan du mémoire
Pour la réussite de notre mémoire, notre première réflexion s'est fixée sur l’élaboration d'un plan de travail dont le déroulement est le suivant :
Le premier chapitre est consacré à la domotique. Nous citerons dans un premier lieu les dates marquantes de son histoire. En second lieu, toutes les technologies de la domotique seront exposées en passant par les fonctionnalités et le système. En troisième lieu nous allons cerner d’une manière succincte les domaines d’applications et nous terminerons ce chapitre par une conclusion.
Le deuxième chapitre sera réservé à la commande par vision artificielle. Il commence par l’historique de traitement d’image. Intervient ensuite la définition de ce thème suivie par une explication sur les types, les caractéristiques et les formats. L’importance de ce chapitre oblige que soient cités également les différents types de traitement d’image et la détection d’objet. Après avoir présenté les domaines d’applications avec leurs développements, ce chapitre sera terminé par une brève conclusion.
Le troisième chapitre a une importance particulière, puisqu’ il englobe la conception et l'architecture du système. C’est pour cette raison que nous avons mentionné le choix de l’approche, la présentation de l’UML et son historique. Il portera avec beaucoup d’éclaircissements sur les différentes phases clés du développement. Le quatrième et dernier chapitre conserve trois étapes très riches débutera par
l'environnement de développement. Le deuxième point va s'articuler sur la description de l'interface de notre application en détail. le troisième point sera réservé à la comparaison de notre approche avec les autres techniques. enfin on va clôturer ce chapitre par une conclusion.
9
1. Introduction
Il serait plus prudent de situer d’abord le confort que voudrait s’offrir l’être humain dans son vrai contexte, et surtout quand il s’agit de sa demeure. Aujourd’hui, nos maisons se trouvent dotés de plus en plus de produits technologiques. Ce sentiment inné dans l’homme lui permit de se lancer à travers des recherches et des découvertes. Dans un sens plus particulier de voir même sa maison qui « s’adapte » à lui et à ses besoins.
Dans cet ordre d’idées et au même titre de bien gérer un budget, d’organiser le temps et des activités, ou bien de profiter des équipements ou des accessoires perfectionnés d’une voiture (fermeture centralisée, toit ouvrant, alarme à distance, climatisation,…etc.), la domotique nous offre la possibilité d'opter pour une maison adaptable au rythme des exigences de la vie et des habitudes. Ce constat est justement confirmé par l’évolution et le progrès au fil des années atteint par l’homme.
2. Définition de la domotique
2.1. Définition de dictionnaire
Ensemble de techniques et des études tendant à intégrer à l'habitat tous les automatismes en matière de sécurité, de gestion de l'énergie et de communication [LAR, 95].
2.2. Définition
La domotique est l'ensemble des techniques de l'électronique, de physique du bâtiment, d'automatisme, de l'informatique et des télécommunications utilisées dans les bâtiments, permettant de centraliser le contrôle des différents systèmes et sous-systèmes de la maison et de l'entreprise.Il s'agit donc d'automatiser des tâches en les programmant ou les coordonnant entre elles [PUJ, 10].
10
3. Historique de la domotique :
Brièvement, le mot domotique a été introduit dans le dictionnaire « le petit Larousse » en 1988. Ce mot a été construit à partir de « Domus », la demeure de maître en latin, associé au suffixe «tique », couramment employé pour évoquer le terme des technologies (automatique, électronique, électrique, informatique).on associe souvent le début des travaux domotiques aux années 1970, voire 1980, avec les problématiques énergétiques dues aux crises pétrolières qui ont considérablement affecté le domaine de la construction et de l’exploitation du bâtiment.
Depuis le milieu des années 1990, un autre segment, orienté sur la micro-informatique et les loisirs numériques, se développe. Cette nouvelle apparition marque en particulier l’introduction de l’informatique dans l’habitat et l’apparition des supports numériques : les cédéroms, puis les DVD et internet.
Ainsi aujourd’hui, la gestion de l’habitat, la sécurité, les réseaux de communication et les loisirs numériques esquissent le paradigme de domotique [GAL, 12].
4. Les Fonctionnalités de la domotique
Cette nouvelle approche efficace est conçue pour des objectifs très variés présentant de vifs intérêts qui répondent aux attentes des populations et particulièrement aux besoins primordiaux des handicapés et offrant des opportunités pour les gens en difficultés [MAR, COU] :
11
4.1. Le confort
Actuellement, les logements sont correctement équipés au niveau appareillages électriques ce qui offre un certain confort mais s’accompagne de multitudes contraintes car rien n’a été pensé pour connecter ces appareils. La domotique vous permet de transformer votre habitation en un outil intelligent, à votre service, qui évolue avec vous, le système simplifie les activités quotidiennes.
La centralisation des contrôles permet de gagner du temps, de connaître instantanément l’état de tous les systèmes de la maison (éclairages, températures,…etc.) et de les modifier à votre convenance.
4.2. La sécurité
C’est la protection des biens et des personnes, Elle est assurée par des capteurs telle que :
Détection d’une présence ou d’une intrusion (détecteur de mouvement ou d’accès) ; Dissuasion (sirène) ;
Surveillance de l’accès par des pièces du logement (caméras externes et internes) ; Transmission et visualisation des alarmes sur incident (envoi de mail).
4.2.1. Les alarmes techniques:
12
Le système domotique peut vous alerter en local ou à distance en cas d’anomalies des équipements suivants:
Congélateur à l’arrêt ;
Détection fuite de gaz ;
Fuite d’eau ;
Incendie ;
Fumée.
4.2.2. Simulation de présence en cas d’absence:
En programmant le système de sorte que les volets se baissent et se relèvent à des heures déterminées, ou pour que les lumières s’allument et s’éteignent, afin de donner l’impression que votre maison est occupée même si vous êtes partis en vacances.
4.2.3. Les vidéosurveillances:
Les caméras installées à l’extérieur et à l’intérieur de l’habitation permettent d’observer tout ce qui se passe dans et autour de la maison et suivre les anomalies en direct. Sur détection de présence, la vidéo est envoyée par mail au correspondant. La figure suivante montre des exemples sur les cameras de la vidéosurveillance :
4.3. L’énergie
13
Le système domotique permet de surveiller et comptabiliser les énergies du foyer eau, gaz, électricité,…etc. Ces informations de télé-relevés proviennent de capteurs spécifiques installés sur les circuits eau, gaz, électricité,…etc (éclairage et chauffage). La figure suivante montre un exemple sur un compteur d’énergie :
4.3.1. Traçabilité
Les informations sont traitées par le système et transcrites sous forme de tableaux de bord pour le foyer. Ces suivis permettent par exemple :
d’analyser les consommations Fixer des seuils
Déclencher une alarme,…etc.
4.4. Multimédia
C’est un ensemble de techniques et de produits qui permettent l'utilisation simultanée et interactive de plusieurs modes de représentation de l'information (internet, informatique, téléphone, sons, images, textes). La distribution du multimédia dans chaque pièce permet de :
Accéder à internet en haut débit, depuis n’importe quel pièce dans la maison. Figure 4: Présentation de Compteur Edf Linky
Edf Linky Edf Linky
14
Déplacer l’ordinateur ou la télévision à volonté.
Relier une imprimante et un ordinateur situés dans deux pièces différentes de votre logement.
Musique en réseau dans le logement,…etc.
5. le système domotique
L’installation domotique peut être pilotée localement ou à distance depuis votre Smartphone, un écran tactile ou encore un ordinateur. Le schéma simplifié, ci-dessous, permet de mieux comprendre la circulation des informations dans une maison « intelligente » [SIR, XX].
Figure 5: une image exprime la multimédia dans une maison Edf Linky
15
1-Circuit de commande, transmission des informations pour la réalisation d'une tâche à partir du tableau électrique, le Wifi,…etc.
2- Les informations sur l'état des appareils.
Tout système domotique est composé d'éléments primaires, qui sont [BOU, AMI, 16] : Le système d'exploitation (par exemple, un ordinateur ou un mobile);
Le dispositif utilisé (par exemple, une lampe);
L'interface, ou lien, entre l'utilisateur et le périphérique.
Le contrôle des appareils à l'intérieur de ce système peut être effectué par une télécommande ou une commande automatique :
a- Une télécommande
La télécommande vous offre la commodité de contrôler l'éclairage, les appareils électroménagers,…etc. Il existe plusieurs méthodes différentes pour contrôler les appareils à distance.
b- Contrôle automatique
16
Le contrôle automatique ajoute encore plus de commodité en permettant aux choses de se produire automatiquement, sans aucun effort nécessaire.
6. Les différentes technologies
Généralement, une installation domotique peut être conçue sur quatre principaux types de technologie. Ces technologies sont employées pour la transmission d’informations entre les équipements d’un système d’automatisation ou de communication [SIR, XX]:
6.1. La technologie bus filaire
La technologie bus filaire, est souvent utilisée dans la construction ou la rénovation de bâtiments. Cette technologie veille à ce que tous les composants communiquent entre eux avec le même langage afin qu’ils puissent échanger les informations, les analyser et les traiter. L’information circule dans les deux sens: une unité d’entrée envoie des informations aux récepteurs de sortie chargés de faire effectuer une tâche précise à des équipements de l’installation électrique (éclairage, chauffage, alarme,…etc.). Ces derniers envoient ensuite des informations concernant leur état vers la ou les unités d’entrée.
Figure 7: Les différentes technologies de la domotique .
Les différentes
technologies
L’infrarouge
La
radiofréquence
Le courant porteur en ligne La technologie bus filaire17
L’installation de ce dispositif est composée de deux réseaux :
Un réseau bus filaire reliant les capteurs (détecteurs, interrupteurs, sondes) aux actionneurs (éclairage, ouvrants, chauffage, produits de puissance);
Un réseau d’alimentation reliant les actionneurs au courant fort. Ce type d’installation présente pour les utilisateurs plusieurs avantages :
La réduction massive du câblage: un seul câble en général pour tous les équipements au lieu d’un par équipement ;
Une meilleure fiabilité de la transmission des informations et de l’installation ;
Une évolutivité de l’installation à tout moment .
6.2. La technologie radiofréquence
Avec la technologie radio, la transmission d’informations s’effectue sans fil. Elle convient particulièrement aux travaux de rénovation légère étant donné qu’elle est souvent utilisée en complément d’une installation filaire traditionnelle.
En utilisant les ondes radio, l’émetteur (une commande sans fil) peut ainsi piloter un récepteur (interrupteur, prise,…etc.).L’avantage de la radiofréquence est qu’elle permet de faire évoluer une installation électrique sans grands travaux.
6.3. La technologie d’infrarouge
En employant les rayons électromagnétiques permettant d’envoyer un message sur un récepteur situé à moins de 6 mètres sans obstacle. Cette solution n’est donc applicable qu’à l’intérieur de la maison comme par exemple pour la télévision, home cinéma, éclairage et récepteur mural couplé à un circuit bus [EST, 10].
6.4. La technologie courant porteur en ligne (CPL)
La technologie du courant porteur en ligne permet le transfert et l’échange d’informations et de données en passant par le réseau électrique existant. L’installation est composée d’émetteurs et de récepteurs connectés au réseau électrique qui communiquent entre eux.
18
L’avantage d’installation de cette technologie est, qu’elle ne nécessite pas de travaux particuliers. La figure suivante exprime la technologie du courant porteur en ligne :
7. Les domaines d’applications de la domotique
La domotique constitue un point de rencontre entre différentes disciplines, le schéma suivant exprime ces domaines [JDA, 10] :
Figure 8: Présentation de la technologie du courant porteur en ligne . Physique du bâtiment Télécommunication L’électronique L’automatisme L’informatique
La domotique
19
8. Conclusion
Dans ce chapitre, nous avons commencé par définir d’abord la domotique dans ses différents contextes. Un historique très bref a été également retenu pour mieux favoriser et localiser cette interprétation. Ensuite nous avons pris le soin de s’étaler à travers les différents secteurs d’intervention de la domotique et de consolider son parcours par une véritable illustration sur le système domotique. Ce qui nous a permis de citer les différentes technologies impliquées.
Nous sommes persuadés que les objectifs que nous avons présentés avec beaucoup de détails démontrent que la domotique, de par son importance au mode de vie, est un outil qui permet de superviser, de coordonner et de programmer les fonctions du bâtiment afin de répondre à nos attentes en termes de sécurité, de confort, de gestion d’énergie et de communication. Elle participe également à l’aide au maintien à domicile des personnes âgées en facilitant leur quotidien. Elle s’inscrit comme étant indispensable à l’intégration parfaite dans la société des catégories particulières et surtout des personnes handicapées. Sans oublier de mentionner que la domotique est un champ très vaste qui assure aux autres technologies de se croiser d’une manière progressive.
20
1. Introduction
Le traitement d’images est un domaine très vaste qui a connu, et qui connaît encore, un développement important depuis quelques dizaines d’années. Il est considéré comme l’ensemble des méthodes et techniques opérant sur celles-ci, dans le but de rendre cette opération possible, plus simple, plus efficace et plus agréable.
Plus important aujourd’hui l’image 2D ou 3D, comme en imagerie médicale, images statiques ou dynamiques, comme en robotique : les images traitées par ordinateur sont omniprésentes. Le traitement de ces images est basé sur des modèles mathématiques et s'inspire parfois de systèmes visuels biologiques. De ce fait on désigne par traitement d'images numériques, l'ensemble des techniques permettant de modifier une image numérique afin d'améliorer ou d'en extraire des informations.
2. Histoire du traitement d’image
Nous relatons d'une manière successive les évènements qui ont marqué l'évolution du traitement d’image [MED, TOU, 15] :
Les années 1920 : La première numérisation avec compression de données, a été effectuée par H. G. Bartholomew et M.D. Mcfarlane pour l’envoi d’un fax transatlantique "images codées en 5 niveaux de gris" via le câble sous marin entre Londres et New York [DUB, 09];
En 1925 : De nouvelles améliorations rendaient possible la transmission d'images en 15 niveaux de gris ;
Les années 1960 : Le véritable essor du traitement d'image quand les ordinateurs commencèrent à être suffisamment puissants pour travailler sur des images.
Les années 1970 : Voit ensuite la naissance de l'imagerie médicale avec l'invention de la tomographie ;
21
Les années 1980 : c’est l’époque la plus importante en traitement d’image, l’engouement pour ce domaine a été remarquable et plusieurs travaux ont été réalisés;
Les années 1990 : La popularité du traitement d’image. Depuis, le traitement d’images s'est généralisé à de nombreux domaines et les progrès réalisés en informatique permettent de manipuler des images de plus en plus complexes.3. Définition d’image
3.1. Définition du dictionnaire
C’est une représentation d'une personne ou d'une chose par les arts graphiques ou plastiques, la photographie, le film [LAR, 95].
3.2. Définition d’image numérique
L'appellation « image numérique » désigne toute image acquise, créée, traitée et stockée sous forme binaire :
acquise par des convertisseurs analogique-numérique situés dans des dispositifs par exemple comme les scanners ;
Créée directement par des programmes informatiques, grâce à une souris, des tablettes graphiques ou par de la modélisation 3D ;
Traitée grâce à des outils Graphique, de façon à la transformer, à en modifier la taille, les couleurs, d’y ajouter ou d'en supprimer des éléments, d’y appliquer des filtres variés,… etc. ;
stockée sur un support informatique (clé USB, disque dur, CD-ROM,…etc).1
4. Les types d’image
4.1. Image binaire
1
Image numérique, lien : https://fr.wikipedia.org/wiki/Image_num%C3%A9rique, (Accédé le 21/02/2017).
22
Une image binaire est une matrice rectangulaire dont les éléments valent 0 ou 1. Lorsque l'on visualise une telle image Les pixels sont noirs (0) ou blancs (1) [FAR, BOU, 16]. La figure suivante donne un exemple sur l’image binaire [BOU, 15] :
4.2. Image en niveaux de gris
Une image d'intensité est une matrice dont laquelle chaque élément est un réel compris entre zéros et un. On parle aussi d'image en niveaux de gris car les valeurs comprises entre 0 et1 représentent les différents niveaux de gris [FAR, BOU, 16]. La figure suivante donne un exemple sur l’image en niveau de gris [BOU, 15] :
4.3. Image couleur RGB
Pour représenter la couleur d'un pixel, il faut donner trois nombres qui correspondent au dosage des trois couleurs de base : rouge, verte bleu (RGB).On peut ainsi représenter une image couleur par trois matrices, chaque matrice correspondant à une couleur de base [FAR, BOU, 16]. La figure suivante donne un exemple sur l’image en couleurs [BOU, 15] :
Figure 10: Image binaire
23
5. Les caractéristiques d’image
Comme nous l’avons vu, l’image est un ensemble structuré d’informations parmi ses caractéristiques nous pouvons citer les paramètres suivants:
5.1. Pixel
Contraction de l'expression anglaise " Picture Eléments ": éléments d'image, le pixel est le plus petit point de l'image, c'est une valeur numérique représentative des intensités lumineuses.
Si le bit est la plus petite unité d'information que peut traiter un ordinateur, le pixel est le plus petit élément que peuvent manipuler les matériels et logiciels sur l’image.
La lettre A, par exemple, peut être affichée comme un groupe de pixels dans la figure ci-dessous [BEN, HAM, 16].
24
5.2. Résolution
La résolution d'une image correspond au niveau de détail qui va être représenté sur cette image. C’est le nombre de pixels par unité de longueur dans l'image à numériser. Elle est en dpi (dots per inch) ou en ppp (points par pouce).
Plus le nombre de pixels est élevé par unité de longueur de l'image à numériser, plus la quantité d'inflation qui décrit l'image est importante et plus la résolution est élevée [MAR, 08].
5.3. Dimension
C’est la taille de l'image, elle se présente sous forme de matrice dont les éléments sont des valeurs numériques représentatives des intensités lumineuses (pixels). Le nombre de lignes de cette matrice multiplié par le nombre de colonnes nous donne le nombre total de pixels dans une image
[MAR, 08].
5.4. Bruit
Un bruit (parasite) dans une image est considéré comme un phénomène de brusque variation de l’intensité d’un pixel par rapport à ses voisins, il provient de l’éclairage des dispositifs optiques et électroniques du capteur [BEN, HAM, 16].
25
5.5. Luminance et contraste
C’est le degré de luminosité des points de l’image. Elle est définie aussi comme étant le quotient de l’intensité lumineuse d’une surface par l’aire apparente de cette surface, le mot luminance est substitué au mot brillance, qui correspond à l’éclat d’un objet.
Le contraste est l’opposition marquée entre deux régions d’une image, plus précisément entre les régions sombres et les régions claires de cette image. Le contraste est défini en fonction des luminances de deux zones d’images.
Si L1 et L2 sont les degrés de luminosité respectivement de deux zones voisines A1 et A2 d’une image, le contraste C est défini par le rapport [BEN, HAM, 16]:
5.6. Histogramme
26
Un histogramme est un graphique statistique permettant de représenter la distribution des intensités des pixels d'une image, c'est-à-dire le nombre de pixels pour chaque intensité lumineuse. Par convention un histogramme représente le niveau d'intensité en abscisse en allant du plus foncé au plus clair.
Pour les images en couleur plusieurs histogrammes sont nécessaires. Par exemple pour une image codée e1n RGB [MAR, 08] :
Un histogramme représentant la distribution de la luminance;
Trois histogrammes représentant respectivement la distribution des valeurs respectives des composantes rouges, bleues et vertes.
La figure suivante montre une image avec son histogramme [BEN, HAM, 16] :
5.7. Contours et textures
Les contours représentent la frontière entre les objets de l'image, ou la limite entre deux pixels dont les niveaux de gris représentent une différence significative. Les textures décrivent la structure de ceux-ci. L'extraction de contour consiste à identifier dans l'image les points qui séparent deux textures différentes [BEN, HAM, 16].
27
6. Les formats standards d’images
On distingue généralement deux grands types de formats [BOU, 15]:
6.1. Les images matricielles
Il s'agit d'images pixellisées, c'est-à-dire un ensemble de points (pixels) contenus dans un tableau, chacun de ces points possédant une ou plusieurs valeurs décrivant sa couleur.
Ses principaux formats sont :
BMP (Windows Bitmap): c’est le format actuel utilisé par Windows. Il produit des images de bonne qualité et est reconnu par de nombreuses applications. C’est le format le plus utilisé, par contre, il est extrêmement volumineux lorsqu’ il utilise le codage en (true colors).
PCX (Pi Cturee Xchange) : le format défini par Paint brush. Il accepte les modes de couleur, indexés, niveaux de gris et le noir et blanc.
GIF (Graphic Interchange Format) : créé par Compuserve, utilise aussi le codage RGB, mais le format GIF n’utilise pas toutes les 16 millions de couleurs. Il prend
28
les 256 couleurs les plus courantes pour réaliser l’image au format GIF. Cela permet une bonne compression et un affichage rapide de l’image.
JPG ou JPEG (Joint Photographique Experts Group) : créé par un consortium industriel, ce format très utilisé sur Internet, permet d’afficher les images en mode 16 millions de couleurs. Il est conçu pour réduire le plus possible la taille des fichiers graphiques en acceptant éventuellement de légères pertes de qualité. Il est destiné à la transmission rapide d’information. Ces résultats de compression sont extraordinaires.
TIFF (Tag Image File Format) : c’est un format d’excellente qualité, mais qui présente des problèmes de compatibilité du fait d’une multiplicité de version. Il existe aussi une version compressée qui fournit des fichiers très compacts sans perte notoire de qualité. Ce format est compatible avec d’autres plates-formes (macintosh). Il est utilisé par les professionnels.
6.2. Les images vectorielles
Les données sont représentées par des formes géométriques simples qui sont décrites d'un point de vue mathématique. Par exemple, un cercle est décrit par une information du type (cercle, position du centre, rayon) Ces images sont essentiellement utilisées pour réaliser des schémas ou des plans. Ses principaux formats sont :
WMF (Windows Meta File): c’est le format vectoriel utilisé par Windows, il est reconnu par beaucoup de programmes fonctionnant sous Windows. C’est un format qui permet de sauvegarder tant les images matricielles que les images vectorielles.
EPS (Postscript / Encapsulated Postscript): il s'agit d'un format vectoriel très utilisé. C'est donc le format à privilégier lors des exports de vos dessins vectoriels. Les formats matriciels peuvent aussi être convertis au format EPS. Dans ce cas-là, il ne s'agit que d'une encapsulation et non d'une conversion en image vectorielle.
CGM (Computer Graphics Metafile): les fichiers graphiques CGM restent un moyen privilégié d’échange de dessins vectoriels entre applications, mais il ne traite pas les images matricielles.
29
PCT (Pict): ce format vient du monde Macintosh, où il constitue un standard. Peut contenir aussi bien des données vectorielles que matricielles.
7. Les différents types de traitement d’image :
Parmi les différents types de traitement d’image on peut citer [REG, BEL, 14] :
Quantification:
Codage de l’image. Segmentation:
Partition de l’image, l’image suivante montre un exemple [POR, XX] :
Classification:
L’affectation des données de l’image à une classe définie, l’image suivante montre un exemple [POR, XX] : Indexation et recherche d’images:
Caractérisation du contenu de l’image.Figure 18: la segmentation d’une image
30
Analyse du mouvement:
Estimation du mouvement dans les séquences d’images. Vision 3D:
Localisation en 3 dimensions des objets dans l’image (Triangulation, stéréoscopie ou stéréovision, granulométrie,…etc.) Amélioration:
Modification de l'image dans le but de la rendre plus agréable à l'œil, l’image suivante montre un exemple [POR, XX] :8. Vidéo
Nous considérons un flux de vidéo comme une suite d'images 2D. La résolution de la vidéo, exprimée en nombre de pixels, définit la dimension de ces images.
La durée du temps entre deux images (Δt) est très petite parce que nous savons que la vitesse de film, en général, est de 24 à 60 images par seconde [BRO, BOU, 15].
Figure 21: Un flux de vidéo
31
8.1. Frame
Image composants la vidéo, les photogrammes [BRO, BOU, 15]. On caractérise la vitesse d'une vidéo par le nombre d'images par secondes (en anglais frame rate), exprimé en FPS (Frames per second, en français trames par seconde) [LAR, 15].
8.2. L’objet
Les objets physiques sont des objets du monde réel qui apparaissent dans les scènes observées par les caméras. Il existe deux types d’objets physiques [BRO, BOU, 15]:
les objets de contexte : Ce sont des objets physiques qui sont habituellement statiques par exemple les murs ;
les objets mobiles : Ce sont des objets physiques qui peuvent être perçus dans les scènes par leurs mouvements. Il est cependant difficile de prédire leurs mouvements comme par exemple des personnes ou des véhicules. Les objets dans les vidéos sont considérés également comme des objets mobiles.
8.3. Détection d’objet mobile par différence d’images
La détection d'un objet comprend la détection d'objets et la reconnaissance de formes dans le cadre d'une séquence vidéo. Le schéma ci-dessous démontre le principe général de la détection et de la reconnaissance de forme [ZIA, XX] :
32
Un mécanisme de détection d'objet est nécessaire dans n’ importe quel procédé de suivi lorsque l'objet apparaît dans la vidéo. Quand à la technique de détection par
différence d’images, elle comporte deux approches [MED, 12] :
8.3.1. Approche région
8.3.1.1. Avec image de référence :
Dans certaines applications (acquisition avec caméra fixe en particulier), il peut être possible de disposer d’une image dans laquelle seuls les éléments stationnaires sont présents. Cette image est alors utilisée comme une image de référence R(x, y) notée R. L’image de différence notée D devient alors: D = │I - R│ où
I représente l’image à l’instant t ; R est l’image de référence.
Les régions en mouvement sont obtenues après seuillage de l’image différence (nécessaire à cause du bruit).
8.3.1.2. Sans l’image de référence :
La différence temporelle s’exprime par : FD (IC, IP) = | IC- IP | où FD : image de différence ; IC : image courante ; IP : image précédente. Modèle de Markov Cachés (H.M.M.) Les réseaux de neurone (R.D.N.) Machines à vecteurs de support (S.V.M.)
33
L’image FD (IC, IP) ainsi obtenue est nulle en tout point où le signal d’entrée I est constant. Les points où un changement temporel se produit sont détectés par simple seuillage de FD. Le seuillage est nécessaire à cause du bruit présent dans les deux images. Le résultat du seuillage est une image binaire indiquant les zones en mouvement.
8.3.2. Approche contour
Dans l’approche précédente, la détection des changements temporels a été abordée sous l’aspect extraction de région en mouvement. Par contre, la présente approche est légèrement différente, car elle consiste à extraire les contours en mouvement.
Il y a lieu de noter que :
G (I) l’image des contours (gradients) de l’image I ; CM (I) l’image des contours en mouvement de l’image I.
HAYNES propose d’effectuer le produit simple (AND) entre l’image de différence FD (IC, IP) et l’image des contours G(IC) comme suit :
CM(IC) =FD (IC, IP). G(IC) Sachant que: FD (IC, IP) =|IC- IP|
La différence inter-image est considérée comme un détecteur de mouvement, l’opérateur G(IC) est considéré comme un détecteur de contour, et le produit est alors un détecteur de contours en mouvement.
9. Les domaines d’application de traitement d’image
Le traitement d’images possède l’aspect multidisciplinaire. Sachant qu’il s’inscrit de plus en plus par un caractère indispensable, on remarque que tous les secteurs importants et actifs se servent et utilisent ses applications dans le cadre de leur développement. On enregistre également que le traitement d’image prend sa place dans notre monde grâce à cette dynamique qui est le produit de son développement et son essor. La figure suivante présente les différents domaines d’applications de traitement d’image [MAN, XX] :
La médecine
La robotique
34
10. Conclusion
A travers ce chapitre, comme vous aviez remarqué, une certaine importance a été donnée à l’explication de quelques concepts relevant du domaine du traitement d’images. Ensuite, les différentes notions fondamentales retenues et développées ont été citées et qui consistent à reconstituer ou transformer une image en une autre mais plus adaptée à un traitement ultérieur. Il existe plusieurs méthodes de détection de mouvement dans la vidéo, nous avons ciblé les méthodes de la différence inter-images qui reposent sur une image de référence et celles sans image de référence. En fin de ce chapitre, nous avons évoqué les domaines jugés importants et qui s’ouvrent à l’application du traitement d’images.
35
1. Introduction
Avant de construire une maison, on doit se servir d’un plan. Se basant sur cette logique, on déduit qu’il est nécessaire d’abord de modéliser un système avant de le réaliser. Le choix d’une méthode de conception s’avère indispensable avant d’entamer l’implémentation, C’est par ce raisonnement qu’on a exploité la modélisation orientée objet l’UML.
Actuellement, elle repose sur un ensemble de concepts tirant leur origine du monde des mathématiques, entre autres les algèbres et les ensembles. C’est ce qu’on va reprendre avec plus de détails dans ce chapitre qui est consacré à la conception et l'architecture de notre application.
36
Dans ce projet, nous avons choisi l'approche orientée objet pour la conception de notre application car elle présente plusieurs avantages [AUD, 06]:
La conception d’une application dont les différents constituants sont indépendants les uns des autres ;
La facilité de maintenance et évolutivité: modifier un de ces constituants n’affectera pas les autres;
La possibilité de réutilisation: l’indépendance des module permet de les réutiliser dans d’autres;
la clarification de code: séparation des requêtes de base de données des algorithmes.
3. Présentation d’UML
L’UML (Unified Modeling Language) le langage de modélisation unifié est considéré comme le langage standard de modélisation visuelle utilisé pour spécifier, visualiser et construire un système logiciel. Il permet de représenter graphiquement les aspects dynamiques des systèmes à l’aide de plusieurs diagrammes [AUD, 06].
4. historique d’UML
Les premiers ouvrages sur le sujet sont apparus entre les années 1980 à 1992, proposant des démarches ou méthodes de modélisation orientées objet, tels que [ABD, MAH, 14]:
1- GRADY BOOCH : Méthode OOAD « Object Oriented Analysis and Design » ; 2- PETER HOOD : Méthode OOD « Object Oriented Design » ;
3- IVAR JACOBSON : Méthode OOSE «Object Oriented Software Engineering » ; 4- JAMES RUMBAUGH : Méthode OMT « Object Modeling Technic » ;
L’UML 1.1 a été standardisé par l’OMG (Object Management Group) le 17 novembre 1997 suite à la demande émanant de la collaboration de plusieurs entreprises [GUI, 10].
37
L’UML est composé de trois types de diagrammes, la figure suivante schématise un résumé de la plupart des diagrammes connus et leurs catégories [BOU, AMI, 16]:
6. Architecture du système
L’architecture de ce système est constituée de deux étapes :
6.1. Étape de l’acquisition d’image vidéo
La maitrise des appareils électroniques se fait à travers la vision numérique. L’utilisateur doit se placer en face de la caméra de manière à lui permettre de sélectionner son visage par un carré. A ce moment, c’est à travers son regard sur un point précis de l’écran en face de lui, que va être exécutée chaque tache, avec le mouvement automatique du curseur. Pour l’exécution de cette étape, on a utilisé l’application EVICAM.
6.2. Étape de contrôle
Cette deuxième étape intervient pour compléter l’exécution de tâches précédentes. A l'aide d'un prototype d'Arduino UNO qui traduit l’ordre de la première étape afin qu’il soit
Figure 24: les types de diagrammes d’UML Les diagrammes de Structure (Statique)
Diagrammes de classes Diagrammes d’objet
Diagrammes de composants Diagrammes de déploiement
Les diagrammes Fonctionnels Les diagrammes Dynamiques
Diagrammes de séquence
Diagrammes de timing
Diagrammes d’interaction Diagrammes de cas d’utilisation
Diagrammes de collaboration
38
exécuté. Cette fonction consiste à contrôler les appareils électroniques (la lampe, la télévision, le démo). Arduino assure donc cette relation avec le démo et la télévision par infrarouge en ce qui concerne la lampe, cette relation est faite par radio fréquences.
7. Conception du système
7.1. Conception d’étape d’acquisition d’image vidéo
On représente ce système par le diagramme de cas d’utilisation.
7.1.1. Diagramme de cas d’utilisation
Avant de se lancer dans la réalisation d’un logiciel, Il faut comprendre, clarifier et structurer les attentes et les besoins du client. Les diagrammes des cas d'utilisation (use case diagram) constituent la première étape d’analyse UML en [LED, XX] :
Modélisant les besoins des utilisateurs ;
Identifiant les grandes fonctionnalités et les limites du système ; Représentant les interactions entre le système et ses utilisateurs.
39
Un diagramme de cas d'utilisation permet de représenter graphiquement les cas d'utilisation [ABD, MAH, 14]. Un cas d’utilisation est une suite d’interactions entre un acteur (utilisateur) et le système, il correspond à une fonction visible par l’utilisateur [LED, XX].
7.1.2. Les sous-systèmes point de vue utilisateur
7.1.2.1. Sous-système : Clique de souris
Le présent sous-système a pour but de permettre à l’utilisateur de simuler des cliques de souris (gauche et droite). L’utilisateur devra mettre son visage devant la caméra, on présente la simulation de clique de souris par les trois diagrammes : le diagramme de cas d’utilisation, le diagramme de classes et le diagramme de séquence.
Diagramme de cas d’utilisation
Figure 26: la présentation de diagramme de cas d’utilisation général du système Utilisateur « Étend» » » « Étend » « Étend » « Étend » » « Utilise» « Utilise » « Utilise » Interpréter données Déplacer le visage Traiter le déplacement du visage Analyser les images Exécuter commande souris OpenCV / EmguCV Webcam « Étend » « Étend » « Utilisateur »
Visage fixé sur le bouton du clique gauche
Analyser les images
40
Diagramme de classe
Les diagrammes de classes sont, sans aucun doute, les diagrammes les plus utilisés d'UML. Ils décrivent les types d’objets qui composent un système avec les différents types de relations statiques qui existent entre eux. Comme ils représentent également le comportement du système [ABD, MAH, 14].
Diagramme de séquence
Les diagrammes de séquences permettent de représenter les interactions entre objets selon un point de vue temporel. L’accent est mis sur la chronologie des envois de
Interpréter Données
-Formes Pertinentes : Haar Cascade -Ancienne Position : Point XY +Comparer Forme ()
Commandes Souris
-Évènement Souris : enum +Souris Clique ()
+Souris Clique Droit () +Souris Clique Gauche Figure 27: la présentation de diagramme de cas d’utilisation (clique de souris)
Figure 28: la présentation de diagramme de classes (clique de souris)
1 1
41
messages. L'ordre d’envoi d'un message est déterminé par sa position sur l'axe vertical du diagramme ; le temps s’écoule "de haut en bas" de cet axe. La disposition des objets sur l'axe horizontal n'a pas de conséquence pour la sémantique du diagramme.
Figure 29: la présentation de diagramme de séquence (clique de souris) Transmission (action clique gauche)
Envoie d’une clique gauche Vérifie que le visage est présent
Visage présente dans l'image Analyse de la forme du visage Compare la forme avec les profils Profil de clique gauche trouvé
ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
Chapitre III
Conception et Architecture du système
42
7.1.2.2. Sous-système : Déplacement du curseur
Le sous-système offre la possibilité de déplacer le curseur de la souris en fonction du mouvement du visage devant la caméra, on présente le déplacement de curseur par les trois diagrammes : le diagramme de cas d’utilisation, le diagramme de classe et le diagramme de séquence.
Diagramme de cas d’utilisation
Diagramme de classes
Interpréter Données
-Formes Pertinentes : Haar Cascade
-Ancienne Position : Point XY
+Comparer Forme ()
Commandes Souris
-Évènement Souris : enum
+Souris Clique () +Souris Clique Droit () +Souris Clique Gauche () Figure 30 : la présentation de diagramme de cas d’utilisation (déplacer le curseur) « Utilisateur » 1 1 « Étend » « Étend » « Étend » « Utilise » Déplacer le visage Analyser l’image Trouver le visage Déplacer curseur curseur
ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
Chapitre III
Conception et Architecture du système
43 Figure 31: la présentation de diagramme de classe (déplacer le curseur)
ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
Chapitre III
Conception et Architecture du système
44 Diagramme de séquence : L’utilisateur déplace son visage devant la caméra
Figure 32: la présentation de diagramme de séquence (déplacer le curseur) Transmission (déplacement du curseur) Déplacement du visage
Vérifie que le visage est présent Visage présente dans l'image Analyse de la forme du visage Compare la forme avec les profils
Aucun profil ne convient
Compare la position actuelle du visage avec celle de l'ancienne image
Détermine combien de pixels le curseur doit être déplacé
Exécuteur de commandes Utilisateur Analyseur d'images
Déplacement du curseur
ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
Chapitre III
Conception et Architecture du système
45
7.1.2.3. Sous-système : Récupération et analyse d’images
Ce sous-système a pour but de récupérer les images générées par la camera et d’en analyser le contenu à l’aide de la librairie d’analyse d’image OpenCV, en passant à travers du « wrapper » EmguCV, qui permet l’utilisation du « framework » .Net. On présente le déplacement de curseur par les trois diagrammes : le diagramme de cas d’utilisation, le diagramme de classe et le diagramme de séquence.
Diagramme de cas d’utilisation
Diagramme de classes
EmguCV (Pont .Net)
-Capture +Initialiser () +GetImage ()
OpenCV
-Capture +Initialiser () +GetImage ()Figure 33: la présentation de diagramme de cas d’utilisation de la récupération et analyse d’image
« Étend » « Étend » « Utilise »
« Utilise » « Utilise » Déplacer le visage Analyser les images OpenCV / EmguCV Interpréter données Webcam
Figure 34 : la présentation de diagramme de classe de la récupération et analyse d’image
ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
Chapitre III
Conception et Architecture du système
46
Diagramme de séquence : L’utilisateur déplace son visage devant la
caméra
7.1.2.4. Sous-système : Interprétation des données
Ce sous-système a pour mission de donner un sens aux données recueillies par le sous-système récupération et analyse d’images. Ses tâches consistent à :
Analyser la forme de visage pour voir si celle-ci correspond à une action à accomplir comme un clique de souris ;
S’il s’agit d’une action à accomplir, le sous-système détermine l’action à accomplir ;
Figure 35 : la présentation de diagramme séquence de la récupération et analyse d’image Transmission d'une image
Déplacer visage devant la caméra
Rechercher le visage (trouvé)
Rechercher la position centrale du visage
Récupérer les informations sur la forme du visage
Envoie des données
recueillies à l'interpréteur de données
Analyseur d'images Interpréteur de données
ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
Chapitre III
Conception et Architecture du système
47 Sinon, le sous-système compare les données de l’ancienne image avec celle de la
nouvelle image, afin de déterminer ce qui a changé.
Le choix de l’action, si action il y a, sera ensuite transmis à l’exécuteur de commandes.
On présente le déplacement de curseur par les trois diagrammes : le diagramme de cas d’utilisation, le diagramme de classes et le diagramme de séquence.
Diagramme de cas d’utilisation
Diagramme de classes
Interpréter Données
-Formes Pertinentes -Ancienne Position +Comparer Forme ()
+Comparer Position Centrale ()
Commandes Souris
-Evénement Souris : enum +Souris Clique ()
+Souris Clique Droit () +Souris Clique Gauche ()
Figure 36: la présentation de diagramme de cas d’utilisation (interprétation des données)
Figure 37 : la présentation de diagramme de classe (interprétation des données)
1 1
Analyser les images
Exécuter commandes souris
Interpréter les données
Interpréter données
« Utilise »
ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
Chapitre III
Conception et Architecture du système
48
Diagramme de séquence : visage en position de clique droite
Diagramme de séquence : Visage non présent
Figure 38 : la présentation de diagramme de séquence (interprétation des données)
Figure 39: la présentation de diagramme de séquence (visage non présent) Analyseur d'images Interpréteur de données
Transmission des informations sur l’image
Vérifie que le visage est dans l'image
Visage non présent dans l'image (Aucune action à effectuer)
Interpréteur de données Analyseur d'images Exécuteur de commandes Transmission des informations sur l'image
Vérifie que le visage est dans l'image Visage présent dans l'image
Analyse de la forme du visage Compare la forme avec les profils Profil de clique droite trouvé Transmission (action clique droite)
ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
Chapitre III
Conception et Architecture du système
49
Diagramme de séquence : Visage s’est déplacé
Figure 40 : la présentation de diagramme de séquence (visage s’est déplacé) Transmission (déplacement du curseur)
Exécuteur de commandes Interpréteur de donnes Analyseurs d’image
Transmission des informations sur l'image
Vérifie que le visage est présent Visage présente dans
l'image
Analyse de la forme du visage Compare la forme avec les profils
Aucun profil ne convient
Compare la position actuelle du visage avec celle de l'ancienne image Détermine combien de pixels le curseur doit être déplacé
ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
Chapitre III
Conception et Architecture du système
50
7.1.2.5.
Sous-système : Exécution des commandes souris
Comme son nom l’indique, ce sous-système a pour but d’exécuter les commandes de type souris. Lorsque le module analyseur d’images aura détecté une action à accomplir, il enverra la commande à l’exécuteur de commandes.
Cas d’utilisation : Exécuter commandes souris
Exécuter commandes souris « Utilise »
Diagramme de classes
Diagramme de séquence : Déplacement de curseur
Interpréter Données
-Formes Pertinentes -Ancienne Position
+Comparer Forme ()
+Comparer Position Centrale ()
Commandes Souris
-Evénement Souris : enum
+Souris Clique () +Souris Clique Droit () +Souris Clique Gauche ()
Figure 41 : la présentation de diagramme de cas d’utilisation (exécuter commandes souris)
Figure 42 : la présentation de diagramme de classes (exécuter commandes souris)
1 1
Commande (Déplacer curseur)
Déplacement du curseur
Analyseur d'images Exécuteur de commandes
Diagramme de séquence : Effectuer une clique droite
7.2. Conception d’étape
de contrôle
La spécification fonctionnelle décrit les principales fonctions de l'application qui doit satisfaire les besoins identifiés dans l'étude. La fonction principale de l’application est la. Pour cette raison, nous avons deux acteurs, l'utilisateur et l'administrateur.
Notre système domotique comporte deux acteurs, l'administrateur et l'utilisateur; L'administrateur peut également être un utilisateur.
L'administrateur doit configurer le port USB utilisé avant que l'utilisateur puisse accéder au système afin de contrôler les périphériques configurés. Il existe trois dispositifs à contrôler : la lampe, la télévision et le démo.
Contrôle de la lampe: l'utilisateur peut allumer ou éteindre la lampe;
Contrôle de démo (Télécommande) : Ce cas d'utilisation comprend sept sous-fonctions : Figure 43 : la présentation de diagramme de séquence (déplacer le curseur)
Figure 44: la représentation de diagramme de séquence (effectuer un click droit) Exécution d’une clique droite
Commande (Clique droite)
ON qui permet d'allumer le démo ;
Contrôle de chaines paraboliques (satellite numérique) : changer la chaine de haut en bas et vice versa ;
Contrôle du volume du son : pour le réglage du volume du son (diminuer ou augmenter) ;
OFF qui permet d'éteindre le démo ;
Faire défiler la liste des chaines de haut en bas et vice versa;
Se servir du cadran des numéros pour déterminer une chaine ;
Utiliser le bouton de retour pour revenir à la chaine précédente ; Contrôle de la télévision:- L'utilisateur peut allumer ou éteindre la télévision ; - Contrôler les chaines de haut en bas et vice versa ; - Contrôler le volume du son – augmenter ou diminuer.
8. Conclusion
Dans ce chapitre, nous avons présenté les fonctionnalités et les objectifs du notre projet en utilisant un modèle UML. Ce modèle unifie également les notations nécessaires aux différentes activités d’un processus de développement et offre, par ce biais des descriptions graphiques, des vues à des étapes différentes et des diagrammes aident à mieux comprendre le système et ses principaux cas. C’est un bon outil de démarrage du projet.
1. Introduction
Ce chapitre est réservé pour l'implémentation de la conception du système de la commande des appareils électronique à distance notamment les langages de programmation avec précaution, la définition des outils nécessaires pour notre travail.
2. Environnement de développement
2.1. Langages de programmation
Il existe, un nombre très varié de langages de programmation, chacun de ces programmes se caractérise par des avantages et des inconvénients. Il faut cependant admettre qu’il s’agit de cerner, avant tout, l'acquisition de bases solides, sachant que le temps dont nous disposons est limité.
Mais quel langage avons-nous choisi ?
Nous avons décidé d'adopter deux langages : le C# et Arduino, des langages modernes et ayant une popularité galopante.
2.1.1. Présentation du langage visuel Studio C#
Visual C# est l’environnement de développement des outils de Microsoft. Il fait partie d'une gamme de produits, appelée Visual Studio, qui comprend également le Basic. NET, Visual C + +. NET et le langage de script JScript [DAH, 14].
Le C# (C sharp en anglais) est un langage de programmation orienté objet, commercialisé par Microsoft depuis 2002 et destiné à développer des programmes sur la plateforme Microsoft.NET.Il est dérivé du C++ et très proche du Java dont il reprend la syntaxe générale ainsi que les concepts, y ajoutant des notions. Il est utilisé notamment pour développer des applications web sur la plateforme ASP.NET.2
2
2.1.2. Caractéristiques du langage
Le langage C# (par rapport au C++) possède les caractéristiques suivantes [GER, 06] : Un langage orienté objet : tout doit être incorporé dans des classes ;
Remplacement des pointeurs (sur tableaux, sur objets,…etc.) par des références qui offrent des possibilités semblables avec plus de sûreté sans perte de performance ; Disparition du passage d’argument par adresse au profit du passage par référence ; Passage de tableaux en arguments ainsi que renvoi de tableau nettement simplifié ; Manipulation des tableaux de manière fort différente et avec plus de sécurité ; Nouvelle manière d’écrire des boucles avec l’instruction foreach;
La possibilité d’une classe d’implémenter plusieurs interfaces. Type précisément conforme à l’architecture.NET ;
Libération automatique des objets; Les pointeurs ne disparaissent pas;
2.2. Caractéristiques techniques
Notre application est développée dans un environnement Windows en utilisant un ordinateur dont les caractéristiques techniques, sont les suivantes :
N° Composant Description
1 Processeur Intel « I7 »
2 RAM 4 GB
3 Disque dur 500 GB
3. Interface graphique de l’application
Nous présentons dans cette section des capteurs d’écran, telle que l’interface est composée de quatre parties: La première est réservée pour la configuration de port utilisé, la deuxième est utilisée pour le contrôle de la lampe, la troisième concerne le contrôle de la télévision, enfin la quatrième servira pour la télécommande.
Tableau 1:Présentation des Caractéristiques Techniques de l’Ordinateur de Développement.
En cliquant sur le bouton configuration : l’utilisateur doit faire la configuration
En cliquant sur le bouton de la lampe onobtient la partie du contrôle de la lampe
En cliquant sur le bouton télévision onaccède au contrôle de la télévision
Figure 45 : Capture d’écran de l’interface graphique.
Figure 46: Capture d’écran du contrôle de la lampe.