容易忘记的小知识点:html
Matlab程序首行程序:数组
clear;close all;clc;程序运行开始最好清理下以前残留的各类数据,否则matlab可能会出错。ide
clear(清理变量空间),close all(关掉全部显示的图像figure),clc(清理命令窗口中的显示)函数
Matlab程序换行(一个空格加上3个.即 ...而后直接下一行就能够继续写代码)ui
Matlab下程序计时spa
以下:tic和toc能够在程序中使用多个,计算各个程序字块的运行时间。还能够嵌套使用。。。3d
tic;%计时开始
%%%%%%%%%%% 程序 %%%%%%%%%%% toc;%计时结束
tic和toc能够嵌套使用,都是找最近的toc老是找最近的tic,相似于if end的配合,若是想直接输出运行时间,只要相似于 disp(['拷贝去冗余的数据共花费时间:',num2str(toc)]);,便可。code
Matlab查询数据类型视频
class htm
Matlab提取当前运行程序的文件名
因为程序偏多,运行了一堆,都不知道正在跑那个程序,在程序开头加上后面这段代码,就能够了。
clear;close all;clc; disp('当前正在执行的程序是:'); disp([mfilename('fullpath'),'.m']);
流程控制:
数据操做:
数值取整:
matlab中共有四种数值取整,含义分别以下:
fix(x), 将x向0取整
round(x), 向最近的整数取整
floor(x), 向负无穷取整
ceil(x), 向正无穷取整
取随机数:
取随机的排列:
randperm:
Syntax
p = randperm(n)
p = randperm(n,k)
Description
p = randperm(n)返回一个包含从1到n随机排列整数的行向量
p = randperm(n,k)返回一个包含从1到n随机排列整数中k个独特整数的行向量
数据类型转换:
字符串操做:
比较两个字符串是否相等:
合并字符串:
初始感受这函数就跟[]的做用差很少,但后面看了描述才知道,这函数应用更广,毕竟中括号[],只能合并一行字符串,函数strcat能够同时处理多行的array、cell、string。
数组操做:
判断数组是否为空:
isempty(A):若是数组A为空,返回logical 1(true),不然返回logical 0 (false).这个函数常常配合其他的函数一块儿使用(处理其它函数的返回值),加在if后面起到判断做用
求数组均值:
mean:默认是1,按列求均值。
整块复制数组:
repmat(A,m,n):总体按行扩展m倍,按列扩展n倍
结构体:
cell:
文件、文件夹操做:
图像操做:
显示:
改变imshow出来的图片的数字标题,为本身想要的信息,这样在同时显示大量的图片的时候,方便了解图片的信息。
figure;imshow(frameSamp1); set(gcf,'NumberTitle','off'); set(gcf,'Name','读取出的视频中的第一帧');
把上面的 读取出的视频中的第一帧,改成本身想要的汉字便可。
图片用更大尺寸imshow(相似于上面,在imshow后面加入下面的语句)
set(gcf,'outerposition',get(0,'screensize'));%这应该就是全屏显示的意思
上面这两个能够结合使用
imwrite图片到到指定的文件夹,以下,直接把完整的绝对路径包含文件名用中括号[]括起来就能够
tempBlack为图片,后面[]包含的为绝对路径加文件名
imwrite(tempBlack,[savePathNo1,savePathNo2{1},'\',savePathNo3{i+1},'\',saveNameNo1{font},num2str(videoCount-2), ... saveNameNo2{type},num2str(i),'Black',num2str(j),'.jpg']);
在一个图片中显示多个子图:
figure; subplot(2,3,1),imshow(sampPic); subplot(2,3,2),imshow(tempBlack); subplot(2,3,3),imshow(tempWhite); subplot(2,3,4),imshow(tempBitBlack); subplot(2,3,5),imshow(tempBitWhite); set(gcf,'NumberTitle','off'); set(gcf,'Name','截取的一个小块的变换');
subplot配合使用title
1 figure; 2 subplot(2,3,1),imshow(f1); 3 title('原始图片'); 4 subplot(2,3,2),imshow(f2); 5 title('要被减的图片'); 6 subplot(2,3,3),imshow(f3); 7 title('差值图片'); 8 9 f31=f3(:,:,1); 10 subplot(2,3,4),imshow(f31); 11 title('差值图片第一维'); 12 f32=f3(:,:,2); 13 subplot(2,3,5),imshow(f32); 14 title('差值图片第二维'); 15 f33=f3(:,:,3); 16 subplot(2,3,6),imshow(f33); 17 title('差值图片第三维'); 18 19 set(gcf,'NumberTitle','off'); 20 set(gcf,'Name','全部的数据展现');
数据可视化:
GUI:
修改已经生成的fig
在命令窗口中输入guide,而后选择existing fig
新建 gui open existing gui
在每一个控件的Callback的最后面加上guidata(hObject,handles);这句是保存这个控件的全部内容的意思,方便别的控件调用。在别的控件前面加上handles = guidata(hObject);,就能够调用别的函数
GUI:函数
打开指定的文件
[handles.FileName,pathName] = uigetfile('*.jpg','Select the jpg file','D:\'); % handles.FileName就是文件名 % PathName就是路径 %默认打开jpg格式的图片 %文本框显示为Select the jpg file %默认打开的路径为D盘
在界面当中显示文本。
选中Static Text,而后对应的Tag
set(handles.text11,'String',[pathName,pictureNameList(pictureNo+2).name]);%在界面显示当前显示图片的完整绝对文件名
后面就是一个字符串就行[pathName,pictureNameList(pictureNo+2).name]