Matlab編程知識點

容易忘記的小知識點: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]

相關文章
相關標籤/搜索