character segmentation
7 views (last 30 days)
Show older comments
hi, i have obtained this code from a website,for character segmentation, i am unable to understand a particular line in this code , could any body explain me...
code:-
clear all;
close all;
I = imread('plate.jpg');
BW = im2bw(I, 0.9);
BW = ~BW;
stats = regionprops(BW);
for index=1:length(stats)
if stats(index).Area > 200 && stats(index).BoundingBox(3)*stats(index).BoundingBox(4) < 30000
x = ceil(stats(index).BoundingBox(1))
y= ceil(stats(index).BoundingBox(2))
widthX = floor(stats(index).BoundingBox(3)-1)
widthY = floor(stats(index).BoundingBox(4)-1)
subimage(index) = {BW(y:y+widthY,x:x+widthX,:)};
figure, imshow(subimage{index})
end
end
what does this line do:
if stats(index).Area > 200 && stats(index).BoundingBox(3)*stats(index).BoundingBox(4) < 30000
0 Comments
Accepted Answer
Walter Roberson
on 25 Apr 2011
For a 2 dimensional image, BoundingBox(3) will be the x width and BoundingBox(4) will be the y width of the bounding box.
The Area is the actual number of pixels in the region; the product of the widths is the number of pixels that are within the bounding box.
6 Comments
ezhil K
on 10 Feb 2019
I have used the same code.But,I get error as follows:
Error:
Reference to non-existent field 'Area'.
Error in Shi_tomashi (line 142)
if stats(index).Area > 100 && stats(index).BoundingBox(3)*stats(index).BoundingBox(4) < 30000
How should I resolve this?
More Answers (1)
SATYAVIR SINGH KUNTAL
on 26 Apr 2011
@ashish.. could u give me the link of the site from which u got this piece of code... thanxx..
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!