このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
randomAffine2d
ランダムな 2 次元アフィン変換の作成
説明
は、名前と値のペアの引数を使用して、アフィン変換のタイプを指定します。tform
= randomAffine2d(Name,Value
)
例
イメージのランダムな回転
イメージを読み取って表示します。
I = imread('kobi.png'); imshow(I)
イメージを回転するaffine2d
変換オブジェクトを作成します。関数randomAffine2d
は、区間 [35, 55] 度内の連続一様分布から回転角度をランダムに選択します。
tform1 = randomAffine2d('Rotation',[35 55]);
イメージを回転して、結果を表示します。
J = imwarp(I,tform1); imshow(J)
変換オブジェクトtform1
は、すべてのイメージを同じ量だけ回転します。ランダムに選択された異なる量だけイメージを回転するには、新しいaffine2d
変換オブジェクトを作成します。
tform2 = randomAffine2d('Rotation',[-10 10]); J2 = imwarp(I,tform2); imshow(J2)
カスタム回転範囲を使用したイメージのランダムな回転
イメージを読み取って表示します。
I = imread('sherlock.jpg'); imshow(I)
イメージを回転するaffine2d
変換オブジェクトを作成します。カスタム範囲から回転角度を選択するには、関数ハンドルとして名前と値のペアの引数'Rotation'
を指定します。この例では、2 つの重なっていない区間から角度を選択するmyrange
という名前の関数 (この例の終わりで定義) を指定します。
tform = randomAffine2d('Rotation',@myrange);
イメージを回転して、結果を表示します。
J = imwarp(I,tform); imshow(J)
サポート対象の関数
この例では、2 つの区間 (-10, 10) と (170, 190) のいずれかを同じ確率で最初にランダムに選択する関数myrange
を定義します。この関数は、選択した区間内で一様分布から単一のランダムな数を返します。
functionangle = myrange()ifrandi([0 1],1) a = -10; b = 10;elsea = 170; b = 190;end角= a + (b)。*兰德(1);end
入力引数
名前と値の引数
例:tform = randomAffine2d('XReflection',true)
オプションの引数Name,Value
のコンマ区切りペアを指定します。Name
は引数名で、Value
は対応する値です。Name
は引用符で囲まなければなりません。Name1,Value1,...,NameN,ValueN
のように、複数の名前と値のペアの引数を、任意の順番で指定できます。
XReflection
—水平方向のランダムな反転
false
(既定値) |true
水平方向のランダムな反転。'XReflection'
とfalse
またはtrue
から構成されるコンマ区切りのペアとして指定します。XReflection
がtrue
(1
) の場合、変換tform
は 50% の確率でイメージを水平方向に反転します。既定では、この変換はイメージを水平方向に反転しません。
YReflection
—垂直方向のランダムな反転
false
(既定値) |true
垂直方向のランダムな反転。'YReflection'
とfalse
またはtrue
から構成されるコンマ区切りのペアとして指定します。YReflection
がtrue
(1
) の場合、変換tform
は 50% の確率でイメージを垂直方向に反転します。既定では、この変換はイメージを垂直方向に反転しません。
Rotation
—回転の範囲
[0 0]
(既定値) |2 要素の数値ベクトル|関数ハンドル
入力イメージに適用される回転の範囲 (度単位)。'Rotation'
と次のいずれかから構成されるコンマ区切りのペアとして指定します。
2 要素の数値ベクトル。2 番目の要素は最初の要素以上でなければなりません。回転角度は、指定区間内の連続一様分布からランダムに選択されます。
関数ハンドル。関数は入力引数を受け入れず、回転角度を数値スカラーとして返さなければなりません。関数ハンドルを使用して、重なっていない区間から、または一様ではない確率分布を使用して回転角度を選択します。関数ハンドルの詳細については、関数ハンドルの作成を参照してください。
既定では、変換tform
はイメージを回転しません。
例:[-45 45]
Scale
—一様スケーリングの範囲
[1 1]
(既定値) |2 要素の数値ベクトル|関数ハンドル
入力イメージに適用される一様 (等方性) スケーリングの範囲。'Scale'
と次のいずれかから構成されるコンマ区切りのペアとして指定します。
2 要素の数値ベクトル。2 番目の要素は最初の要素以上でなければなりません。スケール係数は、指定区間内の連続一様分布からランダムに選択されます。
関数ハンドル。関数は入力引数を受け入れず、スケール係数を数値スカラーとして返さなければなりません。関数ハンドルを使用して、重なっていない区間から、または一様ではない確率分布を使用してスケール係数を選択します。関数ハンドルの詳細については、関数ハンドルの作成を参照してください。
既定では、変換tform
はイメージをスケーリングしません。
例:[0.5 4]
XShear
—水平方向のせん断の範囲
[0 0]
(既定値) |2 要素の数値ベクトル|関数ハンドル
入力イメージに適用される水平方向のせん断の範囲。'XShear'
と次のいずれかから構成されるコンマ区切りのペアとして指定します。せん断は角度として度単位で測定され、範囲は (–90, 90) になります。
2 要素の数値ベクトル。2 番目の要素は最初の要素以上でなければなりません。水平方向のせん断角度は、指定区間内の連続一様分布からランダムに選択されます。
関数ハンドル。関数は入力引数を受け入れず、水平方向のせん断角度を数値スカラーとして返さなければなりません。関数ハンドルを使用して、重なっていない区間から、または一様ではない確率分布を使用して水平方向のせん断角度を選択します。関数ハンドルの詳細については、関数ハンドルの作成を参照してください。
既定では、変換tform
はイメージを水平方向にせん断しません。
例:[0 45]
YShear
—垂直方向のせん断の範囲
[0 0]
(既定値) |2 要素の数値ベクトル|関数ハンドル
入力イメージに適用される垂直方向のせん断の範囲。'YShear'
と次のいずれかから構成されるコンマ区切りのペアとして指定します。せん断は角度として度単位で測定され、範囲は (–90, 90) になります。
2 要素の数値ベクトル。2 番目の要素は最初の要素以上でなければなりません。垂直方向のせん断角度は、指定区間内の連続一様分布からランダムに選択されます。
関数ハンドル。関数は入力引数を受け入れず、垂直方向のせん断角度を数値スカラーとして返さなければなりません。関数ハンドルを使用して、重なっていない区間から、または一様ではない確率分布を使用して垂直方向のせん断角度を選択します。関数ハンドルの詳細については、関数ハンドルの作成を参照してください。
既定では、変換tform
はイメージを垂直方向にせん断しません。
例:[0 45]
XTranslation
—水平方向の平行移動の範囲
[0 0]
(既定値) |2 要素の数値ベクトル|関数ハンドル
入力イメージに適用される水平方向の平行移動の範囲。'XTranslation'
と次のいずれかから構成されるコンマ区切りのペアとして指定します。平行移動距離はピクセル単位で測定します。
2 要素の数値ベクトル。2 番目の要素は最初の要素以上でなければなりません。水平方向の平行移動距離は、指定区間内の連続一様分布からランダムに選択されます。
関数ハンドル。関数は入力引数を受け入れず、水平方向の平行移動距離を数値スカラーとして返さなければなりません。関数ハンドルを使用して、重なっていない区間から、または一様ではない確率分布を使用して水平方向の平行移動距離を選択します。関数ハンドルの詳細については、関数ハンドルの作成を参照してください。
既定では、変換tform
はイメージを水平方向に平行移動しません。
例:[-5 5]
YTranslation
—垂直方向の平行移動の範囲
[0 0]
(既定値) |2 要素の数値ベクトル|関数ハンドル
入力イメージに適用される垂直方向の平行移動の範囲。'YTranslation'
と次のいずれかから構成されるコンマ区切りのペアとして指定します。平行移動距離はピクセル単位で測定します。
2 要素の数値ベクトル。2 番目の要素は最初の要素以上でなければなりません。垂直方向の平行移動距離は、指定区間内の連続一様分布からランダムに選択されます。
関数ハンドル。関数は入力引数を受け入れず、垂直方向の平行移動距離を数値スカラーとして返さなければなりません。関数ハンドルを使用して、重なっていない区間から、または一様ではない確率分布を使用して垂直方向の平行移動距離を選択します。関数ハンドルの詳細については、関数ハンドルの作成を参照してください。
既定では、変換tform
はイメージを垂直方向に平行移動しません。
例:[-5 5]
バージョン履歴
参考
imwarp
|randomAffine3d
|randomWindow2d
|centerCropWindow2d
トピック
- 深層学習ワークフローのための Image Processing Toolbox を使用したイメージ拡張(Deep Learning Toolbox)
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select:.
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina(Español)
- Canada(English)
- United States(English)
欧洲
- Belgium(English)
- Denmark(English)
- Deutschland(德语)
- España(Español)
- Finland(English)
- France(Français)
- Ireland(English)
- Italia(Italiano)
- Luxembourg(English)
- Netherlands(English)
- Norway(English)
- Österreich(德语)
- Portugal(English)
- Sweden(English)
- Switzerland
- United Kingdom(English)