LLNet模型实现——训练数据准备之Matlab图像格式转换

1. 背景

主要实现将LLNet模型论文中的PGM格式的图像数据进行处理转换

2. 代码实现

function converTool(fromDir, fromFormat, toDir, toFormat, toPrefix)
% Inputs:
%       fromDir: 输入的文件目录
%       fromFormat: 输入的文件格式
%       toDir: 保存文件的目录,层数同fromDir
%       toFormat: 保存文件的格式
%       toPrefix: 保存文件的前缀
% Author: HSW
% Date: 2018-05-05

filePaths = searchRoot(fromDir, fromFormat);
if ~exist(toDir, 'dir')
    mkdir(toDir)
end
dirLen = length(fromDir);

fileCnt = length(filePaths);
for idx = 1 : fileCnt
    filePath = filePaths{idx};
    idxs = strfind(filePath, '\');
    idxs2 = strfind(filePath, '.');
    fileName = filePath(idxs(end) + 1 : idxs2(end) - 1);
    from_img = imread(filePath);
    saveName = [fileName, toFormat];
    if ~isempty(toPrefix)
        saveName = [toPrefix, saveName];
    end
    saveDir = fullfile(toDir, filePath(dirLen + 1 : idxs(end)));
    if ~exist(saveDir, 'dir')
        mkdir(saveDir)
    end
    savePath = [saveDir, saveName];
    % 根据需要进行增加即可
    if ~isempty(strfind(toFormat, 'jpg'))
        imwrite(from_img, savePath, 'jpg');
    elseif ~isempty(strfind(toFormat, 'bmp'))
        imwrite(from_img, savePath, 'bmp');
    elseif ~isempty(strfind(savePath, 'png'))
        imwrite(from_img, savePath, 'png');
    end
end

end


3. 代码效果(左边为PGM格式数据集合,右边为转换获取的PNG格式数据, 根据PGM格式数据的目录结构,建立相同的文件结构)

 

原文链接:加载失败,请重新获取