-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Adding new images to an existing task #4364
Comments
@RRighart , please use project feature. You can think that a project is a dataset. Every task in the project can be in a specific subset (e.g., train, test, val). Jobs help you to annotate a task in parallel by several annotators. If you want to add a couple of images to a task, just create a project and move both tasks into the project. |
The suggestion to use a project instead does not necessarily serve as good workaround here. This is because an annotation schema is modeled per project to allow multiple tasks to share this schema. When modeling tasks as separate projects there is no function to use a common annotation schema. So having the option to add new images to an existing dataset would be a useful enhancement. |
@holgerbrandl , you can create multiple projects. One project for each dataset. I'm not sure which scenario isn't covered. Could you please explain? |
Sure, I can create multiple projects. But there is no mechanism to ensure that they share the same common annotation model. Tasks on the contrary share the annotation model of the project. |
Could you clarify what is |
Okay, I see. You are speaking about labels specification, right?
You can copy the specification from one project to another using Raw tab (just with Ctrl+C, Ctrl+V). |
That's nice workaround for an intial setup. Still, it requires quite some effort to keep them in sync. That's why I'd think this ticket is valid/open. |
Personally I do not have ideas how it could be implemented. Maybe I do not truly understand the use-case and why you can't use one project with a certain labels specifications. If the community is ready to provide a common solution, it would be great. |
@holgerbrandl , I agree with Boris. Need to understand why you think it is a workarond but not a solution for your problem. Basically in CVAT
|
It's all about keeping projects well organized. Assuming I have complex set of annotations defined for a project, and have separate 2 tasks (e.g. for different types of objects, let's say planes and cars), and I happen to find another important image of a car, we currently have to create a new task in the project for just this single image, leading to redundancy in the project layout. That's why it would imho be a nice feature in CVAT if a user could simply add an image to an existing task. |
We do not provide ability to add images to existing tasks because of current concept. The use-case you described has a solution as a creating a new task (considering a project as a whole dataset). The task in this case includes all the project labels, so you do not need to setup them again. |
Was this ever given further consideration or implemented? I would also like the ability to add images to an existing task. My use case is that data is submitted from multiple sources and my dataset is growing. It would be convenient to annotate all of one source's images within one task, and another source's images within another task. This is because there will be commonalities within a given source's images, and looking at prior annotated images from that source would be helpful in annotating new images. Our project is still stealthy, so I can't go into great detail, but I will try to answer any clarifying questions. |
If there are repeated images in a project across multiple tasks, it seems it does not update them. Rather it simply repeats them, then throws out an error when u try to export. Also makes it harder to annotate and quality check if there are repeated images across a project throughout several tasks |
0.5
I agree with this hard. Many use cases fall under this category |
@siddagra , @PercipioCorey , please use projects. You can add new tasks into a project. It is how the use case is supported. |
HI. I am not understanding this ( as usual). My scenario. I have created a project and added a video. I have used rectangle tracks on various objects. I export as Yolo1 and have a python script that trains the data and produces the best.pt file. Now that I have tested this and the results are ok I need to add a few more videos and product images to the project then annotate them and output all these to Yolo 1( ie the original video + additions ). Sorry for being dumb but how do I add files to the project. Cheers |
@Toolfolks the proposed solution is to create a new project for your new videos/images, and copy-paste the Raw label JSON text from your previous project to the new project. |
How are duplicates handled in such a case? |
+1 for adding images to an existing task. There are many use cases where datasets grow organically. For example, let's say I use a GCP bucket and I have devices that automatically add images to the bucket. There shouldn't be any friction in CVAT to automatically expand a task to annotate latest images. |
Hi all, let's discuss and see if we can improve CVAT in the case. But our current model is the following: The proposal pipeline:
There are multiple issues with extending a task. Let's say you annotate something and mark it as completed. Now you have new data. In which task you want to add new images automatically or manually? Why do you need it if you can create a new task with new data? When you need to export your dataset, just do that. Export your project with all tasks. |
@nmanovic I won't answer for automatic or manual extension because I think each user has different ways to do it (automatic is just a script that performs manual steps using CVAT's APIs or otherwise). For us the use case was that a project provides the labels (use project's labels when creating task), and each task represents a subset of the data. Let's say as an example that task1 contains images of animals indoors and task2 contains images of animals outdoors.
These are just a few of the reasons on top of my head. I also just think that it's natural since removing images from a task/job is already an available feature, so adding is just an expected functionality for the average user (hence the number of issues regarding this). Thanks for your interest in this and hope we can develop this within the CVAT community! |
The issue of adding additional images to a task was raised before here.
Are there currently any updates on this issue ?
I agree that it would be very useful and time-saving if there is an option to add new images later, is this possible now? Unfortunately, I am not able to find this option.
Otherwise, is there a work around, for ex. is it possible to load a new dataset (i.e. including previous images and newly added images), and in parallel load the text files with bounding boxes for those images that were already annotated ?
The text was updated successfully, but these errors were encountered: