> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/french/key-features/annotate-data-for-object-detection/dataset-collection.md).

# Collecte de dataset

La manière la plus rapide de construire un modèle IA performant est de **capturer des données intentionnellement**. Cette page explique comment collecter des images et vidéos de haute qualité en utilisant les outils natifs d'AugeLab Studio.

> Info\
> Vous pouvez ignorer cette section si vous avez déjà un dossier d'images/vidéos prêt pour l'annotation.

***

## Planifier votre jeu de données

Il est crucial de planifier votre jeu de données avant la collecte. Un jeu de données bien structuré conduit à de meilleures performances du modèle.

### 📊 De combien de données avez-vous besoin ?

Le nombre d'images nécessaires dépend de la variabilité de l'environnement. Utilisez ce tableau comme point de départ pour votre objectif de collecte.

| Type de projet         | Environnement                                             | Images recommandées par classe\* |
| ---------------------- | --------------------------------------------------------- | -------------------------------- |
| **Simple**             | Éclairage contrôlé, caméra fixe, 1-2 classes.             | **50 - 150**                     |
| **Industriel**         | Atelier/fabrication, changements d'équipe, tapis roulant. | **200 - 500**                    |
| **Complexe**           | Éclairage variable, nombreuses classes, caméra mobile.    | **1 000+**                       |
| **Complexe extérieur** | Scènes extérieures avec variations météo.                 | **2 000+**                       |
| **Événement rare**     | Détection de défauts ou fuites occasionnels.              | **50 Target / 100 Empty**        |

> \*Par "images par classe" on entend le nombre d'exemples annotés pour chaque catégorie d'objet, pas seulement le nombre total d'images.

> Info\
> Pour de meilleurs résultats, visez la **diversité** dans les angles, distances et conditions d'éclairage au sein de votre jeu de données.

> Avertissement\
> Le nombre de classes devrait être cohérent dans l'ensemble du dataset. Sinon, l'**augmentation de données** peut aider à équilibrer les classes ultérieurement.

***

### 🏗️ Définir les limites

Écrivez ces points avant de prendre la première photo pour garantir que votre jeu de données soit **représentatif** et **cohérent**.

1. **Liste de classes** : Quels objets spécifiques détectez-vous ?
2. **Spécifications caméra** : Angle de montage final, distance et Field of View (FoV). Caméra unique ou multiples ?
3. **Variations** : Y aura-t-il des variations d'éclairage (reflets/ombres) ou du désordre en arrière-plan ?
4. **Négatifs** : À quoi ressemble une scène "vide" ?
5. **Portée** : Quels objets le modèle doit-il volontairement ignorer ?

***

## Configuration de la caméra

Que vous utilisiez une caméra USB, IP ou industrielle, assurez-vous d'optimiser ces paramètres avant la collecte :

* **Résolution** : Visez 480p à 720p (640x480 est une norme courante). Les résolutions plus élevées peuvent être réduites ultérieurement.
* **Fréquence d'images** : 15–30 FPS suffisent pour la plupart des tâches de détection d'objets.
* **Mise au point** : Définir la mise au point en mode manuel pour éviter les variations pendant la collecte.
* **Exposition** : Utilisez des réglages d'exposition manuels pour conserver un éclairage cohérent.
* **Sauvegarder les réglages** : Enregistrez votre profil de paramètres caméra ; la plupart des caméras permettent de sauvegarder des presets pour garder les mêmes réglages entre les sessions.

## Collecte de jeu de données

Vous pouvez collecter des images et des vidéos pour votre dataset de détection d'objets directement dans AugeLab Studio en utilisant les outils intégrés. Cela garantit la compatibilité et simplifie le processus d'annotation.

> Optionnel : vous pouvez aussi télécharger des datasets publics ou utiliser des caméras/logiciels externes, mais cela peut nécessiter des étapes de mise en forme supplémentaires.

### Capture dans AugeLab Studio

L'environnement Studio vous permet d'utiliser des triggers (boutons, signaux PLC, ou timers) pour automatiser la collecte.

### 1. Commencer depuis le projet exemple

AugeLab est fourni avec un modèle préconfiguré pour cette tâche.

* Chemin : `File` → `Example Projects` (ou "Example Scenarios")
* Projet : **"Data Collection for AI Training"**

### 📸 Images individuelles : le bloc `Image Write`

Utilisez-le pour capturer des images statiques de haute qualité. Idéal pour des scènes fixes avec plusieurs positions.

| Entrée/Réglage     | Fonction                                                                     |
| ------------------ | ---------------------------------------------------------------------------- |
| **Folder Path**    | Emplacement où les images sont sauvegardées.                                 |
| **Save (Trigger)** | Mettre à `True` pour capturer une image. À associer à un bouton ou un timer. |
| **Compress Image** | **Checked** = `.jpg` (taille réduite)                                        |

### 🎥 Mouvement continu : le bloc `Record Video`

Idéal pour les tapis roulants ou inspections rapides où vous extrayez des images plus tard.

| Entrée/Réglage             | Fonction                                                  |
| -------------------------- | --------------------------------------------------------- |
| **Video Quality**          | **Compressed** = `.mp4`                                   |
| **Trigger Mode: Spacebar** | Appuyez sur Space pour démarrer/arrêter l'enregistrement. |
| **Trigger Mode: Once**     | `Record=True` bascule l'enregistrement on/off.            |

> Planifiez des enregistrements courts et ciblés (10–60 s) plutôt qu'un seul fichier énorme. Cela facilite l'extraction des frames.

***

## 📉 Collecte d'images d'arrière-plan (négatives)

Un modèle robuste doit savoir ce qu'il ne doit pas détecter. Capturez volontairement des scènes "vides".

* **Que capturer** : Convoyeurs vides, postes de travail vides, ou objets non-cibles courants (fixations, outils).
* **Empty** : Un fichier d'annotation existe, mais sans boîtes.
* **Excluded** : Aucun fichier d'annotation n'existe.

***

## Datasets publics

Si vous devez compléter vos données, considérez ces datasets publics :

* [COCO Dataset](https://cocodataset.org/#home) : large dataset pour détection, segmentation et captioning.
* [Pascal VOC](http://host.robots.ox.ac.uk/pascal/VOC/) : dataset standard pour détection et segmentation.
* [Open Images Dataset](https://storage.googleapis.com/openimages/web/index.html) : \~9 millions d'images annotées.
* [ImageNet](http://www.image-net.org/) : grande base visuelle pour la recherche en reconnaissance visuelle.
* [Kaggle Datasets](https://www.kaggle.com/datasets) : différents datasets pour le machine learning, y compris la détection d'objets.

## 📂 Structure de dossier & préparation

AugeLab Studio charge les datasets depuis un dossier. Assurez-vous que votre structure ressemble à ceci :

```
my_dataset/
  ├── 000001.jpg
  ├── 000002.jpg
  ├── background_01.png
  └── classes.names  <-- (Optional, will be created during annotation)
```

***

## 🏁 Liste de vérification pour la capture

| Vérification   | Exigence                                                                                 |
| -------------- | ---------------------------------------------------------------------------------------- |
| **Qualité**    | Évitez le flou de mouvement important ou la surexposition où les contours disparaissent. |
| **Couverture** | Capturez les objets au centre, dans les coins et sur les bords du cadre.                 |
| **Échelle**    | Respectez la distance réelle entre la caméra et l'objet.                                 |
| **Désordre**   | Incluez les arrière-plans encombrés que la caméra verra réellement.                      |
| **Résolution** | La plupart des modèles IA fonctionnent mieux entre 480p et 720p (640x480 en moyenne).    |
