Recognition Version

Version object

Definition

A recognition version implements a specification: this is the link between a specification and a neural network.

AttributeTypeAttributesDescription

id

int

read-only

The ID of the recognition version.

spec_id

int

immutable

The ID of the parent recognition specification.

network_id

int

immutable

The ID of the neural network which will cary on the computation.

post_processings

immutable

The post-processing object that defines some network specific adjustments like the output tensor, some thresholds, etc. The length of this array must exactly match the length of the outputs field of the parent specification and the i-th post-processing will be matched to the i-th output.

spec_name

string

read-only

The name of the recognition specification corresponding to spec_id. This is convenient for display purposes.

network_name

string

read-only

The name of the neural network corresponding to network_id. This is convenient for display purposes.

update_date

string

read-only

Date time (ISO 8601 format) of the creation specification version.

Post-processing

The fields of this object are mutually exclusive: you must specify exactly one of them.

AttributeTypeDescription

classification

A post-processing of type classification for an output of type labels.

detection

A post-processing of type detection for an output of type labels.

Classification post-processing

AttributeTypeDescription

thresholds

array(float)

A list of threshold for each label of the recognition specification. The label will be considered present if its score is greater than the threshold. The length of this array must exactly match the length of the labels field of the parent labels specification and the i-th threshold will be matched to the i-th label.

Detection post-processing

You must specify exactly one of the anchored_output, direct_output or yolo_output fields. When we specify an expected tensor size in the description of those fields, we omit the first dimension of the tensor (i.e. the batch size).

AttributeTypeDescription

thresholds

array(float)

A list of threshold for each label of the recognition specification. The label will be considered present if its score is greater than the threshold. The length of this array must exactly match the length of the labels field of the parent labels specification and the i-th threshold will be matched to the i-th label.

nms_threshold

float

The Jaccard index threshold that will be applied to NMS to decide if two boxes of the same label represent the same object.

Definition

Creates a new recognition version.

cURL
POST https://api.deepomatic.com/v0.7/recognition/versions

Arguments

ParameterTypeDefaultDescription

spec_id

int

The ID of the parent recognition specification.

network_id

int

The ID of the neural network which will cary on the computation.

post_processings

The post-processing object that defines some network specific adjustments like the output tensor, some thresholds, etc. The length of this array must exactly match the length of the outputs field of the parent specification and the i-th post-processing will be matched to the i-th output.

Code sample

curl https://api.deepomatic.com/v0.7/recognition/versions \
-H "X-API-KEY: ${DEEPOMATIC_API_KEY}" \
-d '{
"spec_id": 42,
"network_id": 123,
"post_processings": [{"classification": {"output_tensor": "inception_v3/logits/predictions", "thresholds": [0.025, 0.025]}}]
}' \
-H "Content-Type: application/json"

Response

A recognition version object.

JSON
{
    "id": 1,
    "spec_id": 42,
    "spec_name": "hot-dog VS not hot-dog classifier",
    "network_id": 123,
    "network_name": "hot-dog VS not hot-dog classifier",
    "update_date": "2018-03-09T18:30:43.404610Z",
    "post_processings": [{
        "classification": {
            "output_tensor": "inception_v3/logits/predictions",
            "thresholds": [
                0.5,
                0.5
            ]
        }
    }]
}

List versions

Definition

Get the list of existing recognition versions.

# To access all your versions, use:
GET https://api.deepomatic.com/v0.7/recognition/versions

# To access versions attached to a given recognition spec, use:
GET https://api.deepomatic.com/v0.7/recognition/specs/{SPEC_ID}/versions

Code sample

# To access all your versions:
curl https://api.deepomatic.com/v0.7/recognition/versions \
-H "X-API-KEY: ${DEEPOMATIC_API_KEY}"

# To access versions attached to a given recognition spec, use:
curl https://api.deepomatic.com/v0.7/recognition/specs/42/versions \
-H "X-API-KEY: ${DEEPOMATIC_API_KEY}"

Response

A paginated list of responses.

AttributeTypeDescription

count

int

The total number of results.

next

string

The URL to the next page.

previous

string

The URL to the previous page.

results

array(object)

A list of your recognition version objects. Please note that the post_processings field is not present.

JSON
{
    "count": 2,
    "next": null,
    "previous": null,
    "results": [
        {
            "id": 1,
            "spec_id": 42,
            "spec_name": "hot-dog VS not hot-dog classifier",
            "network_id": 123,
            "network_name": "hot-dog VS not hot-dog classifier",
            "update_date": "2018-03-09T18:30:43.404610Z"
        },
        ...
    ]
}

Retrieve a version

Definition

Retrieve a recognition version by ID.

cURL
GET https://api.deepomatic.com/v0.7/recognition/versions/{VERSION_ID}

Arguments

ParameterTypeDefaultDescription

version_id

int

The ID of the version to retrieve.

Code sample

curl https://api.deepomatic.com/v0.7/recognition/versions/1 \
-H "X-API-KEY: ${DEEPOMATIC_API_KEY}"

Response

A recognition version object.

Delete a version

Definition

Permanently deletes a recognition version.

cURL
DELETE https://api.deepomatic.com/v0.7/recognition/versions/{VERSION_ID}

This cannot be undone.

Arguments

Parameter

Type

Default

Description

version_id

int

The ID of the version to delete.

Code sample

curl https://api.deepomatic.com/v0.7/recognition/versions/42 \
-H "X-API-KEY: ${DEEPOMATIC_API_KEY}" \
-X DELETE

Response

Return 204 (no content).

Version inference

Definition

Run inference on this specification version. This endpoint returns a task ID. Please refer to the Specification Inference to have a comprehensive list of the inference request arguments and response.

cURL
POST https://api.deepomatic.com/v0.7/recognition/versions/{VERSION_ID}/inference

Code sample

curl https://api.deepomatic.com/v0.7/recognition/versions/1/inference \
-X POST \
-H "Content-Type: application/json" \
-H "X-API-KEY: ${DEEPOMATIC_API_KEY}" \
-d '{"inputs": [{"image": {"source": "https://static.deepomatic.com/resources/demos/api-clients/dog2.jpg"}}]}'

Response

A task JSON.

JSON
{
    "task_id": "123"
}

Last updated