42 Commits (051316dde8e6a9d3651938b48b51217528af8240)

Author SHA1 Message Date
Roman Donchenko 330f123785
Fix some typos (#5601) 3 years ago
Waqar Shahid Qureshi 6b41630144
Update model_handler.py (#4665)
use the OpenCV contour function to extract contour instead of
scikit-image function. to solve the problem of poor drawing of the
contour see the issue 4660
https://github.com/openvinotoolkit/cvat/issues/4660
3 years ago
Rodrigo Berriel 43ed0a2e2d
Fix HRNet dimension error on images with alpha channel (#5570)
This is pretty much the same fix applied to f-BRS in #5384. We've been
using HRNet for a while and now an then we receive "500 errors" just as
reported in #5299 when someone forgets to drop the alpha-channel from
our images.

### Motivation and context
The RuntimeError is a little bit different, but comes from the same
issue: RGBA instead of RGB images:
> RuntimeError: Given groups=1, weight of size [16, 3, 1, 1], expected
input[*, 4, *, *] to have 3 channels, but got 4 channels instead.

### How has this been tested?
I created a task with images with and w/o alpha channel, and the
interactor works on both now.
3 years ago
Hardik Dava f3843aa74f
YoloV7 serverless detector feature for auto annotation (#5552)
### Motivation and context

Integration of YOLOv7 as a serverless nuclio function that can be used
for auto-labeling. YoloV7 is the SOTA at the time of this PR therefore
it would make sense to support it in CVAT. The integration is quite
simple into CVAT as docker based on Ultralytics YoloV5 with coco
pretrained model (https://github.com/WongKinYiu/yolov7) and a docker
image (https://hub.docker.com/r/ultralytics/yolov5).

related issue: #5548 

### How has this been tested?

Automatic annotation was run using YOLOv7 on a custom dataset.
The serverless function was deployed using

```
nuctl deploy --project-name cvat \
  --path serverless/onnx/WongKinYiu/yolov7/nuclio \
  --volume `pwd`/serverless/common:/opt/nuclio/common \
  --platform local
```

Then using the 'Automatic annotation' action the function was tested and
the auto-generated labels were controlled to check that no coordinates
misfit is happening.

### Use custom model:
1. Export your model with NMS for image resolution of 640x640
(preferable).
2. Copy your custom model yolov7-custom.onnx to /serverless/common
3. Modify function.yaml file according to your labels.
4. Modify model_handler.py as follow:
```
 self.model_path = "yolov7-custom.onnx"
```

Co-authored-by: Nikita Manovich <nikita@cvat.ai>
Co-authored-by: yasakova-anastasia <yasakova_anastasiya@mail.ru>
3 years ago
Andrey Zhavoronkov 6f09c777f2
Fixed FBRS runtime dimension error on images with alpha channel (#5384) 3 years ago
Anastasia Yasakova 82700f60da
TransT tracker integration (#5226)
* AI tracker was one frame late

* TransT tracker integration

* fixed linter issues

* added transt tracker to readme

* clone a fixed transt version

* nvidia/cuda:11.1-devel-ubuntu20.04 not available anymore, replaced with nvidia/cuda:11.7.0-devel-ubuntu20.04

* Fix show empty tasks (#100)

* Fix show empty tasks

* v1.41.1

* Update changelog

Co-authored-by: Boris Sekachev <sekachev.bs@gmail.com>

* [Snyk] Upgrade dotenv-webpack from 7.1.1 to 8.0.0 (#98)

feat: upgrade dotenv-webpack from 7.1.1 to 8.0.0

Snyk has created this PR to upgrade dotenv-webpack from 7.1.1 to 8.0.0.

See this package in npm:
https://www.npmjs.com/package/dotenv-webpack

See this project in Snyk:
https://app.snyk.io/org/cvat/project/6c66365f-c154-46f2-b5db-4a4cd35fea4d?utm_source=github&utm_medium=referral&page=upgrade-pr

Co-authored-by: snyk-bot <snyk-bot@snyk.io>

* Add repo disclaimer in README (#127)

* Update README.md

* Update README.md

* Update tools-control.tsx

* Add ModelHandler class

* Small fixes

Co-authored-by: dschoerk <dominik.schoerkhuber@tuwien.ac.at>
Co-authored-by: Dominik Schörkhuber <dschoerk@gmx.at>
Co-authored-by: Dominik Schörkhuber <e1027470@student.tuwien.ac.at>
Co-authored-by: Nikita Manovich <nikita@cvat.ai>
Co-authored-by: Maria Khrustaleva <maya17grd@gmail.com>
Co-authored-by: Boris Sekachev <sekachev.bs@gmail.com>
Co-authored-by: Andrey Zhavoronkov <andrey@cvat.ai>
Co-authored-by: snyk-bot <snyk-bot@snyk.io>
Co-authored-by: Maxim Zhiltsov <zhiltsov.max35@gmail.com>
3 years ago
Boris Sekachev f62aa276cd
Added paint brush tools (#4543) 3 years ago
T 5936bc5001
add yolov5 serverless function leveraging nvidia gpu (#4960) 3 years ago
Adam Teuscher c8c40df37f
Fixes some serverless functions (HRNET, IOG, f-BRS) (#4944)
* Update curl command for Google Drive weights and adjust yaml files (#4736)

* update changelog

Co-authored-by: Boris Sekachev <boris.sekachev@yandex.ru>
3 years ago
Anastasia Yasakova 7cc05e80de
Fix serverless functions (#5039)
* Fix some serverless functions

* Update Changelog

* Fixes
3 years ago
Saurabh Khanduja 88523aa77e
Fix tensorflow docker image tag for siammask (#5030) 3 years ago
Boris Sekachev bb37bbd215
Adjusted application links (#4880)
* Fixed links

* Updated license headers
4 years ago
Andrey Zhavoronkov 5e2eda7601
Extend helm to support Serverless functions and Analytics (#110) 4 years ago
Boris Sekachev 1a94190572
Changed links openvinotoolkit > cvat-ai (#3)
Changed links openvinotoolkit > cvat.ai
4 years ago
Boris Sekachev 4f1a778d22
Fixed Intel license headers (#119) 4 years ago
Andrey Zhavoronkov 2598641261
Fixed build of retinanet serverless function image (#54) 4 years ago
Vincent Richard 737ee712d2
fix build dependencies for Siammask (#4486)
Co-authored-by: Vincent Richard <richard-v@macnica.co.jp>
Co-authored-by: Andrey Zhavoronkov <andrey.zhavoronkov@intel.com>
4 years ago
Nikita Manovich e40cd39d6a Moved files for face-detection-0205 into nuclio subdirectory 4 years ago
Mikhail Treskin ad11b587b5
Handle attributes returned from nuclio detector (#3917) 4 years ago
Nikita Manovich 2f1e89cc3b
Fix YOLOv5 serverless function (#4344) 4 years ago
wartek69 182d941fad
Added YOLOv5 serverless function for auto labeling (#4178)
* added yolov5 serverless function for auto labeling
* updated CHANGELOG.md

Co-authored-by: Alex <aleksander.chernyavskiy@seafar.eu>
4 years ago
Stella Alice Schlotter 04bf7124b2 fix dextr deployment. See https://github.com/openvinotoolkit/cvat/issues/3819 4 years ago
Timur Osmanov 8fea50780d
update docs hrnet18 (#3786) 4 years ago
Xiong Jie 2d75101c73
Added HRNet18 click based interactive segmentation (#3729) (#3740)
* Added HRNet18 click based interactive segmentation (#3729)

The commit adds serverless container that has a click based
interactive segmentation model(HRNet18) that performs better than
f-BRS method statistically.

* fixup! Added HRNet18 click based interactive segmentation (#3729)

Co-authored-by: Nikita Manovich <nikita.manovich@intel.com>
4 years ago
Boris Sekachev dbdcd4fd86
Added SiamMask CUDA implementation (tracking), reworked tracking approach (#3571) 4 years ago
Boris Sekachev 59af610f12
Semi-automatic tools enhancements (Non-blocking UI, tips) (#3473) 5 years ago
Nikita Manovich 0baf794674
Tutorial about serverless functions (#3124)
Co-authored-by: Roman Donchenko <roman.donchenko@intel.com>
5 years ago
Boris Sekachev 330b8a832f
Semi-automatic tools enhancements (Stage 0) (#3417)
* Improved removable points, added a button to finish current object
* Code refactoring for ai tools and opencv
* Fixed style for workspace selector
* IOG UX fix
* Updated version & changelog
* Added 'min_neg_points' parameter to serverless interactors
* Return 'min_neg_points' from the server
5 years ago
Boris Sekachev 3d496ef904
Added some fixes to DEXTR model handler (#3325)
* Added some fixes to DEXTR model handler

* Updated Changelog
5 years ago
Roman Donchenko d15a3199c2
Fix many spelling errors (#3244)
* Fix spelling errors

* Bump version numbers after the spelling fixes

* Fix OSX build (os.mknod requires super-priviligies)

* Fixed eslint warnings.

Co-authored-by: Nikita Manovich <nikita.manovich@intel.com>
5 years ago
Ali Jahani 59c3b28116
GPU-Suport: Mask-RCNN + Minor GPU fixes (#2714)
* fixed cpu mask rcnn+preparation for gpu
* fix-limit gpu memory to 30% of total memory per worker

Co-authored-by: Nikita Manovich <nikita.manovich@intel.com>
5 years ago
Nikita Manovich 97cb892844
IOG serverless function + some fixes (#2578)
* Initial version of Inside Outside Guidance serverless function
* Support neg_points in interactors
* Improved deployment process of serverless functions
* Improve installation.md for serverless functions.
* Update CHANGELOG, use NUCLIO_DASHBOARD_DEFAULT_FUNCTION_MOUNT_MODE as
recommended by nuclio developers.
* Disable warning from markdown linter about max line length for a table.
* Fix IOG function with conda environment
* Fix tensorflow matterport/mask_rcnn

Co-authored-by: Boris Sekachev <boris.sekachev@intel.com>
5 years ago
Ali Jahani 8343dd776e
Auto annotation GPU support (#2546)
* updated the documentation

* boosting nuclio version to 1.5.8

* fixed bug for png alpha channel

* added support for tensorflow gpu

* fixed typos

* Update cvat/apps/documentation/installation_automatic_annotation.md

Co-authored-by: Andrey Zhavoronkov <andrey.zhavoronkov@intel.com>

* Addressing pr comments - improved documentation and removed code duplication

* removed extra spaces

* Update nuclio to 1.5.8

* fixed typo

* removed extra cpu deployment

* renamed files

Co-authored-by: Andrey Zhavoronkov <andrey.zhavoronkov@intel.com>
5 years ago
xuchen a9b2817562
fix for kubrenetes name (DNS-1123) (#2415) 5 years ago
Vitaliy Nishukov 7512fd6883
Reformatted (#2349) 5 years ago
Andrey Zhavoronkov 7543f5ef6f
fixed linter issues (#2305) 5 years ago
Nikita Manovich 5ebd91af15
Initial version of FBRS interactive segmentation (#2094)
* Initial version of FBRS interactive segmentation

* Add min_pos_points for dextr

* Fix fbrs serverless function.

* Fix codacy issues.

* Minor changes

* Fix codacy issues.

* Fix typo

* Update CHANGELOG

* Add license header

* Fix comments in yaml
6 years ago
Savan Visalpara e52ff96adf
fix: discard polygons with length of 4 or less (#2100)
* discard polygons with length of 4 or less

* updated minimum length of polygons

* added line in CHANGELOG

Co-authored-by: Nikita Manovich <nikita.manovich@intel.com>
6 years ago
Nikita Manovich 5a8d7196e8
Workaround a problem with deployment openvino serverless functions (#1996)
* Fix a problem with permission.

* Update CHANGELOG.md
6 years ago
Nikita Manovich b5d5f1cbef
Siammask tracker as DL serverless function (#1988)
* Implement SiamMask serverless function (cannot be deployed yet)

* Fix deployment (need to test the function itself).

* Removed mask from state in SiamMask serverless function.

* Update CHANGELOG.md

* Add support of the tracker serverless function into lambda manager.

* Add an example how to deploy siammask serverless function.
6 years ago
Nikita Manovich 18d04ff0f4
Add a table with serverless functions into README. (#1981) 6 years ago
Nikita Manovich e7585b8ce9
DL models as serverless functions (#1767)
* Initial experiments with nuclio

* Update nuclio prototype

* Improve nuclio prototype for dextr.

* Dummy lambda manager

* OpenFaaS prototype (dextr.bin and dextr.xml are empty).

* Moved openfaas prototype.

* Add comments

* Add serializers and HLD for lambda_manager

* Initial version of Mask RCNN (without debugging)

* Initial version for faster_rcnn_inception_v2_coco

* Fix faster_rcnn_inception_v2_coco

* Implemented mask_rcnn_inception_resnet_v2_atrous_coco

* Implemented yolo detector as a lambda function

* Removed dextr app.

* Added types for each function (detector and interactor)

* Initial version of lambda_manager.

* Implement a couple of methods for lambda:

GET /api/v1/lambda/functions
GET /api/v1/lambda/functions/public.dextr

* First working version of dextr serverless function

* First version of dextr which works in UI.

* Modify omz.public.faster_rcnn_inception_v2_coco

- image decoding
- restart policy always for the function

* Improve omz.public.mask_rcnn_inception_resnet_v2_atrous_coco

* Improve omz.public.yolo-v3-tf function

* Implemented the initial version of requests for lambda manager.

* First working version of POST /api/v1/lambda/requests

* Updated specification of function.yaml (added labels and used annotations section).

* Added health check for containers (nuclio dashboard feature)

* Read labels spec from function.yaml.

* Added settings for NUCLIO

* Fixed a couple of typos. Now it works in most cases.

* Remove Plugin REST API

* Remove tf_annotation app (it will be replaced by serverless function)

* Remove tf_annotation and cuda components

* Cleanup docs and Dockerfile from CUDA component.

* Just renamed directories inside serverless

* Remove redundant files and code

* Remove redundant files.

* Remove outdated files

* Remove outdated code

* Delete reid app and add draft of serverless function for reid.

* Model list in UI.

* Fixed the framework name (got it from lambda function).

* Add maxRequestBodySize for functions, remove redundant code from UI for auto_annotation.

* Update view of models page.

* Unblock mapping for "primary" models.

* Implement cleanup flag for lambda/requests and labeling mapping for functions.

* Implement protection from running multiple jobs for the same task.

* Fix invocation of functions in docker container.

* Fix Dockerfile.ci

* Remove unused files from lambda_manager

* Fix codacy warnings

* Fix codacy issues.

* Fix codacy warnings

* Implement progress and cancel (aka delete) operation.

* Send annotations in batch.

* Fix UI. Now it can retrieve information about inference requests in progress.

* Update CHANGELOG.md

* Update cvat-ui version.

* Update nuclio version.

* Implement serverless/tensorflow/faster_rcnn_inception_v2_coco

* Add information how to install nuclio platform and run serverless functions.

* Add installation instructions for serverless functions.

* Update OpenVINO files which are responsible for loading network

* relocated functions

* Update dextr function.

* Update faster_rcnn function from omz

* Fix OpenVINO Mask-RCNN

* Fix YOLO v3 serverless function.

* Dummy serverless functions for a couple of more OpenVINO models.

* Protected lambda manager views by correct permissions.

* Fix name of Faster RCNN from Tensorflow.

* Implement Mask RCNN via Tensorflow serverless function.

* Minor client changes (#1847)

* Minor client changes

* Removed extra code

* Add reid serverless function (no support in lambda manager).

* Fix contribution guide.

* Fix person-reidentification-retail-300 and implement text-detection-0004

* Add semantic-segmentation-adas-0001

* Moving model management to cvat-core (#1905)

* Squached changes

* Removed extra line

* Remove duplicated files for OpenVINO serverless functions.

* Updated CHANGELOG.md

* Remove outdated code.

* Running dextr via lambda manager (#1912)

* Deleted outdated migration.

* Add name for DEXTR function.

* Fix restart policy for serverless functions.

* Fix openvino serverless functions for images with alpha channel

* Add more tensorflow serverless functions into deploy.sh

* Use ID instead of name for DEXTR (#1926)

* Update DEXTR function

* Added source "auto" inside lambda manager for automatic annotation.

* Customize payload (depends on type of lambda function).

* First working version of REID (Server only).

* Fix codacy warnings

* Avoid exception during migration (workaround)

File "/usr/local/lib/python3.5/dist-packages/django/db/utils.py", line 89, in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
  File "/usr/local/lib/python3.5/dist-packages/django/db/backends/utils.py", line 84, in _execute
    return self.cursor.execute(sql, params)
django.db.utils.ProgrammingError: table "engine_pluginoption" does not exist

* Add siammask serverless function (it doesn't work, need to serialize state)

* Run ReID from UI (#1949)

* Removed reid route in installation.md

* Fix a command to get lena image in CONTRIBUTION guide.

* Fix typo and crash in case a polygon is a line.

Co-authored-by: Boris Sekachev <40690378+bsekachev@users.noreply.github.com>
6 years ago