- List item
MATLAB视频处理学习记录No.1
这是一个大标题
本系列文章用于记录自己学习MATLAB视频图像处理的记录。学习不息,奋斗不止!
本人是一名大学教师,有一门课《MATLAB应用》,教过两轮,发现只是教一些基础用法学生并不是很感兴趣。所以我也充充电,给学生们带来一些前沿、有趣、有用的知识吧!
调用摄像头
使用MATLAB调用电脑的摄像头,代码很简单,过程却很曲折。
先上最终代码:
video_info = imaqhwinfo; % 获取适配器名,一般就是'winvideo'
adaptor = video_info.InstalledAdaptors{1};
device_info = imaqhwinfo(adaptor, 1); % DeviceID等于1的适配器信息;
default_format = device_info.DefaultFormat; % 该设备的默认视频格式
videoObj = videoinput(adaptor, 1, default_format); % 建立连接,创建一个连接对象
set(videoObj , 'ReturnedColorSpace', 'rgb');
% 获取视频的长和宽,以及颜色的层数。
vidRes = get(videoObj, 'VideoResolution');
nBands = get(videoObj , 'NumberOfBands');
axes
% 从数组显示图像
hImage = image(zeros(app.vidRes(2), app.vidRes(1), app.nBands));
% 显示视频-创建一个Video Preview 窗口
preview(videoObj, hImage);
好了,运行代码,MATLAB就会生成一个figure,然后显示摄像头拍到的画面——也就是你自己。
现在,说一下曲折的过程。第一次调用imaqhwinfo这个函数的时候,MATLAB是报错的。
就是需要安装一个工具包Image Acquisition Toolbox Support Package for OS Generic Video Interface。这个工具包2018以后的版本MATLAB都是集成在Add-on模块。正常来说下载就行了。
然而,由于众所周知的原因,(如下:)
在网上冲了一会儿大浪,之后,发现了几个解决方案:
- 应该是激活的不彻底,重新激活试一下————失败!
- 重新安装!!!————失败!
- 安装低版本的MATLAB比如2014————太低级了!不想试。
- 手动下载安装包,手动安装。————亲测可行。
主要参考博客:
手动安装的参考文章
不过那个博主,讲了一堆废话。当然了那个博主的总结还是不错的:
综上所述,其实安装的步骤很简单:
1、用你学校或者机构的官方邮箱注册一个MathWorks账号
2、登录账号,选择代码出错的地方或者去MATLAB主页找获取附加功能页面上找到你要下载的功能包,点击安装,等待下载,安装,环境配置。
3、安装完成,最好重启一下MATLAB,之后正常使用就OK。
原文链接:https://blog.youkuaiyun.com/Henryhhc/article/details/126981556
这里贴一下步骤2的地址,真是不一定好找哦!
Image Acquisition Toolbox Support Package for OS Generic Video Interface
下载,然后安装即可。OK!下一步!
一个简单的GUI
以下把本文所有涉及的功能集成于一个GUI中。便于整体演示:
一共三个panel:
- Display Panel:用于放映视频或者放摄像头画面。
- Information Panerl:这个简单,就是一些TextArea用于显示当前的视频信息。
- Control Panel:主要功能区,每一个按钮都是一个学习的片段。
主要有
- Monitor:调用监控,并显示。
- Collection:截取一段监控中的画面,保存为视频。
- Stop Monitor:结束监控。
- Open Video File:打开一个视频文件——在画面显示。
- Video2Imag List:将打开的视频转换为一个一个的图,放在一个文件夹。
- Imag2Video:将一个文件夹里面的所有图,合并成一个视频。
- Exit:退出系统。
视频控制按钮4个:
- Play:播放
- Go:继续
- Stop:暂停
- Snap:截图。
好了!在app designer中设计好界面,设置好各个模块的名字和位置以及其他属性之后。一个一个编写Callback吧!
Monitor
这个就简单修改一下上面的调用摄像头代码即可:
% 调用系统摄像头&#x