Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Image Raw RGB 565

10 réponses
Avatar
greg
Bonjour,
Je cherche un moyen de lire des images raw au format RGB 565 ou RGB 555.
Est-ce que vous connaissez un programme qui permet de faire ça ?

Greg

10 réponses

Avatar
l'indien
On Thu, 06 Apr 2006 21:40:59 +0200, greg wrote:

Bonjour,
Je cherche un moyen de lire des images raw au format RGB 565 ou RGB 555.
Est-ce que vous connaissez un programme qui permet de faire ça ?

Greg


Tout dépend de ce que tu appelles une image "raw" et ce que tu veux
vraiment faire en parlant de "lire".
Si ton fichier contient uniquement une suite de pixels encodés en 16
bits, tu ne pourras pas en faire grand chose: il faut au minimum qu'il y
ai un header avec la résolution pour savoir ou commencent les lignes...

Avatar
Nicolas George
l'indien wrote in message :
Si ton fichier contient uniquement une suite de pixels encodés en 16
bits, tu ne pourras pas en faire grand chose: il faut au minimum qu'il y
ai un header avec la résolution pour savoir ou commencent les lignes...


Il connaît le nombre de pixels à partir de la taille du fichier. En le
factorisant, il peut obtenir un certain nombre, relativement limité, de
tailles possibles. À partir de là, un examen à l'oeil, ou éventuellement sur
un critère de compressibilité, permete de retrouver la bonne.

Avatar
l'indien
On Thu, 06 Apr 2006 22:48:33 +0000, Nicolas George wrote:

l'indien wrote in message :
Si ton fichier contient uniquement une suite de pixels encodés en 16
bits, tu ne pourras pas en faire grand chose: il faut au minimum qu'il y
ai un header avec la résolution pour savoir ou commencent les lignes...


Il connaît le nombre de pixels à partir de la taille du fichier. En le
factorisant, il peut obtenir un certain nombre, relativement limité, de
tailles possibles. À partir de là, un examen à l'oeil, ou
éventuellement sur un critère de compressibilité, permete de retrouver
la bonne.


C'est de la théorie.
Dans la pratique, j'ai des images qui viennent de bouts d'interface
graphiques.
Si je prends une image de 1200 pixels, si je ne connais pas sa taille (ou
son rendu, ce qui revient au même), ou le contexte d'affichage, je n'ai
aucun moyen de décider quel est la façon de l'afficher:
1x1200 ?
2x600 ?
3x400 ?
4x300 ?
...
30x40 ?
...
1200x1 ?

Même à l'oeil, dans le cas que je cite, je n'ai pas d'indice
significatif, sur l'affichage correct...
Et le nombre de possibilités est assez grand.


Avatar
greg
En fait je connais exactement le format de mon image:
400 lignes 256 colonnes.
Mon fichier raw fait exactement 204800 octets. il n'y a pas d'entrelacement.
Chaque couple de 2 octects correspond a un pixel de l'image au format
RGB565

Le truc c'est que je ne trouve pas de logiciels qui permet de choisir le
nombre de bits/pixels, le format RGB, le nombre de ligne et le nombre de
colonne.

J'arrive a afficher mon image avec un programme SDL que j'ai fait, mais je
voulais un logiciel un peu plus complet.

Greg
Avatar
greg
personnel wrote:

Le Fri, 07 Apr 2006 19:05:07 +0200, greg a écrit :

En fait je connais exactement le format de mon image:
400 lignes 256 colonnes.
Mon fichier raw fait exactement 204800 octets. il n'y a pas
d'entrelacement. Chaque couple de 2 octects correspond a un pixel de
l'image au format RGB565

Le truc c'est que je ne trouve pas de logiciels qui permet de choisir le
nombre de bits/pixels, le format RGB, le nombre de ligne et le nombre de
colonne.

J'arrive a afficher mon image avec un programme SDL que j'ai fait, mais
je voulais un logiciel un peu plus complet.

Greg


Bonsoir!

Xnview?

A+
jpierre


Avec XnView je n'arrive a ouvrir que des images raw RGB 24 bits/pixel ou
monochrome.
Peut etre qu'il y a un moyen, mais j'ai pas trouvé.
Merci en tout cas.

Greg


Avatar
personnel
Le Fri, 07 Apr 2006 19:05:07 +0200, greg a écrit :

En fait je connais exactement le format de mon image:
400 lignes 256 colonnes.
Mon fichier raw fait exactement 204800 octets. il n'y a pas d'entrelacement.
Chaque couple de 2 octects correspond a un pixel de l'image au format
RGB565

Le truc c'est que je ne trouve pas de logiciels qui permet de choisir le
nombre de bits/pixels, le format RGB, le nombre de ligne et le nombre de
colonne.

J'arrive a afficher mon image avec un programme SDL que j'ai fait, mais je
voulais un logiciel un peu plus complet.

Greg


Bonsoir!

Xnview?

A+
jpierre

Avatar
greg
personnel wrote:



Bonsoir!

Xnview?

A+
jpierre


Avec XnView je n'arrive a ouvrir que des images raw RGB 24 bits/pixel ou
monochrome.
Peut etre qu'il y a un moyen, mais j'ai pas trouvé.
Merci en tout cas.

Greg


bonsoir!

Heu, ya peut-être moyen d'écrire au développeur et de lui soumettre
directement le soucis!
Jp gougelet donne son adresse email sur son site!
C'est quand même quelqu'un de sympa et qui domine son domaine!

A+
jpierre


Oui, bonne idée. Je vais fouiller un peu sur le forum de xnview. Si je
trouve pas je le mailerai.
a+ greg



Avatar
personnel

Bonsoir!

Xnview?

A+
jpierre


Avec XnView je n'arrive a ouvrir que des images raw RGB 24 bits/pixel ou
monochrome.
Peut etre qu'il y a un moyen, mais j'ai pas trouvé.
Merci en tout cas.

Greg


bonsoir!

Heu, ya peut-être moyen d'écrire au développeur et de lui soumettre
directement le soucis!
Jp gougelet donne son adresse email sur son site!
C'est quand même quelqu'un de sympa et qui domine son domaine!

A+
jpierre


Avatar
Nicolas George
greg wrote in message <44369bc9$0$27286$:
En fait je connais exactement le format de mon image:
400 lignes 256 colonnes.
Mon fichier raw fait exactement 204800 octets. il n'y a pas d'entrelacement.
Chaque couple de 2 octects correspond a un pixel de l'image au format
RGB565


Ça peut se faire en deux lignes de perl, mais je suis trop crevé et dans de
trop mauvaises conditions pour le moment pour les écrire là maintenant.
Quelque chose comme

perl -ne 'BEGIN{$/=2;print "P6n255n256 400n"}$t=unpack "n", $_;
print pack "CCC", $t>>11, ($t>>5)&63, $t&31'

Mais c'est vraiment non-testé.

Avatar
l'indien
On Fri, 07 Apr 2006 19:05:07 +0200, greg wrote:

En fait je connais exactement le format de mon image: 400 lignes 256
colonnes.
Mon fichier raw fait exactement 204800 octets. il n'y a pas
d'entrelacement. Chaque couple de 2 octects correspond a un pixel de
l'image au format RGB565

Le truc c'est que je ne trouve pas de logiciels qui permet de choisir le
nombre de bits/pixels, le format RGB, le nombre de ligne et le nombre de
colonne.

J'arrive a afficher mon image avec un programme SDL que j'ai fait, mais je
voulais un logiciel un peu plus complet.

Greg


Dans ces conditions, tu peux faire un petit convertisseur raw => ppm
en quelques lignes de C.
Il faut générer le header:
fprintf(stdout,"P5n%d %dn%dn",width,height,255);
et dépacker les pixels en 24 bits:
for (y = 0; y < height; y++) {
for (x = 0; x < width; x++) {
tmp = (*ptr++) << 8;
tmp |= *ptr++;
r = (tmp >> 11 & 0x1F) << 3;
g = (tmp >> 5 & 0x3F) << 2;
b = (tmp & 0x1F) << 3;
putc(r);
putc(g);
putc(b);
}
}

Et le tour est joué: le fichier ppm devrait être exploitable directement
par tout programme sérieux...
A noter que netpbm comprends un programme appelé rawtoppm qui fait
exactement celà.
Il y a aussi un programme raw2tiff (plus complexe à utiliser) qui vient
avec la libtiff et un raw2gif qui sort de je ne sais ou...