Use o matlab para obter processamento rápido de reprodução de vídeo (velocidade N)

Recentemente, gravei alguns vídeos das nuvens no céu, mas as nuvens se moviam muito devagar e não havia efeito visual chocante, então pensei em usar o matlab para processar o seguinte, e realmente percebi, haha. .

Antes de tudo, você deve ter um pequeno vídeo de sua autoria. Não vou enviar o vídeo que uso. Se você quiser testar, pode gravar um vídeo com seu celular. . . .

clc;clear;
close all;

obj = VideoReader('E:\Program\testpro\testfile.mp4');    % 获取句柄
% FrameVideo = obj.FrameRate;                              % 获取帧率及权重,可以不读
% Hight_video = obj.Height;
Framedata = read(obj);                                   % 读取视频
Datasize = size(Framedata);                              % 获得视频矩阵尺寸

Framedata1 = Framedata(:,:,:,1);                         % 获取第一帧图像
imshow(Framedata1);                                      % 查看第一帧图像
myv = VideoWriter('myvideo');                            % 创建句柄
myv.FrameRate = 30;                                      % 设置视频帧率
open(myv);                                               % 打开句柄
writeVideo(myv,Framedata(:,:,:,1:2:end));                % 写入视频,每两张抽取一张实现快进效果
close(myv);                                              % 关闭句柄,然后用视频软件就可以查看视频了

Os vídeos geralmente são reproduzidos rapidamente de duas maneiras. Uma é a amostragem, ou seja, os 400 quadros originais das imagens agora são extraídos do meio para 100 quadros, o que atinge 4 vezes a velocidade de reprodução; o outro é aumentar a taxa de quadros, originalmente reproduzindo 30 quadros por segundo, agora reproduzo 60 quadros, o que atinge uma velocidade de reprodução 2x.

Obviamente, a premissa é que sua placa de vídeo suporta essa taxa de quadros. . .

Acho que você gosta

Origin blog.csdn.net/ruredfive/article/details/120261268
Recomendado
Clasificación