Working with Features

Key definitions

Component

Definition

Object

Objects are Features that generally are visible on the screen (canvas). This includes Bounding boxes, Segmentation masks, NER Entities, and Relationships.

Classification

Classification is essentially a tag that can exist in any context (global or inside an object). It's created using a form in the editor.

Nested classification

Classifications can be global (i.e., it applies to the entire asset) or they can be nested within an object-type annotation (i.e., a child of an object-type annotation).

Relationship

A relationship is a specialized annotation type that connects two annotations and allows you to name that connection.

Create features

To create a new feature in the UI, navigate to the Schema > Features sub tab and hit the create button on the right.

Create object features

To create an object feature, you need to provide the following information:

  • Tool Name: Name of the feature that will appear in the Tools menu in the Editor. If you want to add an existing feature to your ontology, you can look it up by name.
  • Tool Color: Color of the feature in the Editor. Helps labelers identify the objects on the Editor stage and in the Tools menu.
  • Tool Type: Indicates the annotation type (ex. bounding box, segmentation mask, etc)
  • Sub Classifications: If you need a sub-classification (AKA nested classification) on the object, you can specify that here. This is an optional setting you can use to provide more information on the object being labeled.

Create classification features

To create a classification feature, you need to provide the following information:

  • Classification Name: Name of the classification that will appear in the Tools menu in the Editor.
  • Input type: Indicates the answer choice type (ex. dropdown, free text, etc)
  • Required: Should this classification be answered in order to submit a label? If yes, then enable the Required option.
  • Searchable: If you have a large list of answer options, the Searchable flag allows you to search the options during labeling.

Create features from a project

You can also dynamically create new features from within a project. To do this, you must:

  1. Select a project.
  2. Go to Settings > Label editor and click Edit.
  3. In the edit mode, click the + button under the object or classification section
  4. Fill out the necessary information to create the feature.
  5. Hit the checkmark or Done at the bottom of the screen.

πŸ“˜

You only need to care about parent Feature ID

While working with deeply nested features, you may see Feature ID and Schema Node ID for every child entity. They will soon be removed entirely. For all useful workflows, you now only need to care about the Feature ID that you can see and copy from the UI.

Edit feature

You can make changes to feature definition anytime.

  • If the feature has 1 or more annotations, you can only change everything except the tool type
  • If the feature has no annotations, you can make changes to every setting.

In general, proceed with caution when making changes to a feature that is already in use in existing labeling projects.

Fetch and create a feature with Python SDK

Python Tutorial

Github

Google Colab

Complete tutorial in Python SDK

Open in Github

Open in Google Colab


What’s Next
Did this page help you?