how to process images with different sizes for classification?
    2 views (last 30 days)
  
       Show older comments
    
I've the following code for the image size (row = 320; col = 240;)
But i'm having images with variable sizes (116x110),(134x125), which need to be processed
function y = bounding_box(img)
[row col] = size(img);
top = 0;
bottom = 0;
left = 0;
right = 0;
for i = 1:row
    if sum(img(i,:)) > 0
        top = i;
        break
    end
end
for i = row:(-1):1
    if sum(img(i,:)) > 0
        bottom = i;
        break
    end
end
for i = 1:col
    if sum(img(:,i)) > 0
        left = i;
        break
    end
end
for i = col:(-1):1
    if sum(img(:,i)) > 0
        right = i;
        break
    end
end
y = img(top:bottom, left:right);
0 Comments
Answers (1)
  Image Analyst
      
      
 on 24 Oct 2016
        Why not simply ask regionprops() to give you the bounding box?
2 Comments
  Image Analyst
      
      
 on 24 Oct 2016
				How many blobs do you have? And if you have more than 1, do you want the bounding box of each one, or the bounding box of all the individual bounding boxes. In short, it's
labeledImage = bwlabel(binaryImage);
props = regionprops(labeledImage, 'BoundingBox');
props is a structure array with measurements, like bounding box, for each region.
See Also
Categories
				Find more on Image Processing Toolbox in Help Center and File Exchange
			
	Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
