Meilleur auteur de réponses
Métadonnées d'images - ordre des octets

Question
-
Bonjour,
Je lis quelques données de prise de vue avec Image.Getpropertyitem. L'inconvénient de cette méthode est qu'elle ne donne pas l'information d'alignement des octets, II ou MM dans l'en-tête TIFF ou celle qui suit, 42, notée selon le cas 2A00 ou 002A. La documentation MS n'apporte aucune précision. La question est : l'ordre des octets de données restitués par PropertyItem.Value est-il imposé par .net ou respecte-t-il celui du fichier image ?
Cordialement.
Réponses
-
Entretemps j'ai fait un petit test avec les images II et MM fournies là : http://www.remotesensing.org/libtiff/images.html (certaines ne peuvent pas être chargées par Bitmap.FromFile apparemment). Pour celles que je peux charger dont des II et MM, je confirme que les données sont bien toujours dans l'ordre II.
Je suppose que la doc l'aurait indiqué dans le cas contraire (alors qu'il est plus délicat d'indiquer dans une doc que tel problème, peut-être peu connu et qu'il faudra commencer par expliquer, ne va pas se produire).
Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".
- Marqué comme réponse Aurel Bera lundi 27 mai 2013 07:32
Toutes les réponses
-
Bonjour
Pour ce type de question le plus facile c'est de faire un petit teste avec deux fichiers.
J'ai trouvé ce lien http://u88.n24.queensu.ca/~bogdan/articles/tiff_raw.html
qui explique bien les en-têtes.
Cordialement
- Proposé comme réponse Sami CHNITER mardi 21 mai 2013 14:38
-
Document qui intéressera beaucoup de personnes mais ce n'est pas ma question. Sauf erreur de ma part, l'information d'alignement Intel ou Motorola, qui fait partie des métadonnées, n'est pas relevée par GetPropertyItem, comme d'autres d'ailleurs, ce qui est bien dommage puisque son absence oblige à élaborer un test sur une donnée sûre (je ne vois que la dimension en pixels). En revanche, le test serait inutile si MS a choisi - idée étrange mais ne pas sortir ByteOrder en est une autre - de délivrer les données en LE même si le boîtier les enregistre dans l'ordre inverse. La documentation sur les métadonnées étant muette sur le sujet, je pose la question.
-
Bonjour,
Je m'attendrais plutôt à ce que les valeurs retournées soient directement utilisables et prennent déjà en compte ce point pour éviter justement que chaque développeur ait à le faire. Comme indiqué par Aurel, le mieux serait sans doute de tester avec un fichier de chaque sorte pour vérifier une fois pour toute le comportement de cette fonction.
Si vraiment, PropertyItem se contente de retourner les octets tels que stockés dans le fichier, il reste possible de lire soi-même les 2 premiers octets du fichier TIFF pour tester le format...
Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".
-
-
Entretemps j'ai fait un petit test avec les images II et MM fournies là : http://www.remotesensing.org/libtiff/images.html (certaines ne peuvent pas être chargées par Bitmap.FromFile apparemment). Pour celles que je peux charger dont des II et MM, je confirme que les données sont bien toujours dans l'ordre II.
Je suppose que la doc l'aurait indiqué dans le cas contraire (alors qu'il est plus délicat d'indiquer dans une doc que tel problème, peut-être peu connu et qu'il faudra commencer par expliquer, ne va pas se produire).
Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".
- Marqué comme réponse Aurel Bera lundi 27 mai 2013 07:32
-
Bonjour,
Pouvons-nous considérer que vous avez résolu votre problème avec les scénarios proposés ? Dans l'affirmative, pourriez-vous partager avec nous la solution, afin que d'autres personnes avec le même problème puissent profiter de cette solution ?
Désormais, nous marquons les solutions proposées. N'hésitez pas à revenir et supprimer la réponse marquée si la solution n’est pas correcte. Merci !
Cordialement,