私は、上級プロジェクトで遭遇したジレンマに関して、stackoverflow コミュニティから何らかのガイダンスを得られることを望んでいました。まず最初に、私は初心者のプログラマーであり、このプロジェクトは私の頭をはるかに超えていたとすぐに言う人もいると思います。私はすぐに、これがおそらく真実であることに気づきました。
では、それは仕方のないことです。いくつかの定義を示しましょう。
プロジェクトの目標: プロジェクト の目標は、他の多くの人がさまざまな SO の質問で達成しようとしてきたように (その多くは、この取り組みの過程で私にとって非常に役に立ちました)、駐車スペースが満車か空いているかを検出することです。最終的には、そのようなレポートをユーザーに返します (理想的には、使いやすさのために iPhone や Droid、またはその他のモバイル アプリを介して)。
使用ツール: AForge.Net ライブラリのリソースを多用しました。IP カメラからのビデオのキャプチャ、画像へのフィルタの適用、および最終的に検出の目標を完了します。その結果、主に初心者にとって使いやすいという理由で、C# でプログラミングすることを選択したことがわかります。その他のオプションには、MATLAB/C++、OpenCV を使用した C++、およびその他の代替手段が含まれていました。
問題
ここで私は問題に遭遇しました。以下は、AForge Image Processing Lab で前処理された画像のリンクです。使用された一連のフィルターとプロセスは、グレースケール、ヒストグラム均等化、ソーベル エッジ検出、そして最後に大津しきい値処理でした (ただし、最終ステップが必要であるとは確信していません)。
http://i.stack.imgur.com/u6eqk.jpg
もちろん、肉眼での画像からわかるように、カメラで監視しているスペースに明らかに駐車中の車である検出されたエッジのシーケンスがあります。これらの車は、光沢のある車輪のパターン、本質的にサイド ウィンドウの外縁を表す一種の「二重線路」パターン、およびこの場合のナンバー プレートの輪郭によって明確に定義されます。ただし、具体的には、プロジェクトの継続では、選択されたカメラはできるだけ多くのブロックをカバーする PTZ になるため、車の側面の特徴に焦点を当てたいと思います (ナンバー プレートなどの要素を排除します)。 . サンルーフの長方形などの機能も考慮される可能性がありますが、一般的なウィンドウの輪郭がそうであるのに対し、明らかにこれは車の普遍的な機能ではありません.
これらのパターンには違いがあり、もちろん車種やモデルによって異なることがわかります。しかし、一般に、このシーケンスは、目的のフィーチャの検索に成功するだけでなく、道路をビューから除外します (空きスペースを検出する場合、「最初のリトマス試験紙」として道路の色を使用するつもりであるため、重要です...道路のデータと一致するグレー レベルを検出した場合、特に領域内でエッジが検出されなかった場合は、安全に空きスペースを想定できると感じます)。私の質問はこれです。うまくいけば、サイト上の他の人に実際に役立つほど一般的です。
焦点を絞った質問:
画像セグメントを (クロッピングによって) 取得し、検出されたエッジ シーケンスをカメラからの将来の新しいフレームと比較する方法はありますか? より具体的には、余裕を持たせながら/本質的にエッジのわずかな違いに対する許容しきい値を作成しながらこれを行う方法はありますか?
質問に関する個人的な考え/ブレーンストーミング:
- 文字通りピクセルごとに比較する方法があると確信しています - 端の周りの長方形だけにトリミングし、トリミングした画像を新しく処理されたフレームにスライドさせて比較ピクセル-ピクセルごとですが、検出されたエッジと完全に一致しない限り、特に役に立ちません。
すべての助けに感謝します。必要に応じて明確にすることもできます。