Appearance
Data Analysis
This guide is for developers and explains the Data Analysis feature of the EO Platform. This module allows users to initiate asynchronous tasks on data cataloged in "Metadata" to extract target features (such as buildings, roads, vegetation, etc.) using specified algorithms and analysis areas (AOI), and to visualize the analysis results on a map.
1. Prerequisites
Before you begin the integration, please ensure that the following environment is ready:
- Account Permissions: You need access and operational rights for the "Manual Analysis Task" module.
- Input Data: Ensure that the imagery or data to be analyzed has been cataloged and published in "Metadata Management".
- Running Services: Make sure the following services are up and can reach each other:
data_management_service(Java) is deployed and connected to PostgreSQL.ai_task_server: receives analysis task creation requests and orchestrates downstream workloads.neu-gis-task-server: manages task queues and synchronizes execution status.neu-gis-data-server: acts as the central orchestrator for computation and publishing stages.satellite_analysis_server: handles image pre-processing (splitting, resampling, radiometric adjustments) and post-processing (merging, smoothing, attribute enrichment).modelinference services: run the core algorithms (e.g., building/road extraction).image-processing-server: produces tiles, pyramids, and other publishable assets.geoserver: loads outputs and exposes them as map services.geo-tile-server&geo_cog_server: serve tiles/COG assets to accelerate frontend rendering.
2. Core Workflow
Data analysis is an asynchronous process, with the core workflow being "Create Task → Poll Status → View Results".
2.1 Create an Analysis Task (Add Task)
- Navigate to the Manual Analysis Task page from the left-side navigation bar.
- Click the Add Task button in the upper-right corner of the page to go to the task creation page.
- Define your area of interest (AOI) on the map by drawing a rectangle.
- Fill in the task parameters in the form on the right:
| Field | Required | Description |
|---|---|---|
| Algorithm | Yes | Select the analysis algorithm to be executed, e.g., "Building" for building extraction. |
| Task Name | Yes | Name this analysis task for easy identification later. |
| Select Metadata | Yes | Select one or more published metadata items as the input data for this analysis. |
- Click Save to call
POST /analysis/task/create. The system will then start executing the asynchronous analysis task in the background.
2.2 View the Task List
- After creating a task, the page will automatically redirect back to the All Tasks list.
- Here you can see the name, type, status (e.g.,
Complete,In Progress), and creator of all historical tasks. - The task status will refresh periodically until the task is completed or fails.
- The list data is provided by
POST /analysis/task/page/query.
2.3 View the Analysis Results (Analysis Result)
- When the task status changes to
Complete, click on the task name to go to the details page. - The left side of the details page will display the Feature Classification extracted from this analysis, as well as the Count and total Area for each classification.
- The map window on the right will visualize the analysis results (e.g., extracted building outlines) overlaid on the original image.
- Imagery rendering uses
ge3d renderingfor visualization. - The details page data is provided by
GET /analysis/task/query/detailV2.
2.4 Backend Processing Pipeline
Once an analysis task is submitted, the backend services collaborate in a fixed sequence:
data_management_service→ai_task_server: create the analysis task and persist metadata.ai_task_server→neu-gis-task-server→neu-gis-data-server: validate input parameters, image availability, and spatial extent before the task is enqueued.ai_task_server→satellite_analysis_server(Preprocess): split large imagery into manageable tiles, resample, and adjust radiometry for model input.ai_task_server→model(Process): run the core algorithm inference to produce vector or raster outputs such as buildings, roads, etc.ai_task_server→satellite_analysis_server(Postprocess): merge tiles, smooth geometries, and enrich attributes to prepare publishable products.ai_task_server→neu-gis-task-server→neu-gis-data-server→image-processing-server→geoserver: publish the analysis results (e.g., SHP) as standard map services and return the service URL.- Display pipeline: frontend requests pass through
geo-tile-serverandgeo_cog_serverto deliver tiles/COG assets, ultimately reachinggeoserverfor rendering.
3. API Quick Index
| Capability | API | Description |
|---|---|---|
| Create Analysis Task | POST /analysis/task/create | Submits a new asynchronous analysis task. |
| Query Task Details | GET /analysis/task/query/detailV2 | Retrieves the detailed status and analysis results of a single task. |
| Paginated Task Query | POST /analysis/task/page/query | Retrieves a list of historical analysis tasks, with support for pagination. |
| Delete Analysis Task | DELETE /analysis/task/delete | Deletes a specified analysis task. |
4. Debugging and Troubleshooting
- Task Stuck in "In Progress" for a Long Time: Please check if the backend algorithm service is running correctly and if there is a blockage in the task queue.
- Task Failed: Go to the task details page to view the specific error message. Common reasons include unsupported input data format, an excessively large AOI, or an error in the algorithm itself.
- Results Not Displaying: Confirm that the task status is
Complete. If it is complete but there are no results, please check if the data returned byGET /analysis/task/query/detailV2contains valid geographic coordinate information. - API 401/403: Check the Token in the
Authorizationrequest header and confirm that the account has permission to initiate analysis tasks.