Now let's move to segmentation. With a bounding box, I get a rectangle around an object. With a polygon, I can follow the object's outline more closely. For example, a car viewed at an angle has an outline that doesn't match a simple rectangle. I click around that outline to place the polygon points. I can finish using the Finish Polygon button, the Enter key, or a double-click. Escape cancels the polygon I'm drawing or clears the selection. After finishing the polygon, I can adjust its points. If I need more detail on an edge, I can insert another vertex. A vertex is simply one of the points that defines the polygon. If a point is unnecessary, I can delete it. Smooth Selected Polygon adjusts the contour. Simplify Selected Polygon reduces the number of points. After either operation, I would inspect the result, especially around narrow or detailed parts of the object. There are three useful polygon properties: Occluded, Hidden, and Locked. Occluded marks an object as partially blocked. Hidden hides the polygon from the screen so I can see other objects more clearly. Locked protects the polygon from accidental editing. There are also controls to unhide or unlock all polygons when needed. Occluded is an annotation property. Checking it doesn't reconstruct the hidden part of the object. I still need a clear labeling rule for the boundary that the project expects me to draw. There are two ways to carry polygon work forward. Carry selected polygon across images copies the selected shape to the next opened image as a starting point. Polygon Tracking uses image movement to estimate where the polygons should go in the next frame. When Polygon Tracking is enabled, pressing Next attempts to track each polygon independently. Existing destination annotations are preserved. The polygon tracker uses optical flow and feature-based motion estimates. In simple terms, it looks at how visible patterns move between the images and uses that movement to propose a new polygon position. I still need to inspect the shape and correct it when the estimate is off. Consecutive images need matching dimensions for this polygon-tracking workflow. If a car moves slightly to the right, the proposed polygon can move with it. If the car turns, becomes blocked, or changes its visible outline, I may need to adjust the points more carefully. The polygon tracker is separate from the project-trained YOLO box tracker. The project AI training controls use saved bounding boxes. They don't train a segmentation model from these polygons. Now let's return to bounding boxes and look at the four tracking modes. The first is Manual Mode. Manual Mode means tracking is off. I draw and edit everything myself. It's useful when the images are unrelated or when I want complete manual control. The second is Simple Tracking. Simple Tracking follows the appearance and movement of the selected object between images. It uses the available OpenCV tracking methods, with motion and template matching as fallbacks. It doesn't require a trained project model. The third is Fast Tracking. Fast Tracking uses the project's trained YOLO detector with ByteTrack. The detector finds objects in the images. The tracker then tries to match the selected object between consecutive frames. The fourth is Stable Tracking. Stable Tracking uses the same project's detector with BoT-SORT. It's another tracking option that I can compare on my footage. I would judge the result on the actual images instead of assuming that a mode will always perform better because of its name. The AI modes require Pro Plus or Team access. The particular project also needs a successfully trained model. Until those conditions are met, the AI modes are unavailable. That explains why they might be enabled in one project and unavailable in another. I can switch modes with the buttons or with keyboard shortcuts. Control, Alt, and zero turn tracking off. Control, Alt, and one select Simple Tracking. Control, Alt, and two select Fast Tracking. Control, Alt, and three select Stable Tracking. Those shortcuts choose the mode. To move the selected box to the next image, I then use Next, the D key, the right arrow, or the tracking button. The current mode is displayed in the interface. The choice is remembered for the relevant project, but the page still checks whether that mode is available when I return. Now let's look at how a project gets its own AI model. The Project AI Model panel starts with the saved annotated image count. The current training range is one hundred to one thousand saved images with valid labeled bounding boxes. This is a count of images, not a count of objects. If I draw ten boxes on one image, that gives me one training image. If I upload five hundred pictures without saving valid box labels, uploading them alone doesn't give me five hundred training examples. If the project goes past one thousand eligible images, I can still annotate it, but I can't start a new training run in this version. The trainer doesn't silently select just the first thousand images from a larger project. The training count is separate from the formal Team approval process. It comes from the saved valid box annotations available to the training workflow. Once the project is in the supported range, and the account has the required access, I can click Train AI Model. Saving more images doesn't automatically start another training run. The user chooses when to train or retrain. Training starts from a pretrained YOLO eleven N model and adapts it to the labels in this project. The code creates a snapshot of the saved labels for the run, prepares the images, and separates them into training and validation sets. For one hundred eligible images, the current split gives eighty training images and twenty validation images. The preparation code puts every fifth image into validation. So twenty out of one hundred are held out. This is a basic validation split. If the pictures are neighboring frames from one recording, I would still need a separate evaluation on different recordings before claiming that the model generalizes. Also, one hundred images is the minimum that enables training. It doesn't guarantee that the examples cover the task well. Useful examples should include variation in viewpoints, lighting, object appearance, and difficult cases. Repeated almost-identical frames can meet the count without adding much useful variety. The default training configuration uses thirty epochs, although the server configuration can change that. An epoch is one pass through the training dataset. The trainer can also stop early if its early-stopping condition is reached. Training runs in a background worker. That means I can keep using the annotation workspace while the job is waiting or training. The queue runs one training job at a time. The panel shows the stage, queue position when waiting, progress, epoch, image counts, elapsed time, and the model version associated with the run. The progress percentage comes from preparation and training work being completed. It tells me how far the job has reached. It doesn't tell me the model's accuracy. At the end, the system measures detection metrics on the validation images and checks that the trained model can run inference. A completed run means a usable model was produced and activated. It doesn't mean the model is perfect or that it passed a guaranteed accuracy threshold. The panel also shows how many images the current model used, how many new examples have been saved since then, and whether existing examples were corrected. The interface suggests retraining after roughly fifty to one hundred additional corrected and varied images. That's a practical reminder. It doesn't promise a particular improvement. If I cancel an unfinished run, its unfinished training progress is discarded. My annotations remain available, and the previous successful model stays active. The same protection applies if retraining fails. A failed new run doesn't replace a working model. Once a model is available, I can use it to track an object. I select the car's box, choose the tracking mode, and advance to the next image. The tool estimates where that selected car should be in the next frame. I can inspect the proposed box, move it, resize it, or correct its class before saving. The AI proposal stays as an editable draft until I save it. That gives me a chance to catch a drift or a wrong match before using the proposal as a saved label or another training example. If the detector can't confidently match the selected object, the implementation can fall back to a local motion estimate or retain the previous position for correction. So seeing a box on the screen doesn't prove that the AI recognized the object correctly. I still review the draft. The workflow also protects destination work. If a destination already has relevant saved annotations, the system checks them and avoids blindly replacing the work. A save conflict needs to be resolved instead of silently overwriting a newer version. For a difficult frame, I can switch back to Simple Tracking or Manual Mode, fix the box, and save it. Later, I can include those corrected examples in a new training run. There is also a button called Propagate Current State Forward. That copies the current boxes and class state to following images until it reaches an image marked as explicitly annotated. It doesn't estimate the object's movement. It can be useful for repeated starting positions. But if the car moves, I'll need to edit the copies. For actual movement, I use the tracking action and inspect each next frame.