Skip to main content

DeleteBoundingBox

Deletes bounding box objects that satisfy the specified constraints, and all the connections to/from those bounding box objects.

Parameters

  • [optional] ref: Reference to bounding box objects within the transaction (result of a FindBoundingBox).
  • [optional] constraints

Details

If the ref parameter is used, constraints will be ignored.

If the ref parameter is used, the search results represented by the ref will not be valid for the remaining commands within the transaction.

For more complex searches for objects to delete, a Find command must be used first within the transaction.

Warning: Delete is an performance expensive command, as ApertureDB was designed for read intensive workloads.

Examples

Delete bounding boxes with "unique_id" property equal to 22:


[{
"DeleteBoundingBox": {
"constraints": {
"annotation_id": ["==", 22]
}
}
}]

Successful response:


[{
"DeleteBoundingBox": {
"count": 1,
"status": 0
}
}]

Delete bounding boxes with "unique_id" property equal to 22 and connections to entities of class "Person" with the "age" property equal to 30:


[{
"FindEntity": {
"with_class": "Person",
"_ref": 1,
"constraints": {
"age": ["==", 30]
}
}
}, {
"FindBoundingBox": {
"_ref": 2,
"constraints": {
"unique_id": ["==", 22]
},
"blobs": false,
"is_connected_to": {
"ref": 1
}
}
}, {
"DeleteBoundingBox": {
"ref": 2
}
}]

Successful response:


[{
"FindEntity": {
"returned": 0,
"status": 0
}
}, {
"FindBoundingBox": {
"returned": 0,
"status": 0
}
}, {
"DeleteBoundingBox": {
"count": 0,
"status": 0
}
}]