Python 读取网络摄像头(IP Camera)

代码如下:

复制代码
import cv2

# cv2.namedWindow("camera", 1)
# 开启ip摄像头
video = "http://admin:admin@172.29.3.72:8081/"  # 此处@后的ipv4 地址需要改为app提供的地址
cap = cv2.VideoCapture(video)
#   开摄像头
while True:
    # Start Camera, while true, camera will runq

    ret, image_np = cap.read()

    # Set height and width of webcamq
    height = 600
    width = 1000

    # Set camera resolution and create a break function by pressing 'q'
    cv2.imshow('object detection', image_np)  # cv2.resize(image_np, (width, height)))
    if cv2.waitKey(25) & 0xFF == ord('q'):
        cap.release()
        cv2.destroyAllWindows()
        break

#    print(cap.get(cv2.cv2.CAP_PROP_FRAME_COUNT))

# Clean up
cap.release()
cv2.destroyAllWindows()

# 保存文件

fps = 30

size = (int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)), int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)))

# 调用VideoWrite()函数
videoWrite = cv2.VideoWriter('MySaveVideo.avi', cv2.VideoWriter_fourcc('I', '4', '2', '0'), fps, size)

# 先获取一帧,用来判断是否成功调用摄像头
success, frame = cap.read()

# 通过设置帧数来设置时间,减一是因为上面已经获取过一帧了
numFrameRemainling = fps * 10 - 1

# 通过循环保存帧
while success and numFrameRemainling > 0:
    videoWrite.write(frame)
    success, frame = cap.read()
    numFrameRemainling -= 1

# 释放摄像头
cap.release()
复制代码

 

posted @   小白啊小白,Fighting  阅读(877)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
历史上的今天:
2021-09-01 CDH6.3.1 命令路径
2021-09-01 Clickhouse bitmap使用
点击右上角即可分享
微信分享提示