У меня есть изображение:
>> img.shape
(720,1280)
Я определил набор координат x, y, которые мне бы хотелось, чтобы, где они истинны, установить значение соответствующего изображения 255.
Вот что я имею в виду.Формируем индексы мои vals
:
>>> vals.shape
(720, 2)
>>> vals[0]
array([ 0, 186]) # the x is 0, the y is 186, I'd like to set value at img[0][186]=255
>>> vals[719]
array([719, 207]) # the x is 719, the y is 207, I'd like to set value at img[719][207]=255
Первое измерение vals
избыточно с range(719)
.
Я начинаю с создания изображения той же формы, что и img:
>>> out = np.zeros_like(img)
>>> out.shape
(720, 1280)
Но отсюда мой индекс в out
, похоже, не работает:
>>> out[vals] = 255
>>> out.shape
(720, 1280)
>>> out
array([[255, 255, 255, ..., 255, 255, 255],
[255, 255, 255, ..., 255, 255, 255],
[255, 255, 255, ..., 255, 255, 255],
>>> out.min()
255
Это делает / all / out
значения 255, а не только те, где индексыиз out == vals
.
Я бы ожидал:
>>> out[0][0]
0
>>> out[0][186]
255
>>> out[719][207]
255
Что я делаю не так?