How can I vectorize the following code?
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Ba Ba Black Sheep!
el 28 de Jul. de 2017
Comentada: Image Analyst
el 29 de Jul. de 2017
main.m
I = imread('bear.png');
J = rgb2gray(imread('marked_bear.png'));
mask = I-J;
for r=1:size(I,1)
for c=1:size(I,2)
if(mask(r,c))
I = some_function(I, r, c);
end
end
end
imshow(I);
some_function.m
function I = some_function(I, r, c)
% some processing on image 'I'
I(r,c) = 255;
bear.png
marked_bear.png
0 comentarios
Respuesta aceptada
Image Analyst
el 28 de Jul. de 2017
Like this:
I = imread('bear.png');
J = rgb2gray(imread('marked_bear.png'));
mask = I-J; % Weird, but okay...whatever.
I(mask~=0)=255;
4 comentarios
Image Analyst
el 29 de Jul. de 2017
OK, then...
function I = some_function(I, J)
mask = I - J;
I(mask ~= 0) = 255;
There. It's vectorized, still has a function, and that function is called "some_function" (instead of MaskI as I had called it), just like you asked for.
Más respuestas (0)
Ver también
Categorías
Más información sobre Author Block Masks en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!