ドキュメンテーション

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

imrotate

説明

J = imrotate(I,angle) は、中心点を中心にしてイメージ I を反時計回りに angle 度回転します。イメージを時計回りに回転させるには、angle の値を負の値に指定します。imrotate は、回転したイメージ全体が含まれる大きさの出力イメージ J を作成します。imrotate は、最近傍内挿法を使用して、回転したイメージの外側の J のピクセルの値を 0 (ゼロ) に設定します。

オプションで、回転を GPU を使用して実行できます (Parallel Computing Toolbox™ が必要)。詳細は、GPU での画像処理を参照

J = imrotate(I,angle,method) は、method で指定された内挿法を使用して、イメージ I を回転します。

メモ

'bicubic' 内挿法では、GPU と CPU で若干異なる結果が得られる可能性があります。

J = imrotate(I,angle,method,bbox) は、bbox で出力イメージのサイズを指定し、イメージ I を回転します。'crop' が指定されると、imrotate は出力イメージのサイズを入力イメージと同じにします。'loose' が指定されると、imrotate は回転したイメージ全体が出力イメージに含まれるようにします。

すべて折りたたむ

イメージをワークスペースに読み取った後、グレースケール イメージに変換します。

I = fitsread('solarspectra.fts');
I = rescale(I);

元のイメージを表示します。

figure
imshow(I)
title('Original Image')

イメージを時計回りの方向に 1 度回転し、水平に合わせます。この例では、双一次内挿を指定し、結果が元のイメージと同じサイズにトリミングされるように要求しています。

J = imrotate(I,-1,'bilinear','crop');

回転させたイメージを表示します。

figure
imshow(J)
title('Rotated Image')

イメージを gpuArray オブジェクトに読み取ります。

 X = gpuArray(imread('pout.tif'));

グラフィックス処理装置 (GPU) での操作実行により、イメージを回転させます。

Y = imrotate(X,37,'bilinear','loose');

回転させたイメージを表示します。

figure; imshow(Y)

入力引数

すべて折りたたむ

回転するイメージ。数値配列または logical 配列として指定します。

GPU を使用して計算を実行するには、I を数値配列または logical 配列を含む gpuArray として指定します。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

回転量 (度単位)。数値スカラーとして指定します。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

内挿法。次のいずれかの値に指定します。

説明

'nearest'

最近傍内挿。出力ピクセル値として、対象となる位置の中に存在している値を割り当てます。周りの他のピクセルは、考慮に入れません。

'bilinear'

双一次内挿。出力ピクセル値は、最近傍の 2 行 2 列のピクセルの重み付き平均です。

'bicubic'

双三次内挿。出力ピクセル値は、最近傍の 4 行 4 列のピクセルの重み付き平均です。

メモ

双三次内挿は、元の範囲外のピクセル値を生成します。

データ型: char | string

出力イメージのサイズを定義する境界ボックス。次のいずれかの値に指定します。

説明

'crop'

出力イメージ J と入力イメージ I のサイズが同じになるように、回転したイメージが適合するように切り取ります。

'loose'

回転したイメージ全体が出力イメージ J に含まれます。JI より大きくなっています。

データ型: char | string

出力引数

すべて折りたたむ

回転したイメージ。数値配列または logical 配列として返されます。

GPU を使用してイメージを回転する場合、J は数値配列または logical 配列を含む gpuArray として返されます。

ヒント

  • この関数は Version 9.3 (R2015b) で変更されました。以前のバージョンの Image Processing Toolbox™ は異なる空間規則を使用しています。以前の実装時と同じ結果を得る必要がある場合、関数 imrotate_old を使用してください。

  • 場合によって、この関数は、uint8uint16single および double の各データ型に対し、ハードウェア最適化を利用して実行を高速化します。

拡張機能

R2006a より前に導入