An annotation profile defines the behaviour of the annotation interface. You will need to create a profile before you can do any annotations in SAVANT. Profiles also live at the workspace level, so you can re-use profiles across projects if you need to.
Define the labels for your project
SAVANT has a centralised registry for labels that work for the entire workspace. You can find all the labels in the “Labels” section of the left-hand navigation. In here, you can consult all the labels that are available in your workspace and you can create new labels by clicking on the “Create label” button on the top right hand of the screen. To create a label you will need to provide:
A unique name for this label
A code that will be used in the BE to identify this label. We recommend that you don’t change the code that is automatically generated.
Specify a category for the label. This will only be used to organise labels, it has no other downstream effects.
Specify a parent label. This will only be used to organise labels, it has no downstream effects.
Once you have created all the labels that you need for your annotation project, you are ready to create an annotation profile.
You will see that there is an option to create “skeletons”. These can be used to create groups of tags that should all be annotated together. These will be covered in a future guide.
Create a profile
General considerations
You can find all the annotation profiles that have been created in the workspace in the “Profiles” tab of the left-hand navigation. From there, you can create a new profile by clicking on the “New Profile” button located at the top right of your screen. You can also consult existing profiles by clicking into any of them. Before filling-in any other fields, you will need to provide a unique name for your profile, a description and upload a written version of the guidelines that you will use for annotations.
The written guidelines should be a PDF document that explains how the annotations will be done. This is typically required by quality-compliant annotations and it should help your annotators resolve doubts about how the annotation job should be done. You should also use this document to verify that the profile that has been configured in SAVANT matches how you expect the annotation to be done.
To enforce traceability of the annotation process, the profiles are immutable once they are created; to update the profiles, you will create new versions of them and all versions are accessible to you.
Define and configure the annotation labels
In the annotation/phase definitions section of the profile you can configure the labels that will be available for annotators when doing the annotation job. Add any labels from the label registry that you would like to enable annotators to use for the job.
Once you have added a label, you can configure it with the following actions:
Change the colour of the label. This is the colour that the label will appear as in the timeline or the colour of the polygon within the editor.
Add a maximum number of allowed appearances for the label. When annotating, the labeller will be prevented from adding more than this number of labels in each frame.
Add shapes allowed for this label when doing frame annotations. When annotating, the labeller will only be allowed to use the selected shapes to annotate this label.
Add maximum number of appearances for each of the shapes allowed for the label. For each shape, the labeller will only be allowed to create at most these number of annotations, for this shape and label, within each frame.
Remove a shape allowed.
Remove the label.
Add tags that can be added to this label. A tag is simply another annotation that can be added on top of the main annotation label. If configured, the annotator will then have the option to add an additional tag on top of the label that has been annotated. Tags can be used, for example, to specify sub-types for a given annotation.
Add group tags that need to be annotated with this label. A previously defined group of tags can be enabled for annotation alongside the main label. The profile can specify whether all the sub-tags must be added to each annotations and whether to allow single or multi-select.
Observe and control the behaviour of the group tags once they have been added as specified above. The use of group tags and skeletons will be discussed in a separate guide.
It should be noted that the profile itself doesn’t force an annotation to be either timestamp or frame; this will be controlled later by the sequence type. The profile only controls what will be made available when either the video or frame annotation interfaces are used (see following guides on how to do annotations in SAVANT). As such, a user might create a single annotation definition (e.g. for an organ) and the same profile can be used to do both timestamp and frame annotations.
Annotation tags
In addition to the primary video and frame annotations and tags, SAVANT allows other types of labels. These are generally called “tags”, and they can be thought of as additional metadata. SAVANT enables the following tags:
Sequence level tags can be enabled from any label in the label registry and they are used to tag an entire video or sequence of frames. These will be available within the annotation interface and the tags will be visible in the sequence explorer when you inspect a batch.
Profile version tags can be used to provide metadata to specify the purpose for the current profile version.
Frame level tags can be enabled from any label in the label registry and they can be used to specify metadata about a single frame in a sequence. These will be made available in the frame annotation interface.
Hidden sequence level tags are a special type of label that can only be accessed via the backend API.
Automated QA rules
Within the profile, you can also specify automated checks to be performed on the annotations. For every check, you can decide whether to treat it as a warning (user is alerted of the rule violation) or as an error (user is prevented from completing the annotation). SAVANT offers the following QA rules.
Keypoint in bounding box
Within the frame annotation interface, and for a given label, you can define a bounding box. Then, the rule will check that all the keypoints annotated for that label are within the previously defined box. Only labels which have bounding box and keypoint shapes can be added to this rule.
Label in bounding box
Within the frame annotation interface, it enables to create a bounding box with one label and force other labels to be defined within that box. This rule is similar to keypoint in bounding box, but can be used when the bounding box and the shapes are annotated with different labels.
Shape coverage
Within the frame annotation interface, it defines a maximum percentage of the frame that a given annotation can cover.
Label subset
It enables specifying a subset of labels that must be used within the sequence of frames that are being annotated. Other labels may also be used, the rule only guarantees that at least the labels selected are used.
Label multiple subsets
Defines multiple subsets of labels that can only be used exclusively. That is, if a label from one subset is used, then only other labels from that same subset may be used. You can choose whether this rule applies per frame or in the entire sequence of frames.
Label in region
Within the frame annotation interface, it defines a square position within which the label should be annotated. This QA rule is similar to label in bounding box, but it defines the same region for every frame that is being annotated.
Label relative size
Within the frame annotation interface, it defines for any two labels whether one should always be smaller or bigger than the other. The rule checks that "relative label smaller/larger than label" is true. In the example below, assuming that the blue label is the relative label; then the rule applied is relative label (blue) smaller than selected label (red).
Label relative position
Within the frame annotation interface, it defines for any two labels where they must be located with respect to each other. You can specify the rule in three different ways:
Centre point
Specify the position of the centre point of the relative label in relation to a selected label.
Inner boundary
Specifies that there must be overlap between some points of the relative label and the selected label in a specific direction. The image below specifies that the inner boundary of the relative label (blue) must be to the right of the selected label (red).
Outer boundary
Specifies that there must not be overlap between the points of the relative label and the selected label in a specific direction. The image below specifies that the outer boundary of the relative label (blue) must be to the right of the selected label (red)
Phase length
Within the video annotation interface, it defines the minimum and maximum length for all time intervals annotated. The image below shows an example of applying the maximum phase length (blue) to two different phase annotations.
Phase label count.
Within the video annotation interface, it defines for a given label the minimum and maximum number of times that this label can be used. The image below shows an example of applying a maximum count QA rule of three in a video sequence.
Phase order
Within the video annotation interface, it defines the order in which time intervals must be annotated. The image below shows an example of phase order rule where the red phase is forced to be before the blue phase.
AI settings
The final section of the profile allows you to control whether AI assistance is available to the annotators doing the annotation job; you can also decide which model to use for each type of task. SAVANT offers models for three assistance tasks:
Polygon generation. A family of models which will create a polygon when the annotator provides some reference points.
Polygon propagation. A family of models which is used to propagate polygons over several frames.
Stereo map. A model which allows to propagate shapes within a frame when you have two angles of the same image on screen (e.g. with stereoscopic images). Currently only the unimatch model is available for stereo mapping.
What next
Now that you have created an annotation profile, you are ready to create and manage an annotation project.














