云台控制

摄像头云台的控制和图像采集功能。

云台控制

获取云台状态

get_ptzf(timeout=5)

Get current Pan-Tilt-Zoom-Focus values.

Parameters:

timeout (int) – Timeout in seconds (default: 5)

Return type:

GetCurrentPTZFResponse

Returns:

GetPTZFServiceResponse.

Examples:

response = get_ptzf()
if response.state.code == 0:
    print(f"Pan: {response.response.pan}")
    print(f"Tilt: {response.response.tilt}")

设置云台角度

set_ptzf(pan=0.0, tilt=0.0, zoom=1.0, focus=0, relative=False, timeout=30)

Set Pan-Tilt-Zoom-Focus values for camera control.

Parameters:
  • pan (float) – Pan angle in degrees (default: 0.0)

  • tilt (float) – Tilt angle in degrees (default: 0.0)

  • zoom (float) – Zoom value (default: 1.0)

  • focus (int) – Focus value (default: 0)

  • relative (bool) – If True, values are relative to current position; if False, absolute (default: False)

  • timeout (int) – Timeout in seconds (default: 30)

Return type:

SetPTZFServiceResponse

Returns:

SetPTZFServiceResponse.

Examples:

# Absolute positioning
set_ptzf(pan=45.0, tilt=-30.0, zoom=2.0)

# Relative movement
set_ptzf(pan=10.0, tilt=5.0, relative=True)

图像采集

拍摄图片

capture_image(image_name, type='rgb', timeout=5)

Capture an image from the camera.

Parameters:

image_name (str) – Name for the captured image (required)

1 type(str): Image type - “rgb”, “infra” (default: “rgb”)

timeout(int): Timeout in seconds (default: 5)

Return type:

CaptureImageResponse

Returns:

CaptureImageResponse.

Note: Images are saved to /root/data/daystar_api/images/

Examples:

# Capture RGB image
response = capture_image("photo_001")
if response.response.success:
    print(f"Image captured: {response.response.message}")

# Capture depth image
capture_image("depth_001", type="depth")
Parameters:
  • type (str) –

  • timeout (int) –

获取已保存图片

get_available_images(timeout=5)

Get list of all captured images.

Parameters:

timeout (int) – Timeout in seconds (default: 5)

Return type:

GetAvailableImagesResponse

Returns:

GetAvailableImagesResponse.

Note: Images are stored in /root/data/daystar_api/images/

Examples:

response = get_available_images()
if response.response.success:
    for img_name in response.response.image_names:
        print(f"Image: {img_name}")