MATLAB 视频Gamma灰度校正 中值滤波实时显示(不输出保存)
时间: 2023-08-05 15:04:08 浏览: 98
matlab灰度处理代码-Digital-Image-Processing-Course:数字图像处理课程项目
以下是一个基于MATLAB的实时视频Gamma灰度校正和中值滤波的示例代码:
```matlab
% 读取视频文件
videoFileReader = vision.VideoFileReader('inputVideo.avi');
% 创建视频播放器
videoPlayer = vision.VideoPlayer;
while ~isDone(videoFileReader)
% 读取视频帧
frame = step(videoFileReader);
% 进行Gamma灰度校正
gamma = 1.5;
correctedFrame = imadjust(frame,[],[],gamma);
% 进行中值滤波
medianFilteredFrame = medfilt2(correctedFrame,[3,3]);
% 实时显示视频帧
step(videoPlayer,medianFilteredFrame);
end
% 释放资源
release(videoFileReader);
release(videoPlayer);
```
在这个示例中,我们首先使用`vision.VideoFileReader`读取输入视频文件(此处假设为`inputVideo.avi`),然后创建一个`vision.VideoPlayer`对象,用于实时显示视频帧。
在每一次循环中,我们读取视频帧,并使用`imadjust`函数进行Gamma灰度校正,然后使用`medfilt2`函数进行中值滤波。最后,我们使用`step`函数将处理后的视频帧实时显示在视频播放器上。
请注意,此处的代码并没有将处理后的视频帧输出保存到磁盘中,而是直接进行实时显示。如果您需要将处理后的视频保存到磁盘中,请参考MATLAB官方文档中有关视频文件写入的内容。
阅读全文