用OpenCV(python)编写一个程序,实现打开摄像头并保存一张照片的功能

首先大家要在自己电脑上面安装opencv库(本篇文章就不再介绍了,大家自行百度)

import cv2

第一行代码:引用cv库。

capture = cv2.VideoCapture(0)

此行代码的作用就是打开电脑上的摄像头(注:如果电脑有两个摄像头,那么括号中的参数改为1,以此类推)

width,height = capture.get(3),capture.get (4)
print(width,height)

获取摄像头的自身属性

while(True):
    # 获取一帧
    ret, frame = capture.read()
    # 将这帧转换为灰度图
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

    cv2.imshow('frame', gray)
    if cv2.waitKey(1) == ord('q'):
            cv2.imwrite('huoqu.jpg',gary)
            #将图片保存下来。
            break

cv2.waitKey()是让程序暂停的意思,参数是等待时间(毫秒ms)。时间一到,会继续执行接下来的程序,传入0的话表示一直等待。等待期间也可以获取用户的按键输入:k = cv2.waitKey(0)
capture.read()函数返回的第1个参数ret(return value缩写)是一个布尔值,表示当前这一帧是否获取正确。cv2.cvtColor()用来转换颜色,这里将彩色图转成灰度图。

import cv2
capture = cv2.VideoCapture(0)
width,height = capture.get(3),capture.get (4)
print(width,height)
while(True):
      ret,frame = capture.read()
      gary = cv2.cvtColor(frame,cv2.COLOR_RGBA2GRAY)
     
      cv2.imshow('frame',gary)
      if cv2.waitKey(1) == ord('q'):
            cv2.imwrite('huoqu.jpg',gary)
            break

下段代码可以去掉:

width,height = capture.get(3),capture.get (4)
print(width,height)

你可能感兴趣的:(OpenCV,python)