ForHosting KIT · Images

Calculer le rayon de flou et le noyau gaussien

Ce calculateur de rayon de flou convertit une intensité non négative en dimensions pratiques pour une convolution gaussienne.

● BetaGratuit · dans votre navigateur
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt

L'intensité correspond à l'écart-type gaussien, ou sigma, exprimé en pixels. Le résultat indique le rayon nécessaire pour couvrir trois écarts-types de chaque côté ainsi que la taille impaire du noyau associé. Cet outil aide à configurer les bibliothèques d'images, les shaders, les filtres canvas et les chaînes de traitement dont les réglages diffèrent. Aucune image n'est envoyée ni analysée, et une entrée identique produit toujours le même résultat.

Passez de l'intensité aux dimensions techniques

Les outils d'imagerie décrivent souvent le même flou gaussien avec des paramètres différents. Une interface demande sigma, une autre attend un rayon, tandis qu'une fonction de convolution peut exiger la largeur totale du noyau. Ce calculateur établit une correspondance explicite entre ces représentations. Il considère que l'intensité est sigma en pixels, puis choisit un rayon couvrant l'intervalle de moins trois sigma à plus trois sigma. Cet intervalle conserve presque tout le poids utile de la distribution gaussienne tout en maintenant une convolution finie. Le rayon est l'arrondi supérieur de trois fois l'intensité, car une limite fractionnaire nécessite encore une position de pixel entière. La taille du noyau vaut ensuite deux fois le rayon plus un : un côté, le pixel central et les positions symétriques de l'autre côté. Ainsi, une intensité de deux donne un rayon de six et un noyau de treize pixels, selon une règle claire et reproductible.

Interprétez correctement le rayon et la taille

Le résultat `gaussian_radius` désigne le nombre de positions voisines échantillonnées dans chaque direction à partir du centre, et non la largeur complète. Un rayon de six atteint donc six pixels à gauche et à droite lors d'une passe horizontale, ou six pixels en haut et en bas lors d'une passe verticale. `kernel_size` comprend les deux côtés et le centre ; il s'agit donc toujours d'un entier positif impair. Certaines bibliothèques acceptent directement cette taille, tandis que d'autres reçoivent le rayon ou sigma et construisent leurs propres coefficients. Vérifiez la grandeur attendue par l'API cible. Les valeurs renvoyées décrivent la géométrie, pas les poids gaussiens. Pour produire ces poids, évaluez la fonction gaussienne à chaque décalage entier, puis normalisez l'ensemble afin que sa somme soit égale à un. En deux dimensions, deux passes séparées, horizontale et verticale, donnent généralement le même résultat avec bien moins de calculs qu'une convolution carrée complète.

Gérez zéro, les fractions et les écarts visuels

Une intensité nulle signifie qu'aucun flou n'est appliqué. Le rayon vaut alors zéro et la taille du noyau un, ce qui correspond à une identité ne contenant que le pixel central. Les valeurs fractionnaires positives permettent un lissage subtil. Comme le rayon utilise un arrondi supérieur, sa taille ne change que lorsque trois fois l'intensité franchit un entier, même si les coefficients gaussiens continuent d'évoluer progressivement. Une intensité négative est refusée, car un écart-type gaussien ne peut pas être négatif ; le calculateur ne prend jamais la valeur absolue et ne corrige pas silencieusement l'entrée. La coupure à trois sigma constitue un compromis pratique courant entre précision et coût. Un autre logiciel peut retenir deux ou quatre sigma, plafonner le rayon ou employer sa propre approximation. L'espace colorimétrique, les bords, l'alpha, la précision et le rééchantillonnage influencent aussi le rendu. Consignez ces choix si une reproduction exacte est nécessaire.

Configurez une fonction de convolution

Convertissez un réglage fondé sur sigma en largeur impaire exigée par une bibliothèque de traitement d'images.

Planifiez l'échantillonnage d'un shader

Estimez combien de texels voisins un shader gaussien séparable doit lire de chaque côté du centre.

Documentez une chaîne de traitement

Associez un rayon et une taille explicites à l'intensité afin de partager la même règle de coupure.

Quel est le prix d'une requête API ?

Chaque requête API coûte $0.002. Le calculateur déterministe reste également gratuit dans le navigateur.

Que représente l'intensité ?

Elle correspond à l'écart-type gaussien, généralement nommé sigma, exprimé en pixels.

Comment le rayon est-il calculé ?

Pour une intensité positive, il s'agit de l'arrondi supérieur de trois fois l'intensité, soit trois écarts-types de chaque côté.

Pourquoi la taille du noyau est-elle toujours impaire ?

Le noyau contient le pixel central et autant de positions de chaque côté : deux fois le rayon plus un.

Que se passe-t-il lorsque l'intensité vaut zéro ?

Le rayon vaut zéro et la taille un, ce qui représente une opération identité sans flou.

Le calculateur traite-t-il une image ?

Non. Il estime seulement la géométrie du noyau gaussien, sans envoyer, décoder, modifier ni stocker d'image.

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.

POSThttps://api.kit.forhosting.com/image/blur-estimate

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é.

curl -X POST https://api.kit.forhosting.com/image/blur-estimate \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"strength":2}'
{
  "strength": 2
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "image.blur_estimate",
  "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.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

max_mb15
max_megapixels12
HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Consulter la documentation complète du KIT →