問題タブ [photogrammetry]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
image-processing - 画像処理プロジェクトの私の研究分野は何ですか?
私の最終年度のプロジェクトでは、車両の詳細変更システムを行っています。システムは、次のタスクを実行できる必要があります。一定の距離、たとえば 5m から撮影した車両のサイズ画像を使用しています。さまざまな色とリムの画像が保存されています。これが私のアプリケーションです。これが基本的な考え方です。
- 車両のタイヤと合金リムを検出する
- 取り付けられたリムのリムサイズを検出して測定する
- 車両に新しい合金リムを適用します(元の画像の上に合金リムを埋め込むか、置くかはまだ決定していません)
- 車体色変更
- 車両の窓に色合いを適用する
ホイールサイズの測定
モディファイドアロイホイール変更イメージ
では、このプロジェクトの私の研究分野は何でしょうか? 何を知っておくべきですか?皆さん、私を助けてもらえますか?
ホイールの測定には写真測量技術を使用する必要があることはわかっています。
c++ - 回転/スケールの不変性が導入されると、OpenCV Orb が一致を見つけられない
OpenCV 2.3.1 で Orb 機能検出器を使用するプロジェクトに取り組んでいます。私は8つの異なる画像間の一致を見つけています.6つは非常に似ています(カメラ位置の20cmの違い、線形スライダーに沿っているため、スケールや回転の変動はありません)、次にどちらかから約45度の角度から撮影された2つの画像側。私のコードは、非常によく似た画像間で正確な一致を多数見つけていますが、より異なる視点から撮影された画像についてはほとんどまたはまったく一致していません。コードの関連部分と思われるものを含めました。さらに情報が必要な場合はお知らせください。
opencv - 既知のオブジェクトサイズを使用して画像からオブジェクトを測定する
ですから、私がしなければならないのは、普通のユーザーが撮った画像から足の長さを測定することです。その画像には、黒い靴下を履いた足、コイン(または他の既知のサイズのオブジェクト)、および他の2つのオブジェクトが置かれる白い紙(A4など)が含まれます。私はすでに何を持っていますか?-私はすでにopencvを使用していましたが、単純なプロジェクトです。-私はすでにカメラキャリブレーション( 「LearnOpenCv」 )に関するいくつかの記事を読み始めましたが、それでも私がここまで行かなければならないかどうかわかりません。
私が今必要としているのは、この問題を解決するための正しい方法に従っているかどうかがまだわからないため、オリエンテーションです。いくつか質問があります。2つまたは3つの足の測定値を取得するために、カメラを実際に調整する必要がありますか?線を測定するために関心のあるポイントを見つけるにはどうすればよいですか?各画像は異なる画像であるか、従うべきテクニックがありますか?
追伸:私の英語について申し訳ありませんが、私は本当にそれを改善する必要があります:-/
opencv - ある画像から別の画像へのピクセルの再投影
平面シーンの写真を撮るキャリブレーション済みのカメラが多数あります。簡単にするために、カメラが 3 台あるとします。これらのカメラは一般的な動きをしていますが、ほとんどが平行移動と若干の回転です。カメラの位置例
タスクは、それらを完全にステッチすることです。キャリブレーションされたカメラで撮影された一連の画像だけで、3D 座標についての知識はありません。
私がやること:
OpenCV で SURF/SIFT 実装を使用して特徴を検出し、各画像ペア (1->2、2->3、1->3) 間でfindHomographyを使用して初期ホモグラフィを取得します。これらのホモグラフィから、各カメラのポーズの初期推定を取得します(これと同様の手順)
次に、バンドル調整手法を使用して、一致する各ペアの再投影エラーを最小限に抑えます。最適化されたパラメーターは、3 つの並進値と 3 つの回転値 (ロドリゲスの回転式から取得) ですが、後で固有パラメーター (焦点、主点など) を追加できます。
画像 #2 が参照フレームであると仮定すると (他の 2 つの画像との一致が最も多いため)、その回転行列と平行移動行列はそれぞれ恒等行列とゼロ行列です。
イメージ #2 からイメージ #1 へのキーポイント (イメージ #2 とイメージ #1 の両方で表示) の再投影を (疑似コード) として計算します。
また
ここで、r__ は R1 行列の要素であり、両方の組み込み行列は次の形式です。
参照フレームの Z2 座標を 1 と仮定しています。
次の段階では、取得したカメラ行列 (K1、R1、T1、K3、R3、T3) を使用して、画像 #1 と #3 を画像 #2 の共通の座標系にワープします。
問題は、画像 #1->#2 からの逆再投影が次のようになるため、画像 #2 の参照フレームへの正しい再投影に必要な Z1 と Z3 についての知識がないことです。
ここで、R__ は inv(R1) 行列の要素です。
バンドル調整 (2d->2d) の再投影誤差を計算し、画像を共通の座標系にワープするより良い方法はありますか? OpenCV のステッチング モジュールには非常によく似たフレームワークがあることに気付きましたが、ここではそうではなく、純粋な回転運動を想定して動作します。
opencv - emguによる姿勢推定
emgu を使用してチェス盤のターゲットの姿勢推定を行いたいと思います。私はすでにカメラの組み込みを決定しています。ただし、私の問題を解決すると思われる emgu の solvePnP 関数が見つかりません。
emguでこの関数を見つける方法を知っている人はいますか?
emgu を使用してポーズ推定を行う別の方法はありますか? CalibrateCamera カメラを使用して、何らかの方法で外部関数を使用できると思いますが、これは必要以上に計算量が多いと思います。またはそれは?