主要内容

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

TransformedDatastore

基となるデータストアを変换するデータストア

说明

TransformedDatastoreオブジェクトを使用して,元のデータストアから読み取ったデータを変換または処理します。

作成

关数变换を使用してTransformedDatastoreオブジェクトを作成することができます。たとえば,dsnew =变换(ds1_data,ds2_data,... dsN_data,@ FCN)で作成されるデータストアは,変換関数FCNを使用して1つ以上のデータストアds1_data、ds2_data…dsN_dataを変换します。

プロパティ

すべて展開する

基となるデータストア.datastoreオブジェクトの细胞配列として返されます。

変换关数のセット。关数ハンドルの细胞配列として指定します。

データ型:细胞

关数からの情报を含めるかどうか.logicalベクトルとして指定します。真正的をとるIncludeInfoの各値について,変换されるデータストアは,transformSet内の対応する変换关数の代替シグネチャを使用します。

关数は,抽出されたデータに関する情報を信息结构に返します。详细については,关数のページを参照してください。

データ型:合乎逻辑

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

書き込みでサポートされる形式のリスト。细绳の行ベクトルとして返されます。このプロパティは、writeallを使用してデータストアから出力ファイルを书き込む际に使用可能な出力形式を指定します。

データ型:细绳

オブジェクト关数

结合 复数のデータストアのデータを统合
hasdata データが読み取り可能かどうかを判别
预览 データストア内のデータのサブセットをプレビュー
データストアのデータの読み取り
readall データストアのすべてのデータの読み取り
writeall ファイルへのデータストアの书き込み
重启 データストアの初期状态へのリセット
变换 データストアの変换
numpartitions データストアの区画数
划分 データストアを分割する
洗牌 データストア内のすべてのデータをシャッフルする
isPartitionable データストアが分割可能かどうかを判别
isShuffleable データストアがシャッフル可能かどうかを判別

すべて折りたたむ

イメージの集合用のデータストアを作成し,そのデータストア内のすべてのイメージに同じ変换を适用します。たとえば,集合内のすべてのイメージを,指定したターゲットサイズに変更します。

2つのイメージを含むImageDatastoreを作成します。

IMDS = imageDatastore({“street1.jpg”'peppers.png'})
IMDS = ImageDatastore具有属性:文件:{ '... / devel的/蝙蝠/ Bdoc21a /建造/ MATLAB /工具箱/ MATLAB /演示/ street1.jpg';'... / devel的/蝙蝠/ Bdoc21a /建造/ MATLAB /工具箱/ MATLAB / imagesci / peppers.png'}文件夹:{ '/ MathWorks公司/ devel的/蝙蝠/ Bdoc21a /建造/ MATLAB /工具箱/ MATLAB /演示';'/ MathWorks公司/ devel的/蝙蝠/ Bdoc21a /建造/ MATLAB /工具箱/ MATLAB / imagesci'} AlternateFileSystemRoots:{} READSIZE:1个标签:{} Supp金宝apportedOutputFormats:[ “PNG” “JPG”, “JPEG”, “TIF”, “TIFF”] DefaultOutputFormat: “PNG” ReadFcn:@readDatastoreImage

すべてのイメージを読み取ります。データストアには異なるサイズのイメージが含まれていることがわかります。

img1 =阅读(imd);%读取第一图像img2 =阅读(imd);%读取下一图像谁是IMG1.IMG2.
名称大小字节类属性IMG1 480x640x3 921600 UINT8 IMG2 384x512x3 589824 UINT8

データストア内のすべてのイメージを,指定したターゲットサイズに変换します。

的targetSize = [224224];imdsReSz =变换(IMDS,@(X)imresize(X,的targetSize));

イメージを読み取ってそのサイズを表示します。

imgReSz1 =读(imdsReSz);imgReSz2 =读(imdsReSz);谁是imgReSz1imgReSz2
名称大小字节类属性imgReSz1 224x224x3 150528 UINT8 imgReSz2 224x224x3 150528 UINT8

サイズ変更后のイメージを表示します。

副区(121);imshow(imgReSz1);轴;标题(“调整大小Street1.jpg”);副区(122);imshow(imgReSz2);轴;标题(“调整大小peppers.png”);

图2个含有轴。轴1与标题调整大小Street1.jpg包含类型图像的对象。轴2与标题调整大小peppers.png包含类型图像的对象。

复数の数据存储オブジェクトを作成し,同じ変换をすべてのデータストアに适用します。たとえば,复数のイメージを1つの四角形内の整列イメージとして结合します。

1つのイメージをもつImageDatastoreを作成します。

imds1 = imageDatastore({'ngc6543a.jpg'})
imds1 = ImageDatastore具有属性:文件:{ '... / devel的/蝙蝠/ Bdoc21a /建造/ MATLAB /工具箱/ MATLAB /演示/ ngc6543a.jpg'}文件夹:{“/ MathWorks公司/ devel的/蝙蝠/ Bdoc21a /建造/MATLAB /工具箱/ MATLAB /演示} AlternateFileSystemRoots:{} READSIZE:1个标签:{} SupportedOutp金宝apputFormats:[ “PNG” “JPG”, “JPEG”, “TIF”, “TIFF”] DefaultOutputFormat: “PNG” ReadFcn:@readDatastoreImage

イメージをワークスペースに読み取り,元のイメージの各カラーチャネルからイメージファイルを作成します。

rgbImage = imread ('ngc6543a.jpg');imwrite(rgbImage(:,:,1),'nebula_red.jpg');imwrite(rgbImage(:,:,2),“nebula_green.jpg”);imwrite(rgbImage(:,:,3),“nebula_blue.jpg”);

各単一チャネルイメージのImageDatastoreオブジェクトを作成します。

imdsR = imageDatastore({'nebula_red.jpg'});imdsG = imageDatastore({“nebula_green.jpg”});imdsB = imageDatastore({“nebula_blue.jpg”});

各データストアに格纳されているイメージを読み取り,そのサイズを表示します。

imOriginal =读(imds1);img_red =读(imdsR);img_green =读(imdsG);img_blue =读(imdsB);谁是IMG1.img_redimg_greenimg_blue
名称大小字节类属性img_blue 650x600 390000 uint8 img_green 650x600 390000 uint8 img_red 650x600 390000 uint8

すべてのイメージを1つの四角形内の整列イメージに結合して,すべてのデータストアを変換します。imds1のカラーイメージをグレースケールに変换して,その次元を他のイメージの次元と一致させます。

tds1 = transform(imds1,imdsR,imdsG,imdsB, @(x1,x2,x3,x4) [rgb2gray(x1),x2;x3,x4]);瓦=阅读(tds1);

タイルイメージを表示します。

imshow(瓷砖)

图包含轴。轴包含类型图像的对象。

R2019aで导入