(Matlab) MovieWriter从彩色图像生成黑白电影



我想从一个图像序列生成一个电影。我使用了以下代码:

%% 4.) GENERATE THE MOVIE
disp("Generate the Movie...");
imageNames = dir(fullfile('images','*.png'));
imageNames = {imageNames.name}';
outputVideo = VideoWriter(fullfile('images','AcousticCamera.mp4'),'MPEG-4');
outputVideo.FrameRate = 10;
outputVideo.Quality = 95;
open(outputVideo)
for ii = 1:length(imageNames) %% loop over the images
img = imread(fullfile('images',imageNames{ii}));
writeVideo(outputVideo,img)
end
close(outputVideo)

输入图像为png彩色图像,但视频为黑白图像。

因为没有添加配置文件,所以默认为灰度。Videowriter文档

解决方案如下:

...
colorMap = jet(256);
for ii = 1:length(imageNames) %% loop over the images
img = imread(fullfile('images',imageNames{ii}));
writeVideo(outputVideo,im2frame(img,colorMap))
end

最新更新