介绍
最近做图像处理,在一些低级视觉任务(超分,去噪)的竞赛中,一般会用Matlab来对数据进行处理,产生标准的数据集。而我们做深度学习一般都会用python的tf、pytorch等框架做数据加载以及搭建网络等工作。
数据的整个流程是:某相机数据源 - Matlab处理 - python神经网络处理 - Matlab处理 - 最终结果。
不可避免的会用到Matlab命令。之前没有学过,所以在这里简单记一下。
基本操作
获取结构体的数据用“点.”号:struct.field
取矩阵的某个元素:m(1,1)
取字符串的某一段:s(1:10);如果想取倒数的:s(end-4:end)
取cell的某个元素:c{1}
读取文件:load(filename)
把多个元素拼成数组用“大括号{}”:files = {file1,file2,file3}
控制结构
条件语句
循环语句 参考
for i = values
statements
end
values有以下3种形式
start:end
start:step:end
array
字符串
字符串类型用char可以强转
拼接:方括号括起来两个字符串['aaa','bbb']就是'aaabbb'
替换:s = strrep(origin,'old','new')
文件操作
dir
description:列出文件夹的内容。
return:结构体:name,date,bytes,isdir,datenum
example:
dir('.')列出当前目录下所有子文件夹和文件
dir('G:\Matlab')列出指定目录下所有子文件夹和文件
dir('*.m')列出当前目录下符合正则表达式的文件夹和文件
fullfile 参考
description:从几个part构建一个完整的路径(文件夹或者文件)
fullfile(filepart1,...,filepartN)