OpenCV is happy to introduce a participant of our Silver Membership Program – SuperAnnotate! As a part of our partnership, they are launching a free annotation tool for the Computer Vision community and telling why this product is worth your attention.
About the author:
Vahan Petrosyan is the co-founder and CTO of SuperAnnotate. Before SuperAnnotate, Vahan was working on his Ph.D. research in image segmentation at KTH Royal Institute of Technology, Sweden. The algorithms he developed during his studies became the basis of SuperAnnotate’s platform. The growing demand for his technology in various computer vision applications eventually led him to drop out of his Ph.D. program to start the company.
In this post, I will be introducing SuperAnnotate’s new free-to-use desktop app, discuss some of the reasons why we built it, and share more about many of the features which we feel will dramatically increase the speed, accuracy, and efficiency of annotation projects. There is a massive functionality gap between free and commercial image annotation tools. SuperAnnotate Desktop is closing this gap by providing the fastest all-inclusive software tool for computer vision engineers to complete their annotation tasks.
The World of Free Image Annotation Tools
Instead of writing a rather long introduction on the universe of free image annotation tools, I will quickly summarize many of the well-written articles, blogs, and websites covering the topic. Probably the most informative website discussing free tools is Awesome Open Source, which ranks open source tools based on the number of GitHub stars each tool has received. The list for image annotation tools can be found here. According to the list, it becomes apparent that CVAT (managed by Intel) and VOTT (managed by Microsoft) are among the most popular free tools for image annotation. There are several other interesting articles that include CVAT and VOTT among the best annotation tools available for free. Here are a few examples: Bohemian.ai, Sicara.ai, Wikipedia.
These articles are wonderful resources, and I strongly recommend reading them to learn about the different tools available and even try some of them if you have the time. However, what you soon start to realize is that free tools are lacking in many areas resulting in slow speeds, disjointed project management, and overall non-intuitive user experience – especially when you consider what we’ve come to expect from software today.
Introducing SuperAnnotate Desktop
The founding team of SuperAnnotate (my brother and I) were PhD students in biomedical imaging and computer vision, respectively. During the course of our PhDs, we spent a considerable amount of time working with images, particularly with annotations. In 2018, free annotation tools were as incredibly inconvenient as they are today, and it was quite painful using them. They were not only extremely slow and clunky, but also lacked many key annotation functionalities. These pains led us to launch SuperAnnotate.
Since founding SuperAnntotate, we have always been focused on releasing software that is lightning-fast, easy to use, and extremely functional for all types of computer vision tasks. Over the last two years, we’ve worked hard to build what we think is the fastest and most efficient annotation platform for computer vision pipelines. And, as we came from academia, we also wanted to make a version of our platform easily installable and free for anyone, to help eliminate many of the pains my brother and I faced as PhD students.
Back in June we announced our partnership with OpenCV to bring a free annotation tool to the broader computer vision community that is a significant upgrade over the current free tools available.
A few days ago we released software for Mac, Windows and Linux users. Despite being the initial release, the software already provides multiple advanced features that will accelerate your labeling process by 3–5x. You can download it here.
We will keep updating our desktop app on a monthly basis and would love to get the community’s feedback on features you all like, as well as the ones that are missing. We’re excited to be a bigger part of the OpenCV community, and to help provide the best computer vision tools to its members.
Eight reasons why you should use SuperAnnotate Desktop
In this section, I will do a deeper dive into some of the features that make our app unique compared to some of the most popular alternatives. As I mentioned above, the paid version of our platform is focused on delivering lightning-fast speed, robust workflows, and a delightful user experience. We tried to bring that focus (and a few of the features) into our desktop app. Here we go:
Note: I strongly recommend watching the video below which summarizes all these components.
1. Born out of SuperAnnotate’s Core Platform
We’ve spent the last two years and we have invested hundreds of thousands of engineering hours and millions of dollars on the core web version of SuperAnnotate, building what we feel is the fastest and most efficient annotation platform for computer vision. It incorporates feedback from annotators working hundreds of thousands of hours in the web version of our platform as well. This has allowed us to deliver our desktop editor with some of the designs, features, and refinements from our core product offering. We hope the result is a 100% free product that is delightful, feature-rich, and professional grade.
2. Advanced polygon tool
Polygon annotation is often the most time-consuming annotation task. Anyone who has tried free annotation tooling knows how poor the experience can be. We made several additions to traditional polygon tools in order to make manual polygon creation and editing much faster. Some of these features include:
- Pen-polygon tool — use the polygon as a pen making curved annotations much faster
- Point addition/removal — Add and remove polygon points with just a couple of clicks
- Edit polygon — Substantially increase the speed of editing polygons with our pen polygon tool
- Share polygon boundaries — draw polygons with shared boundaries 2x faster than traditional tools
- Polygon move/group/delete — select, drag, drop or delete individual or groups of polygons wherever you want
These are just some of the features that allow us to reduce polygon annotation times by 20-60% while making polygon annotations significantly more accurate.
3. Filtering
Most annotation tools lack the ability to filter images. Yet we have found that class filtering has a dramatic impact on speeding up the annotation review process. Through SuperAnnotate’s filtering menu, users can display only images with certain classes they are interested in reviewing, avoiding the need to comb through all of the images and saving tremendous amounts of time.
4. Tracking multiple objects between frames
Tracking multiple objects between consecutive frames can dramatically improve the annotation experience while also making annotating much faster. Our desktop app allows users to select multiple objects and perform operations such as move, delete, group, copy, paste, and duplicate. Users can copy and duplicate annotations in successive frames while keeping the same attribute ID so that a particular attribute can be tracked through multiple frames easily.
5. Huge list of shortcuts
Gamers and power users of tools like excel and photoshop know how a robust list of shortcuts can both improve the user experience and add considerable speed. That was why we made a huge list of shortcuts for actions like tool selection, on-screen navigation, copy/paste/group/ungroup objects, switching between frames, and others. All shortcuts take place on the left side of the keyboard (similar to gaming), so your right hand can stay focused on the mouse, and your left hand does not have to move while finding the right shortcut.
6. Labeling Flexibility
Current platforms (both free and paid) limit you to one labeling workflow: you set the attributes and then draw the shapes. Oftentimes, it can be significantly more efficient to have different workflows such as drawing shapes first, or copying classes between instances. With SuperAnnotate, we allow for a wide range of labeling workflows, giving users the flexibility they need to be most efficient.
7. Classes/attributes/point labels
Creating, adding, or deleting classes and attributes is made very simple in the SuperAnnotate desktop app. Users can easily import classes from previous projects saving the time needed to define projects. In addition, we allow users to annotate individual points with free text. This can have multiple uses such as, describing the object by a sentence, giving a tag to the object, or describing the specific point in the polygon (e.g. rear-right wheel).
8. Leveling up your annotations
As your annotation needs increase, you will likely find yourself looking for things like increased automations, ML features, more robust project management, detailed quality assurance, team collaboration, and user roles. You might also find yourself needing outsourced annotation teams. At SuperAnnotate, we can satisfy all of these needs and much more via our core platform. Our core platform leverages ML and workflow-based features to help computer vision teams increase annotation speed by up to 10x, while dramatically improving the quality of training data and increasing the efficiency of managing annotation projects. We also have integrated services on the platform, giving customers the ability to access thousands of professionally managed outsourced annotators armed with our lightning-fast tooling. If you are interested in learning more about our core platform and services, please fill out this form.
Importing annotations from other platforms or open-source tools
Migrating to SuperAnnotate from other software is something important to our customers. This was a common request from our users as many of them wanted to use our platform to quality check their previous work and transition over from other tools. We’ve made it super easy to import annotated data from other annotation tools using only a few lines of code, which I’ve described below. Then, once in our platform, users can leverage features described above like filtering and advanced polygon editing to easily perform QA on previous annotation work and check prediction accuracy.
To see how easy it is to migrate previous annotations, I have included the full code required.. (Note that you can transfer your annotations not only from other open-source tools but also from other paid platforms.) For the conversion, you can use our SDK where we provide all the conversion scripts to make an easy transition. Below is an example from Labelbox, but it can be applied to other platforms such as Amazon SageMaker, Google Cloud AutoML, Scale AI, VOTT, etc.
First, install the SDK and the supplementary repositories:
pip install superannotate
pip install 'git+https://github.com/cocodataset/panopticapi.git'
pip install 'git+https://github.com/philferriere/cocoapi.git#egg=pycocotools
&subdirectory=PythonAPI'
The use the script below to convert your data to SuperAnnotate format:
import superannotate as sa
sa.import_annotation_format(<input_dir>, <output_dir>, "LabelBox", <dataset_name>)
Once you receive the converted json file in SuperAnnotate format, you can simply upload annotations in our editor.
If you are interested in our premium features, you can bring the images and clean the annotations in our web-based platform, then automate the annotation of the next set of images using transfer learning. Please refer to this article and learn how to do it without writing a single line of code.
The Future of SuperAnnotate Desktop
The goal of SuperAnnotate Desktop is to provide fast and intuitive tools for academic researchers or solo annotators and save precious time during the annotation process. In the future, we will update the software on a monthly basis, and provide features that address our community’s most important pain points. Therefore, we encourage our community to be more active and open such issues on our GitHub page.