使用手机摄像头做网络ip摄像头 并用opencv获取rtsp视频流

目录

  • 前言
  • 准备工作
  • DroidCam使用方法
  • IP摄像头使用方法
  • 使用opencv调用摄像头

前言

最近要做一个和图像有关的项目,需要获取热成像摄像头的输入进行处理,最终调研找到了一款网络摄像机。苦于没有网络摄像机的使用经验,怕到时候花了几千大洋买的摄像机不能用,便想先验证一下opencv是否可以获取网络摄像机的实时视频流,就用半天多时间做了这个测试。

准备工作

  1. 带摄像头的安卓手机一部
  2. 电脑一台
  3. 电脑上需要有浏览器
  4. app软件:DroidCam或IP摄像头
  5. 为了验证可以用opencv获取视频数据,电脑上需要安装python+opencv(或其他版本的也可以,我用的python,不需要用opencv获取图像的同学可以忽略这一条)

DroidCam使用方法

  1. 安装软件(废话,不安装咋用?)

  2. 打开软件
    使用手机摄像头做网络ip摄像头 并用opencv获取rtsp视频流_第1张图片

  3. 打开手机wifi,连接路由器,使手机和电脑处于同一个局域网
    使用手机摄像头做网络ip摄像头 并用opencv获取rtsp视频流_第2张图片

  4. 在电脑上打开浏览器,输入3中屏幕上显示的ip地址
    使用手机摄像头做网络ip摄像头 并用opencv获取rtsp视频流_第3张图片

  5. 完活!
    使用手机摄像头做网络ip摄像头 并用opencv获取rtsp视频流_第4张图片

IP摄像头使用方法

  1. 安装软件

  2. 打开软件
    使用手机摄像头做网络ip摄像头 并用opencv获取rtsp视频流_第5张图片

  3. 打开手机wifi,连接路由器,使手机和电脑处于同一个局域网下,点击下方的“打开IP摄像头服务器"
    使用手机摄像头做网络ip摄像头 并用opencv获取rtsp视频流_第6张图片
    4.在电脑上打开浏览器,输入3中屏幕上显示的ip地址
    使用手机摄像头做网络ip摄像头 并用opencv获取rtsp视频流_第7张图片

  4. 完活!
    使用手机摄像头做网络ip摄像头 并用opencv获取rtsp视频流_第8张图片

使用opencv调用摄像头

DroidCam会报错,这里使用ip摄像头
先贴代码

import cv2

url = 'rtsp://admin:[email protected]:8554/live'  
cap = cv2.VideoCapture(url)

while(cap.isOpened()):
    # Capture frame-by-frame  
    ret, frame = cap.read()
    # Display the resulting frame  
    cv2.imshow('frame',frame)
    
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break
# When everything done, release the capture  
cap.release()
cv2.destroyAllWindows()

代码来源:用OpenCV调用IP摄像头(python版)

  1. 打开IP摄像头,记得在rtsp那里打勾✔
    使用手机摄像头做网络ip摄像头 并用opencv获取rtsp视频流_第9张图片
  2. 把代码里的ip改成自己的,用户名和密码自己在app的设置里面改
  3. 用python运行代码可以得到如下结果:

使用手机摄像头做网络ip摄像头 并用opencv获取rtsp视频流_第10张图片

参考链接:
[1] 用OpenCV调用IP摄像头(python版)
[2] python+opencv调用ip摄像头(基于RTSP实现)
[3] 各品牌网络监控摄像头RTSP地址查询

你可能感兴趣的:(使用手机摄像头做网络ip摄像头 并用opencv获取rtsp视频流)