Repository navigation
Download & run (Windows)
- Download YOLO-Annotator-2.1-windows.zip below and unpack it.
- Install Python 3.12+ (3.13 recommended) with "Add python.exe to PATH".
- Double-click
setup_venv.batonce (creates.venv, installs pinned dependencies, ~150 MB). - Start with
run.bat.
For the AI features (YOLO pre-labelling, automatic tracking, SAM): run setup_ml_env.bat once — a separate .venv-ml with PyTorch + Ultralytics (CUDA 12.8 build if an NVIDIA GPU is found, ~3 GB; --cpu for the CPU build) — or point ML → ML Settings… at an existing conda / venv with Ultralytics. The annotator itself never imports PyTorch.
User guide (RU): About.md inside the archive.
What's new in v2.1 — time events on video
Besides objects on a frame, you can now mark what happens and when: "from frame 120 to frame 180 — lane change", "frame 300 — fall". Use it for action recognition, temporal action localization, finding moments in a video or counting events.
Marking events
- Press E on the first frame of the event and E again on its last frame. Ending on an earlier frame works too: the bounds are put in order.
- Shift+E cancels a started event.
- Event types are shared by all videos of the project and each has its own colour. Pick the type under the frame strip, or create one there with + New event type…. Video → Event Types… renames, recolours and deletes them. If no type exists yet, the first event asks for a name.
- Events about an object: select an annotation of a track (e.g.
car #12) before the first E, and the event is linked to that object.
Seeing and editing them
- Event strip under the frame strip:
- each event is a coloured bar with its name, and overlapping events go to separate rows;
- a started event is hatched up to the current frame;
- click selects an event, double click edits it, hovering shows type, frames, time, duration, track and note.
- Events tab:
- all events of the video (type, frames, time, track, note); the ones on the current frame are in bold;
- double click goes to an event;
- Start here / End here move a bound of the selected event to the current frame;
- Edit… changes type, first and last frame, object and note;
- Delete (or the Delete key in the list) removes the selected event.
- Video → Previous / Next Event jumps between event starts.
- Ctrl+Z undoes adding, editing and deleting while you stay on the frame. E / Shift+E can be reassigned in Project Settings → Hotkeys.
Export: Video Events
events.csv: one row per event — video, type, first / last frame, start / end / duration in seconds, track, note, split.activitynet.json: ActivityNet 1.3, with segments in seconds and subsets taken from the dataset split.event_types.txt: the type names.- With Copy videos and frames, the export also includes the source videos (
videos/) and their extracted frames (frames/<video>/).
Upgrading from 2.0: unpack into a new folder and run setup_venv.bat again. Projects (.annproj) are compatible: event types are added to project.json, and events are stored in events/<video>.json. For the AI features, keep using your existing ML environment (in ML → ML Settings… choose the python.exe of the old folder's .venv-ml\Scripts, or your conda env) or run setup_ml_env.bat in the new folder. Don't copy .venv-ml between folders.