Create black columns/rows in image.
조회 수: 1 (최근 30일)
이전 댓글 표시
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
채택된 답변
Guillaume
2015년 2월 26일
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
Guillaume
2015년 2월 26일
Oh, sorry misunderstood. Just to this then:
mycheckerboard = imresize(pattern, size(myimage), 'nearest');
myimage = immultiply(myimage logical(mycheckerboard));
추가 답변 (1개)
Image Analyst
2015년 2월 26일
Why not simply use the checkerboard() function?????
댓글 수: 3
Image Analyst
2015년 2월 26일
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.
참고 항목
카테고리
Help Center 및 File Exchange에서 Image Processing Toolbox에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!