How to extract the plate area only from black background

Hi, i want to know how to crop the plate area only from the image shown below my code takes the RGB image & outputs this image, so i need only a way to extract the numbers area only here is the output picture
thanks in advance

 Accepted Answer

II=im2bw(I);
s=regionprops(II,'Area','BoundingBox');
[ii,ii] = sort([s.Area],'descend');
out = imcrop(I,s(ii(2)).BoundingBox);

2 Comments

thanks for you all i did it at last thanks again but u must fix your code like this:
II=im2bw(I);
s=regionprops(II,'Area','BoundingBox');
[~,ii] = sort([s.Area],'descend');
out = imcrop(I,s(ii(1)).BoundingBox);
thank you both of you..this code is help me very much..

Sign in to comment.

More Answers (2)

You could pass the image into regionprops() and ask for area and eccentricity. The plate will have a lower eccentricity than the lines, and probably but not necessarily a larger area than any/most/all of the lines. But I can't tell that that rectangular blob with a bunch of holes in it in the lower left is not also another license plate. At least for this one particular image, you could get rid of that based on area or FilledArea.

Categories

Find more on Deep Learning Toolbox in Help Center and File Exchange

Asked:

on 3 Aug 2012

Commented:

on 31 Dec 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!