|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
8 T# z X* g5 ]2 u# U, w使用范围:
6 @7 X, H' V' r* q4 b j ?可以用于视频处理。在硬件实现视频处理之前,首先使用MATLAB对# E0 o1 O! n a b$ e
算法进行仿真。这样可以及时的发现问题,避免不必要的开支。
5 B; p: k# ~4 b+ y' V: b# s8 R0 ?' V. I3 ?2 F1 ~8 I0 N7 B
%}7 O+ H8 L4 F6 T/ N) U d
%清除所有变量
/ ~+ A$ [ M7 P) u" Qclear all; close all; clc;
! ^$ j# K) b4 m* e- d' w%读取视频文件
' P+ o) D# ?5 N6 `video=VideoReader('test1.avi');
" Y, b5 B* U, w% 读取视频中所有数据
4 O! ~# h$ s7 Q1 I9 T) fvidFrames = read(video);9 W2 U0 b1 \5 X) J8 j' V0 a
%读取视频的帧的个数' w9 e. R4 x$ q* i
numFrames = get(video, 'numberOfFrames');%获得总的视频帧的个数. n+ l' i, A2 n0 @; V- Z
%从视频帧数据中创建一个MATLAB视频播放结构体
) s! g$ h6 z: s" k/ e: o% O for k = 1 : numFrames
e+ T2 H, l, q0 A7 [& W mov(k).cdata = vidFrames(:,:,:,k);
: W- L5 q9 P0 m mov(k).colormap = [];
% F0 U) s) M- z$ R end ) G$ a T" {5 o+ G- u$ o, M/ c$ C
hf=figure;%创建图像
, k# Y5 k" b/ y: O6 ]9 W; d7 p %基于视频的宽度和高度重建图片( t4 t; T& P! P+ V' S
set(hf, 'position', [150 150 video.Width video.Height]); q0 z! h4 { v% T n/ C# d9 Y; m u
%按照视频帧速率重播视频4 @* o, d! ], U1 f2 z/ B$ D* p8 e
movie(hf, mov, 1, video.FrameRate);2 A4 Z3 ^" u) s2 j. I
7 R6 y. H1 l4 G( b) o
实验结果:(实际测试通过)
* {+ ?. j. `$ E0 T& j# G6 N1 w
0 D5 }. v) b# D" x- a& l
^" c" w7 M4 s: c- e+ R7 s; [
# s! m7 l4 z; f
& p# i, i/ H0 e }
0 G3 R7 ]/ L2 r3 ~* `6 q
% m1 u- }. V& T3 D1 A
! H6 I" D" S2 m( w/ q- C) ^! F+ U! E
|
|