Skip to content

Releases: cvat-ai/cvat

v2.29.0

10 Feb 12:32
0567afa
Compare
Choose a tag to compare

Added

  • Tasks created from cloud storage can be backed up now (#8972)

  • [CLI] function create-native now sends the function's declared label types to the server (#9035)

Changed

  • When invoking Nuclio functions, labels of type any can now be mapped to labels of all types except skeleton (#9050)

Fixed

  • Fixed invalid server-side track interpolation in tasks with deleted frames (#9059)

v2.28.0

06 Feb 07:18
5e39e40
Compare
Choose a tag to compare

Added

  • Support for managing Redis migrations (#8898)

Changed

  • Updated limitation for minimal object size from 9px area to 1px in dimensions (#9055)

Fixed

  • Invalid chunks and backups after honeypot updates in tasks with cloud storage data (#9010)

  • In some cases effect of drag/resize may be reset implicitly for a user (#9053)

v2.27.0

04 Feb 10:18
2839c5c
Compare
Choose a tag to compare

Added

  • Saving drawn shape on submit in single shape mode (#8807)

  • An option to create tasks with consensus jobs (#8939)

  • [SDK] The shapes output by auto-annotation functions are now checked for compatibility with the function's and the task's label specs (#9005)

  • A threshold parameter to UI detector runner (#9011)

Changed

  • DetectorFunctionSpec will now raise BadFunctionError if it detects any violations of the documented constraints on the labels (#9020)

Fixed

  • Improved performance and memory utilization for quality reports in tasks with ellipses and masks (#8990)

  • [Compose] An outdated version of Traefik is no longer used in deployments with HTTPS enabled (#9028)

v2.26.1

29 Jan 18:42
9c5ef99
Compare
Choose a tag to compare

Added

  • A button to copy a filename of the image into the clipboard (#8989)

Changed

  • Changed location of events cache dir (#9015)

Removed

  • [Helm] Removed disableDistinctCachePerService settings (#9008)

Fixed

  • The backend now rejects invalid label types (#8980)

  • [Helm] Impossible to download exported annotations (#9008)

v2.26.0

28 Jan 07:01
3f03ee7
Compare
Choose a tag to compare

Added

  • Setting TMP_FILE_OR_DIR_RETENTION_DAYS, which defines maximum retention period of a file or dir in temporary directory (#8804)

  • Cron job to remove outdated files and directories from CVAT tmp directory (#8804)

  • Ability to set Django's secret key using an environment variable (#8566)

Changed

  • Export cache cleaning moved to a separate cron job (#8804)

  • Improved UX of quality management page: better table layout, file name search, ability to download table as .csv (#8865)

  • Enhanced MIL tracker. Optimized memory usage. Now it is runnable on many frames, and applicable to drawn rectangles. (#8942)

  • The UI only displays one version for the whole client component, which is now aligned with the server version (#8948)

Fixed

  • Fixed webhook worker not restarting after losing Redis connection (#8921)

  • Fixed incorrect results being returned from lambda functions when all detected shapes have labels that aren't mapped (#8931)

  • Optimized importing from cloud storage (#8930)

  • A job cannot be opened if to remove an image with the latest keyframe of a track (#8952)

  • A track will be interpolated incorrectly if to delete an image containing the object keyframe (#8951)

  • Error: Cannot read properties of undefined (reading 'startPoints') when dragging an object (#8966)

  • Extra shortcuts enabled from brush tools on views where not necessary (#8971)

  • [Helm] Fixed Nuclio dashboard crashes when running in a cluster that doesn't use Docker (#8825)

  • [SDK] cvat_sdk.auto_annotation.functions.torchvision_detection and torchvision_instance_segmentation no longer declare meaningless "N/A" labels (#8997)

Security

v2.25.0

09 Jan 18:17
7bf0b26
Compare
Choose a tag to compare

Added

  • [CLI] Added commands for working with native functions (#8821)

  • Ultralytics YOLO formats now support tracks (#8883)

Changed

  • YOLOv8 formats renamed to Ultralytics YOLO formats (#8863)

  • The match_empty_frames quality setting is changed to empty_is_annotated. The updated option includes any empty frames in the final metrics instead of only matching empty frames. This makes metrics such as Precision much more representative and useful. (#8888)

Fixed

  • Changing rotation after export/import in Ultralytics YOLO Oriented Boxes format (#8891)

  • Export to yolo formats if both Train and default dataset are present (#8884)

  • Issue with deleting frames (#8872)

v2.24.0

20 Dec 08:27
9fafd98
Compare
Choose a tag to compare

Added

  • [CLI] Added new commands: project create, project delete, project ls (#8787)

  • [SDK] You can now use client.projects.remove_by_ids to remove multiple projects (#8787)

  • Support for boolean parameters in annotations actions (#8798)

Changed

  • Improved uniformity of validation frames distribution in honeypot tasks and random honeypot rerolls (#8776)

  • [CLI] Switched to a new subcommand hierarchy; now CLI subcommands have the form cvat-cli <resource> <action> (#8787)

  • [CLI] The output of the task create, task create-from-backup and project create commands is now just the created resource ID, making it machine-readable (#8833)

  • /api/events can now be used to receive events from several sources (#8799)

Deprecated

  • [CLI] All existing CLI commands of the form cvat-cli <action> are now deprecated. Use cvat-cli task <action> instead (#8787)

Removed

  • Automatic calculation of quality reports in tasks (#8790)

Fixed

  • Uploading a skeleton template in configurator does not work (#8822)

  • Installation of YOLOv7 on GPU (#8824)

  • [Server API] Significantly improved preformance of honeypot changes in tasks (#8789)

  • [Server API] PATCH tasks/id/validation_layout responses now include correct disabled_frames and handle simultaneous updates of disabled_frames and honeypot frames correctly (#8789)

  • Fixed handling of tracks keyframes from deleted frames on export (#8834)

  • Exporting datasets could start significantly later than expected, both for 1 and several users in the same project/task/job (#8721)

  • Scheduled RQ jobs could not be restarted due to incorrect RQ job status updating and handling (#8721)

v2.23.1

09 Dec 08:17
e50cf53
Compare
Choose a tag to compare

Changed

  • [CLI] Log messages are now printed on stderr rather than stdout (#8784)

Fixed

  • Optimized memory consumption and reduced the number of database queries when importing annotations to a task with a lot of jobs and images (#8676)

  • Incorrect display of validation frames on the task quality management page (#8731)

  • Player may navigate to removed frames when playing (#8747)

  • User may navigate forward with a keyboard when a modal opened (#8748)

  • fit:canvas event is not generated if to fit it from the controls sidebar (#8750)

  • Color of 'Create object URL' button for a not saved on the server object (#8752)

  • Failed request for a chunk inside a job after it was recently modified by updating validation_layout (#8772)

  • Memory consumption during preparation of image chunks (#8778)

  • Possible endless lock acquisition for chunk preparation job (#8769)

  • Fixed issue: Cannot read properties of undefined (reading 'getUpdated') (#8785)

v2.23.0

29 Nov 08:20
424142e
Compare
Choose a tag to compare

Added

  • Support for direct .json file import in Datumaro format (#7125)

  • [SDK, CLI] Added a conf_threshold parameter to cvat_sdk.auto_annotation.annotate_task, which is passed as-is to the AA function object via the context. The CLI equivalent is auto-annotate --conf-threshold. This makes it easier to write and use AA functions that support object filtering based on confidence levels (#8688)

  • [SDK] Built-in auto-annotation functions now support object filtering by confidence level (#8688)

  • New events (create|update|delete):(membership|webhook) and (create|delete):invitation (#8616)

  • [SDK] Added new auto-annotation helpers (mask, polygon, encode_mask) to support AA functions that return masks or polygons (#8724)

  • [SDK] Added a new built-in auto-annotation function, torchvision_instance_segmentation (#8724)

  • [SDK, CLI] Added a new auto-annotation parameter, conv_mask_to_poly (--conv-mask-to-poly in the CLI) (#8724)

  • A user may undo or redo changes, made by an annotations actions using general approach (e.g. Ctrl+Z, Ctrl+Y) (#8727)

  • Basically, annotations actions now support any kinds of objects (shapes, tracks, tags) (#8727)

  • A user may run annotations actions on a certain object (added corresponding object menu item) (#8727)

  • A shortcut to open annotations actions modal for a currently selected object (#8727)

  • A default role if IAM_TYPE='LDAP' and if the user is not a member of any group in 'DJANGO_AUTH_LDAP_GROUPS' (#8708)

  • The POST /api/lambda/requests endpoint now has a conv_mask_to_poly parameter with the same semantics as the old convMaskToPoly parameter (#8743)

  • [SDK] Model instances can now be pickled (#8746)

Changed

  • Chunks are now prepared in a separate worker process (#8618)

  • [Helm] Traefik sticky sessions for the backend service are disabled (#8659)

  • Payload for events (create|update|delete):(shapes|tags|tracks) does not include frame and attributes anymore (#8616)

Deprecated

  • The convMaskToPoly parameter of the POST /api/lambda/requests endpoint is deprecated; use conv_mask_to_poly instead (#8743)

Removed

  • It it no longer possible to run lambda functions on compressed images; original images will always be used (#8683)

Fixed

  • Export without images in Datumaro format should include image info (#7125)

  • Inconsistent zOrder behavior on job open (#8669)

  • Ground truth annotations can be shown in standard mode (#8675)

  • Keybinds in UI allow drawing disabled shape types (#8685)

  • Style issues on the Quality page when browser zoom is applied (#8698)

  • Flickering of masks in review mode, even when no conflicts are highlighted (#8698)

  • Fixed security header duplication in HTTP responses from the backend (#8726)

  • The error occurs when trying to copy/paste a mask on a video after opening the job (#8728)

  • Attributes do not get copied when copy/paste a mask (#8728)

v2.22.0

11 Nov 13:57
c737f08
Compare
Choose a tag to compare

Added

  • Feature to hide a mask during editing (#8554)

  • A quality setting to compare point groups without using bbox (#8634)

  • A quality check option to consider empty frames matching (#8652)

Changed

  • Reduced memory usage of the utils container (#8672)

Removed

  • Removed unused business group (#8607)

Fixed

  • Propagation creates copies on non-existing frames in a ground truth job (#8550)

  • Exporting projects with tasks containing honeypots. Honeypots are no longer exported. (#8597)

  • Error after creating GT job on Create job page with frame selection method random_per_job (#8623)

  • Fixed issue 'Cannot read properties of undefined (reading 'push')' (#8648)

  • Re-newed import/export request failed immediately if the previous failed (#8649)

  • Fixed automatic zooming in attribute annotation mode for masks (#8657)

  • Export dataset in CVAT format misses frames in tasks with non-default frame step (#8662)

  • Incorrect progress representation on Requests page (#8668)