画像内の特定の機能の存在を検出するための良い方法
-
17-09-2020 - |
質問
ビデオチャットを作りましたが、いつものように、多くの男性がehmのような、サービスを虐待する(私はそのような虐待の性質を把握するためにそれをあなたに任せます)。私のユーザーのほとんどのこともしません。いいえ、私はchatroulette.comを盗まれていません:-)率直に言って、私はこれをここにもたらすために半誇張していますが、私の質問は技術的で具体的です:
ユーザーがカメラで彼のジャンクを点滅させるように、このコンテンツが不明瞭な文字であるときに、それらのビデオコンテンツに基づいてユーザーをフィルタ/拒否したいです。どのような画像比較アルゴリズムが私のニーズに合うようになるでしょうか?
私は一週間かそこらの科学論文を読んで過ごしています、そして、sift、surf、そしてウェーブレットベースのアプローチのような複数の理論とそれらの実装を認識してきました。これらのそれぞれには、もちろんの欠点と利点があります。しかし、私のイメージ比較の性質は非常に特有のものです - 否定の範囲のビデオで特定の身体部分が遭遇した場合 - 私はどれが私に合うか疑問に思いますか?
現在、私は次のように何かにかかっています(ウェーブレベースと私が独自の革新的なものになると思います)。 http://grail.cs.washington.edu/projects/query/
あるいは、サーフの実装ができると考えていますが、私は誤検知を与えることができることを恐れています。そのような実装は、特定の機能に重みを認識/与えるように訓練されますか?
解決
は、検出を特徴とする必要はありませんが、オブジェクト認識、すなわちViola-Jonesメソッドです。 OpenCVで出荷されたFACEDETECT.CPPの例を見てください(いくつかの準備ができているハルカルシャデスもあります.face Detector、Body Detector ...)。それはまたハールウェーブレットと呼ばれる画像機能を使用します。カラー情報の使用に興味があるかもしれません、カムシフトアルゴリズム(OpenCVでも利用可能)を見てください。
他のヒント
これはコンピュータビジョンについてのより多くのものです。あなたはあなたのイメージ/ビデオシーケンスのオブジェクトを認識しなければなりません...それは何でも、多くの異なるアルゴリズムを使うことができます(それらのほとんどのほとんどはスペクトルドメインで動作するので、変換を使わなければならない理由です)。
正確であるためには、ナレッジベースまたは少なくともオブジェクトを定義するいくつかの記述子も必要になります。
OpenCVを試してください、それはすでに実装されているいくつかのアルゴリズム(そして基本記述子)を持っています。
ニューラルネットワークのように「訓練」(ニューラルネットワークのようなもの)を「訓練する」ことができるアプリケーション/アルゴリズムがあり、そのトレーニングに基づいてオブジェクトを識別することができます。それらのほとんど(少なくとも、良いもの)はあまり人気がなく、コンピュータビジョン、オブジェクト認識、AIなどに特化した研究グループでのみ見つけることができます。
頑張って!