Un peu de technique et de standard de fichiers...
Je viens de recevoir une image (de Serge)...
Produite par DSS, visiblement (autosave.tif) et rebelote d'un problème que j'avais
déjà vu passer, mais pas eu le temps de décortiquer en détails...
=> Impossible d'ouvrir l'image sous Win 32 bits !
Petite explication : oui, je suis toujours en 32 bits (pas le choix, j'en ai besoin pour divers
programmes qui ne fonctionnent pas en 64...) Mais, que je sache, ce n'est pas rédhibitoire !
Donc, pourquoi ce f... ficher est inexploitable ?
Enquêtons...
1) PS CS6 : refuse de l'ouvrir pour cause mémoire...
Depuis Win10, cela devient habituel.
2^32 = 4 294 967 296 adresses différentes = 4 Go de RAM (4 294 967 296 octets)
En pratique : 2,8 à 3,3 Go de RAM adressable suivant la configuration du PC.
Avec C6 chargé : 1.6 GB libre...
Mais normalement, une image générée depuis DSS devrait pouvoir être éditable, comme
en Win 7... (j'en ouvrait fréquemment...)
2) Ok, je passe donc sous autre chose comme programme de traitement graphique...
Et là : AUCUN programme n'accepte le fichier (GIMP 2.8.14, PhotoPaint, etc..)
Ni aucun des solutions Astro :
- Registax : nok
- IRIS : nok
- AstroArt : Nok
- Dxo : Nok
etc..
=> tous me sortent "Invalid Tiff file" ou dans le genre...
3) Ok, on vérifie un brin les versions..
Le GIMP 3.0 avance, 2.9.2 est encore trop instable, mais il existe un
Gimp 2.8.16 avec une routine RGB565 16 bits améliorée...
OK, j'installe... Il commence à ressembler de plus en plus à PS CS
(même le look)...
=> Nok... 3 "tag" invalides
4) Tiff est un format de fichier qui est normalement hautement standardisé, et chaque "tag"
(qui identifie une composante image) est parfaitement identifié...
Analysons les "Tags" utilisé dans l'image en question :
ImageWidth (1 Short): 5920
ImageLength (1 Short): 3950
BitsPerSample (3 Short): 32, 32, 32
Compression (1 Short): Deflate
Photometric (1 Short): RGB
StripOffsets (1 Long): 8
Orientation (1 Short): TopLeft
SamplesPerPixel (1 Short): 3
StripByteCounts (1 Long): 192480658
XResolution (1 Rational): 100
YResolution (1 Rational): 100
PlanarConfig (1 Short): Contig
ResolutionUnit (1 Short): Inch
Software (19 ASCII): DeepSkyStacker 3.2
DateTime (20 ASCII): 2016:01:28 22:40:02
SampleFormat (3 Short): 3, 3, 3
SMinSampleValue (3 Float):
SMaxSampleValue (3 Float):
50000 (1 Long): 1250002 (1 Long): 160050008 (1 Float): Tiens, les trois tags en erreur sortent immédiatement au validateur
(TiffViewer)... A quoi cela sert ?
Baseline tags : nope
Extension tags : nope
Private tags : nope
IFD Exif tags : nope
IFD GPS tags : nope
Interop tags : nope
Impossible d'avoir le site Adobe avec les specifications TIFF
mais le site (officiel) de Digital Preservation (la bible des formats)
me fournit la liste...
Aucune trace de ces tags !
5) Ok, on va dans l'autre web...
Et tiens : ce tag a déjà été découvert dans KDE, car il posait des
bugs "exploitables"... On a baptisé cela des "Giant 32bit TIFF" images ?
TIFFReadDirectory: Warning, foo: unknown field with tag 50000 (0xc350) encountered.
TIFFReadDirectory: Warning, foo: unknown field with tag 50002 (0xc352) encountered.
TIFFReadDirectory: Warning, foo: unknown field with tag 50008 (0xc358) encountered.
TIFFReadDirectory: Warning, foo: unknown field with tag 50000 (0xc350) encountered.
TIFFReadDirectory: Warning, foo: unknown field with tag 50002 (0xc352) encountered.
TIFFReadDirectory: Warning, foo: unknown field with tag 50008 (0xc358) encountered.
foo: Sorry, can not handle images with 32-bit samples.
=> tout à fait le cas... Donc, 32 bits image ???
(Damned, quel intérêt ? Déjà avec 16bits, cela suffit largement)
OK... Donc, le 32bits inclus des tags non documentés.
6) C'est 32 bits, ok, on va sous Krita et on l'ouvre...
Logon sur Ubuntu, Krita, open... Tout se passe bien et en finale : rien d'affiché !
=> raison (dans l'error log) : des "invalid" tags non supportés !
GRRRR
7) "
When everything fail on a Windows, try a Mac... "Et là, sous PS CS, cela s'ouvre sans problème... En 16 bits !
Tiens, tiens...
Je sauve en format TIFF et reviens à Windows 32 bits.
=> Photoshop (alors que la taille de l'image est quasi la même sur disque)
l'ouvre sans problème ! Plus de problème de mémoire...
=> Astroart : no problemo... !!!
Conclusion : a) Visiblement, le format 32 bits en TIFF n'est guère standardisé, alors
qu'il l'est totalement sous le format FITS (depuis le début en 8,16,32,48,64 bits...)
b) quelqu'un a trouvé intéressant de passer des info pour tout le même le supporter,
et cela dans l'usage de HDR. Comme cela concerne les photographes, Adobe a
trouvé intéressant d'implémenter un mécanisme (hors norme) pour traiter les
tags "inconnus".
- si on trouve un tag inconnu, on l'ignore (ex : CS sous Mac)
- si on trouve un tag exploitable en 32 bits, norme Adobe : on l'ouvre...
Tous les autres logiciels, qui se réfère à la "Long Term Validation" clause
(on peut ré-ouvrir une photo dans 10 ans et plus...) n'ont évidemment pas
implémenté le mécanisme.
Et donc, tant que l'on "tourne" avec Photoshop, tout va bien...
Et encore : visiblement, l'interprétation du tag demande de la mémoire
en "32 bits" directement accessible, donc : dépasse (logiquement)
la taille disponible sous Windows 32 bits.
=> même si l'image est plus petite, on ne sait pas l'ouvrir...
En gros, dans l'astrophoto,
c'est clairement une hérésie !Si on doit traiter une image avec plus que 8bits, il vaut 100x mieux
utiliser le format FITS (supporté par tous les logiciels de traitement
d'image astro) et qui, surtout,
est parfaitement documenté !Car sinon... Dans une version ou deux : on risque de perdre totalement
l'usage des ses photos (durement) acquises...
Donc, à l'avenir, penser à sauver vos "autosave" sous format FITS
(pour Photoshop, il y a un plug-in pour cela)
http://astroshed.com/fitsplug/fitsplug.htm
http://www.spacetelescope.org/projects/fits_liberator/
Cela devrait aider tout le monde (pour les échange) et
vous-même (pour conserver et travailler)
A bon entendeur...