> 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/function-blocks/blocks-reference/image-transformations/transformation-filters/auto-contrast.md).

# Auto Contrast

Ce bloc de fonction ajuste automatiquement le contraste d'une image en analysant son histogramme et en étirant les valeurs de pixels pour améliorer la visibilité. Il est idéal pour améliorer rapidement la luminosité et le contraste de photos ou d'images caméra sans modifier manuellement les courbes.

## 📥 Inputs (sockets)

`Image Any` — Socket d'entrée qui accepte l'image dont on souhaite ajuster le contraste.

## 📤 Outputs (sockets)

`Image Any` — Socket de sortie fournissant l'image avec contraste amélioré.

## 🕹️ Controls (widgets)

`Threshold` — Curseur pour définir le pourcentage de clipping de l'histogramme (plage typique 1–99). Des valeurs plus élevées rognent davantage les extrémités avant l'étirement, produisant un contraste plus marqué.

## ⚙️ Running mechanism

Lorsque le bloc s'exécute, il analyse l'histogramme de l'image d'entrée pour trouver les points de coupure bas et haut en fonction de la valeur `Threshold` sélectionnée. Il remappe ensuite les valeurs de pixel afin que la plage tonale utile remplisse la gamme de sortie disponible. Le résultat est une image visuellement plus lumineuse et à contraste plus élevé, tout en essayant de préserver les détails dans la plage rognée.

## 🎨 Features

* Clipping automatique de l'histogramme pour étendre la plage tonale exploitable.
* Contrôle par un seul curseur pour des ajustements rapides et intuitifs.
* Fonctionne avec des images en niveaux de gris et en couleur.
* Exécution rapide adaptée à la prévisualisation en temps réel et au traitement par lots.

## 📝 Usage

1. Connectez une source d'image à l'entrée `Image Any` (par exemple `Camera USB`, `Camera IP (ONVIF)`, `Load Image`).
2. Ajustez le curseur `Threshold` pour contrôler l'agressivité du clipping de l'histogramme.
3. Utilisez la sortie du bloc `Image Any` comme entrée pour des blocs de visualisation ou de traitement ultérieur (par exemple `Show Image`, `Image Logger`, `Image Write`).

## 💡 Tips and Tricks

* Combinez avec `Denoising` ou `Blur` avant l'amélioration du contraste pour réduire l'amplification du bruit sur des images très bruitées.
* Utilisez `Normalize Image` si vous avez besoin d'une stratégie de normalisation différente ou souhaitez faire correspondre le contraste à une image de référence.
* Après l'auto-contrast, affinez les résultats avec `Contrast-Brightness-Gamma` pour un contrôle plus précis des tons moyens et du gamma.
* Prévisualisez les résultats avec `Show Image` pendant le réglage, et enregistrez les réglages préférés avec `Image Write` ou `Image Logger`.
* Pour des problèmes de couleur spécifiques, essayez `Adjust Colors` ou `Color Space` avant d'appliquer l'auto-contrast afin d'obtenir un meilleur équilibre des couleurs.

## 🛠️ Troubleshooting

* Résultat trop dur ou rogné : réduisez la valeur de `Threshold` pour préserver plus de hautes lumières/ombres.
* Perte de détail dans les hautes lumières/ombres : essayez un `Threshold` plus bas ou suivez avec des ajustements `Contrast-Brightness-Gamma`.
* Bruit visible augmenté après l'amélioration : appliquez `Denoising` avant l'auto-contrast, ou réduisez le `Threshold`.
* Déplacements de couleur après traitement : expérimentez la conversion `Color Space` ou utilisez `Adjust Colors` avant d'appliquer l'auto-contrast.

## ✅ Best practices

* Commencez par un `Threshold` faible à modéré et augmentez jusqu'à atteindre le contraste souhaité.
* Utilisez `Show Image` pour comparer avant/après en temps réel.
* Pour des pipelines automatisés, testez les valeurs de threshold sur un ensemble représentatif d'images pour éviter le sur- ou sous-traitement.
