Are you part of the RoboCup community and in need of a reliable image data labeling tool? Look no further! ImageTagger is designed to facilitate collaborative labeling of images, enabling teams to benefit from previously labeled data while contributing their own.
Table of Contents
- ImageTagger Overview
- Features
- Planned Features
- Reference
- Installing and Running ImageTagger
- Configuration
- Used Dependencies
ImageTagger Overview
This collaborative online tool helps teams label their image data effectively. For RoboCup participants, it’s best to use the instance provided by the Hamburg Bit-Bots (https://imagetagger.bit-bots.de). This shared platform allows you to utilize existing labeled images and upload your contributions.
Features
- Team creation
- Image sets management
- Bounding box, polygon, line, and point labeling
- Image set download options
- Export format creation
- Label export
- Image preloading for labeling and verification
- Label verification
- Upload of existing labels
- Tools exchange among users
Planned Features
- Collections of filtered images from multiple image sets
- Image metadata support (e.g., robot pose, camera parameters)
Reference
To dive deeper into the specifics of the ImageTagger, refer to this paper: ImageTagger: An Open Source Online Platform for Collaborative Image Labeling.
Installing and Running ImageTagger
Set up ImageTagger locally, in a Docker container, or on Kubernetes. Let’s take a closer look at each approach.
Locally
Setting up ImageTagger locally requires a few steps:
- Install the Latest Release: Ensure you have Pipenv installed. Checkout the latest release tag:
- Setup PostgreSQL: Install and configure a PostgreSQL server following your OS guide. Create a user and a database for ImageTagger:
- Select Configuration: For production deployment, set the environment variable:
- Initialize the Database:
- Create a User: Run:
- Run the Server:
git checkout v…
cd imagetagger
pipenv sync
CREATE USER imagetagger PASSWORD imagetagger;
CREATE DATABASE imagetagger WITH OWNER imagetagger;
export DJANGO_CONFIGURATION=Prod
.manage.py migrate
.manage.py createsuperuser
.manage.py runserver
In-Docker
- Checkout Latest Release:
- Build the Container Image:
- Run the Container:
git checkout v…
docker build -t imagetagger .
docker run -it -p 8000:80 --name imagetagger imagetagger
On Kubernetes
- Follow the steps for In-Docker to build the container image.
- Apply Kubernetes Configuration:
kustomize build . > k8s.yml
kubectl apply -f k8s.yml
Configuration
ImageTagger is configured using environment variables, allowing customization according to deployment needs. It’s crucial to define specific variables for production, ensuring secure operation.
Used Dependencies
The tool relies on several libraries, including:
- Bootstrap
- Django
- Django REST Framework
- django-registration
- django-widget-tweaks
- imgAreaSelect
- jCanvas
- jQuery
- jQuery-Autocomplete
- jQuery-File-Upload
- Pillow
- PostgreSQL
Troubleshooting Steps
If you run into issues while setting up or using ImageTagger, consider the following troubleshooting tips:
- Ensure PostgreSQL is correctly installed and that the database user and permissions are set properly.
- If you’re experiencing connectivity issues, double-check the environmental variables for database connection.
- For Docker users, verify that your containers are running and configured correctly.
- If the application isn’t displaying, ensure that the necessary ports are exposed and not blocked by a firewall.
For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.
Final Thoughts
At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.
