加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

宅男的福音:如何对视频逐帧批量截图?

(2016-12-23 06:36:44)
标签:

sci

科研

理工

论文

研究

看电影时,有时遇到精彩的台词想保存下来。比如这样: http://mmbiz.qpic.cn/mmbiz/ibL4SsibqaVsbyx0I66jXoxYDJkATZxY2CiaYEORQUVVTwAxVYWvC2lGbc3eygbdC1am66shfFqHFricHIzpq2IDaA/0?wx_fmt=jpeg

 

或者想截图写影评,

http://mmbiz.qpic.cn/mmbiz/ibL4SsibqaVsbyx0I66jXoxYDJkATZxY2COJBgWziaWQ8B2Ps2icdJzAchfVl3qr2Ml0ViboxLWY4HJft9YbibxqSJCg/0?wx_fmt=jpeg
 

或者看到了德艺双馨女神的视频:

http://mmbiz.qpic.cn/mmbiz/ibL4SsibqaVsbyx0I66jXoxYDJkATZxY2C3GFFPGKWjicsPwg0RrqNRjwJPmSng8ia1ryBTYaGicNK7fbcnq35b2ncg/0?wx_fmt=jpeg

 

该有什么好办法把视频截图,尤其是批量截图?  

 http://mmbiz.qpic.cn/mmbiz/ibL4SsibqaVsZ9kFtc0DtbibRJ8AkEFQoDq808rzVZYFias75U2XTh9tN7C6fhXA8QjsmWdz2beI0NdRlSzdWKtU7w/0?wx_fmt=png

1. QQ截图法

首先想到的是QQ截图的办法。在打开QQ的情况下,按Ctrl+Alt+A即可进入截图界面。

 

或者打开QQ聊天窗口→点击屏幕截图→选择捕捉视频图像→把鼠标移动到视频窗口上,双击鼠标左键激活需要截取的窗口即可:

http://mmbiz.qpic.cn/mmbiz/ibL4SsibqaVsbyx0I66jXoxYDJkATZxY2CmQ2n28rxOkuMaibGTZhibGC6QBGic08aYQ3LZH7jAvL4S1ic4wmFrn47og/0?wx_fmt=jpeg


这种方法方便快捷,但问题是画质很一般。

 http://mmbiz.qpic.cn/mmbiz/ibL4SsibqaVsZ9kFtc0DtbibRJ8AkEFQoDq808rzVZYFias75U2XTh9tN7C6fhXA8QjsmWdz2beI0NdRlSzdWKtU7w/0?wx_fmt=png

2. Windows自带截图法

电脑键盘中有个PrintScreen键,它是截取图片的快捷键,当按下它以后,系统会自动将当前全屏画面保存到剪贴板中。

 

然后打开任何一个图形编辑软件如画图板、PPT等软件,在软件中使用Ctrl+v粘贴命令就可以粘贴下来刚才看到截取的图片。

 

另外,如果按住Alt键再按下PrintScreen键可以截取当前活动窗口。

 

这种方法截单张图可以,但如果要批量截图,全手动操作就很慢了。如果长期手动操作,弄不好还会被弄成键盘手。

 

友情提示:珍爱生命,远离手动重复劳动操作。

 http://mmbiz.qpic.cn/mmbiz/ibL4SsibqaVsZ9kFtc0DtbibRJ8AkEFQoDq808rzVZYFias75U2XTh9tN7C6fhXA8QjsmWdz2beI0NdRlSzdWKtU7w/0?wx_fmt=png

3. 视频处理软件截图

Premiere、会声会影、After Effects等软件都可以批量把视频拆解成序列图片。

 

例如Premiere在导入视频后,按 Ctrl+M 可调出输出设置项:

http://mmbiz.qpic.cn/mmbiz/ibL4SsibqaVsbyx0I66jXoxYDJkATZxY2CLLCP5He2xKceEfyaXYZKibiajHNK5AjVgvnray9nVbC4mtw58P48zKIg/0?wx_fmt=jpeg
 

根据需求选择导出图片的格式,比如GIFJPEGBMP,然后可以批量导出:

http://mmbiz.qpic.cn/mmbiz/ibL4SsibqaVsbyx0I66jXoxYDJkATZxY2CrZwlRlKWtmH6gtl7ER87xMZca3mPJicPPGnrwSGlkQ29iaOvY5GAzvGg/0?wx_fmt=jpeg
 http://mmbiz.qpic.cn/mmbiz/ibL4SsibqaVsZ9kFtc0DtbibRJ8AkEFQoDq808rzVZYFias75U2XTh9tN7C6fhXA8QjsmWdz2beI0NdRlSzdWKtU7w/0?wx_fmt=png

4. Matlab批量截图

视频处理软件是可以实现批量处理,然而问题是:如果视频的文件很大,这些视频处理软件很有可能会用完内存,然后把电脑也卡死了。这时Matlab就派上了用场。

 

它可以读取一帧,保存一帧,然后清空,再循环,程序如下:

 

% 清理变量

clc;

clear;

 

% 读取视频

mov_file='mymov.avi'; %视频的文件名

video=VideoReader(mov_file); %读入视频

frame_number=floor(video.Duration *video.FrameRate); %获取视频帧数

 

%提取图片

fori=1:frame_number

   image_name=strcat('video3sup\',num2str(i));

   image_name=strcat(image_name,'.jpg'); %定义图片的名称

   I=read(video,i);                   %读取视频

   imwrite(I,image_name,'jpg');         %存储图片

   I=[];

end

 

如果只想保存其中的几帧,就不用for循环,将i改成想要保存的帧数即可。

 

(END)

http://mmbiz.qpic.cn/mmbiz/ibL4SsibqaVsZ9kFtc0DtbibRJ8AkEFQoDq808rzVZYFias75U2XTh9tN7C6fhXA8QjsmWdz2beI0NdRlSzdWKtU7w/0?wx_fmt=png

公众号:科研充电宝(原名:科学计算编点程),不定时po一些科研干货、编程中的经验教训、实用技巧、技术宅和好玩的东西,欢迎关注~ http://s12/mw690/005vPBqkzy77no1CUK72b&690

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有