Documentation
Table of Contents
Introduction and Overview
Verilabs is a client-only image labeling tool that allows you to create image datasets with complete privacy. Your data remains securely on your device. Use it to annotate images with bounding boxes for object detection and computer vision tasks. If you need more advanced features such as dataset management or collaboration, sign up for the cloud-hosted version.
Datasets Management
Before you can create annotations, you must define a dataset. Navigate to the "Datasets" section to get started. Here, you can create a new dataset, load an existing one to continue working on it, and export your dataset as a JSON file for later editing or training object detection models.
Creating a Dataset
To begin, navigate to the "Datasets" section. By default, a new dataset is initialized, allowing you to immediately enter a filename, title, and other metadata. The filename will be used when exporting your dataset. The other fields are used for dataset identification.
Note that the dataset, once loaded or configured, remains available within the app as you navigate between the "Datasets," "Labeling," and other pages. However, it will not persist if you refresh the app. This is because, in the free version, all data is stored locally in your browser. For those technically inclined, the dataset is an object stored in the React context, making it accessible across all pages. Therefore, it's recommended to frequently use the "Save" button to export your dataset, ensuring you have a backup.
Loading a Dataset
To continue working on an existing dataset, click the "Load" button to import a previously exported JSON file. You can always view dataset statistics at the bottom of the left column, including the number of classes, the number of images containing annotations, and the total number of annotations.
Saving a Dataset
Export your dataset as a JSON file at any time by clicking the "Save" button in the top-left corner.
Adding Classes
After configuring a dataset, you can add classes to it. In the center column, you'll see all existing classes, along with a count of annotations for each class in the current dataset. Clicking on a class reveals its details in the rightmost column, where you can edit the class name and labeling instructions.
To maintain data consistency, you cannot delete a class, and each class is assigned a unique classID. Currently, up to 9999 classes are supported.
Image Labeling
The "Labeling" section allows you to draw bounding boxes and assign classes defined in the "Datasets" section. On the left, you'll find the image filenames and dataset information.
Loading Images
To load images, click the "Images" button at the top. This opens a file selector for you to select image files. Currently, only JPEG (.jpg) files are supported. Once loaded, the image filenames will appear in the list on the left. Select an image to view it on the right, or use the navigation buttons above the displayed image.
Image View Section
The selected image is displayed in the right section. On the left side of this section, you'll find the tool/mode selector. By default, the "Draw" mode is active, allowing you to create bounding boxes. You can switch to the "Label" mode to assign classes to boxes, and "Move/Edit" mode to adjust existing boxes.
Drawing Bounding Boxes
In "Draw" mode, click and drag from the top-left corner to the bottom-right corner to create a bounding box. Release the mouse to finalize the box.
Coordinate System
Bounding box coordinates are defined with the origin at the top-left corner of the image, using horizontal (x) and vertical (y) components, along with width and height in pixels.
When a box is drawn, its class label is initially set to "undefined." Each drawn box is immediately added to the dataset linked with the image.
Assigning Labels
After drawing boxes, switch to "Label" mode. Click on a box, and a dropdown menu with available classes will appear for you to select from.
Updating Boxes
Use the "Move/Edit" mode to move or resize existing boxes.
Additional Resources & Support
- Consulting & Training: Need personalized help with your image labeling workflow or want to train your team? Book a consulting or training session under contact.
- Cloud Version (SaaS): Unlock advanced features such as team collaboration, persistent storage, and automated workflows with the cloud-based Software as a Service (SaaS) version.
- On-Premise Deployment: For organizations with strict data privacy requirements or those needing full control over their deployment environment, reach out to discuss an on-premise solution.