主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

イメージの深层学习习向け向け前

ネットワークに学习させ,新しいデータについて予测するに,イメージがネットワークの入入サイズにししなけれなりませんサイズにするするにイメージサイズを调整必要ががあるあるをトリミングを行って必要なサイズににことができます。

ランダム化された"拡張"をデータに適用して,実質的に学習データの量を増やすことができます。拡張では,イメージデータの歪みに対して不変になるようにネットワークに学習させることもできます。たとえば,入力イメージに存在する回転に対してネットワークが不変になるように,入力イメージにランダムな回転を追加できます。augmentedImageDatastoreは,分類問題用の2次元イメージに限られた拡張を適用する便利な方法を提供します。

回帰回帰用のイメージののの定理,3次元ボリュームイメージイメージ制剂など,より高度な前致理性演算の合并,组み込み组み込みストアで开口することができ。关联转变および结合を使用して,独自のパイプラインに従ってイメージの前処理を行うこともできます。

再スケーリングとトリミングを使用したイメージのサイズ変更

イメージデータは,数値配列,ImageDatastoreオブジェクト,または表として格納できます。ImageDatastoreを使用すると,大きすぎてメモリに収まらないイメージコレクションからデータをバッチ単位でインポートできます。拡張イメージデータストアまたはサイズを変更した4次元配列は学習,予測,および分類に使用できます。サイズを変更した3次元配列は予測および分類にのみ使用できます。

はのようにするをようようイメージデータを変更するイメージのを変更するははをますます。

  • 再スケーリングでは,イメージの高さと幅に倍率が掛けられます。倍率が垂直方向と水平方向で同一ではない場合,再スケーリングによってピクセルの空間範囲と縦横比が変更されます。

  • トリミングでは,イメージの部分領域が抽出され,各ピクセルの空間範囲が保持されます。イメージは,中心から,またはイメージのランダムな位置からトリミングできます。

サイズ変更オプション データ形式 サイズ変更关节 サンプルコード
再スケーリング
  • 1つのカラーイメージまたはマルチスペクトルイメージを表す3次元配列

  • グレースケールイメージのスタックを表す3次元配列

  • イメージのスタックを表す4次元配列

imresize

我= imresize(我outputSize);

outputSizeは再スケーリングスケーリングされれイメージの次元をを指定しし

  • イメージのスタックを表す4次元配列

  • ImageDatastore

  • 表格

augmentedImageDatastore

auimds = augmentedImageDatastore (outputSize,我);

outputSizeは再スケーリングスケーリングされれイメージの次元をを指定しし

トリミング
  • 1つのカラーイメージまたはマルチスペクトルイメージを表す3次元配列

imcrop(图像处理工具箱)

我= imcrop(我、矩形);

は2次元トリミングウィンドウのサイズと位置を指定します。

  • グレースケールイメージのスタックを表す3次元配列

  • カラーイメージまたはマルチスペクトルイメージのスタックを表す4次元配列

imcrop3(图像处理工具箱)

我= imcrop3(我、长方体);

长方体は3次元トリミングウィンドウのサイズと位置を指定します。

  • イメージのスタックを表す4次元配列

  • ImageDatastore

  • 表格

augmentedImageDatastore

auimds = augmentedImageDatastore (outputSize,我,“OutputSizeMode”, m);

入力イメージの中心からトリミングするには“centercrop”に指定します。

入力イメージのランダムな位置からトリミングするには“randcrop”に指定します。

ランダムな幾何学的変換での学習用のイメージの拡張

イメージ分類問題の場合,augmentedImageDatastoreを使用して,サイズ変更,回転,反転,せん断,および平行移動のランダムな組み合わせでイメージを拡張できます。

図は,trainNetworkで使使れます。ワークワークフローの例については,拡張イメージを使用したネットワークの学習を参照してください。

  1. 学习イメージを指定します。

  2. imageDataAugmenterを作物,反転反転をランダムに适适角度どうどうかや回転角度のなどのイメージ変换オプションををどうイメージイメージ変换変换変换かどうどうどう

    ヒント

    サンプルイメージに適用された変換をプレビューするには,関数增加を使用します。

  3. augmentedImageDatastoreを作成します。学習イメージ,出力イメージのサイズ,およびimageDataAugmenterを指定します。出力イメージのサイズは,ネットワークのimageInputLayerのサイズに结合しばばなりん。

  4. 拡张イメージデータストアをtrainNetworkのデータソースとして指定してネットワークに学習させます。学習の反復ごとに,拡張イメージデータストアは変換のランダムな組み合わせを学習データのミニバッチのイメージに適用します。

    拡張イメージデータストアを学習イメージのソースとして使用する場合,データストアによって各エポックの学習データにランダムに摂動が与えられるため,エポックごとにわずかに異なるデータセットが使用されます。各エポックの学習イメージの実際の数は変化しません。変換後のイメージはメモリに格納されません。

組み込みデータストアを使用した追加のイメージ処理演算の実行

一部のデータストアは,データのバッチを読み取る際に特定の限られたイメージ前処理演算を実行します。これらのアプリケーション固有のデータストアを次の表に示します。これらのデータストアは,深度学习工具箱™を使用する深層学習アプリケーションの学習データセット,検証データセット,およびテストデータセットのソースとして使用できます。これらのデータストアはすべて,trainNetworkでサポートされている形式でデータを返します。

データストア 説明
augmentedImageDatastore 深層ニューラルネットワークに学習させるために,サイズ変更,回転,反転,せん断,平行移動を含む,ランダムなアフィン幾何変換を適用します。例については,事前学習済みのネットワークを使用した転移学習を参照してください。
pixelLabelImageDatastore(计算机视觉工具箱) セマンティックセグメンテーションネットワークに学习习せるために,イメージおよび対応するグラウンドトゥルースに対して,同一个のアフィン何変换をしし(计算机视觉工具箱™がが)。例については,深層学習を使用したセマンティックセグメンテーションを参照してください。
randomPatchExtractionDatastore(图像处理工具箱) イメージまたはピクセルラベルイメージからランダムパッチの複数のペアを抽出します(图像处理工具箱™が必要)。オプションで,同一のランダムなアフィン幾何変換をパッチのペアに適用できます。例については,深層学習を使用した単一イメージ超解像処理を参照してください。
denoisingImageDatastore(图像处理工具箱) ノイズ除去ネットワークに学習させるために,ランダムに生成されたガウスノイズを適用します(图像处理工具箱が必要)。

組み合わせと変換を使用したカスタムイメージ前処理パイプラインの適用

アプリケーション别无ののデータストアが提供イメージ前前前处演算よりより的的复雑なイメージ前演算を行するははははははははは转变および结合を使用できます。詳細については,深层学习用词のストアを参照してください。

イメージデータを含むデータストアの変換

関数转变は,定義した変換関数に従い,基になるデータストアによって読み取られたデータを変換することで,“基になるデータストア”と呼ばれるデータストアの変更された形式を作成します。

カスタム変換関数は,基になるデータストアの関数によって返されるれる形式ののを受け入れなければばなりませませImageDatastore内のイメージデータの場合,形式はReadSizeプロパティによって異なります。

  • ReadSizeが1の场合,変换关节はませんのサイズはませ。ImageDatastoreのイメージのタイプと整合性があります。たとえば,グレースケールイメージの次元はm x n,トゥルーカラーイメージの次元はm x n x 3 c個のチャネルがあるマルチスペクトルイメージの次元はm x n cです。

  • ReadSizeが1より大きい場合,変換関数はイメージデータの细胞配列を受け入れなければなりません。各要素はバッチのイメージに対応します。

関数转变は,ネットワークの入力サイズに一致するデータを返さなければなりません。関数转变は一対多の観測値マッピングをサポートしていません。

ヒント

関数转变は,基になるImageDatastoreがJPGまたはPNGイメージファイルのバッチを読み取る際に事前取得をサポートします。これらのイメージタイプの場合,ImageDatastoreの引数readfcn.を使用してイメージ前処理を適用しないでください。このオプションでは通常,速度が大幅に低下するためです。カスタム読み取り関数を使用する場合,ImageDatastoreは事前取得を行いません。

データストアとイメージデータの組み合わせ

関数结合は,複数のデータストアから読み取られたデータを連結して,データストア間のパリティを維持します。

  • データを2列ののまたは2列の细胞配列配列连结连结て,图像到图像回帰ネットワークなど,単一の力があるネットワーク习习に使使。

  • データを(numInputs+1)列列细胞配列配列连结し,复数のの力ががネットワークネットワーク习习习に。

参考

||||

関連する例

詳細