2016-05-24 6 views
0

私は仮想キーボードでプロジェクトを進めています。 ウェブカメラを使用して、壁に投影されたキーボードの黒いキー(プロジェクタを使用して投影されたもの)を検出したいと考えています。Pythonを使用してWebカメラのビデオから白いシートの黒い四角形を検出OpenCV

キーボードが黒鍵と白の背景を持つ - Image of keyboard

それが投影されるようにほとんどが、キーボードのいくつかの連続的な動きがあるだろう。 私の理解では、この白い矩形を検出してから、フレーム内の黒いキーをさらに検出する必要があります。

これが正しいかどうか教えてください。 PythonとOpenCVを使ってどうすればいいですか?

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

答えて

1

私はあなたが機能している投影されたキーボードを作成したいと思っています。そうであれば、ウェブカメラ画像内の投影されたキーの位置を最初にマッピングすることが効果的です。次に、この同じ画像内の「プレス」位置を検出する。 2つの情報を比較することで、「キー押下」を「検出」することができます。まず、「プレス」の位置を検出することがより困難なので、それは何を想像していますか? (キーの位置をマップするために何ができるか教えてください)(これは真剣に進んだプロジェクトの男です)

+0

はい、私はそれを正確にしたいと思います。しかし、最初の難しさは、キーボードをウェブカムからの入力として受け取り、黒鍵(矩形)を別々に検出し、それらの座標を保存することです(重心をファイルに入れます)。私はこのアプローチをMATLABで使用しました。どのように私はフレームの入力をWebカメラのビデオから入力し、それに長方形の検出を適用するのですか? – borb183

+0

そして、私は指で赤い色のバンドを使って 'keypress'を検出しようとします。おそらく、後続のフレームを減算し、赤色のみをフィルタリングします。その周りにボックスを作成し、重心を取る。したがって、両方のセントロイドは以後、このタスクに対して – borb183

+0

と比較されます。クラスBlobdetector http://www.learnopencv.com/blob-detection-using-opencv-python-c/を使用することができますが、「投影された画像座標とソース画像の座標を比較して、よく知られているpaternを投影し、次に "colission detection"をします。bettwinはprojectionToSourcePOS(押された位置)と "sources keys colisions boxs" – user5698387

関連する問題