このページ最新ではありませ。をクリックし,英语のの最新版版を参照参照し。
ボリューム イメージ データでサポートされるファイル形式には、MAT ファイル、Digital Imaging and Communications in Medicine (DICOM) ファイル、および Neuroimaging Informatics Technology Initiative (NIfTI) ファイルがあります。
ボリュームイメージデータを成像
に読み取ります。ボリューム ピクセル ラベル データをPixelLabelDatastore
(计算机视觉工具箱)に読み取り。详细について,,深層学習用のデータストアを参照しください。
この表サポートさている各形式のののimageDatastore
とpixelLabelDatastore
の一般使用法示してい。ストアを作成する场合,引数'FileExtensions'
をデータのファイル拡張子として指定します。readfcn
プロパティを形式のを読み取る关数としてしします。引数filepath
は,含まれるファイルフォルダーパスを指定ます。ピクセルピクセルラベルイメージイメージの场合场合,引数classNames
およびPixellabelid
は,ラベルクラス名へのを指定します。
イメージ ファイル形式 |
イメージデータまたはピクセルデータストアの作成 |
---|---|
垫 |
伏尔德= imageDatastore(filepath,...'FileExtensions',,,,'。mat',,,,'readfcn',@(x)fcn(x));pxds = pixellabeldatastore(filepath,classNames,pixellabelid,...'FileExtensions',,,,'。mat',,,,'readfcn',@(x)fcn(x)); FCN Matファイル,データをカスタム关数。,次の,,,,,,ファイルファイルのののからmatread と呼ば关数定义します。ををmatread.m という名前ファイルに保存。。
functiondata = matread(filename)inp = load(filename);f = fields(inp);data = inp。(f {1});结尾 |
単一のファイルのの |
伏尔德= imageDatastore(filepath,...'FileExtensions',,,,'.dcm',,,,'readfcn',@(x)dicomread(x));pxds = pixellabeldatastore(filepath,classNames,pixellabelid,...'FileExtensions',,,,'.dcm',,,,'readfcn',@(x)dicomread(x)); dicomファイルのの详细,,, |
复数のファイルのの |
次のにます。例について,,単一ファイル复数ののボリュームボリュームボリュームイメージデータストア作成作成(图像处理工具箱)を参照しください。
|
NIfTI |
伏尔德= imageDatastore(filepath,...'FileExtensions',,,,'.nii',,,,'readfcn',@(x)niftiread(x));pxds = pixellabeldatastore(filepath,classNames,pixellabelid,...'FileExtensions',,,,'.nii',,,,'readfcn',@(x)niftiread(x)); NIfTI ファイルの読み取りの詳細については、 |
セマンティックセグメンテーションボリュームとラベルデータ,回帰用のののつのつのつのイメージデータストアをを关连付ける关连付けるRandompatchExtractionDatastore
(图像处理工具箱)を使用します。ランダム パッチ抽出データストアは、2 つのデータストアから対応するランダムに配置されたパッチを抽出します。パッチは、任意の大きさのボリュームでの学習時にメモリ不足を防ぐための一般的な手法です。ネットワークの入力サイズに一致し、メモリの効率性を考慮して、64 × 64 × 64 ボクセルなどのボリュームのフル サイズより小さいパッチ サイズを指定します。
关数combine
2つのてつのつのストア关连付けることもます。ただし,,RandompatchExtractionDatastore
2つのてつのつのストア关连付ける方法に,,,combine
を使用方法比べいくつかのがあります。
RandompatchExtractionDatastore
は,学习マルチマルチマルチ学习,事前読み取りをサポートし。。trainingOptions
の名前と値のペアの引数'
を使用して、並列学習またはマルチ GPU 学習を指定します。ExecutionEnvironment
'trainingOptions
の名前と値のペアの引数'
を使用て事前読み取りを指定します事前事前取得読み取りにはは,,,,,,,,,,,,,,,,,,,,,dispatchinbackground
'
RandompatchExtractionDatastore
は,にパッチをサポートし。,,,组合的datastore
からパッチするに,をトリミングてパッチする独自の关数关数を定义定义关数关数关数transform
を使用て操作适用しなけれなりません。
RandompatchExtractionDatastore
1つつテストから复数のイメージをでき。一対多一対多のパッチパッチ抽出抽出ででは,使用使用可能ななな学习学习学习データデータ
深層学習では、データの前処理と拡張が必要になることがよくあります。たとえば、イメージの強度の正規化、イメージのコントラストの強調、またはランダムなアフィン変換の追加による過適合の防止が必要な場合があります。
ボリュームデータ前处理には,关数transform
を使用します。transform
は,关数定义た一连のに従って,“基にデータ”Image Processing工具箱™に。をた変更ストアデータ,,れれれた変换ししデータささささささされれたた形式形式ををを。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。ますににににににに,ボリュームボリュームの完全リストについては,3 次元ボリューム イメージの処理(图像处理工具箱)Matlab®の关数し,ボリュームイメージをすることもでき。。
カスタム変换は基にデータストアの关数read
によって返される形式のデータを受け入れなければなりません。
基になるデータストア |
カスタム変換関数への入力形式 |
---|---|
成像 |
カスタム変換関数への入力は、
详细は、 |
PixelLabelDatastore |
カスタム変換関数への入力は、
详细は、 |
RandompatchExtractionDatastore |
カスタム変换へ入力は,,,列列のでなけれでなけれでなけれなりません。。 详细は、 |
RandompatchExtractionDatastore
はボリュームデータのDataAugmentation
プロパティをサポートしていません。ボリューム データにランダムなアフィン変換を適用するには、transform
を使用なければなり。。
关数transform
は,入力に一致するデータなければなりません关数transform
は一多値マッピングをサポートていません。
次のコードでは关数关数预处理volumetricimds
に定義されている任意の前処理パイプラインを使用して、イメージ データストア伏尔德
内のを変换方法を说明ますこのこのででは伏尔德
の读取尺寸
が 1 より大きいと仮定しています。
dstrain = transform(volds,@(x)preprocessvolumetricimds(x,inputsize));
基になるデータストアから読み取られたデータに対して目的の変換を実行する関数预处理volumetricimds
を定義します。この関数はイメージ データの cell 配列を受け入れなければなりません。この関数は読み取られた各イメージをループ処理し、次の前処理パイプラインに従ってデータを変換します。
z 軸を中心としてイメージをランダムに回転させる。
ボリュームのサイズをネットワークで期待されるサイズに変更する。
ガウスノイズ加えノイズ含むバージョンのを作成する。
イメージ细胞配列配列で。。
functiondataout = prepocessvolumetricimds(data,inputsize)numrows = size(data,1);dataout =单元格(numrows,1);为了idx = 1:numrows%在z轴上进行随机旋转的随机旋转data = imrotate3(data{idx,1},90*(randi(4)-1),[0 0 1]);% Resize the volume to the size expected by the networkdataClean = imresize(data,inputSize);%添加零均值的高斯噪声,标准方差为0.01dataNoisy = imnoise(dataClean,“高斯”,0.01);%返回预处理数据dataout(idx)= datanoisy;结尾结尾
次のコードでは关数关数preprocessVolumetricPatchDS
に定義されている任意の前処理パイプラインを使用して、ランダム パッチ抽出データストア伏尔德
内のを変换方法を说明ますこのこのででは伏尔德
の读取尺寸
1であるである仮定てい。。。
dstrain = transform(volds,@preprocessvolumetricpatchds);
基になるデータストアから読み取られたデータに対して目的の変換を実行する関数preprocessVolumetricPatchDS
を定義します。この関数は表を受け入れなければなりません。この関数は次の前処理パイプラインに従ってデータを変換します。
5 つの拡張のいずれかをランダムに選択する。
table の両方の列のデータに同じ拡張を適用する。
拡张さたペアををででで。。
functiondataout = prepocessvolumetricpatchds(data)img = data(1);RESS =数据(2);% 5 augmentations: nil,rot90,fliplr,flipud,rot90(fliplr)Augtype = {@(x)x,@rot90,@fliplr,@flipud,@(x)rot90(fliplr(x))};rndidx = randi(5,1);imgout = augtype {rndidx}(img);respOut = augType {rndidx}(resp);%返回预处理数据dataOut = table(imgout,repsout};结尾
火车网
|imageDatastore
|pixelLabelDatastore
(计算机视觉工具箱)|RandompatchExtractionDatastore
(图像处理工具箱)|transform