一、PTZ的基本概念
PTZ,又称云台摄像机,是已经发展成为摄像机的一个重要方向。通常情况下,一个摄像机只能固定拍摄一个区域,而PTZ摄像机能够实现摄像头控制器远程指令、手动控制、自动巡航等多种功能,有效避免了死角的存在。一个PTZ摄像机通常是由云台控制器,云台下挂摄像机,传感器等诸多组件构成。
二、PTZ的控制方式
1、手动控制
手动控制PTZ摄像机的方向需要通过云台摄像机控制器上的按键(或几个方向按钮)实现。PTZ控制器通过控制云台相机的转弯和俯仰角度,来达到想要的拍摄目标。手动控制方式直观易懂,但是如需在大面积区域内进行实时控制是不便捷的。
2、自动巡航
自动巡航模式下,PTZ控制器会定时更改控制内容——例如相机转动方向和摆放角度,以类似日出日落的方式对一个区域进行全方位监控。由于自动巡航是根据需要固定好的模式运行,因此任何不在预设情况之中的东西都将被忽略。
3、遥控控制
有些PTZ摄像头配备便携式遥控器,以便用户能够随时遥控控制。遥控器通常被定义为一个八向控制摇杆,摇杆的广度决定了控制摄像头的灵活程度,可以快速掌控相机的方向。
三、PTZ的常见控制协议
PTZ控制协议是如何使云台控制器与PTZ摄像头进行通信的一套信息规范。大部分云台控制器都默认支持多种控制协议,因此,你可以自由选择。
1、VISCA
VISCA是Sony公司设定的一种RS-232C/RS-422串行通讯协议。在这个协议中,PTZ控制器的输出从主机开始,最终输出到相机。VISCA协议是最常见的PTZ控制协议,被许多PTZ摄像头生产商广泛支持。
/*VISCA控制协议详细的代码示例*/ void visca_zoom_in(int camera_address) { // 发送指令控制摄像头变焦 // camera_address 可由控制协议传输指定 } void visca_rotate_up(int camera_address) { // 发送指令控制摄像头向上旋转 // camera_address 可由控制协议传输指定 }
2、Pelco-D
Pelco-D是Pelco公司设定的一套以串口传输的二进制控制协议。它在功能上比VISCA少一些,但速度和可靠性大大提高,被广泛应用于工业控制领域。
/*Pelco-D控制协议详细的代码示例*/ void pelco_zoom_out(int camera_address) { // 发送指令控制摄像头缩小光圈 // camera_address 可由控制协议传输指定 } void pelco_rotate_left(int camera_address) { // 发送指令控制摄像头向左旋转 // camera_address 可由控制协议传输指定 }
四、PTZ与视频会议配合
在视频会议环境中呈现出来最佳利用场景或性能诊断,需要了解和掌握视频会议的基本达到条件,首先要掌握控制设备,掌握PTZ的控制技巧以及如何配合视频会议的场景内容进行控制。
1、云台控制器与视频会议软件的配合
云台控制器的兼容性非常强大,能与很多视频会议软件成功配对。例如,在Skype、Zoom等流行视频会议软件中,只需打开设备管理器,选择设备并限时控制即可。这些软件中的设置通常只需要配置相机方向、焦距等参数。
2、自定义控制脚本
如果标准控制脚本不能满足需求时,可以自己动手编写脚本进行控制。例如,为了在视频会议过程中更好地掌握整个环境,你可以编写代码控制相机自动巡航。还可以编写代码让相机定期拍摄图片,并保存到指定目录,方便查看以及后续分析。
/*自定义控制脚本的代码示例*/ // 定时截图 void take_screenshot(int interval) { while (true) { capture_image(); save_to_directory(); delay(interval); } } // 自动巡航 void auto_ptz_control() { while (true) { rotate_left(); delay(5000); rotate_right(); delay(5000); rotate_up(); delay(5000); rotate_down(); delay(5000); } }
五、总结
PTZ控制是一个十分重要的摄像机控制方式,具有广泛的应用场景。本文对PTZ的基本概念、控制方式、常见控制协议以及与视频会议的配合等方面进行了详细的阐述。掌握了这些知识,可以更好地应对不同的场景,为实际实现创造出增值效果。