Help Overview


RectLabel

An image annotation tool to label images for bounding box object detection and segmentation.

Customize the label dialog to combine with attributes

Key features

Drawing bounding box, polygon, and cubic bezier

1-click buttons make your labeling work faster

Customize the label dialog to combine with attributes

Settings for objects, attributes, hotkeys, and labeling fast

Search images whose labels include keywords

Layer order for overlapped boxes

Zoom in on a point

Quick zoom to existing boxes

Support the PASCAL VOC format

License policy

You can use RectLabel to develop the commercial object detection system.

Found some problems?

Post the problem to our Github issues page

Have questions?

Send an email to support@rectlabel.com

Thank you.

Requested features

  • Save the polygon as segmentation mask image(index color).
  • Auto generate TensorFlow Label map.
  • Export to the COCO format.
  • Export to the KITTI format.
  • Switch different objects and attributes settings for different label task.
  • Change the location of annotations folder.
  • Select multi values of attributes.
  • Auto completion to label selection dialog, if you have a loot of labels it is easier to tape a few letters.
  • An option to pin that label selection dialog so it doesn’t dissapear after Ok was clicked.
  • Browse a list of the images rather than having to flick through each image.
  • Add labels to the bounding boxes to make it easier to see which box is what.
  • Load movies.
  • Move annotated images.
  • Export to the Turi Create format directly.
  • Import the CSV file.
  • Show bounding box dimensions.
  • Cannot save bookmark to the folder.
  • Order of image.
  • Could be better documented.

Troubleshooting

  • Cannot save bookmark to the folder
    1. Delete RectLabel via the Launchpad app
    2. Log out of the Mac App Store.
    3. Reboot your Mac.
    4. Log back in to the App Store and install RectLabel.
  • The operation couldn't be completed. (SKErrorDOmain error 0.) code: 0
    1. Delete RectLabel via the Launchpad app
    2. Log out of the Mac App Store and iTunes.
    3. Reboot your Mac.
    4. Log back in to the App Store and install RectLabel.
  • To confirm your purchase, "Restore purchase" from App menu at the top of the screen.

In-app purchase

Existing users

To acquire more new users and prevent pirating, we made RectLabel to be freemium model.

The save button is locked as default.

For existing users, you can download the Full App for free to unlock the save button.

New users

For new users, you can download the 2-Week Trial Free to experience full features of RectLabel.

After the 2-Week, the save button will be locked so that you can just view the label data.

To unlock the save button, please buy RectLabel.

Refresh receipt

Once a month, we ask you to refresh your app purchase receipt to the latest one.


Images and annotations folder

Open images folder

Open a folder which includes images.

Click the right arrow or left arrow button to change the image.

To adjust the contrast of the image, click the contrast button on the upper right corner.

Save annotations

We create "annotations" folder in the folder you opened.

The label file is saved as "image_file_name.xml".

Output format

The label file is saved in the PASCAL VOC format.

The top-left pixel in the image has coordinates (1, 1).

The VOC2007 Development Kit

The rotated box is saved in the format as (center_x, center_y, width, height, rotation).

The rotation is ranged between 0 and 2Pi.

Here is an example of the PASCAL VOC format.

<annotation>
    <folder>_image_fashion</folder>
    <filename>brooke-cagle-195860.jpg</filename>
    <size>
        <width>3404</width>
        <height>5106</height>
        <depth>3</depth>
    </size>
    <segmented>0</segmented>
    <object>
        <name>face-x_45</name>
        <pose>Unspecified</pose>
        <truncated>0</truncated>
        <occluded>0</occluded>
        <difficult>0</difficult>
        <bndbox>
            <xmin>1975</xmin>
            <ymin>1793</ymin>
            <xmax>2443</xmax>
            <ymax>2241</ymax>
        </bndbox>
    </object>
    <object>
        <name>sunglasses</name>
        <pose>Unspecified</pose>
        <truncated>0</truncated>
        <occluded>0</occluded>
        <difficult>0</difficult>
        <rotated_box>
            <cx>2235</cx>
            <cy>1936</cy>
            <width>474</width>
            <height>170</height>
            <rot>5.826429</rot>
        </rotated_box>
    </object>
    <object>
        <name>buckle</name>
        <pose>Unspecified</pose>
        <truncated>0</truncated>
        <occluded>0</occluded>
        <difficult>0</difficult>
        <polygon>
            <x1>1860</x1>
            <y1>3712</y1>
            <x2>2010</x2>
            <y2>3711</y2>
            <x3>2021</x3>
            <y3>3799</y3>
            <x4>1867</x4>
            <y4>3803</y4>
        </polygon>
    </object>
    <object>
        <name>button</name>
        <pose>Unspecified</pose>
        <truncated>0</truncated>
        <occluded>0</occluded>
        <difficult>0</difficult>
        <cubic_bezier>
            <x1>1926</x1>
            <y1>3783</y1>
            <x1_c1>1916</x1_c1>
            <y1_c1>3776</y1_c1>
            <x1_c2>1935</x1_c2>
            <y1_c2>3790</y1_c2>
            <x2>1920</x2>
            <y2>3748</y2>
            <x2_c1>1928</x2_c1>
            <y2_c1>3737</y2_c1>
            <x2_c2>1911</x2_c2>
            <y2_c2>3758</y2_c2>
            <x3>1959</x3>
            <y3>3740</y3>
            <x3_c1>1968</x3_c1>
            <y3_c1>3747</y3_c1>
            <x3_c2>1949</x3_c2>
            <y3_c2>3733</y3_c2>
            <x4>1959</x4>
            <y4>3776</y4>
            <x4_c1>1950</x4_c1>
            <y4_c1>3786</y4_c1>
            <x4_c2>1967</x4_c2>
            <y4_c2>3765</y4_c2>
        </cubic_bezier>
    </object>
</annotation>

Export bndboxes in XML files to CSV file

The bndbox objects in the XML files are exported to a CSV file.

With the code below, you can convert to the sframe file for Turi Create of Apple.

convert_csv_to_sframe.py

Import rectangles in CSV file to XML files

The rectangle objects in the CSV file are imported to the XML files in the current folder.

Be careful that importing would overwrite the current label files.

Before importing, the current annotations folder is backed up.


Create and edit annotations

Create box

Change the mode to "Create box".

Drag on the image to draw a box.

When you finished dragging, the label dialog would open.

The label would be added to the label table on the right.

Drag the center of the box to move the box.

Drag one of the four corner points to transform the box.

To change the color of the box, click the color picker on the upper right corner.

Create polygon and cubic bezier

Change the mode to "Create polygon" or "Create cubic bezier".

Click to add points.

Press enter key to finish drawing.

Press escape key to cancel drawing.

The number of points has to be greater equal than 3.

When you right click on the point, edit menu would open.

"Add a point forward" and "Add a point backward" to add a point.

"Delete this point" to delete the point.

"Point size up" and "Point size down" to change the size of points.

"To cubic bezier" and "To polygon" toggle the polygon type.

Move box

Change the mode to "Move".

Drag the box or the image to move its position.

For the image, mouse wheel can be used, too.

When you click on the box or the label, four corner points would open.

Drag one of the four corner points to transform the box.

When you right click on the box or the label, edit menu would open.

"Focus" to quick zoom to the existing box.

"Edit" opens the label dialog, "Duplicate" to duplicate the box, and "Delete" to delete the box.

When you double click on the box or the label, the label dialog would open.

To change the layer order of the box, drag the label in the label table upward or downward.

Rotate box

Change the mode to "Rotate".

Drag up or down to rotate the box.

Zoom in, Zoom out

Click a position to zoom in or zoom out.

Zoom fit

Clear zoom.

Pinch zoom, pan, and swipe between images using Trackpad

Slide two fingers up or down to scroll the image.

Double-tap with two fingers to zoom in and out.

Pinch with two fingers to zoom in or out.

Swipe left or right with three fingers to show the previous or next image.

To use Swipe, you have to change the System Preferences on your mac.

For "Swipe between pages", select "Swipe with two or three fingers" or "Swipe with three fingers".

For "Swipe between full-screen apps", select "Swipe left or right with four fingers".

Delete box

You can select multiple boxes and delete them.

Delete image

We create the "deleted" folder in the current folder.

The image is moved to the "deleted" folder.

The label file is moved to the "deleted/annotations" folder.

Load labels of another image

Press the shortcut key "command + I" to load the previous image's labels.

If you want to load the 1st image's labels on the 3rd image, press the shortcut key "shift + command + I" on the 1st image and press the shortcut key "command + I" on the 3rd image.

Search images

When you open the folder, we read all xml files in the folder at first and then start indexing them in an asynchronous way.

When you edit some label files, we track which label file was edited.

At the next indexing, we reload the edited label files.

With the empty search text, you can search images not labeled yet.

To clear the search result, use "Clear search images".

If the number of search result is zero, we do nothing.

We are using Search Kit which is Apple's content indexing and searching solution.

You can use Wildcard, AND, OR, NOT, and more in the search text.

Query operators in Search Kit

Settings for objects, attributes, hotkeys, and labeling fast

Read image and memo CSV file

This is useful when you edit specific label files based on some memo.

Here is the example of the CSV format.

image,text
26157415-386396491811054-4332315807620005888-n.jpg,stripes 2
26863805-1893959310636648-3775075699686113280-n.jpg,stiletto 3
...

Read image and loss list CSV file

This is useful when you edit specific label files based on loss list from training.

Here is the example of the CSV format.

image,loss_color,loss_texture
20481859-332470370529981-2506007812560125952-n.jpg,0.254,0.050
20481859-332470370529981-2506007812560125952-n.jpg,0.205,0.011
...

Settings

Objects

When you label "sneakers" which uses 3 attributes "color", "brand", and "side".

Settings for objects, attributes, hotkeys, and labeling fast

Attributes

The label "sneakers-yellow-converse-right" is a combination of the object and attributes.

"-" is used as a separator so that "-" in the attribute name would be converted to "_".

To change the name on the items table, click or press the enter key on the selected item.

Settings for objects, attributes, hotkeys, and labeling fast

Hotkeys

Customize the hotkeys to make your labeling work faster.

Settings for objects, attributes, hotkeys, and labeling fast

Here is the default hotkeys.

Open folder ⌘O
Next image
Prev image
Jump to Image Index ⌘J
Save ⌘S
Load Prev Image's Labels ⌘I
Set Image Index to load Labels ⇧⌘I
Create box ⌘N
Create polygon ⌘P
Create cubic bezier ⇧⌘B
Move ⌘M
Rotate ⌘R
Zoom in ⇧⌘↑
Zoom out ⇧⌘↓
Zoom fit ⌘0
Settings ⇧⌘T
Focus box ⌘G
Duplicate box ⌘D
Delete box
Delete image ⌘⌫
Hide other boxes ⌘B
Skip label dialog when create ⌘K
Next label ⌘→
Prev label ⌘←
Clear label history ⇧⌘0
Search images ⌘F
Clear search images ⇧⌘O
Layer up ⌘↑
Layer down ⌘↓

Label fast

"Auto Save" is to skip the confirm dialog when you change the image.

"Skip Label Dialog When Create" is to skip the label dialog when you create a box.

"Use 1-click buttons" shows 1-click buttons on the label dialog using the label history.

"Close dialog when select a object" is to skip clicking the OK button on the label dialog.

"Maintain zoom when change the image" is to maintain zoom when you change the image.

Settings for objects, attributes, hotkeys, and labeling fast

Others

"Allow outside the image" is to move the box outside the image.

"Fix the image position" is not to move the image position with dragging and mouse wheel.

"Use truncated, occluded and difficult" shows those parameters on the label dialog.

"Use aspect ratio when draw boxes" shows the aspect ratio on the Objects tab.

"Hide arrow buttons" is to hide arrow buttons on the image.

"Hide label name on the image" is to hide the current label in the label history on the image.

"Sort images" is to sort images by Alphabetic, Numeric, and Last modified.

"Annotator" is saved in the xml file.

Settings for objects, attributes, hotkeys, and labeling fast

Export and Import the Settings File

From File menu, you can export the current settings file and import to another computer.