カメラに追従させる


9

次学期に行っている講義をいくつか記録したいと思います。私はビデオカメラを持っていて、なんらかのサーボを使って方向を変えることができます。しかし、私は自分がどこにいるかを検出する方法がわかりません。放送機器を携帯していても大丈夫でしょう。ほとんどの場合、感度は部屋の左側にいるか右側にいるかを判別できるはずですが、それ以上は必要ありません。


1
最も簡単な方法は、コンピューターとWebカメラを使用することです。コンピューターは、頭と肩がサーボを制御する場所に沿ってモーショントラッキングを実行します。追跡アルゴリズムは、最も変化の大きいピクセルの位置の平均を探すのと同じくらい簡単です。または、利用可能なコンピューターを持っていませんか?
Chris H

@Chris H、このような簡単に利用できる関数型プログラムについての情報があれば、完璧な答えが得られると思います。
Kortuk

よくわかりませんが、OpenCVを検討してください。トリミングを適用してから、モーショントラッキング機能を適用できます。切り取りは、動いている他のものを拾わないようにするためです。合計で約100行のコードになるはずです。特に後でモーターとのインターフェースが必要になるため、別のプログラムを構成して学習するよりも、おそらく自分でコーディングする方が簡単です。
Chris H

等しく有効な2つの回答が与えられた場合、正しい行動方法は誰か教えてもらえますか。私はちょうどであることをランダムにいずれかを選択してください答えは?
kasterma 2010

@kasterma:はい、実際に別のものを実装した場合は、それを選びます。いつでも両方に投票できます。
Nick T

回答:


9

いくつかの単純なIR LEDを装着し、複数のIRレシーバーを配置することもできます。単純なIRフォトダイオードが狭い視野角で機能します。

これらをカメラのベースの周りに配置し、マイクロコントローラーに最大信号を示すマイクロコントローラーを読み取らせると、カメラをIR光源に向けることができます。

複雑に聞こえますが、それは非常にシンプルで、コンピューターを必要としません。ハードウェアは簡単に実行できますが、ノイズの多い環境(明るい光)では、IRを変調して、受信するブロードバンドノイズを回避したいと思うかもしれません。


私は実際にこれを試しましたが、大きなウィンドウがない限り動作します。
Chris H

@Chris H、大きな窓は、明るいIRエミッターを手に入れるための私にとっての挑戦です。多くの場合、変調は太陽光または蛍光灯のバックグラウンドIRの問題に大きく役立ちます。
Kortuk、

これは非常に良い解決策のように聞こえますが、私がIRを変調することを提案したとき、私はあなたが何を意味するのかわかりません。既知の周波数でIR LEDを点滅させてから、レシーバーでその周波数だけを検出してみますか?
kasterma 2010年

@kasterma、はい、それが私の言いたいことです。たとえば、IR LEDを40KHzでパルスし、次にレシーバーに40KHzでフィルターを作成して、太陽と光が放射する広帯域IRを無視するようにします。蛍光灯が発する周波数を回避するために、周波数を調整する必要がある場合があります。最初にこの変調なしで試してみて、仕様を満たしているかどうかを確認します。
Kortuk、2010年

私はこれがニンテンドーWiiで行われたのを見てきました。とてもかっこいい。+1
tyblu

7

あなたが探しているものは「ブロブ追跡」に関連しているかもしれません。これは、ロボット工学と視覚処理で一般的に使用されている手法です。

プログラミングチョップに応じて、C ++とPythonの両方で利用可能なOpenCV(オープンソースコンピュータービジョンライブラリ)を使用できます。他の言語には、ブロブ追跡をサポートするライブラリーがある場合があります。LabVIEWとMatlabにもこれをサポートするライブラリがあると思います。

一般に、セットアップはコンピューターがビデオを処理し、特定の色のブロブ(あなた)を見つけることです。次に、カメラフレーム内のブロブの位置の情報を使用して、カメラを向ける場所を決定できます。たとえば、Arduino(またはその他のマイクロコントローラー)を使用してカメラのサーボを駆動している場合は、シリアルポート経由でコマンドを送信して、カメラの目的の位置を更新できます。blobがフレームの中央にある必要な「ボックス」を残すとき。

必要に応じて、比例制御、積分制御、微分制御(インターネット上で検索している場合はPID)のいくつかの組み合わせを実装することで、さらに巧妙な追跡を行い、フレームの中央に自分自身を配置しようとすることができますが、これはさらに多くの場合がありますあなたのアプリケーションに必要なものより。

編集:少し検索すると、次の結果が得られました:Creative Applications。これは多かれ少なかれ私が説明したソリューションです。


4
「ユニークな色の」シャツを買う時がきた。
Nick T

2
さらに検討した結果、Kortukとuser1498のIR LEDとセンサーのソリューションがより堅牢なアプローチになると思います。ニックTが提起する点のためにこれは真実です。色空間はすでにかなり混雑しているので、自分を選ぶのは難しいでしょう。
mjcarroll 2010年

それはエンジニアが問題から後退しているように聞こえます。
Kortuk

@Kortuk、必ずしも後退しない。私の解決策は、完全に自己完結型のシステム(外部センサーなし、問題の説明で明示的に述べられている以上のハードウェアなし)である限り、「最善」であるとまだ思います。実装の容易さとロバスト性(ビジョンアルゴリズムはやや細心の注意が必要)に関しては、ソリューションの方がはるかに優れていると思います。
mjcarroll 2010年

ハードウェアソリューションの方が自己完結型であると思いますが、両者には大きなトレードオフがあります。
Kortuk

3

1つ以上のIR LEDを装着すると、Wiコントローラーのようなカメラがあなたを追跡する可能性があります


2

Kinectと一部の処理ソフトウェアにとって理想的な仕事のように聞こえます。3D情報で被写体を分離でき、パンチルトモーターとビデオ出力を備えています。


1
私はこれが最も単純な方法であるかもしれないが最も安いわけではないことに同意します
マット・ウィリアムソン

2

これが大学院生が発明された理由です。最終的には電子的に行うことができると思いますが、脳のある人にカメラを操作してもらうよりも、やりがいのある講義がたくさんあるはずです。


さらに、ビールは電気より安いです。
最適なCynic

0

私はこの質問をした人であり、私はOpenCVの回答とIR主導の回答の両方が本当に好きで、両方で遊んでいきます。この時点で、どちらにも私にとっていくつかの問題があります。IR主導の注文が遅れており、私のウェブカメラは不本意です。

そのため、少し前に遊んだLV-Maxsonar EZに目が行きました。私は本当にそれに到達したことはありませんが、今ではそれはここでまともな解決策を生み出すかもしれないようです。部屋の前を移動するのは私だけなので、干渉もコンピュータも必要ありません。

このデバイスは、特定の方向の距離を測定します。この距離が変化した場合、誰かがその前を移動し、カメラはそのセンサーが指している方向に移動する必要があります。


0

PrimeSense開発キット(Kinectのメーカー)を確認してください。

製造元は、Kinect(およびDevKit)のWindowsおよびUnixドライバをここでリリースしました:http : //www.openni.org/


0

IRスプラッシュの追跡(およびカメラからのフィルタリング、部屋の日射量の同意)により、あなたと学生はADR作業を行う機会が増え、あなたとあなたの選択したコンテキストをゾーン0に置くことができます。そうは言っても、Cnet.com(または別の重要な場所、Amazon、Acer Supportなど)またはCamtasiaでよくレビューされているバンドルされたWebカメラアプリケーションを使用して、指示どおりに使用したのでしょう。


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