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.
- 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)
- 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)
- 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)
- 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, https://github.com/opencv/cvat/issues/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 convertation 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, https://nvd.nist.gov/vuln/detail/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 https://nvd.nist.gov/vuln/detail/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
## [Unreleased]
### Added
-
### Changed
-
### Deprecated
-
### Removed
-
### Fixed
-
### Security
-