用python控制海康摄像头

任务:用脚本控制海康摄像头抓拍。

这个任务其实很简单,代码也就几行。但是对于没有接触过网络摄像头技术的小白来说,可能会不知从何下手。这里简单介绍一下原理,并提供参考代码。

现在的网络摄像头基本都提供了RTSP服务。 这个服务就是我们用python脚本控制镜头的抓手。

RTSP默认端口是554

什么是RTSP服务呢? 一句话来概括,RTSP给我们提供了一个遥控器,用来远程操控镜头的视频流。

所以,开头那个任务就变成了“如何用python脚本控制遥控器”。

怎么控制呢?一个办法利用openCV库,下面是一个简单的demo。

# 这个代码注意点 设置好正确的用户名、密码、ip、端口,端口默认为554,
import cv2


#用户名
username = "用户名"
#密码
password = "密码"
#摄像头ip
ip = "192.168.100.100"
#端口
port = "554" 
cap = cv2.VideoCapture("rtsp://" + username + ":" + password+ "@" + ip  + ":" + port + "/Streaming/Channels/1")
# 摄像头是否处于打开状态可以通过isOpened()方法进行判断
isOpened = cap.isOpened()
if isOpened :
  #  可以通过read() 方法读取图像
  ret, frame = cap.read()
  #再代码目录下生成tmp.jpg图片文件
  cv2.imwrite("tmp.jpg", frame)
cap.release()
print('完成抓拍')

你可能感兴趣的:(用python控制海康摄像头)