2011-01-05 8 views
8

今日、私は多くの質問をしています。私の質問のいくつかの部分でも、何か助けが必要です。 これらの質問には本当に緊急の答えがありますので、私と一緒にベストを尽くしてください。画像安定化を実装するopencv、C++

私はオプティカルフローメソッドを使用して画像安定化に取り組んでいます。このステップは正しく行われ、すてきな結果が得られました。ビデオの安定化を実装するには、次の2通りの方法があります。 最初の方法: 最初のフレームのフィーチャ次のフレーム。今、私の監督は私にこのようにするように勧めました。キャンバスを元のフレームよりも2倍大きくして、最初のフレームを中央にコピーします。次のフレームごとに、私が得た変換を使ってオフセットと回転を計算します。これらのパラメータを使用して、次のフレームを補正された位置にコピーします。これにより、修正されたビデオが生成されます。

どのようにするのですか? OpenCVの機能があれば、それを助けてください。

第二の方法、

私はそれを私はホモグラフィ行列を取得した画像を、ワープにより補正されたビデオを取得しようとしていた自分の道を、やろうとしたが、それは動作しません機能cvWarpPerspective().とにかく、安定したイメージを得るために私がここでやっていることが正しいのですか?

質問:

1-マイナスの値を与えるホモグラフィ行列は正しいですか?

2-私は最初のフレーム

Y =回転行列にその場所に2つ目のフレームで推定機能を戻すために、この方程式を行う必要があり、回転及び並進行列について上述したよう* x + translation matrix

時には完璧な結果が得られ、非常にひどい結果が得られ、負の値が得られ、離れた場所から離れているのはなぜですか?

あなたはそれが

はそんなにありがとうサブ質問だ場合にも答えることができるものを答えてください。

+0

第2の方法 - 質問2:良い結果が得られた後に悪い結果が得られた場合は、おそらく正しい方法であることを意味します。ただし、結果をフィルタリングしたり、イメージを前処理して、常に満足のいく結果を得る必要があります。 – nacho4d

+0

@Mario、私は今、同様の問題を抱えています。どのように問題を解決しましたか?画像の安定化のために書いたコードを共有しましょうか? – tom

+0

@tom:もうこれ以上のことはしませんでした。私はあなたが上に見ることができるこの問題を残しました。私は別のプロジェクトを取った – Mario

答えて

-1

ホモグラフィ行列が負の値を与えるのは正しいですか?

おそらくそうではありません。私はそれが "後ろから"イメージを見る必要があると思う。

別の時間が非常に 私は負の 値を取得ひどい結果とかなり離れた場所 からを与え、彼らはそれが そのようなものだなぜ、ですることになって?

いくつかのアイデア:

  • int型のオーバーフロー?
  • 機能が正しく検出されませんでしたか?
  • 私の記憶が正しければ、ホモグラフィ行列にのみ機能翻訳が
+0

翻訳がNULLの場合、2Dホモグラフィはうまく動作します。 – ssegvic

1

NULLでないときあなたがグローバルアライメント回復のためにあなたのアルゴリズムを台無しに間違った対応を持つ可能性があります表示されます(あなたはアルゴリズムを使用してくださいところでを、?) 。ほんの一握りの対応で合成データセットに何が起こるのかを調べることは助けになるかもしれません。

関連する問題