Я использую numpy для создания пиксельных массивов. Изображение 800x600 представляет собой трехмерный массив uint8, 800x600x3. У меня также есть аналогичный массив с фиксированным рисунком (шахматная доска, см. здесь). У меня есть другой массив, 800x600 значений маски. Если маска равна нулю, я хочу скопировать пиксель образца в пиксель изображения. Если маска не равна нулю, я хочу оставить один пиксель изображения.
>>> image.shape
(800, 600, 3)
>>> chex.shape
(800, 600, 3)
>>> mask.shape
(800, 600)
Похоже, что он должен работать:
image[mask == 0,...] = chex
но дает "ValueError: массив не доступен для правильной формы".
Что я могу использовать для копирования пикселей в пикселях в пикселях изображений, где маска равна нулю?