怎么在Python中使用OpenCV調(diào)用攝像頭并截圖保存功能-創(chuàng)新互聯(lián)

今天就跟大家聊聊有關(guān)怎么在Python中使用OpenCV 調(diào)用攝像頭并截圖保存功能,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

在磁縣等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供做網(wǎng)站、成都網(wǎng)站設(shè)計 網(wǎng)站設(shè)計制作定制開發(fā),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),全網(wǎng)整合營銷推廣,成都外貿(mào)網(wǎng)站建設(shè)公司,磁縣網(wǎng)站建設(shè)費用合理。

0x01 OpenCV安裝

 通過命令pip install opencv-python 安裝

pip install opencv-python

0x02  示例

import cv2
cap = cv2.VideoCapture(0)    #打開攝像頭
while(1):
  # get a frame
  ret, frame = cap.read()
  # show a frame
  cv2.imshow("capture", frame)   #生成攝像頭窗口
  if cv2.waitKey(1) & 0xFF == ord('q'):  #如果按下q 就截圖保存并退出
    cv2.imwrite("D:/test.png", frame)  #保存路徑
    break
cap.release()
cv2.destroyAllWindows()

ps:下面看下python 調(diào)用麥克風;攝像頭;截屏;

# -*- coding: utf-8 -*-
"""
Created on Mon Jun 24 14:47:35 2019
@author: erio
"""
from PIL import Image,ImageGrab
import cv2
import pyaudio
import wave
'''
#錄音
input_filename = "record.wav"             # 麥克風采集的語音輸入
input_filepath = "E:"       # 輸入文件的path
in_pathrec = input_filepath + input_filename     #通俗解釋就是wav文件路徑
def get_audio(filepath):
    CHUNK = 256         #定義數(shù)據(jù)流塊
    FORMAT = pyaudio.paInt16  #量化位數(shù)(音量級劃分)
    CHANNELS = 1        # 聲道數(shù);聲道數(shù):可以是單聲道或者是雙聲道
    RATE = 8000        # 采樣率;采樣率:一秒內(nèi)對聲音信號的采集次數(shù),常用的有8kHz, 16kHz, 32kHz, 48kHz, 11.025kHz, 22.05kHz, 44.1kHz
    RECORD_SECONDS = 10     #錄音秒數(shù)
    WAVE_OUTPUT_FILENAME = filepath   #wav文件路徑
    p = pyaudio.PyAudio()        #實例化
    stream = p.open(format=FORMAT,
            channels=CHANNELS,
            rate=RATE,
            input=True,
            frames_per_buffer=CHUNK)
    # print("*"*10, "開始錄音:請在5秒內(nèi)輸入語音")
    frames = []                         #定義一個列表
    for i in range(0, int(RATE / CHUNK * RECORD_SECONDS)):   #循環(huán),采樣率11025 / 256 * 5
      data = stream.read(CHUNK)                #讀取chunk個字節(jié) 保存到data中
      frames.append(data)                   #向列表frames中添加數(shù)據(jù)data
   # print(frames)
   # print("*" * 10, "錄音結(jié)束\n")
    stream.stop_stream()
    stream.close()     #關(guān)閉
    p.terminate()      #終結(jié)
    wf = wave.open(WAVE_OUTPUT_FILENAME, 'wb')         #打開wav文件創(chuàng)建一個音頻對象wf,開始寫WAV文件
    wf.setnchannels(CHANNELS)                  #配置聲道數(shù)
    wf.setsampwidth(p.get_sample_size(FORMAT))         #配置量化位數(shù)
    wf.setframerate(RATE)                    #配置采樣率
    wf.writeframes(b''.join(frames))              #轉(zhuǎn)換為二進制數(shù)據(jù)寫入文件
    wf.close()       #關(guān)閉
get_audio(in_pathrec)
'''
#截屏
input_filenamescr = "screen.jpg"             
input_filepath = "E:"     
in_pathscr = input_filepath + input_filenamescr   
def get_screen(filepath):
  img = ImageGrab.grab()
  img.save(filepath)
get_screen(in_pathscr)
'''
#拍照
input_filenamecam = "camera.jpg"             
input_filepath = "E:"     
in_pathcam = input_filepath + input_filenamecam  
def get_camera(filepath):
  cap=cv2.VideoCapture(0)
  ret,frame = cap.read()
  i=0;
  cv2.imwrite(filepath,frame)
  cap.release()
  cv2.destroyAllWindows()
get_camera(in_pathcam)
'''
'''
#錄制視頻
cap = cv2.VideoCapture(0)#創(chuàng)建一個 VideoCapture 對象
flag = 1 #設(shè)置一個標志,用來輸出視頻信息
num = 1 #遞增,用來保存文件名
while(cap.isOpened()):#循環(huán)讀取每一幀
  ret_flag, Vshow = cap.read() #返回兩個參數(shù),第一個是bool是否正常打開,第二個是照片數(shù)組,如果只設(shè)置一個則變成一個tumple包含bool和圖片
  cv2.imshow("Capture_Test",Vshow) #窗口顯示,顯示名為 Capture_Test
  k = cv2.waitKey(1) & 0xFF #每幀數(shù)據(jù)延時 1ms,延時不能為 0,否則讀取的結(jié)果會是靜態(tài)幀
  if k == ord('s'): #若檢測到按鍵 ‘s',打印字符串
    cv2.imwrite("D:/pycharmthings/IMF/getpics/"+ str(num) + ".jpg", Vshow)
    print(cap.get(3)); #得到長寬
    print(cap.get(4));
    print("success to save"+str(num)+".jpg")
    print("-------------------------")
    num += 1
  elif k == ord('q'): #若檢測到按鍵 ‘q',退出
    break
cap.release() #釋放攝像頭
cv2.destroyAllWindows()#刪除建立的全部窗口
'''

看完上述內(nèi)容,你們對怎么在Python中使用OpenCV 調(diào)用攝像頭并截圖保存功能有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司行業(yè)資訊頻道,感謝大家的支持。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

新聞標題:怎么在Python中使用OpenCV調(diào)用攝像頭并截圖保存功能-創(chuàng)新互聯(lián)
當前網(wǎng)址:http://www.muchs.cn/article4/dhcsie.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、服務(wù)器托管、網(wǎng)站制作、營銷型網(wǎng)站建設(shè)、電子商務(wù)品牌網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護公司