Matrices image et histogramme obtenus avec IMLAB :



Documents pareils
IMAGES NUMÉRIQUES MATRICIELLES EN SCILAB

Projet Matlab/Octave : segmentation d'un ballon de couleur dans une image couleur et insertion d'un logo

Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS

TP SIN Traitement d image

Projet Matlab : un logiciel de cryptage

INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX

Guide d utilisation 2012

Séries Statistiques Simples

L analyse boursière avec Scilab

Tapez le titre de la page «BASTIA ville méditerranéenne», puis allez deux fois à la ligne à l aide de la touche Entrée.

ou clic objet. R rouge B bleu : 65 Le fond votre travail en P :. d étoiles dupliquer. Esbly Page 1 / 5

S.P.S.N. Lac du Der 2008


TP : Gestion d une image au format PGM

Pop-Art façon Roy Liechtenstein

PRISE EN MAIN D UN TABLEUR. Version OPEN OFFICE

Planète Multimédia. Voici le logo qu il faut choisir : et tapez sur puis acceptez.

t 100. = 8 ; le pourcentage de réduction est : 8 % 1 t Le pourcentage d'évolution (appelé aussi taux d'évolution) est le nombre :


Adobe Illustrator Logiciel de dessin vectoriel et de Cartographie Assistée par Ordinateur

1) Installation de Dev-C++ Téléchargez le fichier devcpp4990setup.exe dans un répertoire de votre PC, puis double-cliquez dessus :

Utilisation du logiciel Epson Easy Interactive Tools

Analyse de la vidéo. Chapitre La modélisation pour le suivi d objet. 10 mars Chapitre La modélisation d objet 1 / 57

[WINDOWS 7 - LES FICHIERS] 28 avril Logiciel / Windows

Date M.P Libellé Catégorie S.Catégorie Crédit Débit Solde S.B

GUIDE DE DÉMARRAGE. SitagriPro Infinite FINANCEAGRI. Un service. c o r p o r a t e

Statistique : Résumé de cours et méthodes

Guide de démarrage rapide. (pour la version 5.0.)

Comment optimiser dans ImageReady?

Merci de suivre les indications suivantes afin de créer votre compte membre :

Création de maquette web

Designer d escalier GUIDE DE L UTILISATEUR. Stair Designer-1

Utiliser ma messagerie GMAIL

Projet de Traitement du Signal Segmentation d images SAR

Sommaire. 2. Utiliser la télécommande Télécommande Administrateur Télécommande Utilisateur Échanger une télécommande...

Troisième projet Scribus

L espace de travail de Photoshop

KompoZer. Composition du site : _ une page d'accueil : index.html. _ une page pour la théorie : theorie.html. _ une page pour les photos : photos.

VOCABULAIRE LIÉ AUX ORDINATEURS ET À INTERNET

Leçon N 4 : Statistiques à deux variables

- affichage digital - aiguille

Les images numériques. 1. Le dessin vectoriel

Guide d utilisation des fichiers bonus accompagnant le guide «L Argent est une science exacte»

Calibrage du moniteur avec Monitor Profiler de Little CMS

Traitement des données avec Microsoft EXCEL 2010

Opérations de base sur ImageJ

COPY. Picture Style Editor Ver. 1.4 MODE D EMPLOI. Logiciel de création de fichiers de style d image. Contenu de ce mode d emploi

SOMMAIRE. Présentation assistée sur ordinateur. Collège F.Rabelais 1/10

PRISE EN MAIN D ILLUSTRATOR

Fête de la science Initiation au traitement des images

Si vous décidez d utiliser un autre chemin, c est ce nouveau chemin qu il faudra prendre en compte pour la sauvegarde. Cf. : Chapitre 9 Sauvegarde

Manuel de mise en page de l intérieur de votre ouvrage

Guide de l utilisateur Mikogo Version Windows

Le traitement du 5ème concours A.I.P. pour l objet SH2-155 de Franck JOBARD

les Formulaires / Sous-Formulaires Présentation Créer un formulaire à partir d une table...3

Tp_chemins..doc. Dans la barre "arche 2" couleur claire 1/5 21/01/13

Le logiciel de création de site internet IZISPOT est un outil très puissant et qui est assez simple après quelques temps d utilisation.

Tutoriel BLOGGER. Pour vous donner une idée, voici un exemple de blog :

Lightroom. Chambre noire numérique. Organisation. Lightroom Catalog.lrcat. Lightroom Catalog Previews.lrdata 2005, 2006, 2007

Manuel d Utilisation Nouvelle Plateforme CYBERLIBRIS : ScholarVox Management

La Clé informatique. Formation Excel XP Aide-mémoire

Création WEB avec DreamweaverMX

DÉCOUVERTE DE CAPTURE ONE

Jean Dubuffet AUTOPORTRAIT II

Cliquez sur le lien «Vous n'avez pas d'identifiant Adobe?» afin de vous créer un identifiant Adobe.

Chap17 - CORRECTİON DES EXERCİCES

LES TOUT PREMIERS PAS

Le Rapprochement Bancaire. Mode d'emploi

Traitement d un AVI avec Iris

Mon aide mémoire traitement de texte (Microsoft Word)

Installation et utilisation de Cobian Backup 8

Hiver 2013 IMN 259. Introduction à l analyse d images. Par Pierre-Marc Jodoin

Utilisation de l éditeur.

UTILISATION D'UN RADIOCHRONOMETRE POUR DATER DES GRANITES

Soit la fonction affine qui, pour représentant le nombre de mois écoulés, renvoie la somme économisée.

Unity Real Time 2.0 Service Pack 2 update

Studio. HERITIER Emmanuelle PERSYN Elodie. SCHMUTZ Amandine SCHWEITZER Guillaume

Chapitre 22 Optimisation pour diffusion à l'écran, pour le web

Saisissez le login et le mot de passe (attention aux minuscules et majuscules) qui vous ont

Les bases de l étalonnage avec Adobe Premiere Pro Formation de Duduf

Ecran : Processeur : OS : Caméra : Communication : Mémoire : Connectique : Audio : Batterie : Autonomie : Dimensions : Poids : DAS :

GUIDE UTILISATEUR. Guide utilisateur. Logiciel version 7 Documentation version 8

Se repérer dans l écran de Foxmail

Les différentes étapes à suivre pour la création d un feuillet

GUIDE D UTILISATION DU BACKOFFICE

Les outils numériques permettant l enregistrement de documents audiovisuels diffusés sur Internet sont nombreux. Certains sont gratuits.

Choisir entre le détourage plume et le détourage par les couches.

LA RUBRIQUE ARCHIVES EN LIGNE DU SITE INTERNET - MODE D EMPLOI

Contrôle Parental Numericable. Guide d installation et d utilisation

Avant-propos FICHES PRATIQUES EXERCICES DE PRISE EN MAIN CAS PRATIQUES

UNE TECHNIQUE ÉPROUVÉE : LE ZONE SYSTEM

Gestion des documents avec ALFRESCO

Eclipse atelier Java

Manuel d utilisation de l outil collaboratif

Calc 2 Avancé. OpenOffice.org. Guide de formation avec exercices et cas pratiques. Philippe Moreau

Securexam pour le programme CPA,CGA

1. Utilisation du logiciel Keepass

Espace pro. Installation des composants avec Firefox. Pour. Windows XP Vista en 32 et 64 bits Windows 7 en 32 et 64 bits

LIMESURVEY. LimeSurvey est une application permettant de créer des questionnaires d enquête en ligne et d en suivre le dépouillement.

Transcription:

IMAGE, SCILAB et IMLAB Jacques Bretin Les logiciels Scilab Dans un premier temps, télécharger (gratuit) et installer scilab-5.1.1 http://www.scilab.org/download/index_download.php?page=release#windows Puis télécharger sivp-0.5.0 (gratuit). http://fr.sourceforge.jp/projects/sfnet_sivp/releases/ Il s installe dans le répertoire où est installé scilab dans C:\Program Files\scilab-5.1.1\contrib\SIVP-0.5.0. Sivp est une boîte à outil pour le traitement des images essentiel à l analyse des images dans scilab: on ne peut rien faire sans cette boîte. Dans le répertoire SIVP-0.5.0, lancer «builder.exe» Doit apparaître sur la console de scilab un onglet «boîte à outils» : il faut lancer SIVP à chaque ouverture de scilab pour pouvoir utiliser les fonctions de sivp. (boîtes à outils/sivp) Les bibliothèques doivent être chargées (cf ci-contre) IMLAB Un autre bon outil indispensable pour l analyse des image est le logiciel IMLAB (gratuit) : on peut très facilement ouvrir une image, obtenir la matrice image, l histogramme, et faire une tapée de choses sur les images. Matrices image et histogramme obtenus avec IMLAB :

II. Représentation d une image numérique Une image numérique «noir & blanc», c est-à-dire en 256 teintes de gris, est représentée par une matrice n*p dont les nombres sont des éléments de Z/256Z. Chaque nombre de la matrice correspond à la teinte d un pixel de l image. 0 correspond au noir, 255 au blanc. Imlab donne cette matrice avec la teinte du pixel en fond de cellule. L histogramme associé à l image donne la quantité de pixels ayant une teinte de gris donnée. Une image numérique «couleur», c est-à-dire en 256 teintes de rouge, vert et bleu, est représentée par une matrice n*p*3 dont les nombres sont des éléments de Z/256Z. X(10,5,1), X(10,5,2), X(10,5,3) sont des nombres de Z/256Z correspondant aux composantes rouge, vert, bleu du pixel de la 10 ème ligne et 5 ème colonne. Sur la figure ci-contre (extrait de la matrice d une image couleur), le 1 er pixel en haut à gauche a une couleur de 42 rouge, 23 vert et 51 bleu. Chaque image couleur a 4 histogrammes : Un pour chaque couleur et un correspondant à la luminosité globale du pixel (doit correspondre à la moyenne des 3 nombres r,v,b).

III Dans Scilab : premiers pas (image noir&blanc) Après avoir lancé Scilab et ouvert la boîte à outil sivp : Importation d une image : imread. Je veux importer une im age (nathangris.jpg) placée dans le lecteur F (cf ci-dessous). X est une matrice (n,p) de n lignes et p colonnes de nombres entiers entre 0 et 255. Attention : ces nombres sont dans Z/256Z (255+1=0). Ils ont le format «uint8». Voir l image : imshow. imshow permet de «voir» la matrice ; cela déclenche l ouverture de la fenêtre «image show») X(1 :10,1:5) (sans «;») montre l extrait de la matrice (lignes de 1 à 10, colonnes de 1 à 5). La matrice ci-dessous (avec les teintes de gris est obtenue avec Imlab) Size(X) : donne la taille de la matrice. Ici l image a 101 lignes et 150 colonnes. Size(X,1) : donne le nombre de lignes. Size(X,2) : donne le nombre de colonnes.

Histogramme de l image : imhist(x) renvoie une matrice 256*2,correspondant au nombre de pixels de chaque teinte. Sur l exemple, il y a 334 pixels ayant la teinte 0 (noir). Il y a 16 pixels ayant la teinte b(17) =16. b(1) =0, b(2)=1 b(256)=255. la matrice vecteur colonne est constitué du nombre de pixels des teintes de 0 à 255. bar(imhist(x)) ouvre une nouvelle fenêtre (Figure n 0) et affiche l histogramme : On peut régler l épaisseur des barres (ici 0.1), régler la couleur de l intérieur des barres (non visible ici : trop fin ; avec edit/figure on peut changer la couleur des bords des barres). Avec edit/axes, on peut améliorer l aspect du graphique Médiane, quartiles et moyenne, écart type : median(x) renvoie la médiane quart( double(x)) renvoie une matrice de 3 lignes : Q1, médiane et Q3. double(x) transforme les entiers de Z/256Z en réels, nécessaire pour le calcul des quartiles. mean(double(x)) calcule la moyenne stdev(double(x)) calcule l écartype.

IV. Opérer sur les images avec scilab 1. Eclaircir une image Créons une «mire» constitué de 256 pixels (matrice 16*16) ayant les teintes de 0 à 255 : Fonction à taper dans l éditeur (Applications/editeur), puis à charger dans scilab (Exécuter/charger). Il ne reste plus qu à exécuter la fonction dans la console de scilab (la matrice mire est définie par mire=couleur()), transformer la matrice réelle en matrice d image (nombres dans Z/256Z) (mire=uint8(mire)) puis sauver l image par imwrite (imwrite( F:\mireoriginale.jpg ) ). Il ne reste plus qu à ouvrir cette image par photoshop (pour l éclaircir par exemple) ou par Imlab (pour visionner la matrice avec les teintes) : Mire originale Mire éclaircie de 20 par photoshop On voit que pour éclaircir de 20, on ajoute 20 à toutes les teintes des pixels sans dépasser 255. 1 ère idée : Cela revient à faire dans scilab : mireplusclaire =mire+20 La matrice mireplusclaire est égale à la matrice mire telle que, chaque nombre de mire est augmenté de 20 (donc plus clair). 0,1,2,3. deviennent 20,21,22,23 sauf que 235, 236, 237 255 deviennent 255,0,1,2,..29 Si on éclaircit trop, la méthode pose un problème : les nombres ne peuvent dépasser 255, aussi la somme se fait modulo 256 : les pixels dont le code dépasse 255 (blanc) vont dévenir très foncés

2 ème idée : Améliorons la méthode : Explications : mireplusclaire= double (mire)+20 : La matricemireplusclaire est égale à mire mais les nombres sont des réels (double) au lieu d entiers modulo 256. T(1 :16,1 :16)=255 : T est une matrice de même dimension que mire (16*16) et est remplie de 255. mireplusclaire=min(t,mireplusclaire) : les nombres de mireplusclaire qui dépassent 255 deviennent 255. mireplusclaire =uint8(mireplusclaire) : les nombres de mireplusclaire sont transformés en entiers de 8 bits (code image) au lieu d être des réels. mireplusclaire redevient une matrice d une image en 256 teinte de gris et peut être affichée. On a bien obtenue ce qu on cherchait : une matrice d image ayant la teinte de chaque pixel augmentée de 20. 3 ème idée : on regarde l aide SIVP En fait, il y a une commande SIVP qui fait tout cela tout seul!!! : imadd : commande SIVP qui additionne 2 matrices images ou une matrice et un nombre sans dépasser 255 ; le résultat est une matrice image qui peut être affichée.

Application à Nathan : 2. Foncer une image. imsubtract: commande SIVP qui soustrait 2 matrices images ou une matrice et un nombre sans dépasser être négatif ; le résultat est une matrice image qui peut être affichée. 3. négatif d une image. imcomplement : donne le négatif Cela revient à faire nathannegatif= - nathan +255 : la teinte t de chaque pixel est remplacée par 255 t. 4. contraster une image. Laa même image avec plus ou moins de contraste : (réalisé avec la fonction contraste de photoshop)

Dans les opérations de contraste ou de «décontraste», moyenne et médiane ne se modifient pas ou peu, en revanche quartiles et écart type sont modifiés : contraster : écart type augmente décontraster : écart type diminue L idée est de modifier les teintes en faisant une homothétie centrée sur la médiane avec rapport >1 pour contraster et <1 pour décontraster. Fonction contraste à entrer dans l éditeur et à charger dans scilab: L écart type et les intervalles interquartiles ont grandi : le contraste a augmenté. Médiane fixe et moyenne presque fixe.

«Décontrastons» Nathan : Les intervalles interquartiles et l écart type ont diminués, médiane fixe et moyenne presque fixe : l image est moins contrasté que l image de nathan original. Voyons sur la mire : Original contraste 1,5 contraste 0,5

Contraste 1,5 Original Contraste 0,5 On peut s intéresser aux 2 fonctions f 1,5 et f 0,5 qui à chaque teinte de l original (de 0 à 255) associe la teinte correspondante de l image contrastée (f 1,5 ) et de l image décontrastée (f 0,5 ). Utilisons un tableur et entrons les nombres (extraits). (rigolo à programmer par des formules)

250 200 150 f1,5 f0,5 100 orig 50 0 0 50 100 150 200 250 La médiane de la mire est 127,5 qui est le point fixe de l homothétie qui contraste. Ces fonctions semblent à peu près affine ou affine par morceaux (à peu près car on est sur des entiers). Fonction f 0,5 : f 0,5 (0)=63 et f 0,5 (255)=191 et f 0,5 (127,5)=127,5. Donc la pente est (191-63)/255 0,5. On peut essayer la fonction x E(127,5+0,5(x-127,5)). Une vérification sur le tableur confirme Fonction f k (k<1) : x Ent(médiane+k*(x-médiane)) (normal vu de la programmation de contraste) Fonction f 1,5 : (partie entre 43 et 213, avant c est 0 et après c est 255) f 1,5 (43)=0 et f 1,5 (213)=255. Donc la pente est 255/(213-43) = 1,5. On peut essayer la fonction x E(127,5+1,5(x-127,5)) pour la partie oblique. Une vérification sur le tableur confirme ce résultat. Fonction f k (k<1) : x Ent(médiane+k*(x-médiane)) sur [E(m*k/(k-1)+1) ;255- E(m*k/(k-1))] (à 1 près)

V. Bruitage 1. Bruiter une image X(1 :100,1:100)=128 construit une matrice 100*100 remplie du gris moyen 128 XX=uint8(X) transforme cette matrice X en une matrice image : Image et histogramme de l image XX. Y=grand(100,100,'nor',0,1) fabrique une matrice 100*100 remplie de nombres aléatoires (loi normale centrée en 0 et d écart type 1) T = X+Y ; TT=uint8(T) ; T est X bruité de Y, TT est l image obtenue : On peut créer une fonction «bruit(t,a)» qui bruiterait une image T (a étant l écart type de la loi normale). function [Z] =bruit(t,a) Z=double(T);n=size(T,1);p=size(T,2); M(1:n,1:p)=0;N(1:n,1:p)=255; Q=grand(n,p,'nor',0,a);Z=Z+Q; Z=max(Z,M);Z=min(Z,N) ; Z=uint8(Z); endfunction Bruitons Nathan (qui est maintenant dans la matrice X eh oui il a quitté la matrice de la mère)

Original nathangris Nathan bruité 2. Débruiter une image Plusieurs méthodes existent, plus ou moins efficaces. Méthode 1 : On parcourt l image par un carré de (2a+1) pixels de côté. Le pixel central du carré de l image «débruitée» a pour valeur la médiane des (2a+1)² pixels de l image bruitée. function [Z]= debruit1(t,a) n=size(t,1); p=size(t,2); Z=T;Z(:,:)=0; for ligne = a+1 : n-a for colonne = a+1 : p-a M=T(ligne-a:ligne+a,colonne-a:colonne+a); b=median(m); Z(ligne,colonne)=b; end end endfunction

Débruité 1 (a=2) Débruité1 (a=1) original bruité débruité 1 (a=1) La méthode débruite mais : 1) cela rend flou 2) il y a une perte d information, perte de contour débruité original +128 Information perdue = débruité bruité+128 perte de contour

C EST TOUT POUR L INSTANT.. autres méthodes de débruitage pour bientôt.