For the complete documentation index, see llms.txt. This page is also available as Markdown.

Project Meta: Classes, Tags, Settings

Each project in Supervisely has a set of predetermined classes and tags. This information is called Project Meta and stored in a corresponding JSON-based meta.json file. This file contains all the necessary data from the project's classes and tags. Also, it has information about the project's type and settings:

JSON format for project meta

Fields definitions

  • classes(string) - list of all possible object classes. Each class has the following fields assigned:

    • title(string) - the unique identifier of a class

    • shape(string) - class shape, read more here

    • color(string) - hex color code

    • geometry_config(dictionary) [optional] - additional settings of the geometry. May be used with keypoints.

    • id (int) [optional] - the unique identification value of the class on the server

    • hotkey (string) [optional] - hotkey for the Labeling Tool to quickly change active annotation class

  • tags(string) - list of all possible tags that can be assigned to images or objects. Read more here

    • name(string) - the unique identifier of a tag

    • value_type(string) - one of the possible tag value types: none, any_string, any_number, oneof_string, date. The date type stores an ISO 8601 date-time string; possible_values cannot be used with it.

    • color(string) - hex color code

    • values(string) [optional] - initially predefined set of possible values

    • id (int) [optional] - the unique identification value of the tag

    • hotkey (string) [optional] - hotkey for the Labeling Tool to quickly assign tag to object or image

    • applicable_type (string) [optional] - defines the applicability of Tag only to images (imagesOnly), objects (objectsOnly), or both (all). By default, tag can be assigned to both images and objects.

    • classes (list of strings) [optional] - defines the applicability of Tag only to certain classes

    • target_type (string) [optional] - Defines the scope of application. It can be applied globally for the entire duration or to individual frames, with the following values: entitiesOnly,framesOnly, all. Since images do not have "frames," the all option is used for them.

    • frame_range_min_length (int) [optional] - minimum length, in frames, of a finished frame-based tag. Length is inclusive, so frames 10 to 12 count as 3. 0 means no limit. Applies to videos and point cloud episodes.

    • frame_range_max_length (int) [optional] - maximum length, in frames, of a finished frame-based tag, on the same terms as frame_range_min_length. A minimum above a maximum is rejected, since such a tag could never be applied.

    • default (bool) [optional] - true makes the labeling tools for images, videos and point clouds add the tag automatically to a new object of one of the tag's classes, and to an object whose class is changed to one of them. It applies only to a tag with applicable_type objectsOnly and a non-empty classes list. It is written only when true. Available since Supervisely 6.18.3.

    • default_value (string or number) [optional] - the value used when the tag is assigned without one, including when it is added automatically. It applies to any_string, any_number and oneof_string tags; for oneof_string it is one of the values. It is written only when set. Available since Supervisely 6.18.3.

When a project meta is updated and a tag in it omits default or default_value, the stored settings are kept. To stop adding the tag automatically, send "default": false; to clear a default value, send "default_value": null.

* `projectType`(string) - one of the possible project types: `images`, `videos`, `volumes`, `point_clouds`, and `point_cloud_episodes` * `projectSettings`(string) [optional] - additional project properties. For example, multiview settings. Read more [here](../../getting-started/python-sdk-tutorials/images/multispectral-images.md#advanced-use-supervisely-format-for-multispectral-images) * `multiView` - additional properties for the multiview mode * `enabled`(bool) - enable multiview mode * `tagName`(string) (optional) - the name of the tag which will be used as a group tag * `tagId`(int) [optional] - the ID of the tag which will be used as a group tag * `isSynced`(bool) - enable synchronization of views for the multiview mode

Please note, that it is necessary that the group tag in multiView should have the corresponding name or the id in the tags field. Also, the value_type should not be none.

Last updated

Was this helpful?