0% ont trouvé ce document utile (0 vote)
116 vues1 page

Traitement d'Images en Python

Le document présente différentes méthodes pour convertir une image couleur en niveaux de gris ou en noir et blanc en utilisant Python et les bibliothèques NumPy et Matplotlib.

Transféré par

sefyu dem
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
116 vues1 page

Traitement d'Images en Python

Le document présente différentes méthodes pour convertir une image couleur en niveaux de gris ou en noir et blanc en utilisant Python et les bibliothèques NumPy et Matplotlib.

Transféré par

sefyu dem
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

import numpy as np

import matplotlib.pyplot as plt

# Pour charger l'image (exemple image dont le chemin est


# e:\photos\tetouan.jpg
img = plt.imread('e:\\photos\\tetouan.jpg')
# Pour afficher l'image couleur
plt.imshow(img)
plt.show()

# pour afficher une image en niveaux de gris


plt.imshow(img,'gray',vmin=0,vmax=255)
plt.show()

""" --------------------------------------------------- """


# Convertir une image couleur en image en niveaux de gris

def couleurToGris_vert(img): # méthode 1


H,L = len(img),len(img[0])
gris = [[0]*L for i in range(H)]
for i in range(H):
for j in range(L):
gris[i][j] = img[i][j][1] # la valeur du vert du pixel
return gris

def couleurToGrisMoy(img): # méthode 2


H,L = len(img),len(img[0])
gris = [[0]*L for i in range(H)]
for i in range(H):
for j in range(L):
gris[i][j] = round(np.mean(img[i][j])) # (R+V+B)/3
return gris

def couleurToGrisCoef(img): # méthode 3


# gris = 0.11*Rouge + 0.83*Vert + 0.06*Bleu
H,L = len(img),len(img[0])
gris = [[0]*L for i in range(H)]
for i in range(H):
for j in range(L):
R,V,B = img[i][j]
gris[i][j] = round(0.11*R + 0.83*V + 0.06*B)
return gris

# Convertir une image grise en noir et blanc

def NB(gris):
H,L = len(gris),len(gris[0])
imgNB = [[0]*L for i in range(H)]
for i in range(H):
for j in range(L):
if gris[i][j] >= 127 :
imgNB[i][j] = 1
return imgNB

Vous aimerez peut-être aussi