欢迎光临散文网 会员登陆 & 注册

用matlab实现视频每一帧截取,并用蓝点描点

2019-08-05 19:01 作者:这个骚年很可耐  | 我要投稿

将只有蓝点描点的图,连续起来,变成了可以观看的视频,是一件很有意思的事情,下文用matlab加以实现:

close all

clear all

clc




[y fs] = audioread('E:大杉久美子 - ドラえもんのうた (哆啦A梦之歌) (TV Version).mp3');%音频读取

sound(y,fs);%播放背景音乐



path = 'C:\Users\HP\Desktop\实验文件夹\';%注意文件夹路径的选取,注意该文件夹下需要大量图片,以方便做成动画效果

dir1 = dir([path '*.jpg']);

for i = 1:length(dir1)

    disp(i);

    img = imread([path dir1(i).name]);

    img = rgb2gray(img);

    detection = edge(img,'canny');%算子边缘检测,roberts,sobel,log三种算子的效果都不如canny

    

    set(gcf,'NumberTitle','off','Name','test@MATLAB2016a by SZQ');

    [x,y] = find(detection ==1);

    scatter(y,-x,'.');%描点

    axis([0 2048 -1024 0]);

    pause(0.05);

end

终结语:

代码参考于UP主明拓在哪的白蛇视频,在这里表示感谢,源代码参考于https://blog.csdn.net/xiehuo120/article/details/97665779

顺便说一句,如何将一段视频切成每一帧的方法:

建议大家下载  Adobe Premiere Pro CS6软件,文件打开你所要导入的视频,拖入时间轴,ctrl+m,选择导出的格式为jpg即可,如果大家的视频是从B站下载的,建议坐标轴按照我的代码后两行的参数编写。

下面是视频中的截图:



用matlab实现视频每一帧截取,并用蓝点描点的评论 (共 条)

分享到微博请遵守国家法律