Label activities
Users can label video segments of interest, or activities, directly within the annotator. This tutorial will cover how to annotate activities in the annotation view. To begin, you will need a project configured for activity labeling.
Annotating activities within a single video
Boolean activities
The image below shows a project that is set up for users to annotate car activity within a video. The annotator on the right will select the appropriate Boolean conditions (Car Present
and Yellow Car Present
). The selected activity states will be reflected in the timeline below the video controls, giving the annotator a visual indicator depicting the duration of the activity. This image depicts both activities are present.
In this image, only Car Present
is true
. Notice how the timeline only has one bar highlighted, indicating the Car Present
activity is true
while the Yellow Car Present
is false
.
The timeline can also be expanded by clicking the three dots on the left of the video timeline. From there, annotators can click and drag to select a zoomed-in window. This will allow annotators to hover and inspect each activity values more closely. Clicking in this zoomed-in window will jump the annotator to that frame.
Numerical activities
Numerical values can also be displayed within the timeline. The example below adds an Activity Recognition
floating point attribute to the existing Car Activity
state using the project settings page.
Like the Boolean activity states discussed earlier, annotators can set numerical values associated with a frame (in this example, Activity Recognition
) via the annotator.
Annotating activities spanning multiple videos
In the previous section, we discussed creating frame-associated states to annotate activities within a single video. There are times where annotators want to correlate states between different video clips (i.e. different media). The current recommended method is to utilize the interpolation: attr_style_range
value (instead of latest
that we showed above). This method only applies to annotating Boolean activity states. This enables annotators to denote activities that either don’t start or end in a particular video. Project developers can then take these states and programmatically piece the activities together.
With this setup, the following images will depict how users will annotate the activity across multiple videos using the example state type above. To create this state, the user will right click on the video, and select the appropriate state (Multi-Video Car Activity
for this example). Note: Unlike the previous state type we covered that uses interpolation: latest
, this type of activity can only be interacted with the entity browser and not a separate frame panel.
Next, the user will input the appropriate start and end frame activity information. In this example, the activity starts in this video but will end in the next video. The activity can be updated using the entity browser and the activity status will be reflected in the timeline.
In the next video, the user will create a new state again but input the activity as starting in a previous video but ends in this video on frame 150.
If the activity is present in the video but the start and end occurs in other videos, the start and end frames can be set to -1
along with the in_video_check
set to true
. The timeline will reflect the presence of the activity.