Чтение ваших комментариев. Я думаю, что вы использовали выходное изображение для определения положения головы.Однако выходное изображение увеличивается, что означает большее количество пикселей, чем количество точек данных.Вот почему ваш диапазон находится за пределами измерений массива.
Вот изображение, где каждая точка данных составляет 1 пиксель (трудно увидеть, в значениях серого):
Я нарисовал то же изображение, используя ваш код:
Обратите внимание, как вы можете считать фактические точки данных какцветные блоки.Ось равна количеству точек данных в столбце / строке.У меня была мышь в положении головы, поэтому она (округленная) находится в точке x = 13, y = 3.
Затем выбор общей области головы:
head = arr[1:7,10:18]
print(head)
plt.imshow(head, cmap='hot', interpolation='nearest')
Даетзначения:
[[49 54 99 182 214 106 33 35]
[22 49 229 257 314 224 81 5]
[15 55 131 194 177 199 59 5]
[7 20 61 96 144 346 19 3]
[2 3 19 33 60 83 10 0]
[9 5 11 13 72 46 2 0]]
Это может быть немного трудно увидеть, потому что цвета переназначены.