OpenCV調用攝像頭
環境
python:python3.6
攝像頭:網絡攝像頭
Python庫:openCV
# -*- coding: utf-8 -*-
# @author leone
# @desc 使用 python 的 openCV 獲取網絡攝像頭的數據
# @version 2018-12-23
import cv2
import sys
# 根據攝像頭設置IP及rtsp端口
url = 'rtsp://account:password@192.168.0.35:554/11'
# 讀取視頻流
cap = cv2.VideoCapture(url)
# 設置視頻參數
cap.set(3, 480)
print(cap.isOpened())
print(sys.version)
print(cv2.__version__)
while cap.isOpened():
ret_flag, img_camera = cap.read()
cv2.imshow("camera", img_camera)
# 每幀數據延時 1ms, 延時為0, 讀取的是靜態幀
k = cv2.waitKey(1)
if k == ord('s'):
cv2.imwrite("test.jpg", img_camera)
if k == ord('q'):
break
# 釋放所有攝像頭
cap.release()
# 刪除窗口
cv2.destroyAllWindows()
由于網絡攝像頭的RTSP:實時流協議要手動開啟,進入你的攝像頭管理界面,例如:192.168.0.35 找到設置->網絡設置->RTSP設置->開啟RTSP開關 最好保存設置,并重啟攝像頭。
另外附上基于python的人臉識別demo支持多張人臉github