2

平面オブジェクト画像の変換に使用できるランダム ホモグラフィ マトリックスを生成しようとしました。opencv には「patchgenerator」というクラスがあるようです。しかし、このクラスの詳細情報は見つかりません。また、アフィン変換でのみ機能すると言う人もいます。ランダムホモグラフィ行列を生成する方法はありますか? または、OpenCV関数を直接使用できますか? 多くのThx!

4

3 に答える 3

5

この投稿では、ランダムなホモグラフィをゼロから生成する方法について説明します。回転、平行移動、せん断、射影歪みを制御できます。

https://medium.com/uruvideo/dataset-augmentation-with-random-homographies-a8f4b44830d4

上記のリンクを簡単に要約すると、ホモグラフィは、ユークリッド変換、アフィン/せん断変換、および射影変換行列の乗算として記述できます。

ここに画像の説明を入力

ここに画像の説明を入力

ここに画像の説明を入力

ここに画像の説明を入力

于 2017-09-18T20:00:10.353 に答える
2

ランダムなスケーリング行列、平行移動行列、回転行列を掛け合わせることで、ホモグラフィ行列を作成できます。

H = T . S . R

回転行列は、たとえばオイラー角 (3 つのパラメーターの回転) を使用して生成できます。

平行移動行列は、各次元の点の平行移動に対応する最後の列エントリを持つ恒等行列です。

最後に、スケール行列には、対角上の各次元のスケーリング エントリがあります。

最終的なホモグラフィ行列Hは、最後のエントリ (右下隅) で割ることによって正規化できます。このエントリが小さすぎないかどうかを確認できます (2D ホモグラフィが必要で、変換された点を同じ平面に投影する場合)。

このアプローチの利点は、パラメータをより適切に制御できることです (たとえば、翻訳は、使用される典型的な翻訳量に対応します)。生成された同形異義語は、3 つの単純なマトリックスも可逆である限り、可逆であることが保証されます。

もちろん、たとえば、単位正方形に対して適切に動作するホモグラフィを生成し、実際の問題 (ピクセル単位の画像サイズなど) に合わせて行列をスケーリングできます。

于 2016-07-17T16:28:30.660 に答える