如何使用Python控制摄像头录制视频
作者:车厘子@
这篇文章主要介绍了如何使用Python控制摄像头录制视频,实现过程需要用到三个库tkinter库、PIL库、cv2库,下面将内容详细的一步一步实现,希望对你有所启发并能做一个属于自己的摄像头控制程序
导语:
Python如何下载网页上的图片呢?
今天小编给大家分享另一个Python应用小程序,就是:用Python控制摄像头录制视频!
学会了也可以做一个属于自己的摄像头控制程序!
那么如何用Python编程来实现呢?
用Python代码实现照片阅读器功能,主要有7步:
第一步:导入需要的依赖库。
这里面主要用到三个库:
- (1)tkinter库:用于界面制作
- (2)PIL库:用于图片处理
- (3)cv2库:用于视频捕获
impor tcv2 impor ttkinter from PIL import Image, ImageTk
第二步:定义控制摄像头录制视频的窗体。
主要是定义一个控制摄像头录制视频的窗体。
root = tkinter. Tk() root. title("视频摄像") root. geometry ( 800x500') root. resi zable (2550, 2550)
第三步:定义并初始化视频显示控件。
主要是定义并初始化一个视频展示的显示控件框
1 abeltkinter. Label (root) label. pack (padx=10, pady=10)
第四步:定义并初始化窗体菜单。
- (1)定义并初始化菜单。
主要功能是定义文件菜单下的打开视频子菜单,然后对打开视频子菜单关联控制事件:打开摄像头视频录制功能。
def init_ frame (root) : menu-tkinter. Menu (root) submenul = tkinter. Menu (menu, tearoff=0) submenu1. add_ command(1abelF' fJFTtT , command=open_ vi deo)menu. add_ cascade (labe1=' x f4' ,menuFsubmenul) submenu2= tkinter. Menu (menu, tearoff=O) submenu2. add_ command (label=' #FHs4' ) menu. addcascade (label-' #G Ej' , menu- submenu2) root. confi g (menuFmenu) root. config (cursor="arrow:")l
- (2)定义打开摄像头视频录制函数。
主要功能是打开摄像头,并读取帧进行写入存储。
def open_ video() : flag,image F camera. read O if flag: video_ out_ save. write (image) cv2. waitKey(10) cv2image = cv2. cvtColor (image,cv2. COLOR_ BGR2RGBA)curr ent_ i mage Image. fromarray (cv2image) imgtk = ImageTk. PhotoImage (image=current_ image)label. imgtk =imgtk labe 1. config (image= imgtk) root. after(1,open_ video)
第五步:定义并初始化摄像头。
第六步:定义并初始化摄像头录制视频的保存路径和存储写入变量。
save_ path = r' c: Users Admini strator Desktop/video_ out_ save. mp4 video_ fourcc = cv2. VideoWriter_ fourcc(*' XVID' )1 video_ out_ save = cv2. VideoWriter (save_ path, video_ fourcc, 20. 0, (640, 480))
第七步:运行窗体主循环。
以上就是用Python
代码实现一个控制摄像头录制视频的方法,下面给出具体的代码,供大家交流!
import cv2 import tkinter from PIL import Image, ImageTk def open_ video) : flag, image = camera. read) if flag: video_ out_ save. write (image) cv2. waitKey (10) cv2image = cv2. cvtColor (image, cv2. COLOR BGR2RGBA)current_ image = Image. fromarray (cv2image) imgtk = ImageTk. PhotoImage (image=current_ image)1abel. ingtk = imgtk 1abel. config (image=imgtk) root. after(1, open vildeo) def init frame (root): menu=tkinter. Menu (root) submenul = tkinter. Menu (menu, tearoff=O) submenul. add_ command(1abel=' fT7ZA#O' , command=open vi deo)menu. add cascade (1abe1=' X 1+' , menuFsubmenul) submenu2 = tkinter. Menu (menu, tearoff-O) submenu2. add_ command (1abe1=' #FH4 ) menu. add_ cascade (1abe1=' # E}”, menu=submenu2) root. config (menu-menu) root. config (cursor- arrow ) if_ name_ ==main root = tkinter. Tk 0 root. title(”i”) root. geometry ( 800x500' root. resizable (2550, 2550) 1abel = tkinter. Labe1 (root) 1abel. pack (padx=10, pady=10) init_ frame (root) camera = cv2. VideoCapture (0) save_ path = r' C: Users Administrator Desktop/video_ out_ save. mp4'video_ fourcc = cv2. VideoWriter fourcc(*' XVID' ) video_ out save = cv2. VideoWriter (save path, video_ fourc H;XE root. mainloop 0
到此这篇关于如何使用Python控制摄像头录制视频的文章就介绍到这了,更多相关Python摄像头控制程序内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!