Tester une image pour déterminer sa profondeur

SuperTonic Messages postés 53 Date d'inscription mercredi 24 juillet 2002 Statut Membre Dernière intervention 16 mars 2011 - 23 févr. 2007 à 13:11
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 - 26 févr. 2007 à 10:18
Bonjour à tous.

Savez-vous comment je peux tester une image, afin de savoir si elle est en couleur ou en N/B ?
Les formats du fichier à tester pouvant être JPG, EPS, TIF, BMP

Le but est de trier des dossiers de plus de 300 000 images, afin d'appliquer des scripts totoshop pour convertir toutes les images en EPS.
EPS\NB ou EPS\COUL

Je tiens tout d'abord à remercier ceux et celles qui viendront à mon aide.

Guillaume.

4 réponses

NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
23 févr. 2007 à 13:24
Bonjour


Je te propose d'ouvrir toutes les images les unes après les autres et d'appeller cette fonction :


private function IsNB(byval pImg as Bitmap) as boolean

    dim lPix as color

    for X as integer=0 to pImg.Size.Width-1

       For Y as integer =0 to pImg.Height-1

          lPix=pImg.GetPixel(x,y)

          if lPix.R<>lPix.G or lPix.G<>lPix.b then

             Return false

          end if

       next

    next

    return true

end function


c'est pas le plus rapide, mais une méthode simple.

Il est plus facile de batiser quelqu'un que de la convertir.(surtout en programmation)
VB (6, A excel, .NET), C++, C#.Net
Mon site
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
23 févr. 2007 à 13:55
Bonjour NHenry,


 


Tant qu'à y aller pixel par pixel, je ne ferais alors personnellement que ta double boucle que je quitterais immédiatement dès le 1er pixel rencontré dont la valeur RGB serait différente de RGB(0,0,0) et RGB(255,255,255) puisqu'il  n'accepte que le noir et le blanc. Celà éviterait de tout parcourir inutilement.
0
ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 26
25 févr. 2007 à 22:48
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
26 févr. 2007 à 10:18
Bonjour


Pour info : Return quitte immédiatement la fonction/sub.

Il est plus facile de batiser quelqu'un que de la convertir.(surtout en programmation)
VB (6, A excel, .NET), C++, C#.Net
Mon site
0
Rejoignez-nous