【Matlab】把视频里每一帧存为单独的图片

该MATLAB代码实现视频帧提取功能:首先清除工作区并关闭所有窗口,然后读取指定MP4视频文件,获取视频总帧数。通过循环逐帧读取视频内容,使用imshow显示每一帧,并将各帧以BMP格式保存为单独图像文件(按帧序号命名)。最终实现将视频分解为连续静态图像的功能。

matlab 复制代码
clear all;close all;clc;
fileName = 'UD_35658336990-1-192.mp4'; 
obj = VideoReader(fileName);
numFrames = obj.NumberOfFrames;% 帧的总数
for k = 1 : numFrames% 读取数据
     frame = read(obj,k);
     imshow(frame);%显示帧
     imwrite(frame,strcat(num2str(k),'.bmp'),'bmp');% 保存帧
end
相关推荐
万山寒10 小时前
python依赖包导出离线安装到没有外网的服务器
服务器·开发语言·python
特立独行的猫a10 小时前
我用 Rust + Tauri 2 复刻了 N_m3u8DL-CLI:一个 m3u8 多线程下载器
开发语言·后端·rust·m3u8·视频下载器·m3u8dl-cli
程序员雷欧10 小时前
LongAdder
开发语言·python
鱼子星_10 小时前
【C++】反向迭代器:反向迭代器的底层认识与模拟实现
开发语言·c++·笔记·stl
名字还没想好☜10 小时前
Java 用 MethodHandle 替代反射:调用性能实测、invokeExact 的坑与缓存
java·开发语言·缓存·反射·methodhandle
SMF191910 小时前
【Linux】完美解决缩略图工具gm调用java.io.FileNotFoundException: gm问题
java·开发语言·python
念何架构之路10 小时前
路由注册:RouterGroup(routergroup.go)
开发语言·后端·golang
Darkwanderor10 小时前
C++的流简介和简单使用
开发语言·c++
北冥you鱼11 小时前
深入解析 Go 中 sync.YAML.Unmarshal:如何将 YAML 数据填充到 Config 结构体
开发语言·算法·golang
程序员良辰11 小时前
【Mac快速切换JDK】Mac 使用 Homebrew + jenv 快速切换 JDK 版本
java·开发语言·macos