Create black columns/rows in image.
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Raldi
el 26 de Feb. de 2015
Comentada: Raldi
el 26 de Feb. de 2015
Hi everyone,
I have an image and I want to only keep visible small patches of lets say 8x8 alternatively.
So I start at the beginning keep the first 8x8 patch, move right, make black the next patch, and so on until the end.
After that I move to the next row and I make the first patch black since we kept the one above it.
Moving like this I create a sort of a check board where the white parts have my original image.
What I did till now is
for ii = 1:it
Image = Image(1:step:end, 1:step:end);
end
After that I create a matrix of zeros at the dimensions of my original image and paint my under-sampled image
imageNew(1:step:end, 1:step:end) = Image;
This does not create the check-board effect though and I don't even know if it is good enough regarding the time it needs to run.
Has anyone any idea of how to go on about doing this?
0 comentarios
Respuesta aceptada
Guillaume
el 26 de Feb. de 2015
I would do it like this:
pattern = zeros(11, 10); %number of rows must be odd
pattern(1:2:end) = 1;
mycheckerboard = imresize(pattern, 30, 'nearest');
imshow(mycheckerboard)
3 comentarios
Guillaume
el 26 de Feb. de 2015
Oh, sorry misunderstood. Just to this then:
mycheckerboard = imresize(pattern, size(myimage), 'nearest');
myimage = immultiply(myimage logical(mycheckerboard));
Más respuestas (1)
Image Analyst
el 26 de Feb. de 2015
Why not simply use the checkerboard() function?????
3 comentarios
Image Analyst
el 26 de Feb. de 2015
Then I'd just create one line then use repmat twice. I would not use Image as the name of a variable since image() is the name of a built-in function.
Ver también
Categorías
Más información sobre Image Processing Toolbox 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!