Как изобразить однопиксельные значения из массива 3d NumPy? - PullRequest
1 голос
/ 20 февраля 2020

У меня есть стек из 7 изображений 288 x 288 пикселей, которые я преобразовал в массив 3d NumPy

newarray.shape = (288, 288, 7)

. Я хочу построить конкретное значение пикселя для каждого из 7 изображений и нанесите его в виде графика, где ось Y показывает значения пикселей, а ось X показывает номер изображения.

1 Ответ

1 голос
/ 20 февраля 2020
from matplotlib import pyplot as plt
import numpy as np

# NumPy array storing images
images = np.random.randint(0, 255, (288, 288, 7), np.uint8)

# Get pixel values across all images of pixel of interest
x, y = (8, 3)
pixels = images[y, x, :]

# Plot
plt.plot(np.arange(images.shape[2]), pixels)
plt.ylim(0, 255)
plt.title('Pixel values for x=' + str(x) + ', y=' + str(y))
plt.tight_layout()
plt.show()

Вывод:

Output

Надеюсь, что поможет!

----------------------------------------
System information
----------------------------------------
Platform:    Windows-10-10.0.16299-SP0
Python:      3.8.1
Matplotlib:  3.2.0rc3
NumPy:       1.18.1
----------------------------------------
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...