![]() |
relative Farbabweichung?
Ich möchte die relative Abweichung zwischen zwei Farben berechnen. Bei maximaler Abweichung möchte ich also einen Wert von 1 haben (für weiß und schwarz), bei Gleichheit einen Wert von 0. Für ein BYTE ist das kein Problem:
Code:
Für die gesamte Farbe bilde ich einfach das arithmetische Mittel der Abweichungen der einzelnen Komponenten. Ist das dann korrekt? Dabei würde zum Beispiel zwischen gelb und schwarz eine Abweichung von 2/3 rauskommen. Ist das richtig bzw. der allgemein verwendete Weg?
Abweichung = abs(a - b) / 255;
|
Hi,
hier hat jemand schon mal versucht zwei Bilder zu vergleichen. Ich glaube dir geht es darum oder? ![]() Ich hoffe es hat geholfen :-) MFG Thomas |
Nein, es geht darum, dass der User eine Farbe aus dem Bild auswählt, und dann alle Pixel, die diese Farbe +/- Abweichung markiert, und zwar für einen Pixel, der die angegebene Abweichung oder mehr hat, mit 0, einen, der Abweichung 0 hat, mit 1, und für Werte dazwischen halt einen Wert dazwischen, fragt sich nur ob linear oder exponentiell.
Meine Frage ist aber eigentlich, ob es richtig ist, einfach das arithmetische Mittel der Farbkomponentenabweichungen zu bilden, um die Gesamtabweichung zu bekommen... Aber trotzdem danke für deine Bemühungen ;c) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz