mnist文件提取成bmp(matlab代码)

因为要写模式识别的大作业,用fisher线性判别函数来识别数字
首先得用到手写体的数据
经过长时间绝望的百度搜索之后
首先找到了

mnist手写体的未处理原始格式

ps:就是四个.gz的压缩包,下载之后解压缩变成
mnist文件提取成bmp(matlab代码)_第1张图片
附上下载地址http://yann.lecun.com/exdb/mnist/
然后就是绝望的寻找将这些文件转换成bmp格式,很多人的博客有用python的,有用c++,matlab的,最后总是这里有问题哪里有问题的,最后脑袋瓜子灵机一动会不会有人用.mat的文件呢
黄天不负有心人在http://www.cs.nyu.edu/~roweis/data.html找到mat格式的,加上某位大神的如下的代码你就可以在你的g盘里面找到自己的文件了,当然路径部分你可以自己改一下
哦,对了,你得把下载好的文件放在matlab对应的文件下,或者添加文件的路径
附上图,额里面就有很多网上其他用来读取mnist文件的代码可惜不知道是不会用还是就是代码不行mnist文件提取成bmp(matlab代码)_第2张图片

load('mnist_all.mat');
type = 'train';
savePath = 'G:\data\mnist\train\';
for num = 0:1:9
    numStr = num2str(num);
    tempNumPath = strcat(savePath, numStr);
    mkdir(tempNumPath);
    tempNumPath = strcat(tempNumPath,'\');
    tempName = [type, numStr];
    tempFile = eval(tempName);
    [height, width]  = size(tempFile);
    for r = 1:1:height
        tempImg = reshape(tempFile(r,:),28,28)';
        tempImgPath = strcat(tempNumPath,num2str(r-1));
        tempImgPath = strcat(tempImgPath,'.bmp');
        imwrite(tempImg,tempImgPath);
    end
end

“`

mnist文件提取成bmp(matlab代码)_第3张图片
加油毕竟这只是第一步,还想提醒大家一点,很多博客都是抄过来,这都忍了,可是都不写怎么使用的。

你可能感兴趣的:(模式识别)