无类别,图像混合放置:

clear
close all addpath ./matlab model= './models/bvlc_reference_caffenet/deploy.prototxt';
weights= './models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel';
mean = load('./matlab/+caffe/imagenet/ilsvrc_2012_mean.mat');
net = caffe.Net(model, weights, 'test'); % create net and load weights
mean_data = mean.mean_data; net.blobs('data').reshape([ ]);
net.reshape(); rt_img_dir='/ImageNet/ILSVRC2012_img_val/';
rt_data_dir='ImageNet/Fea/ILSVRC2012_img_val/'; %disp('Extracting CNN features...'); frames = dir(fullfile(rt_img_dir, '*')); frames()=[]; frames()=[];
c_num = length(frames);
gray_num=;error_num_CMYK_JPEG=;
% database.path=[]; for jj = :c_num,
imgpath = fullfile(rt_img_dir, frames(jj).name);
try
%% prepare the image
im_data = caffe.io.load_image(imgpath);
%% subtract mean_data (already in W x H x C, BGR)
width = ; height = ;
im_data = imresize(im_data, [width, height]); % resize using Matlab's imresize
feaSet.iscolor=;
if size(im_data,)==
imdata=zeros([size(im_data),]);
imdata(:,:,)=im_data;
imdata(:,:,)=im_data;
imdata(:,:,)=im_data;
im_data=imdata;
feaSet.iscolor=;
gray_num=gray_num+;
end
im_data = im_data - (mean_data); width = ; height = ;
im_data = imresize(im_data, [width, height]); % resize using Matlab's imresize res = net.forward({im_data});
fc6_data = net.blobs('fc6').get_data();
fc7_data = net.blobs('fc7').get_data(); feaSet.fc6_data = fc6_data;
feaSet.fc7_data = fc7_data; [pdir, fname] = fileparts(frames(jj).name);
fpath = fullfile(rt_data_dir, [fname, '.mat']); save(fpath, 'feaSet');
%database.path = [database.path; fpath];
catch
str= fullfile(frames(jj).name);
disp(str);
error_num_CMYK_JPEG=error_num_CMYK_JPEG+;
error_CMYK_JPEG{error_num_CMYK_JPEG}=str;
end
end;

有类别,不同类图像按不同文件夹放置


clear
close all addpath ./matlab model= './models/bvlc_reference_caffenet/deploy.prototxt';
weights= './models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel';
mean = load('./matlab/+caffe/imagenet/ilsvrc_2012_mean.mat');
net = caffe.Net(model, weights, 'test'); % create net and load weights
mean_data = mean.mean_data;
%% obtain params in diff layers and show
%pdata = net.params('conv1',).get_data();
%vis_square(pdata,,0.5); net.blobs('data').reshape([ ]);
net.reshape(); rt_img_dir='mageNet/ILSVRC2012_img_train/';
rt_data_dir='ImageNet/Fea/ILSVRC2012_img_train/'; disp('Extracting CNN features...');
subfolders = dir(rt_img_dir); siftLens = []; database = []; database.imnum = ; % total image number of the database
database.cname = {}; % name of each class
database.label = []; % label of each class
database.path = {}; % contain the pathes for each image of each class
database.nclass = ;
error_num_CMYK_JPEG=;
for ii = :length(subfolders),
subname = subfolders(ii).name; if ~strcmp(subname, '.') & ~strcmp(subname, '..'),
database.nclass = database.nclass + ; database.cname{database.nclass} = subname; frames = dir(fullfile(rt_img_dir, subname, '*'));
frames()=[];frames()=[];
c_num = length(frames);
database.imnum = database.imnum + c_num;
database.label = [database.label; ones(c_num, )*database.nclass]; siftpath = fullfile(rt_data_dir, subname);
if ~isdir(siftpath),
mkdir(siftpath);
end; for jj = :c_num,
imgpath = fullfile(rt_img_dir, subname, frames(jj).name);
try
im_data = caffe.io.load_image(imgpath);
%% subtract mean_data (already in W x H x C, BGR)
width = ; height = ;
im_data = imresize(im_data, [width, height]); % resize using Matlab's imresize
feaSet.iscolor=;
if size(im_data,)==
imdata=zeros([size(im_data),]);
imdata(:,:,)=im_data;
imdata(:,:,)=im_data;
imdata(:,:,)=im_data;
im_data=imdata;
feaSet.iscolor=;
gray_num=gray_num+;
end
feaSet.label= database.nclass; im_data = im_data - (mean_data); width = ; height = ;
im_data = imresize(im_data, [width, height]); % resize using Matlab's imresize res = net.forward({im_data});
fc6_data = net.blobs('fc6').get_data();
fc7_data = net.blobs('fc7').get_data(); feaSet.fc6_data = fc6_data;
feaSet.fc7_data = fc7_data; [pdir, fname] = fileparts(frames(jj).name);
fpath = fullfile(rt_data_dir, subname, [fname, '.mat']); save(fpath, 'feaSet');
catch
str= fullfile(subname,frames(jj).name);
disp(str);
error_num_CMYK_JPEG=error_num_CMYK_JPEG+;
error_CMYK_JPEG{error_num_CMYK_JPEG}=str;
end end;
end;
end;

matlab 批量提取CNN特征的更多相关文章

  1. 原来CNN是这样提取图像特征的。。。

    对于即将到来的人工智能时代,作为一个有理想有追求的程序员,不懂深度学习(Deep Learning)这个超热的领域,会不会感觉马上就out了?作为机器学习的一个分支,深度学习同样需要计算机获得强大的学 ...

  2. CNN基础二:使用预训练网络提取图像特征

    上一节中,我们采用了一个自定义的网络结构,从头开始训练猫狗大战分类器,最终在使用图像增强的方式下得到了82%的验证准确率.但是,想要将深度学习应用于小型图像数据集,通常不会贸然采用复杂网络并且从头开始 ...

  3. Python 超简单 提取音乐高潮(附批量提取)

    很多时候我们想提取某首歌的副歌部分(俗称 高潮部分),只能手动直接卡点剪切,但是对于大批量的获取就很头疼,如何解决? 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后 ...

  4. 寻找与疾病相关的SNP位点——R语言从SNPedia批量提取搜索数据

    是单核苷酸多态性,人的基因是相似的,有些位点上存在差异,这种某个位点的核苷酸差异就做单核苷酸多态性,它影响着生物的性状,影响着对某些疾病的易感性.SNPedia是一个SNP调査百科,它引用各种已经发布 ...

  5. python实现gabor滤波器提取纹理特征 提取指静脉纹理特征 指静脉切割代码

    参考博客:https://blog.csdn.net/xue_wenyuan/article/details/51533953 https://blog.csdn.net/jinshengtao/ar ...

  6. matlab批量读取一个文件夹里类似命名的mat文件

    参考网址: Matlab读取同一路径下多个txt或mat文件总结 matlab 批量读取数据文件.mat .dat 整理:matlab批量读入数据文件的方法 首先命名方式体现在只是名字里数字有变化,其 ...

  7. PDF文本内容批量提取到Excel

    QQ:231469242,版权所有 sklearn实战-乳腺癌细胞数据挖掘 https://study.163.com/course/introduction.htm?courseId=1005269 ...

  8. 使用matlab批量处理图像后在指定文件夹存储

    使用matlab批量处理图像后在指定文件夹存储 clear;clc;close all; Files=dir('D:\文件及下载相关\文档\MATLAB\postgraduate\Kodak\*.jp ...

  9. VGG16提取图像特征 (torch7)

    VGG16提取图像特征 (torch7) VGG16 loadcaffe torch7 下载pretrained model,保存到当前目录下 th> caffemodel_url = 'htt ...

随机推荐

  1. 建设商城网站ecshop如何开启伪静态

    ecshop是国内一款比较流行的商城网站建设系统,它拥有比较完善的电子商务交易流程,其使用PHP+网站建设者的喜爱.   商城网站也需要网站优化,开启伪静态是个比较好的方法.   ECSHOP的伪静态 ...

  2. java中this 关键字的使用

    在方法中定义使用的this关键字,它的值是当前对象的引用.也就是说你只能用它来调用属于当前对象的方法或者使用this处理方法中成员变量和局部变量重名的情况.而且,更为重要的是this和super都无法 ...

  3. Visual Studio 2015 新建MVC项目 Package Manager Console不能使用 (HRESULT: 0x80131500)

    Visual studio 2015 突然新建不了MVC项目,报出错误: HRESULT: 0x80131500 在折腾了很长时间,最后在Github上看到这样一个贴 地址:https://githu ...

  4. 【工具】【电子设计】超屌的 fritzing 新建元件

    fritzing 有多好,用了才知道,但是通常会遇到一个问题,他的元件库不一定够用,这时候就得自己做元件了,但是搜了一下网上没有相关的教程啊. 算了,去官网看英文吧.. 首先在最新版本不支持直接新建元 ...

  5. onethinkp导入excel

    /** * Excel导入函数 * @author crx349 */ if (!empty($_FILES)) { $config = array( 'maxSize' => 3145728, ...

  6. 百度echarts地图扩展动态加载geoCoord

    var data={}; for(var i=0;i<result.length;i++){ data[(""+result[i].name+"")]=e ...

  7. Flask源码学习—config配置管理

    自己用Flask做了一个博客(www.hbnnlove.sinaapp.com),之前苦于没有对源码解析的文档,只能自己硬着头皮看.现在我把我自己学习Flask源码的收获写出来,也希望能给后续要学习F ...

  8. I/O Directory类

    Directory类 Directory类位于System.IO 命名空间.Directory类提供了在目录和子目录中进行创建移动和列举操作的静态方法.此外,你还可以访问和操作各种各样的目录属性. 1 ...

  9. christian louboutin ballerinas outlet

    www.heelschuhe.de, Wie auch immer, Schneiden auf den Punkt; David und Connie in Vancouver: Wir hoffe ...

  10. util-linux编译unknown architecture 'BSD_LABELSECTOR' undeclared错误

    ------------------------------------------------------------------------------ In :: fdiskbsdlabel.h ...