OpenCV调用摄像头

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

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容