MD.ai Annotator has a flexible annotation system that helps you annotate datasets for all kinds of medical AI projects, including classification, localization, segmentation, and regression.
Create New Labels
You can create new labels by pressing the
+ New Label button. The annotator supports both
Local scoped labels. Labels can be moved, edited, and deleted after creation.
A global label is applied to the whole image, series or the entire exam (eg. Normal) which is useful for letting your training algorithm know that this particular image/series/exam should be in the particular category specified by the label.
You can also use a global label as metadata for Quality assurance, for example a label named
Ignore can be applied to images that are of insufficient quality or shouldn't belong in the dataset.
For Global labels you can choose the scope as
A local label can be applied to a specific region in the image (eg.
Lung Nodule). For a particular local label, multiple instances of that label can be applied to different regions on the same image (eg. for multiple lung nodules).
Local labels can only be applied to individual images and not the entire series or exam.
For local labels, you can choose from a variety of annotation modes -
Creates a rectangular bounding box for annotation. Also calculates a width and height.
Creates a freeform shape for annotation. Also calculates the longest diameter (even if that line is not fully contained within the freeform shape).
Edit the freeform shape by mouse hovering over the edge and dragging and/or sliding any of the dots that appear. You can add control points to the figure for fine tuning.
Creates a polygon shape for annotation. Also calculates the longest diameter (even if that line is not fully contained within the polygon shape).
Edit the polygon shape by hovering over the edge and dragging one of the polygon corners.
Freeform and polygon labels also support Minimum Bounding Box (MBB) measurements. The MBB will be shown with its major and minor axes along with the option to toggle and highlight measurements from the label's annotation measurement settings.
We've also added support for longest diameter (LDi) and shortest axis perpendicular to the LDi (SDi) measurements for Freeform and Polygon label types. For inactive anntations, both the SDi and LDi lengths will be shown. For active annotation, the SDi will be shown as a dashed line. All these setting can be toggled on or off from the annotation measurement settings.
Creates a pixel level segmentation mask.
Also allows multiple shapes to be drawn on the same image. The drawing tool includes brush width and shape as well as an eraser for corrections. Undo and Redo will remove/reinstate the last drawing or erasing action.
Mask annotations are automatically saved upon application and on switching from one image to other - brush settings such as brush size, super pixel size, brush mode are persisted.
Creates a line path with one or more segments
Simple location coordinates are applied in this mode
Creates an elliptical shape for annotation.
Includes various measurement details such as Major Axis, Minor Axis, Circumference, Area, Mean, SD and Rotation. Also supports interpolation between frames.
Metadata labels can be used for information that you need to display across all label groups, eg. history, accession number, report information. Metadata labels can only be applied by project Admins.
- Use the API to import information into the notes portion of the label. The text will be displayed in the UI.
- Metadata labels can be at the image, series, or exam level.
- Metadata labels have a special designation. They will not register as
Annotatedand are not included in the exported json.
An arbitrary number of sublabels can be created to existing labels to streamline label appearance and annotation. Any type of annotation can be chosen for the main header label and sublabel. You can also mix and match modes and types of annotations. Multiple sublabels can be applied at the same time after a parent annotation has been created.
It's important to plan out the structure of your labels and sublabels before you start creating them. If you're not sure, create extra sublabels and you can delete them later by turning on
Show All Sublabels.
Label Controls select
Reorder Labels and drag and drop items in Labels Column in desired order. Click
Label Controls again to set.
Simple text nodes can be added to each annotation. To add a note, click on the
[+] for an applied label at the
Annotations toolbar below the image.
Notes can be added and viewed by all collaborators. Radlex tags can be added as well.
Change or switch an annotation to a different label after the annotation is created. Changing labels is restricted to labels of the same annotation mode.
Annotations toolbar below the image, the owner of the label is indicated by the owner's avatar. Hovering over the label will also show the owner's name and avatar.
Radlex coding tags can be added to global and local labels in order to use standardized terms for labels. They can also be added to notes.
Label Thumbs Up or Thumbs Down
Clicking on the Thumbs Up icon on the label tag will add a
Positive Review to the label. Conversely, clicking on the Thumbs Down icon will add a
All users can Filter and Hide labels as well as bulk remove their own annotations. Administrators can edit, reorder, and delete any labels.
Choose the filter option in the Labels Controls and select the labels and label group you would like to filter by. Then click filter again. When you open the Exam window in the Navigation column, you'll see only the filtered cases.
Types of filters
- AND filter will show only the resources that contain all the labels you have selected.
- OR filter will show the respurces that contain any of the labels you have selected.
- NOT filter will show only the resources that do not contain the labels you have selected.
These filters can be applied to all resource levels including exam, series and images.
Choose the hide option in Label Controls and select the labels you would like to hide. You can also hide individual annotations on an image by using the hide icon on the annotation tag.
Drag and drop labels into the position to change their order.
Remove labels in bulk
BULK REMOVE is a feature to remove specific label annotations from the exam, series, or image level. An administrator can remove all annotations from an image, series, or study from any user. This is useful to remove unwanted annotations added with the interpolator tool.
Change the label title, color, and Radlex tags using this option.
This allows you to delete a label and with it, all the associated annotations from the entire project.
Easy annotation management can be achieved by creating different label groups to host labels independently for different users. While creating a new label you can either chose to add labels to the
Default Group or
Create New Group to add labels to a new label group. You can also choose to add labels to the
Metadata label group using this setting. By default, new labels will be added to the
You can also choose to lock the label group to prevent users from adding new labels by toggling the
No Adding New Labels tag or prevent users for creating new annotations by toggling the
No Applying Labels tag in the label group settings window. Label groups can also be deleted.
Cloning a Label Group
Open the settings icon next to Label Group, and copy the
Clone Code for the current label group that you wish to clone. On the project page, click on the
Clone Label Group button and paste the copied clone code to create an exact copy of the desired label group.
Label Vertex Point Interpretation
After annotation is completed the annotations can be downloaded in JSON format. The JSON file contains a list of vertices making up the annotation. In the coordinate system used [0,0] is the top left hand corner of the image. The X-axis increases to the right, the Y-axis increases from top to bottom. Vertices are represented as [[x0,y0],[x1,y1], ...]. Note vertices may not be integers to allow for smooth interpolation - if desired to conform to the pixel grid round to the nearest integer. The relative placement of the vertices is in the middle of the drawn border (the border outline has a non-zero width).