Enoncé du TP2 (fichier PDF, 134 Ko)

Transcription

Enoncé du TP2 (fichier PDF, 134 Ko)
PARI51 - Images Numériques - TP 1
c Besserer
B.
année universitaire 2004-2005
Ce TP est prévu pour être effectué avec XnView, logiciel gratuit pouvant être téléchargé à l’adresse www.xnview.com,
et des plug-in gratuits Photoshop (que XnView sait exploiter) disponibles à l’adresse http ://www.reindeergraphics.com,
section free plug-ins. Commencez par copier localement les images qui vous seront nécessaires. Ces images
sont téléchargeables à l’URL http://perso.univ-lr.fr/bbessere/fm/ sous forme d’archives ZIP (images.zip,
inconnu.zip, rawdata.zip, comp.zip). Téléchargez les fichiers dans un répertoire local que
vous créerez pour ce TP.
0.1
Information sur les images numériques
Consultez la barre d’état (en bas de la fenêtre de l’application) et visualisez les informations disponibles en sélectionnant
Edition → propriétés . Faites cette manipulation pour toutes les
images et notez les informations disponibles (taille de l’image,
avec ou sans palette, etc...). Visualisez la palette le cas échéant
( Image → Editer la palette ).
Sélectionnez voir information de couleur dans le menu affichage
pour pouvoir balayer l’image et voir la valeur des pixels. Vous pouvez agrandir l’image (boutons + et - jusqu’à voir les pixels individuellement Il s’agit d’un agrandissement visuel de l’image, le fichier
d’origine n’est pas altéré.
Notez la différence de l’affichage selon que vous travaillez sur une image vraies couleurs ou une image
avec palette (affichage de l’index). Vous pouvez aussi convertir une image en niveau de gris et constater
l’affichage dans ce cas.
Appliquez un traitement sur l’image portrait (par exemple Filtre→flou→Flou gaussien ). Puis appliquez
le même traitement sur l’image tigres.png. Que ce passe-t’il ? Expliquez. Appliquez encore le même
filtre sur boats.png. Que constatez-vous ? Comparez la palette de ces deux dernières images.
Expliquez pourquoi le filtrage est possible sur boats.png et non sur tigres.png
1
0.2
Affichage d’histogramme et conversion en niveaux de gris
Pour visualiser l’histogramme de nos images, nous utiliserons un plug-in photoshop que XnView sait exploiter. Dans le menu filtre , choisir plug-in compatible Adobe (si la fenêtre apparaît vide, il faut d’abord
cliquer sur configurer et donner le bon chemin : Program Files/XnView/plugins/) sélectionnez
le plug-in WideHisto.
Essayez les possibilités de cet outil (des mesures sur des portions d’histogramme sont possibles en cliquant dans la fenêtre). Remarquez que l’on peut afficher l’histogramme pour les canaux couleurs R, V et B
séparément ou en les superposant et aussi afficher l’histogramme après conversion dans l’espace colorimétrique TSL (Teinte - Hue, Saturation et Luminosité). Affichez les histogrammes pour les images que vous
avez téléchargées.
?
On va se servir de cet outil pour déterminer la matrice de conversion utilisée par WideHisto, puis par
XnView pour convertir une image couleur en image de luminance (niveaux de gris). Ouvrez l’image
test_bw.png. Cette image comporte 3 patchs de taille 100 × 100 (10000 pixels) avec des couleurs pures
(vérifier avec l’affichage de la valeur des pixels). Examinez l’histogramme de cette image. Sélectionnez
la luminance comme paramètre d’affichage d’histogramme. Observer l’histogramme, relever les coordonnées des pics, et déterminez la matrice de transformation linéaire utilisée par ce plug-in pour convertir une
information couleur trichrome en luminance, sachant que :
"
#
L = [Rw Gw Bw ] ·
R
G
B
Calculez les coefficients avec suffisamment de précision et vérifiez que Rw + Gw + Bw = 1. Effectuez
ensuite directement avec XnView une conversion de cette image en niveau de gris. Affichez l’histogramme,
mesurez et recalculer les coefficients, comparez.
Rechargez l’image test_bw.png tel qu’a l’origine (en couleur). Affichez l’histogramme et visualisez la
teinte (Hue). C’est un histogramme polaire (de 0 à 360 degrés). Mesurez la population de chaque pic. Cet
histogramme de teinte est-il exact ? Expliquez.
Valeur des coefficients Rw , Gw , Bw pour l’affichage de la luminance et pour la conversion interne en niveaux de gris
de XnView.
Reponse à la question concernant l’histogramme des teintes.
0.3
L’extension ne fait pas le fichier
Téléchargez l’archive inconnu.zip, que vous décompacterez dans un répertoire Ad-hoc. Utilisez l’explorateur Windows pour visualiser le contenu du répertoire. Vous y trouverez un ensemble de fichiers sans
extension, appelés a, b, c ... f.
Contrairement à beaucoup de logiciels qui n’exploitent que l’extension du nom de fichier (.tif, .jpg,
..., XnView identifie dans la mesure du possible le type de fichier par son entête ou magic word. Parcourez
le répertoire avec le mode browser de xnview et cliquez sur les différents fichiers.
Vous pouvez examiner directement la "signature" des différents types de fichier. Par exemple, ouvrez le fichier PPM et sélectionnez Affichage → voir en mode hexadécimal — l’entête est réellement lisible. Faire
la manipulation avec les autres fichiers. Dans certains cas, les informations binaires ne sont pas directement
déchiffrables, pour d’autre types de fichiers, on reconnaît certains éléments (repérez les chunk du PNG).
?
Il peut arriver qu’un format de fichier ne soit pas reconnu du tout par
un logiciel graphique. Un bon logiciel graphique possède toutefois une
fonction permettant d’importer (c’est-à-dire de charger) des données
brutes (raw), en provenance d’un fichier n’ayant pas d’entête. Dans ce
cas, il faut nécessairement connaître la largeur, la hauteur et la profondeur de l’image.
Copiez les images contenues dans rawdata.zip dans votre répertoire local. Le fichier nommé fichier1.raw contient les données brutes d’une image en noir et blanc (8 bits / pixel). Il s’agit d’un format
courant de vidéo digitale, soit 720 x 576 pixels.
1. Calculez la taille de l’image (le nombre d’octets qu’occupe le fichier sur le disque dur) et comparez cette valeur avec la valeur indiquée par Windows en sélectionnant le fichier sous l’explorateur
Windows (clic-droit, propriétés du fichier).
2
2. Ouvrez celle-ci en mode RAW ( Fichier → Ouvrir , sélection le format RAW, et cliquer sur Option
pour régler les options du mode RAW).
Le deuxième fichier du répertoire fichier2.raw est un fichier en provenance d’une station Silicon
Graphics, enregistré dans le format natif Silicon Graphics. Ce fichier est en couleur, sur 3 plans (RGB),
c’est à dire 3 octets par pixel. Le fichier possède en plus une entête de taille fixe de 512 octets.
1. L’image n’est pas identifiée par XnView. Par
contre, si vous renommez le fichier avec une extension .rgb, XnView l’interprète correctement.
2. Relevez la taille de l’image. Calculez la taille du
fichier (n’oubliez pas l’entête) et comparez avec
la taille indiquée par le gestionnaire de Windows.
Nous allons maintenant ouvrir cette image avec le
mode RAW. Renommez à nouveau le fichier en fichier2.raw, et réglez les options nécessaires pour
ouvrir le fichier. Faites valider.
Identifiez les fichiers de a à h. Montrer que vous pouvez lire fichier2.raw en mode RAW
0.4
Rapport entre taille de l’image et résolution
Nous avons vu que la résolution d’une image est en rapport avec sa taille physique (ou en rapport avec
des conditions de prises de vues connues). Ouvrir l’image timbre.jpg. La résolution de numérisation est contenue dans l’entête du fichier. Ces informations (pixels per inch) sont visibles ( Edition →
Propriétés ). Maintenant, nous allons effectuer un aperçu avant impression. Faites Fichier → imprimer ,
sélectionnez une imprimante et validez. Un aperçu s’affiche alors. Dans la liste déroulante "taille", choisissez DPI. L’image doit apparaître "grandeur nature" sur la page A4 de l’aperçu. Annulez l’opération
(n’imprimez pas réellement).
Vous pouvez modifier les DPI ( image → modifier les DPI ) et les passez à 75. La taille du fichier ne
change pas, mais constatez le changement pour l’aperçu avant impression. L’outil de redimensionnement
de XnView autorise également une saisie directe de la valeur DPI pour une mise à l’échelle de l’image
( image → Redimensionne ). Verifiez la résolution de votre écran (voir tableau ci-dessous), entrez la valeur
et validez, l’image est alors réduite (le fichier est modifié) et l’image doit apparaître "grandeur nature" sur
l’écran.
L’indication de la résolution en DPI sert également à effectuer des recadrages aux formats photo standard
pour l’impression. Supposons que votre imprimante imprime à 300 DPI. Ouvrez l’image big.jpg. Dans
le menu Edition → taille de la sélection , choisissez 20x15. Vous constaterez que toute l’image est alors
sélectionnée (à la resolution définie dans l’entête, cette image sera imprimée à une taille inférieure à 20x15).
Réglez les DPI de l’image à 300 et refaites une sélection 20x15. Placez votre cadre à l’endroit de votre choix,
effectuez un recadrage ( edition → recadrer ), puis lancez une impression pour obtenir l’aperçu. L’image
doit faire la largeur de la page A4 (mode portrait).
mode graphique
800 x 600
1024 x 768
1280 x 1024
1600 x 1200
ecran 15" (largeur=10,6")
75 dpi
97 dpi
121 dpi
151 dpi
ecran 17" (largeur=12,5")
64 dpi
82 dpi
102 dpi
128 dpi
ecran 19" (largeur=14,4")
56 dpi
71 dpi
89 dpi
111 dpi
Connaissant la résolution de votre écran, ouvrez l’image rule.jpg et effectuez les opérations suivantes :
Pour l’image ruler.jpg :
– Déterminez sa résolution (veillez à afficher l’image à 100%). La règle scannée est gradué en pouces et en mm.
– Modifiez ce fichier pour un usage sur une page WEB (75 dpi). Affichez le sur votre écran et vérifiez... (avec une vraie
règle !)
0.5
Compression d’images sans pertes
Les images suivantes, dans le fichier comp.zip sont à votre disposition pour évaluer les modes de compression :
– billes.tif, canopee.png : images "naturelles".
– cad.png : image 256 couleurs, typiquement issue d’un programme de CAO/DAO.
– masques.png : image infographique de synthèse 3D simple.
– mystique.tif : image infographique de synthèse 3D riche en textures/couleurs.
– film.tif : image en Noir et Blanc provenant d’un film.
3
Nous allons calculer les taux de compression atteints par les différentes méthodes de compression sans
pertes.
Pour
enregistrer
une
image,
sélectionnez
Fichier → Enregistrer sous... . Vous pouvez choisir votre
format de fichier dans la liste déroulante (attention, si votre
image est avec palette, une conversion peut s’avérer nécessaire).
Après sélection du format d’enregistrement, le bouton options
vous permet un règlage avancé, comme par exemple le choix
d’une méthode de compression pour les formats de fichier en
acceptant plusieurs.
Pour chaque image (si possible), faites un enregistrement dans
les formats suivants :
– TIFF non compressé (aucune)
– BMP sans compression (aucune case cochée)
– TARGA truevision en format 24bits non compressé (case non
cochée)
Ce sont des formats courants. Observez et notez la taille de ces fichiers, grâce au gestionnaire de fichier
de Windows ou avec le mode browser de XnView. La taille diffère peu, souvent d’une centaine d’octets au
maximum. Cette différence est due à différentes tailles d’entêtes utilisées dans ces fichiers.
?
Maintenant, nous allons enregistrer ces images avec un mode de compression sans perte (le nouveau fichier
remplace le précédent)
– Enregistrez l’image au format TIFF, en activant la compression LZW (couleur et binaire)
– Enregistrez l’image au format PNG (le format PNG compresse toujours les données),
– Enregistrez l’image au format TGA, mode 24 bits compressé RLE.
Dressez un tableau pour pouvoir comparez la taille des fichiers ainsi obtenus.
La taille du fichier BMP vous servira de référence pour la taille du fichier sans compression (pour le PNG,
par exemple, dont il n’existe pas de version non compressée). Calculez le taux de compression obtenu
(rapport entre la taille du fichier avec compression et la taille du fichier sans compression). C’est un calcul
approximatif, il n’est pas nécessaire de calculer à l’octet près.
Exemple :
BILLES.TGAaveccompression(1244Ko)
= 0, 959
BILLES.TGAsanscompression(1297Ko)
Le fichier compressé possède donc une taille équivalente à 0.96% des données non compressées, soit un
taux de compression d’environ 4% (1-rapport)
On remarquera que, pour certains modes de compression, la taille du fichier augmente.
Effectuez la même opération (sauvegarde selon différents formats sans compression, puis avec les modes
ci-dessous) sur les fichiers possédant une palette (256 couleurs) :
– Enregistrer l’image au format TIFF sans compression, puis dans le mode LZW
– Enregistrer l’image au format GIF (compression non autorisée avec XnView - brevet UNISYS)
– Enregistrer l’image au format BMP sans compression, puis en activant le mode RLE.
Présentez vos résultats dans un tableau.
Remplir les tableaux et calculer les taux de compression
Expliquer pourquoi les taux de compression sont > 1 dans certains cas.
0.6
Cas particuliers...
Les images binaires (que du noir et du blanc) peuvent être compressées encore plus efficacement. C’est le
cas avec la transmission par télécopie avec l’algorithme CCITT G3. Relevez la taille du fichier fax.tif,
ouvrez le fichier et enregistrez le dans un format sans compression et dans le format PNG (compression de
type Huffman). Calculez le taux de compression qu’autorise la méthode CCITT G3.
?
Le PNG compresse toujours sans pertes, mais on peut activer un filtrage (réversible) préalable à la compression (baptisé niveau de compression dans le réglage des options de XnView). Relevez la taille de l’image
tout_petit.png. Ouvrez l’image et vérifier qu’il s’agit bien d’une image en vraies couleurs. Tentez
d’obtenir la taille de fichier la plus petite possible en essayant plusieurs formats de fichier et méthode de
compression (avec ou sans pertes).
4