1
0
mirror of https://github.com/openvinotoolkit/cvat.git synced 2022-03-09 18:58:10 +03:00

Merge branch 'develop' into release-2.0.0

This commit is contained in:
Nikita Manovich
2022-03-04 18:47:51 +03:00
16 changed files with 169 additions and 34 deletions

View File

@@ -78,6 +78,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Annotations search does not work correctly in some corner cases (when use complex properties with width, height) (<https://github.com/openvinotoolkit/cvat/pull/4198>)
- Kibana requests are not proxied due to django-revproxy incompatibility with Django >3.2.x (<https://github.com/openvinotoolkit/cvat/issues/4085>)
- Content type for getting frame with tasks/{id}/data/ endpoint (<https://github.com/openvinotoolkit/cvat/pull/4333>)
- Bug: Permission error occured when accessing the comments of a specific issue (<https://github.com/openvinotoolkit/cvat/issues/4416>)
### Security
- Updated ELK to 6.8.23 which uses log4j 2.17.1 (<https://github.com/openvinotoolkit/cvat/pull/4206>)

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2021 Intel Corporation
# Copyright (C) 2022 Intel Corporation
#
# SPDX-License-Identifier: MIT
@@ -959,7 +959,8 @@ class IssuePermission(OpenPolicyAgentPermission):
'create': 'create@job',
'destroy': 'delete',
'partial_update': 'update',
'retrieve': 'view'
'retrieve': 'view',
'comments': 'view'
}.get(view.action, None)]
def get_resource(self):

View File

@@ -29,5 +29,6 @@ DATABASES = {
'NAME': os.getenv('CVAT_POSTGRES_DBNAME', 'cvat'),
'USER': os.getenv('CVAT_POSTGRES_USER', 'root'),
'PASSWORD': os.getenv('CVAT_POSTGRES_PASSWORD', ''),
'PORT': os.getenv('CVAT_POSTGRES_PORT', 5432),
}
}

View File

@@ -93,6 +93,8 @@ spec:
value: "{{ .Values.postgresql.external.dbname }}"
- name: CVAT_POSTGRES_PASSWORD
value: "{{ .Values.postgresql.external.password }}"
- name: CVAT_POSTGRES_PORT
value: "{{ .Values.postgresql.external.port }}"
{{- end }}
{{- with .Values.cvat.backend.additionalEnv }}
{{- toYaml . | nindent 10 }}

View File

@@ -18,31 +18,35 @@ To apply filters you need to click on the button on the top panel.
![](/images/image059.jpg)
## Create a filter
It will open a window for filter input. Here you will find two buttons: `Add rule` and `Add group`.
![](/images/image202.jpg)
### Rules
The "Add rule" button adds a rule for objects display. A rule may use the following properties:
The `Add rule` button adds a rule for objects display. A rule may use the following properties:
![](/images/image204.jpg)
**Supported properties:**
### Supported properties for annotation
| Properties | Supported values | Description |
| ----------- | ------------------------------------------------------ | --------------------------------------------|
| `Label` | all the label names that are in the task | label name |
| `Type` | shape, track or tag | type of object |
| `Shape` | all shape types | type of shape |
| `Occluded` | true or false | occluded ([read more](/docs/manual/advanced/shape-mode-advanced/)) |
| `Width` | number of px or field | shape width |
| `Height` | number of px or field | shape height |
| `ServerID` | number or field | ID of the object on the server <br>(You can find out by forming a link to the object through the Action menu) |
| `ObjectID` | number or field | ID of the object in your client <br>(indicated on the objects sidebar) |
| Properties | Supported values | Description |
| ------------ | ------------------------------------------------------ | ------------------------------------------- |
| `Label` | all the label names that are in the task | label name |
| `Type` | shape, track or tag | type of object |
| `Shape` | all shape types | type of shape |
| `Occluded` | true or false | occluded ([read more](/docs/manual/advanced/shape-mode-advanced/)) |
| `Width` | number of px or field | shape width |
| `Height` | number of px or field | shape height |
| `ServerID` | number or field | ID of the object on the server <br>(You can find out by forming a link to the object through the Action menu) |
| `ObjectID` | number or field | ID of the object in your client <br>(indicated on the objects sidebar) |
| `Attributes` | some other fields including attributes with a <br>similar type or a specific attribute value | any fields specified by a label |
**Supported operators for properties:**
[Supported properties for jobs list](/docs/manual/basics/jobs-page/#supported-properties-for-jobs-list)
### Supported operators for properties
`==` - Equally; `!=` - Not equal; `>` - More; `>=` - More or equal; `<` - Less; `<=` - Less or equal;
@@ -54,6 +58,10 @@ The "Add rule" button adds a rule for objects display. A rule may use the follow
`Between`; `Not between` these operators allow you to choose a range between two values.
`Like` - this operator indicate that the property must contain a value.
`Starts with`; `Ends with` - filter by beginning or end.
Some properties support two types of values that you can choose:
![](/images/image205.jpg)
@@ -68,13 +76,13 @@ Click `Submit` to apply the filter or if you want multiple rules to be connected
### Groups
To add a group, click the "add group" button. Inside the group you can create rules or groups.
To add a group, click the `Add group` button. Inside the group you can create rules or groups.
![](/images/image207.jpg)
If there is more than one rule in the group, they can be connected by `And` or `Or` operators.
The rule group will work as well as a separate rule outside the group and will be joined by an
operator outside the group.
operator outside the group.
You can create groups within other groups, to do so you need to click the add group button within the group.
You can move rules and groups. To move the rule or group, drag it by the button.
@@ -84,6 +92,6 @@ To remove the rule or group, click on the `Delete` button.
If you activate the `Not` button, objects that don't match the group will be filtered out.
Click `Submit` to apply the filter.
The "Cancel" button undoes the filter. The `Clear filter` button removes the filter.
The `Cancel` button undoes the filter. The `Clear filter` button removes the filter.
Once applied filter automatically appears in `Recent used` list. Maximum length of the list is 10.

View File

@@ -4,19 +4,22 @@ linkTitle: 'Task synchronization'
weight: 19
---
> Notice: this feature works only if a git repository was specified when the task was created.
1. At the end of the annotation process, a task is synchronized by clicking
`Synchronize` on the task page. Notice: this feature
works only if a git repository was specified when the task was created.
`Synchronize` on the task page. If the synchronization is successful,
the button will change to `Sychronized` in blue:
![](/images/image106.jpg)
![](/images/image110.jpg)
1. After synchronization the button `Sync` is highlighted in green. The
annotation is now in the repository in a temporary branch.
1. The annotation is now in the repository in a temporary branch.
The next step is to go to the repository and manually create a pull request to the main branch.
1. After merging the PR, when the annotation is saved in the main branch,
the button changes to `Merged` and is highlighted in green.
![](/images/image109.jpg)
1. The next step is to go to the repository and manually create a pull request to the main branch.
If annotation in the task does not correspond annotations in the repository, the sync button will turn red:
1. After confirming the PR, when the annotation is saved in the main branch, the color of the task changes to blue.
![](/images/image110.jpg)
![](/images/image106.jpg)

View File

@@ -153,7 +153,7 @@ 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).
## Overlap Size
### Overlap Size
Use this option to make overlapped segments.
The option makes tracks continuous from one segment into another.
@@ -224,6 +224,11 @@ Supported URL formats :
After the task is created, the synchronization status is displayed on the task page.
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.
### Use LFS
If the annotation file is large, you can create a repository with

View File

@@ -0,0 +1,90 @@
---
title: 'Jobs page'
linkTitle: 'Jobs page'
weight: 3
---
On the jobs page, users (for example, with the worker role)
can see the jobs that are assigned to them without having access to the task page,
as well as track progress, sort and apply filters to the job list.
![](/images/image243_detrac.jpg)
On the job page there is a list of jobs presented in the form of tiles, where each tile is one job.
Each element contains:
- job ID
- dimension 2D or 3D
- preview
- stage and state [see vocabulary section](/docs/manual/basics/vocabulary)
- when hovering over an element, you can see:
- size
- assignee
- menu to navigate to a task, project, or bug tracker.
In the upper right corner there is a search bar, using which you can find the job by designated user, stage, state, etc.
In the upper left corner there are sorting and filtering tools.
## Sort by
You can sort the jobs by the following parameters:
- `ID` - ID Jobs
- `Assignee` - the user to whom the job is assigned
- `Updated date` - time and date of last saved job
- `Stage` - stage set on the task page
- `State` - state set by a user assigned to the job
- `Task ID` - the ID of the task to which the job belongs
- `Project ID` - the ID of the project containing the task to which the job belongs.
- `Task name` - the name of the task to which the job belongs
- `Project name` - the name of the project containing the task to which the job belongs.
To apply sorting, drag the parameter to the top area above the horizontal bar.
The parameters below the horizontal line will not be applied.
By moving the parameters you can change the priority,
first of all sorting will occur according to the parameters that are above.
Pressing the `Sort button` switches `Ascending sort`/`Descending sort`.
## Quick filters
Quick Filters contain several frequently used filters:
- `Assigned to me` - show only those jobs that are assigned to you.
- `Not completed` - show only those jobs that have a status other than completed.
## Filter
> Applying filter disables the quick filter.
The filter works similarly to the filters for annotation,
you can create rules from [properties](#supported-properties-for-jobs-list),
[operators](/docs/manual/advanced/filter/#supported-operators-for-properties)
and values and group rules into [groups](/docs/manual/advanced/filter/#groups).
For more details, see the [filter section](/docs/manual/advanced/filter#create-a-filter).
For clear all filters press `Clear filters`.
### Supported properties for jobs list
| Properties | Supported values | Description |
| -------------- | -------------------------------------------- | ------------------------------------------- |
| `State` | all the state names | The state of the job <br>(can be changed in the menu inside the job) |
| `Stage` | all the stage names | The stage of the job <br>(is specified by a drop-down list on the task page) |
| `Dimension` | `2D` or `3D` | Depends on the data format <br>(read more in [creating an annotation task](/docs/manual/basics/creating_an_annotation_task)) |
| `Assignee` | username | Assignee is the user who is working on the job. <br>(is specified on task page) |
| `Last updated` | last modified date and time (or value range) | The date can be entered in the `dd.MM.yyyy HH:mm` format <br>or by selecting the date in the window that appears <br>when you click on the input field |
| `ID` | number or range of job ID | |
| `Task ID` | number or range of task ID | |
| `Project ID` | number or range of project ID | |
| `Task name` | task name | Set when creating a task, <br>can be changed on the ([task page](/docs/manual/basics/task-details/)) |
| `Project name` | project name | Specified when creating a project, <br>can be changed on the ([project section](/docs/manual/advanced/projects/)) |
### Date and time selection
When creating a `Last updated` rule, you can select the date and time by using the selection window.
![](/images/image244_detrac.jpg)
You can select the year and month using the arrows or by clicking on the year and month,
to select a day, click on it in the calendar,
To select the time, you can select the hours and minutes using the scrolling list.
Or you can select the current date and time by clicking the `Now` button.
To apply, click `Ok`.

View File

@@ -12,16 +12,27 @@ and the details of the task (specified when the task was created) and the jobs s
- The next actions are available on this page:
1. Change the tasks title.
2. Open `Actions` menu.
3. Change issue tracker or open issue tracker if it is specified.
4. Change labels (available only if the task is not related to the project).
1. Open `Actions` menu.
1. Change issue tracker or open issue tracker if it is specified.
1. Change labels (available only if the task is not related to the project).
You can add new labels or add attributes for the existing labels in the Raw mode or the Constructor mode.
By clicking `Copy` you will copy the labels to the clipboard.
5. Assigned to — is used to assign a task to a person. Start typing an assignees name and/or
1. Assigned to — is used to assign a task to a person. Start typing an assignees name and/or
choose the right person out of the dropdown list.
In the list of users, you will only see the users of the [organization](/docs/manual/advanced/organization/)
where the task is created.
- `Jobs` — is a list of all jobs for a particular task. Here you can find the next data:
1. Dataset Repository
- Repository link
- Synchronization status with dataset repository.
When you click on the status, the current annotation will be sent. It has several states:
- Synchronized - task synchronized, that is, created a pull of requisites with an actual annotation file.
- Merged - merged pull request with up-to-date annotation file.
- Synchronize - highlighted in red, annotations are not synced.
- Use a format drop-down list of formats in which the annotation can be synchronized.
- Support for large file enabling the use of [LFS](https://git-lfs.github.com/).
- **Jobs** — is a list of all jobs for a particular task. Here you can find the next data:
- Jobs name with a hyperlink to it.
- Frames — the frame interval.
- A stage of the job. The stage is specified by a drop-down list.

View File

@@ -48,4 +48,16 @@ Can be used to reduce the annotation file and to facilitate editing polygons.
**Trackable** object will be tracked automatically if the previous frame was
a latest keyframe for the object. More details in the section [trackers](/docs/manual/advanced/ai-tools/#trackers).
![](/images/tracker_indication.jpg)
![](/images/tracker_indication_detrac.jpg)
---
**State** of the job. The state can be changed by an assigned user in [the menu inside the job](/docs/manual/basics/top-panel/).
There are several possible states: `new`, `in progress`, `rejected`, `completed`.
---
**Stage** of the job. The stage is specified with the drop-down list on the [task page](/docs/manual/basics/tasks-page/).
There are three stages: `annotation`, `validation` or `acceptance`. This value affects the task progress bar.
---

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 KiB

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 KiB

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 KiB

After

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB