中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在python中使用openCV調用攝像頭拍攝和處理圖片

發布時間:2021-06-02 17:38:52 來源:億速云 閱讀:445 作者:Leah 欄目:開發技術

本篇文章給大家分享的是有關怎么在python中使用openCV調用攝像頭拍攝和處理圖片,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

詳細代碼如下:

import cv2
import os

print("=============================================")
print("= 熱鍵(請在攝像頭的窗口使用):       =")
print("= z: 更改存儲目錄             =")
print("= x: 拍攝圖片               =")
print("= q: 退出                 =")
print("=============================================")
print()
class_name = input("請輸入存儲目錄:")
while os.path.exists(class_name):
  class_name = input("目錄已存在!請輸入存儲目錄:")
os.mkdir(class_name)

index = 1
cap = cv2.VideoCapture(0)
width = 640
height = 480
w = 360
cap.set(cv2.CAP_PROP_FRAME_WIDTH, width)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, height)

crop_w_start = (width-w)//2
crop_h_start = (height-w)//2

print(width, height)

while True:
  # get a frame
  ret, frame = cap.read()
  # show a frame
  frame = frame[crop_h_start:crop_h_start+w, crop_w_start:crop_w_start+w]
  frame = cv2.flip(frame,1,dst=None)
  cv2.imshow("capture", frame)

  input = cv2.waitKey(1) & 0xFF

  if input == ord('z'):
    class_name = input("請輸入存儲目錄:")
    while os.path.exists(class_name):
      class_name = input("目錄已存在!請輸入存儲目錄:")
    os.mkdir(class_name)
  elif input == ord('x'):
    cv2.imwrite("%s/%d.jpeg" % (class_name, index),
          cv2.resize(frame, (224, 224), interpolation=cv2.INTER_AREA))
    print("%s: %d 張圖片" % (class_name, index))
    index += 1
  if input == ord('q'):
    break

    
cap.release()
cv2.destroyAllWindows()

要點記錄:

當前版本opencv-python(3.4.3.18)中攝像頭有關屬性為cv2.XXXX,其獲取和設置函數分別如下:(以幀的寬和高為例)

# 獲取
width = int(videoCapture.get(cv2.CV_CAP_PROP_FRAME_WIDTH)
height = int(videoCapture.get(cv2.CV_CAP_PROP_FRAME_HEIGHT)
# 設置
cv2.VideoCapture(0).set(cv2.CAP_PROP_FRAME_WIDTH, width)
cv2.VideoCapture(0).set(cv2.CAP_PROP_FRAME_HEIGHT, height)

以上就是怎么在python中使用openCV調用攝像頭拍攝和處理圖片,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宁乡县| 平定县| 玛纳斯县| 通江县| 从化市| 台湾省| 阿鲁科尔沁旗| 金川县| 色达县| 汨罗市| 兴山县| 龙口市| 遵化市| 同仁县| 宣威市| 乐清市| 达日县| 聂荣县| 邹城市| 池州市| 太白县| 苏尼特右旗| 冀州市| 岳阳市| 三亚市| 巴林左旗| 聂拉木县| 镶黄旗| 鄢陵县| 高陵县| 和静县| 石景山区| 徐汇区| 得荣县| 剑阁县| 镇坪县| 赫章县| 山丹县| 邵东县| 建德市| 武邑县|