Nous allons utiliser Octave, qui est un clone de Matlab gratuit et open-source disponible ici .
Le but est d'afficher, pour une image donnée, la matrice des pixels.
Je reprends l'image de la page précédente;
une image de 4×3 pixels sauvegardée sous test.png.
Elle est représentée ci-contre fortement agrandie.
Vous pouvez télécharger l'image ici . Attention, elle est minuscule.
Il suffit de se déplacer dans le répertoire où l'on travaille et d'utiliser la commande imread
cd 00calque/travail/jpg
imread("test.png")
La lecture est très simple: le premier pixel a pour code RGB (109,148,114). Il est vert. La première matrice donne la composante Rouge, la deuxième la composante Verte et la troisième la Bleue…
Je n'arrive pas à ouvrir une image au format .bmp
La commande marche aussi avec Matlab
Avec Octave, la commande imread est fournie par le paquetage image. Sous Linux,elle est définie dans le répertoire /usr/share/octave/packages/image-1.0.4.
On voudrait maintenant à partir de trois matrices créer une image .png . Pour faire simple, on va faire des pixels aléatoires avec Octave
A=uint8(rand(50,50)*255)
B=uint8(rand(50,50)*255)
C=uint8(rand(50,50)*255)
imwrite("bruit.png",A,B,C)
rand(50,50) crée une matrice 50×50 de nombres aléatoires dans [0;1[A=uint8(rand(50,50)*255) crée une matrice A de dimension 50×50 dont les éléments sont des entiers dans [0;255[imwrite("bruit.png",A,B,C) crée une image bruit.png à partir des trois matrices A, B et C fait le 29 juillet 2008