Filter löschen
Filter löschen

how to process images with different sizes for classification?

2 Ansichten (letzte 30 Tage)
arun
arun am 24 Okt. 2016
Kommentiert: Image Analyst am 24 Okt. 2016
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);

Antworten (1)

Image Analyst
Image Analyst am 24 Okt. 2016
Why not simply ask regionprops() to give you the bounding box?
  2 Kommentare
arun
arun am 24 Okt. 2016
can you give me an example code for that?
Image Analyst
Image Analyst am 24 Okt. 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 a full example in my Image Segmentation Tutorial in my File Exchange

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Get Started with Image Processing Toolbox finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by