Pages: 1
- Sujet précédent - [Format JPEG2000] Valeurs de NoData format compressé / non compressé - Sujet suivant
#1 Wed 28 January 2015 16:05
- cbenedetto
- Participant occasionnel
- Lieu: Toulouse
- Date d'inscription: 15 Apr 2014
- Messages: 12
[Format JPEG2000] Valeurs de NoData format compressé / non compressé
Bonjour,
J'ai des images tif en je dois les convertir au format JPEG2000 compressé, en conservant les valeurs de nodata présentes dans le tif.
Est-ce que c'est possible avec du jpeg2000 compressé, ou seulement non compressé, ou ni l'un ni l'autre? Pour l'instant quand je convertis en jpeg2000 (compression avec ou sans perte) je me retrouve avec du noir (0,0,0) à la place du nodata.
Est-ce que le nodata doit être spécifié dans une bande alpha (comme le format png) ou peut-être directement dans la donnée?
Merci d'avance pour votre aide
Hors ligne
#2 Thu 29 January 2015 11:56
- fbecir
- Participant assidu
- Lieu: Saint-Mandé
- Date d'inscription: 16 Sep 2008
- Messages: 518
Re: [Format JPEG2000] Valeurs de NoData format compressé / non compressé
Bonjour
Dans le TIFF, je ne pense pas que la notion de NODATA existe. C'est votre application qui doit interpréter certaines valeurs (R, G, B) comme du NODATA ou qui utilise le canal alpha (par exemple, si la transparence est au max, on considère que le pixel est NODATA). Dans votre fichier TIFF, si vous regardez avec un viewer tout simple, vous verrez que les pixels NODATA ont bien une valeur.
Donc la conversion JPEG2000 sans perte vous redonne exactement ces valeurs.
Cordialement
Hors ligne
#3 Thu 29 January 2015 15:18
- cbenedetto
- Participant occasionnel
- Lieu: Toulouse
- Date d'inscription: 15 Apr 2014
- Messages: 12
Re: [Format JPEG2000] Valeurs de NoData format compressé / non compressé
ok merci pour la réponse,
mais je n'ai pas de bande alpha, j'ai des images 16 bits (provenant de capteurs spatiaux) à 4 canaux RGBI, donc pas de bande alpha, mais bien une 4eme bande infrarouge.
J'ouvre ces images avec ENVI, en passant par le fichier de métadonnées .xml et j'ai des pixels qui ont bien une valeur de nodata (NoData,NoData,NoData,NoData).
Mais effectivement quand j'ouvre directement le .tif (avec ENVI ou un autre logiciel) ces mêmes pixels sont à (0,0,0,0).
J'en déduis que le nodata n'est pas contenu directement dans les pixels de l'image, mais dans les métadonnées de l'image (.xml) qui sont lues par ENVI.
On trouve dans le xml :
<Special_Value>
<SPECIAL_VALUE_TEXT>NODATA</SPECIAL_VALUE_TEXT>
<SPECIAL_VALUE_COUNT>0</SPECIAL_VALUE_COUNT>
</Special_Value>
Donc si je comprends bien le seul moyen d'avoir du Nodata avec le jpeg2000, c'est de passer par une bande alpha?
Comment peut-on créer un canal alpha à partir de ces données Nodata?
Hors ligne
#4 Tue 03 February 2015 22:09
- HotShot
- Participant occasionnel
- Date d'inscription: 3 Apr 2006
- Messages: 24
Re: [Format JPEG2000] Valeurs de NoData format compressé / non compressé
En effet, "NoData" n'étant pas une valeur numérique, elle ne peut être stockée directement dans les pixels de l'image. C'est simplement une métadonnée ajoutée au fichier qui permet de mentionner "on peut si besoin considérer que telle valeur de telle correspondrait à une absence de données pour cette bande".
Contrairement au format Tiff (qui autorise l'écriture d'un tag à peu près standardisé 'gdal_nodata'), le format Jpeg2000 ne permet pas de stocker de façon satisfaisante/universelle cette métadonnée au sein du fichier. Par contre on peut bien évidemment l'indiquer dans un fichier de métadonnées externe, cf. <Special_Value> dans un .xml - petit fichier que sauront interpréter correctement certains SIG, et pas d'autres.
Un vilain subterfuge peut éventuellement être l'ajout d'une information supplémentaire pour chaque pixel (!gaffe au gain de poids!), c'est-à-dire l'ajout d'une bande supplémentaire (grosso modo, une bande 'alpha'). C'est plus lourd et pas aussi explicite qu'un tag associant l'information NoData à une certaine valeur des pixels, mais disons que ça peut faire l'affaire pour des besoins simples (visualisation...) ou si on désire absolument un format particulier (p.ex. le Jpeg2000 qui peut contenir une bande alpha).
GDAL et divers autres outils payants permettent de convertir un "Tiff +métadonnée Nodata" en "Jpeg2000 (lossy ou lossless) +bande alpha". Plus qu'à voir ce dont on dispose...
Dernière modification par HotShot (Tue 03 February 2015 22:12)
Hors ligne
#5 Thu 12 February 2015 13:46
- cbenedetto
- Participant occasionnel
- Lieu: Toulouse
- Date d'inscription: 15 Apr 2014
- Messages: 12
Re: [Format JPEG2000] Valeurs de NoData format compressé / non compressé
Merci beaucoup pour ces précisions.
Je suis intéressée par l'idée du fichier xml pour spécifier une valeur de nodata. Concrètement comment se présente le contenu du fichier?
Et est-ce qu'il suffit que le .xml ait le même nom que l'image pour qu'il soit pris en compte par le logiciel?
Hors ligne
Pages: 1
- Sujet précédent - [Format JPEG2000] Valeurs de NoData format compressé / non compressé - Sujet suivant