Question

Comment puis-je savoir si une image TIFF est au format CCITT T.6 (Groupe 4)?

Était-ce utile?

La solution

Vous pouvez utiliser ce (C #) exemple de code. Elle retourne une valeur indiquant le type de compression:

1: pas de compression
2: Groupe 3 CCITT
3: CCITT compatible Télécopieur Groupe 3
4: CCITT Groupe 4 (T.6)
5: LZW

public static int GetCompressionType(Image image)
{
    int compressionTagIndex = Array.IndexOf(image.PropertyIdList, 0x103);
    PropertyItem compressionTag = image.PropertyItems[compressionTagIndex];
    return BitConverter.ToInt16(compressionTag.Value, 0);
}

Autres conseils

Vous pouvez vérifier ces liens

La balise 259 (0x0103 de hex) stocke les informations sur la méthode de compression.

--- Compression Tag = 259 (103) Type = mot N = 1 Par défaut = 1.

1 = Pas de compression, mais les données de paquet en octets aussi étroitement que possible, sans      les bits non utilisés, sauf à la fin d'une rangée. Les octets sont stockés sous forme de tableau      d'octets, pour BitsPerSample <= 8, mot si BitsPerSample> 8 et <= 16, et      dword si BitsPerSample> 16 et <= 32. L'ordre des octets de données 8 bits>      doit être conforme à celui spécifié dans l'en-tête de fichier TIFF (0 octets      et 1). Les lignes doivent commencer sur les limites d'octets.

= 2 CCITT Groupe 3 1-Dimensional modifié codant de longueur d'exécution de Huffman.      Voir ALGRTHMS.txt BitsPerSample doit être 1, car ce type de compression      est défini uniquement pour les images à deux niveaux (comme des images FAX ...)

3 = Groupe CCITT compatible Télécopie 3, exactement comme spécifié dans      « La normalisation des appareils de télécopie du Groupe 3 pour le document      transmission, » Recommandation T.4, Volume VII, Fascicule VII.3,      Équipements terminaux et protocoles pour les services télématiques, la      Comité consultatif international télégraphique et téléphonique      (CCITT), Genève, 1985, pages 16 à 31. Chaque bande doit      commencer sur une limite d'octet. (Mais rappeler qu'une image peut être      seule bande.) des rangées qui ne sont pas de la première rangée d'une bande sont      pas nécessaire de commencer sur une limite d'octet. Les données sont stockées en tant que      octets, pas des mots - octet d'inversion n'est pas autorisé. Voir le      champ Group3Options pour les options du groupe 3 tels que 1D vs codage 2D.

4 = Télécopie compatible CCITT groupe 4 , exactement comme spécifié dans      « fac-similé des schémas de codage et de codage des fonctions de contrôle pour le groupe      4 Appareil de télécopie », Recommandation T.6, Volume VII, Fascicule      VII.3, équipements terminaux et protocoles pour les services télématiques,      Le Comité consultatif international télégraphique et téléphonique      (CCITT), Genève, 1985, pages 40 à 48. Chaque bande doit      commencer sur une limite d'octet. Les lignes qui ne sont pas de la première rangée d'une      bande ne sont pas nécessaires pour commencer à une limite d'octet. Les données sont      stocké sous forme d'octets, pas des mots. Voir le champ Group4Options pour      Options du groupe 4.

5 = compression LZW, pour en niveaux de gris, couleur cartographiée, et des images en couleur.

Vous pouvez exécuter identify -verbose de la ImageMagick la suite sur l'image. Recherchez "Compression: Group4". Dans la sortie

Mise à jour:

, je téléchargé la bibliothèque libtiff du lien je l'ai mentionné précédemment, et de ce que je l'ai vu, vous pouvez faire ce qui suit: (non testé)

int isTIFF_T6(const char* filename)
{
TIFF* tif= TIFFOpen(filename,"r");
TIFFDirectory *td = &tif->tif_dir;
if(td->td_compression == COMPRESSION_CCITTFAX4) return 1;
return 0;
}

PRÉCÉDENT: Cette page a beaucoup d'informations sur ce format et des liens vers un code en C:

Voici un extrait:

  

Le présent document couvre T.4, T.6   et JBIG:

     

"Examen des normes pour électronique   formation d'image pour des systèmes de télécopie » dans   Journal of Electronic Imaging, Vol. 1,   No. 1, pp. 5-21, Janvier 1992.

     

Le code source peut être obtenu dans le cadre de   une boîte à outils TIFF - image TIFF   Les techniques de compression pour binaire   images comprennent CCITT T.4 et T.6:

     

ftp://ftp.sgi.com/graphics /tiff/tiff-v3.4beta035-tar.gz   Contact: sam@engr.sgi.com

     

En savoir plus: http: // www. faqs.org/faqs/compression-faq/part1/section-16.html#ixzz0TYLGKnHI

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top