continutul tezei

101
1 Liste des figures Figure 1.1(a)La technologie biométrique........................5 Figure 1.1(b) Reconnaissance faciale........................................................... ...................................5 Figure 1.2 Le principe fondamental de reconnaissance..................................................... ..............6 Figure 1.3. Les applications utilisant la technologie automatisée de vidéosurveillance de reconnaissance faciale........................................................... ...........................................................7 Figure. 1.4 Comparaison de visage: (a) la vérification de visage / authentification.........................8 Figure 1.5 – l'application FaceUnlock........................................................ .....................................10 Figure 1.6 - Entrée des données........................................................... ............................................10 Figure 1.7 Affichant données saisies........................................................... ....................................10 Figure 1.8 L'application SmartLogon........................................................ ......................................11 Figure 1.9 A échoué détection de visages........................................................... .............................11 Figure 2.1 Processus de détection des visage............................................................. .....................14

Upload: doina-bejan

Post on 07-Dec-2015

240 views

Category:

Documents


1 download

DESCRIPTION

Optical caracter recognition

TRANSCRIPT

Page 1: Continutul Tezei

1

Liste des figuresFigure 1.1(a)La technologie biométrique........................................................................................5

Figure 1.1(b) Reconnaissance faciale..............................................................................................5

Figure 1.2 Le principe fondamental de reconnaissance...................................................................6

Figure 1.3. Les applications utilisant la technologie automatisée de vidéosurveillance de reconnaissance faciale......................................................................................................................7

Figure. 1.4 Comparaison de visage: (a) la vérification de visage / authentification.........................8

Figure 1.5 – l'application FaceUnlock.............................................................................................10

Figure 1.6 - Entrée des données.......................................................................................................10

Figure 1.7 Affichant données saisies...............................................................................................10

Figure 1.8 L'application SmartLogon..............................................................................................11Figure 1.9 A échoué détection de visages........................................................................................11

Figure 2.1 Processus de détection des visage..................................................................................14

Figure 2.2. Diagramme de système d'un système de reconnaissance de visage basé sur un modèle 3D en utilisant plage enregistrée et les images en couleur...............................................................18

Figure 2.3. Diagramme de système d'un système de reconnaissance de visage basé sur un modèle 3D sans l'utilisation de données télémétriques.................................................................................20

Figure 3.1. Vue d'ensemble des Emgu CV versions........................................................................21

Figure 3.2. Présentation de l'architecture Emgu CV........................................................................22

Figure 3.3 Structure Mapping - Emgu.CV.Structure.Mxxx.............................................................23

Figure 3.4 Structures existantes .Net qui representer les structures dans le OpenCV......................23

Figure 4.1 Cas des d’utilisations pour le système entier..................................................................32

Figure 4.2 Diagramme SSD « Login Usager »................................................................................36Figure 4.3 Diagramme SSD « Ajouter nouvelle enregistrement »..................................................37Figure 4.4 Diagramme SSD « Modifier d’enregistrement »............................................................38Figure 4.5 Diagramme SSD « Effacer une enregistrement »...........................................................40

Figure 4.6. Diagramme Domain Model……………………………………………………..….…41

Figure 4.7. Diagramme Insérer un enregistrement……………………………………………….43

Figure 4.8. La recherche dans l’application....................................................................................44Figure 4.9. Modèle d’application....................................................................................................45

Figure 4.10. Modèle logique de l’application................................................................................46

Page 2: Continutul Tezei

2

Figure 4.11. Diagramme de déploiement.......................................................................................47

Figure 5.1 Déclarer toutes les variables..........................................................................................48

Figure 5.2 Méthode Haarcascades pour la détection de visage......................................................48

Figure 5.3 Initialiser le FrameGrabber événement.........................................................................49

Figure 5.4 Méthodes de reconnaissance de chaque visage.............................................................49

Figure 5.5 Ajouter du visage en base de donnees...........................................................................51

Figure 5.6 Le code pour ajouter de nouveaux visages....................................................................52

Figure 5.6 modifier la taille d'une grande valeur............................................................................52

Figure 5.6 Valeurs propres visage de reconnaissance....................................................................53

Figure 5.7 Reconnaissance de visage déjà introduit sur la base de données..................................53

Liste des tableaux

Tableau 1 Estimation des repartitions.............................................................................................54

Tableau 2 Estimation du temps.......................................................................................................55

Tableau 3 Actives non-materiels a long terms................................................................................57

Tableau 4 Actives materiels a long terms.......................................................................................57

Tableau 5 La consommation de matières directes..........................................................................58

Tableau 6 Temp du travail/remuneration du travail.......................................................................59

Tableau 7 Les frais indirects...........................................................................................................61

Tableau 8 Calcule du fond d’amortissement pour AMTL en utilisant la méthode linéaire...........63

Tableau 9 Le fond d’amortissement pour ANTL en utilisant la méthode linéaire........................64

Tableau 10 Prix de revient du produit............................................................................................64

Page 3: Continutul Tezei

3

Annotation

Le développement de ce projet a suivi le but principal de l'étude et technologies de la

connaissance et des algorithmes de reconnaissance d'objets complexes pour créer des applications

de vision en temps réel utilisés par les différentes machines informatiques.

L'objectif principal de ce projet consiste à réaliser une application qui trouverait l'humain

peut les reconnaître et pourrait faire la différence entre eux, un autre objectif du projet est

d'atteindre des performances supérieures, parce que cette région est l'un des haute perspective.

Produit logiciel en question est destiné à être utilisé plus tard pour un système informatique

de gestion et de reconnaissance non seulement le visage, mais aussi des signes différents ou une

combinaison de postures de doigts.

Dans ce projet, nous avons utilisé plate-forme CV Emgu qui est un wrapper (wrapper). NET

de traitement d'image bibliothèque OpenCV. Nous avons utilisé ces framework car pour l'instant il

est l'un des ouvert le plus largement utilisé, développé par Intel et est la source.

Dans l'élaboration de ce projet étaient plates-formes utilisées avec Microsoft Visual Studio

2010 langage de programmation C #, Enterprise Architect.

Le projet est complexe et nécessite des technologies à haut rendement dans l'avenir

deviendra une condition obligatoire pour tout programme de produit pour de nombreux utilisateurs,

que ce dont nous avons besoin est un ordinateur moderne.

La documentation du système développé est axée sur l'architecture décrivant des modèles

UML contenant les éléments suivants: Exigences, cas d'utilisation, modèle de domaine,

déploiement.

Note de papier contient une introduction, six chapitres, les conclusions finales, bibliographie

(titres) et l'annexe. Le contenu est affiché sur les pages contenant des chiffres et des tableaux.

Le premier chapitre contient l'analyse du domaine d'étude, ce qui nécessite la création d'un

tel système et de son importance pour le développement supplémentaire par rapport aux autres

systèmes existants.

Le deuxième chapitre est de décrire le processus de reconnaissance du visage, tous les

problèmes rencontrés et les points généraux.

Le troisième chapitre décrit les techniques utilisées pour créer le système en question et les

méthodes utilisées pour son comportement.

Le quatrième chapitre présente la conception UML du système et une brève description des

activités sistemului.Următorul chapitre décrit les résultats obtenus Le sixième chapitre contient une

description de la situation économique et les dépenses engagées dans la création du système.

Page 4: Continutul Tezei

4

INTRODUCTION

DÉFINITION

Reconnaissance d'objets concerne la détermination de l'identité d'un objet qui est observé dans

l'image à partir d'un ensemble des marqueurs connus. Souvent, il est supposé que l'objet observé a été

détecté ou si une seule objet dans l'image.

HISTORICAL BACKGROUND

Comme le Saint-Graal de la recherche en vision par ordinateur est de raconter une histoire à partir

d'une seule image ou une séquence d'images, objet

reconnaissance a été étudié pendant plus de quatre décennies .Signi catives e? Orts ont été payés à

développer systèmes de représentation et d'algorithmes visant à reconnaître des objets génériques

dans les images prises sous di érents conditions d'imagerie (par exemple, point de vue, l'éclairage et

l'occlusion). Dans un champ d'application limité d'objets distincts, tels sous forme de chiffres

manuscrits, ngerprints, des visages, et les panneaux routiers, le succès considérables ont été

accomplis. Reconnaissance d'objets est également liée à la recherche d'images basée sur le contenu et

l'indexation multimédia en tant que nombre d'objets génériques peuvent être reconnue. En outre, des

progrès signi cant vers la catégorisation d'objets à partir d'images ont été réalisés dans le

Ces dernières années . Notez que la reconnaissance d'objets a également été largement étudié en

psychologie, informatique neurosciences et les sciences cognitives.

Fondement scientifique

Reconnaissance d'objets est l'une des capacités les plus fascinantes que les humains possèdent

facilement depuis l'enfance. Avec un simple regard d'un objet, les humains sont capables de raconter

son identité ou de la catégorie malgré la variation de l'apparence en raison du changement dans la

pose, l'éclairage, la texture, la déformation et sous occlusion. En outre, les humains peuvent

facilement

généraliser à partir de l'observation d'un ensemble d'objets à reconnaître des objets qui n'ont jamais

été vus auparavant. Par exemple, les enfants sont capables de généraliser le concept de \ chaise "ou \

cup" après avoir vu quelques exemples. Néanmoins, il s'agit d'une tâche ardue de développer des

systèmes de vision qui correspond aux capacités cognitives des êtres humains, ou des systèmes qui

sont

capable de faire la c identité d'un objet observé spécification. Les raisons principales peuvent être

attribués à la suivante facteurs: culté pose relative d'un objet à une caméra, la variation de l'éclairage,

et di à généraliser à travers des objets à partir d'un ensemble d'images d'exemplaires. Centrale de

systèmes de reconnaissance d'objets sont comment les régularités d'images, prises

sous dis érentes éclairage et poser des conditions, sont extraits et reconnus. En d'autres termes, tous

ces algorithmes adopter certaines représentations ou des modèles pour capturer ces caractéristiques,

facilitant ainsi les procédures à raconter

Page 5: Continutul Tezei

5

leurs identités. En outre, les représentations peuvent être soit en 2D ou des modèles géométriques 3D.

La reconnaissance Procédé, soit génératif ou discriminant, est ensuite effectué en faisant

correspondre l'image de test contre la stockée

représentations d'objets ou de modèles. Approches basées sur la géométrie les premières tentatives

sur la reconnaissance d'objets ont été axées sur l'utilisation de modèles géométriques d'objets pour

rendre compte de leur variation de l'aspect en raison de point de vue et de changement d'illumination.

L'idée principale est que la description géométrique d'un objet 3D permet la forme devrait être fondée

précisément dans une image 2D en vertu de projection projective, facilitant ainsi la procédure de

reconnaissance en utilisant bord ou limite l'information (qui est invariant à certains éclairage

changement). Une grande attention a été faite pour extraire des primitives géométriques (par

exemple, lignes, cercles, etc) qui sont invariants aux changements de point de vue. Néanmoins, il a

été démontré que ces primitives ne peuvent être fiable extrait dans des conditions limitées (variation

contrôlée de l'éclairage et de point de vue avec certain occlusion). Une excellente revue sur la

recherche de la reconnaissance d'objets basé sur la géométrie par Mundy peut également être trouvée

dans.

Algorithmes basés sur l'apparence Contrairement au début e. Orts sur les travaux de reconnaissance

d'objets basées sur la géométrie, les plus récentes e? Orts ont été centrées sur techniques basées sur

l'apparence que les longs descripteurs avancées et des algorithmes de reconnaissance de forme sont

développés . Plus particulièrement, les méthodes de Eigenface ont attiré beaucoup d'attention car il

est l'un des rst reconnaissance faciale systèmes qui sont calcul e cace et relativement précis. L'idée

sous-jacente de cette approche est pour calculer des vecteurs propres à partir d'un ensemble de

vecteurs, où chacun représente une image de visage en tant que vecteur de trame de balayage des

valeurs de pixels d'échelle de gris. Chaque vecteur propre, reconnue comme un visage propre, capte

certain écart entre tous les vecteurs, et un petit ensemble de vecteurs propres capte la quasi-totalité de

la variation de l'apparence des images de visage dans l'ensemble de la formation. Étant donné une

image test représentée comme un vecteur de valeurs de pixels en niveaux de gris, son identité est

déterminée par le nding

voisin le plus proche de ce vecteur, après avoir été projetées sur un sous-espace engendré par un

ensemble de vecteurs propres. Dans d'autres termes, chaque image de visage peuvent être

représentées par une combinaison linéaire des visages propres avec une erreur minimum (souvent en

le sens L2), et cette combinaison linéaire constitue une réorientation compact. L'approche a été

Eigenface

adoptée à reconnaître des objets génériques à travers di? érentes points de vue et la variation

d'éclairage de modélisation.

Comme le but de la reconnaissance de l'objet est de raconter un objet à partir des autres, classi eurs

discriminants ont été utilisés d'exploiter les informations c classe spéci. Classi eurs comme voisin k-

Page 6: Continutul Tezei

6

plus proche, les réseaux neuronaux avec base radiale fonction (RBF), l'architecture de liens

dynamiques, Fisher discriminante linéaire, support vector machines (SVM), rares réseau d'dissipe

(neige), et des algorithmes stimulant ont été appliquées à reconnaître des objets 3D à partir d'images

2D.Bien que les méthodes basées sur l'apparence ont montré des résultats prometteurs dans la

reconnaissance d'objets sous point de vue et l'éclairage changent, ils sont moins e? cace dans le

traitement de l'occlusion. En outre, un grand nombre de exemplaires doit être segmentée à partir

d'images pour les méthodes génératives ou discriminant pour apprendre l'apparition caractéristiques.

Ces problèmes sont en partie traités avec des schémas de représentation des pièces basées.

Algorithmes basée sur les caractéristiques

L'idée centrale des algorithmes de reconnaissance d'objets basé sur les caractéristiques réside dans

nding points d'intérêt, s'est souvent à discontinuité d'intensité, qui sont invariantes à changer en

raison de l'échelle, l'éclairage et un ne transformation (une bref aperçu sur les opérateurs de points

d'intérêt peut être trouvée dans). La fonction invariante d'échelle transformer (EIPD) descripteur,

proposé par Lowe, est sans doute l'un des régimes de représentation les plus largement utilisés de

fonctionnalités pour la vision applications . L'approche des EIPD utilise extrema dans l'espace échelle

pour la sélection automatique de l'échelle avec une pyramide de dix rence de ltres gaussiens et points-

clés avec un faible contraste ou mal localisée sur une arête sont supprimés. Ensuite,une orientation

constante est affectée à chaque point-clé et sa grandeur est calculée sur la base de l'image locale

histogramme de gradient, et atteindre ainsi invariance à la rotation de l'image. A chaque descripteur

point clé, la contribution de gradients d'image locales sont échantillonnées et pondérés par une

gaussienne, puis représentées par des histogrammes d'orientation. Par exemple, le 16 16 Extrait

région d'image et 4.4 éventail d'histogrammes avec 8 bacs d'orientation sont souvent utilisés,

fournissant ainsi un vecteur de caractéristique à 128 dimensions, pour chaque point-clé. Les objets

peuvent être indexés et comptabilisés selon les histogrammes des points clés dans les images. De

nombreuses applications ont été développées en utilisant les descripteurs relatives aux EIPD,y

compris la récupération de l'objet , et l'objet catégorie découverte .

Bien que l'approche des EIPD est capable d'extraire des caractéristiques qui sont insensibles à

certaine envergure et le changement d'illumination, applications de vision avec un grand changement

de la ligne de base entraînent la nécessité d'un ne point invariant et les opérateurs de la région . Une

évaluation du rendement entre les différents descripteurs locaux peut être trouvée dans , et une étude

sur une région? NE détecteurs est présentée dans . Enfin, les méthodes basées sur les EIPD sont tenus

d'accomplir mieux pour les objets avec de riches informations de texture comme sur nombre cient de

points-clés peuvent être extraits. D'autre part, ils exigent également indexation sophistiqué et des

algorithmes d'appariement pour e reconnaissance d'objets cace.

Page 7: Continutul Tezei

7

KEY APPLICATIONS

Reconnaissance biométrique et optique des caractères / chiffres / reconnaissance de documents sont

sans doute les plus utilisés applications. En particulier, la reconnaissance faciale a été largement

étudié depuis des décennies et avec grande échelle e en cours des orts. D'autre part, les systèmes de

reconnaissance biométrique basée sur l'iris ou ngerprint ainsi que comme chiffres manuscrite sont

devenus des technologies fiables. D'autres applications de reconnaissance d'objets comprennent la

surveillance, l'inspection industrielle, la recherche d'images par le contenu (CBIR), la robotique,

l'imagerie médicale, l'homme systèmes de véhicules d'interaction de l'ordinateur, et intelligente, pour

n'en nommer que quelques-uns.

Avec plus de modèles de représentation fiables et des algorithmes de reconnaissance en cours

d'élaboration, d'énormes progrès ont été réalisés dans la dernière décennie vers la reconnaissance des

objets sous variation de point de vue, l'éclairage et sous occlusion partielle. Néanmoins, les systèmes

de reconnaissance d'objets plupart des travailleurs sont encore sensibles à la grande variation dans

éclairage et lourd occlusion. En outre, la plupart des méthodes existantes sont développées pour faire

face à des objets rigides avec variation intra-classe limitée. Les recherches futures devront continuer

à chercher des systèmes de représentation et robustes

Les algorithmes de reconnaissance pour reconnaître des objets génériques.

1. L’ANALYSE DU DOMAINE D’ETUDE

1.1 Idée générale

J'ai choisi le sujet de la reconnaissance d'une licence personnelle, car au moment où le marché a

investi beaucoup d'argent dans cette industrie. Avec le développement de ce système sera plus grande

inclusion dans plusieurs structures et les zones qui ont besoin de services qui Orefice système a

également donné.

La reconnaissance faciale est une technique biométrique Figure 1.1(a) (application de l'analyse

statistique des données humaines) permettant d'identifier une personne. Un système de

reconnaissance faciale est basée sur le visage encore l'image d'un individu Figure 1.1(b) (une photo)

qui n'est rien de plus qu'un ensemble de pixels commandés par un modèle particulier (pixel est l'unité

fonctionnelle de base d'une image numérique).

Système de reconnaissance faciale ne perçoit pas un visage particulier comme les hommes, mais le

voir comme un grand nombre de pixels rejoindre. Essentiel dans le système de reconnaissance faciale

est la capacité à localiser le visage de l'image de fond et non.

Avant le processus réel de reconnaissance est nécessaire de créer des galeries d'images. En termes

de système de reconnaissance faciale, la galerie est un ensemble de modèles qui servent de processus

de comparaison biométrique de référence.

Page 8: Continutul Tezei

8

Créer une galerie d'image comprend les phases suivantes: capture de l'image, détection des visages,

la normalisation, extraction de caractéristiques et la création de modèles pour chaque image

.

Figure 1.1(a)La technologie biométrique

Figure 1.1(b) Reconnaissance faciale

Quelles sont les étapes de la reconnaissance faciale?

Étapes de la reconnaissance faciale sont les suivants:

1. Capture d'image;

2. Détection des visages;

3. Extraire des caractéristiques afin de générer un motif;

4. En comparant les modèles;

5. Déclaration d'identité.

Page 9: Continutul Tezei

9

1. Capturez l'image se fait généralement avec un appareil photo ou une vidéo, depuis une vidéo n'est

rien de plus une séquence d'images fixes.

2. Le processus commence par identifier le visage de toute l'image qui contient généralement une

image de fond, et parfois même d'autres visages. Si un être humain, il est très facile de distinguer qui

est le visage d'une personne dans une photo, votre ordinateur doit décider quels pixels appartenant à

la face ou pas. Système de reconnaissance faciale normalisera - si possible - image de façon à avoir la

taille, la rotation, la luminosité des images contenues dans la galerie. Cette image est tirée de système

de reconnaissance faciale standardisé.

3. Le processus d'extraction de caractéristiques est générée une représentation mathématique appelée

modèle ou de référence biométrique, qui sera enregistré dans la base de données est le fondement de

la reconnaissance. Modèle biométrique n'est rien de plus qu'un algorithme de reconnaissance faciale

qui transforme l'image du visage (représenté par des pixels) dans une représentation mathématique

simplifiée.

Figure 1.2 Le principe fondamental de reconnaissance

1.2 Problème de détection de visage

Ces dernières années, la reconnaissance faciale a reçu une attention considérable de chercheurs en

biométrie, reconnaissance de formes, et les communautés de vision par ordinateur. Cet intérêt

commun entre les chercheurs travaillant dans divers domaines est motivés par notre remarquable

capacité à reconnaître les gens (même si dans le cas de certains handicap rare du cerveau, par

exemple, la prosopagnosie ou cécité visage, cette capacité de reconnaissance est perdu) et le fait que

l'activité humaine est une préoccupation majeure tant dans la vie quotidienne et dans le cyberespace.

Par ailleurs, il existe un grand nombre d'applications commerciales, de sécurité et judiciaire exigeant

l'utilisation de la technologie de reconnaissance faciale. Ces applications concernent la localisation, le

suivi et la reconnaissance d'un seul (ou plusieurs) sujet humain ou du visage.

Page 10: Continutul Tezei

10

La reconnaissance faciale est une technologie importante d'identification biométrique. Scan

du visage est un attribut / indicateur biométrique efficace. Différents indicateurs biométriques sont

adaptés à différents types d'applications d'identification en raison de leurs variations intrusion, la

précision, le coût et (détection) effort. Parmi les six biométrique les indicateurs pris en compte dans

les traits du visage marqué la plus grande compatibilité, la Fig. 1.3, dans une machine documents de

voyage lisibles système (MRTD) basée sur un certain nombre de facteurs d'évaluation, comme

l'inscription, le renouvellement, les exigences de la machine, et la perception du public.

Figure 1.3. Les applications utilisant la technologie automatisée de vidéosurveillance de

reconnaissance faciale (téléchargé à partir de FaceSnap);

1.3 Les défis de la reconnaissance faciale

Les êtres humains peuvent facilement reconnaître un visage connu dans diverses conditions et

représentations. Cette remarquable capacité des êtres humains à reconnaître les visages avec de

grandes variations intra-sujet a inspiré la vision des chercheurs pour développer des systèmes

automatisés de reconnaissance faciale à partir d'images de visage 2D. Toutefois, les systèmes actuels

de vision industrielle state-of-the-art peut reconnaître les visages que dans un environnement

contraint. Notez qu'il existe deux types de scénarios de comparaison de face, dite vérification du

visage et l'identification de visage. Comme le montre la figure. 1.3, la vérification du visage implique

un one-to-one match qui compare une image de visage requête sur une image du visage du modèle

dont l'identité est revendiquée, alors que l'identification du visage implique un-vers-plusieurs matchs

Page 11: Continutul Tezei

11

qui comparent une image de visage requête sur toutes les images de modèle dans une base de

données de visage afin de déterminer l'identité de la face de requête.

Figure. 1.4 Comparaison de visage: (a) la vérification de visage / authentification; (b) l'identification

du visage / reconnaissance.

Le principal défi de la reconnaissance du visage basé sur la vision est la présence d'un haut degré de

variabilité des images de visages humains. Il peut y avoir potentiellement de très grandes variations

intra-sujet et plutôt petites variations inter-sujets (en raison de la similitude des comparutions

individuelles). Techniques de reconnaissance basés sur la vision actuellement disponibles peuvent

être classés principalement en deux groupes en fonction de la représentation du visage qu'ils utilisent:

(I) l'apparence basée sur laquelle utiliser les fonctionnalités de texture holistiques, et (II) basées sur la

géométrie qui utilisent des caractéristiques géométriques de la face. Les résultats expérimentaux

montrent que les méthodes apparence basés effectuent généralement une meilleure tâche de

reconnaissance que ceux basés sur la géométrie, car il est difficile d'extraire robuste caractéristiques

géométriques en particulier dans les images de visage basses résolutions et de mauvaise qualité (par

exemple, pour extraire des caractéristiques en cas d'incertitude). Cependant, les techniques de

reconnaissance apparition à base ont leurs propres limites dans la reconnaissance des visages

humains en images avec de grandes variations dans la tête 3D pose et à l'éclairage. Par conséquent,

afin de surmonter les variations de pose, un grand nombre de techniques de reconnaissance faciale

ont été développés pour tenir compte de la forme du visage 3D, tirées d'une séquence vidéo ou

données télémétriques. Quant à surmonter les variations d'éclairage, plusieurs études ont exploré des

fonctionnalités telles que des cartes dérivées d'intensité de pointe, les réponses Gabor-filtre et les

champs d'orientation du gradient d'intensité. Cependant, aucune de ces approches par eux-mêmes

conduire à des résultats de reconnaissance satisfaisants. Ainsi, le modèle 3D du visage explicite

associé à son modèle de réflectance est considéré comme la meilleure représentation de visages

humains à l'approche basée sur l'apparence.

1.4 Exigences et les objectifs du système

Page 12: Continutul Tezei

12

Système requise sont:

a) la présence de menu et défini par l'utilisateur;

b) la demande doit être scindé en deux parties: compartiment d'entrée personnelle. Le second

compartiment est la reconnaissance très faciale. La dernière section sera que vous allez analyser et de

reconnaître les données de l'utilisateur;

c) la saisie du nom;

d) accéder à des données personnelles à l'aide d'un login et mot de passe;

e) la possibilité d'enregistrer plusieurs utilisateurs de l'application;

f) la possibilité de comparer les données et de résultats entre plusieurs utilisateurs;

g) la présence d'une base de données qui contiendra:

1) des images faciales de chaque utilisateur;

2) Les données personnelles de l'utilisateur;

3) des informations sur tous les utilisateurs qui utilisent l'application;

h) la possibilité d'introduire de nouvelles personnes à l'utilisateur dans la base de données;

Le système à développer est de reconnaître que personne, en utilisant l'image du visage.

1.5 Les comparaisons avec d'autres systèmes dans le même domaine

L'application FaceUnlock - Samsung Galaxy S3 appareil mobile - Android 4.1.2

Cette application a la possibilité de permettre l'accès à l'appareil, juste après une

reconnaissance faciale.Dans la figure ci-dessous (Figure 1.5), nous représentions l'interface de

l'application FaceUnlock.

Après cela l'addition d'un modèle (sur une photographie dans une base de données)

La Figure 1.7 affichant données saisies - qui prend lui-même placer le remplissage de la

base de données avec des photos de l'utilisateur.

Cette application vous permet de saisir un certain nombre d'images dans la base de données,

après quoi ils sont libérés dispositif est comparé avec les photos faites plus tôt.

Si l'autre personne veut authentifier il peut faire en utilisant un mot de passe (Figure 1.5.1)

Un inconvénient de cette application est la possibilité d'accéder à l'appareil et des personnes

semblables à l'extérieur

Page 13: Continutul Tezei

13

Figure 1.5 – l'application FaceUnlock Figure 1.6 - Entrée des données

Figure 1.7 Affichant données saisies

L'application SmartLogon - ASUS

Smart Logon est un logiciel qui a une grande fonctionnalité et l'accès à notre dispositif de

PC utilisant la reconnaissance faciale. (Figure 1.8).

Page 14: Continutul Tezei

14

Figure 1.8 L'application SmartLogon

Si nous essayons de mettre une photo ne détecte image faciale SmartLogon. L'application détermine

la personne en utilisant un algorithme donné.

Figure 1.9 A échoué détection de visages

Ce logiciel nous permet également de définir un mot de passe au cas où quelqu'un d'autre

veut donner accès à l'appareil.

1.6 Conclusion

Je J'ai choisi ce thème parce que une fois un développeur écrit sera réduite d'un certain nombre de

problèmes. L'une de ces questions serait temps imparti pour la collecte des tests et des données sur le

terrain pour recueillir de telles informations est nécessaire par une seule personne (minimum) qui

vérifierait toutes les photos dans notre base de données.

Ce système nous permettrait de voir la liste complète des utilisateurs qui utilisent ces services, ce

qui indique également le temps et toutes les modifications apportées par eux.

Un avantage serait que, même dans ce domaine, c'est une multitude de possibilités avec laquelle nous

pouvons les intégrer dans une myriade de domaines parce que presque tous les domaines peuvent

Page 15: Continutul Tezei

15

mettre en œuvre ces services.

Systèmes existants ailleurs sont très vieux, avec un suivi extrêmement désavantageux, puisque

couture, détenant des informations par écrit sur le papier et un certain nombre d'excellents employés.

En quelques mots sont des systèmes trop inefficaces et leur entretien passent davantage de ressources

humaines et financières au moment le plus important de surveiller certaines données est extrêmement

élevé.

En 2004, Bill Gates, fondateur de Microsoft, a prédit mots de passe d'extinction. En 2013, sa

prédiction se réaliserait, informe planète intelligente - a été parrainé par IBM. Les chercheurs

travaillant sur un moyen d'éliminer les maux de tête causés par le souvenir des mots de passe de

toutes sortes, ou au moins d'inventer des mots de passe plus sécurisé. Le principal défaut des mots de

passe, c'est que peu importe combien de temps ou complexes soient-ils, ils ouvrent nos machines

seulement quand entrer les codes appropriés. Considérant que les méthodes d'authentification ne

permettra à personne d'ouvrir la porte avec la clé, les nouvelles méthodes feront l'accès à fournir

uniquement à la personne concernée. Plusieurs pistes ont été testées à l'aide des fonctionnalités de

reconnaissance biométrique. IBM prévisions pour 2013 selon laquelle les mots de passe vont

disparaître, «Biométrie - scan rétinien, la reconnaissance faciale et vocale - composeront un logiciel

qui va construire un ADN unique comme mot de passe pour utiliser à la fois en ligne et hors ligne

aussi bien."

Cependant, les progrès possibles sont livrés avec certains risques. "Le problème le plus grave avec

la biométrie, c'est que si biométrique de la signature numérique est compromise une fois, il ne sera

jamais remplacée", a déclaré Tal Be'ery, IT chercheur à Imperva.

L'évolution du changement.

Voici quelques-unes des façons dont les mots de passe ont évolué:

- Banques moderne et contemporain utilisent déjà un logiciel qui utilise la reconnaissance, code PIN

de l'utilisation supplémentaire de la voix;

- Google a une méthode comprend deux étapes, les deux mots de passe de l'utilisateur ainsi que d'un

code envoyé sur votre personnel;

- Smartphone utilise la reconnaissance biométrique par scan facial;

- Plusieurs banques américaines exigent aux clients d'identifier non seulement avec le code PIN, mais

aussi prononciation des phrases courtes uniques à chacun;

- Les téléphones portables qui utilisent la dernière Andoid logiciel de débloquer l'accès à la caméra,

la reconnaissance faciale seulement après que le propriétaire.

Page 16: Continutul Tezei

16

Chapitre 2

2. DETECTION DE VISAGE

Le visage humain a été considéré comme l'organe le plus instructif pour la communication dans notre

vie sociale. Reconnaître automatiquement les visages par les machines peut faciliter un large éventail

d'applications médico-légales et de sécurité. La représentation des visages humains de reconnaissance

peut varier d'une image 2D à une surface 3D. différentes représentations aboutir à des approches

différentes de reconnaissance. Deux vastes études des approches de reconnaissance faciale ont été

publiés en 1995 R. Chellappa, C.L. Wilson, and S. Sirohey, “Human and machine recognition of

faces: A survey,”, 1999 Weng and D.L. Swets, “Face recognition,” et en 2000 W. Zhao, R.

Chellappa, A. Rosenfeld, and P.J. Phillips, “Face recognition: A literature survey,”.Un atelier sur le

traitement des visages en 1985 O.A. Uwechue and A.S. Pandya, Eds., Human Face Recognition

Using Thirdorder Synthetic Neural Networks,ont présenté des études de reconnaissance faciale

principalement du point de vue de la psychologie cognitive. Les études de reconnaissance basée sur

les caractéristiques visage, caricatures informatiques, et l'utilisation de surfaces de face dans la

simulation et l'animation ont été résumées en 1992 V. Bruce and M. Burton, Eds., Processing Images

of Faces,. En 1997, Uwechue donné des détails sur la reconnaissance du visage à base de réseaux de

neurones highorder Utilisation de modèles de visage 2D. En 1998, des conférences sur la

reconnaissance faciale en utilisant les modèles de visage 2D ont été présentés à partir de la théorie

aux applications. En 1999, Hallinan décrit la reconnaissance de visage en utilisant les deux modèles

statistiques pour les modèles de visage 2D et les surfaces frontales 3D. En 2000, Gong a insisté sur

les méthodes d'apprentissage statistique dans les approches de reconnaissance holistiques et la

reconnaissance de visage discuté du point de vue de la vision dynamique.

Les études ci-dessus montrent que les techniques de reconnaissance de visage, en particulier

holistiques méthodes basées sur la théorie du modèle statistique, ont considérablement progressé au

cours des dix dernières années. Les systèmes de reconnaissance de visage sont utilisés dans la

surveillance vidéo et les applications de contrôle de sécurité. Cependant, les techniques les plus

fiables et robustes pour la reconnaissance du visage ainsi que la détection sont nécessaires pour

plusieurs applications. Sauf pour les applications de reconnaissance basés sur des images statiques

frontales qui sont prises dans des environnements bien contrôlés, le principal défi pour la

reconnaissance du visage est d'être en mesure de faire face à la forte variabilité des images de visages

humains. Les sources de variations inter-sujets comprennent les variations et les variations intra-

sujet. Certaines variations ne sont pas amovibles, tandis que d'autres peut être compensée pour la

reconnaissance. Les personnes qui ont les apparences de visages similaires, par exemple de jumeaux,

Page 17: Continutul Tezei

17

et une personne qui pourrait avoir des apparences différentes en raison de cosmétiques ou d'autres

changements dans les poils du visage et des lunettes sont très difficiles à reconnaître. Les variations

dues aux différentes poses, illuminations, et les expressions faciales sont relativement faciles à

manipuler. Algorithmes actuellement disponibles pour la reconnaissance faciale se concentrer sur la

reconnaissance des visages dans ces variations qui peuvent en quelque sorte être compensées. En

raison des variations du visage en raison de poser provoquent une grande quantité de changement

d'aspect, les systèmes de plus en plus profitent de la géométrie 3D du visage pour la reconnaissance.

Ils sont généralement présents dans les images capturées dans des environnements non contrôlés,

tels que les systèmes de surveillance vidéo. Ces défis peuvent être attribués à certains facteurs:

a)Pose variation. Le scénario idéal pour la détection de visage serait celle qui seules images

frontales ont été impliqués. Mais, comme il est dit, ce qui est très improbable dans des conditions non

contrôlées générales. En outre, la perform ance des algorithmes de détection de visage tombe

gravement quand il ya de grandes poser variations. C'est un sujet de recherche majeur. Pose variation

peut se produire en raison des mouvements du sujet ou de l'angle de la caméra.

b)Occlusion d'entité. La présence d'éléments comme les barbes, lunettes ou un chapeau présente

une forte variabilité. Les visages peuvent aussi être partiellement couverts par des objets ou d'autres

visages.

c)L'expression du visage. Les traits du visage sont également très variables en raison des

différentes expressions faciales.

d)Conditions d'imagerie. Différentes caméras et les conditions ambiental peut affecter la qualité

de l'image, ce qui affecte l'apparence d'un visage

2.1 Structure du problème de détection des visages

Détection de visage est un concept qui englobe de nombreux sous-problèmes. Certains systèmes

détecter et localiser des visages en même temps, d'autres effectuent d'abord une routine de détection

et ensuite, s'il est positif, ils essaient de localiser le visage. Ensuite, certains algorithmes de suivi

peuvent être nécessaires – voir Figure 2.1

Figure 2.1 Processus de détection des visage

Page 18: Continutul Tezei

18

Des algorithmes de détection de visage partagent ussually étapes communes. Tout d'abord, une

certaine réduction de la dimension des données est effectué, afin d'obtenir un temps de réponse

admissible. Certains pré-traitement peut également être fait pour adapter l'image d'entrée pour les

pré-requis de l'algorithme. Ensuite, des algorithmes analiZe l'image telle qu'elle est, et quelques

autres tentent d'extraire certaines régions du visage pertinents. La phase suivante consiste

généralement extraire les traits du visage ou de mesures. La SE sera ensuite pondéré, évalué ou

comparé à décider si il ya un visage et où est-il. Enfin, certains algorithmes ont une routine

d'apprentissage et ils comprennent de nouvelles données à leurs modèles. La détection des visages est

donc un problème à deux classes où nous devons décider si il ya un visage ou non dans une image.

Cette approche peut être considérée comme un problème de reconnaissance de visage simplifié. La

reconnaissance faciale doit classer un visage donné, et il ya autant de classes en tant que candidats.

Par conséquent, de nombreuses méthodes de détection des visages sont très semblables à affronter

des algorithmes de reconnaissance. Ou en d'autres termes, les techniques utilisées dans la détection

de visage sont souvent utilisés dans la reconnaissance faciale.

2.2 Approches de détection de visage

Il n'est pas facile de donner une taxonomie des méthodes de détection des visages. Il n'est pas un

critère de regroupement reconnues mondialement. Ils mélangent habituellement et se chevauchent.

Dans cette section, deux critères de classification seront présentés. L'un d'eux fait la différence entre

les scénarios distincts. En fonction de ces scénarios différentes approches peuvent être nécessaires.

Les autres critères divise les algorithmes de détection en quatre catégories.

La détection en fonction du scénario.

a) Environnement contrôlé. C'est le cas le plus simple. Les photographies sont prises sous une lumière

contrôlée, fond, etc techniques de détection de bord simple peut être utilisé pour détecter les visages.

b) Les images en couleur. Les couleurs typiques de la peau peuvent être utilisés pour trouver des

visages. Ils peuvent être faibles si les conditions d'éclairage changent. En outre, la couleur de la peau

humaine change beaucoup, à partir de presque blanc au presque noir. Mais, plusieurs études montrent

que la principale différence se situe entre leur intensité, de sorte chrominance est une bonne option.

Ce n'est pas facile d'établir une représentation de la couleur de la peau humaine solide. Cependant, il

ya des tentatives de construire des algorithmes de détection de visage robustes basées sur la couleur

de la peau.

c) Images en mouvement. Vidéo en temps réel donne la possibilité d'utiliser la détection de mouvement

pour localiser des visages. Aujourd'hui, la plupart des systèmes commerciaux doivent localiser des

visages dans les vidéos. Il ya un défi constant pour atteindre les meilleurs résultats dans la détection

Page 19: Continutul Tezei

19

avec la meilleure performance possible. Une autre approche basée sur le mouvement est la détection

de clignement des yeux, qui a de nombreuses utilisations en dehors de détection de visage.

Les méthodes de détection répartis en catégories

Les méthodes sont divisés en quatre catégories. Ces catégories peuvent se chevaucher, de sorte qu'un

algorithme pourrait appartenir à deux ou plusieurs catégories. Cette classification peut être réalisée

comme suit:

a) Méthodes basées sur la connaissance. Méthodes Ligné-base qui codent pour notre connaissance de

visages humains.

b) Méthodes Feature-invariants. Algorithmes qui tentent de trouver des invariants d'un visage malgré

son angle ou de position.

c) Modèle méthodes d'appariement. Ces algorithmes comparer les images d'entrée avec des motifs

mémorisés des visages ou des fonctionnalités.

d) Méthodes basées sur l'apparence. Procédé de mise en correspondance de gabarit dont le motif de base

de données est appris d'un ensemble d'images d'apprentissage

2.3 Le suivi de visage /Face tracking

De nombreux systèmes de reconnaissance faciale ont une séquence vidéo comme entrée. Ces

systèmes peuvent nécessiter d'être capable non seulement de détecter, mais le suivi des visages. Le

suivi de visage est essentiellement un problème d'estimation de mouvement. Le suivi de visage peut

être réalisée en utilisant de nombreuses méthodes différentes, par exemple, le suivi de la tête, suivi de

fonction, suivi basé sur l'image, le suivi basé sur un modèle. Ce sont des manières de classer ces

algorithmes:

a) Suivi de la tête / le suivi des fonctions individuelle. La tête peut être suivi comme une entité, ou

certains traits suivis individuellement.

b) 2D/3D. Deux systèmes de dimension suivre une face et une sortie de l'espace d'image où la surface

est située. Trois systèmes de dimension, d'autre part, d'effectuer une modélisation 3D du visage. Cette

approche permet d'estimer poser ou des variations d'orientation.

Le processus de base de suivi du visage cherche à localiser une image donnée dans une image.

Ensuite, il doit calculer les différences entre les cadres de mettre à jour l'emplacement de la face. Il ya

beaucoup de questions qui doivent être relevés: occlusions partielles, les changements d'éclairage, la

vitesse de calcul et des déformations du visage.

Un exemple d'un algorithme de suivi du visage peut être celui proposé par Baek. Le vecteur d'état

d'un visage comprend la position centrale, la taille du rectangle dans lequel la face, la couleur

Page 20: Continutul Tezei

20

moyenne de la zone du visage et de leurs dérivées premières. Les nouveaux visages candidats sont

évaluées par un estimateur de Kalman. En mode de poursuite, si la surface n'est pas nouveau, la face

à partir de la trame précédente est utilisé comme matrice. La position de la face est évalué par le

Kalm un estimateur et de la région de visage sont recherchées autour d'un algorithme utilisant le

modèle SSD-dessus. Lorsque SSD trouve la région, l'information de couleur est encastrée dans

l'estimateur de Kalman pour limiter précisément la région du visage. Puis, le vecteur d'état de cette

face est mise à jour. Le résultat a montré solide où certains visages se chevauchent ou lorsque des

changements de couleur ont eu lieu

2.4 Systèmes de reconnaissance de visages

Demandes de reconnaissance de visage en fait intervenir plusieurs étapes importantes, telles que la

détection de visage pour localiser des visages humains, suivi du visage pour suivre des sujets en

mouvement, la modélisation du visage pour représenter des visages humains, visage de codage /

compression pour archiver efficacement et transmettre les visages, et d'appariement de visage pour

comparer représenté visages et d'identifier un sujet de requête. La détection de visage est

généralement une première étape importante. Détection des visages peuvent être considérés comme

une classe de deux (face vs non-face) problème de classification, tandis que la reconnaissance des

visages peuvent être considérés comme un problème de classification multi-classe (plusieurs sujets)

dans la classe de visage. La détection de visage comporte certains aspects de mécanisme de

reconnaissance du visage, tandis que la reconnaissance des visages utilise les résultats de la détection

de visage. On peut envisager de détection de visage et de la reconnaissance en tant que la première et

la deuxième étapes dans un système de classement séquentiel. La question cruciale ici est de

déterminer un espace de fonction appropriée pour représenter un visage humain dans un tel système

de classification. Nous croyons que la combinaison transparente de détection du visage, modelage du

visage, et la reconnaissance des algorithmes a le potentiel d'atteindre la haute performance pour

l'identification de visage applications.

Avec ce principe, nous proposons deux paradigmes de reconnaissance automatiques, fig. 2.2 et fig.

2.3, qui peut combiner la détection des visages ainsi que le suivi (non inclus dans cette thèse, mais

peut être réalisé sur la base de nos travaux en cours), la modélisation et la reconnaissance. Le premier

modèle nécessite à la fois des séquences vidéo et des mesures faciales 2.5D/3D comme son entrée

dans la phase d'apprentissage / d'inscription. Dans la phase de reconnaissance / de test, cependant, les

images de visage sont extraites de l'entrée vidéo seulement. Les visages sont identifiés sur la base

d'un algorithme basé sur l'apparence. Le deuxième paradigme nécessite seulement des séquences

vidéo à son entrée dans les deux étapes d'apprentissage et de reconnaissance. Son module de

reconnaissance de visage utilise un algorithme d'appariement de visage sémantique pour comparer

faces sur la base de composantes faciales pondérés.

Page 21: Continutul Tezei

21

Les deux paradigmes contiennent trois modules principaux: (I) la détection de visage et extraction

de caractéristiques, (II) la modélisation du visage, et (III) la reconnaissance du visage. La détection

de visage / emplacement et le module d'extraction de caractéristiques est capable de localiser des

visages dans des séquences vidéo. La partie la plus importante de ce module est une caractéristique

sous-module d'extraction qui extrait les caractéristiques géométriques (comme limite pour le visage,

les yeux, les sourcils, le nez et la bouche), et les caractéristiques de texture / couleur (estimation de la

tête pose et l'éclairage est laissé en une direction de recherche future). Le module de modélisation de

visage emploie ces caractéristiques extraites pour modifier le modèle 3D du visage générique dans

les stades d'apprentissage et de reconnaissance. Dans cette thèse, nous décrivons la mise en œuvre du

module de modélisation de visage dans les deux paradigmes proposés pour la vue frontale seulement.

L'extension du module de modélisation de visage à vue non frontal peut être une direction de

recherche future. Le module de reconnaissance se sert des caractéristiques faciales extraites d'une

image d'entrée et les modèles 3D appris à vérifier la face présente dans une image dans l'étape de

reconnaissance. Cette thèse a développé un module robuste face de détection qui est utilisé pour

faciliter des applications telles que le suivi du visage pour la surveillance et la modélisation de visage

pour identification (ainsi que la vérification). Nous allons discuter brièvement les thèmes de la

détection des visages et la reconnaissance, la modélisation du visage ainsi que la compression et la

recherche d'images basées sur les faces dans les sections suivantes.

Figure 2.2. Diagramme de système d'un système de reconnaissance de visage basé sur un modèle 3D

en utilisant plage enregistrée et les images en couleur.

Page 22: Continutul Tezei

22

Chapitre 3

3. Les techniques utilisées

Pour le développement d'applications j'ai utilisé Emgu CV et Open CV. Emgu CV est une

croix plateforme .Net wrapper à la bibliothèque de traitement d'image OpenCV. Permettre fonctions

OpenCV pour être appelées à partir. Langages compatibles NET comme C #, VB, VC + +, etc

IronPython L'enveloppe peut être compilé dans le Mono et exécuté sur Windows, Linux, Mac OS X,

iPhone, iPad et appareils Android.

Dans mes propres mots EmguCV est un Wrapper impressionnant, ce laisser faire les choses et les

tâches de la vision par ordinateur très intéressantes, cette bibliothèque fixer laisser faire une quantité

illimitée de magnifiques projets dans ce domaine, EmguCV ont de nombreuses fonctions qui nous

permettent de travailler avec des CPU et GPU augmente les performances de façon spectaculaire

avec la dernière mentionnée.

3.1 Avantage de Emgu CV

Cross Platform

Emgu CV est entièrement écrit en C #. L'avantage est qu'il peut être compilé dans le Mono et est

donc en mesure d'exécuter sur n'importe quelle plate-forme Mono soutient, y compris Linux, Mac OS

X, iOS et Android.

Cross Language et est livré avec un exemple de code

Emgu CV peut être utilisé à partir de plusieurs langues différentes, y compris C #, VB.NET, C + +

et IronPython.

Page 23: Continutul Tezei

23

Figure 2.3. Diagramme de système d'un système de reconnaissance de visage basé sur un modèle 3D

sans l'utilisation de données télémétriques.

Autres avantages

• Classe de l'image avec la couleur générique et profondeur

• Automatique collecte des ordures

• XML Serializable image

• Documentation XML et support de l'IntelliSense

• Le choix d'utiliser soit la classe de l'image ou de fonctions directes invoquer de OpenCV

Bien qu'il soit possible de créer une image en appelant CvInvoke.cvCreateImage, il est suggéré de

construire une image <TColor, objet TDepth> place. Il ya plusieurs avantages à l'aide de l'image géré

<TColor, classe TDepth>

Page 24: Continutul Tezei

24

Figure 3.1. Vue d'ensemble des Emgu CV versions

•La mémoire est automatiquement libéré par le garbage collector

•Image <TColor, classe TDepth> peut être examinée par Debugger Visualizer

• Image <TColor, classe TDepth> contient méthode avancée qui n'est pas disponible sur OpenCV,

par exemple, le fonctionnement générique de pixels de l'image, la conversion de bitmaps, etc

• Les opérations génériques sur pixels de l'image

3.2 Présentation de l'architecture

Emgu CV a deux couches d'enveloppe, comme indiqué ci-dessous figure 3.2

• La couche de base (couche 1) contient une fonction, la structure et l'énumération des mappages qui

reflètent directement les personnes en OpenCV.

• La deuxième couche (couche 2) contient des classes qui se mélangent dans advantanges du monde.

NET.

Page 25: Continutul Tezei

25

Figure 3.2. Présentation de l'architecture Emgu CV

3.3 Wrapping OpenCV

Mappage de fonction - Emgu.CV.CvInvoke

La classe CvInvoke fournit un moyen d'invoquer directement la fonction OpenCV dans les langues.

NET. Chaque méthode dans cette classe correspond à une fonction dans OpenCV du même nom. Par

exemple, un appel à

IntPtr image = CvInvoke.cvCreateImage(new System.Drawing.Size(400, 300),

CvEnum.IPL_DEPTH.IPL_DEPTH_8U, 1);

est équivalent à l'appel de la fonction suivante dans C

IplImage* image = cvCreateImage(cvSize(400, 300), IPL_DEPTH_8U, 1);

Page 26: Continutul Tezei

26

Les deux qui créer un 400x300 sur 8 bits non signé en niveaux de gris image.

Structure Mapping - Emgu.CV.Structure.Mxxx

Ce type de structure est une application directe de structures OpenCV.

Figure 3.3 Structure Mapping - Emgu.CV.Structure.Mxxx

Le préfixe M représente ici la structure gérée.

Emgu CV emprunte aussi quelques structures existantes .Net pour représenter les structures dans

OpenCV:

Figure 3.4 Structures existantes .Net qui representer les structures dans le OpenCV

Page 27: Continutul Tezei

27

Énumération Mapping - Emgu.CV.CvEnum

L'espace de noms CvEnum offre une cartographie directe aux énumérations OpenCV. Par exemple,

CvEnum.IPL_DEPTH.IPL_DEPTH_8U a la même valeur que dans IPL_DEPTH_8U OpenCV; tous

deux égaux 8.

Profondeur et la couleur comme paramètre générique

Une image est définie par ses paramètres génériques: la couleur et de la profondeur. Pour créer un 8

bits non signé en niveaux de gris image, à Emgu CV, il est fait en appelant

Image<Gray, Byte> image = new Image<Gray, Byte>( width, height);

Non seulement cette syntaxe vous faire prendre conscience de la couleur et de la profondeur de

l'image, il limite également la façon dont vous utilisez les fonctions et les erreurs de saisie dans le

temps de la compilation. Par exemple, le fonction SetValue(TColor color, Image<Gray, Byte> mask)

dans Image<TColor, TDepth> class (version >= 1.2.2.0)n'acceptera que les couleurs du même type,

et le masque doit être un non signé de 8 bits en niveaux de gris image. Toute tentative d'utiliser une

virgule flottante de 16 bits ou niveaux de gris non-image comme un masque résulte une erreur de

compilation!

3.4 Création d'image

Bien qu'il soit possible de créer une image en appelant CvInvoke.cvCreateImage, il est suggéré de

construire un

Image <TColor, objet TDepth> place. Il ya plusieurs avantages à l'aide de l'image classe

<TColor,TDepth> géré

• La mémoire est automatiquement libéré par le garbage collector

• Image<TColor, TDepth> class peut être examinée par Debugger Visualizer

• Image<TColor, TDepth> class contient méthode avancée qui n'est pas disponible sur OpenCV, par

exemple, générique opération sur l'image pixels, la conversion en bitmap, etc.

Image Color

Le premier paramètre générique de l'image classe spécifique de la couleur du type d'image. par

exemple:

Image<Gray, ...> img1;

indique que img1 est un seul canal en niveaux de gris image.

Page 28: Continutul Tezei

28

Types de couleur compatible sont les suivants:

• Gray

• Bgr (Blue Green Red)

• Bgra (Blue Green Red Alpha)

• Hsv (Hue Saturation Value)

• Hls (Hue Lightness Saturation)

• Lab (CIE L*a*b*)

• Luv (CIE L*u*v*)

• Xyz (CIE XYZ.Rec 709 with D65 white point)

• Ycc (YCrCb JPEG)

Profondeur d'image

Profondeur d'image est spécifiée en utilisant le deuxième générique Profondeur de paramètre. Les

types de profondeur pris en charge dans Emgu CV 1.4.0.0 sont

• Byte

• SByte

• Single (float)

• Double

• UInt16

• Int16

• Int32 (int)

Création d'une nouvelle image

Pour créer une image 480x320 de couleur Bgr et profondeur 8 bits non signé. Le code en C # serait

être:

Image<Bgr, Byte> img1 = new Image<Bgr, Byte>(480, 320);

Si vous veut préciser la valeur de fond de l'image, disons en bleu. Le code en C # serait être:

Image<Bgr, Byte> img1 = new Image<Bgr, Byte>(480, 320, new Bgr(255, 0, 0));

Lecture d'image à partir d'un fichier

Création d'images à partir fichiers est aussi simple. Si le fichier image est "myImage.jpg", en C #, il

est

Image<Bgr, Byte> img1 = new Image<Bgr, Byte>("MyImage.jpg");

Création de l'image à partir de Bitmap

Page 29: Continutul Tezei

29

Il est également possible de créer une Image <TColor, TDepth> partir d'un objet Bitmap. Net. Le

code en C # serait être

Image<Bgr, Byte> img = new Image<Bgr, Byte>(bmp); //where bmp is a Bitmap

Automatic Garbage Collection

Le Image <TColor, classe TDepth> prend automatiquement en charge la gestion de la mémoire et de

la collecte des ordures.

Une fois que le garbage collector a décidé qu'il n'y a pas plus référence à l'image <TColor, objet

TDepth>, il sera appeler la méthode réglées, ce qui libère la structure de IplImage non géré.

Le temps de quand garbage collector décide de se défaire de l'image n'est pas garanti. Lorsque vous

travaillez avec un grand image, il est recommandé d'appeler la méthode Dispose () pour libérer

explicitement l'objet. Vous pouvez également utiliser l' utilisant le mot clé en C # pour limiter la

portée de l'image

using (Image<Gray, Single> image = new Image<Gray, Single>(1000, 800))

{

... // faire quelque chose ici, à l'image

} // L'image sera disposé ici et la mémoire libérée

Obtenir ou définir pixels

La façon sûre (lent)

• Supposons que vous travaillez sur une image <Bgr, byte>. Vous pouvez obtenir le pixel sur le y-

ième ligne et x-ième colonne par appel

Bgr color = img [y, x];

• Réglage du pixel sur le y-ième ligne et x-ième colonne est également simple

img [y, x] = couleurs;

La voie rapide

• L'image des valeurs de pixels sont stockés dans la propriété des données, un tableau 3D. Utilisez

cette propriété si vous avez besoin d'itérer à travers les valeurs de pixels de l'image.

Méthodes

Convention de nommage

Page 30: Continutul Tezei

30

• Méthode XYZ en image <TColor, classe TDepth> correspond à la fonction cvXYZ OpenCV. Par

exemple, Image <TColor, TDepth>. Fonction not () correspond à cvNot fonction avec l'image

résultante étant retourné.

• Méthode _xyz est généralement la même que la méthode XYZ sauf que l'opération est réalisée in-

situ plutôt que renvoi d'une valeur. Par exemple, l'image <TColor, TDepth>. _PAS () Effectue le

inplace d'inversion bit à bit.

Les opérateurs de surcharge

Les opérateurs + - * / a été surchargé (version> 1.2.2.0) de sorte qu'il est parfaitement légal de rédiger

des codes comme:

Image<Gray, Byte> image3 = (image1 + image2 - 2.0) * 0.5;

Opération Générique

Un des avantages de l'utilisation de Emgu CV est la capacité à effectuer des opérations génériques.

C'est mieux si je démontre cela par un exemple. Supposons que nous ayons une image en niveaux de

gris d'octets

Image<Gray, Byte> img1 = new Image<Gray, Byte>(400, 300, new Gray(30));

Pour inverser tous les pixels de cette image que nous pouvons appeler la fonction non

Image<Gray, Byte> img2 = img1.Not();

Comme alternative, on peut aussi utiliser la méthode générique Convert disponibles à partir de

l'image <TColor, TDepth> classe

Image<Gray, Byte> img3 = img1.Convert<Byte>( delegate(Byte b) { return (Byte) (255-b); });

L'image résultante img2 img3 et contient la même valeur pour chaque pixel.

À première vue, il ne serait pas semble être un gros gain lors de l'utilisation des opérations

génériques. En fait, depuis OpenCV a déjà une implémentation de la fonction et non en terme de

performance, il est mieux que la version générique de l'appel de fonction équivalente Convert.

Cependant, il arrive à des cas lorsque les fonctions génériques offrent la flexibilité avec pénalité de

performance mineures.

Disons que vous avez une image <Gray, Byte> img1 avec des pixels fixés. Vous souhaite créer une

seule image de canal à virgule flottante de la même taille, où chaque pixel de la nouvelle image,

correspondant à l'ancienne image, décrit avec le délégué suivant

delegate(Byte b) { return (Single) Math.cos( b * b / 255.0); }

Cette opération peut être complété comme suit dans Emgu CV

Page 31: Continutul Tezei

31

Image<Gray, Single> img4 = img1.Convert<Single>( delegate(Byte b) { return (Single) Math.cos( b

* b / 255.0); } );

La syntaxe est simple et significative. D'autre part, cette opération dans OpenCV est difficile à

réaliser car la fonction équivalente comme Math.cos n'est pas disponible.

Dessiner des objets sur l'image

Le tirage au sort () dans l'image <couleur, la profondeur> peut être utilisé pour attirer différents types

d'objets, y compris les polices, des lignes, des cercles, des rectangles, des boîtes, des ellipses ainsi

que les contours. Utilisez la documentation et IntelliSense comme un guide pour découvrir les

nombreuses fonctionnalités de la fonction Draw.

Couleur et conversion profondeur

Convertir une image <TColor, TDepth> entre les différentes couleurs et les profondeurs sont simples.

Par exemple, si vous avez l'image <Bgr, Byte> img1 et vous souhaite convertir une image en niveaux

de gris de simple, tout ce que vous devez faire est de

Image<Gray, Single> img2 = img1.Convert<Gray, Single>();

3.5 Affichage image

Utiliser ImageBox

Emgu CV recommande l'utilisation du contrôle ImageBox à des fins d'affichage, pour les raisons

suivantes:

• ImageBox est un contrôle de haute performance pour l'affichage de l'image. Chaque fois que

possible, il affiche une image bitmap qui partage la mémoire avec l'objet de l'image, donc pas de

copie de mémoire est nécessaire (très rapide).

• L'utilisateur sera en mesure d'examiner les valeurs d'image en pixels, taux d'image vidéo, les types

de couleurs lorsque l'image est affichée.

• Il est commode d'effectuer des opérations de simple image avec quelques clics de souris.

Conversion de Bitmap

La classe Image a une fonction de ToBitmap () qui retourne un objet Bitmap, qui peut facilement être

affichée sur un contrôle PictureBox utilisant Windows Form.

La sérialisation XML

Pourquoi dois-je m'inquiète?

Page 32: Continutul Tezei

32

Un de l'avenir de Emgu CV, c'est que l'image <TColor, TDepth> peut être XML serializated. Vous

pourriez vous demander pourquoi nous avons besoin de sérialisation d'une image. La réponse est

simple, nous souhaite l'utiliser dans un service web!

Comme le Image <TColor, TDepth> classe implémente ISerializable, lorsque vous travaillez dans

WCF (Windows Communication Fundation), vous êtes libre d'utiliser l'image <TColor,TDepth> type

comme paramètres ou la valeur de retour d'un service Web.

Ce sera idéal, par exemple, si vous construisez un cluster d'ordinateurs de reconnaître les différents

groupes de l'objet et disposer d'un ordinateur central pour coordonner les tâches. Je vais aussi être

utile si votre veut mettre en place un logiciel de contrôle à distance qui ne cessent image requête à

partir d'un serveur distant, qui utilisent la classe de capture dans Emgu CV pour capturer des images

de la caméra.

Conversion to XML

Vous pouvez utiliser le code suivant pour convertir un Image<Bgr, Byte> image à XmlDocument:

StringBuilder sb = new StringBuilder();

(new XmlSerializer(typeof(Image<Bgr, Byte>))).Serialize(new StringWriter(sb), o);

XmlDocument xDoc = new XmlDocument();

xDoc.LoadXml(sb.ToString());

Conversion à partir de XML

Vous pouvez utiliser le code suivant pour convertir un XmlDocument xDoc à Image<Bgr,Byte>

Image<Bgr, Byte> image = (Image<Bgr, Byte>)

(new XmlSerializer(typeof(Image<Bgr, Byte>))).Deserialize(new XmlNodeReader(xDoc));

Page 33: Continutul Tezei

33

Chapitre 4

4. La modelisation conceptuelle pour l’application “Elaboration de l'application de la vision

temps réel de l'ordinateur.”

On va traiter les sujets suivants:

Modèle des cas d’utilisation

Le diagramme de cas d’utilisation représente la structure des grandes fonctionnalités

nécessaires aux utilisateurs du système. C’est le premier diagramme du modèle UML, celui où

s’assure la relation entre l’utilisateur et les objets que le système met en œuvre.

On va les élucider dans la première étape de la modélisation d’Application pour l’hôpital 

gynécologique. Fiche de naissance de l’enfant.

Modèle du Domaine

Un modèle du domaine saisit les types d'objets les plus importants dans le contexte du

système. Les objets du domaine représentent les "choses" qui existent ou les événements qui se

produisent dans l'environnement au sein duquel fonctionne le système. Les classes du domaine se

représentent généralement sous trois formes:

- les objets métiers représentant les éléments mis en oeuvre dans une activité professionnelle;

- les objets et concepts du monde réel dont le système doit garder la trace;

- les événements s'étant produits ou devant se produire.

Création des diagrammes de séquence système (SSD). Description des détails des contrats

d’opération.

Le diagramme de séquence représente la succession chronologique des opérations réalisées

par un acteur. Il indique les objets que l’acteur va manipuler et les opérations qui font passer d’un

objet à l’autre.

Modélisation du comp. dans les diagrammes d’états-transitions et d’activités.

Le diagramme d’états-transitions représente la façon dont évoluent les objets appartenant à

une même classe. La modélisation du cycle de vie est essentielle pour représenter et mettre en forme

la dynamique du système.

Le diagramme d’activités n’est autre que la transcription dans UML de la représentation du

processus telle qu’elle a été élaborée lors du travail qui a préparé la modélisation : il montre

l’enchaînement des activités qui concourent au processus.

Diagrammes des composants et de déploiement.

Les diagrammes de composants et les diagrammes de déploiement sont les deux derniers

types de vues statiques en UML. Les premiers décrivent le système modélisé sous forme de

composants réutilisables et mettent en évidence leurs relations de dépendance. Les seconds se

Page 34: Continutul Tezei

34

rapprochent encore plus de la réalité physique, puisqu’ils identifient les éléments matériels, leur

disposition physique et la disposition des exécutables sur ces éléments matériels.

4.1 Cas d’utilisations :

Un cas d’utilisation est un document narratif qui décrit la séquence d’évènements dans

laquelle un acteur (un agent externe) utilise un système pour accomplir un processus.

Cas d’utilisation (usecase): Décrit un ensemble de séquences dans lequel chacune des

séquences représente l’interaction des acteurs avec le système lui-même. Représente les fonctions du

système visibles par les acteurs.

Acteur: Ensemble de rôles interprétés par les utilisateurs du système lorsque ceux-ci

interagissent avec le système à travers les cas d’utilisation. Il s’agit d’une entité externe au système

qui interagit avec celui-ci.

Parties prenantes et intérêts: Liste des personnes qui sont impliqués dans le cas d’utilisation et

ce qu’ils souhaitent.

Pré conditions: Conditions qui doivent être vraies avant le début du scénario

Garanties en cas de succès (post conditions): Conditions qui doivent être vraies lorsque le cas

d’utilisation se termine avec succès.

Page 35: Continutul Tezei

35

uc Primary Use Cases

Ajouter des information

System Boundary

Administrateur

Ajouter nouv el enregistrement

Supprimer l'enregistrement

Ajoutez le nom

Ajoutez le prenom

Ajouter des photos

Sauv er en DB

Modifierd des enregistrement

Autentification

Afficher le journal

«include»

«include»

«include»

«include»

Figure 4.1 Cas des d’utilisations pour le système entier

Use Case UC 1 – Authentification

Principaux acteurs : Les utilisateurs enregistrés, les administrateurs.

Les intervenants et intérêts :

- Tous les utilisateurs souhaitent que le processus doive être simple, rapide, sûr et qu’ils reçoivent leurs

niveaux d’accès.

Pré-conditions:

L’usager doit accéder la page d’authentification;

Le compte est active ;

les informations d’identification complétées.

Post-conditions:

L’authentification avec succès;

L’usager est autorisé sur ses droits dans le système.

Scenario:

1. L’usager saisit la page d’authentification.

2. L’usager soumis ses données dans les champs notés.

3. Le système amène l’usager à la page d’accueil.

Page 36: Continutul Tezei

36

Extensions :

2.a. Le nom ou le mot de passe n’est pas valide.

o Un message d’erreur est affiche sur l’écran.

Exigences particulières :

- version du client doit être installé.

- connexion existante au serveur

Fréquence d’utilisation :

- Souvent.

Use Case UC 2 – A jouter nouvel enregistrement:

Principaux acteurs : L'utilisateur connecté

Les intervenants et intérêts :

- Suivi ensemble du personnel, en les plaçant dans la base de données pour être reconnu.

Pré-conditions:

L’usager doit accéder la page d’authentification;

Le compte est active ;

les informations d’identification complétées.

Post-conditions:

l'utilisateur fait une nouvelle insertion de la base de données;

l’utilisateur est déjà existant dans la base de données et peut être reconnu par le système.

Scenario:

4. L’utilisateur accède au bouton à la forme de l'ajout d'un nouvel enregistrement

5. L’utilisateur remplit le formulaire d'enregistrement des travailleurs

6. L’utilisateur enregistre les données soumises

Extensions :

2.a. Dispositif de capture d'image ne peut pas être trouvé

o Un message d’erreur est affiche sur l’écran.

Exigences particulières :

- version du client doit être installé.

- connexion existante au serveur.

- Doit être exist le dispositif de capture d'image

Fréquence d’utilisation :

- Ne pas souvent.

Use Case UC 3 – Modifier l’enregistrement:

Principaux acteurs : L'utilisateur connecté

Page 37: Continutul Tezei

37

Les intervenants et intérêts :

- Correction et mise à jour des informations sur les travailleurs.

Pré-conditions:

L’usager doit etre identifié/connecte au systeme;

L’entrées existantes dans la base de données;

Post-conditions:

records sont actualisées;

l’utilisateur est déjà existant dans la base de données et peut être reconnu par le système.

Scenario:

7. L’utilisateur accède au bouton à la forme de modifier enregistrement

8. L’utilisateur remplit le formulaire d'enregistrement des travailleurs

9. L’utilisateur enregistre les données nouveaux.

Extensions :

2.a. Dispositif de capture d'image ne peut pas être trouvé

o Un message d’erreur est affiche sur l’écran.

Exigences particulières :

- version du client doit être installé.

- connexion existante au serveur.

- Doit être exist le dispositif de capture d'image

- Doit être les enregistrement

Fréquence d’utilisation :

- Ne pas souvent.

Use Case UC 4 – Supprimer des enregistrement:

Principaux acteurs : L'utilisateur connecté

Les intervenants et intérêts :

- Supprimer des informations sur les travailleurs.

Pré-conditions:

L’usager doit etre identifié/connecte au systeme;

L’entrées existantes dans la base de données;

Post-conditions:

l'information est supprimée de la base de données;

utilisateur supprimé n'est plus reconnu par le système.

Scenario:

10. L’utilisateur accède au bouton supprimer enregistrement

11. L’utilisateur accepter la suppression des données.

Page 38: Continutul Tezei

38

Extensions :

2.a. L'utilisateur ne peut pas se supprimer

o Un message d’erreur est affiche sur l’écran.

Exigences particulières :

- version du client doit être installé.

- connexion existante au serveur.

- Doit être les enregistrement

Fréquence d’utilisation :

Ne pas souvent.

Use Case UC 5 – Afficher le journal:

Principaux acteurs : L'utilisateur connecté

Les intervenants et intérêts :

- Affichage enregistre chaque travaillée et heure il a été observé.

Pré-conditions:

L’usager doit etre identifié/connecte au systeme;

L’entrées existantes dans la base de données;

Le dispositif de suivi doit être connecté

Post-conditions:

l'information est enregistré sur la base de données;

enregistrements sont présentés pour être vu.

Scenario:

12. L’utilisateur accède au bouton afficher les enregistrement

Extensions :

2.a. Il n'y a aucun enregistrement

o Un message d’ informations est affiche sur l’écran.

Exigences particulières :

- version du client doit être installé.

- connexion existante au serveur.

- doit être existe les enregistrement

Fréquence d’utilisation :

Souvent.

4.2 Les diagrammes SSD et leur description.

Dans la (Figure 4.2) est represente l’interaction de l’acteur « Administrateur » avec le systeme,

premierement s'identifier sur le systeme.

Page 39: Continutul Tezei

39

sd Business Process Model

Administrateur System

loginUser(login, password)

validateUser()

systemAutorization(UserObject)userAutentified() :boolean

Figure 4.2 Diagramme SSD « Login Usager »

Opération: login(login, password)

Références (Use Case) : Authentification

Pré-condition : l’usager introduit les données personnelles

Post-condition : les données sont affichées à l’écran

Opération: validateUser(login, password)

Références (Use Case) : Authentification

le système fait une requête vers la base de données, vérifie l’usager et fait la validation.

Post-condition : la base reçoive les données

Opération: verifieUser(login, password)

Références (Use Case) : Authentification

Pré-condition : la base vérifier si un tel utilisateur existe ou les données sont vrais

Post-condition : la validation est faite et le système passe le résultat.

Opération: authorizationInSystem()

Références (Use Case) : Authentification

Pré-condition : le message de la validation est positif

Post-condition : l’usager est autorisé dans le système avec les droits

spécifiés.

Dans la (Figure 4.3) est represente l’interaction de l’acteur « Administrateur » avec le systeme, pour

faire un nouveau record, administrateur remplit les champs avec le nom de nom et ajouter une image

Page 40: Continutul Tezei

40

de la personne

sd Ajouter nouv el enregistrement

Administrateur

GUI DataBase

NouvelEnregistrement(id)

return(id)

AddNume(nume)

AddPrenom(nume)

return(string)

SaveAllData(id)

VerifierInformation(id)

EnregistremenSuprimer(id)

ShowDetails(id)

Figure 4.3 Diagramme SSD « Ajouter nouvelle enregistrement »

Opération: NouvelEnregistrement(id)

Références (Use Case) : Ajouter nouvelle enregistrement 

Pré-condition : l’usager introduit les données pur chaque personne.

Post-condition : les données sont affichées à l’écran

Opération: AddNume(nume)

Références (Use Case) : Ajouter nouvelle enregistrement 

entrer le nom

Post-condition : la base reçoive les données

Opération: AddPrenume(prenume)

Références (Use Case) : Ajouter nouvelle enregistrement 

entrer le prenom

Post-condition : la base reçoive les données

Opération: SaveAllData(id)

Références (Use Case) : Ajouter nouvelle enregistrement 

Pré-condition : le message de la sauver est positif

Post-condition : la base reçoive les données

Page 41: Continutul Tezei

41

Opération: VerifierInformation(id)

Références (Use Case) : Ajouter nouvelle enregistrement 

Pré-condition : le message de la sauver est positif

Post-condition : la base reçoive les données.

Opération: EnregistremenSuprimer (id)

Références (Use Case) : Ajouter nouvelle enregistrement 

Pré-condition : le message de la verifie est positif

Post-condition : Les données seront enregistrées

Dans la (Figure 4.4) est represente l’interaction de l’acteur « Administrateur » avec le

systeme, pour modifier record, administrateur changer les champs avec le nom de nom et ajouter une

image de la personne

sd ModifierDiagram

Administrateur

GUI DataBase

ModifierEnregistrement(id)

GetEnregistrement(id)

ReturnEnregistrement(id)

return(id)

ModifierNume(nume)

ModifierPrenom(prenume)

ModifierPhoto()

SaveAllData()

ModifierSupprimer()

ReturnSupprimer()

return()

Figure 4.4 Diagramme SSD « Modifier d’enregistrement »

Opération: ModifierEnregistrement(id)

Références (Use Case) : Ajouter nouvelle enregistrement 

Pré-condition : l’usager introduit les données pur chaque personne.

Page 42: Continutul Tezei

42

Post-condition : les données sont affichées à l’écran

Opération: ModifierEnregistrement (id)

Références (Use Case) : Ajouter nouvelle enregistrement 

Pré-condition : l’usager introduit les données pur chaque personne.

Post-condition : les données sont affichées à l’écran

Opération: ModifierNume(nume)

Références (Use Case) : Ajouter nouvelle enregistrement 

entrer le nom

Post-condition : la base reçoive les données

Opération: ModifierPrenume(prenume)

Références (Use Case) : Ajouter nouvelle enregistrement 

entrer le prenom

Post-condition : la base reçoive les données

Opération: SaveAllData(id)

Références (Use Case) : Ajouter nouvelle enregistrement 

Pré-condition : le message de la sauver est positif

Post-condition : la base reçoive les données

Opération: VerifierInformation(id)

Références (Use Case) : Ajouter nouvelle enregistrement 

Pré-condition : le message de la sauver est positif

Post-condition : la base reçoive les données.

Opération: ModifierSuprimer (id)

Références (Use Case) : Ajouter nouvelle enregistrement 

Pré-condition : le message de la verifie est positif

Post-condition : Les données seront enregistrées

Dans la (Figure 4.5) est represente l’interaction de l’acteur « Administrateur » avec le

systeme, pour supprimer l'enregistremen du personne deja existente en base de donnes

Page 43: Continutul Tezei

43

sd SupprimerProcess Model

Administrateur

DateBaseGUI

SupprimerEnregistrement(id)

Delete(id)

DeleteReturn()

return() :boolean

Figure 4.5 Diagramme SSD « Effacer une enregistrement »

Opération: accesSupprimerEnregistrement(id)

Références (Use Case) : Supprimer l'enregistrement

l’utilisateur doit être authentifié avec succès

Post-condition : la fenêtre pour effacer un enregistrement existente

Opération: accesDelete(id)

Références (Use Case) : Supprimer l'enregistrement

l'enregistrement doir existe

Post-condition : l’objet est détruit est effacer de la base de données

4.3 Modèle du Domaine

Le modèle du domaine est une représentation visuelle d’une classe ou des objets dans

situations réelles d’un certain domaine.Un système conceptuel se réalise sans des artéfacts du

système, des responsabilités ou des méthodes.

Les classes conceptuelles des modèles du domaine contiennent :

- Des symboles (mots, images)

- Intension (la définition)

- Extension (un set des exemples)

Pour créer un modèle du domaine il faut utiliser des listes avec des catégories ou le scenario

de base.

Il y a aussi la conception des classes descriptives qui contient une information générale qui

ne se réfère pas à l’exemple concret du l’issue.

Page 44: Continutul Tezei

44

L’architecture logique du système est une organisation des classes dans des paquets, sous-

systèmes, couches (groupage des classes).

class Domain Objects

Ev ents

FacesRecognitionEv ent

- clasification: string- loadTrainingFaces: string

EigenFaceGen

- averageFace: KMatrix- eigValues: KMatrix- eigVector: KMatrix- trained: boolean

EuclideanDistance

+ distanceBetween(fv1: FeatureVector,fv2:FeatureVector)() : number

FeatureSpace

- clasification: array- euclideanDistance: EuclideanDistance- featureSpace: array

FaceRecognition

- ammountOfTrainedFaces: uint- facesArray: array- featuredSpace: FeatureSpace- imageHeigt: uint- imageWidth: uint

FeatureVector

- classification: int- face: FACE- featureVector: array

Picture

+ getImagePixels() : array+ Picture() : bitMapData

Face

- classification: string- description: string- faceURL: string- picture: PICTURE

FacesEv ent

- face: FACE- faceLoader: string

1..*

DistanceMeasure

1..*

1..*featureSpace1..*

1..*

eigenface

1..*

1

obtain

1..*1

describe

1

Figure 4.6. Diagramme Domain Model

Pour l’élaboration du Modèle du Domaine on a utilisé la liste des catégories :

et le scenario de base des chapitres précédentes, par exemple :

L’utilisateur choisi l’option d’ajouter une nouvelle enregistrement.

L’utilisateur choisi la option de reconnaissance.

Ces deux techniques ont été appliquées pour réaliser le modèle conceptuel.

4.4 Modélisation du comportement dans les diagrammes d’états-transitions et d’activités.

Page 45: Continutul Tezei

45

Le diagramme d'activité est un diagramme comportemental d'UML, permettant de représenter le

déclenchement d'événements en fonction des états du système et de modéliser des comportements

parallélisables (multi-threads ou multi-processus).

Un diagramme d'activité permet de modéliser un processus interactif, global ou partiel pour un

système donné (logiciel, système d'information). Il est recommandable pour exprimer une dimension

temporelle sur une partie du modèle, à partir de diagrammes de classes ou de cas d'utilisation, par

exemple.

Le diagramme d'activités est une représentation proche de l'organigramme ; la description d'un cas

d'utilisation par un diagramme d'activités correspond à sa traduction algorithmique. Une activité est

l'exécution d'une partie du cas d'utilisation, elle est représentée par un rectangle aux bords arrondis.

Le diagramme d'activité est sémantiquement proche des diagrammes de communication (appelés

diagramme de collaboration en UML 1), ou d'état-transitions, ces derniers offrant une vision

microscopique des objets du système.

Le diagramme d'activité présente une vision macroscopique et temporelle du système modélisé :

Action

Action structure

Historique

Fusion

Décision

Joint et fork

Un diagramme états-transitions est un schéma utilisé en génie logiciel pour représenter des

automates déterministes. Il fait partie du modèle UML et s'inspire principalement du formalisme des

statecharts et rappelle les grafcets des automates. S'ils ne permettent pas de comprendre globalement

le fonctionnement du système, ils sont directement transposables en algorithme. Tous les automates

d'un système s'exécutent parallèlement et peuvent donc changer d'état de façon indépendante.

En plus des états de départ (au moins un) et d'arrivée (nombre quelconque), une transition

peut comporter les éléments facultatifs suivants :

Un évènement

Une condition de garde

Page 46: Continutul Tezei

46

Une liste d'actions

Quand l'événement se produit alors que les états de départ sont actifs et que la condition de

garde est vraie alors les actions seront déclenchées.

Cette exécution est enrichie lorsque les états définissent une action d'entrée et une action de

sortie : l'action de sortie de l'état de départ est exécutée d'abord, puis l'action de la transition, puis

l'action de l'état d'arrivée.

deployment Network

acces form for enregistrement

prepare UI to adding enregistremen

fill cell whit data

«capture»picture

confirm action capure picture

Check for camera data stream

Map to RGB

no camera found

ExitPoint

check definied face

v erified information

publish info

Final

display info

error mesage

«rejected»picture

[ok]

[camera not found] [exit]

[try again]

[all fi l l completed]

[fi l l incompleted]

Figure 4.7. Diagramme Insérer un enregistrement

Dans ce diagramme on évoque l’activité d’enregistrement sur cette application.

L’utilisateur choisi l’option de enregistrer les nouveau personne.

Page 47: Continutul Tezei

47

Le module de procession vérifie les données introduites dans les champs disponibles. Dans le cas

d’insuccès, le système montre un message d’erreur et L’utilisateur doit introduire les données de

nouveau. Au contraire, le module de procession accomplie la requête.

stm searching

Inactiv

Tracking Photo Searching Result Displayed

Final

Match not found

[start]

[Tracking face]

[photo tracked]/Search()

[display result ifres>0] /Display()

[display "Match not found"]/DispNotFound()

Figure 4.8. La recherche dans l’application

4.5 Diagrammes des composants et de déploiement

Les diagrammes de composants et les diagrammes de déploiement sont les deux derniers

types de vues statiques en UML. Les premiers décrivent le système modélisé sous forme de

composants réutilisables et mettent en évidence leurs relations de dépendance. Les seconds se

rapprochent encore plus de la réalité physique, puisqu’ils identifient les éléments matériels (PC,

Modem, Station de travail, Serveur, etc.), leur disposition physique (connexions) et la disposition des

exécutables (représentés par des composants) sur ces éléments matériels.

Un composant doit fournir un service bien précis. Les fonctionnalités qu’il encapsule doivent

être cohérentes entre elles et génériques (par opposition à spécialisées) puisque sa vocation est d’être

réutilisable.

Un composant est une unité autonome représentée par un classeur structuré, stéréotypé

«component», comportant une ou plusieurs interfaces requises ou offertes. Son comportement

interne, généralement réalisé par un ensemble de classes, est totalement masqué : seules ses

interfaces sont visibles. La seule contrainte pour pouvoir substituer un composant par un autre est de

respecter les interfaces requises et offertes.

Un diagramme de déploiement décrit la disposition physique des ressources matérielles qui

composent le système et montre la répartition des composants sur ces matériels. Chaque ressource

Page 48: Continutul Tezei

48

étant matérialisée par un nœud, le diagramme de déploiement précise comment les composants sont

répartis sur les nœuds et quelles sont les connexions entre les composants ou les nœuds. Les

diagrammes de déploiement existent sous deux formes : spécification et instance.

Un artefact correspond à un élément concret existant dans le monde réel (document,

exécutable, fichier, tables de bases de données, script, …). Il se représente comme un classeur par un

rectangle contenant le mot-clé «artifact» suivi du nom de l’artefact.

Une instance d’un artefact se déploie sur une instance de nœud. Graphiquement, on utilise

une relation de dépendance (flèche en trait pointillé) stéréotypée «deploy» pointant vers le nœud en

question. L’artefact peut aussi être inclus directement dans le cube représentant le nœud. En toute

rigueur, seul des artefacts doivent être déployés sur des nœuds. Un composant doit donc être

manifesté par un artefact qui, lui-même, peut être déployé sur un nœud.

Voila les diagrammes de composantes et de déploiement du cette application.

Modèle d’application – sépare quatre components :

ServerAppLogic - le component que est responsable pour la logique d’application pour serveur

ClientAppLogic – le component que est responsable pour la logique d’application pour l’usager

SystemFile – responsable pour l’interaction de l’application avec le système des fichiers du système

d’opération

ClientVersion – le component qui soutien la visualisation des pages à l’usager

cmp Components

System File

Serv erAppLogicClientAppLogic

GUI

Figure 4.9. Modèle d’application

Modèle de la logique de l’application

Schéma des composants permet la représentation des composants logiciels utilisés pour l'assemblage

Page 49: Continutul Tezei

49

et la mise en œuvre du système, il modélise l'apparence et la compatibilité de l'application logicielle.

Le système utilisation du schéma de modélisation est importante parce que les composants:

identification des problèmes de relations du système de configuration de la dépendance; composants

logiciels INMEDIATA de forme pour la mise en œuvre, d'identifier les problèmes d'incompatibilité

entre les composants sans la nécessité, à travers l'ensemble du code de programme, peuvent jouer une

image claire de la possibilité de modifier ou d'étendre le système existent.În schéma ci-dessus sont

des composants et des modules système. Il montre la dépendance entre les composants et leur

interaction.

deployment Nodes

serv er

ConnectorServ er

«table»DBTable

Imprimer

GUIDB

configFile tempFile

passer

Figure 4.10. Modèle logique de l’application

4.6 Diagramme de déploiement

L'emplacement du diagramme est la manière dont le système est installé dans un

infrastructure matérielle. Il illustre l'architecture physique des composants matériels utilisés. Chaque

noeud dans un emplacement graphique est un type de matériel tel qu'un serveur, un réseau, un disque,

un ordinateur client ou un processeur. Le nœud peut être un individu, une unité organisationnelle ou

poste occupé par une personne, les nœuds sont comme des classes. Représente le type et les

caractéristiques de chaque élément. Comme les classes sont reliées / associées à la combinaison qui

explique comment les nœuds peuvent être connectés

Page 50: Continutul Tezei

50

deployment Artifacts

«device»User Machine

A

ClientVersion

«device»Serv er

Serv erApp DataBase

Request/Reponse

Figure 4.11. Diagramme de déploiement

On distingue deux nœuds de base et un sous-nœud - La machine client avec les spécifications

minimaux et la machine serveur ou les données sont traitées et interprétées par le ServerApp.

Donc, on a décrit l'architecture physique et statique d'une application en termes de modules :

fichiers sources, librairies, exécutables, etc. et on a effectué la disposition physique des matériels qui

composent le système et la répartition des composants sur ces matériels. Les ressources matérielles

sont représentées sous forme de nœuds.

4.7 Conclusions générales sur le projet concernant l’objet Analyse et Conception Orientée Objet

et les logiciels UML

La modélisation est une étape d’une importance majeure dans le processus du développent

d’un système. Le modèle permet une abstraction des objets du monde réel pour comprendre d’une

manière plus éloquente leurs interactions.

Dans le processus de la modélisation d’application, on a identifié deux particularités sur les

quelles est fondé le langage de modélisation UML. Ces sont : les éléments de modélisation et la

sémantique de ces éléments – leur définition et le sens de leur utilisation. De plus que ça, on a utilisé

plusieurs vues complémentaires qui ont guidé l’utilisation des concepts objets et les plusieurs niveaux

d’abstraction pour contrôler la complexité dans l’expression de solution objets.

Revenant aux étapes de la modélisation, la spécification des diagrammes d’états-transitions a

conduit immédiatement au code. Généralement, elles ne permettent pas pour autant d’expliquer le

fonctionnement global d’un système, car elles se concentrent sur un seul objet à la fois. Mais, c’est

sont les diagrammes d’activité qui permettent d’offrir une vue plus holistique du comportement d’un

jeu d’objets, appelée action.

Page 51: Continutul Tezei

51

Finalement, pour compléter la modélisation du système par son architecture physique et

statique et leur répartition, on a élaboré les diagrammes de components et du déploiement.

En conclusion, le langage UML est un cadre d’analyse superbe et un support de

communication efficace pour exprimer visuellement une solution objet. Il permet un gain de

précision et un gage de stabilité. En fait, ce langage encourage l’utilisation d’outils dans le processus

de modélisation.

Donc, UML facilite la compréhension de représentations abstraites complexes.

Chapitre 5

5. La mise en oeuvre d'application

5.1 Première déclarer toutes les variables des objets importants à utiliser:

Figure 5.1 Déclarer toutes les variables

5.2 Puis charger les haarcascades pour la détection de visage, puis je fais une "procédure" peu de

charger des visages et des étiquettes formés précédentes pour chaque image enregistrée

précédemment:

Page 52: Continutul Tezei

52

Figure 5.2 Méthode Haarcascades pour la détection de visage

Initialiser le dispositif de capture, et FrameGrabber événement qui effectue le processus de

détection et d'images pour chaque image capturée:

Figure 5.3 Initialiser le FrameGrabber événement

Passant à l'événement de framegrabber (partie principale de prototype) nous utilisons des

méthodes et des objets les plus importants: DetectHaarCascade Et EigenObjectRecognizer et

effectuer des opérations pour chaque visage détecté dans une image Figure 5.4:

Page 53: Continutul Tezei

53

Figure 5.4 Méthodes de reconnaissance de chaque visage

Paramètres:

haarObj: Haar classificateur cascade dans scaleFactor de représentation interne: Le facteur par

lequel la fenêtre de recherche est mis à l'échelle entre les analyses ultérieures, par exemple, 1.1

signifie que fenêtre en hausse de 10%

minNeighbors: Nombre minimum (moins 1) de rectangles voisins qui composent un objet. Tous

les groupes d'un petit nombre de rectangles que min_neighbors-1 sont rejetées. Si min_neighbors

est 0, la fonction ne fait pas tout groupement à tous et renvoie tous les rectangles candidats détectés,

ce qui peut être utile si l'utilisateur souhaite appliquer une procédure de regroupement personnalisée

flag: Mode de fonctionnement. Actuellement, le seul drapeau qui peut être spécifiée est

CV_HAAR_DO_CANNY_PRUNING. Si elle est activée, la fonction utilise détecteur de Canny de

rejeter certaines régions d'image qui contiennent trop peu ou trop de bords et donc ne peut pas

contenir l'objet recherché. Les valeurs de seuil particulières sont réglées en fonction de détection de

visage, et dans ce cas, la taille permet d'accélérer le traitement.

Page 54: Continutul Tezei

54

minSize: taille de la fenêtre minimale. Par défaut, il est réglé sur la taille des échantillons, le

classificateur a été formé sur (~ 20x20 pour la détection de visage)

5.2 Comment former le prototype

Je fais cette partie la plus facile possible, le prototype de détecter les visages en permanence (chaque

frame) et vous pouvez ajouter ce visage détecté dans la base de données d'image avec une étiquette

respectable, l'image formée de visage apparaîtra dans le imageBoxFrameGrabber et le processus sera

terminé! !

Gardez à l'esprit: Les algorithmes de reconnaissance de visage en fonction de PCA (Analyse en

Composantes Principales) font des comparaisons multiples et les matches entre un visage détecté et

les images formées stockées dans la base de données binaire pour cette raison et pour améliorer la

précision de reconnaissance, vous devez ajouter plusieurs images de la même personne à différents

angles, positions et des conditions de luminance, cette formation ne ce prototype solide et très précis.

Exemple en Figure 5.5 :

Page 55: Continutul Tezei

55

Figure 5.5 Ajouter du visage en base de donnees

Code de touche de la formation (Ce effectuer l'ajout de visages de formation et des étiquettes

pour chacun):

Figure 5.6 Le code pour ajouter de nouveaux visages

5.3 Comment améliorer la reconnaissance?

Les paramètres par défaut (scale_factor = 1.1, min_neighbors = 3, flags = 0) sont réglés pour

la détection d'objets précis encore lent.

Aussi, vous pouvez modifier la taille d'une grande valeur, modifier cela dans le code

suivant:

Page 56: Continutul Tezei

56

Figure 5.6 modifier la taille d'une grande valeur

En outre modifier le 3ème paramètre à 2500 ou 3000 au lieu de 5000, cette modification-

vous que les EigenObjectRecognizer être plus strict / précis.

Figure 5.6 Valeurs propres visage de reconnaissance

Figure 5.7 Reconnaissance de visage déjà introduit sur la base de données

Chapitre 6

6. Partie economique

6.1. Description économique du système:

L'évaluation sur système d'information est conçu pour être appelé en raison de justification

technique - nouveau système économique. Qui détermine si elle paie d'introduire un nouveau système

Page 57: Continutul Tezei

57

d'information sera de retour pour déterminer si oui ou non les dépenses des systèmes d'information

liés à l'élaboration et à la mise en œuvre.

Dans le cas présent sont considérés comme deux facteurs sont utilisés pour évaluer l'efficacité du

nouveau système d'information: stockage de l'information minimiser le travail, réduire les coûts de

stockage.

Les dépenses sont constituées des investissements pour le développement et la mise en œuvre de

l'information et leurs coûts d'exploitation.

Dans ce problème, il est possible d'effectuer les dépenses suivantes:

a) Les dépenses pour la réalisation de système d'information de reconnaissance faciale;

b) Charges d'exploitation:

1) La rémunération du personnel;

2) le maintien des programmes;

3) les consommables, l'électricité et l'amortissement du matériel, etc.

6.1.2 Estimation

Pour mieux gérer le temps et les taches à réaliser j’ai partage mon projet en plusieurs parties. A

chaque partie en dépendance de son volume est liée une periode du temps pour sa realisation. J’ai

utilise une table pour representer l’estimation des repartitions des charges du projet.

Tableau 1 Estimation des repartitions

Phase Part,%

Etude prealable

1.  Analyse des tâches du projet.

2.   Timing.

3.   Création des documents techniques.

4.  L'analyse des méthodes déjà connue de la mise en œuvre d'autres projets

similaires qui peuvent être utilisés.

10

Etude detaillee

6.  Élaboration la structure du projet.

7.  Elaboration du Design.

20

10

Page 58: Continutul Tezei

58

Realisation

8.  Création d'application.

9.  D'essai, d'éliminer les erreurs et améliorer l'application.

40

10

10. Livraison. 10

Le temps utilisee pour la realisation du projet doit etre aussi, tres bien gere. Pour chaque

action il faut fixer une periode presque exacte pour la realisation d’une tache. Il faut laiser un peu du

temps comme reserve pour la resolution des problemes qui peuvent intervenir pendant la realisation

du projet.

Tableau 2 Estimation du temps

Nr. Nom de l’action Objectifs Jours Ressources Responsabl

e

1 Analyse des tâches du

projet.

-Etablir les spécifications du

produit;

- Etudier les

applications existantes;

- Choisir le framework

convenable et les outils;

- Installation de l'outil de

développement du logiciel;

- Choisir la documentation

appropriée;

6 PC, connexion a

l’internet

Chef de

projet

2 Timing -Développement de tâches et

l'attribution de temps pour

chaque

6 PC, connexion a

l’internet

Chef de

projet

3 Création des

documents technique

s.

-Créer de la documentation

pour la maintenance ultérieure

du système

8 PC, connexion a

l’internet

Chef de

projet

Page 59: Continutul Tezei

59

4 L'analyse des

méthodes déjà

connue 

- Analyse les méthodes déjà

utilisées dans d'autres projets

réels

12 PC, connexion a

l’internet

Développeu

r

5 Installation/

configuration du

OS/logiciel nécessaire

4 PC, connexion a

l’internet

Développeu

r

6 Élaboration la

structure du projet.

-Développer ensemble du

projet (cas d'utilisation, le

modèle de classe, etc.)

10 PC, connexion a

l’internet,visiter

un depot pour

mieux

comprendre son

fonctionement.

Analyste

7 Elaboration du

Design.

- les différentes unités

logicielles réalisant un

traitement élémentaire, et

nécessaires à la construction du

composant logiciel, seront

caractérisées et documentées

(rôle, entrées, sorties).

- L'analyse détaillée et sa

documentation doivent

permettre le codage immédiat

des procédures sans aucun

besoin d'information

supplémentaire.

10 PC, connexion a

l’internet,visiter

un depot pour

mieux

comprendre son

fonctionement.

Analyst

8 Création

d'application.

- Diviser l’application en

modules;

- Mettre en œuvre chaque

module;

40 PC, connexion a

l’internet

Développeu

r

9 D’essai, d’éliminer le

s

erreurs d’application.

- Établir les scénarios de test ;

- Attribuer des scénarios de test

pour les membres de l’équipe ;

- Recueillir les commentaires

des bêta-testeurs ;

- Mise à

10 PC, connexion a

l’internet

Testeur

Page 60: Continutul Tezei

60

jour des spécifications, si

nécessaire ;

10 Livraison. Installation du système au

client

4 PC, connexion a

l’internet

Chef de

projet

11 Total 110

Nombre de jours pour chaque personne : 1 Chef de projet 24

2 Analyste 20

3 Developpeur 56

4 Testeur 10

6.2 Calculs economiques

6.2.1 Le budget

Les produits software utilisees pour la realisation du cet projet sont indiques dans la table

suivante . La plupart des des produits programme utilisees sont open-source mais il y a et des

produits pour lequels il faut payer.

Tableau 3 Actives non-materiels a long terms

Nr. Designation Un.

mas

Prix

lei

Quantite Valeur d’entree, lei

1. Microsoft Visual

Studio 2010

unite 5000 1 5000

2. Microsoft Office 2010

Service Pack 1

unite 4000 1 4000

3. Enterprise Architect unite 2700 1 2200

4. Microsoft Windows

XP

unite 1000 1 1000

Totale 12200

Page 61: Continutul Tezei

61

Les materiaux utilisees pour la realisation du projet(ordinateur, switch, HDD,SSD). Pour la

realisation j’ai eu besoin des plusieurs materiaux. Pour les representer j’ai utilise une table.

Tableau 4 Actives materiels a long terms

Nr. Designation Un.

mas

Prix

lei

Quantite Valeur d’entree, lei

1. Ordinateur Extensa

5630EZ

unite 4500 2 9000

2. Imprimante HP unite 3200 1 3200

Totale 12200

Tableau 5 La consommation de matières directes

Nr. Designation Un. masPrix

leiQuantite Montatnt, lei

1 Disque CD 700 MB Unite 8 5 40

2 USB Flash 4 GB Unite 125 1 113

3 Disque DVD 4,7 GB Unite 16 3 48

4 Stylo Unite 5 1 5

5 Papier A4 Unite 0,5 200 100

6 Livres Unite 150 3 450

7 Bloc-notes pour notes Unite 10 5 50

Totale

788

6.2.2 Remuneration du travail

Pour le développement de projet, nous avons besoin des personnes suivantes::

- Chef de projet

- Analyste

Page 62: Continutul Tezei

62

- Developpeur Visual Basic

- Tester

- Administrateur

Chacun des spécialistes doivent avoir certaines capacités et satisfaire à certaines spécifications.

CHEF DE PROJET

- Connaissance de l'architecture logicielle et la conception du programme,l'expérience de

conception de logiciels, minimum 3 ans d'expérience

- Grossesse - de proposer une solution pour former une équipe de projet pour atteindre la

solution intelligente, à créer des conditions de travail normales de l'équipe pour

superviser le processus de développement du logiciel, la planification de faire à moyen

et long terme le processus de développement.

- Période d'activité dans le projet - 1 an.

ANALYSTE

- Doit avoir une expérience dans la conception de logiciels

- Tâche - préparation de la documentation, des sources, des diagrammes, desmodèles du produit final,

les négociations à la clientèle

- Période d'activité dans le projet - projet d'un mois plus tôt

DEVELOPPEUR VB (Programmateur):

- Posséder des connaissances en Visual Basic

- Mettre en œuvre les tâches proposées par le chef de projet

- Base de données de contact, expérience dans la mise en œuvre d'applicationsWindows

- Période initiale de 10 mois d'engagement

TESTEUR:

- Des compétences dans la mise en œuvre du scénario de test, de cas d'utilisation.

- Tâche - la création d'un scénario de suites de test, test erreurs la création de rapports, si nécessaire

- Période de participation - 2 mois, 1 mois au milieu et 1 mois à la fin du projet

ADMINISTRATEUR

- La personne qui préparera les postes de travail pour le projet

- Compétente dans resursleor gestion financière et matérielle

Page 63: Continutul Tezei

63

- Période d'engagement - 1 an

Tableau 6 Temp du travail/remuneration du travail

Nr.

d/o

Travailleur (fonction) Volume de

travail, jours

Salaire contractuel

par unite, lei

FSB, lei

I II IV V VI

1 Chef de projet 24 450 10800,00

2 Analyste 20 250 5000,00

3 Developpeur 56 210 11760,00

4 Testeur 10 170 1700,00

6 Total 110 29260

Le Developpeur avec le salaire de 210 lei/jour va travailler 56 jours. Donc son salaire brut pour la

période du travail sans des primes et prix sera :

210 * 56 = 11760 lei.

a) FP=6%*11760=705,6 lei

FAM=3.5%*20000= 411,6 lei

b) Revenu imposable

V i=V B−FP−FAM−S iP−S M

Ou :

V i------revenu imposable

V B------revenu brut

FP-------- Fond de Retraite (asurance sociale)

F AM--------Fond Asurance Medicale

SP-------exemption personnele

SiP------- exemption pour une personne a charge

SM-------exemtion personnele majeure

Page 64: Continutul Tezei

64

V i=11760-705,6-411,6= 10642,8 lei

c) Revenu net en apliquant les impots en vigueur :

V N=V B−I V −F P−F AM−S M

Ou :

V B------revenu brut

I V------impot sur le cevenu

FP-------- Fond de Retraite (asurance sociale)

F AM -------- Fond Asurance Medicale

I V=V I−I=10642,8∗7 %=745 lei

I------Impot sur le revenu

-pour revenu jusqu’a 26700 lei---on aplique le taux d’imposition 7%

-pour revenu qui dépasse--- on applique le taux d’imposition 18%

V N=11760-745-705,6-411,6 =9897,8 lei

6.2.3 Les frais indirects

La dépendance de ces coûts dépendent de l'utilisation des ordinateurs et de la lumière ambiante dans

les lieux de travail.

L'ordinateur est utilisé pendant toute la période de préparation des projets, afin de

fonctionnement 8 heures pendant 110 jours. Pour la realization de cette application on utilize 2

ordinateurs à 350 W chaque.

Page 65: Continutul Tezei

65

(8 heure/jour * 110 jour * 350 W/h)/1000 * 2 = 616 kW

Pour illuminer la chambre est utilize 2 iluminateurs avec la consommation d'énergie électrique

d'éclairage égal à 75 W

(8 heure/jour * 110 jour * 75 W/h)/1000 * 2 = 132 kW

Tableau 7 Les frais indirects

Designation Un. Mas. Quantite Taux/un, lei Valeur totale, lei

Location de la

sallepiece 1 1500 1500

Electricite kw 748 1.48 1122

Connexion Internet abonnement 5 150 750

Totale 3372

6.2.4 Fonds d’amortissement AMTL et ANTL

Une partie importante des coûts indirects c'est le calcul du fond d'amortissement.

La méthode de l'amortissement linéaire (méthode linéaire) - la somme de l'usure est

déterminée par le rapport entre la valeur de l’usure sur le nombre d'années de la durée de

fonctionnement utile.

Uan = MFvuz / T ou

Uan = MFvuz x Nuz /100%

Uan – la somme de l'amortissement annuel;

MFvuz – la valeur de l’usure d'actifs immobiles:

MFvuz = MFvi - MFvr

MFvi –la valeur initiale d'actifs immobiles;

MFvr –la valeur restante d'actifs immobiles;

Page 66: Continutul Tezei

66

Nuz –la norme de l'usure - est la mesureen pourcentage de la valeur d'actifs immobiles qui annuelle

est transféré dans les coûts de la production fabriqué, %.

J’ai achete techinique de calcul en valeur initiale de 12200 lei. La valeur restante apres utilisation est

5000 lei. La periode d’utilisation est 100 jours ou 5 mois.

a)Calcule du fond d’amortissement pour actifs matériels en utilisant la methode lineaire AMTL

Uan = ( Mfvi - MFvr) / T = (12200 – 5000) / 5 = 1440 lei

Nuz = 100 % / T = 100 % / 5 = 20 %

Uac = Uan x t

Uac - usure cumule;

Uan - usure annuelle;

T – periode de fonctionement, mois

Tableau 8 Calcule du fond d’amortissement pour AMTL en utilisant la méthode linéaire

Mois Valeur initiale Somme usure par

mois

Usure cumule Valeur

comtable

Au debut 12200 12200

A la fin du 1 année 12200 1440 1440 10760

A la fin du 2 année 12200 1440 2880 9320

A la fin du 3 année 12200 1440 4320 7880

A la fin du 4 année 12200 1440 5760 6440

A la fin du 5 année 12200 1440 7200 5000

Une année s'est environ 240 jours ouvrables. Notre projet dure 110 jours, nous devons calculer

AMTL pour cette période ; x-représente le montant devant être inclus dans le coût

240 jours---------1440lei

110 jours--------- x lei

Page 67: Continutul Tezei

67

X=110∗1440

240=660 lei

b)Calcul de fonds d'amortissement pour actifs immatériels à long terme ANTL

La compagnie a acheté des produits software dont la valeur d’entrée (initiale) est de 12200 lei. Le

montant restant – 0 lei. La durée de vie de 2 ans.

Uan = (Mfvi - MFvr) / T = (12200–0) / 2 = 6100 lei

Nuz = 100 % / T = 100 % / 2 = 50 %

Le calcul du fond d’amortissement des actifs immatériels selon la méthode linéaire :

Tableau 9 Le fond d’amortissement pour ANTL en utilisant la méthode linéaire

Les années Valeur initiale La somme de

l’usure annuel

L’usure cumulée Valeur

comtable

A la date de mise en service 12200 12200

À la fin de l’année 1 12200 6100 6100 6100

À la fin de l’année 2 12200 6100 12200 0

Une année s'est environ 240 jours ouvrables. Notre projet dure 110 jours, nous devons calculer

ANTL pour cette période ; x-représente le montant devant être inclus dans le coût

240 jours---------6100ei

110 jours--------- x lei

X=110∗6100

240=1598 lei

6.2.5 Prix de revient

Prix de revient ou parfois prix naturel, représente la somme des coûts supportés pour la production et

la distribution d'un bien ou d'un service.

Tableau 10 Prix de revient du produit

Nr. Articles en calcul Prix, lei Part, %

Page 68: Continutul Tezei

68

d/o

1 FAS 29260 82,83

2 FAMTL 660 1,8

3 FANTL 1598 4,47

4 Consommation de matières directes 788 1,3

5 Frais indirects 3372 9,6

TOTAL 35678 100

Prix de revient (C) = 1+2+3+4+5 = 29260+660+1598+788+3372= 35678lei.

6.2.6 Prix de réalisation

L’entreprise va fonctionner sous la forme d’une societe a responsabilite limitee(SRL). Les impots

seront 12% sur le revenu imposable J'ai choisi la 1-ière méthode qui est “bottom-up”:

Le calcul du chiffre d’affaires brut on utilise la formule CAb= Q*P ; Q-quantite, P-prix du produit.

On va considerer le prix du produit P = C+C*45% ; Quantite sera 1 depuis développé une systeme

pour Point.md

P = 35678+35678*45%= 51733,1 lei(avec TVA)

CAb = 51733,1 *1 = 51733,1.

CAn=51733,1 -51733,1 *20%=51733,1 -10346,6=41386,5 lei

Pour le calcul du Pb-benefice =CAn-C

Pb= CAn-C

Pb=41386,5 -35678 = 5708,5 lei

Le benefice net (Pn) est calcule selon la formule :

Pn = Pb-Impots.

Page 69: Continutul Tezei

69

Pour calculer les impots pour un SRL conformement a la legislation en 2013 on utilise 12%.

I = 5708,5*12% = 685 lei

Pn = 5708,5 – 685= 5023,5 lei

Pour calculer la rentabilite on utilise la formule suivante :

R = Pn/C *100 %

R = 5023,5 / 35678*100 % = 14,08%

6.3 Conclusions économique

Après l'achèvement de la partie économiques du diplôme que nous avons appris à calculer le prix de

notre application comme un rendement plus élevé pour les acheteurs sur le marché.

Avec le développement rapide de la science et la technologie, l'économie de marchéavec une plus

grande concurrence dans tous les domaines, il ne suffit pas de développer des applications pour

créer une base de données ou à la recherche d'un problème dans le domaine des technologies de

l'information. L'avantage incontestable de notre système est la reunion des deux composantes - la

gestion de projet et de service à la clientèle dans un système unique ce qui simplifie grandement le

contrôle et le processus d'apprentissage du système.

Page 70: Continutul Tezei

70

Conclusion générale

La détection des visages ainsi que la reconnaissance des problèmes difficiles et il ya encore

beaucoup de travail qui doit être fait dans ce domaine. Au cours des dix dernières années, la

reconnaissance faciale a reçu une attention considérable de chercheurs en biométrie, reconnaissance

de formes, vision par ordinateur, et les communautés de la psychologie cognitive. Cet intérêt

commun en matière de technologie de reconnaissance faciale entre les chercheurs travaillant dans

divers domaines est motivée à la fois par notre remarquable capacité à reconnaître les gens et par

l'attention accrue consacrée aux applications de sécurité.

Les demandes de reconnaissance de visage peuvent être trouvés dans la sécurité, le suivi, le

multimédia et les domaines de divertissement. Nous avons proposé deux paradigmes pour faire

progresser la technologie de reconnaissance faciale. Deux tâches principales impliquées systèmes

basés sur la vision insuch sont (i) la détection des visages humains, (ii) l'identification des visages

humains. Détection des visages humains est la première étape dans notre système proposé. C'est

aussi la première étape dans d'autres applications telles que la surveillance vidéo, la conception de

l'interface homme-machine, la reconnaissance faciale et la gestion de base de données pour le

visage. Nous avons proposé un algorithme de détection de visage pour les images couleur en

présence de différentes conditions d'éclairage ainsi que des milieux complexes. Notre procédé de

détection corrige en premier l'alignement de couleur par une technique de compensation de la

lumière qui permet d'estimer automatiquement les statistiques de blanc de référence pour le procédé

de correction.Our couleur détecte les régions de la peau sur toute l'image, et génère ensuite des

candidats pour le visage sur la base de l'arrangement spatial des taches cutanées. Ensuite,

l'algorithme construit yeux, la bouche et les cartes des limites du visage pour vérifier chaque

candidat visage. Les résultats expérimentaux ont démontré la détection réussie de multiplefaces de

Page 71: Continutul Tezei

71

taille différente, la couleur, la position, l'échelle, l'orientation, pose 3D, et d'expression dans

plusieurs collections de photos.

Pour améliorer les résultats de la méthode de Eigenface mis en œuvre, un programme de

normalisation pourrait être développé afin de déterminer les mesures faciales et normaliser les

photos telles que les traits du visage sont détenus dans des positions et des contrastes et des

intensités lumineuses entre les photos constants sont équilibrés. La localisation des caractéristiques

garderait positions de tête assez cohérentes et donner de meilleurs eigenfaces.

Bibliographie:

1. R. F.eraud, O.J. Bernier, J.-E. Viallet, and M. Collobert, “A fast and accurate face detection based on neural network,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 23, no. 1,

2. D. Maio and D. Maltoni, “Real-time face location on gray-scale static images,” Pattern Recognition, vol. 33, no. 9, pp. 1525–1539, Sept. 2000. C. Garcia and G. Tziritas, “Face detection using quantized skin color regions merging and wavelet packet analysis,” IEEE Transactions Multimedia, vol. MM-1, no. 3.

3. H. Schneiderman and T. Kanade, “A statistical method for 3D object detection applied to faces and cars,” Proc. IEEE Int’l Conf. Computer Vision and Pattern Recognition, pp. 746–751, June 2000.

4. H.A. Rowley, S. Baluja, and T. Kanade, “Rotation invariant neural networkbased face detection,” Proc. IEEE Int’l Conf. Computer Vision and Pattern Recognition, pp. 38–44, 1998.

5. H.A. Rowley, S. Baluja, and T. Kanade, “Neural network-based face detection,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 20, no. 1.

6. K.K. Sung and T. Poggio, “Example-based learning for view-based human face detection,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 20, no. 1, pp. 39–51, Jan. 1998.

7. K.C. Yow and R. Cipolla, “Feature-based human face detection,” Image and Vision Computing, vol. 25, no. 9, pp. 713–735, Sept. 1997.

8. M.S. Lew and N. Huijsmans, “Information theory and face detection,” Proc. IEEE Int’l Conf. Pattern Recognition, pp. 601–605, Aug. 1996.

9. P.J. Phillips, H. Moon, S.A. Rizvi, and P.J. Rauss, “The FERET evaluation methodology for face-recognition algorithms,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 22, no. 10, pp. 1090–1104, Oct. 2000.

10. M. Turk and A. Pentland, “Eigenfaces for recognition,” Journal of Cognitive Neuroscience, vol. 3, no. 1, pp. 71–86, 1991.

11. XM2VTS face database, <http://xm2vtsdb.ee.surrey.ac.uk/home.html>.12. J. Weng and D.L. Swets, “Face recognition,” in Biometrics: Personal Identification in

Networked Society, A.K. Jain, R. Bolle, and S. Pankanti, Eds., pp. 67–86, Kluwer Academic, Boston, MA, 1999.

13. L. Wiskott, J.M. Fellous, N. Kr˙ uger, and C. von der Malsburg, “Face recognition by elastic bunch graph matching,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 19, no. 7, pp. 775–779, 1997.

Page 72: Continutul Tezei

72

14. Reconstruction of Images from Transformed Data & BunchGraph, <http ://www.cnl.salk.edu/»wiskott/Projects/fGaborReconstruction.html,BunchGraph.htmlg>.

15. P.S. Penev and J.J. Atick, “Local feature analysis: A general statistical theory for object representation,” Network: Computation in Neural Systems, vol. 7, no. 3, pp. 477–500, 1996.

16. Face model generation, <http://www.cs.rutgers.edu/»decarlo/anthface.html>.17. H. Wechsler, P. Phillips, V. Bruce, F. Soulie, and T. Huang, Eds., Face Recognition: From

Theory to Applications, Springer-Verlag, 1998.18. R. Chellappa, C.L. Wilson, and S. Sirohey, “Human and machine recognition of faces: A

survey,” Proc. IEEE, vol. 83, pp. 705–740, May 1995.19. W. Zhao, R. Chellappa, A. Rosenfeld, and P.J. Phillips, “Face recognition: A literature

survey,” CVL Technical Report, Center for Automation Research, University of Maryland at College Park, Oct. 2000,

20. <ftp://ftp.cfar.umd.edu/TRs/CVL-Reports-2000/TR4167-zhao.ps.gz>.21. Faceblind.org, <http://www.faceblind.org/research/index.php>.22. A.W.M. Smeulders, M. Worring, S. Santini, A. Gupta, and R. Jain, “Contentbased image

retrieval at the end of the early years,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 22, no. 12, pp. 1349–1380, Dec. 2000.

23. A. Lanitis, C.J. Taylor, and T.F. Cootes, “Toward automatic simulation of aging effects on face images,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 24, no. 4, Apr. 2002.

24. http://www.nec.com/en/global/solutions/security/technologies/face_recognition.html

25. http://habrahabr.ru/post/140480/

26. http://en.wikipedia.org/wiki/Facial_recognition_system 27. "Firms point to biometric future" By Dominic Bailey, BBC News, at Biometrics 2006 28. http://www.emgu.com/wiki/index.php/Main_Page 29. http://opencv.willowgarage.com/wiki/