教你用Python控制摄像头录制视频~

导语

​Python如何下载网页上的图片呢?

哈喽哈喽铁汁萌~今天小编给大家分享另一个Python应用小程序,就是:用Python控制摄像头录制视频

教你用Python控制摄像头录制视频~_第1张图片

感兴趣的小伙伴耐心往下看哦✨,学会了你也可以做一个属于自己的摄像头控制程序!

那么如何用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

end


今日分享到这就结束了~希望你们能够喜欢!记得给小编个三连再走哦!

家人萌的支持是小编更新最大的动力 ✨

想领取更多完整源码跟Python学习资料的小可爱们可点击这行字体哦

 

你可能感兴趣的:(Python,程序员,python,音视频,开发语言)