Advertisement

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

阅读量:

导语

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

嘿Hey!今天为大家带来一个有趣的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 )
    
   37. 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'
    
   51. root. resizable (2550, 2550)
    
   53. 1abel = tkinter. Labe1 (root)
    
   55. 1abel. pack (padx=10, pady=10)
    
   57. init_ frame (root)
    
   59. camera = cv2. VideoCapture (0)
    
   61. save_ path = r' C: Users Administrator Desktop/video_ out_ save. mp4'video_ fourcc = cv2. VideoWriter fourcc(*' XVID' )
    
   63. video_ out save = cv2. VideoWriter (save path, video_ fourc
    
   65. H;XE
    
   67. root. mainloop 0

end


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

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

各位粉丝们请注意:想要获取更多的完整代码资源以及深入的学习资料,请点击此处查看。

全部评论 (0)

还没有任何评论哟~