Maison > développement back-end > Tutoriel Python > Comment convertir des plages de nombres en Python tout en préservant les ratios ?

Comment convertir des plages de nombres en Python tout en préservant les ratios ?

Susan Sarandon
Libérer: 2024-11-14 19:25:02
original
1064 Les gens l'ont consulté

How to Convert Number Ranges in Python While Preserving Ratios?

Conversion de plages de nombres avec préservation du rapport en Python

Dans le traitement d'image, il est souvent nécessaire de convertir les valeurs de pixels d'une plage à une autre, tout en conservant les ratios relatifs entre les points. Cette conversion garantit que les caractéristiques et les détails importants sont préservés malgré un changement dans la représentation numérique.

Pour réaliser cette conversion préservant le rapport, nous pouvons utiliser la formule suivante :

NewValue = (((OldValue - OldMin) * (NewMax - NewMin)) / (OldMax - OldMin)) + NewMin
Copier après la connexion

Décomposition la formule :

  • OldValue : La valeur de pixel d'origine dans l'ancienne plage.
  • OldMin : La valeur minimale dans l'ancienne plage.
  • OldMax : la valeur maximale dans l'ancienne plage.
  • NewMax : la valeur maximale dans la nouvelle plage (par exemple, 100).
  • NewMin : la valeur minimale dans la nouvelle plage (par exemple, 0).

Par exemple, si vous avez une valeur de pixel de -5000.00 dans une image avec une plage de -16000.00 à 16000.00, et que vous souhaitez la convertir dans la plage de 0 à 100, la nouvelle valeur serait :

NewValue = (((-5000.00 - (-16000.00)) * (100 - 0)) / (16000.00 - (-16000.00))) + 0
NewValue = 31.25
Copier après la connexion

Cette nouvelle valeur de 31,25 conserve la même position relative dans la nouvelle plage comme valeur d'origine dans l'ancienne plage.

Vous pouvez personnaliser davantage cette formule en ajustant les valeurs NewMin et NewMax pour répondre à des exigences spécifiques (par exemple, en modifiant la plage cible de -50 à 800).

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal