matlab制作UCMerced_LandUse数据集

将UCMerced_LandUse中的图像展平成一行,并将图像一行一行地存储到一个矩阵X中,y中每行保存一个标签。

由于图像较多,在读取图像制作矩阵时,最后会读取地越来越慢,猜想是matlab动态链表增长产生的问题,所以将其分为两次读取,然后合并,经测试确实比原来快了很多。故在这里保存一下。

clc;clear;

class_names = {'agricultural', 'airplane', 'baseballdiamond', 'beach', 'buildings', 'chaparral', 'denseresidential', 'forest', 'freeway', 'golfcourse', 'harbor', 'intersection', 'mediumresidential', 'mobilehomepark', 'overpass', 'parkinglot', 'river', 'runway', 'sparseresidential', 'storagetanks', 'tenniscourt'};

path = 'E:/pythonFiles/UCMerced_LandUse/test_set1/';
savePath = 'E:/datasets/UCMerced/';
 
files =textread('E:/code/testfileNames.txt','%s');
shape = size(files);
nums = shape(1);

X1 = [];
y1 = [];
X2 = [];
y2 = [];
X = [];
y = [];

for i=1:(nums/2)
    fileName = files{i,1};
    sp1 = strsplit(fileName, '.');
    name = sp1{1};
    sp2 = strsplit(name, '_');
    label = sp2{2};
    category = str2num(label);
    
    imageName = strcat(path, fileName);
    img = imread(imageName);
    img1 = img(:)';
    
    X1 = [X1;img1];
    y1 = [y1;category];
    disp(i);
end

for i=(nums/2+1):nums
    fileName = files{i,1};
    sp1 = strsplit(fileName, '.');
    name = sp1{1};
    sp2 = strsplit(name, '_');
    label = sp2{2};
    category = str2num(label);
    
    imageName = strcat(path, fileName);
    img = imread(imageName);
    img1 = img(:)';
    
    X2 = [X2;img1];
    y2 = [y2;category];
    disp(i);
end

X = [X1;X2];
y = [y1;y2];

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
# CNN_UCMerced-LandUse_Caffe(数据:http://vision.ucmerced.edu/datasets/landuse.html) 主要任务:基于深度学习框架完成对光学遥感图像UCMerced LandUse数据集的分类。 数据特点:共包含21类土地类型图片,每类100张,每张像素大小为256*256,数据类内距离大,类间小。 完成情况:数据量太小,训练数据出现过拟合;为了克服这个问题,又减小训练时间,采用caffe框架,在别人训练好的bvlc_reference_caffenwt模型上进行fine-tune,对最后一层设置较大的学习速率,结果取得了93%的正确率;在这基础上又在fc7层上提取了每张图片的4096维特征,进行了SVM分类,取得了95%以上的分类正确率,并对结果做了可视化分析。 环境:ubuntu14.04 + caffe + python(数据划分和增强在用windows10的3.5,其余都是unbuntu下用的2.7) 程序(相关路径需要修改)/步骤: multi_divide_pic.py---多进程进行数据划分(cv2没装成功,建议用cv2,方便) multi_augmentation_pic.py---多进程数据增强 make_caffe_lmdb.py---生成caffe训练需要的数据路径文件,然后修改caffe配置文件 bvlc_reference_caffenet.caffemodel---caffe模型,在上面进行finetune(http://dl.caffe.berkeleyvision.org/?from=message&isappinstalled=1) binaryproto2npy.py---将caffe生成的均值文件转换成.npy格式 cnn_vision_caffe.py---对训练好的模型进行可视化分析 extract_features.py---获取每张图片在fc7层输出的4096维特征 svm_predict.py---使用svm对上述提取的特征进行训练预测 svm_vision.py---对svm模型进行可视化分析 tsne.py---对数据进行降维可视化
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值