matlab 1写为001,MATLAB视频-01视频读写、信息获取

目录

一、读取视频

%读取视频文件

video=VideoReader('E:\SoftwareDesign\matlab\ExerciseCode\test.mp4');

%video=VideoReader('test.mp4'); %注意视频文件目录

二、获取视频信号信息

1.视频信号总帧数

video = VideoReader('C:\Users\zealo\Desktop\video\sample.mp4');

Frames_Number = video.NumberOfFrames;%获取视频总帧数

调用格式参考上述代码,video.Duration 其他也是如此。

126b003b7976629552b71972362fb113.png

三、读取视频信号某帧

read函数读取视频得某帧

read函数格式:

video = VideoReader('C:\Users\zealo\Desktop\video\sample.mp4');

frame = read(video,10);%读取视频得第十帧

imshow(frame);%显示这帧图像

四、视频的写(存储)

imwrite:将图像写入图形文件

imwrite(A,filename,fmt)

A:图像数据

filename:目标图像名字

fmt:生成图片的格式

图像格式有:bmp(1-bit、8-bit和4-bit)、gif(8-bit)、hdf、jpg(或jpeg)(8-bit、12-bit和16-bit)、jp2或jpx、pbm、pcx(8-bit)、gm、png、pnm、ppm、ras、tif(或tiff)、xwd。各种格式支持的图像位数不一样, 比如bmp格式不支持16-bit,而png格式支持, 又如gif只支持8-bit格式。

for k= 1:10

imwrite(frame,strcat('C:\Users\zealo\Desktop\photo\',num2str(k),'.jpg'),'jpg');

end

解释:循环十次,每次都将图片存放在C:\Users\zealo\Desktop\photo\k.jpg

如图显示:

463beec9d6ce10e574cf7dd587546d9f.png

strcat:水平串联字符串 ,常用在处理大量数据时。

num2str:将数字转换为字符数组

五、写视频文件

把视频文件写进文件夹里面。

fileName = 'C:\Users\zealo\Desktop\video\sample.mp4';

Obj = VideoReader(fileName);%读取视频

out = VideoWriter('out');%写入视频文件,创建视频文件

open(out);%写视频前应该先打开视频

while hasFrame(Obj)

frame = readFrame(Obj);

writeVideo(out, frame);%将视频写入文件,将数据写入与out相关的视频文件中

end

close(out);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值