Python摄像头控制程序
车厘子@ 人气:0导语:
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
加载全部内容