使用ONVIF操纵大华摄像头
使用1台大华网络相机,DH-IPC-HFW3237M-I2,6毫米镜头,2百万像素,但是网口是百兆的。
大华的SDK感觉好难用。
写完了data matrix识别的0.1版本后,进行相机部分改进。
老规矩,先用python快速原型。
会出现一个错误:
ONVIFError: Unknown error: Wsse authorized time check failed.
修改相机设置:
python代码如下:
from onvif import ONVIFCamera
# 连接到ONVIF设备
def connect_onvif(ip, port, user, passwd):
camera = ONVIFCamera(ip, port, user, passwd)
return camera
# 获取设备信息
def get_device_info(camera):
info = camera.devicemgmt.GetDeviceInformation()
return {
'Manufacturer': info.Manufacturer,
'Model': info.Model,
'FirmwareVersion': info.FirmwareVersion,
'SerialNumber': info.SerialNumber,
'HardwareId': info.HardwareId
}
if __name__ == '__main__':
# 替换成您的设备信息
camera_ip = '192.168.1.109'
camera_port = 80
username = 'abc'
password = 'qaz123456'
device_camera = connect_onvif(camera_ip, camera_port, username, password)
device_info = get_device_info(device_camera)
print("Device Information:")
for key, value in device_info.items():
print(f"{key}: {value}")
得到相机信息: