Segment grid boxes
2 views (last 30 days)
Show older comments
rgb = imread('peppers.png');
imshow(rgb)
hold on
M = size(rgb,1);
N = size(rgb,2);
for k = 1:25:M
x = [1 N];
y = [k k];
plot(x,y,'Color','w','LineStyle','-');
plot(x,y,'Color','k','LineStyle',':');
end
for k = 1:25:N
x = [k k];
y = [1 M];
plot(x,y,'Color','w','LineStyle','-');
plot(x,y,'Color','k','LineStyle',':');
end
hold off
Suppose I want to segment and extract individual areas of the grid .. How do I go about it ? Like, which boundary detection algorithm is used for this purpose ?
2 Comments
Sean de Wolski
on 25 Mar 2011
Post an image! How do you expect us to figure anything out when we can't see what you're doing!
Accepted Answer
Walter Roberson
on 12 Apr 2011
Regular rectangular grids, or potentially irregular spacing?
If it is a regular rectangular grid, crop to contain only full cells, detect the grid line separation, then mat2cell() or blkproc() or blockproc()
3 Comments
Walter Roberson
on 14 Apr 2011
Your variables hint at "first row" to "last column" which doesn't sound right. A renaming might be in order.
Now, provided that lc1 and N have been chosen to be on grid boundaries:
mat2cell(img(fc1:N+21,fr1:lc1+31), 21 * ones(1,1+(N-fc1)/21), 31 * ones(1,1+(lc1-fr1)/31))
More Answers (1)
Pedro Serra
on 24 Mar 2011
An answer to this question would be really nice. I'm dealing with the same issue:
I have an image upon which I've drawn a grid. I now would like to understand how can I extract individual areas of the grid?
(My final goal is to color specific areas of that grid)
Thanks in advance!
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!