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

[GSoC2024]Import annotations keeping current ones(#4747) #7771

Open
wants to merge 2 commits into
base: develop
Choose a base branch
from

Conversation

EBayego
Copy link

@EBayego EBayego commented Apr 15, 2024

This pull request keeps the current annotations without deleting them when new ones are imported, joining the current ones with the new ones.

Motivation and context

This change is linked to issue #4747, and it arises from the need to preserve the current annotations instead of deleting them when new ones are imported. Now, in the annotations import window, there will be an option to keep the current annotations or not to keep them. To achieve this, the mentioned switch option has been added in the import window, and also a new API flag is created, which takes the value of the switch and forwards it to the backend logic, where it is processed and, if true, does not delete the current annotations.
image

How has this been tested?

I have manually tested importing annotations with different formats and types, including having current annotations of all possible types to cover all possible cases. It has also been tested when the "keep old annotations" option is not checked, and in all cases, it works correctly.
As for the code tests, if the current tests run successfully, it means that the new functionality of not deleting the annotations works correctly, as this is True by default. I am currently working on coding the tests to verify that importing also works when the current annotations are deleted.

Checklist

  • I submit my changes into the develop branch
  • I have created a changelog fragment
  • I have updated the documentation accordingly
  • I have added tests to cover my changes
  • I have linked related issues (see GitHub docs)
  • I have increased versions of npm packages if it is necessary
    (cvat-canvas,
    cvat-core,
    cvat-data and
    cvat-ui)

The test checkbox has not been checked due to the explanation provided in the previous section. I will mark it once the coded tests are developed.

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.

Keep current annotations without deleting them, adding the imported ones.
@EBayego EBayego requested a review from nmanovic as a code owner April 15, 2024 17:43
@zhiltsov-max
Copy link
Contributor

zhiltsov-max commented Apr 15, 2024

Hi, please change the default to the old behvaior, so that all the existing clients could obtain the same results without any additional actions. Please also add relevant tests for the updated APIs. Also, there was a pop-up confirmation dialog about the annotation removal on import in UI, probably it should be updated.

@nmanovic
Copy link
Contributor

@EBayego , are you going to finish the PR?

@EBayego
Copy link
Author

EBayego commented Apr 28, 2024

Yes, I want to finish it if you let me, but these days I don't have time to dedicate to it, I will do it as soon as possible.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants