主要内容

blockedImageDatastore

数据存储块的使用blockedImage对象

自从R2021a

    描述

    一个blockedImageDatastore对象管理的图像块的集合属于一个或多个blockedImage对象。一个blockedImageDatastore类似于一个imageDatastore管理一组不相关的图片。

    创建

    描述

    例子

    bimds = blockedImageDatastore (图片)创建一个blockedImageDatastore对象管理形象的一个或多个块的集合blockedImage对象,图片

    默认情况下,如果图片包含了图像多分辨率的水平,blockedImageDatastore选择最好的分辨率水平的只有几个街区。默认情况下,数据存储的块大小等于BlockSize在第一个元素的属性图片在最好的分辨率水平。

    bimds = blockedImageDatastore (来源)从指定的文件创建一个数据存储来源

    bimds = blockedImageDatastore (___,名称,值)还使用名称-值参数设置一个或多个属性,除了图片TotalNumBlocks

    输入参数

    全部展开

    阻止了图像文件的名称,指定为一个单元阵列的特征向量,字符串标量或文件集对象。的blockedImageDatastore对象的图像文件转换成屏蔽这些图像的图像和集图片财产。

    属性

    全部展开

    块中包含数据存储,指定为一个blockLocationSet对象。对象指定哪些块包含从阻塞的形象图片。你可以重复或忽略个体块。

    你不能指定BlockLocationSet当你指定属性BlockSize财产。如果你指定BlockSize属性,那么的默认值BlockLocationSetblockLocationSet对象通过调用返回selectBlockLocations函数与指定的块大小。否则,默认值是blockLocationSet对象通过调用返回selectBlockLocations函数不指定一个块大小。

    你不能改变BlockLocationSet属性在创建blockedImageDatastore

    块大小,指定为1×-D数值向量。D是第一屏蔽图片的尺寸吗图片,在第一个决议水平水平

    你不能指定BlockSize当你指定属性BlockLocationSet财产。如果你指定BlockLocationSet属性,那么的默认值BlockSize等于的块大小blockLocationSet对象。否则,默认值等于第一屏蔽图像的块大小图片在最好的分辨率水平。

    你不能改变BlockSize属性在创建blockedImageDatastore

    额外的块边界元素大小在每个维度,指定为1×-D向量的非负整数。D是第一屏蔽图片的尺寸吗图片,在第一个决议水平水平。默认值是0 (1 D)

    阻止供应块的图像blockedImageDatastore,指定为数组blockedImage对象。所有元素的图片必须有相同数量的维度和是相同的数据类型。

    你不能改变图片属性在创建blockedImageDatastore

    方法用于填充完整块,表中指定的值。默认情况下,数据存储垫块数字的值InitialValue第一屏蔽图片的属性图片

    价值

    意义

    数字、逻辑或绝对标量

    垫数组元素的指定值。的数据类型PadMethod必须匹配ClassUnderlying了图像的属性。

    “复制”

    垫通过重复块的边界元素。

    “对称”(因为R2023a)

    垫的镜子反射从同一块内像素。

    垫边缘存在的部分街区,指定为一个逻辑标量真正的。当真正的阻塞的图像数据存储添加填充物填充方法中指定PadMethod财产。

    块的数量在每个调用返回函数,指定为一个正整数。每一个调用函数读取最多ReadSize

    这个属性是只读的。

    块的总数,指定为一个数字标量。

    对象的功能

    结合 合并来自多个数据存储的数据
    countEachLabel 数量的像素数量为每个类标签
    hasdata 返回真正的如果图像数据存储更多的数据可以在阻塞
    numpartitions 数量的数据存储分区
    分区 返回分区阻塞图像数据存储的一部分
    预览 预览数据存储中数据的子集
    从阻塞的图像数据存储读取数据和元数据
    readall 从阻塞读取所有数据图像数据存储
    重置 数据存储重置为初始状态
    洗牌 洗牌数据存储中的数据
    子集 创建数据存储或文件集的子集
    变换 变换数据存储
    writeall 编写了图像数据存储文件

    例子

    全部折叠

    创建一个阻塞的形象。

    bim = blockedImage (“tumor_091R.tif”);

    创建一个数据存储,指定分辨率水平,块大小。

    劳工统计局= selectBlockLocations (bim水平= 2,BlockSize = (512 - 512));bimds = blockedImageDatastore (bim BlockLocationSet = bls);

    阅读所有的数据存储块。

    b = readall (bimds)
    b =9×1单元阵列{512 x512x3 uint8} {512 x512x3 uint8} {512 x512x3 uint8} {512 x512x3 uint8} {512 x512x3 uint8} {512 x512x3 uint8} {512 x512x3 uint8} {512 x512x3 uint8} {512 x512x3 uint8}

    显示阻止的形象。

    蒙太奇(b)

    图包含一个坐标轴对象。坐标轴对象包含一个类型的对象的形象。

    创建一个文件集对象包含PNG文件的多个图像文件格式。

    fs = matlab.io.datastore.FileSet (fullfile (matlabroot“工具箱”,“图片”,“imdata”),“FileExtensions”,“使用”);

    创建一个blockedImage对象,指定一个适配器。这节省时间,因为它不需要检查每个文件选择一个合适的适配器。

    readAdapter = images.blocked.GenericImage;建筑智能化= blockedImage (fs,“适配器”,readAdapter);

    所有图片必须有相同数量的维度,所以只有保留RGB图像。

    智能化系统=智能化系统([bims.NumDimensions] = = 3);bimds = blockedImageDatastore(建筑智能化,“BlockSize”(300 500),“PadMethod”,“复制”);

    显示所有的块blockedImageDatastore

    蒙太奇(readall (bimds),“边界”2,“写成BackgroundColor”,“w”);

    图包含一个坐标轴对象。坐标轴对象包含一个类型的对象的形象。

    创建一个阻塞的形象。

    bim = blockedImage (“tumor_091R.tif”);

    指定重叠块。

    blockSize = (512 - 512);overlapPct = 0.5;blockOffsets =圆(blockSize。* overlapPct);劳工统计局= selectBlockLocations (bim BlockSize = BlockSize,BlockOffSets = BlockOffSets ExcludeIncompleteBlocks = true);

    创建了图像数据存储。

    bimds = blockedImageDatastore (bim BlockLocationSet = bls);

    显示重叠块。

    bimds。ReadSize = 6;块=阅读(bimds);蒙太奇(块,BorderSize = 5,写成BackgroundColor =“b”);

    图包含一个坐标轴对象。坐标轴对象包含一个类型的对象的形象。

    创建一个blockedImage。

    bim = blockedImage (“tumor_091R.tif”);

    创建一个面具在粗级别。

    bmask =应用(荡妇,@ (bs) ~ imbinarize (im2gray (bs.Data)),“水平”3);

    创建一个blockedImageDatastore至少90%的像素块的“彩色地区所定义的面具。

    mbls = selectBlockLocations(荡妇,“水平”,1“面具”bmask,“InclusionThreshold”,0.90,“BlockSize”256年[256]);bimds = blockedImageDatastore(荡妇,“BlockLocationSet”,mbls);

    读取模块和显示。

    bimds。ReadSize = 5;块=阅读(bimds);蒙太奇(块,“BorderSize”5,“写成BackgroundColor”,“b”)

    图包含一个坐标轴对象。坐标轴对象包含一个类型的对象的形象。

    创建了数字和标记的图像数据。

    bim = blockedImage (“yellowlily.jpg”BlockSize = (512 - 512));bimLabels = blockedImage (“yellowlily-segmented.png”BlockSize = (512 - 512));

    创建blockedImageDatastore对象为每个阻塞的形象。

    bimds = blockedImageDatastore (bim);bimdsLabels = blockedImageDatastore (bimLabels);

    将标记数字数据转换为分类数据。

    类= [“未知”,“花”,“叶”,“背景”];classIDs = [0 1 2 3];bimdsCategorical =变换(bimdsLabels,@ (bs){分类(bs {1}, classIDs类)});

    结合原blockedImageDatastore分类数据存储。

    bimdsCombined =结合(bimds bimdsCategorical);

    读取和显示数据的数据存储。第一个细胞图像数据,第二个细胞分类标签。

    data =阅读(bimdsCombined)
    data =1×2单元阵列{512 x512x3 uint8} {512 x512直言}
    imshow (labeloverlay(数据{1},{2}));

    图包含一个坐标轴对象。坐标轴对象包含一个类型的对象的形象。

    版本历史

    介绍了R2021a

    全部展开