How to calculate diameter from side view?

1 回表示 (過去 30 日間)
Steven
Steven 2014 年 1 月 6 日
編集済み: Steven 2014 年 1 月 7 日
Hi!
Imagine we have a side view of a circular object such as a coin. How can I accurately calculate the diameter of an object from side view image?
The simple thing is that the user determines the two sides (left and right) of the object as the diameter, but is there another way that MATLAB can detect it automatically and accurately?
Thanks!
Steven
  3 件のコメント
Jan
Jan 2014 年 1 月 6 日
To calculate the diameter accurately, you need the parameter of the optical system and the distance also, when you want the real extent.
Steven
Steven 2014 年 1 月 7 日
Thanks all. The sample is posted here.

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

採用された回答

Image Analyst
Image Analyst 2014 年 1 月 6 日
I don't know what you mean by side view. Do you mean like front side and back side (head side and tail side), or do you mean like an "edge-on" view, so that it looks like a rod or stick? Either way, you need to get a binary image of the object and then use regionprops to get the length or diameter of it. Post an image so we can see it. regionprops gives the answer in pixels. If you need real world units, like Jan brought up, then see my attached spatial calibration demo, below in blue text.
  6 件のコメント
Steven
Steven 2014 年 1 月 7 日
I am afraid I can't. Maybe I just crop it and adjust the contrast to do so.
Image Analyst
Image Analyst 2014 年 1 月 7 日
How can you crop if you don't know what size it is yet? Anyway, adjusting contrast by a linear stretch like imadjust() or non-linearly with histeq() won't help at all. You'd need more sophisticated things, like morphological filters like imopen().

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

その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by