京东金融大数据竞赛猪脸识别(8)- 识别方法之四

京东金融大数据竞赛猪脸识别(8)- 识别方法之四除了softmax层构建的深度网络,Matlab还有一个简单的构建数据分类的函数,那就是patternnet,其用法类似。可以直接对图像特征数据处理,也可以对图像集处理。代码如下:%exam1.m用训练图像特征构建深度网络并计算测试图像得分clear;load(‘JDPig_mlhmslbp_spyr.mat’);m=numel(classe_name);n=length(y)…

大家好,又见面了,我是你们的朋友全栈君。

除了softmax层构建的深度网络,Matlab还有一个简单的构建数据分类的函数,那就是patternnet,其用法类似。可以直接对图像特征数据处理,也可以对图像集处理。代码如下:

%exam1.m 用训练图像特征构建深度网络并计算测试图像得分
clear;
load('JDPig_mlhmslbp_spyr.mat');
m = numel(classe_name);
n = length(y);
label = []
for i=1:n
    label(:,i) = zeros(m,1);
    label(y(i),i) = 1;
end
testImg  = load('JDTest_mlhmslbp_spyr.mat');
if ~exist('patternnet.mat')    
    net = patternnet(1000);
    net = train(net,X,label);
    fprintf('saving net\n');
    save('patternnet.mat','net');
else
    load('patternnet.mat','net');
    fprintf('loading net\n');
end

if ~exist('resPatternnet.mat')
    view(net);
    scores = net(testImg.X);    
    save('resPatternnet.mat','scores');
else
    load('resPatternnet.mat','scores');
end
fprintf('Testing images!\n');
load('testName.mat','imgName');
for i=1:length(scores)
    for j=1:m
        indImg((i-1)*m+j) = imgName(i);
        plabel((i-1)*m+j)  = j;
        prob((i-1)*m+j)   = scores(j,i);
    end
end
T = table(indImg',plabel',prob');
writetable(T,'resPatternnet.csv');
fprintf('Image recognition finished!\n');
clear;
% 不用特征文件,对图像文件夹进行处理
trainFolder = fullfile(pwd, 'image');
testFolder = fullfile(pwd, 'query');
testSet   = imageSet(testFolder);              %query image
trainImds = imageDatastore(trainFolder,'IncludeSubfolders',true,'FileExtensions','.jpg','LabelSource','foldernames');
testImds  = imageDatastore(testFolder,'IncludeSubfolders',false);
setNum = numel(qImageSets);
y = trainImds.Labels;
n = length(y);
label = []
for i=1:n
    label(:,i) = zeros(m,1);
    label(y(i),i) = 1;
end
for i=1:
if ~exist('patternnet1024.mat')    
    net = patternnet(1024);
    net = train(net,X,label);
    fprintf('saving net\n');
    save('patternnet1024.mat','net');
else
    load('patternnet1024.mat','net');
    fprintf('loading net\n');
end

if ~exist('resPatternnet1024.mat')
    view(net);
    scores = net(testImg.X);    
    save('resPatternnet1024.mat','scores');
else
    load('resPatternnet1024.mat','scores');
end
fprintf('Testing images!\n');
load('testName.mat','imgName');
for i=1:length(scores)
    for j=1:m
        indImg((i-1)*m+j) = imgName(i);
        plabel((i-1)*m+j)  = j;
        prob((i-1)*m+j)   = scores(j,i);
    end
end
T = table(indImg',plabel',prob');
writetable(T,'resPatternnet2000.csv');
fprintf('Image recognition finished!\n');

代码功能与上节京东金融大数据竞赛猪脸识别(6)- 识别方法之三类似,可参看其注释。

转载于:https://blog.51cto.com/8764888/2086338

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151911.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java局域网发送文件_Java如何实现局域网文件传输代码案例分享

    java局域网发送文件_Java如何实现局域网文件传输代码案例分享这篇文章主要介绍了java实现局域网文件传输的实例的相关资料,这里提供了实现代码可以帮助大家理解TCP及文件读写的知识,需要的朋友可以参考下java实现局域网文件传输的实例本文主要实现局域网文件传输的实例,对java的TCP知识,文件读写,Socket等知识的理解应用,很好的实例,大家参考下,实现代码:ClientFile.java/***更多资料欢迎浏览凯哥学堂官网:http://kai…

    2022年5月4日
    49
  • db2中You can’t specify target table for update in FROM clause错误

    db2中You can’t specify target table for update in FROM clause错误db2中You can’t specify target table for update in FROM clause错误

    2022年4月23日
    65
  • linux top 指定进程_linux top 排序

    linux top 指定进程_linux top 排序top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器第一行,任务队列信息,同uptime命令的执行结果第二行,Tasks—任务(进程)第三行,cpu状态信息第四行,内存状态第五行,swap交换分区信息第六行,空行第七行以下:各进程(任务)的状态监控详解top使用方法:使用格式:top[-][d][p][q][c]…

    2022年9月24日
    0
  • HTML与XML关系分析

    HTML与XML关系分析

    2021年12月14日
    42
  • mysql int(19) float(7,2) decimal(7,2)对比

    mysql int(19) float(7,2) decimal(7,2)对比

    2021年11月9日
    39
  • sbc 通信_ipc进程间通信

    sbc 通信_ipc进程间通信SBC在企业IP通信系统中的应用刘航2008/05/04  摘要:本文针对企业IP通信系统建设实施的两大问题:终端接入安全和IP多媒体业务NAT穿越,介绍了基于SBC(SessionBorderController,会话边界控制器)的解决方案,并提出了利用SBC辅助实现IP录音的一种新应用模式。  关键词:IP通信、SBC、NAT穿越、安全、IP录音一、引言

    2022年9月12日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号