Как установить пиксельные значения матрицы для определенных индексов равными пиксельным значениям другой матрицы с такими же индексами?
То, что я пытаюсь сделать, это пороговое изображение с матричными операциями, но вместо того, чтобы устанавливать пороговый результат, равный фиксированному значению, например, 256 или что-то еще, я пытаюсь установить результат, равный вычислению значений пикселей из двух других изображения одинакового размера. Так, например:
firstImage = img1;
secondImage = img2;
thirdImage = img3;
secondImage(firstImage < 100) = thirdImage(at the same indexes as where the thresholding condition holds true) .* 10;
MATLAB обычно пытается умножить все thirdImage .* 10
и сохранить это, но я хочу только те конкретные пиксели, которые соответствуют для выполнения операции и перезаписать соответствующие значения в secondImage
,
Как это сделать?
1 ответ
Решение
Вы сами как-то разобрались в этом вопросе:
secondImage(firstImage < 100) = thirdImage(firstImage < 100) * 10;
то есть, как вы индексируете secondImage
, индекс thirdimage
таким же образом.