All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Datumaro format now supports skeletons (cvat-ai#8165)
-
Quality analytics page will now report job assignees from quality reports instead of current job assignees (cvat-ai#8123)
-
When exporting projects in COCO format, images in different subsets are now stored in different subfolders (cvat-ai#8171)
-
On task export, put images to folders depending on subset (cvat-ai#8176)
-
User interface crashed if there are active creating task requests on a project page (cvat-ai#8187)
-
Permission error: organization owner cannot export dataset and backup (cvat-ai#8185)
-
Set of features to track background activities: importing/exporting datasets, annotations or backups, creating tasks. Now you may find these processes on Requests page, it allows a user to understand current status of these activities and enhances user experience, not losing progress when the browser tab is closed (cvat-ai#7537)
-
User now may update a job state from the corresponding task page (cvat-ai#8102)
-
The server will now record and report last assignee update time (cvat-ai#8119)
-
"Finish the job" button on annotation view now only sets state to 'completed'. The job stage keeps unchanged (cvat-ai#8102)
-
Log files for individual backend processes are now stored in ephemeral storage of each backend container rather than in the
cvat_logs
volume (cvat-ai#8121) -
Do not reset opacity level each time frame switched if there are masks on the frame (cvat-ai#8149)
- Renew the job button in annotation menu was removed (cvat-ai#8102)
-
A possible crash in quality computation for tasks with skeletons and normal labels (cvat-ai#8100)
-
Quality report button and timestamp alignments on quality page (cvat-ai#8106)
-
Fixed display of working time in Grafana management dashboard (cvat-ai#8112)
-
Fixed unexpected deletion of log files of other processes that led to OSError: [Errno 116] Stale file handle error on NFS volumes (cvat-ai#8121)
-
Attribute values with ":" may be displayed incorrectly on canvas (cvat-ai#8137)
-
Fixed broken server Docker image build (cvat-ai#8160)
-
DOMException: Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded (cvat-ai#8166)
-
Propagate shapes
action to create copies of visible shapes on multiple frames forward or backward (cvat-ai#8044) -
[Helm] Ability to use an external ClickHouse instance (cvat-ai#8048)
- Improved performance for mask import and export (cvat-ai#8049)
-
Failing dataset export cleanup attempts for exports before #7864 (cvat-ai#8039)
-
Exception 'this.el.node.getScreenCTM() is null' occuring in Firefox when a user resizes window during skeleton dragging/resizing (cvat-ai#8067)
-
Exception 'Edge's nodeFrom M or nodeTo N do not to refer to any node' occuring when a user resizes window during skeleton dragging/resizing (cvat-ai#8067)
-
Slightly broken layout when running attributed face detection model (cvat-ai#8072)
-
Exception 'this.el.node.getScreenCTM() is null' when cancel drawing shape for any tracker (cvat-ai#8080)
-
The switcher to block an active tool on annotation header is not highligted properly (cvat-ai#8081)
-
Points shape color wasn't changed on changing label (cvat-ai#8082)
-
Incorrect counting of tracked shapes when computing analytics report (cvat-ai#8088)
-
Ordering of
frame intersection
column on task quality page (cvat-ai#8089) -
The property "outside" not propagated correctly on skeleton elements (cvat-ai#8105)
- Polyline editing may be finished using corresponding shortcut (cvat-ai#7922)
- Single shape annotation mode allows to modify/delete objects (cvat-ai#8017)
-
Invalid server cache cleanup for backups and events (after #7864) (cvat-ai#8040)
-
Filters by created date, updated date do not work on different pages (e.g. list of tasks or jobs) (cvat-ai#8055)
- Increased server healthcheck timeout 5 -> 15 seconds (cvat-ai#7993)
-
Cannot read properties of null (reading 'draw') happens when use shortcut N in a task where first label has type "tag" (cvat-ai#7997)
-
When use route
/auth/login-with-token/<token>
withoutnext
query parameter the page reloads infinitely (cvat-ai#7999) -
Fixed kvrocks port naming for istio (cvat-ai#8010)
-
Exception: State cannot be updated during editing, need to finish current editing first (cvat-ai#8019)
-
Mitigated a CSRF vulnerability in backup and export-related endpoints (https://github.com/cvat-ai/cvat/security/advisories/GHSA-jpf9-646h-4px7)
-
Fixed an SSRF vulnerability with custom cloud storage endpoints (https://github.com/cvat-ai/cvat/security/advisories/GHSA-q684-4jjh-83g6)
-
Queued jobs are not considered in deferring logic (cvat-ai#7907)
-
Significant memory leak related to the frames, which did not memory after become unused (cvat-ai#7995)
- Improved message of DatasetNotFoundError (cvat-ai#7923)
-
Upgraded React and Antd dependencies, it leads to stylistic changes in the user interface (cvat-ai#7466)
-
CVAT now stores users' working time in events of a dedicated type (cvat-ai#7958)
-
The 500 / "The result file does not exist in export cache" error on dataset export request (cvat-ai#7864)
-
Fix missing serviceName field in kvrocks (issue #7741) (cvat-ai#7924)
-
UI crash on hovering conflict related to hidden objects (cvat-ai#7917)
-
Login when the domain of a user email contains capital symbols and a user was created after being invited to an org (cvat-ai#7906)
-
Exception "Cannot set properties of undefined (setting 'serverID')" occurs when attempting to save a job after removing the first keyframe of a track (cvat-ai#7949)
-
Spent working time for a user may not be counted in analytics (cvat-ai#7942)
-
A classifier model can not be used on annotation view (unknown object shape error) (cvat-ai#7839)
-
Optimized memory usage by not keeping all downloaded images/part of images in memory while creating a manifest file (cvat-ai#7969)
-
Optimized the number of requests to CS providers by downloading only images from a specified range (
use_cache==False
) (cvat-ai#7969) -
Task creation with random sorting and cloud data (cvat-ai#7969)
-
Added security headers enforcing strict
Referrer-Policy
for cross origins and disabling MIME type sniffing viaX-Content-Type-Options
. (cvat-ai#7752) -
[Helm] Ability to specify ServiceAccount for backend pods (cvat-ai#7894)
-
Working time rounding to a minimal value of 1 hour is not applied to the annotation speed metric any more (cvat-ai#7898)
-
Total annotation speed metric renamed to Average annotation speed (cvat-ai#7898)
-
Ground truth jobs are not considered when computing analytics report for a task/project (cvat-ai#7919)
-
Fixed calculation of annotation speed metrics for analytics reports (cvat-ai#7144)
-
[Helm] Prevented spurious 200 OK responses from API endpoints before the backend is ready (cvat-ai#7859)
-
Analytic reports incorrect count of objects for a skeleton track/shape (cvat-ai#7883)
-
Analytic reports incorrect number of objects for a track (always less by 1) (cvat-ai#7883)
-
REST API allowed to create several attributes with the same name within one label (cvat-ai#7890)
-
Job's/task's status are not updated when job's state updated to completed and stage is already acceptance (cvat-ai#7901)
-
Exception: Cannot read properties of undefined (reading 'onBlockUpdated') (cvat-ai#7913)
-
One more found way to create an empty mask (cvat-ai#7915)
-
Slice function may not work in Google Chrome < 110 (cvat-ai#7916)
-
Selecting a skeleton by cursor does not work correctly when there are some hidden points (cvat-ai#7921)
-
Quality Report calculation will now also include annotation of type Tag. (cvat-ai#7582)
-
Added feature to show tags of GT and manual job in separate row. Tags of GT job have '(GT)' in their name. (cvat-ai#7774)
-
Analytics reports calculation may be initiated manually instead of automatic scheduling (cvat-ai#7805)
-
Update the Nuclio version and related packages/libraries (cvat-ai#7787)
-
Remove keyframe button is disabled when there is only one keyframe element (cvat-ai#7844)
- The
mask_rcnn
function has been removed because it was using python3.6. In new version of Nuclio python3.6 is no longer supported. Nuclio officially recommends using python3.9. Runningmask_rcnn
on python3.9 causes errors within the function and package conflicts. (cvat-ai#7787)
-
Analytics report calculation fails with timeout because of redundant number of requests to ClickHouse (cvat-ai#7804)
-
Incorrect duration of
change:frame
event (cvat-ai#7817) -
Infinite loading cloud storage update page when a lot of cloud storages are available for a user (cvat-ai#7823)
-
Opening update CS page sends infinite requests when CS id does not exist (cvat-ai#7828)
Uploading files with TUS immediately failed when one of the requests failed (cvat-ai#7830)
-
Longer analytics report calculation because of inefficient requests to analytics db (cvat-ai#7833)
-
Cannot read properties of undefined (reading 'addClass') (cvat-ai#7834)
-
Fixed exception 'Could not read property length of undefined' when copy/paste a skeleton point (cvat-ai#7843)
-
Task creation from a video file without keyframes allowing for random iteration (cvat-ai#7838)
-
Cannot read property 'annotations' of null when uploading annotations into a job (cvat-ai#7857)
-
Vertical polyline of two points is difficult to select (cvat-ai#7860)
-
Tracked attribute values are lost when moving a task to a project (cvat-ai#7863)
- Disable the nginx server signature by default to make it slightly harder for attackers to find known vulnerabilities. (cvat-ai#7814)
-
Formats with the custom
track_id
attribute should importoutside
track shapes properly (e.g.COCO
,COCO Keypoints
,Datumaro
,PASCAL VOC
) (cvat-ai#7669) -
Inefficient resources fetching in admin panel leading to 504 Gateway Timeout (cvat-ai#7767)
-
Optimized memory usage when retrieving annotations by disabling internal Django QuerySet caching (cvat-ai#7748)
-
Annotations are not shown on the
0
frame sometimes (cvat-ai#7796) -
Extra requests in PolicyEnforcer when at least one policy is rejected, others are not checked (cvat-ai#7803)
-
Project's
updated_date
was not updated after changing annotations in jobs (cvat-ai#7808)
-
Number of objects on the frame is shown on the right sidebar (cvat-ai#7654)
-
Shortcut to switch "pinned" property (P) (cvat-ai#7709)
-
Support for
.rar
,.tar
,.gz
,.bz2
,.cpio
,.7z
archives (cvat-ai#7729)
-
Updated links to the documentation website to point to the new domain,
docs.cvat.ai
(cvat-ai#7722) -
Job and task
download_frames
now accepts custom extension for images (cvat-ai#7697)
-
Creating tasks with special characters in uploaded filename (cvat-ai#7646)
-
Find next frame with issues
ignoredhide resolved issues
setting (cvat-ai#7653) -
Objects menu is invisible for GT objects in GT job (cvat-ai#7714)
-
Missing RegisterSerializerEx
email_verification_required
andkey
parameters now are included in the server schema (cvat-ai#7635) -
Standardize the alignment of empty-list components (cvat-ai#7659)
-
Labels in WiderFace dataset example (cvat-ai#7716)
-
Export without images in Datumaro format - no empty "media" and "point_cloud" fields should be present (cvat-ai#7716)
-
Fixed the inability to rename label attributes after creating them. (cvat-ai#7670)
-
When user starts editing a mask, it becomes smoother (not pixelated) (cvat-ai#7747)
- Tooltips for long names on cards (projects, tasks, cloud storages, and models) (cvat-ai#7550)
- The
POST /api/tasks/{id}/data
endpoint no longer accepts several parameters that didn't have any useful function:size
,compressed_chunk_type
,original_chunk_type
(cvat-ai#7663)
-
Duplicated notifications for automatic annotation (cvat-ai#7595)
-
Made quality report update job scheduling more efficient (cvat-ai#7596)
-
Incorrect file name usage when importing annotations from a cloud storage (cvat-ai#7599)
-
Using single shape annotation mode with multiple labels (cvat-ai#7606)
-
Part of sidebar not visible in attribute annotation mode when there are a lot of attribute values (cvat-ai#7610)
-
Changed interpolation behavior in
annotation.py
, now correctly keep the last frame -
Insert last frame if it is key to the track, fixes data corruption when tracks crossing more than 1 jobs (cvat-ai#7615)
-
Label constructor validation of empty label names (cvat-ai#7627)
-
Incorrect alignment of empty job list component (cvat-ai#7621)
-
Remove underlying pixels feature is not applied immediately (cvat-ai#7637)
-
Corrected the formula for per-class accuracy in quality reports; the old formula is now exposed as the
jaccard_index
key (cvat-ai#7640) -
Sending
/events
request from logged-out user (cvat-ai#7608) -
Fixed accuracy being displayed incorrectly on the task analytics page (cvat-ai#7652)
-
Fixed an invalid default overlap size being selected for video tasks with small segments (cvat-ai#7681)
-
Fixed redundant jobs being created for tasks with non-zero overlap in certain cases (cvat-ai#7681)
-
Accumulation of confusion matrix across all jobs in a task when creating a quality report (cvat-ai#7604)
-
90 deg-rotated video was added with "Prefer Zip Chunks" disabled was warped, fixed using the static cropImage function. (cvat-ai#7583)
- Sped up resource updates when there are no matching webhooks (cvat-ai#7553)
-
Job and task
updated_date
are no longer bumped twice when updating annotations (cvat-ai#7556) -
Sending
PATCH /jobs/{id}/data/meta
on each job save even if nothing changed in meta data (cvat-ai#7560) -
Sending
GET /jobs/{id}/data/meta
twice on each job load (cvat-ai#7560) -
Made analytics report update job scheduling more efficient (cvat-ai#7576)
-
Fixed being unable to connect to in-mem Redis when the password includes URL-unsafe characters (cvat-ai#7577)
-
Segment anything decoder is loaded anytime when CVAT is opened, but might be not required (cvat-ai#7564)
- Single shape annotation mode allowing to easily annotate scenarious where a user only needs to draw one object on one image (cvat-ai#7486)
-
Fixed a problem with Korean/Chinese characters in attribute annotation mode (cvat-ai#7380)
-
Fixed incorrect working time calculation in the case where an event occurred during another event (cvat-ai#7511)
-
Fixed working time not being calculated for the first event in each batch sent from the UI (cvat-ai#7511)
-
Submit button is enabled while creating a ground truth job (cvat-ai#7540)
- Added
dataset:export
anddataset:import
events that are logged when the user initiates an export or import of a project, task or job (cvat-ai#7476)
- Now menus in the web interface are triggered by click, not by hover as before (cvat-ai#7431)
- Removed support for the TFRecord dataset format (cvat-ai#7416)
-
On quality page for a task, only the first page with jobs has quality report metrics (cvat-ai#7441)
-
Side effects of data changes, such as the sending of webhooks, are no longer triggered until after the changes have been committed to the database (cvat-ai#7460, cvat-ai#7477)
-
The "message" field of the payload of send:exception events no longer includes a trailing linebreak (cvat-ai#7407)
-
Annotation guide is opened automatically if not seen yet when the job is "new annotation" (cvat-ai#7410)
-
Annotation guide will be opened automatically if this is specified in a link
/tasks/<id>/jobs/<id>?openGuide
(cvat-ai#7410) -
Reduced number of server requests, made by clients (cvat-ai#7446)
-
Server exception rest_framework.exceptions.NotAuthenticated is not logged by analytics anymore (cvat-ai#7457)
-
Prevented zombie processes from accumulating in the Kvrocks container (cvat-ai#7412)
-
Fix Redis exceptions crashing the
/api/server/health/
endpoint (cvat-ai#7417) -
Unhandled exception "Cannot read properties of null (reading 'plot')" (cvat-ai#7422)
-
Unhandled exception "Cannot read properties of undefined (reading 'toLowerCase')" (cvat-ai#7421)
- Enhanced errors messaging for better perception by users (cvat-ai#7331)
-
Empty masks might be created with
polygon-minus
tool (cvat-ai#7295) -
Empty masks might be created as a result of removing underlying pixels (cvat-ai#7295)
-
Fixed excessive memory usage when exporting a project with multiple video tasks (cvat-ai#7374)
-
OpenCV tracker MIL works one frame behind (cvat-ai#7399)
- KeyDB used as data cache replaced by Kvrocks (cvat-ai#7339)
-
504 Timeout error when exporting resources to cloud storage (cvat-ai#7317)
-
Enqueuing deferred jobs when their dependencies have been started -> cancelled -> restarted -> finished (cvat-ai#7317)
-
UI failed when open context menu for a skeleton element on a frame with a conflict (cvat-ai#7362)
-
Issue can not be created for a skeleton element in review mode (cvat-ai#7362)
-
When the
ORG_INVITATION_CONFIRM
setting is enabled, organization invitations for existing users are no longer accepted automatically. Instead, the invitee can now review the invitation and choose to accept or decline it. (cvat-ai#7138) -
[Compose, Helm] Updated Clickhouse to version 23.11.* (cvat-ai#7268)
-
Job queues are now stored in a dedicated Redis instance (cvat-ai#7245)
- PermissionDenied error thrown before OPA call in case if user is not a member of organization (cvat-ai#7259)
-
Can not input Chinese correctly in text attributes on objects sidebar (cvat-ai#6916)
-
Restored Compose file compatibility with Docker Compose 2.17.0 and earlier (cvat-ai#7170)
-
Attaching GCS and AWS S3 buckets with dots in name (cvat-ai#7227)
-
Annotation actions are applied to the objects from a ground truth job (cvat-ai#7281)
-
Ground truth objects removed together with annotation objects when press "Remove annotations" in menu (cvat-ai#7281)
-
Frame search by a filter is affected by ground truth annotations (cvat-ai#7281)
-
Creating duplicating annotations when nginx throws 504 timeout status (workaround) (cvat-ai#7286)
-
TIFF
images are saved asJPEG
images with.tif
extension in original chunks (cvat-ai#7100) -
EXIF rotated TIFF images are handled incorrectly (cvat-ai#7100)
-
RQ Scheduler launch, broken in PR 7245 (cvat-ai#7293)
-
UI crashes if user highligts conflict related to annotations hidden by a filter (cvat-ai#7299)
-
Annotations conflicts are not highligted properly on the first frame of a job (cvat-ai#7299)
-
Error message
Edge's nodeFrom ${dataNodeFrom} or nodeTo ${dataNodeTo} do not to refer to any node
when upload a file with some abscent skeleton nodes (cvat-ai#7302) -
Wrong context menu position in skeleton configurator (Firefox only) (cvat-ai#7302)
-
Fixed console error
(Error: <rect> attribute width: A negative value is not valid
appearing when skeleton with all outside elements is created (cvat-ai#7302) -
Updating cloud storage attached to CVAT using Azure connection string (cvat-ai#7336)
-
Introduced CVAT actions. Actions allow performing different predefined scenarios on annotations automatically (e.g. shape converters) (cvat-ai#7172)
-
The UI will now retry requests that were rejected due to rate limiting (cvat-ai#7216)
-
Update nvidia/cuda image version from 11.7.0 to 11.7.1 in transt serverless function. (cvat-ai#7124)
-
[Helm] Allow pre-release versions in kubernetes requirement to include AWS EKS versions (cvat-ai#7183)
-
GPU versions of serverless functions now use the
latest-gpu
Docker tag rather thanlatest
(cvat-ai#7215) -
[Compose, Helm] Downgraded KeyDB to 6.3.2 (cvat-ai#7236)
-
The GPU version of the YOLOv7 serverless function not actually using the GPU (cvat-ai#6940)
-
It is now possible to create Ground Truth jobs containing all frames in the task (cvat-ai#7126)
-
Incorrect Ground Truth chunks saving (cvat-ai#7126)
-
Reset source/target storage if related cloud storage has been deleted (cvat-ai#6801)
-
Prevent possible cyclic dependencies when enqueuing a rq job when ONE_RUNNING_JOB_IN_QUEUE_PER_USER is used (cvat-ai#7139)
-
Enqueue deferred jobs when their dependencies are moved to the failed job registry due to AbandonedJobError (cvat-ai#7139)
-
Reduce the number of requests to the server for task details (cvat-ai#7167)
-
Shape settings opacity and selected opacity reset on each frame change (cvat-ai#7186)
-
Server error in list quality settings API, when called in an org (cvat-ai#7190)
-
Incorrect handling of the hidden points in skeletons in quality comparisons (cvat-ai#7191)
-
[Helm] Fixed installing Traefik Middleware even if Traefik is disabled in the values (cvat-ai#7184)
-
Error code 500 when send
change:frame
event withoutduration
. (cvat-ai#7211) -
Added workaround for corrupted cached chunks (cvat-ai#7243, cvat-ai#7251)
This release has changes only in the Enterprise version.
-
CVAT now supports serverless Nuclio functions that return skeleton annotations. We've added a keypoint detector that supports skeletons for the following classes: body, head, foot, and hands. Deployment command:
./deploy_cpu.sh pytorch/mmpose/hrnet32/nuclio/
(cvat-ai#7033) -
Implemented a feature that allows slicing one polygon/mask shape into two parts (cvat-ai#7084)
-
Implemented a feature that allows joining several masks into a single one (cvat-ai#7084)
-
[Helm] Introduced values that apply to all backend deployments/jobs (cvat-ai#7148)
-
The "use cache" option on the server is now ignored when creating a task with cloud storage data (cvat-ai#7087)
-
The Docker Compose file and Helm chart have been updated to enable Traefik access logs by default and change the log format to JSON (cvat-ai#7109)
-
[Helm] The PersistentVolumeClaim for the volume used to hold application data is now retained after uninstall (cvat-ai#7123)
-
[Helm] All backend-related deployments now use
cvat-app
as the value for theapp
label (cvat-ai#7127) -
[Helm] The minimum compatible Kubernetes version is now 1.19.0 (cvat-ai#7132)
-
[Helm] The CVAT hostname can now be configured with
ingress.hostname
option (cvat-ai#7132) -
[Helm] The
ingress.tls
configuration has been reworked. (cvat-ai#7132) -
[Helm] The Traefik subchart updated to 25.0.0 (appVersion v2.10.5) (cvat-ai#7132)
-
[Docker Compose] Traefik updated to v2.10.* (cvat-ai#7150)
-
Support for V1 cloudstorages/id/content endpoint (cvat-ai#6946)
-
[Helm]
ingress.hosts
has been removed, useingress.hostname
instead. (cvat-ai#7132)
-
Fixed a data race condition during GT job creation (cvat-ai#7096)
-
Resolved an issue where the job state could not be changed multiple times without reloading the annotation view (cvat-ai#7158)
-
Corrected an issue where compressed chunks did not utilize the Exif rotation tag (cvat-ai#7162)
-
Minor styling issues on empty models page (cvat-ai#7164)
-
Fixed minor issue when brush marker is appended to a final mask (cvat-ai#7168)
- OpenCV runtime initialization (cvat-ai#7101)
-
Support for default bucket prefix (cvat-ai#6943)
-
Search for cloud storage and share files (cvat-ai#6943)
-
Ability to limit one user to one task at a time (cvat-ai#6975)
-
Support for using an external database in a Docker Compose-based deployment (cvat-ai#7055)
-
Migrated to rq 1.15.1 (cvat-ai#6975)
-
Compressed sequental
change:frame
events into one (cvat-ai#7048) -
Create a local session for AWS S3 client instead of using the default global one (cvat-ai#7067)
-
Improved performance of chunk preparation when creating tasks (cvat-ai#7081)
-
Race condition in a task data upload request, which may lead to problems with task creation in some specific cases, such as multiple identical data requests at the same time (cvat-ai#7025)
-
Bug with viewing dependent RQ jobs for downloading resources from cloud storage when file path contains sub-directories. This is relevant for admins that can view detailed information about RQ queues. (cvat-ai#6975)
-
OpenCV.js memory leak with TrackerMIL (cvat-ai#7032)
-
Can't deploy detectron serverless function (cvat-ai#7047)
-
A mask becomes visible even if hidden after changing opacity level (cvat-ai#7060)
-
There is no switcher to personal workspace if an organization request failed (cvat-ai#7063)
-
A new feature allowing users to invite others to the organization via email. (cvat-ai#6901)
-
[SDK] In the SDK, a parameter has been introduced to
TaskDataset
which enables the option to disable annotation loading (cvat-ai#7019) -
A test has been incorporated for retrieving bucket content in cases where the bucket includes manually created directories. (cvat-ai#7018)
-
The maximum length of the secret access key has been increased to 64 characters. (cvat-ai#6701)
-
The client will no longer load all organizations upon start (cvat-ai#7004)
-
The default value for Zookeeper from the Clickhouse subchart has been set to disabled. (cvat-ai#7003)
- The endpoints
/api/projects
,/api/tasks
, and/api/jobs
will no longer return information regarding the count of labels. This information was complicating SQL queries, making them hard to optimize. Instead, use/api/labels?task_id=tid
or/api/labels?project_id=pid
. (cvat-ai#6918)
-
Issues causing potential double-sized file writes during task data uploading have been addressed. (cvat-ai#6952)
-
Issues encountered when retrieving CS content from GCS buckets containing manually created directories have been resolved. (cvat-ai#7006)
-
[SDK] In the SDK,
cvat_sdk.auto_annotation.annotate_task
has been optimized to avoid unnecessary fetching of existing annotations. (cvat-ai#7019) -
The project/task/job update time is now correctly modified upon label updates. (cvat-ai#6958)
-
Enabled nginx proxy buffering (cvat-ai#6991)
-
Helm: set memory request for keydb (cvat-ai#6945)
-
Supervisord (cvat-ai#6945):
- added
autorestart=true
option for all workers - unified program names to use dashes as delimiter instead of mixed '_' and '-'
- minor improvements to supervisor configurations
- added
- Removed gitter link from about modal (cvat-ai#7002)
-
Persist image filters across jobs (cvat-ai#6953)
-
Splitting skeleton tracks on jobs (cvat-ai#6968)
-
Uploading skeleton tracks in COCO Keypoints format (cvat-ai#6969)
-
Fixed Siammask tracker error on grayscale images (cvat-ai#6982)
-
Fixed memory leak on client side when event listener was not removed together with its context (cvat-ai#6984)
-
Fixed crash related to issue tries to mount to not existing parent (cvat-ai#6977)
-
Added 'notranslate' markers to avoid issues caused by extension translators (cvat-ai#6993)
-
Getting CS content when S3 bucket contains manually created directories (cvat-ai#6997)
-
Optimized huge memory consumption when working with masks in the interface (cvat-ai#6996)
-
Security upgrade opencv-python-headless from 4.5.5.62 to 4.8.1.78 (cvat-ai#6931)
-
Added X-Frame-Options: deny (cvat-ai#6992)
- Temporary workaround to fix corrupted zip file (cvat-ai#6965)
- The latest comment displayed in issues sidebar (cvat-ai#6937)
- It was not possible to copy issue comment from issue dialog (cvat-ai#6937)
- Update Grafana from 9.3.6 to 10.1.2
- New , form-based Issue templates for Github repository
- Functionality for synchronizing a task with a Git repository (cvat-ai#6904)
- PCD files with nan values could not be opened on 3D workspace (cvat-ai#6862)
- Fixed direct navigation to neightbour chunk on 3D workspace (cvat-ai#6862)
- Intencity level from .bin lidar data ignored when converting .bin -> .pcd (cvat-ai#6862)
- Incorrectly determined video frame count when the video contains an MP4 edit list (cvat-ai#6929)
- Internal server error when retrieving data from CS and cache=True (cvat-ai#6932)
- Security upgrade Pillow from 9.3.0 to 10.0.1 (cvat-ai#6907)
- Security update cryptography from 41.0.3 to 41.0.4 (cvat-ai#6914)
- Do not reload annotation view when renew the job or update job state (cvat-ai#6851)
- Now images from cloud buckets are loaded in parallel when preparing a chunk (cvat-ai#6881)
- Downloading additional data from cloud storage if use_cache=true and job_file_mapping are specified (cvat-ai#6879)
- Leaving an organization (cvat-ai#6422)
- Order of images in annotation file when dumping project in CVAT format (cvat-ai#6927)
- Validation on Cloud Storage form / error message on create task form (cvat-ai#6890)
- Include cloud storage manifest file to selected files if manifest was used as data source (cvat-ai#6850)
- Keep sequence of files when directories were specified in server_files (cvat-ai#6850)
- Admin actions for easy activation/deactivation of users (cvat-ai#6314)
- Invalid input validation in for
cloud_storage_id
(cvat-ai#6825) - Incorrect task progress report for 3rdparty users (cvat-ai#6834)
- Security upgrade gitpython from 3.1.33 to 3.1.35 (cvat-ai#6843)
- Security upgrade numpy from 1.22.0 to 1.22.4 (cvat-ai#6843)
- Gamma correcton filter (cvat-ai#6771)
- Introduced the feature to hide or show objects in review mode (cvat-ai#6808)
- [Helm] Database migrations are now executed as a separate job, rather than in the server pod, to mitigate the risk of data corruption when using multiple server replicas (cvat-ai#6780)
- Clicking multiple times on icons in the left sidebar now toggles the corresponding popovers open and closed (cvat-ai#6817)
- Transitioned to using KeyDB with FLASH for data chunk caching, replacing diskcache (cvat-ai#6773)
- Removed outdated use of hostnames when accessing Git, OpenCV, or analytics via the UI (cvat-ai#6799)
- Removed the Feedback/Share component (cvat-ai#6805)
- Resolved the issue of the canvas zooming while scrolling through the comments list in an issue (cvat-ai#6758)
- Addressed the bug that allowed for multiple issue creations upon initial submission (cvat-ai#6758)
- Fixed the issue of running deep learning models on non-JPEG compressed TIFF images (cvat-ai#6789)
- Adjusted padding on the tasks, projects, and models pages (cvat-ai#6778)
- Corrected hotkey handlers to avoid overriding default behavior when modal windows are open (cvat-ai#6800)
- Resolved the need to move the mouse to activate brush or eraser effects; a single click is now sufficient (cvat-ai#6800)
- Fixed a memory leak issue in the logging system (cvat-ai#6804)
- Addressed a race condition that occurred during the initial creation of
secret_key.py
(cvat-ai#6775) - Eliminated duplicate log entries generated by the CVAT server (cvat-ai#6766)
- More information about task progress on tasks page (cvat-ai#5723)
- Prefetching next chunk when user navigates by frames manually (cvat-ai#6695)
- Bumped nuclio version to 1.11.24 and removed
/tmp
mounting in the nuclio container to adhere the update. - Response code for empty cloud storage preview 204 -> 404 (cvat-ai#6727)
- Organization now opened immediately after it is created (cvat-ai#6705)
- More responsive automatic annotation progress bar (cvat-ai#6734)
- Improved message when invite more users to an organization (cvat-ai#6731)
- Exporting project when its tasks has not data (cvat-ai#6658)
- Removing job assignee (cvat-ai#6712)
- UI fail when select a mask or a skeleton with center-aligned text (cvat-ai#6753)
- Fixed switching from organization to sandbox while getting a resource (cvat-ai#6689)
- You do not have permissions when user is cancelling automatic annotation (cvat-ai#6734)
- Automatic annotation progress bar is invisible if the app initialized on the task page (cvat-ai#6734)
- Extra status check requests for automatic annotation (cvat-ai#6734)
- [SDK]:
FileExistsError
exception raised on Windows when a dataset is loaded from cache (cvat-ai#6722)
- Remote Code Execution (RCE) SNYK-PYTHON-GITPYTHON-5840584
- [SDK] Introduced the
DeferredTqdmProgressReporter
class, which avoids the glitchy output seen with theTqdmProgressReporter
under certain circumstances (cvat-ai#6556) - [SDK, CLI] Added the
cvat_sdk.auto_annotation
module, providing functionality to automatically annotate tasks by executing a user-provided function on the local machine. A corresponding CLI command (auto-annotate
) is also available. Some predefined functions using torchvision are also available. (cvat-ai#6483, cvat-ai#6649) - Included an indication for cached frames in the interface (cvat-ai#6586)
- Raised the default guide assets limitations to 30 assets, with a maximum size of 10MB each (cvat-ai#6575)
- [SDK] Custom
ProgressReporter
implementations should now overridestart2
instead ofstart
The old implementation is still supported. (cvat-ai#6556) - Improved memory optimization and code in the decoding module (cvat-ai#6585)
- Removed the YOLOv5 serverless function (cvat-ai#6618)
- Corrected an issue where the prebuilt FFmpeg bundled in PyAV was being used instead of the custom build.
- Fixed the filename for labels in the CamVid format (cvat-ai#6600)
- We've added support for multi-line text attributes (cvat-ai#6458)
- You can now set a default attribute value for SELECT, RADIO types on UI (cvat-ai#6474)
- [SDK]
cvat_sdk.datasets
, is now available, providing a framework-agnostic alternative tocvat_sdk.pytorch
(cvat-ai#6428) - We've introduced analytics for Jobs, Tasks, and Project (cvat-ai#6371)
- [Helm] In Helm, we've added a configurable default storage option to the chart (cvat-ai#6137)
- [Helm] In Helm, we've eliminated the obligatory use of hardcoded traefik ingress (cvat-ai#6137)
- Fixed an issue with calculating the number of objects on the annotation view when frames are deleted (cvat-ai#6493)
- [SDK] In SDK, we've fixed the issue with creating attributes with blank default values (cvat-ai#6454)
- [SDK] We've corrected a problem in SDK where it was altering input data in models (cvat-ai#6455)
- Fixed exporting of hash for shapes and tags in a specific corner case (cvat-ai#6517)
- Resolved the issue where 3D jobs couldn't be opened in validation mode (cvat-ai#6507)
- Fixed SAM plugin (403 code for workers in organizations) (cvat-ai#6514)
- Fixed the issue where initial frame from query parameter was not opening specific frame in a job (cvat-ai#6506)
- Corrected the issue with the removal of the first keyframe (cvat-ai#6494)
- Fixed the display of project previews on small screens and updated stylelint & rules (cvat-ai#6551)
- Implemented server-side validation for attribute specifications (cvat-ai#6447)
- [API] Fixed API issue related to file downloading failures for filenames with special characters (cvat-ai#6492)
- [Helm] In Helm, we've resolved an issue with multiple caches in the same RWX volume, which was preventing db migration from starting (cvat-ai#6137)
- Memory leak related to unclosed av container (cvat-ai#6501)
- Now CVAT supports project/task markdown description with additional assets (png, jpeg, gif, webp images and pdf files) (cvat-ai#6191)
- Ground Truth jobs and quality analytics for tasks (cvat-ai#6039)
- The problem with manifest file in tasks restored from backup (cvat-ai#5971)
- The problem with task mode in a task restored from backup (cvat-ai#5668)
- Visible 'To background' button in review mode (cvat-ai#6363)
- Added missed auto_add argument to Issue model (cvat-ai#6364)
- [API] Performance of several API endpoints (cvat-ai#6340)
- [API] Invalid schema for the owner field in several endpoints (cvat-ai#6343)
- Some internal errors occurring during lambda function invocations could be mistakenly reported as invalid requests (cvat-ai#6394)
- [SDK] Loading tasks that have been cached with the PyTorch adapter (cvat-ai#6047)
- The problem with importing annotations if dataset has extra dots in filenames (cvat-ai#6350)
- More comprehensive SSRF mitigations were implemented.
Previously, on task creation it was prohibited to specify remote data URLs
with hosts that resolved to IP addresses in the private ranges.
Now, redirects to such URLs are also prohibited.
In addition, this restriction is now also applied to webhook URLs.
System administrators can allow or deny custom IP address ranges
with the
SMOKESCREEN_OPTS
environment variable. (cvat-ai#6362).
- Error related to calling serverless functions on some image formats (cvat-ai#6384)
- Getting original chunks for items in specific cases (cvat-ai#6355)
- [API] API Now supports the creation and removal of Ground Truth jobs. (cvat-ai#6204)
- [API] We've introduced task quality estimation endpoints. (cvat-ai#6204)
- [CLI] An option to select the organization. (cvat-ai#6317)
- Issues with running serverless models for EXIF-rotated images. (cvat-ai#6275)
- File uploading issues when using https configuration. (cvat-ai#6308)
- Dataset export error with
outside
property of tracks. (cvat-ai#5971) - Broken logging in the TransT serverless function. (cvat-ai#6290)
- [Server API] An option to supply custom file ordering for task data uploads (cvat-ai#5083)
- New option
semi-auto
is available as annotations source (cvat-ai#6263)
- Allowed to use dataset manifest for the
predefined
sorting method for task data (cvat-ai#5083)
- Replaced Apache mod_wsgi with Uvicorn ASGI server for backend use(cvat-ai#6195)
- Incorrect location of temporary file during job annotation import.(cvat-ai#5909)
- Deletion of uploaded file along with annotations/backups when an RQ job has been initiated, but no subsequent status check requests have been made.(cvat-ai#5909)
- Deletion of uploaded files, including annotations and backups, after they have been uploaded to the server using the TUS protocol but before an RQ job has been initiated. (cvat-ai#5909)
- Simultaneous creation of tasks or projects with identical names from backups by multiple users.(cvat-ai#5909)
- [API] The
predefined
sorting method for task data uploads (cvat-ai#5083) - Allowed slashes in export filenames. (cvat-ai#6265)
- Integrated support for sharepoint and cloud storage files, along with directories to be omitted during task creation (server) (cvat-ai#6074)
- Enabled task creation with directories from cloud storage or sharepoint (cvat-ai#6074)
- Enhanced task creation to support any data type supported by the server
by default, from cloud storage without the necessity for the
use_cache
option (cvat-ai#6074) - Added capability for task creation with data from cloud storage without the
use_cache
option (cvat-ai#6074)
- User can now access resource links from any organization or sandbox, granted it's available to them (cvat-ai#5892)
- Cloud storage manifest files have been made optional (cvat-ai#6074)
- Updated Django to the 4.2.x version (cvat-ai#6122)
- Renamed certain Nuclio functions to adhere to a common naming convention. For instance,
onnx-yolov7
->onnx-wongkinyiu-yolov7
,ultralytics-yolov5
->pth-ultralytics-yolov5
(cvat-ai#6140)
- Deprecated the endpoint
/cloudstorages/{id}/content
(cvat-ai#6074)
- Fixed the issue of skeletons dumping on created tasks/projects (cvat-ai#6157)
- Resolved an issue related to saving annotations for skeleton tracks (cvat-ai#6075)
- Introduced a new configuration option for controlling the invocation of Nuclio functions. (cvat-ai#6146)
- Relocated SAM masks decoder to frontend operation. (cvat-ai#6019)
- Switched
person-reidentification-retail-0300
andfaster_rcnn_inception_v2_coco
Nuclio functions withperson-reidentification-retail-0277
andfaster_rcnn_inception_resnet_v2_atrous_coco
respectively. (cvat-ai#6129) - Upgraded OpenVINO-based Nuclio functions to utilize the OpenVINO 2022.3 runtime. (cvat-ai#6129)
- Resolved issues with tracking multiple objects (30 and more) using the TransT tracker. (cvat-ai#6073)
- Addressed azure.core.exceptions.ResourceExistsError: The specified blob already exists. (cvat-ai#6082)
- Corrected image scaling issues when transitioning between images of different resolutions. (cvat-ai#6081)
- Fixed inaccurate reporting of completed job counts. (cvat-ai#6098)
- Allowed OpenVINO-based Nuclio functions to be deployed to Kubernetes. (cvat-ai#6129)
- Improved skeleton size checks after drawing. (cvat-ai#6156)
- Fixed HRNet CPU serverless function. (cvat-ai#6150)
- Prevented sending of empty list of events. (cvat-ai#6154)
- Docker images no longer include Ubuntu package sources or FFmpeg/OpenH264 sources (cvat-ai#6040)
- TUS chunk size changed from 100 MB to 2 MB (cvat-ai#6058)
- Support for Azure Blob Storage connection string authentication(cvat-ai#4649)
- Segment Anything interactor for CPU/GPU (cvat-ai#6008)
- The capability to transfer a task from one project to another project has been disabled (cvat-ai#5901)
- The bounding rectangle in the skeleton annotation is visible solely when the skeleton is active (cvat-ai#5911)
- Base backend image upgraded from ubuntu:20.04 to ubuntu:22.04 (cvat-ai#6021)
- TDB
- Cloud storage
unique_together
limitation (cvat-ai#5855) - Support for redundant request media types in the API (cvat-ai#5874)
- Static URLs and direct SDK support for the tus chunk endpoints.
Clients must use the
Location
header from the response to theUpload-Length
request, as per the tus creation protocol (cvat-ai#5961)
- An invalid project/org handling in webhooks (cvat-ai#5707)
- Warning
key
is undefined on project page (cvat-ai#5876) - An invalid mask detected when performing automatic annotation on a task (cvat-ai#5883)
- The 'Reset zoom' option now retains the user's preferences upon reloading CVAT (cvat-ai#5908)
- Cloud storage content listing when the manifest name contains special characters (cvat-ai#5873)
- Width and height in CVAT dataset format mask annotations (cvat-ai#5905)
- Empty list of export formats for a project without tasks (cvat-ai#5899)
- Downgraded NumPy used by HRNet because
np.int
is no longer available (cvat-ai#5574) - Empty previews responsive to page resize (cvat-ai#5925)
- Nuclio function invocations when deployed via the Helm chart (cvat-ai#5626)
- Export of a job from a task with multiple jobs (cvat-ai#5928)
- Points missing when exporting tracked skeleton (cvat-ai#5497)
- Escaping in the
filter
parameter in generated URLs (cvat-ai#5566) - Rotation property lost during saving a mutable attribute (cvat-ai#5968)
- Optimized /api/jobs request (cvat-ai#5962)
- Server micro version support check in SDK/CLI (cvat-ai#5991)
- [SDK] Compatibility with upcoming urllib 2.1.0 (cvat-ai#6002)
- Fix TUS file uploading if multiple apache processes are used (cvat-ai#6006)
- The issue related to webhook events not being sent has been resolved (cvat-ai#5916)
- Updated Redis (in the Compose file) to 7.0.x, and redis-py to 4.5.4 (cvat-ai#6016)
- Optimized annotation fetching up to 10 times (cvat-ai#5974)
- Incorrect calculation of working time in analytics (cvat-ai#5973)
- [SDK] An arg to wait for data processing in the task data uploading function (cvat-ai#5502)
- Filename pattern to simplify uploading cloud storage data for a task (cvat-ai#5498, cvat-ai#5525)
- [SDK] Configuration setting to change the dataset cache directory (cvat-ai#5535)
- [SDK] Class to represent a project as a PyTorch dataset (cvat-ai#5523)
- Grid view and multiple context images supported (cvat-ai#5542)
- Interpolation is now supported for 3D cuboids.
- Tracks can be exported/imported to/from Datumaro and Sly Pointcloud formats (cvat-ai#5629)
- Support for custom file to job splits in tasks (server API & SDK only) (cvat-ai#5536)
- [SDK] A PyTorch adapter setting to disable cache updates (cvat-ai#5549)
- YOLO v7 serverless feature added using ONNX backend (cvat-ai#5552)
- Cypress test for social account authentication (cvat-ai#5444)
- Dummy github and google authentication servers (cvat-ai#5444)
- [Server API] Simple filters for object collection endpoints (cvat-ai#5575)
- Analytics based on Clickhouse, Vector and Grafana instead of the ELK stack (cvat-ai#5646)
- [SDK] High-level API for working with organizations (cvat-ai#5718)
- Use correct service name in LDAP authentication documentation (cvat-ai#5848)
- The Docker Compose files now use the Compose Specification version of the format. This version is supported by Docker Compose 1.27.0+ (cvat-ai#5524).
- [SDK] The
resource_type
args now have the default value oflocal
in task creation functions. The corresponding arguments are keyword-only now. (cvat-ai#5502) - [Server API] Added missing pagination or pagination parameters in
/jobs/{id}/commits
,/organizations
(cvat-ai#5557) - Windows Installation Instructions adjusted to work around nuclio/nuclio#1821
- The contour detection function for semantic segmentation (cvat-ai#4665)
- Delete newline character when generating a webhook signature (cvat-ai#5622)
- DL models UI (cvat-ai#5635)
- [Server API], [SDK] Arbitrary-sized collections in endpoints:
/api/projects/{id}.tasks
,/api/tasks/{id}.segments
,/api/jobs/{id}.issues
,/api/issues/{id}.comments
,/api/projects | tasks | jobs/{id}.labels
(cvat-ai#5662) - Hide analytics link from non-admin users (cvat-ai#5789)
- Hide notifications on login/logout/register (cvat-ai#5788)
- CVAT and CVAT SDK now use a custom
User-Agent
header in HTTP requests (cvat-ai#5598)
- TBD
- [Server API] Endpoints with collections are removed in favor of their full variants
/project/{id}/tasks
,/tasks/{id}/jobs
,/jobs/{id}/issues
,/issues/{id}/comments
. Corresponding fields are added or changed to provide a link to the child collection in/projects/{id}
,/tasks/{id}
,/jobs/{id}
,/issues/{id}
(cvat-ai#5575) - Limit on the maximum number of manifest files that can be added for cloud storage (cvat-ai#5660)
- Helm: Empty password for Redis (cvat-ai#5520)
- Resolved HRNet serverless function runtime error on images with an alpha channel (cvat-ai#5570)
- Addressed ignored preview & chunk cache settings (cvat-ai#5569)
- Fixed exporting annotations to Azure container (cvat-ai#5596)
- Corrected the type of the credentials parameter of
make_client
in the Python SDK - Reduced noisy information in ortho views for 3D canvas (cvat-ai#5608)
- Cleared disk space after project removal (cvat-ai#5632, cvat-ai#5752)
- Locked submit button when file is not selected during dataset import (cvat-ai#5757)
- [Server API]Various errors in the generated schema (cvat-ai#5575)
- Resolved browser freezing when requesting a job with NaN id (cvat-ai#5763)
- Fixed SiamMask and TransT serverless functions (cvat-ai#5658)
- Addressed creation of a project or task with the same labels (cvat-ai#5700)
- [Server API] Fixed ability to rename label to an existing name (cvat-ai#5662)
- Resolved issue of resetting attributes when moving a task to a project (cvat-ai#5764)
- Fixed error in dataset export when parsing skeleton sublabels containing spaces (cvat-ai#5794)
- Added missing
CVAT_BASE_URL
in docker-compose.yml (cvat-ai#5792) - Create cloud storage button size and models pagination (cvat-ai#5858)
- Fixed vulnerability with social authentication (cvat-ai#5521)
- SDK section in documentation (cvat-ai#4928)
- Option to enable or disable host certificate checking in CLI (cvat-ai#4928)
- REST API tests with skeletons (cvat-ai#4987)
- Host schema auto-detection in SDK (cvat-ai#4910)
- Server compatibility checks in SDK (cvat-ai#4935)
- Objects sorting option in the sidebar, by z-order. Additional visualization when sorting is applied (cvat-ai#5145)
- Added YOLOv5 serverless function with NVIDIA GPU support (cvat-ai#4960)
- Mask tools now supported (brush, eraser, polygon-plus, polygon-minus, returning masks from online detectors & interactors) (cvat-ai#4543)
- Added Webhooks (cvat-ai#4863)
- Authentication with social accounts: Google & GitHub (cvat-ai#5147, cvat-ai#5181, cvat-ai#5295)
- REST API tests for exporting job datasets & annotations and validating their structure (cvat-ai#5160)
- Backward propagation on UI (cvat-ai#5355)
- Keyboard shortcut to delete a frame (Alt + Del) (cvat-ai#5369)
- PyTorch dataset adapter layer in the SDK (cvat-ai#5417)
- Method for debugging the server deployed with Docker (cvat-ai#5327)
api/docs
,api/swagger
,api/schema
,server/about
endpoints now allow unauthorized access (cvat-ai#4928, cvat-ai#4935)- 3D canvas now can be dragged in IDLE mode (cvat-ai#5385)
- Datumaro version is upgraded to 0.3 (dev) (cvat-ai#4984)
- Allowed trailing slashes in the SDK host address (cvat-ai#5057)
- Adjusted initial camera position, enabled 'Reset zoom' option for 3D canvas (cvat-ai#5395)
- Enabled authentication via email (cvat-ai#5037)
- Unified error handling with the cloud storage (cvat-ai#5389)
- In the SDK, functions taking paths as strings now also accept path-like objects (cvat-ai#5435)
- The
--https
option of CLI (cvat-ai#4910)
- Significantly optimized access to DB for api/jobs, api/tasks, and api/projects.
- Removed a possibly duplicated encodeURI() calls in
server-proxy.ts
to prevent doubly encoding non-ascii paths while adding files from "Connected file share" (issue #4428) - Removed unnecessary volumes defined in docker-compose.serverless.yml (cvat-ai#4659)
- Added support for Image files that use the PIL.Image.mode 'I;16'
- Project import/export with skeletons (cvat-ai#4867, cvat-ai#5004)
- Shape color is not changed on canvas after changing a label (cvat-ai#5045)
- Unstable e2e restore tests (cvat-ai#5010)
- IOG and f-BRS serverless function (cvat-ai#5039)
- Invisible label item in label constructor when label color background is white, or close to it (cvat-ai#5041)
- Fixed cvat-core ESlint problems (cvat-ai#5027)
- Fixed task creation with non-local files via the SDK/CLI (cvat-ai#4962)
- HRNET serverless function (cvat-ai#4944)
- Invalid export of segmentation masks when the
background
label gets nonzero id (cvat-ai#5056) - A trailing slash in hostname doesn't allow SDK to send some requests (cvat-ai#5057)
- Double modal export/backup a task/project (cvat-ai#5075)
- Fixed bug of computing Job's unsolved/resolved issues numbers (cvat-ai#5101)
- Dataset export for job (cvat-ai#5052)
- Angle is not propagated when use
propagate
feature (cvat-ai#5139) - Could not fetch task in a corner case (cvat-ai#5163)
- Restoring CVAT in case of React-renderning fail (cvat-ai#5134)
- Deleted frames become restored if a user deletes frames from another job of the same task (cvat-ai#5138)
- Wrong issue position when create a quick issue on a rotated shape (cvat-ai#5162)
- Extra rerenders of different pages with each click (cvat-ai#5178)
- Skeleton points exported out of order in the COCO Keypoints format (cvat-ai#5048)
- PASCAL VOC 1.1 can't import dataset (cvat-ai#4647)
- Changing an object causes current z layer to be set to the maximum (cvat-ai#5145)
- Job assignee can not resolve an issue (cvat-ai#5167)
- Create manifest with cvat/server docker container command (cvat-ai#5172)
- Cannot assign a resource to a user who has an organization (cvat-ai#5218)
- Logs and annotations are not saved when logout from a job page (cvat-ai#5266)
- Added "type" field for all the labels, allows to reduce number of controls on annotation view (cvat-ai#5273)
- Occluded not applied on canvas instantly for a skeleton elements (cvat-ai#5259)
- Oriented bounding boxes broken with COCO format ss(cvat-ai#5219)
- Can't dump annotations with objects type is track from several jobs (cvat-ai#5250)
- Fixed upload resumption in production environments (cvat-ai#4839)
- Fixed job exporting (cvat-ai#5282)
- Visibility and ignored information fail to be loaded (MOT dataset format) (cvat-ai#5270)
- Added force logout on CVAT app start if token is missing (cvat-ai#5331)
- Drawing issues on 3D canvas (cvat-ai#5410)
- Missed token with using social account authentication (cvat-ai#5344)
- Redundant writing of skeleton annotations (CVAT for images) (cvat-ai#5387)
- The same object on 3D scene or
null
selected each click (PERFORMANCE) (cvat-ai#5411) - An exception when run export for an empty task (cvat-ai#5396)
- Fixed FBRS serverless function runtime error on images with alpha channel (cvat-ai#5384)
- Attaching manifest with custom name (cvat-ai#5377)
- Uploading non-zip annotation files (cvat-ai#5386)
- Loss of rotation in CVAT format (cvat-ai#5407)
- A permission problem with interactive model launches for workers in orgs (cvat-ai#4996)
- Fix chart not being upgradable (cvat-ai#5371)
- Broken helm chart - if using custom release name (cvat-ai#5403)
- Missing source tag in project annotations (cvat-ai#5408)
- Creating a task with a Git repository via the SDK (cvat-ai#4365)
- Queries via the low-level API using the
multipart/form-data
Content-Type with string fields (cvat-ai#5479) - Skeletons cannot be added to a task or project (cvat-ai#5813)
Project.import_dataset
not waiting for completion correctly (cvat-ai#5459)
- Added ability to delete frames from a job based on (cvat-ai#4194)
- Support of attributes returned by serverless functions based on (cvat-ai#4506)
- Project/task backups uploading via chunk uploads
- Fixed UX bug when jobs pagination is reset after changing a job
- Progressbars in CLI for file uploading and downloading
utils/cli
changed tocvat-cli
package- Support custom file name for backup
- Possibility to display tags on frame
- Support source and target storages (server part)
- Tests for import/export annotation, dataset, backup from/to cloud storage
- Added Python SDK package (
cvat-sdk
) (cvat-ai#4813) - Previews for jobs
- Documentation for LDAP authentication (cvat-ai#39)
- OpenCV.js caching and autoload (cvat-ai#30)
- Publishing dev version of CVAT docker images (cvat-ai#53)
- Support of Human Pose Estimation, Facial Landmarks (and similar) use-cases, new shape type:
- Skeleton (cvat-ai#1), (cvat-ai#4829)
- Added helm chart support for serverless functions and analytics (cvat-ai#110)
- Added confirmation when remove a track (cvat-ai#4846)
- COCO Keypoints format support (cvat-ai#4821, cvat-ai#4908)
- Support for Oracle OCI Buckets (cvat-ai#4876)
cvat-sdk
andcvat-cli
packages on PyPI (cvat-ai#4903)- UI part for source and target storages (cvat-ai#4842)
- Backup import/export modals (cvat-ai#4842)
- Annotations import modal (cvat-ai#4842)
- Bumped nuclio version to 1.8.14
- Simplified running REST API tests. Extended CI-nightly workflow
- REST API tests are partially moved to Python SDK (
users
,projects
,tasks
,issues
) - cvat-ui: Improve UI/UX on label, create task and create project forms (cvat-ai#7)
- Removed link to OpenVINO documentation (cvat-ai#35)
- Clarified meaning of chunking for videos
- Task creation progressbar bug
- Removed Python dependency
open3d
which brought different issues to the building process - Analytics not accessible when https is enabled
- Dataset import in an organization
- Updated minimist npm package to v1.2.6
- Request Status Code 500 "StopIteration" when exporting dataset
- Generated OpenAPI schema for several endpoints
- Annotation window might have top offset if try to move a locked object
- Image search in cloud storage (cvat-ai#8)
- Reset password functionality (cvat-ai#52)
- Creating task with cloud storage data (cvat-ai#116)
- Show empty tasks (cvat-ai#100)
- Fixed project filtration (cvat-ai#4878)
- Maximum callstack exceed when create task with 100000+ files from cloud storage (cvat-ai#4836)
- Fixed invocation of serverless functions (cvat-ai#4907)
- Removing label attributes (cvat-ai#4927)
- Notification with a required manifest file (cvat-ai#4921)
- Task annotations importing via chunk uploads (cvat-ai#4327)
- Advanced filtration and sorting for a list of tasks/projects/cloudstorages (cvat-ai#4403)
- Project dataset importing via chunk uploads (cvat-ai#4485)
- Support paginated list for job commits (cvat-ai#4482)
- Added missing geos dependency into Dockerfile (cvat-ai#4451)
- Improved helm chart readme (cvat-ai#4366)
- Added helm chart support for CVAT 2.X and made ingress compatible with Kubernetes >=1.22 (cvat-ai#4448)
- Permission error occurred when accessing the JobCommits (cvat-ai#4435)
- job assignee can remove or update any issue created by the task owner (cvat-ai#4436)
- Bug: Incorrect point deletion with keyboard shortcut (cvat-ai#4420)
- some AI Tools were not sending responses properly (cvat-ai#4432)
- Unable to upload annotations (cvat-ai#4513)
- Fix build dependencies for Siammask (cvat-ai#4486)
- Bug: Exif orientation information handled incorrectly (cvat-ai#4529)
- Fixed build of retinanet function image (cvat-ai#54)
- Dataset import for Datumaro, KITTI and VGGFace2 formats (cvat-ai#4544)
- Bug: Import dataset of Imagenet format fail (cvat-ai#4850)
- Handle attributes coming from nuclio detectors (cvat-ai#3917)
- Add additional environment variables for Nuclio configuration (cvat-ai#3894)
- Add KITTI segmentation and detection format (cvat-ai#3757)
- Add LFW format (cvat-ai#3770)
- Add Cityscapes format (cvat-ai#3758)
- Add Open Images V6 format (cvat-ai#3679)
- Rotated bounding boxes (cvat-ai#3832)
- Player option: Smooth image when zoom-in, enabled by default (cvat-ai#3933)
- Google Cloud Storage support in UI (cvat-ai#3919)
- Add project tasks pagination (cvat-ai#3910)
- Add remove issue button (cvat-ai#3952)
- Data sorting option (cvat-ai#3937)
- Options to change font size & position of text labels on the canvas (cvat-ai#3972)
- Add "tag" return type for automatic annotation in Nuclio (cvat-ai#3896)
- Helm chart: Make user-data-permission-fix optional (cvat-ai#3994)
- Advanced identity access management system, using open policy agent (cvat-ai#3788)
- Organizations to create "shared space" for different groups of users (cvat-ai#3788)
- Dataset importing to a project (cvat-ai#3790)
- User is able to customize information that text labels show (cvat-ai#4029)
- Support for uploading manifest with any name (cvat-ai#4041)
- Added information about OpenVINO toolkit to login page (cvat-ai#4077)
- Support for working with ellipses (cvat-ai#4062)
- Add several flags to task creation CLI (cvat-ai#4119)
- Add YOLOv5 serverless function for automatic annotation (cvat-ai#4178)
- Add possibility to change git repository and git export format from already created task (cvat-ai#3886)
- Basic page with jobs list, basic filtration to this list (cvat-ai#4258)
- Added OpenCV.js TrackerMIL as tracking tool (cvat-ai#4200)
- Ability to continue working from the latest frame where an annotator was before (cvat-ai#4297)
GET /api/jobs/<id>/commits
was implemented (cvat-ai#4368)- Advanced filtration and sorting for a list of jobs (cvat-ai#4319)
- Users don't have access to a task object anymore if they are assigned only on some jobs of the task (cvat-ai#3788)
- Different resources (tasks, projects) are not visible anymore for all CVAT instance users by default (cvat-ai#3788)
- API versioning scheme: using accept header versioning instead of namespace versioning (cvat-ai#4239)
- Replaced 'django_sendfile' with 'django_sendfile2' (cvat-ai#4267)
- Use drf-spectacular instead of drf-yasg for swagger documentation (cvat-ai#4210)
- Update development-environment manual to work under MacOS, supported Mac with Apple Silicon (cvat-ai#4414)
- Job field "status" is not used in UI anymore, but it has not been removed from the database yet (cvat-ai#3788)
- Review rating, reviewer field from the job instance (use assignee field together with stage field instead) (cvat-ai#3788)
- Training django app (cvat-ai#4330)
- v1 api version support (cvat-ai#4332)
- Fixed Interaction handler keyboard handlers (cvat-ai#3881)
- Points of invisible shapes are visible in autobordering (cvat-ai#3931)
- Order of the label attributes in the object item details(cvat-ai#3945)
- Order of labels in tasks and projects (cvat-ai#3987)
- Fixed task creating with large files via webpage (cvat-ai#3692)
- Added information to export CVAT_HOST when performing local installation for accessing over network (cvat-ai#4014)
- Fixed possible color collisions in the generated colormap (cvat-ai#4007)
- Original pdf file is deleted when using share (cvat-ai#3967)
- Order in an annotation file(cvat-ai#4087)
- Fixed task data upload progressbar (cvat-ai#4134)
- Email in org invitations is case sensitive (cvat-ai#4153)
- Caching for tasks and jobs can lead to an exception if its assignee user is removed (cvat-ai#4165)
- Added intelligent function when paste labels to another task (cvat-ai#4161)
- Uncaught TypeError: this.el.node.getScreenCTM() is null in Firefox (cvat-ai#4175)
- Bug: canvas is busy when start playing, start resizing a shape and do not release the mouse cursor (cvat-ai#4151)
- Bug: could not receive frame N. TypeError: Cannot read properties of undefined (reding "filename") (cvat-ai#4187)
- Cannot choose a dataset format for a linked repository if a task type is annotation (cvat-ai#4203)
- Fixed tus upload error over https (cvat-ai#4154)
- Issues disappear when rescale a browser (cvat-ai#4189)
- Auth token key is not returned when registering without email verification (cvat-ai#4092)
- Error in create project from backup for standard 3D annotation (cvat-ai#4160)
- Annotations search does not work correctly in some corner cases (when use complex properties with width, height) (cvat-ai#4198)
- Kibana requests are not proxied due to django-revproxy incompatibility with Django >3.2.x (cvat-ai#4085)
- Content type for getting frame with tasks/{id}/data/ endpoint (cvat-ai#4333)
- Bug: Permission error occurred when accessing the comments of a specific issue (cvat-ai#4416)
- Updated ELK to 6.8.23 which uses log4j 2.17.1 (cvat-ai#4206)
- Added validation for URLs which used as remote data source (cvat-ai#4387)
- cvat-ui: support cloud storages (cvat-ai#3372)
- interactor: add HRNet interactive segmentation serverless function (cvat-ai#3740)
- Added GPU implementation for SiamMask, reworked tracking approach (cvat-ai#3571)
- Progress bar for manifest creating (cvat-ai#3712)
- IAM: Open Policy Agent integration (cvat-ai#3788)
- Add a tutorial on attaching cloud storage AWS-S3 (cvat-ai#3745) and Azure Blob Container (cvat-ai#3778)
- The feature to remove annotations in a specified range of frames (cvat-ai#3617)
- Project backup/restore (cvat-ai#3852)
- UI tracking has been reworked (cvat-ai#3571)
- Updated Django till 3.2.7 (automatic AppConfig discovery)
- Manifest generation: Reduce creating time (cvat-ai#3712)
- Migration from NPM 6 to NPM 7 (cvat-ai#3773)
- Update Datumaro dependency to 0.2.0 (cvat-ai#3813)
- Fixed JSON transform issues in network requests (cvat-ai#3706)
- Display a more user-friendly exception message (cvat-ai#3721)
- Exception
DataCloneError: The object could not be cloned
(cvat-ai#3733) - Fixed extension comparison in task frames CLI (cvat-ai#3674)
- Incorrect work when copy job list with "Copy" button (cvat-ai#3749)
- Iterating over manifest (cvat-ai#3792)
- Manifest removing (cvat-ai#3791)
- Fixed project updated date (cvat-ai#3814)
- Fixed dextr deployment (cvat-ai#3820)
- Migration of
dataset_repo
application (cvat-ai#3827) - Helm settings for external psql database were unused by backend (cvat-ai#3779)
- Updated WSL setup for development (cvat-ai#3828)
- Helm chart config (cvat-ai#3784)
- Fix security issues on the documentation website unsafe use of target blank and potential clickjacking on legacy browsers (cvat-ai#3789)
- Added ability to import data from share with cli without copying the data (cvat-ai#2862)
- Notification if the browser does not support necessary API
- Added ability to export project as a dataset (cvat-ai#3365) and project with 3D tasks (cvat-ai#3502)
- Additional inline tips in interactors with demo gifs (cvat-ai#3473)
- Added intelligent scissors blocking feature (cvat-ai#3510)
- Support cloud storage status (cvat-ai#3386)
- Support cloud storage preview (cvat-ai#3386)
- cvat-core: support cloud storages (cvat-ai#3313)
- Non-blocking UI when using interactors (cvat-ai#3473)
- "Selected opacity" slider now defines opacity level for shapes being drawnSelected opacity (cvat-ai#3473)
- Cloud storage creating and updating (cvat-ai#3386)
- Way of working with cloud storage content (cvat-ai#3386)
- Support TEMP_KEY_SECRET_KEY_TOKEN_SET for AWS S3 cloud storage (cvat-ai#3386)
- Fixed multiple tasks moving (cvat-ai#3517)
- Fixed task creating CLI parameter (cvat-ai#3519)
- Fixed import for MOTS format (cvat-ai#3612)
- Support of context images for 2D image tasks (cvat-ai#3122)
- Support of cloud storage without copying data into CVAT: server part (cvat-ai#2620)
- Filter
is_active
for user list (cvat-ai#3235) - Ability to export/import tasks (cvat-ai#3056)
- Add a tutorial for semi-automatic/automatic annotation (cvat-ai#3124)
- Explicit "Done" button when drawing any polyshapes (cvat-ai#3417)
- Histogram equalization with OpenCV javascript (cvat-ai#3447)
- Client-side polyshapes approximation when using semi-automatic interactors & scissors (cvat-ai#3450)
- Support of Google Cloud Storage for cloud storage (cvat-ai#3561)
- Updated manifest format, added meta with related images (cvat-ai#3122)
- Update of COCO format documentation (cvat-ai#3197)
- Updated Webpack Dev Server config to add proxy (cvat-ai#3368)
- Update to Django 3.1.12 (cvat-ai#3378)
- Updated visibility for removable points in AI tools (cvat-ai#3417)
- Updated UI handling for IOG serverless function (cvat-ai#3417)
- Changed Nginx proxy to Traefik in
docker-compose.yml
(cvat-ai#3409) - Simplify the process of deploying CVAT with HTTPS (cvat-ai#3409)
- Project page requests took a long time and did many DB queries (cvat-ai#3223)
- Fixed Python 3.6 support (cvat-ai#3258)
- Incorrect attribute import in tracks (cvat-ai#3229)
- Issue "is not a constructor" when create object, save, undo, save, redo save (cvat-ai#3292)
- Fix CLI create an infinite loop if git repository responds with failure (cvat-ai#3267)
- Bug with sidebar & fullscreen (cvat-ai#3289)
- 504 Gateway Time-out on
data/meta
requests (cvat-ai#3269) - TypeError: Cannot read property 'clientX' of undefined when draw cuboids with hotkeys (cvat-ai#3308)
- Duplication of the cuboids when redraw them (cvat-ai#3308)
- Some code issues in Deep Extreme Cut handler code (cvat-ai#3325)
- UI fails when inactive user is assigned to a task/job (cvat-ai#3343)
- Calculate precise progress of decoding a video file (cvat-ai#3381)
- Falsely successful
cvat_ui
image build in case of OOM error that leads to the default nginx welcome page (cvat-ai#3379) - Fixed issue when save filtered object in AAM (cvat-ai#3401)
- Context image disappears after undo/redo (cvat-ai#3416)
- Using combined data sources (directory and image) when create a task (cvat-ai#3424)
- Creating task with labels in project (cvat-ai#3454)
- Move task and autoannotation modals were invisible from project page (cvat-ai#3475)
- Documentation on mask annotation (cvat-ai#3044)
- Hotkeys to switch a label of existing object or to change default label (for objects created with N) (cvat-ai#3070)
- A script to convert some kinds of DICOM files to regular images (cvat-ai#3095)
- Helm chart prototype (cvat-ai#3102)
- Initial implementation of moving tasks between projects (cvat-ai#3164)
- Place of migration logger initialization (cvat-ai#3170)
- Kubernetes templates from (cvat-ai#1962) due to helm charts (cvat-ai#3171)
- Export of instance masks with holes (cvat-ai#3044)
- Changing a label on canvas does not work when 'Show object details' enabled (cvat-ai#3084)
- Make sure frame unzip web worker correctly terminates after unzipping all images in a requested chunk (cvat-ai#3096)
- Reset password link was unavailable before login (cvat-ai#3140)
- Manifest: migration (cvat-ai#3146)
- Fixed cropping polygon in some corner cases (cvat-ai#3184)
- CLI: Add support for saving annotations in a git repository when creating a task.
- CVAT-3D: support lidar data on the server side (cvat-ai#2534)
- GPU support for Mask-RCNN and improvement in its deployment time (cvat-ai#2714)
- CVAT-3D: Load all frames corresponding to the job instance (cvat-ai#2645)
- Intelligent scissors with OpenCV javascript (cvat-ai#2689)
- CVAT-3D: Visualize 3D point cloud spaces in 3D View, Top View Side View and Front View (cvat-ai#2768)
- Inside Outside Guidance serverless function for interactive segmentation
- Pre-built cvat_server and cvat_ui images were published on DockerHub (cvat-ai#2766)
- Project task subsets (cvat-ai#2774)
- Kubernetes templates and guide for their deployment (cvat-ai#1962)
- WiderFace format support (cvat-ai#2864)
- VGGFace2 format support (cvat-ai#2865)
- Backup/Restore guide (cvat-ai#2964)
- Label deletion from tasks and projects (cvat-ai#2881)
- CVAT-3D: Implemented initial cuboid placement in 3D View and select cuboid in Top, Side and Front views (cvat-ai#2891)
- Market-1501 format support (cvat-ai#2869)
- Ability of upload manifest for dataset with images (cvat-ai#2763)
- Annotations filters UI using react-awesome-query-builder (cvat-ai#1418)
- Storing settings in local storage to keep them between browser sessions (cvat-ai#3017)
- ICDAR format support (cvat-ai#2866)
- Added switcher to maintain polygon crop behavior (cvat-ai#3021
- Filters and sorting options for job list, added tooltip for tasks filters (cvat-ai#3030)
- CLI - task list now returns a list of current tasks. (cvat-ai#2863)
- Updated HTTPS install README section (cleanup and described more robust deploy)
- Logstash is improved for using with configurable elasticsearch outputs (cvat-ai#2531)
- Bumped nuclio version to 1.5.16 (cvat-ai#2578)
- All methods for interactive segmentation accept negative points as well
- Persistent queue added to logstash (cvat-ai#2744)
- Improved maintenance of popups visibility (cvat-ai#2809)
- Image visualizations settings on canvas for faster access (cvat-ai#2872)
- Better scale management of left panel when screen is too small (cvat-ai#2880)
- Improved error messages for annotation import (cvat-ai#2935)
- Using manifest support instead video meta information and dummy chunks (cvat-ai#2763)
- More robust execution of nuclio GPU functions by limiting the GPU memory consumption per worker (cvat-ai#2714)
- Kibana startup initialization (cvat-ai#2659)
- The cursor jumps to the end of the line when renaming a task (cvat-ai#2669)
- SSLCertVerificationError when remote source is used (cvat-ai#2683)
- Fixed filters select overflow (cvat-ai#2614)
- Fixed tasks in project auto annotation (cvat-ai#2725)
- Cuboids are missed in annotations statistics (cvat-ai#2704)
- The list of files attached to the task is not displayed (cvat-ai#2706)
- A couple of css-related issues (top bar disappear, wrong arrow position on collapse elements) (cvat-ai#2736)
- Issue with point region doesn't work in Firefox (cvat-ai#2727)
- Fixed cuboid perspective change (cvat-ai#2733)
- Annotation page popups (ai tools, drawing) reset state after detecting, tracking, drawing (cvat-ai#2780)
- Polygon editing using trailing point (cvat-ai#2808)
- Updated the path to python for DL models inside automatic annotation documentation (cvat-ai#2847)
- Fixed of receiving function variable (cvat-ai#2860)
- Shortcuts with CAPSLOCK enabled and with non-US languages activated (cvat-ai#2872)
- Prevented creating several issues for the same object (cvat-ai#2868)
- Fixed label editor name field validator (cvat-ai#2879)
- An error about track shapes outside of the task frames during export (cvat-ai#2890)
- Fixed project search field updating (cvat-ai#2901)
- Fixed export error when invalid polygons are present in overlapping frames (cvat-ai#2852)
- Fixed image quality option for tasks created from images (cvat-ai#2963)
- Incorrect text on the warning when specifying an incorrect link to the issue tracker (cvat-ai#2971)
- Updating label attributes when label contains number attributes (cvat-ai#2969)
- Crop a polygon if its points are outside the bounds of the image (cvat-ai#3025)
- Memory consumption for the task creation process (cvat-ai#2582)
- Frame preloading (cvat-ai#2608)
- Project cannot be removed from the project page (cvat-ai#2626)
- GPU support and improved documentation for auto annotation (cvat-ai#2546)
- Manual review pipeline: issues/comments/workspace (cvat-ai#2357)
- Basic projects implementation (cvat-ai#2255)
- Documentation on how to mount cloud starage(AWS S3 bucket, Azure container, Google Drive) as FUSE (cvat-ai#2377)
- Ability to work with share files without copying inside (cvat-ai#2377)
- Tooltips in label selectors (cvat-ai#2509)
- Page redirect after login using
next
query parameter (cvat-ai#2527) - ImageNet format support (cvat-ai#2376)
- CamVid format support (cvat-ai#2559)
- PATCH requests from cvat-core submit only changed fields (cvat-ai#2445)
- deploy.sh in serverless folder is separated into deploy_cpu.sh and deploy_gpu.sh (cvat-ai#2546)
- Bumped nuclio version to 1.5.8
- Migrated to Antd 4.9 (cvat-ai#2536)
- Fixed FastRCNN inference bug for images with 4 channels i.e. png (cvat-ai#2546)
- Django templates for email and user guide (cvat-ai#2412)
- Saving relative paths in dummy chunks instead of absolute (cvat-ai#2424)
- Objects with a specific label cannot be displayed if at least one tag with the label exist (cvat-ai#2435)
- Wrong attribute can be removed in labels editor (cvat-ai#2436)
- UI fails with the error "Cannot read property 'label' of undefined" (cvat-ai#2442)
- Exception: "Value must be a user instance" (cvat-ai#2441)
- Reset zoom option doesn't work in tag annotation mode (cvat-ai#2443)
- Canvas is busy error (cvat-ai#2437)
- Projects view layout fix (cvat-ai#2503)
- Fixed the tasks view (infinite loading) when it is impossible to get a preview of the task (cvat-ai#2504)
- Empty frames navigation (cvat-ai#2505)
- TypeError: Cannot read property 'toString' of undefined (cvat-ai#2517)
- Extra shapes are drawn after Esc, or G pressed while drawing a region in grouping (cvat-ai#2507)
- Reset state (reviews, issues) after logout or changing a job (cvat-ai#2525)
- TypeError: Cannot read property 'id' of undefined when updating a task (cvat-ai#2544)
- Ability to login into CVAT-UI with token from api/v1/auth/login (cvat-ai#2234)
- Added layout grids toggling ('ctrl + alt + Enter')
- Added password reset functionality (cvat-ai#2058)
- Ability to work with data on the fly (cvat-ai#2007)
- Annotation in process outline color wheel (cvat-ai#2084)
- On the fly annotation using DL detectors (cvat-ai#2102)
- Displaying automatic annotation progress on a task view (cvat-ai#2148)
- Automatic tracking of bounding boxes using serverless functions (cvat-ai#2136)
- [Datumaro] CLI command for dataset equality comparison (cvat-ai#1989)
- [Datumaro] Merging of datasets with different labels (cvat-ai#2098)
- Add FBRS interactive segmentation serverless function (cvat-ai#2094)
- Ability to change default behaviour of previous/next buttons of a player. It supports regular navigation, searching a frame according to annotations filters and searching the nearest frame without any annotations (cvat-ai#2221)
- MacOS users notes in CONTRIBUTING.md
- Ability to prepare meta information manually (cvat-ai#2217)
- Ability to upload prepared meta information along with a video when creating a task (cvat-ai#2217)
- Optional chaining plugin for cvat-canvas and cvat-ui (cvat-ai#2249)
- MOTS png mask format support (cvat-ai#2198)
- Ability to correct upload video with a rotation record in the metadata (cvat-ai#2218)
- User search field for assignee fields (cvat-ai#2370)
- Support of mxf videos (cvat-ai#2514)
- UI models (like DEXTR) were redesigned to be more interactive (cvat-ai#2054)
- Used Ubuntu:20.04 as a base image for CVAT Dockerfile (cvat-ai#2101)
- Right colors of label tags in label mapping when a user runs automatic detection (cvat-ai#2162)
- Nuclio became an optional component of CVAT (cvat-ai#2192)
- A key to remove a point from a polyshape (Ctrl => Alt) (cvat-ai#2204)
- Updated
docker-compose
file version from2.3
to3.3
(cvat-ai#2235) - Added auto inference of url schema from host in CLI, if provided (cvat-ai#2240)
- Track frames in skips between annotation is presented in MOT and MOTS formats are marked
outside
(cvat-ai#2198) - UI packages installation with
npm ci
instead ofnpm install
(cvat-ai#2350)
- Removed Z-Order flag from task creation process
- Fixed multiple errors which arises when polygon is of length 5 or less (cvat-ai#2100)
- Fixed task creation from PDF (cvat-ai#2141)
- Fixed CVAT format import for frame stepped tasks (cvat-ai#2151)
- Fixed the reading problem with large PDFs (cvat-ai#2154)
- Fixed unnecessary pyhash dependency (cvat-ai#2170)
- Fixed Data is not getting cleared, even after deleting the Task from Django Admin App(cvat-ai#1925)
- Fixed blinking message: "Some tasks have not been showed because they do not have any data" (cvat-ai#2200)
- Fixed case when a task with 0 jobs is shown as "Completed" in UI (cvat-ai#2200)
- Fixed use case when UI throws exception: Cannot read property 'objectType' of undefined #2053 (cvat-ai#2203)
- Fixed use case when logs could be saved twice or more times #2202 (cvat-ai#2203)
- Fixed issues from #2112 (cvat-ai#2217)
- Git application name (renamed to dataset_repo) (cvat-ai#2243)
- A problem in exporting of tracks, where tracks could be truncated (cvat-ai#2129)
- Fixed CVAT startup process if the user has
umask 077
in .bashrc file (cvat-ai#2293) - Exception: Cannot read property "each" of undefined after drawing a single point (cvat-ai#2307)
- Cannot read property 'label' of undefined (Fixed?) (cvat-ai#2311)
- Excluded track frames marked
outside
inCVAT for Images
export (cvat-ai#2345) - 'List of tasks' Kibana visualization (cvat-ai#2361)
- An error on exporting not
jpg
orpng
images in TF Detection API format (openvinotoolkit/datumaro#35)
- Siammask tracker as DL serverless function (cvat-ai#1988)
- [Datumaro] Added model info and source info commands (cvat-ai#1973)
- [Datumaro] Dataset statistics (cvat-ai#1668)
- Ability to change label color in tasks and predefined labels (cvat-ai#2014)
- [Datumaro] Multi-dataset merge (cvat-ai#1695)
- Ability to configure email verification for new users (cvat-ai#1929)
- Link to django admin page from UI (cvat-ai#2068)
- Notification message when users use wrong browser (cvat-ai#2070)
- Shape coordinates are rounded to 2 digits in dumped annotations (cvat-ai#1970)
- COCO format does not produce polygon points for bbox annotations (cvat-ai#1953)
- Issue loading openvino models for semi-automatic and automatic annotation (cvat-ai#1996)
- Basic functions of CVAT works without activated nuclio dashboard
- Fixed a case in which exported masks could have wrong color order (cvat-ai#2032)
- Fixed error with creating task with labels with the same name (cvat-ai#2031)
- Django RQ dashboard view (cvat-ai#2069)
- Object's details menu settings (cvat-ai#2084)
- DL models as serverless functions (cvat-ai#1767)
- Source type support for tags, shapes and tracks (cvat-ai#1192)
- Source type support for CVAT Dumper/Loader (cvat-ai#1192)
- Intelligent polygon editing (cvat-ai#1921)
- Support creating multiple jobs for each task through python cli (cvat-ai#1950)
- python cli over https (cvat-ai#1942)
- Error message when plugins weren't able to initialize instead of infinite loading (cvat-ai#1966)
- Ability to change user password (cvat-ai#1954)
- Smaller object details (cvat-ai#1877)
COCO
format does not convert bboxes to polygons on export (cvat-ai#1953)- It is impossible to submit a DL model in OpenVINO format using UI. Now you can deploy new models on the server using serverless functions (cvat-ai#1767)
- Files and folders under share path are now alphabetically sorted
- Removed OpenVINO and CUDA components because they are not necessary anymore (cvat-ai#1767)
- Removed the old UI code (cvat-ai#1964)
- Some objects aren't shown on canvas sometimes. For example after propagation on of objects is invisible (cvat-ai#1834)
- CVAT doesn't offer to restore state after an error (cvat-ai#1874)
- Cannot read property 'shapeType' of undefined because of zOrder related issues (cvat-ai#1874)
- Cannot read property 'pinned' of undefined because of zOrder related issues (cvat-ai#1874)
- Do not iterate over hidden objects in aam (which are invisible because of zOrder) (cvat-ai#1874)
- Cursor position is reset after changing a text field (cvat-ai#1874)
- Hidden points and cuboids can be selected to be grouped (cvat-ai#1874)
outside
annotations should not be in exported images (cvat-ai#1620)CVAT for video format
import error with interpolation (cvat-ai#1893)Image compression
definition mismatch (cvat-ai#1900)- Points are duplicated during polygon interpolation sometimes (cvat-ai#1892)
- When redraw a shape with activated autobordering, previous points are visible (cvat-ai#1892)
- No mapping between side object element and context menu in some attributes (cvat-ai#1923)
- Interpolated shapes exported as
keyframe = True
(cvat-ai#1937) - Stylelint filetype scans (cvat-ai#1952)
- Fixed toolip closing issue (cvat-ai#1955)
- Clearing frame cache when close a task (cvat-ai#1966)
- Increase rate of throttling policy for unauthenticated users (cvat-ai#1969)
- Throttling policy for unauthenticated users (cvat-ai#1531)
- Added default label color table for mask export (cvat-ai#1549)
- Added environment variables for Redis and Postgres hosts for Kubernetes deployment support (cvat-ai#1641)
- Added visual identification for unavailable formats (cvat-ai#1567)
- Shortcut to change color of an activated shape in new UI (Enter) (cvat-ai#1683)
- Shortcut to switch split mode (cvat-ai#1683)
- Built-in search for labels when create an object or change a label (cvat-ai#1683)
- Better validation of labels and attributes in raw viewer (cvat-ai#1727)
- ClamAV antivirus integration (cvat-ai#1712)
- Added canvas background color selector (cvat-ai#1705)
- SCSS files linting with Stylelint tool (cvat-ai#1766)
- Supported import and export or single boxes in MOT format (cvat-ai#1764)
- [Datumaro] Added
stats
command, which shows some dataset statistics like image mean and std (cvat-ai#1734) - Add option to upload annotations upon task creation on CLI
- Polygon and polylines interpolation (cvat-ai#1571)
- Ability to redraw shape from scratch (Shift + N) for an activated shape (cvat-ai#1571)
- Highlights for the first point of a polygon/polyline and direction (cvat-ai#1571)
- Ability to change orientation for poylgons/polylines in context menu (cvat-ai#1571)
- Ability to set the first point for polygons in points context menu (cvat-ai#1571)
- Added new tag annotation workspace (cvat-ai#1570)
- Appearance block in attribute annotation mode (cvat-ai#1820)
- Keyframe navigations and some switchers in attribute annotation mode (cvat-ai#1820)
- [Datumaro] Added
convert
command to convert datasets directly (cvat-ai#1837) - [Datumaro] Added an option to specify image extension when exporting datasets (cvat-ai#1799)
- [Datumaro] Added image copying when exporting datasets, if possible (cvat-ai#1799)
- Removed information about e-mail from the basic user information (cvat-ai#1627)
- Update https install manual. Makes it easier and more robust. Includes automatic renewing of lets encrypt certificates.
- Settings page move to the modal. (cvat-ai#1705)
- Implemented import and export of annotations with relative image paths (cvat-ai#1463)
- Using only single click to start editing or remove a point (cvat-ai#1571)
- Added support for attributes in VOC XML format (cvat-ai#1792)
- Added annotation attributes in COCO format (cvat-ai#1782)
- Colorized object items in the side panel (cvat-ai#1753)
- [Datumaro] Annotation-less files are not generated anymore in COCO format, unless tasks explicitly requested (cvat-ai#1799)
- Problem with exported frame stepped image task (cvat-ai#1613)
- Fixed dataset filter item representation for imageless dataset items (cvat-ai#1593)
- Fixed interpreter crash when trying to import
tensorflow
with no AVX instructions available (cvat-ai#1567) - Kibana wrong working time calculation with new annotation UI use (cvat-ai#1654)
- Wrong rexex for account name validation (cvat-ai#1667)
- Wrong description on register view for the username field (cvat-ai#1667)
- Wrong resolution for resizing a shape (cvat-ai#1667)
- React warning because of not unique keys in labels viewer (cvat-ai#1727)
- Fixed issue tracker (cvat-ai#1705)
- Fixed canvas fit after sidebar open/close event (cvat-ai#1705)
- A couple of exceptions in AAM related with early object activation (cvat-ai#1755)
- Propagation from the latest frame (cvat-ai#1800)
- Number attribute value validation (didn't work well with floats) (cvat-ai#1800)
- Logout doesn't work (cvat-ai#1812)
- Annotations aren't updated after reopening a task (cvat-ai#1753)
- Labels aren't updated after reopening a task (cvat-ai#1753)
- Canvas isn't fitted after collapsing side panel in attribute annotation mode (cvat-ai#1753)
- Error when interpolating polygons (cvat-ai#1878)
- SQL injection in Django
CVE-2020-9402
(cvat-ai#1657)
- cvat-ui: cookie policy drawer for login page (cvat-ai#1511)
datumaro_project
export format (cvat-ai#1352)- Ability to configure user agreements for the user registration form (cvat-ai#1464)
- Cuboid interpolation and cuboid drawing from rectangles (cvat-ai#1560)
- Ability to configure custom pageViewHit, which can be useful for web analytics integration (cvat-ai#1566)
- Ability to configure access to the analytics page based on roles (cvat-ai#1592)
- Downloaded file name in annotations export became more informative (cvat-ai#1352)
- Added auto trimming for trailing whitespaces style enforcement (cvat-ai#1352)
- REST API: updated
GET /task/<id>/annotations
: parameters areformat
,filename
(now optional),action
(optional) (cvat-ai#1352) - REST API: removed
dataset/formats
, changed format ofannotation/formats
(cvat-ai#1352) - Exported annotations are stored for N hours instead of indefinitely (cvat-ai#1352)
- Formats: CVAT format now accepts ZIP and XML (cvat-ai#1352)
- Formats: COCO format now accepts ZIP and JSON (cvat-ai#1352)
- Formats: most of formats renamed, no extension in title (cvat-ai#1352)
- Formats: definitions are changed, are not stored in DB anymore (cvat-ai#1352)
- cvat-core: session.annotations.put() now returns ids of added objects (cvat-ai#1493)
- Images without annotations now also included in dataset/annotations export (cvat-ai#525)
annotation
application is replaced withdataset_manager
(cvat-ai#1352)_DATUMARO_INIT_LOGLEVEL
env. variable is removed in favor of regular--loglevel
cli parameter (cvat-ai#1583)
- Categories for empty projects with no sources are taken from own dataset (cvat-ai#1352)
- Added directory removal on error during
extract
command (cvat-ai#1352) - Added debug error message on incorrect XPath (cvat-ai#1352)
- Exporting frame stepped task (cvat-ai#1294, cvat-ai#1334)
- Fixed broken command line interface for
cvat
export format in Datumaro (cvat-ai#1494) - Updated Rest API document, Swagger document serving instruction issue (cvat-ai#1495)
- Fixed cuboid occluded view (cvat-ai#1500)
- Non-informative lock icon (cvat-ai#1434)
- Sidebar in AAM has no hide/show button (cvat-ai#1420)
- Task/Job buttons has no "Open in new tab" option (cvat-ai#1419)
- Delete point context menu option has no shortcut hint (cvat-ai#1416)
- Fixed issue with unnecessary tag activation in cvat-canvas (cvat-ai#1540)
- Fixed an issue with large number of instances in instance mask (cvat-ai#1539)
- Fixed full COCO dataset import error with conflicting labels in keypoints and detection (cvat-ai#1548)
- Fixed COCO keypoints skeleton parsing and saving (cvat-ai#1539)
tf.placeholder() is not compatible with eager execution
exception for auto_segmentation (cvat-ai#1562)- Canvas cannot be moved with move functionality on left mouse key (cvat-ai#1573)
- Deep extreme cut request is sent when draw any shape with Make AI polygon option enabled (cvat-ai#1573)
- Fixed an error when exporting a task with cuboids to any format except CVAT (cvat-ai#1577)
- Synchronization with remote git repo (cvat-ai#1582)
- A problem with mask to polygons conversion when polygons are too small (cvat-ai#1581)
- Unable to upload video with uneven size (cvat-ai#1594)
- Fixed an issue with
z_order
having no effect on segmentations (cvat-ai#1589)
- Permission group whitelist check for analytics view (cvat-ai#1608)
- Re-Identification algorithm to merging bounding boxes automatically to the new UI (cvat-ai#1406)
- Methods
import
andexport
to import/export raw annotations for Job and Task incvat-core
(cvat-ai#1406) - Versioning of client packages (
cvat-core
,cvat-canvas
,cvat-ui
). Initial versions are set to 1.0.0 (cvat-ai#1448) - Cuboids feature was migrated from old UI to new one. (cvat-ai#1451)
- Annotation conversion utils, currently supported natively via Datumaro framework (cvat-ai#1477)
- Auto annotation, TF annotation and Auto segmentation apps (cvat-ai#1409)
- Import works with truncated images now: "OSError:broken data stream" on corrupt images (cvat-ai#1430)
- Hide functionality (H) doesn't work (cvat-ai#1445)
- The highlighted attribute doesn't correspond to the chosen attribute in AAM (cvat-ai#1445)
- Inconvinient image shaking while drawing a polygon (hold Alt key during drawing/editing/grouping to drag an image) (cvat-ai#1445)
- Filter property "shape" doesn't work and extra operator in description (cvat-ai#1445)
- Block of text information doesn't disappear after deactivating for locked shapes (cvat-ai#1445)
- Annotation uploading fails in annotation view (cvat-ai#1445)
- UI freezes after canceling pasting with escape (cvat-ai#1445)
- Duplicating keypoints in COCO export (cvat-ai#1435)
- CVAT new UI: add arrows on a mouse cursor (cvat-ai#1391)
- Delete point bug (in new UI) (cvat-ai#1440)
- Fix apache startup after PC restart (cvat-ai#1467)
- Open task button doesn't work (cvat-ai#1474)
- Special behaviour for attribute value
__undefined__
(invisibility, no shortcuts to be set in AAM) - Dialog window with some helpful information about using filters
- Ability to display a bitmap in the new UI
- Button to reset colors settings (brightness, saturation, contrast) in the new UI
- Option to display shape text always
- Dedicated message with clarifications when share is unmounted (cvat-ai#1373)
- Ability to create one tracked point (cvat-ai#1383)
- Ability to draw/edit polygons and polylines with automatic bordering feature (cvat-ai#1394)
- Tutorial: instructions for CVAT over HTTPS
- Deep extreme cut (semi-automatic segmentation) to the new UI (cvat-ai#1398)
- Increase preview size of a task till 256, 256 on the server
- Public ssh-keys are displayed in a dedicated window instead of console when create a task with a repository
- React UI is the primary UI
- Cleaned up memory in Auto Annotation to enable long running tasks on videos
- New shape is added when press
esc
when drawing instead of cancellation - Dextr segmentation doesn't work.
FileNotFoundError
during dump after moving format files- CVAT doesn't append outside shapes when merge polyshapes in old UI
- Layout sometimes shows double scroll bars on create task, dashboard and settings pages
- UI fails after trying to change frame during resizing, dragging, editing
- Hidden points (or outsided) are visible after changing a frame
- Merge is allowed for points, but clicks on points conflict with frame dragging logic
- Removed objects are visible for search
- Add missed task_id and job_id fields into exception logs for the new UI (cvat-ai#1372)
- UI fails when annotations saving occurs during drag/resize/edit (cvat-ai#1383)
- Multiple savings when hold Ctrl+S (a lot of the same copies of events were sent with the same working time) (cvat-ai#1383)
- UI doesn't have any reaction when git repos synchronization failed (cvat-ai#1383)
- Bug when annotations cannot be saved after (delete - save - undo - save) (cvat-ai#1383)
- VOC format exports Upper case labels correctly in lower case (cvat-ai#1379)
- Fixed polygon exporting bug in COCO dataset (cvat-ai#1387)
- Task creation from remote files (cvat-ai#1392)
- Job cannot be opened in some cases when the previous job was failed during opening (cvat-ai#1403)
- Deactivated shape is still highlighted on the canvas (cvat-ai#1403)
- AttributeError: 'tuple' object has no attribute 'read' in ReID algorithm (cvat-ai#1403)
- Wrong semi-automatic segmentation near edges of an image (cvat-ai#1403)
- Git repos paths (cvat-ai#1400)
- Uploading annotations for tasks with multiple jobs (cvat-ai#1396)
- Data streaming using chunks (cvat-ai#1007)
- New UI: showing file names in UI (cvat-ai#1311)
- New UI: delete a point from context menu (cvat-ai#1292)
- Git app cannot clone a repository (cvat-ai#1330)
- New UI: preview position in task details (cvat-ai#1312)
- AWS deployment (cvat-ai#1316)
- VOC task export now does not use official label map by default, but takes one from the source task to avoid primary-class and class part name clashing (#1275)
- File names in LabelMe format export are no longer truncated (#1259)
occluded
andz_order
annotation attributes are now correctly passed to Datumaro (#1271)- Annotation-less tasks now can be exported as empty datasets in COCO (#1277)
- Frame name matching for video annotations import -
allowed
frame_XXXXXX[.ext]
format (#1274)
- Bump acorn from 6.3.0 to 6.4.1 in /cvat-ui (#1270)
- Server only support for projects. Extend REST API v1 (/api/v1/projects*)
- Ability to get basic information about users without admin permissions (#750)
- Changed REST API: removed PUT and added DELETE methods for /api/v1/users/ID
- Mask-RCNN Auto Annotation Script in OpenVINO format
- Yolo Auto Annotation Script
- Auto segmentation using Mask_RCNN component (Keras+Tensorflow Mask R-CNN Segmentation)
- REST API to export an annotation task (images + annotations) Datumaro - a framework to build, analyze, debug and visualize datasets
- Text Detection Auto Annotation Script in OpenVINO format for version 4
- Added in OpenVINO Semantic Segmentation for roads
- Ability to visualize labels when using Auto Annotation runner
- MOT CSV format support (#830)
- LabelMe format support (#844)
- Segmentation MASK format import (as polygons) (#1163)
- Git repositories can be specified with IPv4 address (#827)
- page_size parameter for all REST API methods
- React & Redux & Antd based dashboard
- Yolov3 interpretation script fix and changes to mapping.json
- YOLO format support (#1151)
- Added support for OpenVINO 2020
- Exception in Git plugin #826
- Label ids in TFrecord format now start from 1 #866
- Mask problem in COCO JSON style #718
- Datasets (or tasks) can be joined and split to subsets with Datumaro #791
- Output labels for VOC format can be specified with Datumaro #942
- Annotations can be filtered before dumping with Datumaro #994
- Frozen version of scikit-image==0.15 in requirements.txt because next releases don't support Python 3.5
- Integration with Zenodo.org (DOI)
- A converter to YOLO format
- Installation guide
- Linear interpolation for a single point
- Video frame filter
- Running functional tests for REST API during a build
- Admins are no longer limited to a subset of python commands in the auto annotation application
- Remote data source (list of URLs to create an annotation task)
- Auto annotation using Faster R-CNN with Inception v2 (utils/open_model_zoo)
- Auto annotation using Pixel Link mobilenet v2 - text detection (utils/open_model_zoo)
- Ability to create a custom extractors for unsupported media types
- Added in PDF extractor
- Added in a command line model manager tester
- Ability to dump/load annotations in several formats from UI (CVAT, Pascal VOC, YOLO, MS COCO, png mask, TFRecord)
- Auth for REST API (api/v1/auth/): login, logout, register, ...
- Preview for the new CVAT UI (dashboard only) is available: http://localhost:9080/
- Added command line tool for performing common task operations (/utils/cli/)
- Outside and keyframe buttons in the side panel for all interpolation shapes (they were only for boxes before)
- Improved error messages on the client side (#511)
- "Flip images" has been removed. UI now contains rotation features.
- Incorrect width of shapes borders in some cases
- Annotation parser for tracks with a start frame less than the first segment frame
- Interpolation on the server near outside frames
- Dump for case when task name has a slash
- Auto annotation fail for multijob tasks
- Installation of CVAT with OpenVINO on the Windows platform
- Background color was always black in utils/mask/converter.py
- Exception in attribute annotation mode when a label are switched to a value without any attributes
- Handling of wrong labelamp json file in auto annotation (cvat-ai#554)
- No default attributes in dumped annotation (cvat-ai#601)
- Required field "Frame Filter" on admin page during a task modifying (#666)
- Dump annotation errors for a task with several segments (#610, #500)
- Invalid label parsing during a task creating (#628)
- Button "Open Task" in the annotation view
- Creating a video task with 0 overlap
- Upgraded Django, djangorestframework, and other packages
- Fixed interaction with the server share in the auto annotation plugin
- JavaScript syntax incompatibility with Google Chrome versions less than 72
- OpenVINO auto annotation: it is possible to upload a custom model and annotate images automatically.
- Ability to rotate images/video in the client part (Ctrl+R, Shift+Ctrl+R shortcuts) (#305)
- The ReID application for automatic bounding box merging has been added (#299)
- Keyboard shortcuts to switch next/previous default shape type (box, polygon etc) (Alt + <, Alt + >) (#316)
- Converter for VOC now supports interpolation tracks
- REST API (/api/v1/*, /api/docs)
- Semi-automatic semantic segmentation with the Deep Extreme Cut work
- Propagation setup has been moved from settings to bottom player panel
- Additional events like "Debug Info" or "Fit Image" have been added for analitics
- Optional using LFS for git annotation storages (#314)
- "Flip images" flag in the create task dialog will be removed. Rotation functionality in client part have been added instead.
- Django 2.1.5 (security fix, CVE-2019-3498)
- Several scenarious which cause code 400 after undo/redo/save have been fixed (#315)
- Ability to copy Object URL and Frame URL via object context menu and player context menu respectively.
- Ability to change opacity for selected shape with help "Selected Fill Opacity" slider.
- Ability to remove polyshapes points by double click.
- Ability to draw/change polyshapes (except for points) by slip method. Just press ENTER and moving a cursor.
- Ability to switch lock/hide properties via label UI element (in right menu) for all objects with same label.
- Shortcuts for outside/keyframe properties
- Support of Intel OpenVINO for accelerated model inference
- Tensorflow annotation now works without CUDA. It can use CPU only. OpenVINO and CUDA are supported optionally.
- Incremental saving of annotations.
- Tutorial for using polygons (screencast)
- Silk profiler to improve development process
- Admin panel can be used to edit labels and attributes for annotation tasks
- Analytics component to manage a data annotation team, monitor exceptions, collect client and server logs
- Changeable job and task statuses (annotation, validation, completed). A job status can be changed manually, a task status is computed automatically based on job statuses (#153)
- Backlink to a task from its job annotation view (#156)
- Buttons lock/hide for labels. They work for all objects with the same label on a current frame (#116)
- Polyshape editing method has been improved. You can redraw part of shape instead of points cloning.
- Unified shortcut (Esc) for close any mode instead of different shortcuts (Alt+N, Alt+G, Alt+M etc.).
- Dump file contains information about data source (e.g. video name, archive name, ...)
- Update requests library due to CVE-2018-18074
- Per task/job permissions to create/access/change/delete tasks and annotations
- Documentation was improved
- Timeout for creating tasks was increased (from 1h to 4h) (#136)
- Drawing has become more convenience. Now it is possible to draw outside an image. Shapes will be automatically truncated after drawing process (#202)
- Performance bottleneck has been fixed during you create new objects (draw, copy, merge etc).
- Label UI elements aren't updated after changelabel.
- Attribute annotation mode can use invalid shape position after resize or move shapes.
- Labels order is preserved now (#242)
- Uploading large XML files (#123)
- Django vulnerability (#121)
- Grammatical cleanup of README.md (#107)
- Dashboard loading has been accelerated (#156)
- Text drawing outside of a frame in some cases (#202)
- New annotation shapes: polygons, polylines, points
- Undo/redo feature
- Grid to estimate size of objects
- Context menu for shapes
- A converter to PASCAL VOC format
- A converter to MS COCO format
- A converter to mask format
- License header for most of all files
- .gitattribute to avoid problems with bash scripts inside a container
- CHANGELOG.md itself
- Drawing size of a bounding box during resize
- Color by instance, group, label
- Group objects
- Object propagation on next frames
- Full screen view
- Documentation, screencasts, the primary screenshot
- Content-type for save_job request is application/json
- Player navigation if the browser's window is scrolled
- Filter doesn't support dash (-)
- Several memory leaks
- Inconsistent extensions between filenames in an annotation file and real filenames
- 7z archive support when creating a task
- .vscode/launch.json file for developing with VS code
- #14: docker-compose down command as written in the readme does not remove volumes
- #15: all checkboxes in temporary attributes are checked when reopening job after saving the job
- #18: extend CONTRIBUTING.md
- #19: using the same attribute for label twice -> stuck
- More strict verification for labels with attributes
- Links on a screenshot, documentation, screencasts into README.md
- CONTRIBUTORS.md
- GitHub documentation
- Initial version