BBoxr: A simple Tool to collect Bounding Boxes

bboxr_start page

I made a thing! It's called BBoxr and it's a web app to collect images and bounding-box information without installing anything. It works for desktops and phones. You can play with it here: www.rpi-bboxr.web.app

Some time ago i needed to evaluate a detection model for some project. To do this I had to collect some images with bounding boxes for a small number of classes. This is a simple task that should be done in a few minutes but unfortunately the process to do this was super convoluted at the time. I had to take the images with my phone, save them to my PC, name them according to their class, download and install a tool to annotate the bounding boxes and finally annotate the images. There must be a simpler way right?
Well, seems like there wasn't.

So in order to save myself a couple of minutes and the installation of an annotation tool I sat down for a couple of days and installed lots of tools.
Just so you don't have to!😉

In reality the process was surprisingly painless. In order to keep things simple I wrote everything in vanilla HTML, CSS and Javascript. Still I'm quite happy with the results. The app is able to take an image from a pc's webcam or the front or back camera of a phone. Then the bounding box can be annotated and adjusted by clicking/tapping and dragging and a class ID can be entered. Finally the image and annotation can be downloaded in Pascal VOC format or discarded to restart the process from the beginning.

Some challenges were getting the manifest right in order to request access to the camera correctly, making drawing and editing the bounding box simple and intuitive and interacting with the local storage of the device in order to save the image and annotation. The most difficult thing however was getting used to the Javascript syntax again after years of working primarily in Python.😅

While this app is certainly not intended for professional use, it might save someone else a few minutes in the future. In addition it was super interesting to get back to doing something with web technologies and to see how they have evolved over the last few years. So to wrap this up I'd say that this project was a great success!👍

bboxr demo