ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

projective2d クラス

2 次元射影幾何学的変換

説明

projective2d オブジェクトは、2 次元射影幾何学的変換をカプセル化します。

コード生成 サポート: あり。

MATLAB Function ブロック サポート: あり。

構築

tform = projective2d() は、恒等変換に該当する既定のプロパティ設定を使用して projective2d オブジェクトを作成します。

tform = projective2d(A) は、有効な射影変換を指定する 3 行 3 列の入力配列 A を基に projective2d オブジェクトを作成します。

入力引数

A

次の形式の有効な射影変換を指定する 3 行 3 列の行列。

 A = [a b c;
      d e f;
      g h i]

既定値: 恒等変換

プロパティ

T

2 次元フォワード射影変換を定義する 3 行 3 列の倍精度浮動小数点行列。

行列 T は次の規則を使用します。

[x y 1] = [u v 1] * T

ここで、T の形式は次のとおりです。

[a b c;...
 d e f;...
 g h i];

Dimensionality

入力点と出力点の両方の幾何学的変換の次元を表します。

メソッド

invert幾何学的変換の反転
outputLimits入力空間範囲に基づく出力空間範囲の特定
transformPointsForwardフォワード幾何学的変換の適用
transformPointsInverse点への 2 次元幾何学的逆変換の適用

コピーのセマンティクス

値。値クラスがコピー操作に与える影響については、MATLAB® ドキュメンテーションの「オブジェクトのコピー」 (MATLAB)を参照してください。

すべて展開する

変換を定義する projective2d オブジェクトを作成します。

theta = 10;
tform = projective2d([cosd(theta) -sind(theta) 0.001; sind(theta) cosd(theta) 0.01; 0 0 1]);
tform = 

  projective2d with properties:

                 T: [3x3 double]
    Dimensionality: 2

フォワード幾何学的変換を入力点に適用します。

[X,Y] = transformPointsForward(tform,5,10)
X =

    6.0276


Y =

    8.1265

前の手順で得た出力点に幾何学的逆変換を適用して、最初の点に戻します。

[U,V] = transformPointsInverse(tform,X,Y)
U =

    5.0000


V =

    10

イメージを読み取ります。

A = imread('pout.tif');

幾何学的変換オブジェクトを作成します。

theta = 10;
tform = projective2d([cosd(theta) -sind(theta) 0.001; sind(theta) cosd(theta) 0.01; 0 0 1]);

変換を適用してイメージを表示します。

outputImage = imwarp(A,tform);
figure, imshow(outputImage);

定義

すべて展開する

この情報は役に立ちましたか?