Calculate each object maximum height and weight

1 回表示 (過去 30 日間)
Ely Raz
Ely Raz 2017 年 2 月 2 日
コメント済み: Image Analyst 2017 年 2 月 4 日
How can I calculate each object maximum height and weight in the following example?
I used this code:
clc;
clear;
I = rgb2gray(imread('http://i67.tinypic.com/14jxq0y.jpg'));
adpt1 = imbinarize(I);
adpt1 = imfill(adpt1, 'holes');
[B,L] = bwboundaries(adpt1,'noholes');
stat = regionprops(adpt1,'All');
imshow(adpt1);
hold on
for k = 1 : length(B)
b = B{k};
c = stat(k).Centroid;
plot(b(:,2),b(:,1),'g','linewidth',3);
text(c(1),c(2),num2str(k),'backgroundcolor','g');
end
  1 件のコメント
Walter Roberson
Walter Roberson 2017 年 2 月 2 日
You have curved objects.
For "height" are you looking for the height of the highest point minus the height of the lowest point?
Are you looking to do the equivalent of running a ruler horizontally along the figure and examine the maximum point minus the minimum point at each column, and find the largest difference amongst those -- the "thickest" vertical?
In your object #4, top center, the left side is concave, so if you did that you would have a gap along the vertical line: is only the solid part to be counted, or the furthest reaches?
Are you looking to find the maximum axes and the axes 90 degrees to that? For example in object #6, right center, the maximum axis is along the diagonal from top left to bottom right: is that one of the distances to be measured, and then the other would be the diagonal from bottom left to top right?

サインインしてコメントする。

採用された回答

Image Analyst
Image Analyst 2017 年 2 月 2 日
Ask regionprops to return the Bounding Box.
In the loop
thisBB = stats(k).BoundingBox
thisWidth = thisBB(3);
thisHeight = thisBB(4);
hold on;
rectangle('Position', thisBB, 'EdgeColor', 'c');
  6 件のコメント
Walter Roberson
Walter Roberson 2017 年 2 月 4 日
編集済み: Walter Roberson 2017 年 2 月 4 日
Hee. I see you've started using my naming practice of " this such and such" ;-)
Image Analyst
Image Analyst 2017 年 2 月 4 日
I think I picked that up in 2003 when I learned Java. I thought it was a good idea so I use it occasionally.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeData Distribution Plots についてさらに検索

タグ

タグが未入力です。

Community Treasure Hunt

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

Start Hunting!

Translated by