溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么使用python調(diào)用攝像頭

發(fā)布時(shí)間:2021-06-07 10:14:19 來源:億速云 閱讀:489 作者:小新 欄目:開發(fā)技術(shù)

這篇文章給大家分享的是有關(guān)怎么使用python調(diào)用攝像頭的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

一、打開攝像頭

import cv2
import numpy as np
 
def video_demo():
  capture = cv2.VideoCapture(0)#0為電腦內(nèi)置攝像頭
  while(True):
    ret, frame = capture.read()#攝像頭讀取,ret為是否成功打開攝像頭,true,false。 frame為視頻的每一幀圖像
    frame = cv2.flip(frame, 1)#攝像頭是和人對(duì)立的,將圖像左右調(diào)換回來正常顯示。
    cv2.imshow("video", frame)
    c = cv2.waitKey(50)
    if c == 27:
      break
video_demo()
cv2.destroyAllWindows()

二、打開攝像頭并截圖

import cv2
cap = cv2.VideoCapture(0, cv2.CAP_DSHOW) # 打開攝像頭
 
while (1):
  # get a frame
  ret, frame = cap.read()
  frame = cv2.flip(frame, 1) # 攝像頭是和人對(duì)立的,將圖像左右調(diào)換回來正常顯示
  # show a frame
  cv2.imshow("capture", frame) # 生成攝像頭窗口
 
  if cv2.waitKey(1) & 0xFF == ord('q'): # 如果按下q 就截圖保存并退出
    cv2.imwrite("test.png", frame) # 保存路徑
    break
 
cap.release()
cv2.destroyAllWindows()

三、打開攝像頭并不斷實(shí)時(shí)截屏

def video_demo():
  print('開始')
  cap = cv2.VideoCapture(0, cv2.CAP_DSHOW) # 電腦自身攝像頭
  i = 0#定時(shí)裝置初始值
  photoname = 1#文件名序號(hào)初始值
 
  while True:
    i = i + 1
    reg, frame = cap.read()
    frame = cv2.flip(frame, 1) # 圖片左右調(diào)換
    cv2.imshow('window', frame)
 
    if i == 50: # 定時(shí)裝置,定時(shí)截屏,可以修改。
 
      filename = str(photoname) + '.png' # filename為圖像名字,將photoname作為編號(hào)命名保存的截圖
      cv2.imwrite('C:/Users/Administrator/Desktop/m' + '\\' + filename, frame) # 截圖 前面為放在桌面的路徑 frame為此時(shí)的圖像
      print(filename + '保存成功') # 打印保存成功
      i = 0 # 清零
 
      photoname = photoname + 1
      if photoname >= 20: # 最多截圖20張 然后退出(如果調(diào)用photoname = 1 不用break為不斷覆蓋圖片)
        # photoname = 1
        break
    if cv2.waitKey(1) & 0xff == ord('q'):
      break
  # 釋放資源
  cap.release()
 
video_demo()
cv2.destroyAllWindows()

以上就是python調(diào)用攝像頭的示例代碼的詳細(xì)內(nèi)容。

內(nèi)容擴(kuò)展:

對(duì)于攝像頭保存圖片的代碼詳細(xì)分析:

保存圖片的功能

"""
:param
 無
:return
 無
功能:通過s鍵,保存圖片
"""""
# 讀取圖片
img = cv2.imread("index.jpeg", 0)
# 通過窗口顯示圖片
cv2.imshow("image", img)
# 設(shè)置圖片窗口顯示延遲
k = cv2.waitKey(0)
if k == 27:
 # 27是代表esc鍵
 cv2.destroyAllWindows()
elif k == ord("s"):
 # 保存圖片,新命名index2.jpg
 cv2.imwrite("index2.jpg", img)
 cv2.destroyAllWindows()

感謝各位的閱讀!關(guān)于“怎么使用python調(diào)用攝像頭”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI