カラーチャートから色を認識する方法は?


9

以下のカラーチャートとカメラを使用して、チャート内の各パッチの色を抽出するビジョンアプリケーションを開発しています。これを行うには、まず画像内のチャート領域を検出し、その領域をパッチの場所を含む既存のテンプレートと一致させる必要があります。

私の質問:チャートの4つのコーナーを認識してカラーパッチ領域を検出する必要があります。下の画像に小さなはめ込み長方形が示すコーナーを見ることができます。これを実行する1つの方法は、ユーザーがコーナーをクリックしてそれらのコーナーを選択できるようにすることです。しかし、画像から四隅を自動的に検出する方法はありますか。

ここに画像の説明を入力してください


好奇心旺盛ですが、そのようなカラーリファレンスチャートはどこで入手できますか?
hotpaw2

@ hotpaw2ほとんどいつものように、グーグル。「it8ターゲット」という用語を検索
Tae-Sung Shin

回答:


4

あなたは色の領域を検出するためにハフラインを収容することができます

  • 最初にすべての線を検出します
  • 最長のラインは最も外側のラインになります
  • 上部の水平線を選択し、正方形のテンプレートマッチングを実行します。
  • 正方形を見つけたら、下向きに通行して他の正方形のセットに到達します。
  • 正方形が見つかったすべてのポイントをマークします
  • これで、カラーチャートを囲む領域ができました。

2

色成分(RGBなど)の各2D配列は、コントラストが高く、独特です。そのため、各色成分の複雑な2D FFTを使用して、写真画像と参照画像のスケールとオフセットを決定する場合があります。次に、それらを使用して、参照画像のコーナーやパッチの測定済み/既知の座標を調整して、写真の座標を生成します。

ビットマップエディタを使用して、参照画像の一部の座標を直接測定しなければならない場合があります。


1

最初のステップとして、私は灰色とテキストですべての混乱を取り除きます。四辺すべてから始めて、ピクセルの大部分が一意に知られている「灰色」の色になるまで停止します。

これにより、異なる色で構成されたチェッカーボードのみが残ります。あなたは約22x12-約264色を期待しています。

最も簡単な方法は、より単純な口蓋化アルゴリズムを適用することです。これをGIF画像に変換する必要がある場合、重心の色として表される色の各クラスターで色の量子化を適用します。

これは、ソースがすでにある種類の口蓋であり、適切な推測で開始できるため、この場合は特に簡単です。

これをチェックしてください:

NeuQuant:http ://members.ozemail.com.au/~dekker/NEUQUANT.HTML

Octree Color Quantization:http ://www.cubic.org/docs/octree.htm 。こちらもご覧ください。

これらはほんの一部の参照です。しかし、そのような画像形式を使用するほとんどのライブラリーで、すぐにコードを使用できます。(BMP、PNG、GIFはこのような表現をサポートしています)。また、いくつかの簡単な実装については、libpnglibjpegも確認してください。


0

コーナーではなくチャートの境界を探してみませんか?エッジ検出器を使用してから、ハフ変換を使用して直線を見つけることができます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.