J'aurais une petite question aussi concernant la manipulation d'image avec Python: comment faire la moyenne de 4 pixels chacun avec une intensité (r,v,b)pour en faire un nouveau pixel (dont sa valeur est la moyenne de ces 4 pixels) ?
Merci
J'aurais une petite question aussi concernant la manipulation d'image avec Python: comment faire la moyenne de 4 pixels chacun avec une intensité (r,v,b)pour en faire un nouveau pixel (dont sa valeur est la moyenne de ces 4 pixels) ?
Merci
Salut,
Image et pixel ne sont pas des objets de base Python.
Si vous ne montrez pas avec quoi vous récupérez l'image et un minimum de code, on ne va pas pouvoir vous aider beaucoup.
- W
je dois diviser la taille d'une image par 2 ou chaque bloc de 2x2 pixels sera remplace par un unique pixel .
def reduction (image_tab):
for i in range (len(image_tab)):
image_tab4=numpy.zeros([len(image_tab)//2,len(image_tab[i])//2,3], dtype=numpy.uint8)
for j in range (len(image_tab[i])):
voila le début de mon algorithme mais après je ne sais pas comment donner à image_tab4[i//2][j//2] la valeur des 4 pixels
sachant que image_tab transforme l'image en un tableau à 2 dimensions.
J4avais pensé à faire la moyenne de chaque intensité et de diviser par 4 ensuite mais je voulais savoir s'il n'y avait pas une méthode plus rapide
Bonjour,
POur poster du code, il faut utiliser le bouton "#" en haut de la fenetre de post.
Sinon, pour ce qui est manipulation d'image, utiliser PIL (Python Image Library). Tu pourras ainsi une fois l'image chargé manipuler ses données. Par exemple: ICI
On peut aller voir du côté du module scipy.ndimage pour les manipulations et les calculs sur des images.
Merci pour ces renseignements, ils seront fort utiles !
Bonjour,
Je vais peut être dire une bêtise mais cette manipulation n'est pas automatique lorsque tu réduis une image?
Si c'est bien le cas il suffit d'utiliser la fonction "thumbnail" de PIL
Des rapides testes que j'ai fais la réduction fait bien la moyenne de chaque composant RVB.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 # -*-coding:Latin-1 -* import glob import Image im = Image.open("toto.png") im.thumbnail([int(im.size[0]*0.5),int(im.size[1]*0.5)]) im.save("toto2.png","PNG")
Ou alors je n'ai pas tout compris la subtilité et dans ce cas désolé...
Très bonne idée Viand0x.
Je n'y avait pas pensé, mais effectivement, fabriquer une thumbnail revient à effectuer un moyennage. TU n'a alors plus qu'à lire la valeur de chaque pixel via getpixel.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager