Matlab制作視頻并轉(zhuǎn)換成gif動態(tài)圖的兩種方法
一、第一個方法比較簡單,就是使用movie(f)直接取生成AVI視頻文件。
%% f(t)-->f(4*t+12) 并且驗證%%
function Signal_change()
tic%記錄程序運行時間
figure
n = 0;
t = -2*pi:0.01:2*pi;
y = sin(t);%周期為2*pi
y_result = sin(4*t);
plot(t,y,'b');
xlabel('t');
ylabel('Amplitude');
n = n+1;
F(n) = getframe(gcf);%獲取當前圖形并且保存到F(n)中
%saveas(gcf,['C:\Users\Administrator\Desktop\圖片\',num2str(n),'.jpg']);
hold on
%% 驗證%%
%f(4*t+12) = f[4*(t + 3)].遵循先外后里原則具體的圖形變換實現(xiàn)為:
%1 、先將f(t)壓縮4倍
%2、再將壓縮的圖形左移3個單位。
y_now = sin(t);
h = plot(t,y_now,'--','YDatasource','y_now');
%% f(t)-->f(4*t)%%
for i = 1:0.1:4
y_now = sin(i*t);
refreshdata(h,'caller');
drawnow;
n = n+1;
F(n) = getframe(gcf);
%saveas(gcf,['C:\Users\Administrator\Desktop\圖片\',num2str(n),'.jpg']);
pause(0.01);
end
%保留f(4*t)的圖形
n = n+1;
plot(t,y_result,'r');
F(n) = getframe(gcf);
%saveas(gcf,['C:\Users\Administrator\Desktop\圖片\',num2str(n),'.jpg']);
hold on
%% f(4*t)-->f(4*t+12)%%
for j = 0:0.1:3
y_now = sin(4*(t + j));
refreshdata(h,'caller');
drawnow;
n =n+1;
pause(0.1);
legend('sin(t)','sin(4t+12)','sin(4t)');
F(n) = getframe(gcf);
%saveas(gcf,['C:\Users\Administrator\Desktop\圖片\',num2str(n),'.jpg']);
end
movie(F);%生成視頻
movie2avi(F,'imovie1.avi','FPS',3);%設(shè)置視頻的幀率為3,數(shù)值越大速度越快

二、第二種方法是先將每一個動畫中的圖片保存下來到一個文件夾中,然后進行讀取并且制作處視頻文件。
程序示例:
function Avi()
%%大小寫非常重要%%
n = 64;
WriterObj = VideoWriter('wmw');
WriterObj.FrameRate = 100;%此語句必須放置在
%WriterObj = VideoWriter('wmw')語句之后才能設(shè)置幀率
open(WriterObj);for i=1:n%逐次取出文件frame=imread(['C:\Users\Administrator\Desktop\圖片\',num2str(i),'.jpg']); %讀取文件writeVideo(WriterObj,frame);end close(WriterObj);
原圖片文件在百度網(wǎng)盤:
鏈接:http://pan.baidu.com/s/1miFgCsg 密碼:vauv
下載之后保存在桌面上,程序就可以直接運行
三、下面介紹將視頻文件轉(zhuǎn)換為gif文件
下載軟件:視頻GIF轉(zhuǎn)換
(百度上搜索就好)
使用很方便。
四、在word中插入gif:
最為方便的辦法就是將word文件保存為網(wǎng)頁文件,然后打開保存的網(wǎng)頁文件gif圖片就可以正常顯示了
總結(jié)
以上所述是小編給大家介紹的Matlab制作視頻并轉(zhuǎn)換成gif動態(tài)圖的兩種方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- python調(diào)用matlab的m自定義函數(shù)方法
- MATLAB Delaunay算法提取離散點邊界的方法
- matlab 生成.bmp格式的文件
- Matlab實現(xiàn)數(shù)據(jù)的動態(tài)顯示方法
- matlab中實現(xiàn)矩陣刪除一行或一列的方法
- ubuntu下Matlab_Linux添加工具包操作步驟
- 詳解如何在python中讀寫和存儲matlab的數(shù)據(jù)文件(*.mat)
- 在ubuntu16.04上創(chuàng)建matlab的快捷方式(實現(xiàn)方法)
- Ubuntu 16.04 LTS下安裝MATLAB 2014B的方法教程
- 基于MATLAB神經(jīng)網(wǎng)絡(luò)圖像識別的高識別率代碼

