主要内容

denoisingImageDatastore

去噪图像数据存储

描述

使用一个denoisingImageDatastore对象从图像中生成批量的噪声图像块和相应的噪声图像块imageageAtastore..用这些小块来训练去噪深度神经网络。

此对象要求您有深入的学习工具箱™。

笔记

当您使用去噪图像数据存储作为训练数据的来源时,该数据存储为每个纪元的图像补丁添加随机噪声,因此每个纪元使用略有不同的数据集。每个epoch的实际训练图像数增加了一倍patchesperimage..噪声图像块和相应的噪声块不存储在内存中。

创建

描述

dnimds = denoisingimagedataStore(IMDS.创建一个去噪图像数据存储,dnimds.使用图像数据存储的图像IMDS..为了生成噪声图像块,去噪图像数据存储随机地从原始图像中提取原始图像IMDS.然后加上零均值高斯白噪声,标准差为0.1到图像补丁。

例子

dnimds = denoisingimagedataStore(IMDS.名称,值使用名称值对来指定二维图像修补程序大小或设置patchesperimage.GaussianNoiseLevelChannelFormat.,DispatchInBackground特性。您可以指定多个名称值对。将每个参数或属性名称用引号括起来。

例如,DenoisingImagedAtastore(IMDS,'patchesperimage',40)创建一个去噪图像数据存储,随机生成从图像数据存储的每个图像中生成40个噪声修补程序,IMDS.

输入参数

全部展开

指定为imageageAtastore.对象与分类标签。您可以存储数据imageageAtastore.仅用于分类问题。

imageageAtastore.允许使用预取的JPG或PNG图像文件批量读取。如果使用自定义函数来读取图像,则不会发生预取。

名称-值对的观点

指定可选的逗号分离对名称,值参数。姓名是参数名称和价值为对应值。姓名必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:denoisingimageageataStore(IMDS,'patchsize',48)创建具有48像素的方形补丁大小的去噪图像数据存储。

补丁大小,指定为逗号分隔对'patchsize'以及具有正整数值的标量或2元向量。属性的前两个元素补丁财产。

  • 如果'patchsize'是标量,那么这些小块是平方的。

  • 如果'patchsize'是形式为[R.C],然后第一个元素指定补丁中的行数,第二个元素指定列的数量。

数据类型:单身的||INT8.|int16|int32|uint8.|uint16|UINT32.

特性

全部展开

频道格式,指定为'灰度'或者'RGB'

数据类型:字符

在训练、预测和分类过程中在背景中调度观测数据,指定为错误的或者真正的.要使用后台调度,必须具有并行计算工具箱™。如果DispatchInBackground真正的然后你有并行计算工具箱,然后denoisingImageDatastore异步读取修补程序,添加噪声,并队列补丁对。

高斯噪声标准偏差为图像类的一小部分,指定为标量或2元素向量,其中值在范围内[0,1]。

  • 如果GaussianNoiseLevel是标量,那么添加的零均值高斯白噪声的标准偏差对于所有图像斑块相同。

  • 如果GaussianNoiseLevel是一个2元素矢量,那么它指定了一系列标准偏差[stdminstdmax.].所添加的零均值高斯白噪声的标准差对于每个图像patch来说都是唯一的,并从一个均匀分布中随机采样,其范围为[stdminstdmax.].

数据类型:单身的|

每批返回的观察数。您可以更改值MiniBatchSize只有创建数据存储后。用于培训,预测或分类,MiniBatchSize属性设置为迷你批处理尺寸trainingOptions(深度学习工具箱)

此属性是只读的。

去噪图像数据存储中的观测总数。观察的次数等于一个训练时期的长度。

每个图像的随机补丁数量,指定为正整数。

数据类型:单身的||INT8.|int16|int32|uint8.|uint16|UINT32.

此属性是只读的。

Patch大小,指定为正整数的3元素向量。如果您创建一个去噪图像数据存储通过指定'patchSize'的名称-值对参数,则补丁属性根据值设置patchSize论点。

ChannelFormat.财产确定第三个要素补丁财产。

  • 如果ChannelFormat.“灰度”,然后将所有彩色图像转换为灰度和第三元素补丁1

  • 如果ChannelFormat.“RGB”,然后复制灰度图像以模拟RGB图像和第三个元素补丁3.

数据类型:单身的||INT8.|int16|int32|uint8.|uint16|UINT32.

对象功能

结合 将数据与多个数据存储组合
哈迪塔 确定数据是否可用读取
PartitionByIndex. 划分denoisingImageDatastore根据指数
预览 在数据存储区中预览数据子集
读取数据denoisingImageDatastore
读物 阅读数据存储中的所有数据
readbyex. 读取由索引指定的数据denoisingImageDatastore
重置 将数据存储重置为初始状态
洗牌 在数据存储中洗牌数据
变换 转换数据存储
是可分派的 确定数据存储是否可分区
isShuffleable 确定数据存储是否会破坏

例子

全部折叠

获取一个图像数据存储。本例中的数据存储包含彩色图像。

setdir = fullfile(toolboxdir('图片'),'imdata');imds = imageageataStore(setdir,“FileExtensions”,{'.jpg'});

创建一个denoisingImageDatastore对象,从图像数据存储中的每个图像创建许多补丁,并向这些补丁添加高斯噪声。设置可选patchesperimage.补丁GaussianNoiseLevel,ChannelFormat.属性denoisingImageDatastore使用名称值对。当你设置时ChannelFormat.财产“灰度”,denoisingImageDatastore将所有彩色图像转换为灰度。

dnd = denoisingImageDatastore (imd,......“PatchesPerImage”512,......“PatchSize”, 50岁,......'Gaussiannoiselevel'(0.01 - 0.1),......“ChannelFormat”'灰度'
DNDS = DenoisingImageGageAtastastore具有属性:PatchesPerimage:512 Patchsize:[50 50 1] Gaussiannoiselevel:[0.0100 0.1000] ChannerFormat:'灰度'小匹匹配:128 NumObservations:19456 Displatchinbackground:0

提示

  • 训练一个深度神经网络的高斯噪声标准偏差范围比训练一个网络的高斯噪声标准偏差要困难得多。与单个噪声级情况相比,您应该创建更多补丁,培训可能需要更多时间。

  • 要在去噪图像数据存储中可视化数据,可以使用预览函数,它返回表中数据的子集。这输入变量包含有噪声的图像块和回复变量包含相应的噪声补丁。通过使用通过使用相同图形的所有噪声图像修补程序或噪声补丁可视化剪辑功能。例如,此代码在名为的Denoising Image数据存储中显示数据dnimds.

    minibatch = preview(dnimds);montage(minibatch.input)图蒙太奇(minibatch.response)

  • 每次从去噪图像数据存储中读取图像时,都会给每幅图像添加不同数量的随机高斯噪声。

也可以看看

|||(深度学习工具箱)

在R2018A介绍