English captions are optional and start off. Use the player's captions control to enable them.
Read Part 3 transcript
Now let's look at how AnnoTrack works when several people share a project.
Different team members can have different responsibilities.
The owner manages the team and its billing.
An admin can help manage members, projects, and seats without getting the owner's billing permission.
An annotator creates and saves labels.
A reviewer handles submitted work and approves or rejects it.
A quality assurance lead, or QA lead, can also manage quality-check samples.
A viewer can inspect the team project but can't edit annotations or export the dataset.
Reviewers and QA leads also have annotation-editing permission in the current role setup.
The interface controls and server permissions work together to limit what each role can do.
To invite someone, the team manager enters the person's email, chooses an available role, and sends an invitation.
The member can accept that invitation from their account.
The team page shows current members and pending invitations. It also has controls for managing paid seats.
This supports a workflow where one person labels images, another reviews them, and a third person checks a sample of the approved work.
Everyone can work from the same project instead of passing around several different copies of the dataset.
Once an annotator is happy with an image, they can submit it for review.
If several images are ready, the annotator can select those images and submit them together.
Only the selected images enter that submission.
For example, I can submit twenty finished images while continuing to work on the rest of the project.
The review queue groups the submission so the reviewer can see the waiting work.
The reviewer can filter the queue to the current project or look across the team's projects.
Completed submissions are available too.
When a reviewer opens a submission, the workspace enters Reviewer Mode.
The review toolbar lets them move between submitted images, add a review comment, and approve or reject the current item.
Let's say I labeled a car, but the box cuts off its bumper.
The reviewer can reject the annotation and explain what needs changing.
I can read the feedback, correct the box, save it, and submit the image again.
The annotation status can be Draft, In Review, Approved, or Rejected.
Bounding-box annotations and segmentation annotations are tracked by their annotation type.
That lets me distinguish a review of the boxes from a review of the polygons.
An approved annotation has been accepted through the review workflow.
Its quality still depends on the labeling rules and the care of the reviewer. Approval isn't an automatic measurement of ground-truth accuracy.
The review history records decisions and feedback.
That helps us understand what happened to the work without relying on someone remembering which files they checked.
After review, the QA tools let the team check a random sample of approved annotation records.
The person managing QA chooses a percentage and a team member to handle the sample.
For example, if one hundred approved records are eligible for a new sample, choosing ten percent gives ten QA items.
That's one hundred times ten, divided by one hundred.
The sampler uses approved records that don't already have a QA assignment.
The QA result can be passed or failed.
It can include a score from zero to one hundred, a comment, and an error category when needed.
So I can record whether the problem was a wrong class, a poor boundary, or another labeling issue.
Those scores are entered by the person doing the check.
They are review scores. A neural network isn't automatically calculating whether every annotation is correct.
The team dashboard brings the work together.
It shows image and project counts, team seats, storage, waiting reviews, approved and rejected records, approval rates, review time, and QA progress.
The contributor table shows submitted, approved, and rejected work, reviewer workload, and available QA scores.
If a person hasn't been rated, the interface shows that instead of inventing a score.
I can use the dashboard to see whether a lot of labeling is finished but waiting for review, or whether certain work needs another look.
The numbers help manage the workflow. I still open the images when judging the quality itself.
There are also comments and communication tools.
Comments stay connected to the image we're viewing.
That means I can discuss the actual frame instead of saying, the third picture in the folder, and hoping someone opens the same one.
A comment can also target an annotation object.
For example, I can point out that a particular car box is too wide.
Replies keep the discussion together, and a comment can be resolved when the issue has been dealt with.
Mentions bring a teammate's attention to a comment.
The comment remains visible to team members who can view that image. The mention notification goes to the person I mention.
The Activity tab shows recorded events.
I can filter by person, event type, or date.
That helps when I want to understand when an annotation changed or when a review was completed.
For a broader conversation, there is project team chat.
There are also private messages between participants.
Notifications collect things like mentions, review updates, QA assignments, and ownership requests.
Presence shows active or idle collaborators.
When people work on the same image, live collaboration can show cursor positions and annotation updates.
That's useful when I'm explaining a labeling decision and want the other person to see which object I'm pointing at.
The collaboration window also has a Help tab.
It explains the roles and the review workflow, and there is a downloadable team collaboration guide.
Now, what happens if two people change the same annotation?
The conflict dialog offers four choices.
Use the remote version. Keep my local version. Merge both versions. Or request ownership.
The remote version is the version saved elsewhere.
The local version is the one I'm working with in my browser.
Merge attempts to bring the versions together.
I still review the merged result because two boxes could describe the same object differently.
If one person needs to handle the next save, I can request ownership from the relevant teammate.
That person can grant or decline the request.
A grant is for one use and expires after sixty minutes.
This gives the users an explicit decision instead of quietly losing someone's edits.
It also means collaboration involves handling who can save, which version they're saving, and how competing changes get resolved.
Once the labels are ready, I can check the dataset and export it.
Validate Dataset reports the number of images, annotated images, empty images, boxes, and polygons.
It also shows class counts and lists issues and warnings.
For bounding boxes, it can flag invalid rectangle data, coordinates outside the image, and missing class references.
For polygons, it checks point structure and related class information.
It can also warn about duplicate class names.
These checks catch structural problems.
I still need visual review to know whether I labeled the correct car or missed another car in the scene.
A file can have valid coordinates and still describe the wrong object.
After checking, I choose the export formats I need.
For bounding boxes, the options include JSON, YOLO text, COCO JSON, Pascal VOC XML, CSV, and images with the annotations drawn on them.
Export access depends on the plan.
JSON keeps structured annotation data.
CSV is useful when I want to inspect the records in a table.
Annotated images let a person quickly see how the boxes look.
YOLO, COCO, and Pascal VOC are formats that different training and evaluation tools expect.
For a YOLO bounding box, one row contains a class ID and four normalized values.
Those values are the center position across the image, the center position down the image, the box width, and the box height.
For example, class zero followed by point five, point five, point two, and point four describes a box centered halfway across and down.
Its width is twenty percent of the image width, and its height is forty percent of the image height.
The horizontal measurements are normalized by dividing them by image width.
The vertical measurements are normalized by dividing them by image height.
For segmentation, the exports include polygon JSON, YOLO segmentation text, COCO segmentation JSON, CSV, annotated previews, and PNG masks.
YOLO segmentation stores the polygon's normalized point coordinates.
Its rows are different from the five-value bounding-box rows.
A mask turns polygon regions into pixel labels.
An annotated preview draws the outlines on an image for viewing.
I choose a mask when the workflow needs a pixel-label image, and a preview when I want to inspect the annotation visually.
Save Current As handles the current image's export.
Create Dataset ZIP packages the project in the selected formats.
ZIP creation runs as a job with progress, a cancel control, and a download link when the result is ready.