ptz.py 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. """
  2. PTZ控制配置
  3. """
  4. # PTZ控制配置
  5. PTZ_CONFIG = {
  6. 'default_zoom': 4, # 默认变焦倍数(降低以避免人体超出画面)
  7. 'max_zoom': 20, # 最大变焦倍数
  8. 'move_speed': 4, # 移动速度 (1-8)
  9. 'coordinate_offset': (0, 0), # 坐标偏移校准
  10. # 视野角度配置 (根据实际摄像头参数设置)
  11. 'pan_range': (0, 180), # 水平视野范围 (度) - 全景相机通常覆盖180度
  12. 'tilt_range': (-45, 45), # 垂直视野范围 (度) - 垂直方向覆盖角度
  13. 'pan_center': 90, # 水平中心角度 (画面中心对应的PTZ角度)
  14. 'tilt_center': 0, # 垂直中心角度
  15. # 球机安装方向配置
  16. # mount_type: 'ceiling' - 吸顶/吊装(镜头朝上), 'wall' - 壁装/立杆(镜头朝下)
  17. # 吸顶安装时,俯仰角(tilt)方向与壁装相反,需要反转tilt计算
  18. 'mount_type': 'ceiling', # 'ceiling' 或 'wall'
  19. # 方向修正(根据mount_type自动设置,也可手动覆盖)
  20. # pan_flip: 如果球机与全景朝向相反(球机看后面),设为True
  21. # tilt_flip: 如果俯仰方向相反,设为True(吸顶安装通常需要True)
  22. 'pan_flip': True,
  23. 'tilt_flip': False, # 由 mount_type='ceiling' 时自动生效
  24. # 球机端人体检测与自动对焦配置
  25. 'enable_ptz_detection': True, # 是否启用球机端人体检测
  26. 'auto_zoom': {
  27. 'enabled': True, # 是否启用自动变焦
  28. 'target_size_ratio': 0.3, # 目标人体占画面比例(降低以适应更大视野)
  29. 'min_zoom': 2, # 最小变倍(降低以获得更大视野)
  30. 'max_zoom': 15, # 最大变倍
  31. 'zoom_step': 2, # 变焦调整步长
  32. 'center_threshold': 0.1, # 居中阈值 (人体中心偏离画面中心的比例)
  33. 'max_adjust_attempts': 5, # 最大调整次数(增加以提高精度)
  34. },
  35. }