Type filed description added, general task configurator update (#5547)

Task configurator documentation page updated:
- Converted content into tables
- Updated screenshot
- Added description of new fields and functions
main
Mariia Acoca 3 years ago committed by GitHub
parent be84445817
commit 1071e2379c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -1,260 +1,268 @@
---
title: 'Creating an annotation task'
linkTitle: 'Creating an annotation task'
title: 'Create annotation task'
linkTitle: 'Create annotation task'
weight: 2
description: 'Instructions on how to create and configure an annotation task.'
description: 'How to create and configure an annotation task.'
---
Create an annotation task pressing `+` button and select `Create new task` on the tasks page or on the project page.
To start annotating in CVAT, you need to create an annotation task and specify its parameters.
![](/images/image004.jpg)
To create a task, on the **Tasks** page click **+** and
select **Create new task**.
> Notice that the task will be created inside the organization that you had selected at the time of creation.
> Read more about [organizations](/docs/manual/advanced/organization/).
![Create new task](/images/image004.jpg)
Specify parameters of the task:
See:
## Basic configuration
- [Creating a task](#creating-a-task)
- [Label shape](#label-shape)
- [Add an attribute](#add-an-attribute)
- [Select files](#select-files)
- [Editing labels in RAW format](#editing-labels-in-raw-format)
- [Data formats for a 3D task](#data-formats-for-a-3d-task)
- [Advanced configuration](#advanced-configuration)
### Name
## Creating a task
The name of the task to be created.
To create a new task, open task configurator:
![](/images/image005.jpg)
![Basic configurator](/images/basic_confugurator.jpg)
### Projects
And specify the following parameters:
The project that this task will be related with.
1. In the **Name** field, enter the name of the new task.
![](/images/image193.jpg)
![Name of task](/images/image005.jpg)
### Labels
2. (Optional) From the **Projects** drop-down, select a project for the new task.
<br>Leave this field empty if you do not want to assign the task to any project.
There are two ways of working with labels (available only if the task is not related to the project):
![Select project](/images/image193.jpg)
- The `Constructor` is a simple way to add and adjust labels. To add a new label click the `Add label` button.
> **Note:** Followin steps are valid if the task does not belong to a project.
> <br>If the task has been assigned to a project, the project's labels will be applied to the task.
![](/images/image123.jpg)
3. On the **Constructor** tab, click **Add label**.
<br>The label constructor menu will open:
You can set a name of the label in the `Label name` field and choose a color for each label.
![Label constructor](/images/image124.jpg)
![](/images/image124.jpg)
4. In the **Label name** field, enter the name of the label.
5. (Optional) To limit the use of the label to a certain [shape tool](/docs/manual/basics/controls-sidebar/#shapes),
from the [**Label shape**](#label-shape) drop-down select the shape.
6. (Optional) Select the color for the label.
If necessary you can add an attribute and set its properties by clicking `Add an attribute`:
![label shape and color](/images/label_shape.jpg)
![](/images/image125.jpg)
7. (Optional) Click [**Add an attribute**](#add-an-attribute) and set up its properties.
8. Click [**Select files**](#select-files) to upload files for annotation.
9. Click **Continue** to submit the label and start adding a new one
<br> or **Cancel** to terminate the current label and return you to the labels list.
10. Click **Submit and open** to submit the configuration and open the created task,
<br>or **Submit and continue**, to submit the configuration and start a new task.
The following actions are available here:
### Label shape
1. Set the attributes name.
1. Choose the way to display the attribute:
- Select — drop down list of value
- Radio — is used when it is necessary to choose just one option out of few suggested.
- Checkbox — is used when it is necessary to choose any number of options out of suggested.
- Text — is used when an attribute is entered as a text.
- Number — is used when an attribute is entered as a number.
1. Set values for the attribute. The values could be separated by pressing `Enter`.
The entered value is displayed as a separate element which could be deleted
by pressing `Backspace` or clicking the close button (x).
If the specified way of displaying the attribute is Text or Number,
the entered value will be displayed as text by default (e.g. you can specify the text format).
1. Checkbox `Mutable` determines if an attribute would be changed frame to frame.
1. You can delete the attribute by clicking the close button (x).
Labels (or classes) are categories of objects that you can annotate.
Click the `Continue` button to add more labels.
If you need to cancel adding a label - press the `Cancel` button.
After all the necessary labels are added click the `Done` button.
After clicking `Done` the added labels would be displayed as separate elements of different colour.
You can edit or delete labels by clicking `Update attributes` or `Delete label`.
**Label shape** limits the use of the label to certain [shape tool](/docs/manual/basics/controls-sidebar/#shapes).
- The `Raw` is a way of working with labels for an advanced user.
Raw presents label data in _json_ format with an option of editing and copying labels as a text.
The `Done` button applies the changes and the `Reset` button cancels the changes.
![](/images/image126.jpg)
`Any` is the default setting that does not limit the use of the
label to any particular shape tool.
### Select files
For example, you added:
Press tab `My computer` to choose some files for annotation from your PC.
If you select tab `Connected file share` you can choose files for annotation from your network.
If you select ` Remote source` , you'll see a field where you can enter a list of URLs (one URL per line).
If you upload a video or dataset with images and select `Use cache` option, you can attach a `manifest.jsonl` file.
You can find how to prepare it [here](/docs/manual/advanced/dataset_manifest/).
If you select the `Cloud Storage` tab, you can select a cloud storage (for this type the cloud storage name),
after that choose the manifest file and select the required files.
For more information on how to attach cloud storage, see [attach cloud storage](/docs/manual/basics/attach-cloud-storage/)
- Label `sun` with the **Label shape** type `ellipse`
- Lable `car` with the **Label shape** type `any`
![](/images/image127.jpg)
As a result:
### Data formats for a 3D task
- The `sun` label will be available only for ellipse shape.
- The `car` label will be available for all shapes.
To create a 3D task, you must prepare an archive with one of the following directory structures:
{{< tabpane >}}
{{< tab header="Velodyne" >}}
VELODYNE FORMAT
Structure:
velodyne_points/
data/
image_01.bin
IMAGE_00 # unknown dirname,
# generally image_01.png can be under IMAGE_00, IMAGE_01, IMAGE_02, IMAGE_03, etc
data/
image_01.png
{{< /tab >}}
{{< tab header="3D pointcloud" >}}
3D POINTCLOUD DATA FORMAT
Structure:
pointcloud/
00001.pcd
related_images/
00001_pcd/
image_01.png # or any other image
{{< /tab >}}
{{< tab header="3D Option 1" >}}
3D, DEFAULT DATAFORMAT Option 1
Structure:
data/
image.pcd
image.png
{{< /tab >}}
{{< tab header="3D Option 2" >}}
3D, DEFAULT DATAFORMAT Option 2
Structure:
data/
image_1/
image_1.pcd
context_1.png # or any other name
context_2.jpg
{{< /tab >}}
{{< /tabpane >}}
![Label shape](/images/label_shape.gif)
> You can't mix 2D and 3D data in the same task.
The tools on the [Controls sidebar](/docs/manual/basics/controls-sidebar/)
will be limited to the selected types of shapes.
## Advanced configuration
For example, if you select `Any`,
all tools will be available,
but if you select `Rectangle` for all labels,
only the **Rectangle** tool will be
visible on the sidebar.
![](/images/image128.jpg)
> **Note:** You cannot apply the **Label shape**
> to the **AI** and **OpenCV** tools,
> these tools will always be available.
![Type control sidebar](/images/type_tools.png)
You can change the shape of the label as needed.
This change will not affect the existing annotation.
For example, if you created objects using polygons and then changed
the label shape to polylines, all previously created objects will remain
polygons. However, you will not be able to add new polygon
objects with the same label.
### Sorting method
> **Note:** You cannot change the shape of the `skeleton` label.
> <br>The **Label shape** field for the `skeleton` label is disabled.
Option to sort the data. It is not relevant for videos.
For example, the sequence `2.jpeg, 10.jpeg, 1.jpeg` after sorting will be:
- `lexicographical`: 1.jpeg, 10.jpeg, 2.jpeg
- `natural`: 1.jpeg, 2.jpeg, 10.jpeg
- `predefined`: 2.jpeg, 10.jpeg, 1.jpeg
### Add an attribute
### Use zip/video chunks
**Attribute** is a property of an annotated object,
such as color, model, or other quality.
Force to use zip chunks as compressed data. Cut out content for videos only.
For example, you have a label for `face` and want to
specify the type of face. Instead of creating additional
labels for `male` and `female`, you can use attributes
to add this information.
### Use cache
There are two types of attributes:
Defines how to work with data. Select the checkbox to switch to the "on-the-fly data processing",
which will reduce the task creation time (by preparing chunks when requests are received)
and store data in a cache of limited size with a policy of evicting less popular items.
See more [here](/docs/manual/advanced/data_on_fly/).
- **Immutable** attributes are unique and do not change from frame to frame.
For example, `age`, `gender`, and `color`.
- **Mutable** attributes are temporary and can change from frame to frame.
For example, `pose`, `quality`, and `truncated`.
### Image Quality
Added attributes will be available from the **Objects menu**:
Use this option to specify quality of uploaded images.
The option helps to load high resolution datasets faster.
Use the value from `5` (almost completely compressed images) to `100` (not compressed images).
![Attributes](/images/attributes.jpg)
### Overlap Size
To add an attribute, do the following:
Use this option to make overlapped segments.
The option makes tracks continuous from one segment into another.
Use it for interpolation mode. There are several options for using the parameter:
1. Go to the **Constructor** tab and click **Add attribute**.
- For an interpolation task (video sequence).
If you annotate a bounding box on two adjacent segments they will be merged into one bounding box.
If overlap equals to zero or annotation is poor on adjacent segments inside a dumped annotation file,
you will have several tracks, one for each segment, which corresponds to the object.
- For an annotation task (independent images).
If an object exists on overlapped segments, the overlap is greater than zero
and the annotation is good enough on adjacent segments, it will be automatically merged into one object.
If overlap equals to zero or annotation is poor on adjacent segments inside a dumped annotation file,
you will have several bounding boxes for the same object.
Thus, you annotate an object on the first segment.
You annotate the same object on second segment, and if you do it right, you
will have one track inside the annotations.
If annotations on different segments (on overlapped frames)
are very different, you will have two shapes for the same object.
This functionality works only for bounding boxes.
Polygons, polylines, points don't support automatic merge on overlapped segments
even the overlap parameter isn't zero and match between corresponding shapes on adjacent segments is perfect.
![Attributes](/images/attributes_01.png)
### Segment size
2. In the **Name** field enter the name of the attribute.
3. From the drop-down, select way to display the attribute in the **Objects menu**:
Use this option to divide a huge dataset into a few smaller segments.
For example, one job cannot be annotated by several labelers (it isn't supported).
Thus using "segment size" you can create several jobs for the same annotation task.
It will help you to parallel data annotation process.
- `Select` enables a drop-down list, from which you can select an attibute. <br>If in
the **Attribute value** field you add `__undefined__`,
the drop-down list will have a blank value.<br>
This is useful for cases where the attribute of the object cannot be clarified:
### Start frame
- ![Undefined value](/images/undefined_value.jpg)
Frame from which video in task begins.
- `Radio` enables the selection of one option from several options.
- `Checkbox` enables the selection of multiple options.
- `Text` sets the attribute to a text field.
- `Number` sets the attribute to numerical field in the following format: `min;max;step`.
### Stop frame
4. In the **Attribute values** field, add attribute values. <br>To separate values use **Enter**.
<br>To delete value, use **Backspace** or click **x** next to the value name.
5. (Optional) For mutable attributes, select **Mutable**.
Frame on which video in task ends.
To delete an attribute, click **Delete attribute**.
### Frame Step
### Select files
Use this option to filter video frames.
For example, enter `25` to leave every twenty fifth frame in the video or every twenty fifth image.
There are several ways to upload files:
### Chunk size
<!--lint disable maximum-line-length-->
Defines a number of frames to be packed in a chunk when send from client to server.
Server defines automatically if empty.
| Data source | Description |
| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| My computer | Use this option to select files from your laptop or PC. <br> To select file: <br>1. Click on the **Select files** field: <br>![Select files](/images/select_files.jpg). <br> 2. Select files to upload. |
| Connected file share | **Advanced option**. <br>Upload files from a local or cloud shared folder. <br>**Note**, that you need to mount a fileshare first. <br>For more information, see [Share path](/docs/administration/basics/installation/#share-path) |
| Remote source | Enter a list of URLs (one per line) in the field. |
| Cloud Storage | **Advanced option**. <br>To upload files from cloud storage, type the cloud storage name, choose the manifest file, and select the required files. <br> For more information, see [Attach cloud storage](/docs/manual/basics/attach-cloud-storage/) |
Recommended values:
<!--lint enable maximum-line-length-->
- 1080p or less: 36
- 2k or less: 8 - 16
- 4k or less: 4 - 8
- More: 1 - 4
### Editing labels in RAW format
### Dataset Repository
The **Raw** is a way of working with labels for an advanced user.
URL link of the repository optionally specifies the path to the repository for storage
(`default: annotation / <dump_file_name> .zip`).
The .zip and .xml file extension of annotation are supported.
Field format: `URL [PATH]` example: `https://github.com/project/repos.git [1/2/3/4/annotation.xml]`
It is useful when you need to copy labels from one independent task to another.
Supported URL formats :
> **Note:** Be careful with changing the raw specification of an existing task/project.
> Removing any "id" properties will lead to losing existing annotations.
> **This property will be removed automatically from any text you insert to this field**.
- `https://github.com/project/repos[.git]`
- `github.com/project/repos[.git]`
- `git@github.com:project/repos[.git]`
![](/images/image126.jpg)
After the task is created, the synchronization status is displayed on the task page.
Raw presents label data in _.json_ format with an option of editing and copying labels as text.
The **Done** button applies the changes and the **Reset** button cancels the changes.
If you specify a dataset repository, when you create a task, you will see a message
about the need to grant access with the ssh key.
This is the key you need to [add to your github account](https://github.com/settings/keys).
For other git systems, you can learn about adding an ssh key in their documentation.
### Data formats for a 3D task
### Use LFS
To create a 3D task, you must prepare an archive with one of the following directory structures.
If the annotation file is large, you can create a repository with
[LFS](https://git-lfs.github.com/) support.
> **Note:** You can't mix 2D and 3D data in the same task.
### Issue tracker
{{< tabpane >}}
{{< tab header="Velodyne" >}}
VELODYNE FORMAT
Structure:
velodyne_points/
data/
image_01.bin
IMAGE_00 # unknown dirname,
# generally image_01.png can be under IMAGE_00, IMAGE_01, IMAGE_02, IMAGE_03, etc
data/
image_01.png
{{< /tab >}}
{{< tab header="3D pointcloud" >}}
3D POINTCLOUD DATA FORMAT
Structure:
pointcloud/
00001.pcd
related_images/
00001_pcd/
image_01.png # or any other image
Specify full issue tracker's URL if it's necessary.
{{< /tab >}}
{{< tab header="3D Option 1" >}}
3D, DEFAULT DATAFORMAT Option 1
Structure:
data/
image.pcd
image.png
{{< /tab >}}
{{< tab header="3D Option 2" >}}
3D, DEFAULT DATAFORMAT Option 2
Structure:
data/
image_1/
image_1.pcd
context_1.png # or any other name
context_2.jpg
{{< /tab >}}
{{< /tabpane >}}
### Source storage
Specify source storage for import resources like annotations and backups. It can be a local or a cloud storage.
If the task is created in the project, then the `Use project source storage` switch will determine whether
to use the default values or specify new ones.
## Advanced configuration
### Target storage
Use advanced configuration to set additional parameters for the task
and customize it to meet specific needs or requirements.
Specify target storage for export resources like annotations and backups. It can be a local or a cloud storage.
If the task is created in the project, then the `Use project target storage` switch will determine whether
to use the default values or specify new ones.
![](/images/image128.jpg)
To save and open task click on `Submit & Open` button. Also you
can click on `Submit & Continue` button for creating several tasks in sequence.
Then, the created tasks will be displayed on a [tasks page](/docs/manual/basics/tasks-page/).
The following parameters are available:
<!--lint disable maximum-line-length-->
| Element | Description |
| -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Sorting method | **Note:** Does not work for the video data. <br><br>Several methods to sort the data. <br> For example, the sequence `2.jpeg`, `10.jpeg`, `1.jpeg` after sorting will be: <br><br><li> **Lexicographica**: `1.jpeg`, `10.jpeg`, `2.jpeg` <li> **Natural**: `1.jpeg`, `2.jpeg`, `10.jpeg` <li> **Predefined**: `2.jpeg`, `10.jpeg`, `1.jpeg` <li> **Random** uploads data in random order. |
| Use zip/video chunks | Use this parameter to divide your video or image dataset for annotation into short video clips a zip file of frames. <br>Zip files are larger but do not require decoding on the client side, and video clips are smaller but require decoding. <br>It is recommended to turn off this parameter for video tasks to reduce traffic between the client side and the server. |
| Use cache | Select checkbox, to enable _on-the-fly_ data processing to reduce task creation time and store data in a cache with a policy of <br>evicting less popular items. <br><br>For more information, see [Data preparation on the fly](/docs/manual/advanced/data_on_fly/). |
| Image Quality | CVAT has two types of data: original quality and compressed. Original quality images are used for dataset export<br> and automatic annotation. Compressed images are used only for annotations to reduce traffic between the server <br>and client side. <br> It is recommended to adjust the compression level only if the images contain small objects that are not <br>visible in the original quality. <br> Values range from `5` (highly compressed images) to `100` (not compressed |
| Overlap Size | Use this parameter to create overlapped segments, making tracking continuous from one segment to another. <br><br>**Note** that this functionality only works for bounding boxes. <br><br>This parameter has the following options: <br><br>**Interpolation task** (video sequence). If you annotate with a bounding box on two adjacent segments, they will be<br> merged into a single bounding box. In case the overlap is zero or the bounding box is inaccurate (not enclosing the object <br>properly, misaligned or distorted) on the adjacent segments, it may be difficult to accurately interpole the object's <br>movement between the segments. As a result, multiple tracks will be created for the same object. <br><br>**Annotation task** (independent images). If an object exists on overlapped segments with overlap greater than zero, <br>and the annotation of these segments is done properly, then the segments will be automatically merged into a single<br> object. If the overlap is zero or the annotation is inaccurate (not enclosing the object properly, misaligned, distorted) on the<br> adjacent segments, it may be difficult to accurately track the object. As a result, multiple bounding boxes will be <br>created for the same object. <br><br>If the annotations on different segments (on overlapped frames) are very different, you will have two shapes <br>for the same object. <br><br>To avoid this, accurately annotate the object on the first segment and the same object on the second segment to create a track <br>between two annotations. |
| Segment size | Use this parameter to divide a dataset into smaller parts. For example, if you want to share a dataset among multiple<br> annotators, you can split it into smaller sections and assign each section to a separate job. <br>This allows annotators to work on the same dataset concurrently. |
| Start frame | Defines the first frame of the video. |
| Stop frame | Defines the last frame of the video. |
| Frame Step | Use this parameter to filter video frames or images in a dataset. Specify frame step value to include only <br>certain frames or images in the dataset. <br>For example, if the frame step value is `25`, the dataset will include every 25th frame or image. If a video <br>has `100` frames, setting the frame step to `25` will include only frames `1`, `26`, `51`, `76`, and `100` in the dataset. <br>This can be useful for reducing the size of the dataset, or for focusing on specific frames or images that are <br>of particular interest. |
| Chunk size | Defines amount of frames to be packed in a chunk when send from client to server. <br>The server defines automatically if the chunk is empty. <br>Recommended values: <li> 1080p or less: 36 <li> 2k or less: 8 <li>16 - 4k or less: 4 <li>8 - More: 1 - 4 |
| Dataset repository | **Advanced option**. <br>URL link of the repository that specifies the path to the repository for storage (`default: annotation / <dump_file_name> .zip`).<br>Supports _.zip_ and _.xml_ formats. <br><br>Field format: `URL [PATH]` example: `https://github.com/project/repos.git [1/2/3/4/annotation.xml]` <br><br> Supported URL formats: <li>`https://github.com/project/repos[.git]` <li>`github.com/project/repos[.git]` <li>`git@github.com:project/repos[.git]` <br><br> After the task is created, the synchronization status will show up on the task page. <br> If you specify a dataset repository, when you create a task, you will see a message about the need to grant access with <br>the ssh key. <br> This is the key you need to [add to your github account](https://github.com/settings/keys). <br> For other git systems, you can learn about adding an ssh key in their documentation. |
| Use LFS | **Advanced option**. <br>Use this parameter for big annotation files, to create a repository with [LFS](https://git-lfs.github.com/) support. |
| Issue tracker | Use this parameter to specify the issue tracker URL. |
| Source storage | Specify the source storage for importing resources like annotations and backups. <br>If the task was assigned to the project, use the **Use project source storage** toggle to determine whether to <br>use project values or specify new ones. |
| Target storage | Specify the target storage (local or cloud) for exporting resources like annotations and backups. <br>If the task is created in the project, use the **Use project target storage** toggle to determine whether to<br> use project values or specify new ones. <br>To save and open the task click **Submit & Open** . <br>To create several tasks in sequence, click on the **Submit & Continue**.<br> Created tasks will be displayed on a [tasks page](/docs/manual/basics/tasks-page/). |
<!--lint enable maximum-line-length-->

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.1 KiB

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Loading…
Cancel
Save