美文网首页
Matlab深度学习基础笔记-5

Matlab深度学习基础笔记-5

作者: SuperZ2017 | 来源:发表于2018-05-21 12:14 被阅读0次

3图像预处理


3.1调整输入图像

您可以使用该imcrop功能提取图像的一部分。

                        imgcrop =  imcrop(img , [ = imcrop(img , [horiz vert w h ]);;

这会提取宽度w和高度h的图像,其左上角在水平方向上第horiz个像素,在垂直方向第vert个像素。


使用该imcrop功能将存储在变量中的图像裁剪img到(130,80)像素开始的部分,宽度为426像素,高度为426像素。将结果存储回变量img:

                                        img = imcrop(img,[130 80 426 426]);


您可以使用该imresize功能调整图像大小。

                                 imgresz = imresize (img ,[ numrows numcols ]); 

这种大小调整img是numrows-by- numcols。也就是说,imgresz具有numcols像素的宽度和像素的高度numrows

使用该imresize函数将存储在变量中的图像调整img为227×227。将结果存储回变量img:

                                                   img = imresize(img,[227 227]);


您可以使用该repmat功能多次复制数组。

                                            y = repmat (x ,[ 1 1 3 ]);   

这会x在第一维中复制阵列一次,在第二维中复制一次,在第三维复制三次。如果x是表示灰度图像的矩阵,y则将是代表颜色(RGB)图像的3-D阵列。

使用该repmat函数img在第三维中复制三次,以便将其从227乘227转换为227乘227乘3。将结果存储回变量img:

                                            img = repmat(img , [1 ,1 ,3]);


通常需要在众多图像上执行相同的预处理步骤。您可以创建包含预处理步骤的自定义导入功能。

修改本地函数wormread以对导入的图像执行三个必需的修改:

crop to()[130 80 426 426] (imcrop)

调整为227-by-227(imresize)

从灰度转换为RGB(repmat)

                        function img = wormread(file)

                                img = imread(file);

                                % TODO - add modifications

                               img = imcrop(img,[130 80 426 426]);

                               img = imresize(img,[227 227]);

                               img = repmat(img,[1 1 3]);

                               end


3.2添加自定义导入功能(函数)到图像存储区

您可以使用ReadFcn图像数据存储的属性来指定将图像读入内存时使用的自定义导入功能。使用该@符号来定义导入函数的函数句柄。

                            ds = imageDatastore(location,'ReadFcn',@myfun);

这将在location使用函数myfun作为导入函数时创建图像的数据存储区。

创建一个名为wormds的数据存储,它指向存储在变量pathToImages中的文件夹路径中的图像文件,使用wormread函数作为导入函数:

                    wormds = imageDatastore(pathToImages,'ReadFcn',@wormread);


使用该read函数将第一个图像导入到一个名为的变量中img:

                                            img = read(wormds);


使用该imshow功能可视化第一张图像:

                                                    imshow(img);


3.3    Augmenting images in a Datastore

您可以使用augmentedImageSource函数执行基本的预处理,该函数将图像数据存储作为输入。 输出可以作为训练数据源传递给trainNetwork函数。


4 总结

相关文章

  • Matlab深度学习基础笔记-5

    3图像预处理 3.1调整输入图像 您可以使用该imcrop功能提取图像的一部分。 imgcrop = imcro...

  • Matlab深度学习基础笔记-4

    2.2修改预训练网络的图层 用fullyConnectedLayer函数创建一个新的全连接层,具有给定数量的神经元...

  • Matlab深度学习基础笔记-2

    笔记来源于matlab官网,不足之处还请提出.。 1.4检查预测 使用classify可以获得所有类别的预测值,存...

  • Matlab深度学习基础笔记-3

    笔记来源于matlab官网,不足之处还请提出.。 2 transfer learning 要执行迁移学习,您需要创...

  • Matlab深度学习基础笔记-1

    笔记来源于matlab官网,不足之处还请提出。 1.使用预训练网络 1.1加载并查看图像 使用imread函数...

  • 2021-02-01

    学习matlab基础运用

  • 深度学习-机器学习

    零基础入门深度学习(1) - 感知器 机器学习 | Coursera 深度学习笔记(一)感知器、梯度下降、反向传播...

  • Redis深度历险笔记

    Redis深度历险笔记 基础与应用 Redis基础数据结构 5种基础数据结构:string、list、hash(字...

  • 关于机器学习,你需要知道的三件事!

    摘要:MATLAB开发运营团队深度解析何为机器学习,什么时候使用机器学习,如何选择机器学习算法,MATLAB到底能...

  • 椭圆检测

    Hough变换检测椭圆 附带matlab与opencv代码 QT+opencv学习笔记(5)——霍夫直线检测、圆检...

网友评论

      本文标题:Matlab深度学习基础笔记-5

      本文链接:https://www.haomeiwen.com/subject/vikxjftx.html