Active February 19, 2019 / Viewed 100630 / Comments 0 / Edit
To convert an image to grayscale using python, a solution is to use PIL example:
from PIL import Image
img = Image.open('lena.png').convert('LA')
img.save('greyscale.png')
Note: the conversion to grayscale is not unique see l'article de wikipedia's article). It is also possible to convert an image to grayscale and change the relative weights on RGB colors, example:
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
def rgb2gray(rgb):
return np.dot(rgb[...,:3], [0.299, 0.587, 0.144])
img = mpimg.imread('lena.png')
gray = rgb2gray(img)
plt.imshow(gray, cmap = plt.get_cmap('gray'))
plt.savefig('lena_greyscale.png')
plt.show()
Links | Site |
---|---|
convert rgb image to grayscale in python | stackoverflow |
PIL | PIL |
Grayscale | Wikipedia |
Image manipulation and processing using Numpy and Scipy | Scipy Doc |
python - RGB matrix of an image | stackoverflow |
Display image as grayscale using matplotlib | stackoverflow |
Hi, I am Ben.
I have developed this web site from scratch with Django to share with everyone my notes. If you have any ideas or suggestions to improve the site, let me know ! (you can contact me using the form in the welcome page). Thanks!