matlab-fullfile使用

来源:互联网 发布:积分返利商城源码 编辑:程序博客网 时间:2024/06/05 19:25

转自:http://blog.csdn.net/s151506879/article/details/52074559


f = fullfile('dir1', 'dir2', ..., 'filename')%fullfile构成地址字符串;

如:输入:f = fullfile('C:','Applications','matlab','fun.m')
得到:f =C:\Applications\matlab\fun.m


%下例为读取train文件夹中的所有图片;

folder=‘train';

filepaths = dir(fullfile(folder,'*.bmp'));%列出该文件夹下所有.bmp格式的文件(其中包括文件的名字、日期、像素等);

fori = 1 : length(filepaths)

    image = imread(fullfile(folder,filepaths(i).name));%读入第i个图片;
    image = rgb2ycbcr(image);
    image = im2double(image(:, :, 1));
%获得图像的y通道;
    im_label = modcrop(image, scale);
%保证图像被scale整除;
    [hei,wid] = size(im_label);
    im_input = imresize(imresize(im_label,1/scale,'bicubic'),[hei,wid],'bicubic');
%对图像用'bicubic'先下采样再上采样;
    %提取数据;
    for x = 1 : stride : hei-size_input+1
        for y = 1 :stride : wid-size_input+1
            subim_input = im_input(x : x+size_input-1, y : y+size_input-1);
%子图像尺寸33*33;
            subim_label = im_label(x+padding : x+padding+size_label-1, y+padding : y+padding+size_label-1);
%子图像类别尺寸21*21;
 
          %subim_input和subim_label的中心一致;
            count=count+1;
            data(:, :, 1, count) = subim_input;
            label(:, :, 1, count) = subim_label;
        end
    end
end

原创粉丝点击