Escolar Documentos
Profissional Documentos
Cultura Documentos
Mmoire de Magister
prsent au
Laboratoire dAutomatique et Productique
En vue de lobtention de diplme de
Magister
Option : Gnie Industriel et Productique
Par
BELLAL SALAH EDDINE
Ingnieur dtat en informatique
MEMBRES du JURY
i
2.2.1 Dfinition dimage. 26
2.2.1.1 Dfinition Pixels 27
2.2.1.2 Types et caractristiques d'images.. 28
2.2.2 Voisinage dans les images.. 34
2.2.2.1 Voisinage dun pixel 34
2.2.2.2 Distances entre pixels.. 34
2.3 Principe General sur le Seuillage et la Binarisation 35
2.3.1 Dfinition du seuillage... 35
2.3.1.1 Le seuillage fond sur lanalyse de lhistogramme. 35
2.3.1.2 Seuillage adaptatif.... 37
2.4 Binarisation seuillage.... 37
2.4.1 Le Filtrage.. 39
2.4.1.1 Filtrage linaire.... 40
2.4.1.2 Filtrage non linaire.. 52
2.5 Morphologie mathmatique.. 56
2.5.1 Oprateur morphologique de dilatation.. 57
2.5.1.1 Dfinition. 57
2.5.2 Oprateur morphologique d'rosion...... 58
2.5.2.1 Dfinition. 58
2.5.3 Ouverture (rosion + dilatation)... 58
2.5.3.1 Dfinition.. 58
2.5.4 Fermeture (dilatation + rosion)... 59
2.6 Conclusion. 60
70
Chapitre -3 Segmentation des images 61
3.1 Introduction... 61
3-2 Les principes de la segmentation.. 62
3.2.1 La segmentation par rgions. 62
3.2.2 La segmentation par seuillage.. 63
3.2.2.1 Dtection automatique du seuil. 64
3.2.2.2 Seuillage hystrsis . 65
3.2.3 La segmentation par contours. 65
3.2.3.1 Dtection de contours . 87
3.2.4 La transforme de Hough 74
3.2.5 Segmentation par Etiquetage de composantes connexes. 77
3.2.5.1 Analyse en composantes connexes. 78
3.2.5.2 Organigramme de reconnaissance dobjets par composantes
Connexes.. 79
3.2.6 La Segmentation par LPE 80
3.2.6.1 Dfinition.. 80
3.3 Conclusion.. 84
ii
Chapitre -4 Description et Interprtation....... 85
4.1 Introduction.... 85
4-2 Invariants de formes Contours... 86
4.2.1 Code de Freeman...... 86
4.2.1.1 Principe du codage.. 86
4.2.2 Les descripteurs de Fourier.. 87
4.3 Invariants de formes Regions. 90
4.3.1 Moments de Zernike 90
4.3.1.1 Effet de la rotation. 91
4.3.1.2 Effet dchelle 91
4.3.2 Moments invariants de Hu. 92
4.4 La corrlation 94
4.4.1 Dfinition 94
4.5 Caractristiques gomtriques d'un objet.. 96
4.6 Conclusion.. 98
iii
Table des Figures
iv
Table des Figures
v
.
Table des Figures
vi
RESUME
Dans ce mmoire nous prsentons les mthodes et techniques de la vision par ordinateur
existantes et celles qui font lobjet de recherches actuelles. La reconnaissance dobjets est
lun des domaines dtude les plus actifs de la vision par ordinateur, une des ces tches
principales est de pouvoir identifier et localiser ces objets partir dinformations reues de
lenvironnement.
Dans ce travail nous nous sommes intresss btir un systme de reconnaissance dobjets
dans une image pour une application de tri.
L'axe de travail consiste reconnatre et trier les objets (formes gomtriques) dans une
image en vision artificielle. Les images proviennent d'une camra fixe ayant un champ de
vision rgulier et permanent avec un angle consquent sur un convoyeur, porteur des objets
observer.
Nous proposons le test de plusieurs techniques de filtrage sur des images fixes et aussi les
mthodes de segmentation. Nous avons galement fait un tour dhorizon des diffrentes
approches existantes de la segmention. Lapproche dtection de contour et tiquetage
semblent tre habituellement retenue, ainsi que lapproche LPE, base sur la dtection des
rgions dans limage sous forme de matrice qui prsente des inconvnients tels que la taille
mmoire et le temps de calcul des paramtres lev.
Pour remdier nous avons introduit lapproche corrlation qui est une mthode efficace et
rapide pour la localisation de certaines formes gomtriques qui consiste comparer l'objet
reconnatre (la cible), en gnral figurant dans une scne et des objets prdterminants
(base de connaissances) par le calcul de centre de gravit de lobjet. Enfin nous proposons
dintgrer un automate programmable qui servira lchange des donnes via lapplication
Matlab par le port LPT1 sous un outil interface de vision Homme machine ( HMI) qui
facilitera une supervision en temps rel.
Mots cls : Vision artificielle, Reconnaissance dobjets, Traitement dimages, Analyse
dimages
vii
ABSTRACT
In this paper we present methods and techniques of computer vision and existing ones that
are the subject of current research. The object recognition is one area of study the most
active computer vision, one of the main tasks is to identify and locate these objects based on
information received from the environment.
Object recognition aims to automatically and efficiently extract the content interesting,
relevant and useful to the scene that is to say, to determine the identity of objects forming
the scene and their spatial arrangement in the context of a task or process to achieve. This is
a very important issue in computer vision because it is essential for all applications.
In this work we were interested in building a system for recognizing objects in an image to a
triage application. The line of work is to recognize and sort objects (geometric shapes) in an
image in computer vision. The images come from a fixed camera with a field of view with a
regular and permanent result on a conveyor angle, enabling objects to be observed.
Object recognition requires knowledge of the characteristics of our camera. Thus in order to
calibrate the camera, we proposed a simple webcam camera oriented to get a picture
through the center of the conveyor. It is therefore important to start the design of a
chain of image processing by the issue of lighting. Good lighting can sometimes greatly
simplify the processing step and gives very good results in object recognition system.
The goal is finding objects in images, it will be unit image and not image sequences.
In this case the introduction of automatic methods is necessary to ensure the rapid
screening but requires complicated treatments to make it effective.
We offer the test several filtering techniques on still images and also segmentation
methods, We also mad e an overview of different existing approaches to segmentation,
edge detection approach and labeling appear to be generally accepted, and EPA's approach,
based on the detection of regions in the image matrix form has drawbacks such as memory
size and computation time of high parameters.
viii
ix
Introduction Gnrale
Etre non voyant reprsente un lourd handicap et une assistance permanente dans la vie de
tous les jours et tout moment car parmi les cinq sens attribus aux tres vivants et plus
particulirement ltre humain, la vue est sans doute celui qui est considr comme le plus
important. Agir aveuglment, avancer laveuglette, avoir une vision long terme, avoir la
vision courte, voir venir quelquun, pour voir venir, etc. Il existe ainsi des dizaines dexpressions
qualifies dimages que nous employons continuellement et qui dmontrent limportance
prpondrante de la vue dans notre perception du monde. Mais de nos jours la vue naturelle,
humaine, peut ne pas suffire, ou tre incapable de soutenir longtemps certaines cadences. A vrai
dire une forme de vision artificielle ou dassistance la vision a vu le jour avec Galile lorsquil
a fabriqu lanctre du tlescope daujourdhui. Ce qui a permis de dcouvrir le systme solaire.
Lhomme, actuellement perdu entre linfiniment petit et linfiniment grand, ne peut se passer
doutils de vision.
Il est donc tout fait naturel que la vision artificielle, c'est--dire la conception, la
fabrication , lutilisation de machines imitant cette facult, soit lobjet de tant defforts
scientifiques et technologiques et soit au centre denjeux conomiques aussi considrables. Au
del des progrs vertigineux de llectronique en gnral et de linformatique en particulier, cest
la mise au point de la technologie dite CCD (Charge-Coupled Device) qui a ouvert les portes du
dveloppement de la vision artificielle[1].
La vision repose sur deux organes lis intimement lun lautre, loeil et le cerveau.
Limage est capte par lil, linformation contenue dans cette image est prtraite et comprime
dans loeil lui-mme avant dtre transmise aux cellules crbrales proprement dites pour y tre
traite et interprte . Cest cette association dun capteur dimages et dun systme de traitement
fournissant un ensemble dinformations de haut niveau que nous appellerons un systme de
vision.
Les principaux problmes industriels rencontrs au niveau de nos entreprises sont lis aux
contrl.es qualit, classification et vrification. Certains de ces problmes ncessitent
lintervention humaine rptitive et contraignante ou demandent une installation mcanique
1
classique, complexe et peu volutive. Or, la qualit et le temps sont souvent les seuls critres
retenus par les applications, notamment en temps rel. Pour cela nous envisageons, dans le cadre
de ce projet une application dun systme de vision qui doit tre dot dune reprsentation
interne permettant de surmonter ces difficults et de trouver une solution au problme complexe
de la vision dans le domaine du tri et de la dtection des dfauts.
Devant le nombre, trs important, et par consquent le dfilement trs rapide de ces
objets, la vision artificielle, en loccurrence, une Webcam , relie un ordinateur, se charge de
visualiser ces mmes objets se dplaant sur un convoyeur. Elle acquiert ainsi, une image, qui
sera traite et ensuite analyse par des algorithmes de plus en plus complexes. Lanalyse
dterminera simultanment le recensement et le comptage arithmtique puis la dtection de
dfauts bass principalement sur la comparaison de la forme dun objet avec une forme
pralablement dfinie et par cette opration fera le tri. Un systme annexe et complmentaire se
chargera grce des capteurs et un automate programmable pour envoyer un signal aux bras
poussoirs qui ont pour fonction djecter chaque objet dans le bac correspondant.
Il sagit dune certaine manire de remplacer la vision humaine par une autre, artificielle,
qui doit avoir les mmes performances en plus de la rapidit, de lendurance et de labsence
totale de distraction ou de perturbation.
2
Objectif et Problmatique
Reconnatre un objet dans une image, c'est reconnatre sa forme, sa couleur, sa taille...
Bref tout ce qui caractrise cet objet et le diffrencie d'un autre. Ceci est important pour traiter les
images de faon automatique (informatique) en vue d'applications industrielles ou informatiques.
Le problme est de reconnatre plusieurs objets en 2 dimensions (2D) dans une image. Dans ce
cas la mise en place de mthodes automatiques est ncessaire afin d'assurer la rapidit du tri mais
impose des traitements compliqus afin de le rendre efficace. Il existe plusieurs mthodes pour y
arriver. Elles diffrent par leur rapidit, leur robustesse au bruit (perturbation), leur insensibilit
aux transformations gomtriques et photomtriques (luminosit), leur raction face des
vnements imprvus.
Cependant pour toutes les mthodes le schma gnral reste quasiment identique. A
savoir, un premier traitement de l'image pour la rendre plus facilement exploitable, (limination
du bruit, filtrage, rehaussement de contraste, dtection des contours,), l'extraction de diverses
caractristiques (longueur, aire, histogramme, etc.) qui serviront reconnatre lobjet pour
pouvoir le comparer de manire efficace et finalement permettre sa classification en fonction des
descripteurs.
Nous voquerons ensuite les conditions de luminosit et les dispositifs dclairage afin
de corriger les dfauts optiques induits par le matriel et lenvironnement ayant servi acqurir
3
limage .Il est galement possible de nettoyer limage lors de la numrisation par des concepts
de filtrage. Ces filtres possdent des caractristiques spectrales; on parle ainsi de filtres linaires
et de filtres non linaires.
La vision nest pas un domaine facile. Reprer un objet simple dans une image demande
beaucoup doprations. Comme nous utilisons une camra simple pour recueillir de
linformation, il est ncessaire de faire un traitement et une analyse sur les images en provenance
de la camra.
Ainsi, tout d'abord nous avons procd une recherche afin de trouver des solutions
permettant de facilement recevoir les images en provenance de la camra et de leur faire subir un
traitement appropri le plus simplement possible.
En effet, certains phnomnes peuvent apparatre. Notamment de bruit (par exemple lors
dune mauvaise rception de donnes), de flou (dues une mauvaise mise au point), ou encore
des pertes de qualit (dues une mauvaise luminosit).
Les dgradations que subissent les images sont en gnral dans les phases que lon vient
dnoncer. Notre problme consistera donc rcuprer une image proche de limage originale
partir dune image de mauvaise qualit. Dans cette phase, nous ne nous concentrerons que sur le
problme du bruit.
Ltape suivante de notre processus de reconnaissance dobjet est la segmentation qui est
une tape essentielle et reste un problme complexe.
4
La segmentation est un processus de la vision par ordinateur, gnralement cest la
premire tape de l'analyse d'image qui vient aprs le prtraitement. Cest un passage oblig
pour la vision par ordinateur. Donc la segmentation est l'extraction de caractristiques de l'objet,
ce qui permet une distinction entre l'objet et le fond. Une erreur dans la segmentation de lobjet
reconnatre augmente forcment le risque dune mauvaise reconnaissance. Il existe une multitude
de mthodes de segmentation dont lefficacit reste difficile valuer.
Une fois les objets isols, la prochaine tape pour la reconnaissance d'objets est la
reprsentation et linterprtation des donnes (descripteurs) reprsentes par les caractristiques.
La comparaison de l'objet reconnatre (la cible) qui figure dans la scne et des objets de la base
de connaissances en appliquant la mthode de corrlation par le calcul de centre de gravit de
lobjet afin damliorer le temps du calcul et le taux de reconnaissance.
5
Prsentation du mmoire
Le premier chapitre dcrit une description sur la vision humaine dans la vie active et
avec plus de dtails de position sur la vision artificielle aussi il est rserv aux tapes de
processus de la reconnaissance dobjets avec ces diffrentes technologies des moyens
dacquisition de linformation ; et les moyens utiliss pour notre projet. Nous justifions
galement le choix dutilisation dune simple camra pour le traitement et l'analyse de limage,
ainsi que les dispositifs dclairage.
Le deuxime chapitre est essentiellement consacr aux techniques de traitements de
l'image. Pour ainsi dire, l'emploi d'outils ou d'algorithmes de seuillage, filtrage et les oprations
mathmatiques de morphologie afin de rcuprer une image proche de limage originale pour la
rendre plus facilement exploitable, constitue la seconde partie du processus.
Le troisime chapitre est consacr un problme intressant en analyse numrique
dimages. Cest un sujet dactualit et un problme qui reste ouvert o l'on retrouve de trs
nombreuses approches de segmentation quon va traiter. Lutilisation d'algorithmes de
segmentation de l'image afin d'extraire des caractristiques essentielles la localisation et la
reconnaissance des objets dans limage, reprsente une tape primordiale dans notre processus
de reconnaissance dobjets.
Le quatrime chapitre est ltape de reprsentation et interprtation de limage, cette
tape intervient aprs la segmentation dont les pixels voisins ont besoin dtre reprsents et/ou
dcrits pour bien interprter la scne. La reprsentation dpend de la tche raliser. On doit
ensuite tre capable de dcrire une rgion, partir dune reprsentation, pour cela on a utilis les
descripteurs de contour avec et les descripteurs de rgion . Linterprtation conduit attribuer
une signification l'ensemble d'objets reconnus. Elle consiste comparer l'objet reconnatre
(la cible), en gnral figurant dans une scne et des objets prdterminants (base de
connaissances) par le calcul de centre de gravit de lobjet, afin damliorer le temps de calcul et
le taux de reconnaissance.
Le cinquime chapitre est la dernire tape des rsultats de lapplication par un
langage de programmation MATLAB. Les outils de programmation sont gnralement des
algorithmes de traitement dimages, reconnaissance de forme, identification, classification et
dtection de dfaut. Afin de progresser dans notre application MATLAB pour une fin
industrielle, nous avons labor un outil dinterface de vision homme machine ( HMI) qui
6
facilitera une supervision en temps rel. Nous avons implant un automate programmable qui
servira lchange des donnes via lapplication Matlab par le port LPT1.
7
Cahier des Charges
Lobjectif est de concevoir un cahier des charges pour une application vision et intgrer
cette application en choisissant les composants et les outils de traitement adquats et ainsi
dcouvrir les fondements du traitement dimages pour la reconnaissance dobjets.
L'axe de notre travail consiste reconnatre et trier les objets dans une image en vision
artificielle. Les images proviennent d'une camra fixe ayant un champ de vision rgulier et
permanent avec un angle consquent sur un convoyeur, porteur des objets observer.
8
Pour la simulation et la concrtisation en vue dune application une chelle industrielle, les
lments suivant sont indispensables :
-Un micro-ordinateur
-Une camera
-Un convoyeur
-Un automate (API M 340)
-Deux capteurs
-Une application de supervision VIJEO CITECT pour linterface homme machine (IHM)
Cette partie est dcrite en dtail dans le 5 me chapitre.
9
Concepts de la Vision humaine et de la Vision artificielle
La vision permet la reconnaissance des objets et du monde en relief autour de ltre humain. La
reproduction de ce monde a constitue une proccupation permanente de lhomme depuis les
anciennes peintures rupestres, les sculptures antiques, jusquaux films actuels, o la camra
remplace lil humaine voit le monde dune certaine manire de telle sorte que lon a abouti
une double vision: celle de la camera dabord et celle des scnes ensuite. Dans ce chapitre
nous allons dcrire une description sur la vision humaine et la vision artificielle et nous
justifions le choix dune camera simple pour le traitement et lanalyse de limage ainsi les
dispositifs dclairage.
1.1 Introduction
Lunivers est, par nature, fait de volumes, c'est--dire de corps, remplissant un vide plus
ou moins important. Et de ce fait, lespace qui nous entoure a une structure tri-dimensionnelle
(3D). Lorsque lon demande une personne de dcrire ce quelle voit elle nprouve aucune
difficult nommer les objets qui lentourent tlphone, table, livre, [2]. Pour dfinir la vision
par ordinateur en une phrase, nous dirons que cette discipline s'attache extraire de manire
automatique des informations partir d'images, en vue d'effectuer des tches spcifiques.
La vision est un terme gnrique englobant plusieurs aspects de limagerie par ordinateur
(computer imaging) [3]. On peut dfinir le domaine de la vision comme le regroupement de trois
disciplines comme lindique la figure1.1: la vision artificielle (computer vision), le traitement
dimage (image processing) et linfographie (computer graphics).
10
La vision est incontestablement le sens le plus dvelopp chez l'homme : Les humains ont
une capacit de remarque, d'analyse et d'interprtation en temps rel des scnes complexes.
Chaque pixel contient des informations sur la lumire (quantit et contenu spectral/couleur) reue
en ce point de la rtine.
Les objets (tlphone, voiture) nexistent pas sur la rtine, et pourtant on les voit : leur
interprtation est le rsultat du processus visuel.
Par ailleurs, la vision par ordinateur est devenue ces dernires annes un domaine en
plein essor de par ses multiples applications en mdecine, robotique, surveillance etc.
Ainsi, l'tude du systme visuel humain ou animal dans le but d'en comprendre et copier les
mcanismes pour la vision par ordinateur est particulirement intressante [4].
Linformation qui est rellement disponible sur la rtine de nos yeux nest ni plus ni
moins une collection de points trs nombreux. En chaque point ou pixel (Picture element) , il y a
tout simplement une information qui donne une indication quant la quantit de lumire et la
couleur qui proviennent de lespace environnant et qui ont t projetes cet endroit de la rtine.
Le tlphone, la table ou le livre nexistent pas sur la rtine [9].
Cest leur reproduction en ngatif sur cette mme rtine, grce notamment la rflexion
lumineuse que la vision peut avoir lieu. Cest pour quoi lobscurit totale empche la vision.
De mme que lexcs de lumire perturbe normment celle-ci et provoque lblouissement.
11
cerveau au niveau des aires visuelles que lon trouve dans la partie arrire des deux hmisphres
crbraux (figure 1.2) [10].
Les btonnets :
- responsables de la vision scotopique : faible intensit lumineuse (vision de nuit);
- trs sensibles la lumire;
- rponse lente aux variations dillumination.
Les cnes :
- responsables de la vision photopique : vision dans les hautes intensits lumineuses (vision
de jour);
- responsables de la vision de prcision (haute rsolution);
- dterminent la luminosit des scnes visualises;
12
- permettent lextraction des couleurs grce 3 types de cnes.
Le systme de vision doit fournir les connaissances ncessaires afin de permettre une
interprtation non ambigu [9].
Le modle de vision vers lequel la vision par ordinateur essaie de tendre, car :
La figure 1.3 montre une comparaison entre le capteur naturel, lil et un capteur numrique
La vision artificielle ou vision par ordinateur est le cadre gnral de ce travail. Pour la
dfinir, il est ncessaire de rappeler que cette discipline sest attache depuis ses dbuts
dvelopper des mthodes dinterprtation automatique des images, en particulier, des mthodes
permettant de reconnatre ou didentifier des objets prsents dans ces images.
Cette discipline consiste convertir une image en donnes objets ou, plus explicitement,
identifier les objets contenus dans limage par lextraction et lanalyse de caractristiques
abstraites (features) partir des pixels, suivant un processus de reconnaissance de forme similaire
celui opr par lhumain [5].Quelques images relles qui utilisent la technologie de la vision
artificielle.
13
Figure 1.4 : Contrle de qualit par vision Figure 1.5 : Le scannage des plaques est
artificielle ralis par un systme de vision artificielle
Le dveloppement dune machine de vision impose de matriser les paramtres dacquisitions des
images, de traiter ces images, dextraire de ces images les caractristiques significatives et
finalement de poser un diagnostic en fonction du contexte [6] [7].
14
1.4.1 Avantages des applications de Vision Artificielle
Dans ce vaste domaine qu'est la vision par ordinateur, nous nous intressons ici la sous
discipline qu'est la reconnaissance d'objets, et plus particulirement la localisation de classes
d'objets dans des images (par exemple localiser les objets comme le carr, le cercle ou le triangle
dans une image). Ce type de technique combine des approches de traitement d'images et
lidentification automatique dans le but de mener bien cette tche de reconnaissance des objets
prsents dans les images.
1.5.1 Introduction
15
L'ide de construire des machines capables dimiter les tres humains afin de les aider
dans certaines tches, voire de les remplacer, tait antrieure aux ordinateurs [14].
On sait que, le plus souvent, des quations diffrentielles ou aux drives partielles sont
au cur de ces russites. Et l'on sait galement qu'il reste toujours en calculer les solutions !
La discipline scientifique de la reconnaissance des formes (RdF - Pattern Recognition, en
anglais) s'est dveloppe depuis la fin des annes 60, en mme temps que l'intelligence
artificielle (IA), et ceci au fur et mesure de l'augmentation de la puissance et des capacits de
mmoire des ordinateurs. Trs tt, ds le dbut des annes 70, les deux disciplines se sont
spares.
Malgr de nombreux efforts des uns et des autres, les rsultats des premiers programmes
d'IA ou de RdF se sont rvls trs loigns des performances humaines ou mme animales.
Soulignons qu'une machine informatique programmable - un ordinateur - est capable d'oprer
n'importe quelle transformation d'une donne de dpart, la reprsentation, en une image d'arrive,
une interprtation [16].
Cette capacit a ouvert des domaines dapplication bnfiques au monde moderne et a ses
nombreuses technologies. Parmi ces domaines :
16
Classification des lectrocardiogrammes selon les catgories de maladies
cardiaques.
Tlsurveillance.
Ce sont les domaines extrmement varis, vitaux pour les civilisations daujourdhui,
toutes exiges sur lobservation dabord et la comptence de plus en plus pointue ensuite.
Il s'agit d'une tche fondamentale qui fait l'objet de recherches trs actives en tant
qu'tape indispensable pour de multiples applications de vision par ordinateur.
Et qui sera lobjet de ces prtraitements, traitements et lanalyse dcrits dans les chapitres
suivants.
Le monde rel est compos essentiellement dobjets tridimensionnels. Une des tches
principales dun systme de vision artificielle est de pouvoir identifier et localiser ces objets
partir dinformations reues de lenvironnement.
La reconnaissance dobjets dans les images est un des problmes les plus difficiles en
vision par ordinateur puisquil est indispensable pour toutes sortes dapplications. Elle est en
mme temps une tape primordiale pour la mise en oeuvre de plusieurs applications actuelles qui
ncessitent une interprtation de haut niveau dimages.
Dans ce travail, nous allons tenter de btir un systme de reconnaissance dobjets dans
une image pour une application de tri et de contrle de qualit. Lobjectif est la recherche
dobjets dans des images : il sagira dimage unitaire et non pas de squences dimages.
De faon symbolique, un systme de vision artificielle pourra toujours tre reprsent par
le schma de la figure 2.1, o on trouve bien les tapes du processus de reconnaissance dobjets
17
Figure 1.9 : Principales tapes de la reconnaissance dobjets
Chacune des tapes ci-dessus exige une connaissance pralable telle que: la taille de
l'objet, la forme , la distance entre les objets , les conditions environnementales, le nombre
d'objets reconnatre dans l'image. Toutes ces informations sont ncessaires pour l'utilisation
des techniques de traitement dimages et entre autres les dveloppements d'algorithmes pour la
reconnaissance d'objets. Chacune de ces tapes est dcrite plus en dtail dans les chapitres
suivants.
Les composants matriels requis pour un systme de vision artificielle sont dcrits dans la
figure 1.10. On peut distinguer l'objet traiter, clairage, camra , le convoyeur, les bras
poussoirs ,lautomate, les capteurs et le processus de traitements et danalyse dimages par le
micro-ordinateur qui procde lopration de tri et de rejet quon va dtailler dans les prochains
chapitres .
18
Figure 1.10 :Limplantation dune simulation qui reprsente toutes les tapes de
reconnaissance dobjets pour lopration de tri et de contrle de qualit.
19
reprsente par un convoyeur, des objets (cercles, carrs, triangles) poss sur le convoyeur, une
camra et une lampe dclairage.
Recadrage dimages : Ces oprations gomtriques sont utilises pour modifier la taille dune
image (ou dune fentre dimage)
1.5.5.1 Introduction
La camra est l'un des lments principaux de la chane d'acquisition d'une image. De
nombreux types de camras existent dans le domaine de l'industrie : Camras analogiques ou
numriques, camras linaires ou matricielles, camras multi spectrales.
Une camra, ou plus gnralement, un capteur dimages comporte deux parties , une
optique et un lment sensible la lumires .Dans le cas le plus simple loptique est simplement
constitue dun objectif. Son rle est dassurer la projection dune image nette sur la surface
sensible [1].
21
Figure 1.13 : Webcam
Une camra USB CCD (Charge-Coupled Device), numrique qui sinstalle sur des ports de PC
comme le port USB de rsolution 320*240 et a une vitesse dacquisition de 15 images par
seconde. Limage est de format RGB (3 plans de base Red, Green, Blue). La technologie CCD
(Charge-Coupled Device) est invente en 1975, a connu au cours des trente dernires annes
dimportantes volutions. Elle constitue aujourdhui la technologie de rfrence.
a) Capteur CCD
Le principe du capteur CCD (Charge-Coupled Device), ou capteur transfert de charge
est un composant bas sur une technologie de composants semi-conducteurs. L'arrive de
photons sur le silicium va crer des charges lectriques, charges qui vont s'accumuler dans des
zones appeles "puits". Ces zones sont la rsultante de diffrentes tensions lectriques appliques
localement. En jouant sur ces tensions, nous allons modifier la position des puits, et donc forcer
les charges se dplacer. [18]
Une matrice CCD est forme de Y lignes de X colonnes, chaque point lmentaire (ou pixel)
tant physiquement un rectangle de silicium de quelques microns.
b) Capteur CMOS
Paralllement cela, est apparue dans les annes 90, une seconde technologie, baptise
CMOS (Complementary Metal Oxide Semicon- ductor), qui devait rvolutionner le monde de la
vision. Juge moins performante que son ane, celle-ci est reste pendant longtemps cantonne
aux applications bas de gamme, ne ncessitant pas une qualit dimage trs leve.
Depuis plusieurs annes les camras linaires jouent un rle prpondrant dans le monde
de limagerie. Le principe de base de l'acquisition par une camra linaire consiste en la
conversion des rayons lumineux (aussi appels stimuli ) rflchis par la scne observer en
un signal vido l'aide d'un capteur de forme linaire, parfois dsign sous le terme de barrette
22
dans la littrature. Ce capteur linaire est constitu d'lments photosensibles (parfois appels
pixels par abus de langage mais aussi photo-sites ou photo-rcepteurs).
Leur disposition linaire ne permet que l'observation d'une ligne de la scne restitue sous
la forme d'une image-ligne, contrairement aux camras matricielles dont les photo-rcepteurs
disposs sous la forme d'une matrice permettent l'acquisition d'images bidimensionnelles.[19]
1.5.5.3 Eclairage
Il existe quelques techniques dclairage dans le domaine de vision quon trouvera dans
la partie Annexe A.
Le but est dviter les effets dombre pour obtenir une illumination aussi homogne que
possible de toute leur surface .Dans notre travail nous avons utilis un clairage par une lampe
lumire simple pour clairer le champ de vision et pour pouvoir donner limage acquise un
traitement approfondi (figure 1.14).
23
1.6 Conclusion
La vision humaine est extrmement complexe. La vision par ordinateur ne cherche pas
comprendre ou reproduire la vision humaine, mais construire un modle algorithmique qui,
vu de lextrieur, possde des proprits semblables. Dou la vision artificielle est dextraire des
caractristiques partir des images. Cest une mise en correspondance image/reconnaissance.
La reconnaissance dobjets dans les images est un des problmes les plus difficiles en vision par
ordinateur puisquil est indispensable pour toutes sortes dapplications industrielles
Connatre la forme et le nombre d'objets sur un convoyeur ncessite une bonne acquisition. Le
choix du type de camra est trs important, l'clairage est l'aspect le plus critique de toute
application de vision artificielle, si l'objet est bien clair on peut arriver de trs bons rsultats
de notre processus de reconnaissance d'objets. De nombreuses applications ont ainsi chou par
manque dclairage. Mais lclairage nest pas le seul paramtre. Il y en a dautres pour le
traitement numrique de limage , o un appareillage plus complexe , est indispensable.
24
Traitement Numrique dImages
Dans toutes les pratiques industrielles, la fe lectricit est omniprsente. Limage fournie par le
capteur est transforme en un signal lectrique. Cest le cas des prtraitements au cours
desquels le signal peut toujours tre identifi une image. Dans un deuxime temps, les
traitements visent extraire des caractristiques qui constitueront les donnes sur lesquelles
lidentification finale sera mene. Lemploi doutils ou dalgorithme de traitement comme le
seuillage, le filtrage et les oprations morphologiques afin de rcuprer une image proche de
limage originale pour la rendre plus facilement exploitable.
2.1 Introduction
Limage fournie par le capteur est transforme en un signal lectrique. De ce signal il faut
extraire les informations recherches sur le contenu de la scne dont limage a t capte.
Les premires bases du traitement dimages sont directement issues du traitement du signal,
phnomne normal puisque toute image, quelle soit continue ou numrique, peut tre considre
comme un signal 2 dimensions.
La vision nest pas un domaine facile, car reprer un objet simple dans une image
demande beaucoup doprations.
Lobjectif de ce travail est de montrer comment il est possible de dvelopper des algorithmes de
traitement dimages pour raliser par exemple une segmentation et dtection dobjets dans une
image.
Le traitement, souvent appel prtraitement, regroupe toutes les techniques visant
amliorer la qualit d'une image. De ce fait, la donne de dpart est l'image initiale et le rsultat
est galement une image.
La reprsentation la plus lmentaire correspond l'image binaire pour laquelle chaque
pixel ne peut prendre qu'une valeur parmi deux autres. Pour les images monochromes, chaque
pixel peut prendre une valeur parmi N. N correspond gnralement une puissance de 2, ce qui
facilite la reprsentation de l'image en machine. Par exemple, pour une image en niveau de gris
chacun des pixels peut prendre une valeur parmi 256. Sa valeur est alors code par un octet de
donne.
25
Voir quelques donnes quantitatives lies la reprsentation des images. Une image est
constitue par une matrice X lignes et Y colonnes de pixels chacun cod par x bits. Les donnes
quantitatives lies la reprsentation des images sont reprsentes dans le tableau suivant (Table
2.1) :
Dans notre cas limage est considre comme une image couleur 320*240 o chaque couleur est
code sur 8 bits. On obtient ainsi environ 786 Ko de donnes ncessaires pour stocker cette
image. La figure 2.2 reprsente une image correspondant la reprsentation RGB (Red , Green
Bleu) , on associe un octet chaque pixel pour dfinir le niveau dintensit du pixel la
transformation dune image en niveau de gris, on associe un octet chaque pixel pour dfinir le
niveau de gris du pixel (255 pour le blanc et 0 pour le noir).
26
Lensemble des ces pixels est contenu dans un tableau deux dimensions constituant limage.
Les axes de limage sont orients de la faon suivante :
-Laxe X est orient droite (largeur).
-Laxe Y est orient de haut en bas (hauteur), contrairement aux notations conventionnelles en
mathmatiques, ou laxe Y est orient vers le haut.
Pour reprsenter informatiquement une image, il suffit donc de crer un tableau de pixels dont
chaque case est code par un certain nombre de dbits dterminant la couleur ou lintensit du
pixel, la figure 2.3 prsente un rseau de pixels (Llment gris encadr par la couleur rouge
correspond aux coordonnes i, j).
27
2.2.1.2 Types et caractristiques d'images
Il existe 2 sortes d'images numriques : les images matricielles et les images vectorielles.
a) Image matricielle
Comme nous lavons dcrite, elle est forme d'une grille de points ou pixels, chacun
pouvant avoir une couleur diffrente.
Une image matricielle est caractrise notamment par sa dimension en pixels, sa rsolution et son
mode colorimtrique.
Les images vues sur un cran de tlvision ou une photographie sont des images
matricielles. On obtient galement des images matricielles l'aide d'un appareil photo
numrique, d'une camra vido numrique ou d'un scanner.
On reprsente souvent cette matrice numrique sous forme dun tableau (une matrice note S
dans la figure 3.4). Les pixels sont ainsi numrots en fonction de leur position (numro de ligne,
numro de colonne)
S=
b) Image vectorielle
Elle n'est pas compose de pixels mais dfinie par des fonctions mathmatiques qui
dcrivent des lignes, des courbes etc. Dans ce cas on manipule des objets et non des pixels.
Par exemple, un cercle est dcrit par une fonction du type (cercle, position du centre, rayon). Ces
images sont essentiellement utilises pour raliser des schmas ou des plans.
Ces images prsentent 2 avantages : elles occupent peu de place en mmoire et peuvent tre
redimensionnes sans perte d'information.
28
dinformation qui dcrit cette structure est importante et plus la rsolution est leve. La
rsolution dune image numrique dfinit le degr de dtail qui va tre reprsent sur celle-ci.
Les phnomnes de numrisation dpendent des 2 quations suivantes :
(X*rsolution) = x pixels
(Y*rsolution) = y pixels
O X et Y reprsentent la taille gomtrique (en pouces ou centimtres) de la structure
numriser, rsolution reprsente la rsolution de numrisation, puis x et y reprsentent la taille
(en pixels) de limage.
Une image de 1 pouce x 1 pouce scanne 100 dpi aura une taille (x, y) de 100 pixels sur 100
pixels cest--dire (1 x 100)x(1x100) = 100 pixels sur 100 pixels = 10.000 pixels .
Remarque :
1 pouce = 2, 54 cm
1 pouce = 25, 40 mm = 100 pixels
1 inch = 2, 54 cm = 1 pouce
e) Images couleur
L'oeil humain possde des rcepteurs pour les trois couleurs primaire rouge, vert et bleu.
Ainsi, tous les espaces couleur ont trois dimensions. Il y a plusieurs espaces de couleurs
disponibles, les plus connus tant RVB (Rouge-Vert-Bleu), HSV (Hue-Saturation-Valeur) et
NTSC.
Ces images sont en gnral codes en utilisant le codage des trois couleurs fondamentales
(rouge , vert , bleu ) , on parle alors dimages RVB.
Chaque couleur est code sous forme dun octet, do la composante Rouge , intensit de 0
255. image RVB + la composante Verte , intensit de 0 255 + la composante Bleue , intensit
24
de 0 255, on code ainsi 2 =16 777 216 couleurs diffrentes .
La couleur peut aussi tre code sur un octet (256 couleurs) et laffichage tant ralis aprs
passage dans une table de couleurs (transcodage).
Le codage peut ainsi tre ralis en affectant 3 bits au rouge et au vert et 2 bits au bleu (pour
tenir compte par exemple de la plus faible sensibilit de la vision humaine au bleu) [24].
29
e.1) Lespace RGB
Lespace RGB est vectoriel engendr par les 3 composantes primaires (Rouge, Vert,
Bleu). Lensemble des couleurs se prsente comme lintrieur dun cube voir figure 3.5
Dans notre cas limage est en RGB de 320*240 o chaque couleur est code sur 8 bits. Les
objets sont en blanc et la couleur de larrire plan est spcifique au convoyeur (figure 3.6).
Figure 2.6 : Reprsentation dimage en RGB et la valeur d'intensit en long d'une ligne.
30
e.2) Lespace HSV
Le principe de lespace HSV est de caractriser les couleurs de faon plus intuitive,
conformment la perception des couleurs, en termes de : Teinte, Saturation, Valeur.(Figure
3.7)
Le passage de RGB HSV se fait par une transformation non linaire. Plusieurs oprateurs
ont t proposs pour la conversion. Nous proposons une transformation de limage originale
(RGB) en image HSV voir figure 3.8
31
Dans ce cas on dispose dune chelle de teintes de gris, et la plupart du temps on dispose de 256
niveaux de gris avec:
0 ----> noir, ............127 ---> gris moyen, ......, 255 ---> blanc
Certaines images peuvent tre codes sur deux octets ou plus (certaines images mdicales, des
images astronomiques,...) ce qui peut poser des problmes dans la mesure o les systmes de
traitement dimages courants supposent lutilisation des pixels dun octet.
Notons au passage que lhumain standard ne reconnat au plus que 64 niveaux de gris
Dans cette image, on peut rgler le contraste et la distribution dintensit en utilisant la fonction
galisation dhistogramme.
- La luminance (ou brillance) est dfinie comme la moyenne de tous les pixels de limage.
- Pour augmenter la luminance, il suffit de dcaler lhistogramme :
I(i; j) = I (i; j) + b
- Dans les deux images suivantes, seule la luminance est diffrente voir figure 3.10
32
Figure 2.10 : Diffrence dHistogramme Image RGB et image contraste
-La luminance (ou brillance) est dfinie comme la moyenne de tous les pixels de limage.
- Pour augmenter la luminance, il suffit de dcaler lhistogramme :
I(i, j) = I (i, j) + b
N
1
N
( I (i, j ) Moy)
n =1
Une fois que lhistogramme dune image est connu, les niveaux de gris de limage peuvent tre
manipuls pour changer lhistogramme de la manire souhaite. On peut par exemple dsirer
amliorer le contraste, changer le niveau de brillance ou faire correspondre lhistogramme celui
dune autre image.
33
2.2.2 Voisinage dans les images
La partie que nous voulons toucher ici concerne les relations entre pixels dans les images
numriques et ceci pour prparer ltude des divers algorithmes de traitement dimages
impliquant des oprations entre pixels voisins [20].
Notamment la notion de connexit entre pixels est une notion particulirement importante pour la
dtection des frontires dobjets dans une image et des pixels composant un objet :
Deux pixels seront considrs comme connexes (appartenant au mme objet donc) sils satisfont
deux critres:
- Critre de similarit (par exemple mme niveau de gris)
- sils sont adjacents (voisins)
-la connexit 4 o sont considrs connexes les quatre voisins latraux (droite, gauche, dessus,
dessous).
-la connexit 8 o sont considrs connexes les quatre voisins latraux (droite, gauche, dessus,
dessous) et les quatre voisins diagonaux (Figure 2.11).
Tout pixel d'une image est caractris par un couple de coordonnes (x,y). On peut donc
calculer des distances entre pixels. Les distances les plus courantes sont (pour deux pixels
(x1,y1) et (x2,y2)):
34
Distance de Manathan : 2.1
La distance utilise est gnralement la distance euclidienne, mais Manhattan et l'Echiquier sont
plus rapides dans le calcul. Le type de distance utiliser dpend de l'application, c'est--dire sur
des facteurs tels que le temps d'excution, le cot, la performance, la prcision, etc.
1 si f ( x, y ) T
g ( x, y ) =
0 si f ( x, y ) < T
35
Nb pixels/ng
Seuil de binarisation Ng
Ng de sortie
255
0 Ng entre
Figure 2.12 : Cas du seuillage dun histogramme bimodal
0 S1 S2 S3 255
Ng sortie
S1 S3 Ng dentre
Figure 2.13 : Cas du seuillage dun histogramme multimodal
Lhistogramme dune image est une fonction donnant, par exemple, le nombre de pixels
un niveau de gris particulier en fonction du niveau de gris.
Lhistogramme ne contient aucune information relative lemplacement des pixels ni sur la
proximit relative de deux pixels. Par contre, linformation quil contient peut concerner
notamment la brillance apparente et le contraste dune image, et il est utilis en traitement
dimages pour manipuler ces caractristiques dune image [28].
Lhistogramme est calcul pour les valeurs dintensit de limage et analys pour
dterminer ltablissement dun seuil permettant de sparer un objet du fond. Pour un
36
histogramme dun objet assez uniforme peut tre approch par une gaussienne de variance faible
et lhistogramme dune image comportant un objet sur un fond est bimodal (deux pics).
Le seuillage va permettre de produire une matrice image binarise cest--dire une matrice ne
contenant que des valeurs gales 0 ou 255 si on raisonne dans lensemble [0..255], ou de 0 ou
de 1 si on travaille dans lensemble [0..1].
L'algorithme qui en rsulte est trs simple, il suffit d'attribuer tous les pixels ayant un niveau de
gris suprieur la valeur seuil la couleur blanche (1 ou 255). Dans le cas contraire on leur
attribue la couleur noire (0).
37
Limage est mise dans la matrice carre X des valeurs de niveaux de gris pour chaque pixel
end
Lalgorithme permet de binariser une image initiale en niveaux de gris, cette technique permet
une segmentation d'objets particuliers de l'image.
38
Elle contient 3 objets : un noir, un gris fonc et un gris clair.
Le seuil va correspondre une valeur de niveau de gris susceptible de partitionner l'image en 2
composantes : les objets d'une part, le fond d'autre part. Le rsultat est une simplification de
l'image en une image binaire. Aprs seuillage, les parties de l'image qui auront t slectionnes
seront traduites en blanc et le reste de l'image en noir (cod 0). On a donc le schma suivant :
Il est galement possible de nettoyer limage lors de la numrisation par des concepts de filtrage
dans le but de faciliter une analyse ultrieure , ces filtres possdent des caractristiques
spectrales; nous voquerons dans cette partie en dtail le filtrage .
2.4.1 Le Filtrage
Le Filtrage des images a la mme finalit que celui des signaux 1D. Il s'agit
essentiellement de nettoyer limage lors de la numrisation par des concepts de filtrage.
Notamment de bruit (par exemple lors dune mauvaise rception de donnes), de flou (ds une
mauvaise mise au point), ou encore des pertes de qualit (dues une mauvaise luminosit).
Dans une image, les dtails se rptent frquemment sur un petit nombre de pixels, on dit qu'ils
ont une frquence leve : c'est le cas pour les textures fines et certains contours de l'image. Au
39
contraire, les frquences basses correspondent des faibles variations tendues sur de grandes
parties de l'image, par exemple des variations de fond de ciel.
Diffrentes mthodes de filtrage ont t dveloppes suivant le type de lintensit du bruit.
Ces filtres possdent des caractristiques spectrales; on parle ainsi des filtres linaires et des
filtres non linaires.
L'information contenue dans l'image peut tre reprsente de diffrentes faons afin de
mieux mettre en vidence certaines proprits des images.
Le filtrage linaire correspond la premire opration utilisant le proche voisinage qui vient
lesprit. Il consiste, en effet remplacer la valeur dun pixel par une combinaison linaire des
valeurs des pixels voisins.
Pour une attnuation dun bruit qui se traduit par des variations locales alatoires de luminance,
un filtre dit moyenneur ou passe bas sera souvent utilis. Cette attnuation peut tre effectue
laide des deux mthodes de filtrage soit par filtrage dans le domaine frquentiel ou filtrage dans
le domaine spatial (convolution) [21]. Certaines thories neurophysiologiques ont galement fait
voluer le traitement des images vers des mthodes combinant les deux domaines. En
reprsentation frquentielle, on utilise notamment la transforme de Fourier.
40
a) Filtrage dans le domaine frquentiel
Il y a plusieurs manires de transformer une image (signal 2D) en d'autres reprsentations, plus
adquates pour certains types d'analyse d'images. Lorsque l'on considre un signal, il est
indispensable d'avoir prsent l'esprit deux reprsentations possibles de ce signal [22]. Cest--
dire le temps et frquence : dans la reprsentation continue en temps du signal y(t) ou discret y(n)
la variable t ou n est la dure qui s'coule continment ou par sauts discrets. La reprsentation
frquence du signal fait jouer un rle central aux frquences pures qui constitueront la base de
description des signaux. La transforme de Fourier est l'outil le plus communment utilis pour
raliser ce type de transformations et d'analyse des donnes.
La transforme de Fourier (TF) permet la dcomposition d'un signal f (ici notre image) en
combinaison linaire de sinusodes complexes, dont les coefficients F[u,v] dit coefficients de
Fourier, fournissent des informations sur les frquences (u,v) et permettent des manipulations
dans le domaine frquentiel. Limage obtenue nest plus reprsente par la valeur de ses pixels en
fonction de leur position dans lespace, mais par lamplitude et la phase de sinusodes en fonction
de leur frquence [21].
Soit un signal continu , vrifiant la condition dexistence dune nergie finie suivante :
41
La norme de l'amplitude est appele spectre de Fourier de la fonction (ou module), et l'exposant
est appel angle de phase. Le carr de l'amplitude est simplement appel puissance spectrale de la
fonction.
Les intgrales des formules prcdentes seront remplaces par des sommes partielles. On obtient
2.4
2.5
2.6
En gnral, la transformation d'un signal rel dans le domaine frquentiel est value comme une
fonction complexe, c'est--dire qui a un module et une phase.
Un filtre passe-bas est un filtre qui laisse passer les basses frquences et qui attnue les hautes
frquences, c'est--dire les frquences suprieures la frquence de coupure. [23].
Dautant plus que la transforme de Fourier a l'avantage d'tre trs facilement inversible, de
l'image on passe facilement aux frquences, et des frquences on passe aisment l'image. Ainsi,
on peut (comme avec un gaussien) supprimer les hautes frquences de l'image en crant ce qu'on
appelle un filtre passe-bas :
1. On passe dans l'espace de Fourier (espace frquentiel)
2. On supprime les donnes relatives aux hautes frquences
3. On inverse la transforme de Fourier pour revenir l'image (mais cette fois les hautes
frquences ont disparu).
42
Figure 2.17 : Filtrage frquentiel
2.7
43
Le module du spectre avant et aprs filtrage est reprsent dans la figure 2.18.
Limage gauche reprsente le module du spectre avant filtrage. On aperoit une zone
claire au centre du spectre, qui correspond la composante continue de limage. Le nuage de
points autour de cette composante continue correspond quelques composantes moyennes et
hautes frquences de limage (contours, dtails, zones de transition, ).
Limage de droite reprsente le spectre aprs filtrage passe-bas. La composante continue
qui est basse frquence est bien conserve. Le nuage de points reprsentant les moyennes et
hautes frquences a t globalement supprim. Cependant, selon les axes des frquences spatiales
horizontales et verticales pures, des gains importants apparaissent pour les moyennes et hautes
frquences.
Dans la mesure o un bruit est gnralement un signal haute frquence, filtrer un signal bruit en
ne gardant que les hautes frquences revient garder seulement le bruit
44
b) Filtrage dans le domaine spatial (par convolution)
Une image est avant tout un signal, elle possde des hautes frquences et des basses frquences.
Dans une image une basse frquence est caractrise par une rgion homogne, un flou, tandis
qu'une haute frquence est caractrise par un contour, un changement brusque d'intensit, un
bruit. La plus grande partie de l'nergie d'une image se situe dans les basses frquences.
Le filtrage linaire spatial est essentiellement une opration de convolution (2D). Si f est limage
filtrer et g le filtre spatial on a :
1
f ( x, y ) * k ( x, y ) = F F ( f ( x, y )).F ( g ( x, y ))
14243
k (u ,v )
45
Une image numrique tant essentiellement discrte (pixels et niveaux de gris) nous allons
prsenter les filtres dans le cas discret. Dont i et j sont des entiers (coordonnes des pixels) et f
est valeurs entires (dans {0,,255}). On ne fait pas en gnral une convolution globale mais
une transformation locale, base sur le voisinage dun point i,j : voir figure 2.20
46
-Convolution
Le filtrage peut tre effectu dans lespace image (domaine spatial) en utilisant loprateur de
convolution, bien connu dans le traitement signal.
Le produit de convolution d'un signal 2D f (i, j ) (une image) avec un filtre h(i, j ) est donn
par :
i +1 j +1
f ' (i, j ) = ( j * h)(i, j ) =
n = i 1m =i 1
f (i , j ) h ( n i , m j ) 2.8
w9 w w w1 w 2 w 3
8 7
h = w6 w 5 w 4 g = w4 w 5 w 6
w3 w
w
1 w7 w w 9
2
8
47
La convolution au pixel (i ; j) de f par le noyaux h est donne par :
wi = 1 o
i =1
t = d2 est le nombre de cfficients du filtre .
-Filtre moyenneur
Les filtres moyenneurs sont un des types passe-bas dans le principe est de calculer la moyenne
des valeurs des pixels avoisinants. Le rsultat de ce filtre est une image plus floue. Exemple
dalgorithme du filtre moyenneur.
Algorithme :
48
Le filtre moyenneur remplace la valeur d'un pixel par la moyenne de sa valeur et de la valeur des
8 pixels qui lentourent. La matrice est donc une 3x3 dont chacun des membres vaut 1/9.
Rponse impulsionnelle :
Le filtre de taille d = 3 :
1 1 1
h = 1 / 91 1 1
1 1 1
-D'une manire gnrale, si on a un filtre de taille d, tous les coefficients du filtre ont comme
valeur wi = 1 /d
- Plus d est grand, plus le lissage sera important, et plus l'image filtre perd les dtails de l'image
originale.
Le filtre moyenneur ralise en effet la moyenne pour chaque pixel sur un voisinage (3 x3).voir
figure 2.23
Il existe un autre type de filtrage qui permet dattnuer le bruit sur une image, cest le filtre
gaussien.
-Filtre Gaussien
Lintrt du filtre gaussien est que lon rgle trs facilement le degr de filtrage a travers le
paramtre .On induit une forme de flou qui a pour avantage de retirer les petits dfauts. D'un
49
point de vue "signal", ces petits dfauts correspondent des variations importantes d'intensits
sur une petite longueur. Si on parlait d'un signal, on dirait que ce sont des "hautes frquences".
Le noyau gaussien est dfini par un ensemble de cfficients qui sont des chantillons de la
Gaussienne 2D
Etant donn que les images numriques sont composes de valeurs discrtes, le noyau gaussien
sera compos aussi de valeurs discrtes:
Il faut noter que plus le sigma est grand, plus la cloche Gaussienne est large et plus le flou
appliqu limage sera marqu.
50
Pour calculer un flou gaussien, il existe deux principes :
- produit de convolution avec un noyau gaussien
- passage dans l'espace de Fourier
Dans le premier cas : Si l'on veut un flou qui prenne en compte un grand nombre de pixel autour
du pixel de destination, il est ncessaire d'augmenter le rayon du noyau (dans le cas d'un produit
de convolution standard avec un noyau gaussien). On applique le filtre de bruit gaussien dans la
figure 2.24
L'avantage de passer dans l'espace de Fourier, c'est que l'on peut appliquer un flou gaussien de
n'importe quel rayon (dans ce cas, ce n'est plus vraiment un rayon) pour un mme temps
d'excution.
Pour lappliquer , nous avons un noyau de convolution G et une image I, et G*I le produit de
convolution entre G et I.
Alors, si on note F la transforme de Fourier, on a la proprit suivante :
F(G * I) = F(G).F(I) Le produit de convolution (opration lente) se transforme en produit simple
(opration rapide). Pour un noyau gaussien, l'avantage tant que F(G) est une formule connue .
Le filtre gaussien donne un meilleur lissage et une meilleure rduction du bruit que le filtre
moyenneur il prserve mieux linformation contenue dans limage que les moyenneurs. On
considre souvent que le filtre gaussien est le meilleur compromis entre lissage et prservation de
linformation, ce qui implique pour un masque de convolution trs tendu et donc une charge de
calcul enleve. Cest pourquoi dans la pratique cette solution est rarement retenue et se contente
dun masque peu tendu.
On constate simplement, sur lexemple de filtrage de notre image que les contours des objets
sont rduits, le contraste aprs filtrage est moins bon.
51
Ce dfaut est inhrent au principe de filtrage linaire et on ne peut y remdier quen changeant de
mthode de traitement. Une solution consiste autoriser des oprations non-lineaires entre les
voisins, cest ce quon appelle le filtrage non-lineaire.
- Introduction
Contrairement au filtrage par convolution (filtrage linaire), le filtrage non-linaire fait intervenir
les pixels voisins suivant une loi non-linaire. Il existe ainsi une infinit de filtres non-linaires,
mais deux grandes catgories sont parmi les plus utilises en vision artificielle ; celle des filtres
dordre et celle qui regroupe les oprations morphologie mathmatique.
Nous dcrirons en dtail cette partie qui est les filtres dordre et ensuite la catgorie
morphologie mathmatique.
Les filtres non-linaires oprent sur un voisinage donn. Lorsquun masque de convolution est
lui mme fonction des pixels de limage, le filtrage devient non-lineaire.
Seuls des filtres non-lineaires peuvent permettre de prserver des contours en sadaptant au
contenu des images. Le plus connu dans le filtrage non-linaire est le filtre mdian (cas
particulier du filtrage dordre).
- Filtre mdian
Ce sont des filtres non linaires et donc ce ne sont pas des filtres de convolution [25].
Ces filtres sont utiles pour contrer leffet ! Poivre et Sel " (P& S) cest dire des faux 0 et
255 dans limage.
Le bruit poivre-et-sel utilis ici consiste mettre, alatoirement, plusieurs pixels aux valeurs
255 ou 0 (valeurs extrmes de lintervalle des niveaux de gris). Ce type de bruit impulsionnel
peut apparatre par numrisation dune image ou au cours dune transmission.
52
Figure 2.26 : image bruite par un moyenneur 3 x 3
Le bruit salt-and-pepper est faiblement rduit. On distingue encore nettement les grains dans
limage. Le filtre moyenneur ralise en effet la moyenne pour chaque pixel sur un voisinage
(3 x3).
En effet un filtre de convolution affecte au pixel trait un barycentre des valeurs des niveaux de
gris des pixels situs dans un voisinage. Un pixel dont le niveau de gris est trs diffrent des
autres va donc affecter le rsultat de la convolution. On prfre, dans ce cas remplacer la valeur
du pixel par la valeur mdiane et non la valeur moyenne . Lalgorithme suivant crit les tapes de
calcul du filtre mdian.
Algorithme :
Fin
53
On remplace la valeur du pixel par la valeur mdiane ou la valeur moyenne. Ce filtre est utile
pour contrer leffet Poivre et Sel (P& S) cest dire des faux 0 et 255 dans limage.
7 5 3
4 2 7
6 5 2
La mthode base sur le filtre mdian est particulirement adapte lorsque le bruit est constitu
de points isols ou de lignes fines. Cependant, elle n'est applicable qu'aux images en niveaux de
gris, contrairement au lissage .La rduction de bruit avec le filtre mdian est reprsente par la
figure suivante 2.26 en plusieurs tapes.
54
Intrt du filtre mdian:
- La valeur mdiane choisie tant le niveau de gris dun des pixels considrs, on ne
cre pas alors de nouveaux niveaux de gris dans limage. Ainsi lorsque le filtre passe sur un
contour trs marqu il le prservera mieux, mais il est coteux en temps de calcul.
Lide de Nagao [26] est de faire un partitionnement de la fentre danalyse, de taille 5x5, en
plusieurs fentres de filtrage. Aprs calcul de la variance empirique sur chaque domaine la sortie
du filtre est la moyenne sur le domaine ayant la variance la plus faible.
Sous certaines conditions, Nagao montre que les domaines ayant la plus grande variance
sont rvlateurs de prsence dau moins deux rgions. Les performances du filtre ne changent
pas par suppression du domaine 9 [27].
Le principe de ce filtrage est de remplacer chaque pixel de l'image par la valeur moyenne des
pixels contenus dans une fentre particulire. Il s'agit de choisir la fentre la mieux adapte parmi
un certain nombre de fentres prdfinies.
9 fentres sont ici dfinies, chacune contenant 9 pixels, dont le pixel remplacer. Elles
s'inscrivent dans une fentre de taille 5x5 centre sur le pixel modifier [30].
Algorithme de Nagao
Lalgorithme de Nagao est un peu plus complexe. Il permet dadoucir limage sans pour autant
rendre les bords flous. Dans un carr de 5x5 entourant le pixel traiter, la variance de 9
diffrentes rgions est calcule. La valeur du pixel central est remplace par la valeur moyenne
de la rgion qui a la plus faible variance.
- Pour chaque pixels de limage :
- Filtrer limage par chacune des 9 matrices de Nagao
- Calculer la variance des 9 rsultats ci-dessus
55
- Rechercher lensemble qui a la plus faible variance
- Remplacer la valeur du pixel par la moyenne de lensemble ci-dessus
Comme dans le cas du filtre mdian, le filtre de Nagao est appliqu sur les trois composantes
RGB indpendamment.
Ceci parat facile, mais les boucles imbriques sont trs lentes. Par consquent, cet algorithme
fonctionne relativement lentement sous Matlab. Ceci peut devenir un inconvnient majeur si le
nombre dimages traiter est important.
La morphologie mathmatique est une catgorie particulire de filtre dordre donc thorie
de traitement non linaire qui est aujourdhui trs largement utilise en analyse dimages
binaires, mais qui a depuis t tendue aux images en niveaux de gris. La morphologie
mathmatique ne sappuie pas sur le traitement de signal, mais repose sur la thorie des
ensembles, ce qui en fait une discipline relativement auto contenue et formant un tout
cohrent[31] .
Les oprateurs morphologiques travaillent aussi sur le voisinage local de chaque pixel. La forme
de ce voisinage est appele lment structurant. Comme pour les filtres linaires ou mdians,
on peut utiliser des lments structurants de taille et de forme varies. Les lments structurants
couramment utiliss sont le cercle, isotrope, et le carr, qui permet d'acclrer les calculs.
Notations et dfinitions
- Objets : X = { x / x = 1 }
- Fonds : ~X = { x / x = 0 }
- lment structurant :
Sx caractris par ses dimensions et sa forme ,son centre x est le point dapplication de
lopration locale
Tout dabord, nous prsenterons les transformations morphologiques basiques que nous projetons
dutiliser. Parmi les oprateurs morphologiques, on distingue :
56
-La dilatation et lrosion morphologiques.
-Louverture et la fermeture morphologiques.
Ce sont lrosion, la dilatation, louverture et la fermeture qui reposent sur des oprations de
suprieur et dinfrieur entre limage dorigine et une forme gomtrique que lon appelle
lment structurant.
Le principe de base de lanalyse morphologique est dextraire les formes de limage partir des
rponses fournies diffrents tests (transformations). Il a t prouv que ces mthodes sont trs
efficaces pour la reconnaissance des objets comme pour leur analyse.
2.5.1.1 Dfinition
Ensemble des pixels recouverts par l'lment structurant, lorsque celui-ci parcourt l'objet (son
centre restant dans l'objet).
Permet dajouter l'objet initial les pixels qui lui sont proches, dans des directions dpendant de
l'lment structurant choisi.
57
2.5.2 Oprateur morphologique d'rosion :
2.5.2.2 Dfinition
2.5.3.1 Dfinition
Lisse (nettoie) les contours, supprime les petits lots ou parties saillantes tout en gardant la taille
originale de lobjet
58
Figure 2.30 : Ouverture dimage
59
2.6 Conclusion
Le filtrage mdian est plus adapt que le filtrage linaire pour rduire le bruit impulsionnel.
Il limine les vnements de taille infrieure la moiti de la taille de la fentre dobservation.
Le filtre mdian est le plus simple et son action est tout a fait remarquable sur les images
affectes de perturbations puisquil permet de les nettoyer pour la nettet des contours.
Cet effet, les filtres non linaires, constitue un avantage certain par rapport aux filtres linaires
qui ont un effet passe bas global agissant aussi bien sur le bruit que sur linformation utile
prsente dans limage.
60
Segmentation des images
Limage, comme tout lment, apparat dans sa totalit pour tre intelligible. Mais dans la
ralit, elle est la rsultante dun ensemble dlments plus ou moins nombreux, plus ou moins
petits, selon la distance de vision, son angle, et surtout lappareillage par le biais duquel limage
est observe. Si l'homme sait naturellement sparer des objets dans une image c'est grce des
connaissances de haut niveau (comprhension des objets et de la scne). Mettre au point des
algorithmes de segmentation de haut niveau (chaque rgion est un objet smantique) est encore
un des thmes de recherche les plus courants en traitement d'images. Dans ce chapitre nous
allons aborder les diffrentes mthodes de segmentation, mais malgr que ce soit impossible
d'valuer automatiquement la segmentation, nous pouvons dfinir des critres sur le rsultat de
la segmentation pour avoir une ide d'valuation.
3.1 Introduction
La segmentation est une tape essentielle en traitement dimages et reste un problme
complexe. La segmentation est un processus de la vision par ordinateur, gnralement cest la
premire tape de l'analyse d'image qui vient aprs le prtraitement. La segmentation est
l'extraction de caractristiques de l'objet, ce qui permet une distinction entre l'objet et le fond.
Elle aide localiser et dlimiter les entits prsentes dans limage .Il existe une multitude
de mthodes de segmentation dont lefficacit reste difficile valuer.
La segmentation des images est le procd qui conduit un dcoupage de limage en un nombre
fini de rgions (ou segments) bien dfinies qui correspondent des objets, des parties dobjets ou
des groupes dobjets qui apparaissent dans une image. Cest une transformation trs utile en
vision artificielle.
Une erreur dans la segmentation de la forme reconnatre augmente forcment le risque dune
mauvaise reconnaissance.
Essentiellement, l'analyse de l'image fait appel la segmentation o l'on va tenter d'associer
chaque pixel de l'image un label en s'appuyant sur l'information porte (niveaux de gris ou
couleur), sa distribution spatiale sur le support image, des modles simples (le plus souvent des
modles gomtriques).
61
3-2 Les principes de la segmentation
De nombreux travaux ont t ralis sur ce sujet, dans des domaines aussi varis que le domaine
mdical, militaire, industriel, gophysique, etc Cest toujours un sujet dactualit et un
problme qui reste ouvert o l'on retrouve de trs nombreuses approches :
Toutes ces approches visent l'extraction des caractristiques. Aprs de nombreuses annes
passes rechercher la mthode optimale, les chercheurs ont compris que la segmentation
idale n'existait pas. Il nexiste pas dalgorithme universel de segmentation, chaque type
dimages correspond une approche spcifique. Une bonne mthode de segmentation sera donc
celle qui permettra d'arriver une bonne interprtation.
62
En gnral, la segmentation peut tre dfinie comme un partitionnement en rgions Ri connexes
suivant un prdicat p telles que :
N
I = U Ri
i =1
A chacune de ces rgions, doit correspondre un objet dans l'image car, dans ce procd d'analyse
d'images, l'objectif ultime est d'tre en mesure de dcomposer une image en un groupe d'objets
distincts. En gnral, ces objets ont des proprits qui leur sont propres par rapport l'image elle-
mme. Ainsi, il est possible de distinguer de tels objets par diffrentes mesures telles:
Lintrt de dtecter des rgions est de pouvoir les manipuler ensuite pour extraire des
caractristiques de forme, de position, de taille ...
Donc le seuillage a pour objectif de segmenter une image en plusieurs classes en n'utilisant que
l'histogramme. On suppose donc que l'information associe l'image permet elle seule la
segmentation, cest dire qu'une classe est caractrise par sa distribution de niveaux de gris.
A chaque pic de l'histogramme est associe une classe.
Nous avons vu quil existe de trs nombreuses mthodes de seuillage d'un histogramme. La
plupart de ces mthodes s'appliquent correctement si l'histogramme contient rellement des pics
spars. De plus, ces mthodes ont trs souvent t dveloppes pour traiter le cas particulier de
la segmentation en deux classes (bimodale).
Lapproche la plus simple est celle o on ne fait intervenir quun seuil (on dira que limage est
alors forme dun fonds et dun objet). Elle consiste tester pour chaque pixel de l'image si sa
63
valeur est suprieure ou infrieure un certain seuil, et produit une image binaire regroupant les
rsultats.
Il existe plusieurs mthodes pour calculer de manire automatique la valeur du seuil appliquer.
L'une des plus rpandue est la mthode d'Otsu. Elle consiste faire l'hypothse que l'image
contient deux classes, dcrites chacune par une partie de l'histogramme de l'image. La qualit du
seuillage est quantifie en mesurant la variance des niveaux de gris de chaque classe. On cherche
la valeur de seuil qui minimise les variances des deux classes. La figure 3.1 et la figure 3.2 ci-
dessous montrent la binarisation par la mthode OTSU dun seuil = 136 et dun seuil = 102
Figure 3.1 : La mthode OTSU seuil=136 Figure 3.2 : La mthode OTSU seuil=102
Le seuillage hystrsis est une mthode un peu plus perfectionne, qui permet d'amliorer la
dtection des contours des zones contrastes, tout en vitant de dtecter des zones du fond. Le
principe est d'utiliser deux seuils : un seuil haut et un seuil bas . On slectionne dabord
l'ensemble des pixels au dessus du seuil haut, puis l'ensemble des pixels au-dessus du seuil bas.
On ne garde ensuite que les composantes connexes du seuil bas qui contiennent au moins un
pixel au dessus du seuil haut. En pratique, cette dtection peut se faire soit par reconstruction
godsique, soit par tiquetage des composantes connexes de l'image des seuils bas et dtection
des tiquettes prsentes dans l'image des seuils hauts. Lexemple ci-dessous nous montre le
seuillage par hystrsis figure 3.3
64
Figure 3.3 : Seuillage par hystrsis
De nombreux problmes pratiques d'analyse d'image ncessitent une analyse pralable o il faut
dcouper l'image en rgions homognes spares par des contours. En gnral les rgions
homognes sont des rgions o l'intensit lumineuse varie lentement en fonction des coordonnes
spatiales. Les contours sparant ces rgions sont des portions de l'image de faible largeur (largeur
de l'ordre dun pixel) o les variations d'intensit sont importantes. Il existe une multitude de
mthodes pour dtecter les contours, do une autre approche de segmentation des images est la
recherche des contours des rgions. Les diffrentes mthodes de dtection des contours utiliss
sont Sobel, Prewitt, Robert, Canny. Ces mthodes ont t proposes pour dtecter des transitions
dans les images.
Le but de la dtection de contours est de reprer les points d'une image numrique qui
correspondent un changement brutal de l'intensit lumineuse. La dtection des contours d'une
image rduit de manire significative la quantit de donnes et limine les informations qu'on
peut juger moins pertinentes, tout en prservant les proprits structurelles importantes de
limage [32].
Lextraction de contours, dun point de vue algorithmique, est une fonction conomique qui
permet dallger considrablement les processus de reconnaissance et localisation dobjet.
Un contour peut tre dfini comme une "marche d'escalier" si le contour est net, comme une
"rampe" si le contour est plus flou ou comme un "toit" s'il s'agit d'une ligne sur un fond uniforme
figure 3.4
65
Figure 3.4 : Diffrentes formes de contours
La dtection de contours dans notre cas permet de dterminer les limites dobjets pour la
segmentation, dont le but est la sparation des objets dans limage. Nous allons dabord prsenter
les mthodes dextraction de points de contour, par des techniques de filtrage gradient et
Laplacien.
La notion de contour tant relie celle de variation, il est vident qu'une telle dfinition nous
amne tout naturellement vers une valuation de la variation en chaque pixel. Une variation
existera si la drive premire (gradient) est localement maximum ou si la drive seconde
(Laplacien) prsente un passage par zro.
f ( x, y ) f ( x, y )
G x ( x, y ) = etG y ( x, y ) = 3.1
x y
Si les drives partielles sont supposes continues en un point quelconque de limage, alors il est
admis que la diffrentielle de la fonction Image en ce point est une fonction linaire qui est
note :
66
G ( x, y ) = f x' ( x, y ).dx + f y' ( x, y ).dy 3.2
3.3
3.4
3.5
- Gnration du gradient
La mthode la plus simple de la gnration de gradient est de former la diffrence des pixels le
long des lignes et des colonnes de limage, les drives partielles font lobjet dune
approximation par une mthode de diffrentiation.
Qui correspondent des convolutions avec les noyaux (-1 1) qui est lapproximation de
1
et qui est lapproximation de
1
67
Ces drives sont calcules par convolution de limage avec un masque de diffrences
1
(-1 0 1) pour la drive horizontale et 0 pour la drive verticale qui constitueront des
1
frontires bien centres. Nous allons maintenant prsenter un type de filtre une sensibilit au
bruit un peu moins important : le filtre de Prewitt.
-Filtre de Prewitt
L'application d'un filtre de Prewitt est constitu de deux tapes. Dans un premier temps, on
applique les deux filtres de convolution l'image. Le premier de ces filtres permet de dtecter les
contours verticaux, s'crit hx = [-1 0 1] tandis que le second filtre permet de dtecter les contours
horizontaux de limage (transpos). Nous obtenons ainsi deux images.
Il suffit ensuite de fusionner les deux images en utilisant un calcul de norme.
68
Figure 3.6 : Dtection de contours l'aide du filtre de Prewitt (seuil : 0.3)
-Filtre de Sobel
Le principe de ce filtre est que l'oprateur calcule le gradient de l'intensit de chaque pixel. Ceci
indique la direction de la plus forte variation du clair au sombre, ainsi que le taux de changement
dans cette direction. On connat alors les points de changement soudain de luminosit,
correspondant probablement des bords, ainsi que l'orientation de ces bords.
L'oprateur utilise des matrices de convolution. La matrice gnralement de taille 33) subit une
convolution avec l'image pour calculer des approximations des drives horizontale et verticale.
Soit A l'image source, Gx et Gy deux images qui en chaque point contiennent des
approximations respectivement de la drive horizontale et verticale de chaque point.
L'oprateur utilise des matrices de convolution. La matrice (gnralement de taille 33) subit une
convolution avec l'image pour calculer des approximations des drives horizontale et verticale.
Soit l'image source, et deux images qui en chaque point contiennent des approximations
respectivement de la drive horizontale et verticale de chaque point.
69
En chaque point, les approximations des gradients horizontaux et verticaux peuvent tre
combines comme suit pour obtenir une approximation de la norme du gradient:
Nous pouvons voir que les rsultats obtenus sont similaires ceux obtenus l'aide du gradient de
Roberts. Toutefois, le filtre de Sobel permet de filtrer une partie des parasites lorsque le seuil est
trop faible comme en tmoigne la capture d'cran ralise avec un seuil de 0.05.
70
-Filtre de Robert
Le gradient de Robert est constitu de deux tapes. Dans un premier temps, on applique les deux
filtres de convolution l'image. Le premier de ces filtres permet de dtecter les contours ayant
une direction allant du coin suprieur gauche de l'image au coin infrieur droit (ou l'inverse)
tandis que le second filtre permet de dtecter les contours ayant une direction allant du coin
infrieur gauche de l'image au coin suprieur droit (ou l'inverse). Nous obtenons ainsi deux
images. Il suffit ensuite de fusionner les deux images en utilisant un calcul de norme.
Les filtres de Robert sont une approche discrte de la drive une d'une fonction: le gradient de
cette fonction
71
Nous pouvons voir que les rsultats obtenus sont similaires ceux obtenus l'aide du gradient de
Robert .Toutefois, le filtre de Sobel permet de filtrer une partie des parasites lorsque le seuil est
trop faible comme en tmoigne la capture d'cran ralise avec un seuil de 0.05.
Ces mthodes ont t proposes en 1976 [Marr et Hildreth, 1980]. Elles ont eu une grande
importance historique, tant considres comme le prototype du dtecteur de contour inspire des
systmes biologiques Elles utilisent le fait que le passage par zro du Laplacien permet de bien
mettre en vidence les extremums de la drive [34]. Le Laplacien dune image reprsente sa
drive seconde. En effet, si par hypothse de dpart, la fonction image est suppose continue.
Alors les proprits de la drive seconde dune fonction sont utilises pour caractriser un
contour par la prsence dun extremum local par le passage zro de la drive seconde.
3.8
Ainsi en utilisant galement les proprits de diffrentiation loprateur Laplacien peut scrit
sous la forme suivante :
3.9
ou
Le filtre Laplacien 4-connexe a le mme principe que le filtre Laplacien 8-connexe.Ce qui
change est le masque utilis.
Voici le masque utilis pour ce filtre figure 3.14 Nous utilisons donc cette formule pour
appliquer ce filtre :
72
Figure 3.14 : Laplacien de limage
Nous remarquons que loprateur Laplacien est symtrique quelle que soit lorientation choisi, il
nest donc pas directionnel. Loprateur Laplacien est fortement sensible aux bruits. Ce qui nous
conduit essayer dattnuer les bruits par lemploi des filtres quon a dj implants dans les
chapitres prcdents.
La dtection des contours par Canny se droule en plusieurs tapes. Tout d'abord il s'agit de
rduire le bruit de l'image affin d'optimiser la dtection des contours. Ceci permet de rduire de
fortes rponses lors du calcul du gradient, conduisant ainsi de faux positifs. Un filtre Gaussien
est utilis afin de " lisser " l'image originale et donc de rduire le bruit.
Le filtre de Canny est bas sur lalgorithme de Sobel, il dispose dtapes supplmentaires qui
permettent de travailler sur des images plus complexes. Cette mthode permet, en changeant
lintensit de dtection de contour, dliminer les dfauts de linarisation et du bruit et en mme
temps davoir des contours larges. La largeur est importante pour lalgorithme de localisation par
corrlation qui suit cet algorithme de dtection de contour. Nous prsentons dans ce qui suit les
images obtenues par les diffrentes valeurs de avec un seuil = [3e-03 6e-02] ainsi la
combinaison des deux valeurs pour diffrencier la dtection des contours
73
Figure 3.15 : Filtre de Canny
Lapplication la plus simple permet didentifier la prsence de lignes dans une image. Elle peut
tre trs facilement tendue la reconnaissance de cercle aux dautres modles mathmatiques
simples. Il existe galement une transforme gnralise de Hough.
Le principe est le suivant. Par un point donn peut passer une infinit de droite
Si lon trace r en fonction de , on obtient une sinusode reprsentant lensemble des droites de
paramtre (r, ) passant par ce point. Cest ce que lon appelle espace de Hough . Si lon trace
74
alors une autre sinusode par un autre point, lintersection des deux sinusode donne la valeur de
(r, ) de la droite passant par ces deux points. On va donc chercher tracer pour lensemble des
points chacune des sinusodes correspondante dans lespace de Hough. On cherchera alors
savoir quels sont les lieux ou les courbes qui se croisent pour en dduire la prsence de droites.
Voici quelques figures de la transforme de Hough par la mthode de canny avec la valeur
sigma =2
75
Le rsultat du parcours et le trac des lignes par la transforme de Hough.
76
Dans cette partie nous distinguons que la dtection de contours est trs satisfaisante, puisqu on a
pu avoir les bords extrieurs du carr et le triangle avec la valeur de sigma gale 4.
Nous avons finalement opt, pour la dtection la plus simple, c'est--dire simplement en
appliquant un filtre de Canny. Car les rsultats observs en faisant des prtraitements n'taient
pas convaincants. La dtection de contours avec Canny n'est certes pas parfaite mais honorable,
et tous les prtraitements appliqus n'apportent aucun plus dans cette dtection de contours.
Cest lopration qui consiste dans une image binaire (forme/fonds) trouver toutes les classes
dquivalence de la forme, cest dire les diffrentes composantes connexes et les tiqueter.
L'tiquetage consiste attribuer chacune des rgions spares (composantes connexes) une
tiquette c'est--dire un numro unique qui sera attribu chacun des pixels appartenant une
mme composante connexe (objet isol). Exemple de la figure 3.16. Sur la notion de chemin
77
connexe : c et d peuvent tre relis sans avoir passer par le fond (chemin connexe), alors que a
et b ne peuvent tre relis sans avoir passer sur le fond (chemin non- connexe).
Exemple dalgorithme :
- Balayer les pixels de limage ligne par ligne et ne considrer que ceux de la forme (critre de
similarit, pixel 1,...).
Si le pixel na pas de voisin connexe dj tiquet, crer une nouvelle tiquette et
laffecter ce pixel.
Si le pixel a exactement un seul pixel connexe tiquet, lui affecter cette tiquette.
Si le pixel a plus dun pixel connexe (avec des tiquettes diffrentes) lui affecter une de
ces tiquettes et mmoriser que toutes ces tiquettes sont quivalentes.
- Refaire une passe sur limage en groupant les tiquettes quivalentes sur une seule tiquette
Partant d'une image binaire, trouver les groupes de pixels connects, appels composantes
connexes (connected components) ou blobs.
On obtient une image dans laquelle chaque objet est identifi.
Cette opration s'appelle analyse (ou tiquetage) en composantes connexes
(connected-component analysis / labeling, ou encore blob extraction)
78
.
Figure 3.17 : Etiquetage en Composantes Connexes
On cherche dtecter les diffrents objets dans limage, leurs positions et leurs formes en temps
rel. Le principe utilis dans ce programme consiste calculer, dans chaque image, la surface de
lobjet, en nombre de pixels, puis de comparer cette surface une valeur seuil, correspondant
dobjet dans limage (figure 3.17). Nous dcrivons le synoptique de lalgorithme mettre en
uvre [36].
79
3.2.6 La segmentation par LPE (Ligne de Partage des Eaux)
En morphologie mathmatique, l'algorithme de la ligne de partage des eaux (LPE), propos par
Digabel et Lantujoul, est un algorithme de segmentation d'images, ce qui revient dcomposer
une image en rgions homognes.
3.2.6.1 Dfinition
- minimum local : cest le point du plateau do on ne peut pas atteindre un point plus bas sans
tre oblig de remonter.
- bassin versant : cest la zone dinfluence dun minimum local. Une goutte deau scoulant dans
le bassin versant arrive au minimum local
- ligne de partage des eaux : Cest la ligne sparant 2 bassins versants (de cette ligne, une goutte
deau peut scouler vers au moins 2 minima locaux distincts).
On commence par gnrer limage du module du gradient c'est--dire les crtes correspondantes
aux contours, on obtient alors la figure suivante :
80
Figure 3.21 : Transformation de LPE Amplitude de Gradient
Puis on procde une valuation de la dtection de contours par la LPE et cela en dtectant les
contours ferms et faisant de la sur-segmentation
Lapplication dune dilatation et dune rosion nous sert dtecter les maximas rgionaux dans
limage.
81
Figure 3.24 : Ouverture et fermeture de LPE par reconstruction
On procde ensuite la superposition des maximas rgionaux sur limage dorigine puis on refait les
mmes oprations de dilatation et drosion. Ces diffrentes oprations nous permettent la dtection
des rgions dans limage et on les spare en utilisant des lignes appeles des lignes de partage des
eaux.
82
Figure 3.26 : Superposition des marqueurs et lignes de partages sur limage
On obtient enfin la matrice correspondante lapplication de ces contours et marqueurs et qui dfinit
les diffrentes rgions de limage.
Figure 3.27 : Matrice colore des rgions applique sur limage dorigine
83
3.3 CONCLUSION
Ce domaine cherche dtecter la prsence de certaines formes, certains contours ou certaines
textures dun modle connu, cest le problme de la dtection.
Chacune des mthodes de segmentation a ses avantages, mais a galement ses inconvnients. Comme dans la
plupart des problmes, c'est une histoire de compromis.
Les mthodes demandant des paramtres sont trs dlicates manipuler. Elles fonctionnent
correctement dans le cas o les paramtres sont choisis judicieusement. Il est vident pour une personne de
savoir si la segmentation est correcte, mais pour une machine cela pose rellement de grandes difficults.
Un aspect important lors du choix de l'une de ces mthodes est le temps d'excution.
Un bon prtraitement serait envisageable. Il permettrait d'amliorer considrablement le rsultat final. Chaque
mthode impose de concevoir un prtraitement adapt celle-ci. . Le rsultat de cette opration est une
image de mme dimension que limage dorigine mais dcrite par des pixels dont la valeur vari
de 1 r ; r est le nombre de rgions ou dtiquettes .On considre gnralement quil ne sagit
donc plus dun traitement bas niveau .Enfin cest le lien avec la description et la reconnaissance
quon va dcrire dans le chapitre suivant.
84
Description et Interprtation
Pour reconnatre une forme, il faut, au pralable la dcrire, c'est--dire lui attribuer des
caractristiques distinctives .La description et linterprtation est une tape essentielle dans tous
les systmes de vision artificielle. Une fois les objets isols du fond, tape suivante de la
reconnaissance d'objets est la description des caractristiques qui dcrivent les proprits de
lobjet bien que une interprtation des caractristiques (descripteurs) pour classifier les objets
traits, nous avons introduit lapproche corrlation qui est une mthode efficace et rapide
pour la localisation de certaines formes gomtriques. Les mthodes de reconnaissance de forme
proposes par Hough ou Freeman sont des mthodes dtude morphologique, mais elles
ncessitent un temps de calcul important dans le cas des formes gomtriques complexes.
tant donne que la corrlation est un outil de reconnaissance caractre global, la tche
essentielle dans la mise en oeuvre du corrlateur est la conception du filtre appropri.
4.1 Introduction
La forme est reconnue comme tant lune des principales caractristiques qui dcrivent le
contenu dune image. La perception des objets chez lhomme procde de lanalyse de la forme
des objets ainsi que des transformations gomtriques qui oprent sur les objets [37]. Cela revient
dire quun objet est reconnu comme appartenant une certaine catgorie dobjets que nous
connaissons (par exemple cette bote carre est une tl), et qui a subi des transformations
gomtriques (rduction dchelle ou rotation). Le problme fondamental en reconnaissance
dobjets est de dterminer dans quelle mesure deux objets sont similaires indpendamment de
leur pose et de leur orientation dans limage. Cest pourquoi la plupart des techniques de
reconnaissance/discrimination dobjets font appel une transcription de la reprsentation de
limage originale sous la forme de descripteurs invariants par rapport aux transformations
gomtriques. Ainsi, partir dun seul exemple dobjet, on peut dcrire tous les objets drivs
selon une rotation, une translation ou un changement dchelle.
Une fois les objets d'intrt isols, ltape suivante de la reconnaissance d'objets est la
reprsentation et description. Dans notre travail, l'image que nous avons choisie est un ensemble
de caractristiques qui dcrivent les proprits physiques des objets telles que: la forme, la
85
surface, le primtre, la largeur, la hauteur, le centre de gravit, l'orientation.
La couleur est un lment important pour la classification et la description de lobjet en vision
par ordinateur. Pour cela on a prfr utiliser simplement des objets en blancs pour faciliter la
dtection.
Etant donne les diffrentes complexits de formes que l'on peut rencontrer, la reconnaissance
dobjets dans les images base sur ces objets ou formes prsente trois problmes principaux :
La reprsentation de la forme elle-mme, la comparaison des mesures issues de cette forme avec
dautres valeurs de rfrence, et lidentification des formes. Parmi ces trois points, la
reprsentation de la forme est laspect le plus dlicat traiter. Plusieurs algorithmes le rsolvant
existent dj. Ils peuvent tre spars en deux catgories : les invariants de formes contours et
les invariants de forme rgions.
Dans le cas des invariants de formes contours, seuls les contours de lobjet sont exploits. Les
deux mthodes les plus utilises sont la chane du code de Freeman et les descripteurs de
Fourier.
Dans le cas des invariants rgionaux, tous les pixels lintrieur de la forme sont pris en compte.
Les invariants de cette catgorie les plus utiliss sont les moments invariants de formes tels que
ceux de Hu, Zernike ou les moments complexes.
Le code de Freeman est une mthode trs utile pour reprsenter le contour dun objet sur
les images. Cest une technique de reprsentation des directions. . Elle consiste dcrire le
contour dune forme en indiquant les pixels voisins immdiats par lune des 8 directions
possibles. Les 8 directions indiquent les 8 voisins immdiats possibles du pixel analys.
Le codage dun contour se fait donc de la facon suivante :
1. transmission des coordonnes absolues du point de dpart.
2. transmission de la liste des codes de dplacement dun point du contour au suivant sur le
maillage.
86
Le code de Freeman se fait une fois lobjet est localise. Le centre de lobjet et les coordonnes
de chaque pixel formant le contour, il sera possible de calculer la distance entre le centre de
lobjet et le contour.
Plusieurs critres peuvent tre identifis pour retrouver certaines informations morphologiques
ou critres gomtriques de lobjet. Cette solution sera dtaille dans la partie caractristique
gomtrique d'un objet.
On peut utiliser deux types de reprsentations : celle 4 directions et lautre 8 directions.
Chaque direction est code par un chiffre comme la montre la figure 4.1.
Ainsi le pixel de dpart peut tre redfinit de sorte que la squence de nombre forme le plus petit
entier possible. Daprs lexemple prcdent on aurait alors : 00667544442121.
Nanmoins cette mthode rend le code invariant la rotation si la forme elle mme est invariante
la rotation.
Outil permettant de dcrire lenveloppe externe dune forme, cest--dire son contour. Si on
considre un plan cartsien 2-D, le contour issu des Fourier descripteurs peut tre trac et
87
rchantillonn dans le sens des aiguilles dune montre de sorte trouver une distribution
uniforme de K points comme la montre la figure 3.3.
Chaque point peut tre reprsent par un couple de coordonnes (x0,y0), , (xK-1,yK-1). Ces
coordonnes peuvent tre exprimes autrement sous la forme x(k) = xk et y(k) = yk . On peut
donc reprsenter le contour du carr par une suite de points complexes :
4.1
La figure 4.3 prsente un exemple de reconstruction dun carr avec un nombre de coefficients
allant de 2 62. On voit bien que plus le nombre de coefficients est lev plus la reconstruction
est proche de loriginal.
88
Figure 4.3 : Exemple de reconstruction de contour partir des Fourier descripteurs P le
nombre de coefficients utiliss dans le processus de reconstruction.
4.2
Afin dimplmenter les descripteurs de Fourier, il faut que limage doit tre binarise (Image
binarization) par un seuillage (mthode dcrite dans 2.4 Binarisation -seuillage) .On se retrouve
donc avec une image avec seulement deux valeurs de pixels : soit 1 pour le blanc soit 0 pour le
noir.
Le trac de contour est une fonction qui renvoie les coordonnes X et Y de chaque pixel du
contour du caractre reconnatre. Le trac du contour commence partir du pixel se situant
lextrmit gauche du contour lorsquil est analys dans le sens des aiguilles dune montre.
Toutes les coordonnes sont sauvegardes dans une matrice 2xN. N est le nombre total de pixels
formant le contour. La premire ligne de la matrice reprsente les valeurs X, la deuxime les
valeurs de Y.
Pour calculer la transforme de Fourier de cette srie de nombres complexes, il est ncessaire de
rchantillonner uniformment les pixels du contour de limage de sorte ce quils soient au
nombre dune puissance de 2. Cette tape compte le nombre de pixels formant le contour de
lobjet et le rchantillonner un nombre fixe , dans notre cas le nombre vaut 42 et les
coordonnes des pixels rchantillonnes sont sauvegardes dans des matrices 2x42.
89
Les Fourier descripteurs permettent de passer dun problme 2-D un problme 1-D, tout
comme le code chane. Les Fourier descripteurs les plus importants peuvent tre utiliss comme
base pour la classification de diffrents types de contour.
Les moments Zernike sont dfinis comme des polynmes complexes qui forment un ensemble
4.3
o n est un entier positif ou nul ; m est un entier soumit des contraintes : n m est constant
et n m 0 ; r est a longueur du vecteur entre lorigine et le pixel de coordonnes (x,y) ;
est langle entre le vecteur et laxe des x mesur dans le sens des aiguilles dune montre ;
4.4
Le moment de Zernike dordre n de rptition m pour la fonction f(x,y) est dfinit comme :
4.5
Supposons que tous les moments de Zernike Anm de f(x, y) jusqu lordre N sont connus.
Daprs les proprits dorthogonalits des moments de Zernike, on peut reconstruire limage de
base parte de ces N moments laide de la formule suivante.
4.6
Les moments Zernike sont bien connus pour tre invariants la rotation.
90
Une normalisation dimage est ncessaire pour rendre ces moments invariants la translation et
au facteur dchelle.
4.3.1.1 Effet de la rotation
Dans notre base dimage (Figure 4.4), pour tester linvariance des moments Anm. Nous calculons
comme exemple les 5 premiers invariants de Zernike.
Nous avons utilis pour la reconnaissance seulement les invariants qui possde m=0, car ils sont
moins sensibles au bruit.
La taille de l'chelle spatiale d'une image peut tre obtenue en modifiant les coordonnes
cartsiennes de l'image source:
xi = axx' i 4.7
yj = ayy ' j 4.8
91
Calculer les deux facteurs d'agrandissement et (ou) de rduction ax et ay pour changer la taille
de l'objet une taille gale 42x42 pixels
Depuis la thorie des moments algbriques, H. Ming-Kuel a extrait une famille de sept invariants
par similitude plane (cest--dire rotation, translation et changement dchelle) appels invariants
de Hu [39]. Ces invariants dcoulent de combinaisons non linaires des moments gomtriques
centrs, rduits, dordre infrieur trois, extraits de limage.
Les moments gomtriques diffrent des moments statistiques car ils font intervenir la position
du pixel dans limage. En associant le niveau de gris dun point de limage la masse dun corps
en chaque point, on peut reprendre le mme formalisme pour dcrire la rpartition des niveaux de
gris dans un objet. Dans le cas dun objet binaire o g(k,l) prend la valeur 1 lintrieur (si le
point appartient lobjet) et 0 lextrieur, les diffrents moments fournissent des
informations importantes concernant larrangement spatial des points de lobjet [40].
Pour une image numrise et discrte de taille K*L, alors g(k,l) est la fonction dcrivant le
contenu de limage en chacun de ses points de coordonne k,l ; i et j tant deux entiers naturels
quelconques :
Mij est la dfinition du moment gomtrique dordre (i+j) avec la rptition |i - j|
M tf = K =1 i =1 ( K ) i (l ) j g (k , l )
K L
4.11
o g(k,l) est le niveau de gris de limage dfinie. (k)i (l)j est la base
Les moments gomtriques sont particulirement adapts pour traiter les changements dchelle.
Prenons 2 images, f et g reprsentant des objets identiques un facteur dchelle prs, c--dire
x y
g(x, y) = f ( , ) , alors la relation entre les moments centrs secrit :
4.12
92
Pour obtenir linvariance par rotation Hu [39] a construit un ensemble de 7 descripteurs appels
invariants de Hu. Les invariants de Hu sont devenus des outils classiques en reconnaissance
dobjets depuis les 30 dernires annes. Ces descripteurs sont construits partir de combinaisons
non-linaires des moments gomtriques :
Les moments invariants de Hu prennent en considration tous les pixels le limage ce qui induit
un temps de calcul des algorithmes autrement plus lev que pour les invariants contours. Cet
aspect est dautant plus marqu que le nombre de pixels de limage, donc la rsolution, est
leve.
Les six premiers moments sont invariants aux translations et aux changements, problmatique
Ces descripteurs sont invariants par rotation, translation et rapport dchelle mais ne constituent
pas une description invariante par rotation complte du plan. Beaucoup de travaux effectus
depuis ont cherch amliorer ces invariants et tenter de les gnraliser, mais aussi les utiliser
93
4.4 La corrlation
4.4.1 Dfinition
La corrlation est une mthode efficace et rapide pour la localisation de certaines formes
gomtriques. Les mthodes de reconnaissance de forme proposes par Hough ou Freeman sont
des mthodes dtude morphologique, mais elles ncessitent un temps de calcul important dans le
cas des formes gomtriques complexes (Hough) ou des contours discontinus (Freeman).
Son principe est trs simple et consiste comparer l'objet reconnatre (la cible), en gnral
figurant dans une scne et des objets prdterminants (base de connaissances).
Lalgorithme de corrlation est une mthode efficace qui permet de localiser une forme
bien prcise en corrlant un contour type avec les contours dtects dans limage (image de
rfrence). Lalgorithme de corrlation est sensible au changement de lchelle, mais reste assez
comptitif du fait que la mthode de dtection de contour de Canny nous permets de ressortir des
contours assez larges qui conviennent parfaitement la localisation par corrlation.
4.13
Problme de la rotation
- Soit on doit "tourner" l'objet, si certaines informations permettent de connatre l'orientation.
94
- Soit on doit "tourner" w(x,y) par petits incrments et tester toutes l'image plusieurs fois.
Problme du facteur dchelle
- Soit on a un indice quant la taille de lobjet.
- Soit on doit essayer de corrler lobjet diffrentes chelles.
Base de connaissances
95
Le modle parcours squentiellement l'image et la rgion commune entre le modle et le champ
d'image est compar pour la similitude.
Les rsultats obtenus travers l'opration de prtraitement sont des objets spars avec des
orientations et des positions inconnues, et pour appliquer la mthode de la correspondance de
modle sans parcourir le modle sur le champ d'image, la forme de lobjet est reprsente par le
centre de gravit, o le modle est compar avec la forme reconnatre.
Ce sont des mesures qui peuvent tre utilises pour dcrire un objet, nous les obtenons partir
des pixels qui composent la rgion de l'objet ou les pixels dduits partir du contour de l'objet.
Surface : La zone d'un objet dans une image binaire est gale la somme de tous des points
correspondants l'objet. Il balaye travers toutes les colonnes C et toutes les lignes R de
l'image la somme des pixels ajouts l'objet:
4 .14
Primtre -. La formule est semblable la zone, seuls les pixels sont ajouts au contour de
l'objet. Un pixel est un contour (voisinage N4).
Centre de gravit : Est un point gomtrique par rapport au centre de lobjet, les coordonnes de
ce point sont calcules en utilisant les formules suivantes:
4.16
4.17
Par exemple: Nous voulons calculer la surface, le primtre et le centre de gravit de l'objet
suivant
96
En appliquant la formule 1 nous obtenons le calcul de la surface:
Si l'on applique les formules 4.16 et 4.17 le calcul du centre de gravit est le suivant:
On arrondi les valeurs obtenues pour dterminer les coordonnes du centre de gravit donc nous
aurons : C (4,3).
Facteur de compacit (FC) : Cette fonction est trs importante et largement utilise pour la
classification. Elle est dfinie comme suit :
P est le primtre carr divis par 4 fois la surface de l'objet et compare ainsi la forme de
l'objet avec un cercle.
p
FC =
4 ( A)
Dans le tableau (4.1), nous observons que la valeur du facteur de compacit FC = 1 pour
les objets circulaires, un peu plus de "1" pour les objets carrs et grandes valeurs obtenues pour
les objets autres que du triangle.
L'importance de cette fonction est qu'elle est invariante au translations, rotations et changements
d'chelle.
97
Tableau 4.1 : Calcul de facteur de compacit des diffrentes formes
4.6 Conclusion
La reconnaissance est le processus qui attribue une tiquette un objet sur la base des
informations fournies par des descripteurs. Linterprtation conduit attribuer une signification
l'ensemble d'objets reconnus. Dans ce chapitre nous avons prsent quelques caractristiques
gomtriques d'un objet dans une image, Son principe est trs simple et consiste comparer
l'objet reconnatre (la cible), en gnral figurant dans une scne et des objets prdterminants
(base de connaissances) par le calcul de centre de gravit de lobjet, on amliorant le temps du
calcul et le taux de reconnaissance.
98
Mise en uvre du processus
Aprs avoir dcrit, les tapes prliminaires du processus de reconnaissance dobjets
dans limage, succdera la mise en uvre du processus dans le domaine industriel .Les
applications les plus simples peuvent parfaitement tre mise en uvre laide de matriel
standard : Webcam , PC. Cet quipement de base permet une mise en uvre logicielle de
lapplication envisage, il a lavantage considrable dtre flexible et de pouvoir sadapter aux
volutions des techniques de traitement. Dans ce chapitre nous avons pu intgrer une
application sous une seule interface graphique li par une camera des outils de traitement
dimages en temps rel ainsi une liaison directe par le port LPT1 vers un API (Automate
Programmable Industriel) pour une opration de tri et de contrle de qualit.
5.1 Introduction
La dernire tape du processus de dveloppement concerne limplmentation de lapplication en
fonction des technologies choisies. Dans ce cadre, nous avons appliqu ce projet en deux phases,
la premire phase qui porte sur le dveloppement dune application permettant dintgrer sous
une seule interface graphique la manipulation de la camra et dutiliser des outils de traitement
dimages en temps rel. Cette application sera dveloppe sous MATLAB laide du toolbox
GUIDE, la deuxime phase permet lutilisateur de visualiser lapplication par des outils de
vision industrielle.
Nous commencerons, tout dabord, par une prsentation de lenvironnement matriel et logiciel
utiliss pour le dveloppement de notre projet.
Dans cette section, nous prsenterons lenvironnement matriel et logiciel de notre travail.
-Un Micro-ordinateur
-Un Convoyeur
-Une camera
-Un Automate
-Capteurs
99
5.2.2 Environnement logiciel
5.2.2.1 Langage de dveloppement : MATLAB 7.9.0 (R2009b)
a) Quest ce que MATLAB ?
Unity pro est le logiciel de programmation des gammes dautomates :Modicon M340 ;Premium ;
Atrium et quantum : Il supporte les cinq langages de norme IEC 6113-3 qui sont : langage
blocs fonction (FBD), Langage contact (LD), Diagramme fonctionnel en squence(SFC) , liste
dinstructions (IL) et littral structur (ST).
100
La cration dun projet sous Unity Pro passe par plusieurs tapes afin de faciliter la tche
dautomatisation. Ces tapes sont :
1) Configuration matrielle.
2) Configuration du rseau.
3) Dfinition et dition des variables (variables lmentaires, structures, tableaux)
4) Structurer lapplication sous forme de tches, de sections et de modules fonctionnels.
5) Edition du programme dans les cinq langages de programmation mentionns prcdemment.
6) Compilation et simulation des programmes avant leur implmentation dans lautomate.
La premire chose faire est simuler le programme utilisateur et son transfert vers lautomate
pour de gnrer (compiler) le programme et ceci afin de vrifier quil ny a pas derreurs aussi
bien dans la configuration matrielle que dans la syntaxe du programme. Puis, le transfert du
projet vers lautomate.
Durant cette tape, nous avons vu que les automates programmables Schneider sont dots dun
logiciel de programmation trs performant qui est Unity Pro intgrant les cinq langages de
programmation normaliss et possdant une interface graphique interactive et simple utiliser.
Ce logiciel sera exploit par la suite pour la cration des programmes de notre application.
a) Introduction
Vijeo Citect est un logiciel pour un systme dacquisition et de contrle des donnes
(SCADA ou Supervisory Control And Data Acquisition), ce logiciel permet de grer et de
surveiller des processus de fabrication, de distribution et de gestion dinstallations.
Il est noter que le logiciel Vijeo Citect est un logiciel polyvalent pouvant tre utilis aussi bien
dans lindustrie que pour la Gestion Technique du Btiment, son utilisation en GTB permet de
grer lensemble de limmeuble, surveiller la consommation dnergie et les diffrentes alarmes,
commander louverture ou la fermeture des portes, commander lclairage, modifier la consigne
de temprature pour les systmes CVC, enfin bref, tout ce quon peut imaginer.
101
b) Caractristiques et avantages du logiciel Vijeo Citect
Le logiciel Vijeo Citect dispose de plusieurs caractristiques faisant de lui une solution de choix
pour la supervision des systmes de GTB, parmi ces caractristiques on peut citer les suivantes :
1- Analyse et prsentation de tendances historiques et en temps rels sous forme de courbes et
dhistogrammes (tel que la consommation dnergie lectrique des diffrents secteurs dun
btiment)
2- Gestion des alarmes (alarmes relatives aux systmes de scurit (anti-intrusion), alarmes
dclenches par des pannes dquipements tel que les quipements de CVC), de plus le logiciel
permet aussi la gnration de rapports donnant ltat des quipements ainsi que les diffrents
vnements enregistrs (alarmes, pannes,etc.).
3- Deux langages de programmation Cicode (langage volu) et CitectVBA.
4- Elments graphiques contenant Gnie, Super Gnie et objets ActiveX (ces lments vont tre
explicits plus loin dans ce chapitre).
5- Possibilit dutiliser des grappes (ou Cluster) permettant de regrouper plusieurs systmes de
contrle en un seul systme, ce qui permet de diminuer les couts, ainsi, si on utilise plusieurs
systmes de supervision pour des sites diffrents, on peut utiliser un Cluster pour les regrouper
un une seule station permettant de superviser les diffrents sites et donnant ainsi la possibilit de
comparer les donnes et tendances des diffrents sites.
102
5.3 Interface de lapplication MATLAB
Cette interface prsente le menu principal qui permet une sorte de passerelle pour accder
lapplication de reconnaissance dobjets dans une image
Tout dabord, nous saisirons limage traiter soit partir de la Webcam, si elle est connecte si
non on aperoit un message derreur que la Webcam nest pas connecte donc limage capture
est automatiquement se trouve dans le rpertoire de travail.
Le programme permet le passage dune image vido vers une image fixe quon va par la suite
traiter et analyser. Pour capturer une image il faut cliquer sur le bouton capture.
103
Figure 5.2: Interface Acquisition vido
Le bouton capture transmet la vido vers une image fixe, cette image couleur contient des
objets gomtriques.
Ensuite le bouton traitement est un programme qui excute tout les outils de traitements
dimages quon a abords tout en long de notre travail par une conversion dimage couleur en
niveau de gris ensuite un seuillage automatique puis nettoiera l'image de tous les objets inutiles.
Des oprations morphologiques mathmatiques (rosion, dilatation, ouverture, fermeture).
Enfin on isolera les diffrents objets et on les nommera (suivant le nombre de cte qui
constituent lobjet) et on calcule la surface de chaque objet .Grce ce programme, on peut
raliser toute une srie de traitements sur l'image.
104
Figure 5.4: Interface traitement image
Le bouton Localisation objet est un programme qui compte le nombre dobjets dans limage
puis sauvegard dans une matrice qui va calculer les limites de chaque objet dans toutes les
directions , puis le calcul du centre de gravit de chaque objet trouv par un marquage
* (astrisque) ensuite on sauvegarde lobjet dans une nouvelle matrice.
105
et aprs vrification dans la base de connaissances on identifiant lobjet puis on dsigne lobjet
par son nom.
TRI= Triangle
CER= Cercle
CAR= Carr
INC= Inconnu
Enfin nous avons pu raliser un programme qui peut reconnatre des formes gomtriques dans
une image pour une opration de tri et en mme temps un contrle de qualit suivant un temps
dexcution rapide pour une opration industrielle.
Afin de perfectionner notre Application MATLAB pour une fin industrielle, nous avons pens
lintgre dans une interface de vision homme machine qui facilitera une supervision en temps
rel.
106
5.3.2 Reconnaissance dobjets par Automate
Une deuxime ralisation consiste envoyer des signaux par le biais du port parallle (LPT1)
un automate qui actionne les bras poussoirs selon les caractristiques de lobjet.
A la fin de notre application de reconnaissance dobjets dans une image on dfinit trois variables
ob1, ob2 et ob3 comme suit :
Si le premier objet est un carr alors ob1= carr
Si le premier objet est un cercle alors ob1= cercle
Si le premier objet est un triangle alors ob1= triangle
Si le premier objet est ni carr, ni cercle et ni triangle alors ob1= n_reconnu
107
5.3.2.1 Communication entre le PC et lautomate
Lobjet de cette tape est de communiquer lautomate le type dordre des objets arrivant sur le
convoyeur (reconnus par la partie vision).
Les quatre lignes D1, D2, D3 et D4 du port parallle (LPT1) du Micro-ordinateur sont
connectes quatre entres de lautomate.
Pour indiquer quun objet est carr il faut mettre la ligne D1 1 pendant 0.5s.
Pour indiquer quun objet est circulaire il faut mettre la ligne D2 1 pendant 0.5s.
Pour indiquer quun objet est triangulaire il faut mettre la ligne D3 1 pendant 0.5s.
Pour indiquer quun objet est ni circulaire ni carr et ni triangulaire il faut mettre la ligne
D4 1 pendant 0.5s.
Lordre de mise 1 des quatre lignes correspond lordre de positionnement des objets sur le
convoyeur. Les figures suivantes reprsentent les squences D1 D2 D3 D4 envoyer
lautomate pour quatre exemples dimages.
108
Envoyer pendant 0.5s la squence 0010
Puis envoyer pendant 0.5s la squence 1000
Puis envoyer pendant 0.5s la squence 0001
Puis envoyer la squence 0000
109
5.3.2.2 Organigramme du programme de communication entre PC et
lautomate
Lorganigramme du programme permettant de raliser la communication entre PC et lautomate
est prsent par la figure 5.9 suivante :
Dbut
110FIN
5.4 Interface Homme-Machine ( IHM)
Linterface homme machine est dfinie comme tant le moyen matriel ou logiciel permettant
une personne de communiquer avec un programme (configuration ou supervision). Des exemples
d'IHM sont les fentres, les boutons et menus droulants.
Linterface est un programme cr pour simplifier laccs de lhomme la configuration ou la
mise en service dun matriel configurable par informatique. En effet, le cas le plus frquent dans
le domaine de la vision consiste avoir une interface visuelle pour la programmation et la
configuration.
Dans le cadre de notre travail, une interface est mise en place pour la configuration du systme
de commande. Pour concrtiser notre application via interface Vijeo Citect (figure 5.10), nous
allons dcrire un enchanement doprations dtailles successives et complmentaires dun
processus de reconnaissance dobjets pour une application de tri et contrle de qualit
La simulation consiste en :
La dtection par le premier capteur concomitant la camra, de lobjet entrane une
raction de lautomate consistant envoyer un signal au moteur actionnant le convoyeur
principal pour un arrt (BFI 26) permettant la camra de saisir limage. Laquelle image est
son tour envoye lordinateur charg danalyser et reconnatre lobjet de limage (FBI 31).
111
Il sagit en fait de la phase suivante du processus, car cest partir de l, que lautomate
reoit lordre dactionner les bras poussoirs.
Cette deuxime opration, initie par lcriture dun Mot correspondant lentre dtecte dans
un registre type FIFO, se poursuit par laction du 2me capteur plac avant les bras poussoirs que
lautomate actionne selon la valeur du Mot slectionn dans le registre FIFO.
La commande de lun de ses bras, pousse lobjet sur son convoyeur spcifique qui le
placera dans le bac correspondant (FBI 23, FBI 24, FBI 25).
Dans le cas de non dtection de lun des trois objets slectionns, cela entrane labsence de
signal vers lautomate, pargne lobjet, et le conduit vers le paletisseur des objets non reconnus.
Il est signaler que tout le processus se complte dans son aspect utilitaire et
applicationnel par lopration de comptage, lui-mme commande le changement des bacs, une
fois la capacit maximale atteinte (exemple 90 objets). Les dtails du programme Automate cit
en annexe B
5.5 Conclusion
A terme, cette tude peut conduire au dveloppement d'un outil d'analyse pouvant tre par
exemple appliqu l'tude de tri et de contrle de qualit dans une industrie lies la fabrication
des produits.
112
CONCLUSION GENERALE ET PERSEPECTIVES
La Vision par Ordinateur est la base de tout systme de vision artificielle qui prend en
entre une ou plusieurs images numriques, et qui effectue des traitements sur ces images afin
den extraire des informations relatives la scne observe.
La reconnaissance dobjet dans les images est une discipline qui, bien quelle soit encore
dans une phase de recherche et de perfectionnement, est utilise pour de nombreuses
applications. Elle permet un ordinateur de comprendre limage do un lien troit avec
lintelligence artificielle.
Dans ce projet, nous avons tent de btir un systme de reconnaissance dobjets dans une
image pour une application de tri et de contrle de qualit. Lobjectif est la recherche dobjets
dans des images : il sagira dimage unitaire et non pas de squences dimages.
Ce projet a t vraiment trs intressant car cela nous a permis dapprofondir et mettre
en pratique nos connaissances dans le domaine du traitement dimages mais aussi dtre
confront aux difficults des images relles : qualit, bruit, rsolution, etc
Il nous a fallu pas mal de temps pour rechercher les documents nous permettant de mener
terme ce projet, surtout en ce qui concerne lidentification et la localisation des objets dans
limage , le sujet est certes beaucoup trop vaste mais incontournable .Nous sommes confronts
des difficults dacquisition ; puisque nous avons utilis une simple camra Webcam qui nest
pas destine lusage industriel, ainsi que l'clairage qui est l'aspect le plus critique de toute
application de vision artificielle, car si l'image est bien claire le processus de reconnaissance
dobjets peut atteindre de trs bon rsultats.
Lacquisition dimage, nous permet de rcuprer les donnes dune image en temps rel
tout en visualisant limage, cette fonction nous donne en retour limage que lon exploite sous
forme matricielle. Celle-ci montre trois matrices reprsentant limage dans les couleurs de base.
Notre travail est justifi par une transformation dimage en niveau de gris puisque les
algorithmes de traitement dimages sont trs coteux en temps dapplication.
Nous avons analys quelques points trs importants dans la reconnaissance dobjets, de la faon
d'appliquer toutes sortes de mthodes de filtrage pour liminer le bruit d'image, nous avons mis
une mthode pour la segmentation d'images sur un fond blanc , les objets en noir , cest une
tape de binarisation , nous avons introduit lapproche corrlation qui est une mthode efficace
et rapide pour la localisation de certaines formes gomtriques. Les mthodes de reconnaissance
de forme proposes par Hough ou Freeman sont des mthodes dtude morphologique, mais elles
ncessitent un temps de calcul important dans le cas des formes gomtriques complexes ou des
113
contours discontinus (Freeman). Lalgorithme de corrlation est une mthode efficace et simple
qui permet de localiser une forme bien prcise en corrlant un contour type avec les contours
dtects dans limage (image de rfrence). Lalgorithme de corrlation est sensible au
changement de lchelle, mais reste assez comptitif du fait que la mthode de dtection de
contour de Canny nous permet de ressortir des contours assez larges qui conviennent
parfaitement la localisation par corrlation.
Dans ce projet, nous nous sommes intress aux dfauts de forme. Concernant
lidentification de dfauts par les deux mthodes connues, Hough ou Freeman, lalgorithme de
traitement sapplique une fois que lobjet est localis par corrlation.
En dernier, la phase exprimentale ou lapplication par le langage MATLAB pour valider
la conception thorique du processus de reconnaissance dobjets .Apres cette ralisation, une
deuxime ralisation consiste concrtiser une fin industrielle un outil dinterface de vision
Homme machine ( HMI) qui facilitera une supervision en temps rel.
Nous avons montr que, Vijeo Citect constitue une solution complte et homogne dans le
domaine industriel.
Nous avons implant un automate programmable qui servira lchange des donnes via
lapplication Matlab par le port LPT1.
Apres plusieurs tests des images acquises par la Webcam et des images obtenues de faons
alatoire ,le taux de reconnaissance obtenu (90 %) est trs satisfaisant, mais comme dans toute
les applications ,des amliorations restent toujours apporter.
De grandes perspectives sont prvisibles aprs ce mmoire, comme le fond de la scne (le
tapis du convoyeur) qui joue un rle important en simplifiant les tapes de traitement dimages
(telles que la segmentation). Il doit tre aussi homogne que possible pour permettre didentifier
facilement les objets. Toute tache dans l'arrire-plan, peut causer des erreurs dans la phase de
reconnaissance. Aussi lun des problmes les plus importants dans le monde de la vision est
lclairage, le champ de vision risque dtre perturb par le changement de la luminosit
ambiante, o la moindre fluctuation de la luminosit, engendre des rponses non conformes.
En ce qui concerne la camra, elle doit d'abord tre choisie en fonction de la dynamique de
lobjet sur le convoyeur au moment de l'acquisition. Si le convoyeur est l'arrt, toutes les
camras conviendront. Si par contre lobjet ne s'arrte pas devant la camra, il est recommand
de choisir une camra progressive, capable de synchroniser l'acquisition avec le passage de
lobjet tout en gardant sa pleine rsolution.
114
On utilisera une camra numrique haute rsolution (plus chre et plus lente quune camra
rsolution standard) lorsquelle apporte effectivement un gain en prcision ncessaire.
En terme de notre perspective, lun des axes principaux damlioration du rsultat de ce projet
est dutiliser des objets couleurs tridimensionnels et dintgrer deux camras du type
stroscopique.
115
BIBLIOGRAPHIE
[2] Horaud Radu et Monga Olivier, Vision par ordinateur : outils fondamentaux
INRIA Deuxime dition mai 2011.
[3] Umbaugh S. E, Computer Vision and Image Processing : A Practical Approach Using
Cviptools, Anne 1998.
[6] N. Zuech, Marcel Dekker, Understanding and Applying Machine Vision Deuxime
Edition, Anne 2000.
[7] H. R. Myler, "Fundamentals of Machine Visions", Vol. TT33, SPIE Press, 1999.
[9] Horaud Radu et Monga Olivier, Vision par ordinateur : outils fondamentaux
INRIA Deuxime dition mai 2011.
[10] Benoit Alexandre, Le systme visuel humain au secours de la vision par ordinateur
Anne 2007.
116
[19] Jacky Desachy, cours informatique analyse dimages version 1.3 janvier 2001.
[20] Gonzole Raphael, woods Richard, Eddin steven, Digital Image Processing using Matlab
dition 2004.
[21] Gerard Blanchet, Maurice Charbit, Digital Image Processing using Matlab dition
2006.
[22] J. Max, J.L Lacoume, Mthodes et techniques de traitement du signal, Anne 2004.
[23] Wikipdia
[25 ] J. W. Tukey, Non linear method for smoothing data, in Conf. Rec. EASCON1974,
P. 673.
[27 ] J. P. Cocquerez, J. Devars, Dtection de contours dans les images ariennes: nouveaux
oprateurs, Traitement du Signal, Vol. 2, no. 1, pp. 45-65, 1985.
[30 ] Etienne Corteel et Jrme Lavadou, Comparaison entre les filtres de Tomita/Tsuji et de
Nagao/Matsuyama Projet MBAI - Mars 2000.
[35] Phan Viet Anhe, Dveloppement dun module de segmentation pour un systme de
reconnaissance biomtrique bas sur liris, novembre 2008.
[36] Bellal Se, Mouss L.H et Bensaadi Rafik , Un processus de reconnaissance dobjets dans
une image pour une application de tri ,ICIEM 2012.
[37] Stphane Derrode , Reprsentation de formes planes niveaux de fris par diffrentes
approximations de Fourier-Mellin analytique en vue dindexation de bases dimages,
Anne1999.
117
[38] Pratt, William K, Digital Image Processing, quatrieme edition USA 2007.
[39] M.K. Hu, Visual Pattern Recognition by moment invariants. IRE Trans. Inform.
Theory, 8 :179187, 1962.
[41] Olivier Caignart, Dtection dobjets dans les images spot, Anne 2003.
118
Les techniques dclairage dans le domaine de vision par le tableau ci dessous :
119
On Axis Lighting)
-Dome Illuminator
120
121
122
123
124
125
126