8

いくつかのエッジとコーナーの検出を行ってから輪郭を見つけた後、この出力が得られます。

openCVを使用してこの画像をトリミングし、この長方形のみを返す方法

編集:

私はcvBoundingRectを試してからsetimageROIを試しましたが、出力画像にはまだ背景がありますが、長方形のみが必要です

ありがとうございました。

画像リンク

4

2 に答える 2

6

選択した長方形の領域が必要になることを願っています。

このために、別のグレースケール イメージを作成する必要があります。これを「マスク」と呼びましょう。次に、得られた長方形の輪郭を描き、白(255,255,255)で塗りつぶします。次のような画像が得られます (すべての画像はペイント プログラムで手作業で編集されています)。

ここに画像の説明を入力

bitwise_and両方の画像を操作するだけです。次のように結果が得られます。

ここに画像の説明を入力

**NB:**もしそれがあなたが望んでいたものではなく、代わりにこの種の選択を望んでいた場合、この SOF の質問でそれに関する情報を見つけることができます(リンクについてはカール フィリップに感謝します)。

于 2012-04-30T12:55:18.673 に答える
1

ムスタファは自動的に箱を手に入れたいのだろうか?そうでない場合は、アビッドの回答を受け入れて、これを無視してください。

さもないと:

どこまで一般化する必要があるのか​​ わからないので、この特定の画像に対して、ハフ変換を行います。これにより、直線が得られます。ただし、一番下の行は偽陽性になる可能性があります。ただし、ぼかし、膨張などの後処理を行うと、それを取り除くことができます。または、線が長方形を構築するという知識を使用することもできます。

于 2012-04-30T13:44:09.047 に答える