Как векторизовать следующую операцию в Matlab? - PullRequest
0 голосов
/ 18 февраля 2019

Я хочу векторизовать массив: final

Я сделал этот код, чтобы сделать красные пиксели массива I

bw : черно-белый массив

I : исходное изображение

final : массив, в котором я хочу сохранить значения

for i = 1:sz1
    for j = 1:sz2
        if (bw(i,j)==1) 
           final(i,j,1)=255;
           final(i,j,2)=0;
           final(i,j,3)=0;
       else
            final(i,j,1)=I(i,j,1);
           final(i,j,2)=I(i,j,2);
           final(i,j,3)=I(i,j,3);
        end
    end
end

Я не хочу иметь циклы for /.У кого-нибудь есть идея?Спасибо

1 Ответ

0 голосов
/ 20 февраля 2019

Спасибо!Решено:

final=I;
final(bw==1)=255;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...