3

私は一連のビデオ フレームを安定させるために openCV の見積もり RigidTransform を使用していますが、これは非常にうまく機能します。

関数は 2x3 変換行列 M を返します。

|  a_11 a_12 b_1 |
| -a_12 a_11 b_2 |

私が理解している限り、b要素は移動を表し、a要素はスケーリングと回転を行うために使用されます。

私がやりたいことは、カメラのズーム倍率を表す値である M からグローバル スケールを取得することです。値からこれを正しく計算するにはどうすればよいaですか?


私が取得したいものをもう少し明確にするために、ここに例を示します。EstimatorRigidTransform が、最初のフレームに関して、以下の 2 番目のフレームの変換行列 M を計算するとします。

この場合のグローバル ズーム係数は約 2 である必要があります。私の質問は、M からこの値を取得する方法です。

4

1 に答える 1

3

わかりました、さらに検索した後、ここで素晴らしい答えを見つけました: https://math.stackexchange.com/questions/13150/extracting-rotation-scale-values-from-2d-transformation-matrix

「ズーム」はs_xとs_yで表されます。これらの 2 つの値はほぼ等しくなります (カメラでキャプチャされたビデオのズームは両方向で等しいため)、どちらかを取ることができます。

于 2014-05-26T17:41:34.670 に答える