Добавил:
chrysler_a57_mltbnk
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:
import numpy
import matplotlib.pyplot as plt
import numpy as np
import skimage
# Загрузка изображения
img = skimage.io.imread('lab1.jpg')
# Отображение размеров изображения
print(f"Данное изображение имеет размер {img.shape[1]}x{img.shape[0]}")
# Вывод изображения на экран
plt.figure(1)
plt.title("Изначальное изображение")
plt.imshow(img)
# Создание и вывод негативного изображения
negimg = np.asarray([[[255 for _ in range(3)] for _ in range(len(img[0]))] for _ in range(len(img))])
negimg = negimg - img
plt.figure(2)
plt.title("Изображение в негативе")
plt.imshow(negimg)
# Создание... чего-то? tbh I'm confused af
w = int(len(img[0]) / 5) # Ширина одного квадрата
h = int(len(img) / 6) # Длина одного квадрата
img_crop = img[h * 4:h * 5, w * 2:w * 3, :]
plt.figure(3)
plt.imshow(img_crop)
plt.title("Обрезок изображения")
# Вывод только синего канала изображения
img_blue = np.copy(img)
for i in range(len(img_blue[0][0])):
img_blue[:, :, i] = img_blue[:, :, 2]
plt.figure(4)
plt.imshow(img_blue)
plt.title("Только синий канал изображения")
# Замена пикселей по условию
img_rule = np.copy(img)
for i in range(img_rule.shape[0]):
for j in range(img_rule.shape[1]):
if not (img_rule[i, j, 0] > img_rule[i, j, 1] and img_rule[i, j, 0] > img_rule[i, j, 2]):
img_rule[i, j, :] = np.zeros(3)
plt.figure(5)
plt.imshow(img_rule)
plt.title("Изображение с изменёнными пикселями по условию")
plt.show()
import matplotlib.pyplot as plt
import numpy as np
import skimage
# Загрузка изображения
img = skimage.io.imread('lab1.jpg')
# Отображение размеров изображения
print(f"Данное изображение имеет размер {img.shape[1]}x{img.shape[0]}")
# Вывод изображения на экран
plt.figure(1)
plt.title("Изначальное изображение")
plt.imshow(img)
# Создание и вывод негативного изображения
negimg = np.asarray([[[255 for _ in range(3)] for _ in range(len(img[0]))] for _ in range(len(img))])
negimg = negimg - img
plt.figure(2)
plt.title("Изображение в негативе")
plt.imshow(negimg)
# Создание... чего-то? tbh I'm confused af
w = int(len(img[0]) / 5) # Ширина одного квадрата
h = int(len(img) / 6) # Длина одного квадрата
img_crop = img[h * 4:h * 5, w * 2:w * 3, :]
plt.figure(3)
plt.imshow(img_crop)
plt.title("Обрезок изображения")
# Вывод только синего канала изображения
img_blue = np.copy(img)
for i in range(len(img_blue[0][0])):
img_blue[:, :, i] = img_blue[:, :, 2]
plt.figure(4)
plt.imshow(img_blue)
plt.title("Только синий канал изображения")
# Замена пикселей по условию
img_rule = np.copy(img)
for i in range(img_rule.shape[0]):
for j in range(img_rule.shape[1]):
if not (img_rule[i, j, 0] > img_rule[i, j, 1] and img_rule[i, j, 0] > img_rule[i, j, 2]):
img_rule[i, j, :] = np.zeros(3)
plt.figure(5)
plt.imshow(img_rule)
plt.title("Изображение с изменёнными пикселями по условию")
plt.show()
Соседние файлы в папке лабы
