Target Recognition
Interface Changes
✓ available, — not available. Interfaces not listed are identical on EVO Nest and Autel Nest2.
| Method | Function | EVO Nest | Autel Nest2 | Notes |
|---|---|---|---|---|
AI_security_set | AI Arming Settings | — | ✓ | |
area_search | Area Search | — | ✓ | |
start_track | Start Tracking | — | ✓ | |
active_zoom_control | Target Lock Auto Zoom | — | ✓ | |
aiservice_illegal_data | AI Illegal Parking Data Service | ✓ | — |
Service
Target tracking flow: intelligent_lock_enter → select_tracking_target → start_track.
Enable Target Recognition
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: target_detect_open
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| ai_lens_type | Detection lens | int | 0: Visible light, 1: Infrared, 2: Night vision | Lens type used for AI recognition |
| scene_type | Current recognition scene | int | 0: General | Default value is 0 |
| target_type_list | List of selected detection types by the user; an empty list indicates recognition of all supported detection types in the current scene | list<int> | See definition of "Target recognition types" below | NULL is acceptable |
Example:
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: target_detect_open
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Is AI recognition enabled | int | 0: Success, Non-zero: Failure |
Disable Target Recognition
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: target_detect_close
Data:
Example:
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: target_detect_close
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Disable AI recognition operation result | int | 0: Success, Non-zero: Failure |
Enter Intelligent Tracking
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: intelligent_lock_enter
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| ai_lens_type | Detection lens | int | 0: Visible light, 1: Infrared, 2: Night vision | Default: 0 |
| scene_type | Current recognition scene | int | 0: General | Default: 0 |
| target_type_list | List of detection types selected by the user; an empty list indicates all supported detection types in the current scene | list<int> | See definition of "Target Types" below | NULL is allowed |
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: intelligent_lock_enter
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | 0: Success, Non-zero: Failure |
Exit Intelligent Tracking
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: intelligent_lock_exit
Data:
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: intelligent_lock_exit
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | 0: Success, Non-zero: Failure |
Select Locked Target Information
The tracking target function allows the aircraft to adjust its body to face the target, making that target point the center of the camera's view.
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: select_tracking_target
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| camera_id | Lens ID | int | 0: Visible light, 1: Infrared | Lens used for locking; if omitted, the lens selected when entering intelligent tracking is reused |
| tracker_id | Detection target ID | int | Target tracking ID | |
| start_x | Starting point x-coordinate | double | 0-1 | Starting X coordinate of the target bounding box |
| start_y | Starting point y-coordinate | double | 0-1 | Starting Y coordinate of the target bounding box |
| width | Width of the target bounding box | double | 0-1 | 0 indicates a click selection |
| height | Height of the target bounding box | double | 0-1 | 0 indicates a click selection |
Example:
{
"bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"data": {
"camera_id": 0,
"tracker_id": 6,
"start_x": 0.24,
"start_y": 0.64,
"width": 0.0,
"height": 0.0
},
"tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"timestamp": 1654070968655,
"method": "select_tracking_target"
}
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: select_tracking_target
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | Non-zero indicates an error |
Example:
{
"bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"data": {
"result": 0
},
"tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"timestamp": 1654070968655,
"method": "select_tracking_target"
}
Exit Target Lock
Exiting the target lock will continue target detection; the target will not stop being detected unless target recognition is turned off.
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: target_tracking_close
Data:
Example:
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: target_tracking_close
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Result of closing AI recognition operation | int | 0 for success; non-zero for failure |
Start Tracking
Sent after the target is locked by select_tracking_target; the aircraft must already be airborne. The six target box fields (camera_id, tracker_id, start_x, start_y, width, height) must all be provided or all omitted; when all are omitted, the locked target is tracked.
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: start_track
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| track_type | Tracking mode | int | 1: Simple tracking, 3: Orbit tracking | Required |
| camera_id | Lens ID | int | 0: Visible light, 1: Infrared | Lens used for tracking |
| tracker_id | Detection target ID | int | Target tracking ID | |
| start_x | Starting point x-coordinate | float | 0~1 | Starting X coordinate of the target bounding box |
| start_y | Starting point y-coordinate | float | 0~1 | Starting Y coordinate of the target bounding box |
| width | Width of the target bounding box | float | 0~1 | 0 indicates a point selection |
| height | Height of the target bounding box | float | 0~1 | 0 indicates a point selection |
| locked | Whether the relative position of the nose and gimbal is locked | bool | false: only the gimbal turns, the body does not turn; true: locks the nose, the gimbal and body turn together | Optional |
Example:
{
"bid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"data": {
"track_type": 3
},
"tid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx",
"timestamp": 1654070968655,
"method": "start_track"
}
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: start_track
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | 0: Success, Non-zero: Failure |
Target Lock Auto Zoom
Automatically adjusts the zoom ratio to keep the locked target at an appropriate size. The switch state is reported through the aircraft property active_zoom_control.
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: active_zoom_control
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| enable | Enable auto zoom | int | 0: Disable, 1: Enable | Required |
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: active_zoom_control
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | 0: Success, Non-zero: Failure |
Area Search
The aircraft flies along a route within the specified polygon area and recognizes targets.
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: area_search
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| target_point_list | Search area vertices | List<Object> | At least 3 points | Forms the search polygon |
| target_type | List of detection types | list<int> | See definition of "Target Types" below | Optional |
| is_continue | Continue search | int | 0: No, 1: Yes | Default: 0 |
| is_swing | Swing search | int | 0: No, 1: Yes | Default: 0 |
| flight_id | Task ID | string | Optional | |
| timeout_sec | Timeout | int | Unit: second, default: 600 |
target_point_list
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| latitude | Latitude | double | Unit: degree | |
| longitude | Longitude | double | Unit: degree | |
| altitude | Altitude | double | Unit: meter |
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: area_search
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | 0: Success, Non-zero: Failure |
Select Illegal Parking Target
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: select_illegal_parking_target
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| target_id | Target vehicle ID | string | Optional | |
| start_x | Starting point x-coordinate | float | 0-1 | Starting X coordinate of the target bounding box |
| start_y | Starting point y-coordinate | float | 0-1 | Starting Y coordinate of the target bounding box |
| width | Width of the bounding box | float | 0-1, must be greater than 0 | Required; the request fails when it is 0 |
| height | Height of the bounding box | float | 0-1, must be greater than 0 | Required; the request fails when it is 0 |
| vehicle_type | Vehicle type | int | Default: 0 | |
| license_plate | License plate number | string | Optional |
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: select_illegal_parking_target
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | 0: Success, Non-zero: Failure |
AI Arming Settings
Sets the lens, scene, target types and trigger action for security recognition.
Topic: thing/product/{gateway_sn}/services
Direction: down
Method: AI_security_set
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| enable | Enable security recognition | bool | 1/0 also accepted | Default: false |
| ai_lens_type | Detection lens | int | 0: Visible light, 1: Infrared, 2: Night vision | Default: 0 |
| scene_type | Recognition scene | int | 0: General, 1: Security, 2: Power grid inspection | Default: 0 |
| target_type_list | List of detection types | list<int> | See definition of "Target Types" below | An empty list indicates all types in the current scene |
| action | Trigger action | int | 0: Record and photo, 3: Photo only | Default: 0 |
| max_record_time | Maximum recording duration | int | 5-1800 | Unit: second, default: 60 |
| state | State | int | 1: Enabled | Default: 1 |
| enable_func | Function enablement | int | 1: Enabled | Default: 1 |
| actions | Action list | List<Object> | Pass-through field, optional | |
| propertys | Property list | List<Object> | Pass-through field, optional |
Topic: thing/product/{gateway_sn}/services_reply
Direction: up
Method: AI_security_set
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| result | Return code | int | 0: Success, Non-zero: Failure |
Event
Target Recognition Result Report (Deprecated)
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: target_detect_result_report
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| device_id | Device ID | int | Reporting device identifier | |
| timestamp | Timestamp | long | Detection timestamp, in milliseconds | |
| image_url | Detection frame image URL | string | URL of the detection frame image | |
| lens_id | Lens ID | int | 0: Visible light, 1: Infrared | Lens used for detection |
| objects | Detected target array | List<Object> | List of detected targets |
Object
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| type | Detected target type | int | See "Target Types" below | Target classification ID |
| confidence | Confidence | float | 0~1 | Detection confidence |
| x | Target X Coordinate | float | 0~1 | Proportion of the screen |
| y | Target Y Coordinate | float | 0~1 | Proportion of the screen |
| width | Target Width | float | 0~1 | Proportion of the screen |
| height | Target Height | float | 0~1 | Proportion of the screen |
Target Types
| Target Type ID | Target Name |
|---|---|
| 0 | Background(Not supported yet) |
| 1 | Animal(Not supported yet) |
| 2 | Boat |
| 3 | Car |
| 4 | Pedestrian |
| 5 | Cyclist |
| 6 | Large Vehicle |
| 34 | Drone |
| 35 | Smoke |
| 36 | Fire |
| 99 | No Target Detected |
AI Detection Shooting Result Report
This interface is deprecated. AI detection shooting results are reported through video stream SEI. For how to parse the SEI and for the field descriptions, see AI Target Recognition.
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: AI_detect_shoot_notify
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| even_id | Event ID | text | Unique identifier of the detection event | |
| file_id | File ID | text | File identifier | |
| path | Business path of the file | text | Business storage path of the file | |
| shooting_type | Shooting action type | int | Type of the shooting action | |
| ext | File extension content | struct | Extended information of the file | |
| »flight_id | Task ID | text | Unique identifier for the flight task | |
| »waypoint_id | Waypoint ID | text | Unique identifier for the waypoint | |
| »drone_model_key | Drone product enumeration value | text | Product enumeration value of the drone model | |
| »payload_model_key | Payload product enumeration value | text | Product enumeration value of the payload model | |
| »is_original | Is it the original image | int | 0: No, 1: Yes | Whether the image is the original |
| metadata | Media metadata | struct | Metadata of the media file | |
| »gimbal_yaw_degree | Gimbal yaw angle | float | Gimbal yaw angle in degrees | |
| »absolute_altitude | Absolute shooting height | float | Absolute altitude when shooting | |
| »relative_altitude | Relative shooting height | float | Relative altitude when shooting | |
| »create_time | Media shooting time | date | "format":"iso8601" | Creation time of the media file |
| »shoot_position | Shooting position | struct | Position when the photo was taken | |
| »»lat | Shooting position latitude | double | Latitude of the shooting position | |
| »»lng | Shooting position longitude | double | Longitude of the shooting position | |
| obj_num | Number of detected targets in a frame | int | Total number of detected targets in the current frame | |
| obj_info | Detected target array | struct | Array of detected target information | |
| »tracker_id | Detected target ID | text | Unique tracking ID of the detected target | |
| »cls_id | Detected target type | int | See "Target Types" | Classification type of the detected target |
| »timestamp | Timestamp | long | Detection timestamp, in milliseconds | |
| »object_position | Target latitude and longitude | struct | Latitude and longitude of the target | |
| »»object_lat | Latitude | double | Latitude of the detected target | |
| »»object_lng | Longitude | double | Longitude of the detected target | |
| »»object_altitude | Altitude | double | Altitude of the detected target | |
| »bbox | Target detection box | struct | Bounding box of the detected target | |
| »»x | Target X coordinate on screen | float | X coordinate ratio on screen | |
| »»y | Target Y coordinate on screen | float | Y coordinate ratio on screen | |
| »»w | Target width on screen | float | Width ratio on screen | |
| »»h | Target height on screen | float | Height ratio on screen |
Evidence Collection Status Report
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: evidence_collection_status
Data:
This method has two message types; the cloud distinguishes them by the keys present in data.
Task progress
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| task_id | Task ID | string | Unique identifier for the task | |
| status | Task status | int | 0: Not started, 1: Collecting, 2: Completed, 3: Failed | Current task status |
| progress | Progress | int | 0~100 | Collection progress |
| photo_count | Photos taken | int | Number of photos already taken | |
| required_count | Photos required | int | Number of photos required | |
| target_plate | Target license plate | string | Target license plate number | |
| error_msg | Error message | string | Present on failure |
Single vehicle collection result
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| mission_name | Mission name | string | Name of the mission | |
| mission_id | Mission ID | int | Identifier of the mission | |
| work_mode | Work mode | int | Current work mode | |
| status | Collection status | int | 0: Success, Non-zero: Failure | Collection result |
| failure_reason | Failure reason | int | Reason code on failure | |
| vehicle_id | Vehicle ID | int | Identifier of the vehicle | |
| pos | Vehicle position | List<int> | Position coordinates of the vehicle | |
| car_color | Vehicle body color | int | Color of the vehicle body | |
| license_plate_color | License plate color | int | License plate type | |
| vehicle_num | Number of vehicles | int | Count of vehicles | |
| vehicle_brand | Vehicle brand | int | Brand of the vehicle | |
| is_driver_seat_occupied | Is driver seat occupied | int | 0: No, 1: Yes | Whether the driver seat is occupied |
| photo_path | Photo path list | List<string> | Storage paths of the captured photos |
Illegal Parking Detection Info Report
Topic: thing/product/{gateway_sn}/events
Direction: up
Method: ai_service_illegal_parking_info
Data:
| Column | Name | Type | constraint | Description |
|---|---|---|---|---|
| task_id | Task ID | text | Illegal parking detection task identifier | |
| plate_number | License plate number | text | ||
| plate_color | License plate color | text | ||
| vehicle_type | Vehicle type | text | ||
| vehicle_color | Vehicle color | text | ||
| latitude | Latitude | double | Latitude of the vehicle | |
| longitude | Longitude | double | Longitude of the vehicle | |
| address | Address | text | Address of the vehicle | |
| detect_time | Detection time | long | Detection timestamp, unit: milliseconds | |
| confidence | Confidence | double | 0~1 | Detection confidence |
| evidence_urls | Evidence image URLs | List<text> | List of evidence image URLs for this violation |