Maison > développement back-end > Tutoriel Python > Comment convertir une plage de nombres tout en préservant le ratio ?

Comment convertir une plage de nombres tout en préservant le ratio ?

Mary-Kate Olsen
Libérer: 2024-11-09 02:48:02
original
490 Les gens l'ont consulté

How to Convert a Number Range While Preserving Ratio?

Convertir une plage de nombres tout en préservant le rapport

Mapper une plage de nombres à une autre tout en maintenant les relations proportionnelles peut être une tâche utile dans les données manipulation et traitement d'images. Cette transformation garantit que toutes les valeurs de la plage d'origine sont représentées proportionnellement dans la nouvelle plage.

Pour y parvenir, nous pouvons utiliser la formule suivante :

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

où :

  • OldValue est la valeur d'origine à convertir
  • OldMin et OldMax représentent les valeurs minimales et maximales de la plage d'origine, respectivement
  • NewMin et NewMax représentent respectivement les valeurs minimales et maximales de la nouvelle plage

Cette formule garantit que le rapport des valeurs est préservé entre les plages d'origine et les nouvelles. En d'autres termes, si une valeur dans la plage d'origine est deux fois plus grande qu'une autre valeur, sa valeur correspondante dans la nouvelle plage sera également deux fois plus grande.

Par exemple, si nous avons un fichier image avec point valeurs allant de -16 000,00 à 16 000,00 et que nous souhaitons les compresser dans la plage entière de 0 à 100, nous pouvons utiliser la formule comme suit :

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

Cela garantit que la plage de valeurs d'origine est mappée linéairement à la nouvelle plage, en préservant les rapports entre les valeurs.

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