局域网内获取WIFI摄像头画面

硬件平台

  • 海康威视萤石 C6H 网络摄像头 (具体型号 CS-C6H-3B1WFR-Cup)。
  • 计算机(Ubuntu16.04)。

连接方式

摄像头,计算机均通过无线方式连接同一个路由器。计算机通过局域网获取摄像头数据。

实现方法

RTSP (Real Time Streaming Protocol)

海康 RTSP Url 格式:

1
rtsp://username:password@<address>:<port>/Streaming/Channels/<id>(?parm1=value1&parm2-=value2…)

最后的参数还不清楚,没有查到比较全的文档。

参考:

海康RTSP格式

摄像头的具体参数查看方法:

  • 海康威视萤石 C6H 配套的APP - 萤石云视频 可以查看username, address, port(网上有人说 Hikvision Tools 中的SADP软件可以扫描局域网中的摄像头,获取IP等信息,没有进行实验)。

    APP中的操作:

    1
    我的 -> 工具 -> 局域网设备预览 -> 开始扫描
  • password可以在摄像头的底部标签贴纸上查看。

读取代码

实验中,发现按照上面说的格式,给出 port 会导致读取失败,去掉 port 参数就能读取成功,代码如下。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import cv2

rtsp_url = "rtsp://admin:xxxxx@192.168.x.x/Streaming/Channels/1"

cap = cv2.VideoCapture(rtsp_url)

while True:
ret,frame = cap.read()

# frame=cv2.flip(frame,0)

cv2.imshow("Camera", frame)

k = cv2.waitKey(10) & 0xff
if k == ord('q'):
break

效果图:


----------over----------


文章标题:局域网内获取WIFI摄像头画面

文章作者:Ge垚

发布时间:2019年04月28日 - 13:04

最后更新:2019年06月22日 - 17:06

原始链接:http://geyao1995.com/WIFI_Camera/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。