主要内容

blockedImageDatastore

与来自的块一起使用的数据存储blockedImage物体

    描述

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

    创建

    描述

    实例

    bimds=块图像数据存储(图像)创建一个blockedImageDatastore对象,该对象管理一个或多个图像块的集合blockedImage物体,图像

    如果图像包含具有多个分辨率级别的对象,然后blockedImageDatastore只从最好的分辨率级别选择块。的块大小中第一个元素的属性图像是默认的数据存储块大小。

    bimds=块图像数据存储(来源)通过指定的文件创建数据存储来源

    bimds=块图像数据存储(___,名称、值)也使用名称-值对来设置一个或多个属性,除了图像全麻木锁.可以指定多个名称-值对。将每个属性名用引号括起来。

    输入参数

    全部展开

    被阻止图像文件的名称,指定为字符向量的单元格数组、字符串标量或文件集反对blockedImageDatastore对象将文件中的图像转换为阻止的图像,并将这些图像设置为图像所有物

    属性

    全部展开

    要包含在数据存储中的块,指定为块定位集反对对象specifies which blocks to include from the blocked imageBIM.您可以重复或省略单个块。获取默认值:blockedImageDatastore呼叫选择区块位置作用

    您不能更改此选项BlockLocationSet属性创建blockedImageDatastore

    块大小,指定为1-by-D数字向量,其中D第一个块图像的维数是多少图像的第一个分辨率级别水平

    您不能更改此选项块大小属性创建blockedImageDatastore

    每个标注中附加块边框元素的大小,指定为1-x-D数字向量,其中D第一个块图像的维数是多少图像的第一个分辨率级别水平。默认值为零(1,D)

    控件提供块的已阻止的图像blockedImageDatastore,指定为数组blockedImage对象的所有元素图像必须具有相同数量的尺寸和相同类型。

    您不能更改此选项图像属性创建blockedImageDatastore

    用于填充不完整块的方法,指定为该表中的一个值。默认情况下,数据存储用初始值阻止图像数组中第一个阻止图像的属性,图像

    价值

    意义

    数字标量

    用指定的标量值填充不完整块。值的类型取决于类基础的屏蔽图像图像

    “复制”

    通过重复数组的边框元素填充。

    填充边缘上指定为逻辑标量的部分块符合事实的错误的. 什么时候符合事实的,则阻塞图像数据存储根据中指定的填充方法添加填充PadMethod所有物

    在每次调用中返回到的块数阅读函数,指定为正整数。每次呼叫阅读函数读取最多ReadSize阻碍

    此属性是只读的。

    可用块的总数,指定为数字标量。

    目标函数

    结合 合并来自多个数据存储的数据
    计数标签 为每个类计数像素标签的数量
    hasdata 退换商品符合事实的如果在中有更多数据可用blockedImageDatastore
    numpartitions 数据存储分区数
    分区 返回分割的部分blockedImageDatastore
    预览 预览数据存储中的数据子集
    阅读 从中读取数据和元数据blockedImageDatastore
    readall 读取所有数据blockedImageDatastore
    重置 将数据存储重置为初始状态
    洗牌 在数据存储中洗牌数据
    子集 创建数据存储或文件集的子集
    使改变 转换数据存储

    例子

    全部崩溃

    创建块映像。

    bim=块图像(“肿瘤_091R.tif”);

    创建一个数据存储,指定解析级别和块大小。

    bls=选择块位置(bim,“级别”2,“块大小”,[512,512]);bimds=块图像数据存储(bim,“BlockLocationSet”,bls);

    读取数据存储中的所有块。

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

    显示被阻止的图像

    蒙太奇(b)

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

    fs = matlab.io.datastore.FileSet (fullfile (matlabroot“工具箱”,“图片”,“imdata”),“文件扩展名”,“.png”);

    创建一个blockedImage对象,指定适配器。这样可以省去检查每个文件以选择合适适配器的需要,从而节省时间。

    readAdapter=images.blocked.GenericImage;bims=blockedImage(fs,“适配器”,readAdapter);

    所有图像必须具有相同数量的维度,因此仅保留RGB图像。

    bims=bims([bims.NumDimensions]==3);bims=块图像数据存储(bims,“块大小”(300 500),“PadMethod”,“复制”);

    显示图形中的所有块blockedImageDatastore

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

    Figure包含axes对象。axes对象包含image类型的对象。

    创建一个blockedImage

    bim=块图像(“肿瘤_091R.tif”);

    指定重叠块。

    块大小=[512];重叠pct=0.5;块偏移=圆形(块大小。*重叠PCT);bls=选择块位置(bim,“BlockSize”blockSize,“BlockOffSets”,块偏移,“排除不完整块”,真正的);

    创建blockedImageDatastore

    bimds = blockedImageDatastore(荡妇,“BlockLocationSet”,bls);

    显示重叠的块。

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

    Figure包含axes对象。axes对象包含image类型的对象。

    创建块映像。

    bim=块图像(“肿瘤_091R.tif”);

    在最粗糙的级别创建一个蒙版。

    bmask = apply(bim, @(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);蒙太奇(块,“边框大小”5,“写成BackgroundColor”,“b”)

    Figure包含axes对象。axes对象包含image类型的对象。

    从数字和带标签的数据创建阻止的图像。

    bim=块图像(“yellowlily.jpg”,“BlockSize”, [512 512]); lbim=块图像(“yellowlily-segmented.png”,“BlockSize”512年[512]);

    创造blockedImageDatastore每个被阻止图像的对象。

    bimds = blockedImageDatastore (bim);lbimds = blockedImageDatastore (lbim);

    将标记的数值数据转换为分类数据。

    catbimds=变换(lbimds,@(b){分类(b {1}, [0,1, 2, 3], [“未知”,“花”,“叶”,“背景”])});

    合并原始文件blockedImageDatastore使用分类数据存储。

    cbimds =结合(bimds catbimds);

    从数据存储中读取数据并显示它。第一个单元格是图像数据,第二个单元格是分类标签。

    data =阅读(cbimds);imshow (labeloverlay(数据{1},{2}));

    Figure包含axes对象。axes对象包含image类型的对象。

    在R2021a中引入