これは私の最初の画像処理アプリケーションです。この不潔な農民に親切にしてください。
アプリケーション:
映画のポスターを含む写真 (携帯電話で撮影) が指定されたデータセットで最も類似した写真を見つけ、類似度スコアを返す高速なアプリケーション (精度よりもパフォーマンスが重要)を実装したいと考えています。データセットは、同様の写真 (映画のポスターを含む携帯電話で撮影) で構成されています。画像はさまざまなサイズ、解像度にすることができ、さまざまな視点から撮影できます (ただし、ポスターは常に右向きであると想定されているため、回転はありません)。
このようなアプリケーションの実装方法に関する提案は、すべて受け入れられます。
OPENCV の機能説明:
私は OpenCV を使用したことがなく、OpenCV による機能の検出と説明に関するこのチュートリアルを読みました。
私が理解していることから、これらのアルゴリズムはキーポイント (通常はコーナー) を見つけ、最終的に記述子 (各キーポイントを記述し、2 つの異なる画像の照合に使用される) を定義することになっています。それらのいくつか(FASTなど)はキーポイントのみを提供するため、「最終的に」を使用しました。
最も類似したイメージの問題と LSH:
上記の問題は、「画像が与えられたときに、データセット内で最も類似した画像をすばやく見つける方法」という問題を解決しません。それを行うために、以前のアルゴリズムのいずれかによって取得されたキーポイントと記述子の両方を使用できます。上記の問題は最近傍問題のように見えます。ローカリティ センシティブ ハッシングは、高次元空間でこの問題の近似解を見つけるための高速で一般的なソリューションです。
質問:
私が理解していないのは、LSH で以前のアルゴリズム (つまり、キーポイントと記述子) の結果を使用する方法です。
この問題の実装はありますか?