Luminosité et contraste
L’outil de luminosité et contraste ajuste l’exposition d’une image : vous éclaircissez une photo prise à contre-jour, vous renforcez le contraste d’un document scanné ou vous adoucissez des blancs brûlés. Le réglage s’applique à l’ensemble du cliché et vous récupérez un fichier prêt à l’emploi, sans logiciel à installer.
Exécuter en ligne
Exécutez cette tâche sur nos serveurs, avec votre compte. Les outils gratuits tournent dans votre navigateur ; celui-ci est facturé sur votre solde KIT au prix affiché ci-dessus.
Éclaircir sans délaver
La luminosité relève ou abaisse toutes les tonalités d’un bloc ; le contraste écarte les tons clairs des tons foncés pour redonner du relief. Sur une photo sombre, commencez par un léger gain de luminosité, puis ajoutez du contraste pour éviter l’effet gris et plat. À l’inverse, une image surexposée se récupère en baissant la luminosité et en resserrant les hautes lumières. Les deux réglages travaillent ensemble : un cliché terne retrouve de la matière sans virer au délavé ni brûler les blancs.
Redonner du mordant à un document scanné
Un justificatif photographié au téléphone ressort souvent grisâtre, avec un texte peu lisible. Un contraste plus marqué sépare l’encre du papier et rend la page nette avant de l’envoyer à une administration ou de la joindre à un dossier. C’est utile pour une attestation, un relevé ou une facture scannée dont les caractères manquent de définition. Le réglage ne réécrit pas le texte : il rend simplement l’image plus franche, donc plus facile à relire pour vous comme pour votre destinataire.
Formats acceptés et limites
L’outil prend en charge les formats courants : JPEG, PNG et WebP. La taille maximale d’un fichier est de 15 Mo et la définition ne doit pas dépasser 12 mégapixels, ce qui couvre largement une photo de smartphone ou un scan A4. Le réglage préserve les dimensions d’origine : seule la tonalité change, pas le cadrage. Pour un lot de clichés à harmoniser, chaque image est traitée séparément avec les mêmes valeurs, de façon à obtenir un rendu cohérent d’un fichier à l’autre.
Depuis le web, l’API ou bientôt votre mobile
Cette page exécute le réglage directement dans le navigateur, sans rien installer. La même capacité est disponible via l’API pour automatiser le traitement d’une galerie ou d’un flux de photos, et arrivera bientôt sur les applications iOS et Android, par e-mail et sur Telegram. Vous choisissez le canal qui vous arrange : un ajustement ponctuel se fait ici en quelques secondes, une chaîne de production régulière passe plutôt par l’appel programmé.
Cas d’usage
Une photo de famille à contre-jour
Camille Moreau a photographié un anniversaire face à la fenêtre : les visages sont dans l’ombre. Un gain de luminosité et un peu de contraste suffisent à retrouver les traits sans surexposer l’arrière-plan lumineux.
Un justificatif pour la CAF
Julien Lefèvre doit joindre une attestation scannée à son dossier. La page ressort grise ; un contraste plus net rend le texte franc et lisible avant l’envoi sur l’espace en ligne.
Des visuels produits homogènes
L’Atelier Garnier SARL photographie ses meubles sous des lumières changeantes. Le même réglage appliqué à chaque cliché aligne l’exposition de la boutique en ligne, sans passer par un logiciel de retouche complet.
Questions fréquentes
Est-ce que je perds en qualité en éclaircissant l’image ?
Un réglage modéré conserve les détails. Pousser la luminosité à l’extrême sur une zone très sombre peut faire apparaître du bruit déjà présent dans le fichier d’origine ; procédez par petits pas plutôt que d’un seul coup, et vous garderez une image propre.
Puis-je régler la luminosité sur une seule partie de la photo ?
Non, cet outil applique le réglage à l’ensemble de l’image. Pour assombrir ou masquer une zone précise, l’outil de floutage de région est plus adapté ; ici, l’ajustement est global et uniforme.
Combien coûte un traitement ?
Le tarif est de $0.002 par requête, plus $0.005 par image traitée. Les prix du service sont affichés en dollars US ; il n’y a pas d’abonnement, vous payez uniquement ce que vous exécutez.
Mes photos sont-elles conservées sur vos serveurs ?
L’image traitée n’est pas archivée : elle sert au réglage puis n’est plus conservée une fois le fichier renvoyé. Nous ne réutilisons pas vos clichés et rien n’est publié.
Faut-il créer un compte ?
Non. Il n’y a pas d’inscription ni de compte à gérer : l’achat se fait directement, en une fois, sans mot de passe à retenir.
L’assistance répond-elle en français ?
Non. Une vraie personne vous répond, en espagnol ou en anglais. Nous préférons vous le dire clairement plutôt que de vous promettre un support en français qui n’existe pas.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/image/brightness-contrast \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"image":"https://ejemplo.com/imagen.jpg"}'const res = await fetch("https://api.kit.forhosting.com/image/brightness-contrast", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"image": "https://ejemplo.com/imagen.jpg"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/image/brightness-contrast",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"image": "https://ejemplo.com/imagen.jpg"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/image/brightness-contrast", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"image":"https://ejemplo.com/imagen.jpg"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"image":"https://ejemplo.com/imagen.jpg"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/image/brightness-contrast", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"image": "https://ejemplo.com/imagen.jpg"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "image.brightness_contrast",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_mb | 15 |
max_megapixels | 12 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |