Classify a complete file against the current impulse, for all given variants. Depending on the size of your file and whether the sample is resampled, you may get a job ID in the response.
/api/{projectId}/classify/v2/{sampleId}/variants
Project ID
Sample ID
Whether to return the debug information from FOMO classification.
List of keras model variants, given as a JSON string
["int8", "float32"]
Impulse ID. If this is unset then the default impulse is used.
curl -L \
--request POST \
--url 'https://studio.edgeimpulse.com/v1/api/{projectId}/classify/v2/{sampleId}/variants?variants=%5B%22int8%22%2C+%22float32%22%5D' \
--header 'x-api-key: YOUR_API_KEY'
{
"success": true,
"error": "text",
"results": [
{
"variant": "int8",
"classifications": [
{
"learnBlock": {
"id": 1,
"type": "anomaly",
"name": "NN Classifier",
"dsp": [
27
],
"title": "Classification (Keras)",
"description": "Reduced learning rate and more layers",
"createdBy": "createImpulse",
"createdAt": "2025-02-08T16:41:55.962Z"
},
"result": [
{
"idle": 0.0002,
"wave": 0.9998,
"anomaly": -0.42
}
],
"anomalyResult": [
{
"boxes": [
{
"label": "text",
"x": 1,
"y": 1,
"width": 1,
"height": 1,
"score": 1
}
],
"scores": [
[
1
]
],
"meanScore": 1,
"maxScore": 1
}
],
"structuredResult": [
{
"boxes": [
[
1
]
],
"labels": [
"text"
],
"scores": [
1
],
"mAP": 1,
"f1": 1,
"precision": 1,
"recall": 1,
"debugInfoJson": "{\n \"y_trues\": [\n {\"x\": 0.854, \"y\": 0.453125, \"label\": 1},\n {\"x\": 0.197, \"y\": 0.53125, \"label\": 2}\n ],\n \"y_preds\": [\n {\"x\": 0.916, \"y\": 0.875, \"label\": 1},\n {\"x\": 0.25, \"y\": 0.541, \"label\": 2}\n ],\n \"assignments\": [\n {\"yp\": 1, \"yt\": 1, \"label\": 2, \"distance\": 0.053}\n ],\n \"normalised_min_distance\": 0.2,\n \"all_pairwise_distances\": [\n [0, 0, 0.426],\n [1, 1, 0.053]\n ],\n \"unassigned_y_true_idxs\": [0],\n \"unassigned_y_pred_idxs\": [0]\n}\n"
}
],
"minimumConfidenceRating": 1,
"details": [
{
"boxes": [
[
1
]
],
"labels": [
1
],
"scores": [
1
],
"mAP": 1,
"f1": 1
}
],
"objectDetectionLastLayer": "mobilenet-ssd",
"expectedLabels": [
{
"startIndex": 1,
"endIndex": 1,
"label": "text"
}
]
}
]
}
],
"sample": {
"sample": {
"id": 2,
"filename": "idle01.d8Ae",
"signatureValidate": true,
"signatureMethod": "HS256",
"signatureKey": "text",
"created": "2025-02-08T16:41:55.962Z",
"lastModified": "2025-02-08T16:41:55.962Z",
"category": "training",
"coldstorageFilename": "text",
"label": "healthy-machine",
"intervalMs": 16,
"frequency": 62.5,
"originalIntervalMs": 16,
"originalFrequency": 62.5,
"deviceName": "text",
"deviceType": "text",
"sensors": [
{
"name": "accX",
"units": "text"
}
],
"valuesCount": 1,
"totalLengthMs": 1,
"added": "2025-02-08T16:41:55.962Z",
"boundingBoxes": [
{
"label": "text",
"x": 1,
"y": 1,
"width": 1,
"height": 1
}
],
"boundingBoxesType": "object_detection",
"chartType": "chart",
"thumbnailVideo": "text",
"thumbnailVideoFull": "text",
"isDisabled": true,
"isProcessing": true,
"processingJobId": 1,
"processingError": true,
"processingErrorString": "text",
"isCropped": true,
"metadata": {
"ANY_ADDITIONAL_PROPERTY": "text"
},
"projectId": 1,
"projectOwnerName": "text",
"projectName": "text",
"projectLabelingMethod": "single_label",
"sha256Hash": "text",
"structuredLabels": [
{
"startIndex": 1,
"endIndex": 1,
"label": "text"
}
],
"structuredLabelsList": [
"text"
],
"createdBySyntheticDataJobId": 1,
"imageDimensions": {
"width": 1,
"height": 1
}
},
"payload": {
"device_name": "ac:87:a3:0a:2d:1b",
"device_type": "DISCO-L475VG-IOT01A",
"sensors": [
{
"name": "accX",
"units": "text"
}
],
"values": [
[
1
]
],
"cropStart": 0,
"cropEnd": 128
},
"totalPayloadLength": 1
},
"windowSizeMs": 2996,
"windowIncreaseMs": 10,
"alreadyInDatabase": true
}
OK