load是导入文件,一般从mat文件中,读取的是结构体
imread是图像处理工具箱的库函数,处理图像比较方便,读取的是矩阵

1、之前将数组或者矩阵保存为一个mat格式的文件,在进行load命令读取时:
s1=load('qiyipuzong.mat');

得到的s1是struct类型的数据,而我想要的是一个矩阵或者数组。

经过搜索查询,参考下面这个链接的内容

http://baike.baidu.com/link?url=k4G5EtvGr_zj_MgN2jnjxLFTM9m8hC1nYwUbCAXB3_cVwKBcpcSKMu1PuRhVlgutxhDAW9K3ehAh4M1ahRM4cq

,将命令:

s1=load('qiyipuzong.mat');

改写为:

s1=cell2mat(struct2cell(load('qiyipuzong.mat')));

得到的s1即为矩阵。

2、将普通图像读入变为结构体处理,编写函数load_images实现:

function imgs = load_images(img_name, images_folder)
%% load images
if nargin < 2
images_folder = '../images/';
end
target_images_folder = strcat(images_folder, 'target/');
gsource_images_folder = strcat(images_folder, 'gray_source/');
csource_images_folder = strcat(images_folder, 'color_source/');

target_image_name = strcat(target_images_folder, img_name);
gsource_image_name = strcat(gsource_images_folder, img_name);
csource_image_name = strcat(csource_images_folder, img_name);
target_image = im2double(imread(target_image_name));
gsource_image = im2double(imread(gsource_image_name));
csource_image = im2double(imread(csource_image_name));
imgs.target_image = target_image;
imgs.gsource_image = gsource_image;
imgs.csource_image = csource_image;
end

MATLAB中load和imread的读取方式区别的更多相关文章

  1. MATLAB 中gcf、gca 以及gco 的区别

    MATLAB 中gcf.gca 以及gco 的区别gcf 返回当前Figure 对象的句柄值gca 返回当前axes 对象的句柄值gco 返回当前鼠标单击的句柄值,该对象可以是除root 对象外的任意 ...

  2. 学习笔记3—matlab中load特殊用法

    1.在matlab中 ,infro.mat中存有很多子矩阵(比如:mean_FA.mat, mean_e1.mat和 mean_e2.mat),调出某一个矩阵时,命令行为:load([path,'\' ...

  3. Java中9种IO的读取方式

    数据的读写,按照数据类型可以分为两种:字符流和字节流(二者区别?).所以数据读取方式按照数据类型也可以分为两类:字节流的读取和字符流的读取. 一.字节流读取操作: |  | |-----1.FileI ...

  4. JS中访问对象的两种方式区别

    可以使用下面两种方式访问对象的属性和方法 1.对象名.属性名 对象名.方法名() 2.对象名["属性名"] 对象名["方法名"]() var obj = { n ...

  5. jsp中头的导入两种方式区别

    1.<jsp:include page="top.jsp">先将top.jsp中的java脚本和jsp指令执行完毕以后再讲top.jsp页面加入面中 2.<%@ ...

  6. js/jQuery中load()、onload()、ready()的区别

    一.两大事件 load事件:指页面包含图片等文件在内的所有元素都加载完毕后执行的事件. ready事件:表示文档结构已加载完成(不包括图片等非文字媒体文件) 浏览器页面渲染的过程 - 寸寸君 - 博客 ...

  7. Hibernate中load与get,update与merge方法的区别

    1.load()与get()的区别: (1)load()读取 User user = (User)session.load(User.class, userId); (2)get()读取 User u ...

  8. 学习笔记(1)---matlab中常见函数解析

    一.fscanf函数 matlab中函数fscanf在文件读取方面的实例如下: 从文件中有格式地读数据 fscanf 语法1:[a,count]=fscanf(fid,format,size) 根据指 ...

  9. matlab中函数fscanf

    matlab中函数fscanf matlab中函数fscanf在文件读取方面的实例如下: 从文件中有格式地读数据 fscanf 语法1:[a,count]=fscanf(fid,format,size ...

随机推荐

  1. 30道 有趣的 的 JVM 面试题

    目录 1.JVN内存结构 2.对象分配规则 3.解释内存中的栈(stack).堆(heap)和静态区(static area)的用法 4.Perm Space中保存什么数据?会引起OutOfMemor ...

  2. NET 5 MemoryCache与Redis使用以及StackExchange.Redis和CSRedisCore

    简介以及区别 ASP.NET Core 缓存Caching,.NET Core 中为我们提供了Caching 的组件. 目前Caching 组件提供了三种存储方式. Memory Redis SqlS ...

  3. python初学者-计算小于100的最大素数

    for n in range(100,1,-1): for i in range(2,n): if n%i==0: break else: print(n,end=' ')

  4. 2.Redis info命令详解

    命令 127.0.0.1:6379> info [server|clients|memory|stats|...] # Server redis_version:5.0.4 #redis版本 r ...

  5. Java网络编程:QQ邮件发送客户端程序设计

    目录 一.目标介绍 1.认识SMTP(邮件传输协议) 2.POP3(邮件接收协议) 二.基于Base64编码邮箱及授权码 1.开通QQ邮箱SMTP/POP3服务 2.Java编写BASE64编码程序 ...

  6. 动态SQL基本语句用法

    1.if语句 如果empno不为空,则在WHERE参数后加上AND empno = #{empno},这里有1=1所以即使empno为null,WHERE后面也不会报错. 映射文件 <selec ...

  7. Spring AOP 实战运用

    Spring AOP 实战 看了上面这么多的理论知识, 不知道大家有没有觉得枯燥哈. 不过不要急, 俗话说理论是实践的基础, 对 Spring AOP 有了基本的理论认识后, 我们来看一下下面几个具体 ...

  8. python谷歌序列化传输

    今日破解某app加密app当中用到了谷歌序列化传输 1.请求序列化文件 # Generated by the protocol buffer compiler. DO NOT EDIT! # sour ...

  9. ABP vNext EventBus For RabbitMQ 分布式事件总线使用注意事项_补充官网文档

    [https://docs.abp.io/zh-Hans/abp/latest/Distributed-Event-Bus-RabbitMQ-Integration](ABP vNext官方文档链接) ...

  10. Head First 设计模式 —— 08. 外观 (Facade) 模式

    思考题 想想看,你在 JavaAPI 中遇到过哪些外观,你还希望 Java 能够新增哪些外观? P262 println.log 日志接口.JDBC 接口 突然让想感觉想不出来,各种 API 都用得挺 ...