Forums Tutoriels Magazine FAQs Blogs Projets Chat Newsletter Études Emploi Club

Forums Tutoriels Magazine FAQs Blogs Projets Chat Newsletter Études Emploi Club Contacts EDI 4D Delphi Eclipse LabVIEW NetBeans MATLAB Visual Studio WinDev Visual Basic 6 Lazarus Qt Creator Accueil MATLAB Forums MATLAB FAQ MATLAB Tutoriels MATLAB Livres MATLAB Sources MATLAB Introduction à la gestion des images sous MATLAB Tour d'horizon des possibilités offertes par MATLAB Table des matières Avant propos I. Formats de fichiers supportés I-A. Formats supportés nativement par MATLAB I-B. Formats supportés via les Toolbox I-C. Formats supportés via des contributions du File Exchange II. Outils de gestion des images II-A. Les fonctions MATLAB II-B. Les Toolbox II-C. Les images tests II-C-1. Images fournies avec MATLAB II-C-2. Images fournies avec l'Image Processing Toolbox II-C-2-a. Images au format JPEG II-C-2-b. Images au format TIFF II-C-2-c. Images au format PNG III. Représentation des images III-A. Matrice image III-B. Objets graphiques représentant les images III-B-1. L'objet Image III-B-2. L'objet Surface IV. Ressources disponibles V. Les images cachées (Easter Eggs) Remerciements Cet article est une introduction à la gestion des images sous MATLAB. Contenu : dans un premier temps, il récapitule les différents formats de fichiers images supportés. Les outils permettant de gérer les images sont ensuite brièvement présentés. Puis la représentation des images est abordée. Des liens pour s'initier ou se perfectionner au traitement d'images sont ensuite répertoriés. Pour conclure sur une note moins sérieuse, quelques Easter Eggs relatifs aux images sont dévoilés. Public visé : sans être destiné aux novices, cet article vise un public débutant avec l'utilisation des images sous MATLAB. Votre avis et vos suggestions sur cet article m'intéressent ! Alors après votre lecture, n'hésitez pas : 7 commentaires L'auteur Jérôme Briot L´article Publié le 29 octobre 2007 - Mis à jour le 15 novembre 2012 Liens sociaux Avant propos▲ MATLAB est un langage initialement créé pour traiter des problèmes d'analyse numérique. Il est optimisé pour le calcul matriciel et convient donc parfaitement pour la manipulation et le traitement d'images numériques. Ces dernières sont en effet représentées par des matrices à 2 ou 3 dimensions. Cet article est avant tout une présentation générale de la gestion des images sous MATLAB. Il n'a pas pour vocation à aborder les notions de manipulation ou de traitement d'images. Les liens donnés en fin d'article permettront au lecteur d'approfondir les notions abordées ici. Certaines parties de cet article sont évolutives (par exemple, le tableau de la première partie) et seront mis à jour au fur et à mesure. Accueil ALM Java .NET Dév. Web EDI Langages SGBD Office Solutions d'entreprise Applications Mobiles Systèmes Gestion des images sous MATLAB http://briot-jerome.developpez.com/matlab/tutoriels/introduction-gestio... 1 sur 10 17/02/2013 10:15 I. Formats de fichiers supportés▲ Les opérations de lecture/écriture des fichiers contenant des images sous MATLAB sont grandement simplifiées grâce à des fonctions toutes faites qui sont disponibles soit : sous MATLAB nativement (imread, imwrite, print) dans les Toolbox dédiées aux images (Image Acquisition, Image Processing, Mapping) sur le File Exchange du MATLAB Central sur le web Si vous constatez une erreur ou si vous souhaitez qu'une fonction soit ajoutée aux tableaux suivants, contactez en priorité l'auteur de cet article ou le responsable de la rubrique MATLAB sur Developpez.com I-A. Formats supportés nativement par MATLAB▲ Format Lecture Ecriture BMP imread imwrite, print CUR imread EMF print EPS print GIF imread imwrite HDF imread imwrite ICO imread ILL print JPEG/JPEG2000 imread imwrite, print PBM imread imwrite, print PCX imread imwrite, print PGM imread imwrite, print PNG imread imwrite, print PNM imread imwrite, print PPM imread imwrite, print RAS imread imwrite, print TIFF imread imwrite, print XWD imread imwrite I-B. Formats supportés via les Toolbox▲ Format Lecture Ecriture Toolbox Analyze 7.5 analyze75read Image Processing DICOM dicomread dicomwrite Image Processing FITS fitsread fitswrite Image Processing GeoTIFF geotiffread geotiffwrite Mapping HDR hdrread hdrwrite Image Processing NITF nitfread Image Processing I-C. Formats supportés via des contributions du File Exchange▲ Si le format de fichiers que vous souhaitez ouvrir ne figure dans aucun des deux tableaux ci-dessus, ou que vous ne possédez pas les Toolbox, effectuez une recherche sur le File Exchange. Pour plus d'informations sur les codes disponibles sur le File Exchange ou sur le web, merci de contacter en priorité leurs auteurs. II. Outils de gestion des images▲ Gestion des images sous MATLAB http://briot-jerome.developpez.com/matlab/tutoriels/introduction-gestio... 2 sur 10 17/02/2013 10:15 II-A. Les fonctions MATLAB▲ Les fonctions MATLAB utiles pour gérer les images sont les suivantes : image : affiche une image (objet graphique Image) imagesc : affiche une image (objet graphique Image) avec interpolation des couleurs imread : lit une image d'un fichier (formats standards) imwrite : écrit une image dans fichier (formats standards) imfinfo : extrait des informations d'un fichier (formats standards) print : exporte une image (formats standards) II-B. Les Toolbox▲ Il existe trois Toolbox MATLAB spécifiques liées à l'acquisition, à l'analyse et au traitement des images : Image Acquisition Toolbox : acquisition d'images et de vidéos à partir de matériel industriel Image Processing Toolbox : analyse et traitement d'images Mapping Toolbox : analyse et visualisation de données géographiques II-C. Les images tests▲ II-C-1. Images fournies avec MATLAB▲ cape.mat clown.mat detail durer.mat earth.mat flujet gatlin.mat gatlin2.mat mandri spine.mat Chaque image est enregistrée dans un fichier .mat et chacun de ces fichiers comporte deux variables : X : la matrice image map : la palette de couleurs associées Le chargement de ces images s'effectue avec la fonction load et l'affichage peut être obtenu comme ceci : Sélectionnez figure load(<nom du fichier mat>); colormap(map); imagesc(X); axis image Il existe aussi une image au format JPEG disponible sur toutes les versions de MATLAB (même les plus anciennes) : Gestion des images sous MATLAB http://briot-jerome.developpez.com/matlab/tutoriels/introduction-gestio... 3 sur 10 17/02/2013 10:15 ngc6543a.jpg Cette image se lit avec la fonction imread et s'affiche avec la fonction image. II-C-2. Images fournies avec l'Image Processing Toolbox▲ Cette toolbox est livrée avec plusieurs images dans les formats courants (jpeg, tiff, png). Certaines de ces images sont soumises à un copyright : http://www.mathworks.fr/fr/help/images/image-credits.html Les images standards (lena, cameraman,...) pour le traitement d'images utilisées dans le livre Digital Image Processing Using MATLAB sont disponibles sur le site http://www.imageprocessingplace.com/root_files_V3 /image_databases.htm II-C-2-a. Images au format JPEG▲ football.jpg greens.jpg II-C-2-b. Images au format TIFF▲ AT3_1m4_01.tif, AT3_1m4_02.tif... AT3_1m4_10.tif autumn.tif boa cameraman.tif canoe.tif ce circbw.tif circuit.tif eig forest.tif kids.tif log Gestion des images sous MATLAB http://briot-jerome.developpez.com/matlab/tutoriels/introduction-gestio... 4 sur 10 17/02/2013 10:15 m83.tif mandi.tif mo mri.tif paper1.tif po shadow.tif spine.tif tir trees.tif II-C-2-c. Images au format PNG▲ bag.png blobs.png ci coins.png concordaerial.png concord fabric.png gantrycrane.png g hestain.png liftingbody.png o Gestion des images sous MATLAB http://briot-jerome.developpez.com/matlab/tutoriels/introduction-gestio... 5 sur 10 17/02/2013 10:15 pears.png peppers.png pi rice.png saturn.png snow tape.png testpat1.png t tissue.png westconcordaerial.png westconco III. Représentation des images▲ III-A. Matrice image▲ MATLAB peut lire des images codées sur 8, 16, 24 ou 32 bits. Mais le stockage de ces données ne peut être fait qu'avec trois types de variables : le type uint8 (entier non signé de 8 bits) de plage [0 255] le type uint16 (entier non signé de 16 bits) de plage [0 65535] le type double (réel 64 bits) de plage [0 1] (Plus généralement : [-realmax realmax]) III-B. Objets graphiques représentant les images▲ Parmi les nombreux objets graphiques disponibles sous MATLAB, deux permettent de visualiser des images : l'objet graphique de type Image et l'objet graphique de type Surface. III-B-1. L'objet Image▲ L'objet graphique de type Image est l'objet généralement utilisé pour visualiser les images. Il est généré soit par la fonction image, soit par la fonction imagesc. Cet objet a pour parent un objet conteneur de type Axes et il ne possède pas lui-même d'objet enfant. La seule restriction concernant cet objet est qu'il est impérativement créé dans le plan x0y et qu'il ne peut en aucun cas être manipulé en rotation (par des fonctions comme rotate3D par exemple). Les propriétés principales de cet objet sont : CData : matrice 2D ou 3D contenant les valeurs des pixels de l'image CDataMapping : interprétation des valeurs pixels sous forme de couleur (valeur 'direct' ou 'scale') XData : position dans le repère x0y du premier et du dernier pixel suivant l'axe x YData : position dans le repère x0y du premier et du dernier pixel suivant l'axe y La liste complète des propriétés de l'objet Image est disponible ici. Gestion des images sous MATLAB http://briot-jerome.developpez.com/matlab/tutoriels/introduction-gestio... 6 sur 10 17/02/2013 10:15 Le code suivant montre la différence entre une image dont le premier pixel est centré en (1,1) et une autre image dont le premier pixel est centré en (5,4) : Sélectionnez function placeimage rgb=rand(3,6,3); figure('numbertitle','off',... 'toolbar','none','menubar','none') subplot(2,1,1) image(rgb) axis image hold on plot(1,1,'ro') subplot(2,1,2) image(rgb,'xdata',5,'ydata',4 ) axis image hold on plot(5,4,'ro') Voici le résultat à l'affichage : III-B-2. L'objet Surface▲ Un objet de type Image étant contraint à être dessiné dans le plan x0y, un objet Surface sera utilisé dans les cas d'affichage d'image dans un plan quelconque. Ce type d'objet est généré par des fonctions comme : surf, surface, pcolor, ... Cet objet a pour parent un objet conteneur de type Axes et il ne possède pas d'objet enfant. La liste des propriétés des objets Surface uploads/Management/ gestion-des-images-sous-matlab.pdf

  • 34
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Jul 02, 2022
  • Catégorie Management
  • Langue French
  • Taille du fichier 0.4394MB