Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Interpolation of polyshapes in CVAT #1571

Merged
merged 42 commits into from Jun 22, 2020
Merged

Interpolation of polyshapes in CVAT #1571

merged 42 commits into from Jun 22, 2020

Conversation

bsekachev
Copy link
Member

@bsekachev bsekachev commented May 20, 2020

Motivation and context

Need to be able interpolate not only rectangles, but also polygones, polylines and points. A lot of customers asked us about it.

Interpolation algorithm works when both polygons (left and right) drawn in the same orientation and with the same start point (according to labeled object). It is better if the latest points of these polygon also stay at the same place of labeled object.

How has this been tested?

Manual testing

Checklist

License

  • I submit my code changes under the same MIT License that covers the project.
    Feel free to contact the maintainers if that's a concern.
  • I have updated the license header for each file (see an example below)
# Copyright (C) 2020 Intel Corporation
#
# SPDX-License-Identifier: MIT

Resolved #824
Resolved #1032

Screenshot from 2020-05-20 23-56-26
Screenshot from 2020-05-20 23-56-33

PPTX file describes how interpolation works:
Interpolation.pptx

@bsekachev bsekachev added the enhancement New feature or request label May 20, 2020
@coveralls
Copy link

coveralls commented May 20, 2020

Pull Request Test Coverage Report for Build 6032

  • 32 of 182 (17.58%) changed or added relevant lines in 1 file are covered.
  • 171 unchanged lines in 2 files lost coverage.
  • Overall coverage decreased (-0.4%) to 65.458%

Changes Missing Coverage Covered Lines Changed/Added Lines %
cvat/apps/dataset_manager/annotation.py 32 182 17.58%
Files with Coverage Reduction New Missed Lines %
cvat/apps/dataset_manager/annotation.py 4 35.68%
src/annotations-objects.js 167 62.18%
Totals Coverage Status
Change from base Build 5996: -0.4%
Covered Lines: 10950
Relevant Lines: 16319

💛 - Coveralls

cvat/apps/dataset_manager/annotation.py Outdated Show resolved Hide resolved
@nmanovic
Copy link
Contributor

@ActiveChooN , could you please test and review the PR? Need to merge it ASAP.

@nmanovic
Copy link
Contributor

@bsekachev , could you please attach your great presentation in PDF format for future reference?

@bsekachev
Copy link
Member Author

@bsekachev , could you please attach your great presentation in PDF format for future reference?

Sure. I pushed .pdf to the repository and attached .pptx to the PRs just in case if we want to change it later.

azhavoro
azhavoro previously approved these changes Jun 16, 2020
ActiveChooN
ActiveChooN previously approved these changes Jun 18, 2020
ActiveChooN
ActiveChooN previously approved these changes Jun 19, 2020
@bsekachev
Copy link
Member Author

@nmanovic

We are waiting for your review

docker-compose.yml Outdated Show resolved Hide resolved
Copy link
Contributor

@nmanovic nmanovic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great job!

@nmanovic nmanovic merged commit a300684 into develop Jun 22, 2020
@nmanovic nmanovic deleted the bs/interpolation branch June 22, 2020 13:27
frndmg pushed a commit to signatrix/cvat that referenced this pull request Aug 5, 2020
* cvat-core interpolation

* Unlocked polyshapes

* Updated versions

* Second implementation

* Splitted line

* Inverse, set start point, fixed editing a bit, point menu refactoring

* Removed extra code, fixed bug: Cannot open shape context menu when point context menu is opened

* Do not close shape context menu on change shap[e

* Improved editing

* Updated mouseevents to edit/delete, added ability to redraw (shift + N)

* Ignore tags when redraw

* Ingoring tags on canvas, added method isAbleToChangeFrame, hide shapes during redraw, do not allow changing frame during redraw

* Canceled advanced editing for polygons

* A couple of fixes in interpolation, editing, reducing number of points

* Moved change orientation functionality

* Fixed interpolation algorithm

* Zero division issue

* Zero division issue

* Segment minimization

* Server implementation

* Keyframe set to False

* Simplified code, fixed server side code

* Updated changelog.md

* Added pdf describing interpolation

* Resolved some issues

* Updated UI version

* Updated canvas version

* Fixed host
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

polygon interpolation Interpolation of polygons
6 participants