In the ever-evolving world of computer vision and artificial intelligence, the need for high-quality, accurately annotated data is paramount. Accurate annotations are the bedrock upon which powerful AI models are built. Today, I introduce you to X-AnyLabeling, a groundbreaking annotation tool that is set to revolutionize the way we annotate data for AI applications.
X-AnyLabeling is not your average annotation tool; it’s a leap forward into the future of automated data annotation. It’s designed to not only simplify the process of annotation but also to integrate cutting-edge AI models for superior results. With a focus on practical applications, X-AnyLabeling strives to provide an industrial-grade, feature-rich tool that will assist developers in automating annotation and data processing for a wide range of complex tasks.
🥳 What’s New
- Oct. 2023:
- Release the latest version 1.0.0.
- 🚀🚀🚀 Support YOLOv5-OBB with DroneVehicle and DOTA-v1.0/v1.5/v2.0 model.
- 🆕🆕🆕 Add a new feature for rotation box.
- 🔥🔥🔥 SOTA Zero-Shot Object Detection — GroundingDINO is released.
- 🙌🙌🙌 SOTA Image Tagging Model — Recognize Anything is released.
- Support YOLOv5-SAM and YOLOv8-EfficientViT_SAM union task.
- Release Gold-YOLO and DAMO-YOLO models.
- Release MOT algorithms: OC_Sort (CVPR’23).
- Add a new feature for small object detection using SAHI.
- …
With X-AnyLabeling, you can now achieve outstanding results in your computer vision projects with unparalleled ease.
🔥 Highlight
🗝️ Key Features
X-AnyLabeling offers an impressive array of features designed to make the annotation process efficient and user-friendly:
- Support for importing
images
andvideos
: Whether you're annotating single images or video sequences, X-AnyLabeling has you covered. CPU
andGPU
inference support: Harness the power of your hardware with the ability to switch between CPU and GPU for inference.- Compatibility with multiple SOTA deep-learning algorithms: X-AnyLabeling seamlessly integrates with a variety of state-of-the-art deep learning algorithms, making it a versatile choice for AI projects.
- Single-frame prediction and
one-click
processing for all images: Save time with the ability to annotate multiple images in a single click. - Export options for formats like
COCO-JSON
,VOC-XML
,YOLOv5-TXT
,DOTA-TXT
, andMOT-CSV
: X-AnyLabeling simplifies the export process, ensuring your annotations are available in the format you need. - Integration with popular frameworks: The tool supports popular frameworks like PaddlePaddle, OpenMMLab, timm, and more.
- Comprehensive
help documentation
and activedeveloper community support
: X-AnyLabeling is more than just a tool; it's a community. You'll find comprehensive documentation and a community of developers ready to assist you. - Accommodation of various visual tasks: Whether it’s object
detection
,segmentation
,face recognition
, or any other visual task, X-AnyLabeling has you covered. - Modular design: X-AnyLabeling’s modular design allows users to customize the system to their specific needs and supports further development.
- Image annotation capabilities: X-AnyLabeling provides annotation capabilities for various shapes like
polygons
,rectangles
,rotation
,circles
,lines
, andpoints
. It also supportstext detection
,recognition
, andKIE
annotations.
⛏️ Model Zoo
X-AnyLabeling’s Model Zoo is a treasure trove of powerful AI models. Whether you’re working on object detection, image segmentation, facial landmark detection, or 2D pose estimation, you’ll find models that are designed to excel in these tasks. With a range of models like Grounding DINO, Recognition Anything, and SAM, X-AnyLabeling has a model to suit your project’s needs.
For a detailed list of available models, please refer to the models_list.
📖 Tutorials
X-AnyLabeling doesn’t leave you in the dark. It provides a wealth of tutorials to help you get started quickly.
🔜 Quick Start
To get up and running with X-AnyLabeling, follow these simple steps:
- Download the tool from here .
- Installation on MacOS: After installation, go to the Applications folder, right-click on the application, and choose Open. On subsequent launches, you can open the application normally using Launchpad.
- For other operating systems like MacOS, you can compile the tool from the source by following the steps detailed in the documentation.
Of course, it’s strongly recommend that you run it from source, which can provide a more stable experience!
👨🏼💻 Build from Source
If you prefer to build X-AnyLabeling from source, follow these steps:
- Install the required libraries by running:
pip install -r requirements.txt
If you need to use GPU inference, install the corresponding requirements-gpu.txt file and download the appropriate version of onnxruntime-gpu based on your local CUDA and CuDNN versions.
- Generate resources [Option]:
pyrcc5 -o anylabeling/resources/resources.py anylabeling/resources/resources.qrc
- Run the application:
python anylabeling/app.py
📦 Build Executable
For those who prefer executable versions, X-AnyLabeling offers options for building executables:
#Windows-CPU
bash scripts/build_executable.sh win-cpu
#Windows-GPU
bash scripts/build_executable.sh win-gpu
#Linux-CPU
bash scripts/build_executable.sh linux-cpu
#Linux-GPU
bash scripts/build_executable.sh linux-gpu
Before compiling, ensure that the __preferred_device__
parameter in the anylabeling/app_info.py
file matches your GPU/CPU configuration. For GPU compilation, install the necessary environment using pip install -r requirements-gpu*.txt
and ensure compatibility with your local onnxruntime-gpu
.
For more detailed instructions, refer to the official documentation.
With these tutorials, you can quickly set up X-AnyLabeling and start annotating your data.
📋 Usage
📌 Basic Usage
X-AnyLabeling simplifies the annotation process with an intuitive user interface. Follow these basic steps to start annotating your data:
- Build and launch X-AnyLabeling using the instructions provided in the tutorials.
- Click on
Change Output Dir
in theMenu/File
to specify an output directory. Alternatively, annotations will be saved by default in the current image path. - Use the
Open
,Open Dir
, orOpen Video
options to select a specific file, folder, or video for annotation. - Click the
Start drawing xxx
button on the left-hand toolbar or use theAuto Labeling
control to begin annotating. - Click and release the left mouse button to select a region for annotation (e.g., rect box). You can also use the “Run (i)” key for one-click annotation.
🚀 Advanced Usage
X-AnyLabeling offers advanced features to enhance your annotation workflow:
- Activate auto labeling with the Auto Labeling Button or by pressing the shortcut key “Ctrl + A.”
- Select one of the
Segment Anything-liked Models
from the dropdown menu Model. You can also choose the quantization level. - Use the
Auto segmentation marking tools
to mark objects. These tools allow you to add points, remove points, draw rectangles, and finish object annotation.
X-AnyLabeling offers powerful annotation capabilities, making it a versatile tool for a wide range of projects.
📜 Docs
X-AnyLabeling provides comprehensive documentation to assist users:
- Model Zoo: A detailed list of available AI models.
- Discover X-AnyLabeling: Get an introductory glimpse of X-AnyLabeling with our YouTube video to learn more about this powerful tool.
🧷 Hotkeys
X-AnyLabeling also supports a range of hotkeys to speed up your workflow. These shortcuts make annotation faster and more efficient.
With this introduction to X-AnyLabeling, you’re now equipped with a powerful tool for your computer vision and AI projects. Whether you’re working on object detection, image segmentation, or other visual tasks, X-AnyLabeling streamlines the annotation process, saving you time and effort.
Discover the future of annotation with X-AnyLabeling. Get started today and see the difference it can make in your AI projects.
🌟 In Conclusion
X-AnyLabeling is a game-changer in the world of data annotation. It simplifies and accelerates the annotation process, empowering developers, data scientists, and AI enthusiasts to focus on what truly matters: solving problems and optimizing their models.
With a rich selection of features, a powerful Model Zoo, and comprehensive tutorials, X-AnyLabeling is a tool that helps you level up your AI projects. The combination of advanced technology and a user-friendly interface makes data annotation more accessible than ever before.
I invite you to explore X-AnyLabeling, experience its capabilities, and see how it can revolutionize your annotation workflow. Your feedback and contributions are invaluable in shaping the future of this remarkable tool.
Give X-AnyLabeling a try on GitHub and discover the annotation revolution for yourself.
🌟 Give us a star on GitHub 🌟 to show your support for this project. Your star is not just a click; it’s a vote of confidence in the future of data annotation.
Let’s create a more efficient, effective, and exciting AI landscape together. With X-AnyLabeling, the possibilities are endless.
Thank you for joining us on this journey. I look forward to your contributions and are excited to see what you’ll build with X-AnyLabeling.