Bonjour a tous, Quel serait selon vous le code pour transformer une image 5 états en 5 images différentes Exemple d'image en pièce jointe Merci de votre aide
Salut Popoy, J'ai un "fu-script" pour GIMP si cela t'intéresse qui transforme une image simple en image 5 états. En gros, pour séparer les images 5 états et en faire 5 images différentes, tu dois prendre la largeur de l'image de base et diviser par 5 pour obtenir la taille exacte. Ainsi tu peux prendre l'image de base 5 états, et extraire chaque état. Je ferais cela dans un champ image, ce ne doit pas être très compliqué. Image 1 = x=1, longueur 32 Image 2 = x=33, longueur 32 Image 3= x=65, longueur 32 etc. A+
Code (Python): from PIL import Image # Charger l'image img = Image.open("boutons.png") # Dimensions de l'image largeur, hauteur = img.size # Nombre d'états nb_etats = 5 # Largeur d'un état largeur_etat = largeur // nb_etats # Découpage for i in range(nb_etats): x1 = i * largeur_etat x2 = (i + 1) * largeur_etat etat = img.crop((x1, 0, x2, hauteur)) etat.save(f"etat_{i+1}.png") print("Extraction terminée")
Bonjour Ref: Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens! Code (Windev): MonImageDécoupée est une Image MonImage est une Image MonImage = "Image.png" MonImageDécoupée = Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!(MonImage, 10, 10, 100, 100)
Bonjour, Code (Windev): FONCTION Split5Etats(LOCAL o5Etat est Image) : tableau de Image nOffset est entier //Offset nécessaire pour "positionner" l'origine de la "sous-image" traitée nNoImage est un entier //No de la "sous-image" traitée tabSplit est tableau de 5 Image //Ensemble des sous images nOffset=o5Etat..Largeur/5 //Calcul de l'offset POUR nNoImage=1 À 5 tabSplit[nNoImage]=Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!(o5Etat,(nNoImage-1)*nOffset,0,nOffset,o5Etat..Hauteur) FIN RENVOYER tabSplit Utilisation : Code (Windev): saChemin5Etats est une chaîne tabSplit est tableau de Images saChemin5Etats=Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!("","","Sélectionnez une image à décomposer") tabSplit=Split5Etats(Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!(saChemin5Etats))
Salut a tous et merci de vos réponses voici mon code inspirés des votre Code (Text): //Variables InfoImage, Format sont des chaînes Hauteur, Largeur sont des entiers nOffset est entier //Offset nécessaire pour "positionner" l'origine de la "sous-image" traitée nNoImage est un entier //No de la "sous-image" traitée sNomimage est une chaîne Monimage est une Image nBetat est un entier //début sNomimage = SAI_Texte Monimage = SAI_Texte nBetat = SAI_NBRE_ETAT tabSplit est tableau de nBetat Image //Ensemble des sous images sNomimagetemp est une chaîne // Récupération des caractéristiques de l'image InfoImage = InfoBitmap(sNomimage) Format = ExtraitChaîne(InfoImage, 1) Largeur = Val(ExtraitChaîne(InfoImage, 2)) Hauteur = Val(ExtraitChaîne(InfoImage, 3)) // Affichage des caractéristiques //Info("Format de l'image : " + Format, "Largeur : " + Largeur, "Hauteur : " + Hauteur) nOffset = Largeur/nBetat //Calcul de l'offset //nom de l'image sNomimage = fExtraitChemin(sNomimage, fFichier) //dDécoupe l"image POUR nNoImage=1 À nBetat tabSplit[nNoImage] = dDécoupe(Monimage,(nNoImage-1)*nOffset,0,nOffset,Hauteur) //construction du nom de l'image à sauvegarder sNomimagetemp = sNomimage + "" + nNoImage //sauvegarde l'image dans la bonne extension SELON Format CAS "bmp","BMP" dSauveImageBMP(tabSplit[nNoImage],sNomimagetemp+".bmp") CAS "gif","GIF" dSauveImageGIF(tabSplit[nNoImage],sNomimagetemp+".gif") //CAS "ico","ICO" monicone est une Icône monicone = tabSplit[nNoImage] dSauveImageICO(monicone,sNomimagetemp+".ico") CAS "jpg","jpeg","JPG","JPEG" dSauveImageJPEG(tabSplit[nNoImage],sNomimagetemp+".jpg") CAS "png","PNG" dSauveImagePNG(tabSplit[nNoImage],sNomimagetemp+".png") CAS "tif","TIFF" monimagetemp est un Tiff monimagetemp = tabSplit[nNoImage] sName est une chaîne sName = sNomimagetemp+".tif" dSauveImageTIFF(monimagetemp,sName) AUTRE CAS Info("Format de l'image : " + Format, "Largeur : " + Largeur, "Hauteur : " + Hauteur) FIN FIN Info("Extraction effectué")