You are on page 1of 7

Bibliothéque skimage

Lecture , affichage et sauvegarde d'une image : module data

Entrée [ ]:

1 from skimage.io import imread, imshow , imsave


2 from skimage import data
3 import matplotlib.pyplot as plt
4
5 img_cat = data.cat()
6 imshow(img_cat)
7 imsave('/content/cat.jpeg' , img_cat)

Entrée [ ]:

Entrée [ ]:

1 image_color = imread('/content/iris.jpeg', as_gray=False)


2 imshow(image_color)

Out[3]:

<matplotlib.image.AxesImage at 0x7f53ae1eee50>

Entrée [ ]:

1 image_gray = imread('/content/iris.jpeg', as_gray=True)


2 imshow(image_gray)

Out[4]:

<matplotlib.image.AxesImage at 0x7f53ad16ec50>

Forme de l'image
Entrée [ ]:

1 type(image_gray) , image_gray.shape , image_gray.size , image_color.shape , image_color.ndim

Out[5]:

(numpy.ndarray, (195, 259), 50505, (195, 259, 3), 3)

image RGB en une image au NG

Entrée [ ]:

1 from skimage.color import rgb2gray


2 img_new = rgb2gray(image_color)
3
4 plt.subplot(121)
5 plt.title("RGB Format")
6 plt.imshow(image_color)
7 plt.subplot(122)
8 plt.title("NG Format")
9 plt.imshow(img_new , cmap="gray")
10
11 plt.show()

Rotation d'une image

Entrée [ ]:

1 from skimage.transform import rotate


2 image_rotated = rotate(img_cat, angle=90 )
3
4 plt.subplot(121)
5 plt.title("Avant rotation")
6 plt.imshow(img_cat)
7
8 plt.subplot(122)
9 plt.title("Apres rotation de 45°")
10 plt.imshow(image_rotated , cmap="gray")
11 plt.show()

histogramme
Entrée [ ]:

1 n , m , p = img_cat.shape
2 img_cat_r= img_cat[:,:,0].ravel()
3 img_cat_g= img_cat[:,:,1].ravel()
4 img_cat_b= img_cat[:,:,2].ravel()
5 plt.rcParams["figure.figsize"] = (18, 6)
6 plt.subplot(131)
7 plt.title("historgramme composante rouge")
8 plt.hist(img_cat_r,bins=256,color="r")
9 plt.subplot(132)
10 plt.title("historgramme composante vert")
11 plt.hist(img_cat_g,bins=256,color="g")
12 plt.subplot(133)
13 plt.title("historgramme composante blue")
14 plt.hist(img_cat_b,bins=256,color="b")
15 plt.show()

inversement de couleur

Entrée [ ]:

1 img_cam = data.camera()
2 array_inver=255-img_cam
3
4 plt.subplot(121)
5 plt.title("Avant inversement")
6 plt.imshow(img_cam, cmap='gray')
7
8 plt.subplot(122)
9 plt.title("Apres inversement")
10 plt.imshow(array_inver, cmap='gray')
11
12 plt.show()

Bruit et restaurastion
Entrée [ ]:

1 from skimage import util


2 sigma = 0.08
3 camera_noise = util.random_noise(img_cam, var=sigma**2)
4 plt.imshow(camera_noise, cmap='gray')
5 plt.show()

Restauration de l'image

Entrée [ ]:

1 from skimage.restoration import denoise_tv_chambolle


2
3 denoised_camera = denoise_tv_chambolle(camera_noise, multichannel=False)
4 plt.subplot(131)
5 plt.imshow(img_cam, cmap='gray')
6 plt.title("Avant")
7 plt.subplot(132)
8 plt.imshow(camera_noise, cmap='gray')
9 plt.title("Avec bruit")
10 plt.subplot(133)
11 plt.imshow(denoised_camera, cmap='gray')
12 plt.title("Apres restauration")
13
14 plt.show()

Détection de contour
Entrée [ ]:

1 from skimage import feature , measure


2
3 rice = imread("/content/rice.png", as_gray=True)
4 contours = feature.canny(rice)
5 cleaned_dividing = measure.label(contours)
6 NR=cleaned_dividing.max()
7
8 plt.subplot(131)
9 plt.imshow(rice, cmap='gray')
10
11 plt.subplot(132)
12 plt.imshow(contours, cmap='gray')
13
14 plt.subplot(133)
15 plt.imshow(255-contours, cmap='gray')
16 plt.title("Nombre de riz:"+str(NR))
17
18 plt.show()

Seuillage

Entrée [ ]:

1 import numpy as np
2 seuil = filters.threshold_minimum(img_cam)
3 binary_image = np.where(img_cam > seuil , np.ones_like(img_cam) ,np.zeros_like(img_cam) )
4 plt.imshow(binary_image , cmap="gray")

Out[36]:

<matplotlib.image.AxesImage at 0x7f53929cca10>

Filtres
Entrée [ ]:

1 from skimage import filters


2 median_image = filters.median(denoised_camera)
3 imshow(median_image)

Out[16]:

<matplotlib.image.AxesImage at 0x7f539b571810>

Réduction ou agrandissement de l’image

Entrée [15]:

1 from skimage.transform import resize


2 import matplotlib.pyplot as plt
3
4 im = plt.imread('photocouleurPSI.jpg')
5
6 plt.imshow(im )
7 plt.show()
8 res = resize(im, (800, 2000))
9
10 plt.imshow(res )
11 plt.show()
Entrée [ ]:

1 import skimage
2 help(skimage)

Help on package skimage:

NAME
skimage - Image Processing for Python

DESCRIPTION
``scikit-image`` (a.k.a. ``skimage``) is a collection of algorithms for image
processing and computer vision.

The main package of ``skimage`` only provides a few utilities for converting
between image data types; for most features, you need to import one of the
following subpackages:

Subpackages
-----------
color
Color space conversion.
data
Test images and example data.
d
Entrée [ ]:

You might also like