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

Improve documentation for overlap parameter #22

Closed
kodonnell opened this issue Aug 6, 2018 · 4 comments
Closed

Improve documentation for overlap parameter #22

kodonnell opened this issue Aug 6, 2018 · 4 comments
Assignees
Labels
documentation Documentation should be updated Easy to fix The issue is easy to fix and probably it will be release in a next minor release enhancement New feature or request
Milestone

Comments

@kodonnell
Copy link

My understanding is that overlap just specifies how many frames overlap when splitting a video into segments. If that's correct, what's the purpose? Does it actually do anything for the user? (E.g. if I do the tracks on the first segment, are they copied across to the next segment in the overlapping region? This doesn't appear to be the case.) Put another way- should I just set overlap=0 in my video tagging examples, to avoid having to manually resolve different taggings from each segment in the overlap?

Sorry if I've misunderstood something obvious.

PS - great tool!

@nmanovic
Copy link
Contributor

nmanovic commented Aug 7, 2018

Hi @kodonnell ,

Thanks for your question and feedback. Your understanding is correct. There are several ways to use the parameter:

Does it answer your question?

@nmanovic nmanovic added the question Further information is requested label Aug 7, 2018
@kodonnell
Copy link
Author

Thanks for the thorough response @nmanovic

For an interpolation task (video sequence) if an object exists on overlapped segments it will be automatically merged into one track ...

Hmmm - I thought I tested this by creating a task with multiple segments and overlaps. When I added a track to the first segment (I just left one box in the same place the whole time), then closed it and opened the next segment, I didn't see the track in the overlap. Is there a step I missed? (I can also try to reproduce - I'm going by memory, so might not have done it correctly.)

For an annotation task (separate images) ...

Just to clarify for others reading this: I take it by 'separate images' you just mean single-frame annotations on the video? (Given CVAT is only for video.) Otherwise I'm not sure how separate images can overlap?

Use overlap=n to estimate quality of the annotations (it isn't implemented)

OK, I'm getting a little confused - I thought overlap=n meant there were n frames overlapping between segments?

Just thinking - maybe a video illustrating this would be good? I found the annotation video really useful, so maybe something quick demonstrating how segments/overlap work (and what happens in edge case you refer to e.g. "automatically merged into one (if it is possible)").

@nmanovic
Copy link
Contributor

nmanovic commented Aug 7, 2018

I didn't see the track in the overlap. Is there a step I missed?

You have to annotate it explicitly on all segments. After that merge will work. It will not propagate a bounding box from one segment to another automatically because in common case it isn't correct. Thus you annotate an object on first segment. You annotate the same object on second segment and if you do it right you will have one track inside your annotation file. If annotations on different segments (on overlapped frames) are very different or match is bad or overlap is 0 you will have 2 tracks for the same object.

I take it by 'separate images' you just mean single-frame annotations on the video? (Given CVAT is only for video.)

CVAT can annotate video or images (you can upload a set of images or even an archive with images). For example, you upload 100 images, segment size is 50 and overlap is 10. In this case you should have (if I remember correctly) 3 segments: 0 - 49, 40 - 89, 80 - 99. Thus two adjacent segments have 10 images overlap. In general "overlapped" images can be annotated differently. Merge works in such cases.

@kodonnell
Copy link
Author

Thanks for the clarification.

It will not propagate a bounding box from one segment to another automatically because in common case it isn't correct.

In our case it would be correct to do this - we'd prefer to label something only once. I.e. I add tracks in segment 1, and then when I go to segment 2, it carries across all tracks from e.g. the last 10 frames of segment 1 (for overlap = 10) to the first 10 frames of segment 2. There won't be any need to merge the tracks, as it's obvious that if you've copied track 1, then it's still track 1. However - maybe ours is a special use case (and we have no experience with big tagging tasks).

Anyway, thank @nmanovic - feel free to close the task, or leave it open as a reminder to update the docs etc.

@nmanovic nmanovic changed the title What is the purpose/function of overlap? Improve documentation for overlap parameter Aug 10, 2018
@nmanovic nmanovic added enhancement New feature or request Easy to fix The issue is easy to fix and probably it will be release in a next minor release and removed question Further information is requested labels Aug 10, 2018
@nmanovic nmanovic self-assigned this Aug 10, 2018
@nmanovic nmanovic added this to the Release 0.1.3 milestone Aug 13, 2018
@nmanovic nmanovic modified the milestones: Release 0.1.3, Release 0.2.0 Aug 28, 2018
@nmanovic nmanovic added the documentation Documentation should be updated label Sep 20, 2018
nmanovic pushed a commit that referenced this issue Sep 21, 2018
Fix #22 (Improve documentation for overlap parameter)
nmanovic added a commit that referenced this issue Sep 21, 2018
Fix #22 (Improve documentation for overlap parameter)
nmanovic added a commit that referenced this issue Sep 21, 2018
* Improve documentation for overlap parameter. (#82)
Fix #22 (Improve documentation for overlap parameter)
* Improve description how to specify labels with attributes. (#81)
Fix #67 (clarify how to create multiple labels)
TOsmanov pushed a commit to TOsmanov/cvat that referenced this issue Aug 23, 2021
- Extracted common code for Importers, Transforms, Extractors, removed unnecessary code
- Improved caching in transforms. Creation of a transform could led to unnecessary source dataset traversal with corresponding performance consequences
- Dataset class moved to its own file
- All DatasetItems and Extractors now use default subset name "default" instead of "None". The values are interchangeable
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Documentation should be updated Easy to fix The issue is easy to fix and probably it will be release in a next minor release enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants