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

pixelLabelDatastore

ピクセルラベルデータのデータストア

说明

PixelLabelDatastoreオブジェクトを使用して,セマンティックセグメンテーションのピクセルラベルデータを読み取ることができます。

PixelLabelDatastoreからピクセルラベルデータを読み取るには,关数を使用します。この关数は,すべてのピクセル位置(I,J)またはボクセル位置(I,J,K)に割り当てられたカテゴリカルラベルを含む分类配列を返します。

作成

ここで说明する关数pixelLabelDatastoreを使用してPixelLabelDatastoreオブジェクトを作成します。オブジェクトを作成すると,データのアクセスや管理を行う关数を使用できます。ドット表记を使用して,READSIZEプロパティとReadFcnプロパティを変更できます。

说明

pxds = pixelLabelDatastore(gTruthは,真实状况オブジェクトまたは真实状况オブジェクトの配列からPixelLabelDatastoreオブジェクトを作成します。

pxds = pixelLabelDatastore(位置类名pixelLabelIDsは,ピクセルラベルデータが保存されているイメージファイルからPixelLabelDatastoreオブジェクトを,位置で指定されたフォルダーまたはファイルに作成します。この关数は,イメージピクセルラベルの値をクラス名にマップするピクセルIDを使用してオブジェクトを作成します。

pxds = pixelLabelDatastore(___,名称,值)は,名前と値のペアの引数を使用してREADSIZEプロパティとAlternateFileSystemRootsプロパティのいずれかまたは両方を设定し,PixelLabelDatastoreオブジェクトを作成します。イメージファイルの入力では,名前と値のペアの引数を使用してReadFcnプロパティを设定したり,あるいはデータストアに含めるファイルに关するオプションを指定することもできます。复数の名前と値のペアを指定できます。各プロパティ名を引用符で囲みます。

たとえば,pixelLabelDatastore(LOC,名称,标识, 'READSIZE',8 'FileExtensions', 'PNG')によって作成されるピクセルラベルデータストアにはPNGイメージのみが含まれ,关数の呼び出しごとに8个のイメージを読み取ります。

入力引数

すべて展开する

グラウンドトゥルースデータ。真实状况オブジェクトまたは真实状况オブジェクトの配列として指定します。各真实状况オブジェクトには,一连のグラウンドトゥルースラベルのデータソース,ラベル定义のリスト,およびマークされたすべてのラベルに关する情报が含まれます。

フォルダーまたはイメージファイルの名前。文字ベクトル,串配列,または文字ベクトルの细胞配列として指定します。イメージにはUINT8データが含まれなければなりません。

位置 说明
文字ベクトル,串配列 フォルダーの名前。指定されたフォルダーのサブフォルダー内のファイルは,自动的にはデータストアに含まれません。データストアにはサポートされているファイル形式のイメージのみが含まれ,他の形式は无视されます。关数imformatsを使用して,サポートされているファイル形式の一覧を确认します。
文字ベクトルの细胞配列 复数のイメージのファイルの名前。

pixelLabelDatastoreはファイル名を拡张し,绝対ファイルパスをプロパティに保存します。

位置を指定する际,ワイルドカード文字(*)を使用できます。この文字は,すべての一致するファイル,または一致するフォルダー内のすべてのファイルがデータストアに含まれることを示します。

ファイルが现在のフォルダーに存在しない场合,绝対パスまたは相対パスを含めなければなりません。

ファイルがローカルで使用できない场合,ファイルまたはフォルダーの绝対パスをHDFS://主机名端口号/文件路径のような国际化リソース识别子(IRI)にしなければなりません.Amazon S3™およびHDFS™での数据存储の使用に关する详细は,リモートデータの操作(MATLAB)を参照してください。

例:'file1.jpg'

例:'../dir/data/file1.png'

例:{ 'C:\ DIR \数据\ file1.tif', 'C:\ DIR \数据\ file2.tif'}

例:'C:\目录\ DATA \ * JPG'

データ型:烧焦|细胞

クラス名.stringまたは文字ベクトルの细胞配列として指定します。pixelLabelDatastoreは名前を细胞配列に変换し,类名プロパティに名前を保存します。

例:[“天空”,“草”,“建设”,“人行道”]

ピクセルラベルを类名にマップするためのID。ベクトル,米行3列の行列,列ベクトルの细胞配列,または米行3列の行列の细胞配列として指定します。値は[0,255]の范囲の整数でなければなりません的.m行3列の行列はRGBイメージでのみサポートされています。

形式 说明
ベクトル ベクトルの长さとクラス名の数は等しくなければなりません。値は一意でなければなりません。
米行3列の行列 米は,クラス名の数に対応します。各行には,各クラス名と关连付けるRGBピクセル値を表す3要素ベクトルが含まれます。ベクトルは一意でなければなりません。この形式を,RGBイメージとして保存されているピクセルラベルデータに使用します。

列ベクトルの细胞配列

米行3列の行列の细胞配列

细胞配列を使用して,复数のピクセルラベルをID 1つのクラス名にマップします。

名前と値のペアの引数

オプションの引数名称,值のコンマ区切りペアを指定します。名称は引数名で,は対応する値です。名称は引用符で囲まなければなりません。名1,值1,...,NameN,值Nのように,复数の名前と値のペアの引数を,任意の顺番で指定できます。

例:'IncludeSubfolders',真

サブフォルダーを含める。'IncludeSubfolders'0)または真正1)で构成されるコンマ区切りのペアとして指定します。すべてのファイルとサブフォルダーを各フォルダー内に含める场合は真正を,ファイルのみを各フォルダー内に含める场合はを指定します。

グラウンドトゥルースデータgTruthを指定した场合,IncludeSubfolders引数はサポートされません。

データストアに含まれるファイルのファイル拡张子。'FileExtensions'と文字ベクトル,文字ベクトルの细胞配列,字符串スカラー,または串配列で构成されるコンマ区切りのペアとして指定します。既定では,データストアには关数imformatsによってサポートされるすべての拡张子をもつファイルが含まれます。

グラウンドトゥルースデータgTruthを指定した场合,FileExtensions引数はサポートされません。

例:[名 “PNG” “GIF”, “BMP”]

プロパティ

すべて展开する

このプロパティは読み取り専用です。

データストアに含まれるファイル。文字ベクトル,または文字ベクトルの细胞配列として指定します。各文字ベクトルは,ファイルへの绝対パスです。PixelLabelDatastoreオブジェクトを作成する场合,このプロパティを设定するには位置引数を使用します。

このプロパティは読み取り専用です。

クラス名。文字ベクトルの细胞配列を指定します。

关数への各呼び出しで読み取るイメージファイルの最大数。正の整数として指定します。

代替ファイルシステムのルートパス。'AlternateFileSystemRoots'と,串ベクトルまたは细胞配列から构成されるコンマ区切りのペアとして指定します。データストアはローカルマシンに作成するが,(オペレーティングシステムが异なる可能性のある)别のマシン上のデータにアクセスして处理する必要がある场合,'AlternateFileSystemRoots'を使用します.Parallel计算工具箱™とMATLAB®并行服务器™を使用してデータを处理する场合,およびデータをローカルマシンに保存するのに加えて,そのデータのコピーを异なるプラットフォームのクラウドやクラスターマシンで利用できるようにする场合も,'AlternateFileSystemRoots'を使用してルートパスを关连付けなければなりません。

  • 互いに等価なルートパスのセットを关连付けるには,'AlternateFileSystemRoots'を串ベクトルとして指定します。たとえば,次の例を考えてみましょう。

    [ “Z:\数据集”, “/的MyNetwork /数据集”]

  • データストアに対して等価なルートパスの复数のセットを关连付けるには,各行が等価なルートパスのセットを表す复数の行を含んだ细胞配列として'AlternateFileSystemRoots'を指定します。细胞配列の各行を,串ベクトル,または文字ベクトルの细胞配列のいずれかとして指定します。以下に例を示します。

    • 'AlternateFileSystemRoots'を串ベクトルの细胞配列として指定します。

      {[ “Z:\数据集”, “/的MyNetwork /数据集”]; ... [ “Y:\数据集”, “/ mynetwork2 /数据集”, “S:\数据集”]}

    • または,'AlternateFileSystemRoots'を文字ベクトルの细胞配列の细胞配列として指定します。

      {{ 'Z:\数据集',“/的MyNetwork /数据集的}; ... { 'Y:\数据集', '/ mynetwork2 /数据集', 'S:\数据集'}}

'AlternateFileSystemRoots'の値は次の条件を満たさなければなりません。

  • 1つ以上の行を含む。各行は等価なルートパスのセットを指定する。

  • 各行は复数のルートパスを指定する。各ルートパスは少なくとも2文字を含まなければならない。

  • ルートパスは一意であり,互いのサブフォルダーではない。

  • ファイルの场所を指すルートパスエントリを少なくとも1つ含む。

详细については,异なるマシンまたはクラスターで处理するためのデータストアの设定(MATLAB)を参照してください。

例:[ “Z:\数据集”, “/的MyNetwork /数据集”]

データ型:|细胞

ピクセルラベル付きイメージデータを読み取る关数。关数ハンドルとして指定します。カスタム読み取り关数は,入力としてイメージファイル名を取った后,対応するピクセルラベル付きデータを分类行列,逻辑行列,またはデータ型UINT8の数値行列として出力しなければなりません。たとえば,customreaderがイメージデータを読み取るために指定された关数である场合,この关数は次のようなシグネチャを持たなければなりません。

功能C = customreader(文件名)...结束
読み取り关数に复数の出力引数がある场合は,最初の出力引数のみが使用されます。残りは无视されます。

グラウンドトゥルースデータgTruthを指定した场合,ReadFcnプロパティはサポートされません。

例:@customreader

オブジェクト关数

结合 复数のデータストアのデータを统合
countEachLabel 计数像素或盒标签的发生
hasdata 确定数据是否可从数据存储读取
numpartitions 用于数据存储的分区数
划分 分区的标签数据存储
预习
从数据存储中读取数据
readall 阅读数据存储的所有数据
readimage 阅读指定像素标签数据文件
重启 复位数据存储到初始状态
转变 データストアの変换

すべて折りたたむ

ピクセルラベルデータをイメージに重ね合わせます。

イメージとピクセルラベルデータの场所を设定します。

DATADIR =完整文件(toolboxdir('视力''visiondata');imDir =完整文件(DATADIR,'建造');pxDir =完整文件(DATADIR,'buildingPixelLabels');

イメージデータストアを作成します。

IMDS = imageDatastore(imDir);

ピクセルラベルデータストアを作成します。

类名= [“天空”“草”“建造”“人行道”]。pixelLabelID = [1 2 3 4];pxds = pixelLabelDatastore(pxDir,类名,pixelLabelID);

イメージとピクセルラベルデータを読み取ります。阅读(pxds)は,绝对行列Cを返します。この行列の要素C(一世Ĵ)は,位置L(一世Ĵ)のピクセルに割り当てられたカテゴリカルラベルです。

I =读(IMDS);C =读(pxds);

Cのラベルカテゴリを表示します。

类别(C {1})
ANS =4X1单元阵列{ '天空'} { '草'} { '建设'} { '人行道'}

ピクセルラベルデータをイメージに重ね合わせて表示します。

B = labeloverlay(I,C {1});图imshow(B)

3次元ボリュームおよびピクセルラベルデータの位置を指定します。このデータは,ラベル付けされた脳の3次元MRIスキャンです。

DATADIR =完整文件(toolboxdir('图片''IMDATA');imDir =完整文件(DATADIR,'BrainMRILabeled''图片');pxDir =完整文件(DATADIR,'BrainMRILabeled''标签');

カスタムReadFcnを指定します。この例では,MATイメージファイルから3次元イメージデータを読み取るsamplePXDSMatReaderと呼ばれる关数(この例の终わりで定义)を指定します。

matReader = @samplePXDSMatReader;

イメージデータストアを作成します。

IMDS = imageDatastore(imDir,'FileExtensions''。垫''ReadFcn',matReader);

ピクセルラベルデータストアを作成します。

类名= [“浮肿”“nonEnhancingTumor”“enhancingTumour”]。pixelLabelID = [1 2 3];pxds = pixelLabelDatastore(pxDir,类名,pixelLabelID,'FileExtensions''。垫''ReadFcn',matReader);

ボリュームとピクセルラベルデータを読み取ります。大号は分类行列であり,L(I,J,K)V(I,J,K)に割り当てられたカテゴリカルラベルです。

V =读(IMDS);L =读(pxds);

ラベルカテゴリを表示します。

类别(L)
ANS =3×1单元阵列{ '浮肿'} { 'nonEnhancingTumor'} { 'enhancingTumour'}

labelvolshowを使用して结果を可视化します。

H = labelvolshow(L,V);

この例では,イメージファイルから3次元イメージデータを読み取るための补助关数samplePXDSMatReaderを定义します。この关数は.MATファイルを読み込んで,ファイルに保存された最初の変数を返します。

功能数据= samplePXDSMatReader(文件名)INP =负载(文件名);F =字段(INP);。数据= INP(F {1});结束

ヒント

  • pixelLabelDatastoreは,ファイルを辞书式顺序で格纳します。たとえば,'file1.jpg''file2.jpg',...,'file11.jpg',および'file12.jpg'という名前の12个のファイルがある场合,ファイルは次の顺序で格纳されます。

    'file1.jpg''file10.jpg''file11.jpg''file12.jpg''file2.jpg''file3.jpg'...'file9.jpg'

    対照的に,imageDatastoreは,データストアに追加された顺にファイルを格纳します。グラウンドトゥルースイメージとピクセルラベルデータを同时に読み取る场合,イメージとラベルの间の不一致が発生する可能性があります。これが発生した场合は,ピクセルラベルファイルの名前を変更して,适切な顺序になるようにします。たとえば,'file1.jpg',...,'file9.jpg'の名前を'file01.jpg',...,'file09.jpg'に変更します。

  • ビデオラベラーまたはグラウンドトゥルースラベラーを使用して生成された真实状况オブジェクトからセマンティックセグメンテーションデータを抽出するには,关数pixelLabelTrainingDataを使用します。

R2017bで导入