Element

The target of the search query

The search element represents the target of the search query. This can be a class, an annotation, or a specific dataset. Search elements can be combined with other search elements by logic to refine the search query.

Can image like the query block equals to the where-clause of SQL.

Dataset

keyvaluetypeelement logic

dataset

The dataset name.

string

= != IN ()

<Example> Find all the data in dataset 001

dataset = 'dataset 001'

# Expression 1
dataset IN ('dataset 001', 'dataset 002')

# Expression 2
dataset = 'dataset 001' OR dataset = 'dataset 002'

Dataslice

keyvaluetypeelement logic

dataslice

The dataslice name.

string

= != IN ()

<Example> Find all the data in dataslice 001 or data slice 002

dataslice = 'dataslice 001'

# Expression 1
dataslice IN ('dataslice 001', 'dataslice 002')

# Expression 2
dataslice = 'dataslice 001' OR dataslice = 'dataslice 002'

IQA

The image quality assessment.

There are 7 types of IQA items: lightness, contrast, colorfulness, max color Kurtosis, BRISQUE, Laplacian-blur, and FFT-Blur.sql

keyvaluetypeelement logic

iqa.lightness

The lightness of the image.

number

= > >= < <= != BETWEEN

iqa.contrast

The contrast of the image.

number

as above

iqa.colorfulness

The colorfulness of the image.

number

as above

iqa.max_color_kurtosis

The max_color_kurtosis of the image.

number

as above

iqa.brisque

The brisque of the image.

number

as above

iqa.laplacian_blur

The laplacian_blur of the image.

number

as above

iqa.fft_blur

The fft_blur of the image.

number

as above

<Example> Find all the data iqa lightness > 30

iqa.lightness > 30

Class

The class follows the ontology settings. In the context of your search syntax, the element “class.name” specifically refers to the classification of an object (ex.bounding box) in an image or a set of images.

Note

The class.name does not indicate whether an image or a dataset contains a certain class of objects as a whole. Instead, it is used to find specific instances of objects within the bounding boxes in the data.

keyvaluetypeelement logic

class.name

The class name.

string

= != IN ()

<Example> Find all the data with object class car.

class.name = "car"

# Expression 1
class.name IN ('car', 'people')

# Expression 2
class.name = 'car' OR class.name = 'people'

# Expression 3
class.name = 'car' and class.name = 'people'  # Note: There will be no result. A bounding box cannot be classified as both a car and a truck.

Hint

Use 'class IS NULL' in your search query to find items that do not have a specified object class.


Class with Attribute

The class attributes follow the ontology settings.

keyvaluetypeelement logic

class.attribute.name

The name of the attribute.

string

= != IN OR AND

class.attribute.value

The value of the attribute.

Depends on the tag type - vec : string - number : number - boolean : boolean text type not included in the query.

vec, text and boolean: = != number: = > >= < <= !=

<Example> Find the person age between 28~30, year in 1995, 1996, 1997.

# search class is person who's attribute contains age that is between 28 - 30
(class.name = 'person' AND class.attribute.name='age' AND (class.attribute.value BETWEEN 28 AND 30))

# search all datarows whos attribute year is either 1995, 1996 or 1997
class.attribute.name = 'year' AND class.attribute.value IN (1995, 1996, 1997)

# search class is person or car where both attribute names contains year
(class.name = 'person' AND class.attribute.name = 'year') AND (class.name = 'car' AND class.attribute.name 'year')

# search class is person or (class is car but containes year attribute)
class.name = 'person' OR (class.name = car AND class.attribute.name = year)

Annotation

The target annotations result. It can be ground truth or model predictions.

keyvaluetypeelement logic

annotation

Ground Truth or the model name.

string

= != IN ()

annotation.confidence

The confidence score of the object.

number

= > >= < <= !=

<Example> Find all the data with ground truth, model-a annotations.

annotation = 'ground_truth'
annotation = 'model-a'

# Expression 1
annotation IN ('ground_truth', 'model-a')

# Expression 2
annotation = 'ground_truth' OR dataset = 'model-a'

<Example> Find all the data with confidence score > 50% annotations.

annotation.confidence > 0.5

Object

The object information includes height, width, length, area, and the cuboid object distance and the points included.

keyvaluetypeunitelement logic

object_size.height

The object size (height)

number

px

= > >= < <= !=

object_size.width

The object size (width)

number

px

as above

object_size.length

The object size (length)

number

px

as above

object_size.area

The object area

number

px^2

as above

object_cuboid.distance

The object cuboid distance.

It is only available for point cloud data cuboids.

number

m

as above

object_cuboid.point

The object cuboid included points.

It is only available for point cloud data cuboids.

number

points

as above

Example:

Find all the data with object size height < 100px.

object_size.height < 100

Find all the data with object size area < 40px^2.

object_size.area < 40

Find all the data with cuboid center distance to origin > 10m

object_cuboid.distance > 10

Find all the data with cuboid containing < 5 pcd points

object_cuboid.point < 5

Tag

The project taggings.

keyvaluetypeelement logic

tag.name

The name of the tag.

string

=, In !=

tag.value

The value of the tag.

Depends on the tag type - vec : string - num : number - boolean : boolean text type not included in the query.

vec, text and boolean: = != IN () number: = > >= < <= !=

<Example> Find the weather of sunny or rainy.

tag.name = 'weather'
tag.name != 'weather'
tag.name = 'weather' and tag.value IN ('sunny', 'rainy')

Last updated