ドキュメンテーション

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

padarray

説明

B = padarray(A,padsize) は配列 A0 (ゼロ) でパディングします。padsize は、追加するパディングの量と (その次元に沿ってパディングを追加する) 次元の両方を指定する非負の整数ベクトルです。ベクトル内の要素の値は、パディングの量を指定します。ベクトル内の要素の順序は、パディングする次元を指定します。

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

B = padarray(A,padsize,padval) は配列 A のパディングを行い、padval は、パディングする要素に使用する定数値または配列要素を複製するメソッドを指定します。

B = padarray(___,direction) は、direction で指定した方向に A をパディングします。

すべて折りたたむ

ベクトルの先頭のパディング

ベクトルの先頭に、パディング値 9 をもつ 3 つのパディングの要素を追加します。

A = [ 1 2 3 4 ]
A = 1×4

     1     2     3     4

B = padarray(A,3,9,'pre')
B = 4×4

     9     9     9     9
     9     9     9     9
     9     9     9     9
     1     2     3     4

2 次元配列の各次元のパディング

配列の最初の次元の末尾に 3 要素のパディング、2 番目の次元の末尾に 2 要素のパディングを追加します。パディングする値として、各次元の最後の配列要素の値を使用します。

A = [ 1 2; 3 4 ]
A = 2×2

     1     2
     3     4

B = padarray(A,[3 2],'replicate','post')
B = 5×4

     1     2     2     2
     3     4     4     4
     3     4     4     4
     3     4     4     4
     3     4     4     4

3 次元配列の各次元のパディング

3 次元配列の各次元に 3 要素のパディングを追加します。各パディング要素には値 0 が含まれています。

最初に 3 次元配列を作成します。

A = [1 2; 3 4];
B = [5 6; 7 8];
C = cat(3,A,B)
C = 
C(:,:,1) =

     1     2
     3     4


C(:,:,2) =

     5     6
     7     8

3 次元配列のパディング

D = padarray(C,[3 3],0,'both')
D = 
D(:,:,1) =

     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0
     0     0     0     1     2     0     0     0
     0     0     0     3     4     0     0     0
     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0


D(:,:,2) =

     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0
     0     0     0     5     6     0     0     0
     0     0     0     7     8     0     0     0
     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0
     0     0     0     0     0     0     0     0

イメージのすべての辺にパディングを行います。

gcam = gpuArray(imread('cameraman.tif'));
padcam = padarray(gcam,[50 50],'both');
imshow(padcam)

入力引数

すべて折りたたむ

パディングされる配列。任意の次元の数値配列または logical 配列として指定します。定数値でパディングする場合、A は数値または logical のいずれかでなければなりません。'circular''replicate'、または 'symmetric' メソッドを使用してパディングする場合、A は任意のクラスにすることができます。

GPU を使用してパディングを実行するには、A を数値配列または logical 配列を含む gpuArray として指定します。

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

各次元に追加するパディングの量。非負の整数のベクトルとして指定します。たとえば、padsize 値が [2 3] である場合、最初の次元に 2 要素のパディング、2 番目の次元に 3 要素のパディングを追加することを意味します。既定の設定では、paddarray は、指定された次元で、最初の要素の前と最後の要素の後にパディングします。

データ型: double

パディングに使用する値。次のいずれかを指定します。

平均

数値スカラー

定数値の要素によって配列をパディングします。

'circular'

次元内で巡回的に要素を繰り返しパディングします。

'replicate'

配列の境界の要素を繰り返すことによってパディングします。

'symmetric'

配列自体の鏡像で配列をパディングします。

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

各次元に沿って配列をパディングする場所。以下の値のいずれかとして指定します。

平均

'both'

各次元に沿って、最初の要素の前と最後の要素の後にパディングします。

'post'

各次元に沿って、最後の配列要素の後にパディングします。

'pre'

各次元に沿って、最初の配列要素の前にパディングします。

データ型: char | string

出力引数

すべて折りたたむ

パディングされた配列。A と同じクラスの数値配列として返されます。

GPU を使用してパディングを実行する場合、B は数値配列を含む gpuArray として返されます。

拡張機能

R2006a より前に導入