Построение изображений с использованием Matplotlib

Beginner

This tutorial is from open-source community. Access the source code

Введение

В этом практическом занятии вы научитесь рисовать и манипулировать изображениями с использованием библиотеки Matplotlib в Python. Вы узнаете, как импортировать изображение в массив NumPy, отобразить массив NumPy в виде изображения, применить псевдоцветовые схемы, добавить ссылки на шкалу цветов, изучить конкретные диапазоны данных и исследовать различные схемы интерполяции.

Советы по работе с ВМ

После запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и приступить к практике в Jupyter Notebook.

Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook загрузится. Валидация операций не может быть автоматизирована из-за ограничений Jupyter Notebook.

Если вы столкнетесь с проблемами при обучении, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.

Это Guided Lab, который предоставляет пошаговые инструкции, чтобы помочь вам учиться и практиковаться. Внимательно следуйте инструкциям, чтобы выполнить каждый шаг и получить практический опыт. Исторические данные показывают, что это лабораторная работа уровня начальный с процентом завершения 89%. Он получил 100% положительных отзывов от учащихся.

Импорт изображений

Для начала нам нужно импортировать необходимые библиотеки и загрузить изображение в массив NumPy. В нашем случае мы будем использовать библиотеку PIL для загрузки изображения, а затем преобразовать его в массив NumPy.

from PIL import Image
import matplotlib.pyplot as plt
import numpy as np

img = np.asarray(Image.open('./stinkbug.png'))

Построение изображений

Теперь, когда у нас есть изображение в массиве NumPy, мы можем его нарисовать с использованием функции imshow из matplotlib.pyplot. Эта функция принимает массив изображения в качестве входных данных и отображает его в виде изображения.

plt.imshow(img)

Применение псевдоцветовых схем

Псевдоцветовые схемы можно использовать для повышения контраста и более легкого визуализации данных. Если изображение является оттеночным, мы можем применить псевдоцветовые схемы, указав различные цветовые карты. Мы можем сделать это, используя параметр cmap в функции imshow.

lum_img = img[:, :, 0]
plt.imshow(lum_img, cmap="hot")

Добавление ссылки на шкалу цветов

Для предоставления ссылки на шкалу цветов мы можем добавить цветовую шкалу к графику. Это можно сделать с использованием функции colorbar из matplotlib.pyplot.

imgplot = plt.imshow(lum_img)
plt.colorbar()

Исследование конкретных диапазонов данных

Иногда может быть необходимо исследовать конкретные диапазоны данных в изображении. Мы можем это сделать, настроив пределы цветовой карты с использованием параметра clim в функции imshow. Это позволяет сосредоточиться на конкретных областях изображения, жертвуя деталями в других областях.

min_value, max_value = 100, 200
plt.imshow(img, clim=(min_value, max_value))

Схемы интерполяции массива

При изменении размера изображения необходимо интерполировать значения пикселей, чтобы заполнить пропущенное пространство. Различные схемы интерполяции можно использовать для определения значения пикселя на основе значений его окружающих пикселей. Matplotlib предоставляет различные варианты интерполяции, такие как "nearest" (ближайший), "bilinear" (двулинейный) и "bicubic" (бикубический).

plt.imshow(img, interpolation="bilinear")

Резюме

В этом практическом занятии вы узнали, как создавать и манипулировать изображениями с использованием Matplotlib. Вы узнали, как импортировать данные изображений в массивы NumPy, отображать массивы NumPy в виде изображений, применять псевдоцветовые схемы, добавлять ссылки на шкалу цветов, исследовать конкретные диапазоны данных и изучать различные схемы интерполяции. Эти навыки будут полезны при визуализации и анализе изображений в различных приложениях.