In [5]:
import numpy as np
In [58]:
from scipy import misc
f = misc.face()

import matplotlib.pyplot as plt
plt.imshow(f)
plt.show()
Out[58]:
<matplotlib.image.AxesImage at 0x7f464ab1dc18>
In [10]:
image_tab = np.array(f)
image_tab.shape
image_tab.dtype
Out[10]:
(768, 1024, 3)
Out[10]:
dtype('uint8')

Exercice 1

1) Extraire une couleur

In [11]:
def image_rouge_gris(image_tab):
    return image_tab[:, :, 0]
In [16]:
image_tab_rouge = image_rouge_gris(image_tab)
image_tab_rouge.shape
image_tab_rouge.dtype

plt.imshow(image_tab_rouge, cmap='gray')
plt.title("Rouge")
Out[16]:
(768, 1024)
Out[16]:
dtype('uint8')
Out[16]:
<matplotlib.image.AxesImage at 0x7f46513f0a90>
Out[16]:
Text(0.5, 1.0, 'Rouge')

Bonus : les deux autres couleurs

In [17]:
plt.imshow(image_tab[:,:,1], cmap='gray')
plt.title("Vert")
Out[17]:
<matplotlib.image.AxesImage at 0x7f4651355048>
Out[17]:
Text(0.5, 1.0, 'Vert')
In [18]:
plt.imshow(image_tab[:,:,2], cmap='gray')
plt.title("Bleu")
Out[18]:
<matplotlib.image.AxesImage at 0x7f465132f6a0>
Out[18]:
Text(0.5, 1.0, 'Bleu')

2) Ne garder qu'une couleur

In [24]:
def image_rouge(image_tab):
    image_tab_rouge = image_tab[:, :, 0]
    x, y = np.shape(image_tab_rouge)
    dims_3couleurs = (x, y, 3)
    image_tab_3couleurs = np.zeros(dims_3couleurs, dtype=np.uint8)
    image_tab_3couleurs[:, :, 0] = image_tab_rouge
    return image_tab_3couleurs
In [25]:
image_tab_3couleurs = image_rouge(image_tab)
image_tab_3couleurs.shape
image_tab_3couleurs.dtype

plt.imshow(image_tab_3couleurs)
plt.title("Rouge")
Out[25]:
(768, 1024, 3)
Out[25]:
dtype('uint8')
Out[25]:
<matplotlib.image.AxesImage at 0x7f46510c3860>
Out[25]:
Text(0.5, 1.0, 'Rouge')