Skip to content
  • API documentation
Introduction
Introduction
Foundational Pillars
Get started with the API
HTTP methods
HTTP Status Codes
Pagination
Common annotation workflow
Taxonomy
Overview
GET Taxonomy
POST Insert taxonomy node
Asset
Overview
POST Direct picture element upload
POST Create Picture asset
Annotation
Overview
POST Create annotation on asset
API documentation
/
Annotation

Annotation

Overview

Everything Platform’s core capability is to analyze assets, such as images, and automatically generate annotations based on the detected concept instances.

An annotation represents structured information describing detected instances within an asset and associating them with the platform’s taxonomy concepts.

These annotations are used to describe and enrich the asset with relevant information, including the relationships between the instances and the corresponding concepts defined in the taxonomy.

 

An annotation object may be of different types:

  • Annotation finding: Represents the list of detected instances, including spatial coordinates and confidence scores. Each detected instance is actually an asset in the platform of type SubPicture.
  • Annotation taxonomy: Represents the link between the SubPicture assets and the Taxonomy nodes
POST Create annotation on asset
POST api/annotation/v1/annotate-asset

Annotate Asset
This endpoint allows you to automatically annotate an asset by providing the asset ID and optionally taxonomy IDs to limit the scope of the annotation.
Request

  • Method: POST
  • Endpoint: api/annotation/v1/annotate-asset
  • Body:
    • asset_id (string, required): The ID of the asset to be annotated.
    • taxonomy_ids (array of strings, optional): The taxonomy IDs to limit the annotation scope.

Response
The response for this request is a list of Annotation objects.
In the common scenario of automatically annotating a picture, the response contains:

  • One Annotation object of type AnnotationFinding, it contains a list of SubPicture Assets which are the detected instances in the source image
  • Many Annotation objects of type AnnotationTaxonomy, to assign the concepts found to the detected instances.
Request Headers
accessToken<Acces Token>

Body

{
    "asset_id": "00000000-0000-4000-8000-000000000000",
    "taxonomy_ids": [
        "00000000-0000-4000-8000-000000000000",
        "00000000-0000-4000-8000-000000000000",
        "00000000-0000-4000-8000-000000000000",
        "00000000-0000-4000-8000-000000000000"
    ]
}

Example

Consider an asset representing an image of a black night sky with the moon visible.

The automatic annotation is initiated with the following API call, specifying the subset of the taxonomy concepts to look for in the source image

curl --location 'external/annotation/v1/annotate-asset' \
--header 'accessToken: ' \
--header 'Content-Type: application/json' \
--data '{
    "asset_id": "a3599729-e0ab-4323-8edb-7da2e4f487ea",
    "taxonomy_ids": [
        "00000000-0000-1000-8000-000000000000", // "Celestial Body"
        "00000000-0000-4000-8000-000000000000", // "Moon"
        "00000000-0000-5000-8000-000000000000", // "Star"
        "00000000-0000-6000-8000-000000000000", // "Sun"
        "00000000-0000-7000-8000-000000000000"  // "Comet"
    ]
}'

When this image is processed by the Everything Platform, the following annotations might be generated:

{
    "annotations": [
        {
            "annotation_id": "6f747cfc-a93f-4e6d-8dd0-08f1830a6df3",
            "asset_id": "a3599729-e0ab-4323-8edb-7da2e4f487ea",
            "annotation_type": "annotation_finding",
            "findings": [
                {
                    "id": "49b1bbda-1c84-42b8-b3b5-6a87946d4428",
                    "element_id": "afca7710-a868-49d3-970d-c8f517b38c7d",
                    "xc": 0.5,
                    "yc": 0.5,
                    "minSide": 0.2,
                    "maxSide": 0.4,
                    "theta": 0.61,
                    "confidence": 0.99
                }
            ]
        },
        {
            "annotation_id": "d4816397-9462-44c7-b0cc-ea7b7f36af50",
            "asset_id": "49b1bbda-1c84-42b8-b3b5-6a87946d4428",
            "annotation_type": "annotation_taxonomy",
            "taxonomy_node_ids": [
                "00000000-0000-1000-8000-000000000000", "Celestial Body"
                "00000000-0000-4000-8000-000000000000"  "Moon"
                ]
        }
    ]
}

To visually interpret the results generated by the Platform, the output can be understood as follows:

  • Finding Instance: The annotation includes the spatial coordinates (bounding box) of the moon, indicating its location, rotation and dimensions within the image. This allows the detected instance (the moon) to be visually mapped back to the original image.
  • Annotation taxonomy: It associates the taxonomy nodes of Celestial Body and Moon to the related asset

Last updated on
September 11, 2024.