CVAT Basics
CVAT only works with Google Chrome, please make sure that it is installed and up to date.
What is CVAT
CVAT stands for “Computer Vision Annotation Tool.
It is what we use to label and process images for the Ag Image Repository.
Opening CVAT
Note: This subsection does not pertain to individuals using CVAT offline. Applicable instructions for logging into the CVAT interface using a serverless setup can be found on the Serverless Setup for CVAT page.
Logging into the CVAT Web Application
In addition to creating a CVAT specific login, CVAT also allows login through other enterprise accounts including Google, GitHub and other Single Sign On (SSO) Identity Providers (IdPs).
We recommend using your NCSU google account.
Open Google Chrome
Navigate to https://app.cvat.ai
Click
Continue with Google
to setup CVAT with your NCSU google account.If you do not have an NCSU email, you may either use a different method to login (i.e. GitHub, Personal Google Account, etc.) or click
Create an Account
to make a CVAT specific username and password.
Select your NCSU account (
<unityid>@ncsu.edu
)If your NCSU account is not appearing as an option select
Use another account
.In the
Email or Phone
field, enter<your unity id>@ncsu.edu
On the Shibboleth Login Service page, enter your Unity ID and Password and select
Log In
.Authenticate with Duo if prompted
You will be asked
“The information below would be shared with the service if you proceed. Do you agree to release this information to the service every time you access it”
. SelectAccept
to continue.You will be taken to the
Tasks
page of the CVAT web application.Any time after the initial login, when you are logged in to your NCSU google account in Google Chrome, you will be automatically logged in upon opening CVAT.
Navigating CVAT
Key Terms
The CVAT interface opens by default onto the Tasks
page. The interface is comprised of six different Pages each pertaining to a different aspect of the CVAT.
CVAT provides three levels of abstraction for annotation workflows: projects, tasks, and jobs.
A
job
contains one or more images and can be assigned to a specific annotator or reviewer.A
task
defines the label schema to use for annotation and contains one or more jobs.A
project
contains multiple tasks of the same type grouped together under a shared label schema.
Although you will be utilizing all three of these organizational structures, the primary one you will be working with and configuring will be Projects
.
A few other key terms used in CVAT are included below:
A
label
is type of an annotated object (e.g. person, car, vehicle, etc.) For our purposes, labels will be used to distinguish different plantspecies
.An
annotation
is a set of objects that are identified in an image or video whether by the user or by a computer model.A
manual annotation
is created by a person without the help of any models.A
semi-automatic annotation
is created mainly automatically by a model, but the user provides some data (e.g. interpolation). This is is the type of annotation we will be creating using theSegment Anything Model
(SAM).An
automatic annotation
is created entirely by a computer model without any additional input by a person.A job’s
state
indicates how much progress has been made on a specific job and what point it is currently at. They includenew
,in progress
,rejected
, andcompleted
.
Projects Page
The projects page is where users can create a new project, create a project from a backup, and also see their previously created projects. You will primarily be working with projects
.
Tasks Page
The tasks page is where to find separate tasks. They are sorted in creation order. For the purposes of our usage, you do not need to worry about tasks.
Jobs Page
The jobs page is where users 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. For the purposes of our usage, you do not need to worry about jobs.
Cloud Storage Page
The cloud storage page is where you can “attach” specific cloud storages to CVAT directly (such as Google Cloud or Azure). We will not be utilizing cloud storage in CVAT.
Requests Page
The requests page allows users to track the status of data processing jobs such as exporting annotations or importing datasets. It is also where error messages are logged.
Models Page
The models page contains a list of Deep Learning (DL) models deployed for semi-automatic and automatic annotation. The Segment Anything Model
(SAM) is shown on this page.
Miscellaneous
Settings
User settings can be reached by clicking on your username
along the top bar and selecting Settings
from the dropdown. Here users can access and adjust things like auto save, canvas background color, keyboard shortcuts and more.
Additional Documentation
CVAT’s published documentation can be accessed by clicking on the encircled question mark
along the top bar.
An Important Note on Organizations and Account Types
Although CVAT is a free and open source software, using the web hosted application rather than a self-hosted serverless setup requires a CVAT account. The basic CVAT account is free but there are limitations imposed regarding the number of tasks a user can have, the number of images that can be annotated using computer models per month, the number of tasks per project and the usage of certain features and tools.
For the time being, we will only be utilizing free “Solo” accounts with the potential to upgrade to an Organizational account later. This means that data management is very important and users will need to periodically remove old completed projects. Please see the deleting a project section for more information.
Creating Projects
In order to create a project you’ll need to have already downloaded data from Google Drive. See the Downloading Data section for instructions.
In the CVAT web application, go to the
Projects
page.Click the
Plus Symbol (+)
button and selectCreate a new project
from the calloutCopy
the file name from the zip file that you downloaded from the CVAT Google Drive by clicking on the file name and pressing theCtrl
andC
(Ctrl
+C
) keys on your keyboard simultaneously, or byright clicking
the zip file and selectingCopy
from the list that appears.Paste
the name into theName
field in CVAT by placing your cursor on the empty field and pressing theCtrl
andV
(Ctrl
+V
) keys on your keyboard simultaneously or byright clicking
and selectingPaste
from the list that appears.Click the end of the name that you just pasted and
delete
the file extension (.zip
) from the name.The project name should now be the same as the data file’s excluding the .zip
Press
Submit & Open
You will be taken to the Project that you just created
Adding Datasets to Projects
Opening A Task
From the Projects Page
On the Projects page, click on the Project you are going to annotate
The project will contain a task titled “default” with a unique numerical identifier. This can be used in the tasks page to go directly to this specific task. Be careful as all tasks created by importing datasets into projects will be titled “default” regardless of whether they are in the same project or not.
Click
Open
The task will contain a single job with its own unique numerical identifier. This can be used in the jobs page to go directly to this specific job.
Click on the job’s ID which is written in blue.
This will open the job in the CVAT annotation interface. See Working and Annotating in CVAT for information on how to annotate in CVAT.
Deleting a Project
From the Projects Page
On the Projects page, click on the Project you are going to delete
In the project the data corresponds to, click the
Actions ⫶
button in the upper right section of the page.Select
Delete
from the dropdown that appearsA prompt will appear asking you to confirm that you want to delete the project.
Click
Continue