# Annotation Window Basics

## Annotate Data for Object Detection <a href="#annotate-data-for-object-detection" id="annotate-data-for-object-detection"></a>

### First Look <a href="#first-look" id="first-look"></a>

{% hint style="info" %}
You will need to have a computer with [Nvidia GPU](/introduction/system-requirements.md), should install [CUDA, CUDNN](/getting-started/installation-and-licensing.md#gpu-acceleration-cuda), and use [Module Downloader Window](/augelab-studio-interface/external-features/module-downloader.md#installing-the-ai-bundle).
{% endhint %}

<figure><img src="/files/20o4pNt6RaxyEi4MxPxP" alt=""><figcaption></figcaption></figure>

The AugeLab Studio Image Annotation Window allows users to annotate images by drawing bounding boxes around objects of interest and associating them with specific classes.

### Getting Started <a href="#getting-started" id="getting-started"></a>

To open the Image Annotation Window, navigate to the top menu and click on `AI Tools` ➡️ `Image Annotation`.

For image annotation, you need two things:

1. `.class` file
2. Dataset

### Class File <a href="#class-file" id="class-file"></a>

To label your data, first you need a `classes.names` file, which is a standard text file with *.names* extension. A normal class file looks like below:

```
Human
Dog
Cat
Cup

```

If you do not have such file, you can create your own using the `Classes` section:

<figure><img src="/files/Zos4XebocBdBpveQaZzL" alt="" width="250"><figcaption></figcaption></figure>

To create your own classes file:

1. Type a class name
2. Click on `+` and add your classes.
3. Click on `Save Classes`(third button) and you are ready to pick a folder.

You may also click on `-` to remove any unwanted classes.

### Load Image Folder <a href="#load-image-folder" id="load-image-folder"></a>

{% hint style="warning" %}
Make sure path to your dataset do not contain any non-english characters.
{% endhint %}

Click on `Open Folder` at the top of the screen and choose the folder that contains all of your images:

<figure><img src="/files/Z8bovWbFyGJSN63ArcPg" alt=""><figcaption></figcaption></figure>

After clicking on `Open Folder`, a dialog will appear asking you to choose a folder and a class file:

<figure><img src="/files/z8NZM4qGAmpf1dTg9bEc" alt=""><figcaption></figcaption></figure>

Select Image from List: After loading the image folder, a list of available images will be displayed. Click on an image to select it for annotation.

<figure><img src="/files/FYUaaLimB5CJCegJiSeV" alt="" width="563"><figcaption></figcaption></figure>

### Annotating Images <a href="#annotating-images" id="annotating-images"></a>

Annotating images are pretty simple. Click on the top left of the object you'd like to detect, drag the mouse and release it when you are done!

![Annotation Window](/files/qbuCJrLZedeE11Hl15q3)

Bouding boxes should tightly fit around the object of interest without including too much background. This helps the model learn to focus on the relevant features of the object.

{% tabs %}
{% tab title="Bad Annotation" %}

<figure><img src="/files/j7a0DbPCsZTrcWeXWxBS" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="Good Annotation" %}

<figure><img src="/files/rJG9U0UKPQEfo3LSHaNO" alt=""><figcaption></figcaption></figure>
{% endtab %}
{% endtabs %}

### Using the Dataset Panel <a href="#using-the-dataset-panel" id="using-the-dataset-panel"></a>

<figure><img src="/files/nEHcs2GiZmjbtk2qX1eB" alt=""><figcaption></figcaption></figure>

Dataset features several functionalities:

1. `Filter` function that allows you to filter several image classes:
   * `All` All images with and without annotation
   * `Annotated` images have annotations with them.
   * `Empty` images do no contain annotations, but included in the training. This means objects that are not annotated may negatively impact training.
   * `Excluded` images do no have an annotation file. This means they do not affect training whatsoever.
2. `Search` functionality will allow you to filter images with their names.

### Annotating Videos <a href="#annotating-videos" id="annotating-videos"></a>

You can also annotate video files using the **Video** mode on the top side of the window:

![](/files/hsguJ79gkLLEHxc8cbM9)

Changing video mode will ask you for a file path. Choosing the video will allow you to annotate a video just like a folder!

### Tools <a href="#tools" id="tools"></a>

There are several tools inside the Annotation Tool to help you during your dataset preparation:

#### Class Frequency Analysis <a href="#class-frequency-analysis" id="class-frequency-analysis"></a>

Clicking on class frequency analysis will analyze and show you how many classes exist in your dataset.

This is useful to check if you have a balanced dataset or not.

#### Augment Dataset <a href="#augment-dataset" id="augment-dataset"></a>

AugeLab Studio automatically applies dataset augmentation. Augmentation is the process of artificially creating similar data.

This subject is detaily covered in [**Augmenting Your Dataset**](/key-features/annotate-data-for-object-detection/augment-dataset.md) page.

## 🛠️ Troubleshooting AI Vision

If your AI models aren't behaving as expected, use these quick-fix toggles to tune your performance.

<details>

<summary>🚫 "It annotates nothing" (Zero Detections)</summary>

When the AI is being too "shy" to label anything, it's usually a threshold or description issue.

* **Lower Confidence:** Drop the **Confidence Threshold** slightly (e.g., ).
* **Text Sensitivity:** For Grounding DINO, lower the **Text Threshold** to be less strict about word matching.
* **Be Specific:** Instead of "part," try "silver metal bolt" or "red plastic cap." Descriptions should be visual.
* **Check Lists:** Verify that your class list is actually loaded in the node settings and isn't empty.

</details>

<details>

<summary>📦 "Too many wrong boxes" (Ghost Detections)</summary>

If your screen is cluttered with false positives, you need to tighten the "strictness" of the model.

* **Raise Confidence:** Increase the **Confidence Threshold** to filter out low-certainty guesses.
* **Text Strictness:** Increase the **Text Threshold** to force a closer match between the image and your prompt.
* **Remove Ambiguity:** Avoid broad prompts like "object" or "item." If the AI is labeling shadows as "parts," specifically describe the part's unique colors or textures.

</details>

<details>

<summary>❓ "YOLO model doesn't detect my class"</summary>

Standard YOLO models are pre-trained on specific datasets.

* **COCO Standard:** Basic YOLO models only recognize the 80 COCO categories. Your labels must match exactly (e.g., `person`, `cell phone`, `chair`, `bottle`).
* **Custom Needs:** If you need to detect something specific (like a "scratched circuit board"), switch to a **Text-Prompt** model (like Grounding DINO) or train a **Custom YOLO** model.

</details>

<details>

<summary>🐌 "Processing is slow or laggy"</summary>

Vision models are computationally expensive.

* **First-Run Delay:** It is normal for the first run to be slow while models download and initialize in memory.
* **Model Size:** Grounding DINO Base and OWLv2 Large are high-accuracy but "heavy." Try a "Tiny" or "Small" variant for faster speeds.
* **Hardware:** Ensure AugeLab is utilizing your **GPU**. Running large AI models on a CPU will result in significant latency.

</details>

***

#### 💡 Still stuck?

Try the **AI Assistant** in AugeLab Studio. Describe your specific camera view and what the boxes currently look like; it can often suggest the exact decimal value for your thresholds.

Would you like me to create a **"Threshold Cheat Sheet"** table that explains exactly what Confidence vs. Text thresholds do?]\(./augment-dataset.md).

{% hint style="warning" %}
Augmentation process should be done after finishing annotation
{% endhint %}

{% hint style="warning" %}
Augmentation process may increase the disk size of your dataset up to 10 times.
{% endhint %}

#### Preprocess Image <a href="#preprocess-image" id="preprocess-image"></a>

Preprocess Image tool allows you to change the contrast, brightness and gamma of images that are shown in the window. This feature comes in handy when dealing with very dark or too bright images.

![](/files/1M5pi3MTHxSFArecw3yf)

#### Change Class Id <a href="#change-class-id" id="change-class-id"></a>

Change Class Id tool will allow you to change the all annotated class instances to a different class.

This tool comes in hand when merging two different datasets.

![](/files/tjSltRmZJySE0d3mgLXJ)

#### Shortcuts and Help <a href="#shortcuts-and-help" id="shortcuts-and-help"></a>

<details>

<summary>For shorcuts and help, you can click on the `Help` button at the top menu.</summary>

* `D`: Show next image or frame.
* `A`: Show previous image or frame.
* `Shift + D`: Move forward by 10 images/frames.
* `Shift + A`: Move backward by 10 images/frames.
* `W`: Decrement class selection.
* `S`: Increment class selection.
* `Shift + W`: Decrement class selection by 3.
* `Shift + S`: Increment class selection by 3.
* `X`: Remove the last bounding box annotation.
* `Shift + C`: Clear all annotations.
* `O`: Add an empty annotation file or clear annotations.
* `P`: Remove annotations and clear the file.
* `M`: Move or exclude image to another folder (Folder Mode only).
* `Shift + Delete`: Remove image and annotation from computer (Folder Mode only).

</details>

#### Training With Custom AI Object Detection Model <a href="#training-with-custom-ai-object-detection-model" id="training-with-custom-ai-object-detection-model"></a>

To train a custom object detection model, please refer to [**Object Detection Train**](/key-features/train-custom-ai-models-with-training-window.md).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.augelab.com/key-features/annotate-data-for-object-detection/annotation-window-how-to.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
