2012-03-18 12 views
1

OpenCVを新しくしたので、間違った用語を使用するとお詫び申し上げます。私は、イメージ内のオブジェクト(この場合は赤いビルディングブロック)を見つけてそのイメージの一部を抽出し、新しいイメージとして表示するC言語のプログラムを作成しています。赤以外のものはすべて取り除くように画像を閾値処理し、オブジェクトをより明確にするために結果をわずかにぼかすためにcvDilateを使用しました。その後、OpenCV Contourの検索機能と描画機能を使用して、ブロックを見つけて描画しました。等高線の位置からバウンディングボックスを作成する

CvSeq *として格納されている輪郭の位置にアクセスして輪郭のクラスターから一番上と一番下の輪郭値を取得するにはどうすればいいですか?その周りにバウンディングボックス?

おかげ

答えて

0

は実際に、あなたはOpenCVのがあなたのためにこの種の機能を提供するので、これを手動で行う必要はありません。

cvMinAreaRect2cvBoundingRectを参照してください。ここにそれぞれの例があります:​​(デバッグ用のものがいくつかありますが、使い方の要点を与える必要があります)とgeneralContours_demo1.cpp(C++では、簡単に翻訳できるはずです)。

OpenCVのC++ APIを使用することをお勧めします。わかりやすく、より多くの機能があります。また、Matクラスがあなたのためにそれを処理するので、メモリ管理について心配するより多くの時間/コードを費やします。

希望に役立ちます!

関連する問題