EDA365电子论坛网
标题:
使用MATLAB2010实现AVI视频播放
[打印本页]
作者:
baqiao
时间:
2020-6-24 15:14
标题:
使用MATLAB2010实现AVI视频播放
- K- h+ H) L- X
使用范围:
4 }6 e {/ C+ ~7 \
可以用于视频处理。在硬件实现视频处理之前,首先使用MATLAB对
) [) V6 j$ d* m- U7 i
算法进行仿真。这样可以及时的发现问题,避免不必要的开支。
" V# R, R3 ] ]) i! `
o8 N+ A z; A, c
%}
$ J# u0 v4 W- C* [
%清除所有变量
, u1 p. M# I. ]$ l; g3 D+ f
clear all; close all; clc;
5 W& b* E: M. N% A# _$ v
%读取视频文件
4 J% k! N& a+ w6 y: [
video=VideoReader('test1.avi');
2 N! V( ]" W% q7 {( ?" A
% 读取视频中所有数据
5 M1 c9 M9 m, a: L1 ?# r
vidFrames = read(video);
" A& T) L) p- b3 f# c( Q
%读取视频的帧的个数
! _" j1 @0 s( C
numFrames = get(video, 'numberOfFrames');%获得总的视频帧的个数
* N" {% n4 n* D
%从视频帧数据中创建一个MATLAB视频播放结构体
& c9 H6 Y; Z# |4 E
for k = 1 : numFrames
! ]5 e; c) M7 W) X, S9 N9 d
mov(k).cdata = vidFrames(:,:,:,k);
% D+ \+ L& ?* @) I
mov(k).colormap = [];
+ K4 ]% G3 [2 G4 b7 x
end
/ y" g: y* g- v, y4 C) o# w X1 @
hf=figure;%创建图像
# a6 Z3 z0 P. f7 V. w, G# Z- F/ W
%基于视频的宽度和高度重建图片
+ ]9 I. A2 D- R$ z" T+ u9 x! H
set(hf, 'position', [150 150 video.Width video.Height])
) |0 r% f6 i$ J1 R1 d4 Y/ A
%按照视频帧速率重播视频
) n# n; F" z8 g9 L6 o a G# j: @
movie(hf, mov, 1, video.FrameRate);
' L; O0 j) `' ^ R
7 R2 a# Z' Q1 r
实验结果:(实际测试通过)
3 c5 o1 O$ l# e% z: Y7 j; ~" A: N
' I4 l8 h7 q6 x3 r8 z9 i& z
8.jpg
(70.39 KB, 下载次数: 12)
下载附件
保存到相册
2020-6-24 15:14 上传
' M4 m2 C6 L( p6 M
; G" Q9 h5 X- R: `+ [
1 x# O4 n+ h* T& H- D V
) P0 H% A" J( d) h" `$ K
: ]. O5 D5 m7 Y& C, J0 _
6 q! d# y& r5 J! Y k) o7 R
% i% h' ^0 ^+ S0 _1 y
作者:
SsaaM7
时间:
2020-6-24 16:25
使用MATLAB2010实现AVI视频播放
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2