2017-02-15 56 views
0

画像内のカメラとピクセルの距離を(実世界単位で、cm/m/..)調べる方法を教えてください。画像内のカメラとピクセルの距離を計算する

カメラの水平(120度)と垂直(90度)の視野、カメラの角度(-5度)、カメラの設置高さ(30 cm)です。

これが私が必要とするすべてであるかどうかはわかりません。カメラに関する情報はどうすればいいですか?また、カメラと1ピクセル間の距離を計算するにはどうすればいいですか?

「カメラとピクセル」との距離を言うのは間違いかもしれませんが、私の言うことは明らかです。何かが明確でない場合は、コメントに記入してください。

ありがとうございます!

+0

1つのカメラと1つの画像を使用して範囲を取得することはできません。それが私たちが2つの目を持つ理由です。さまざまな観点からスナップショットを撮り、範囲を見積もります。 – Rotem

+0

@Rotemご返信ありがとうございます。写真は高速で撮影されるので(カメラはおもちゃの車に置かれるので)、複数のスナップショットを撮ることはできません。 –

+0

ビデオカメラであれば複数のスナップショットを撮ることができ、車がいつ何かを打つのを知る必要があります... – Rotem

答えて

2

「1台のカメラですべてのピクセルの奥行きを計算するにはどうすればいいですか?いくつかの特別なハードウェアを追加しないと、これは実行可能ではありません。例外はありますが、時間や予算に制限があると思われますが、いくつか挙げておきます。

おもちゃの車が衝突を避けることができるように奥行きを見つけたい場合は、奥行き測定が必要であると想定する必要はありません。 Googleのオプティカルフローコリジョン回避機能を使用して、それがあなたのニーズを満たしているかどうかを確認します。

代わりに、いくつかのSimultaneous Mapping and Localization(SLAM)スキームの一部として深さを測定する場合は、解決する別の問題です。好ましくは、1つまたは複数のレーザーラインやレーザスポットの光の

  • プロジェクトパターン、:実装することは困難、とおもちゃの車のプロジェクトのために、おそらくリモートで実行可能ではないものの、単一のカメラを使用して距離を測定する方法はいくつかありますドットがどのように発散または収束するかに基づいて深さを決定する。実装は完全に再現するにはあまりにも複雑すぎますが、Kinectバージョン1はこの「構造化ライト」の原則で動作します。衝突の警告を簡単にするには、より簡単に同じ原則を適用することができます。たとえば、画像の右側に投影された光のパターンがすぐに変わる場合は、左に曲がります!構造化されたライトを使って距離を推定する方法を学ぶことは重要なプロジェクトですが、多くの参考文献があります。
  • 1つのカメラセンサーが世界の2つの異なるビューを見ることができるように光路を分割します。私は小さなカメラ用の光スプリッタを認識していませんが、存在する可能性があります。しかし、スプリッタを見つけても、ステレオビジョンを実装するのは難しい問題が残っています。ステレオビジョンには固有の問題があります(下記参照)。
  • 多少なりとも小さいIntel R200など、別のセンサーを使用して深度データを生成します。 (http://click.intel.com/intel-realsense-developer-kit-r200.html
  • 飛行時間型カメラを使用します。これらは、Kinectバージョン2に組み込まれたセンサーの種類といくつかのジェスチャ認識センサーです。いくつかの企業が、小型の飛行時間型センサを製作しているか、または積極的に開発している。彼らは深度データを生成し、フルカラーの画像を提供します。
  • 制御された環境でのみ車を運転してください。

おもちゃ車が動作する環境は重要です。おもちゃの車の環境を厳重に制御できる環境に制限することができれば、複雑なアルゴリズムを書く必要を制限することができます。多くのイメージング問題に当てはまるように、狭義に定義された問題は簡単に解くことができますが、一般的な問題はほとんど解くことができません。あなたの車をどこにでも走らせたいなら(おそらくそうでないかもしれない)、問題は解決できないと仮定します。

あなたが利用できる最高の技術を表している既製の深度センサーを持っている場合でも、あなたはまだ限界に実行します:深センスの

  • 各タイプには弱点があります。市場の深度センサーは、暗くて光沢のある表面でうまくいくわけではありません。 (一部のスポットセンサーは、暗くて光沢のあるサーフェスでも問題ありませんが、エリアセンサーでは検出されません)。ステレオセンサーは、大規模でフィーチャーレスな領域に問題があり、多くの処理能力が必要です。等々。
  • 奥行き画像を取得した後でも、計算を実行する必要があります。オンボード処理能力が足りない場合、これはおもちゃの車に乗り込むのが難しいでしょう。
  • 深度センシングを使用するために多くの妥協を必要とする場合は、より簡単な超音波センサーを使用して衝突を避けることを検討することもできます。

幸運!