私は2つの「輪郭」形状を配列に持っており、1つのコントローはその実サイズを知る正方形であり、もう1つは比例測定を行うために必要なものです。 ここでは画像の例である:画像内の不規則な形状の実寸を測定する
正方形は10x10mmを持って、私は、正方形に基づいて、他の形状の大きさを知ることができますか?私がこれまで試したどのような
はこれです:var molePerimeter = CvInvoke.ArcLength(contours[0], false);
double moleArea = CvInvoke.ContourArea(contours[0], false);
var squarePerimeter = CvInvoke.ArcLength(squares[0], true);
double squareArea = CvInvoke.ContourArea(squares[0], false);
textBox2.AppendText("Area: " + squareArea/moleArea);
textBox2.AppendText("perimeter: " + squarePerimeter/molePerimeter);
しかし、私はいけないことがcorretであると考えています。
1)カメラの軸が白い正方形に垂直であることを確認する必要があります。そうでない場合、ひずみを導入します。つまり、モルはカメラから白い四角と同じ距離です。 2)臼歯の面積、周長、または長軸/短軸を知りたいですか? –
@MarkSetchell私は周囲、面積とモルの長さを取得します。正方形が1x1cmであることを知っていると、私は実際のサイズを取得しようとします。しかし、私はこれをどのように計算しますか? – fdfey