Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Eine ähnliche Farbe (https://www.delphipraxis.net/166576-eine-aehnliche-farbe.html)

Popov 19. Feb 2012 22:23

Eine ähnliche Farbe
 
Ich stehe vor dem Problem, dass ich eine Formel/Funktion benötige die mir sagt ob zwei Farben ähnlich sind. Um ehrlich zu sein knabbere ich noch an der Definition was überhaupt eine ähnliche Farbe ist.

Ich will bei automatischen Farbwahl vermeiden, dass zwei ähnlichen Farben nebeneinander stehen oder sich überlagern. Wobei ich dunkles Blau, Schwarz und dunkles Rot durchaus als ähnlich ansehe, auch wenn es drei verschieden Farben sind. Magenta und rot, sind verschieden, aber doch ähnlich. Magenta in rot erkennt man schlecht.

Kennt jemand eine Definition für ähnliche Farben?

Delphi-Laie 19. Feb 2012 22:32

AW: Eine ähnliche Farbe
 
Es gibt verschiedene Farbdefinitionen bzw. -modelle, so Rot-Grün-Blau und/bzw./oder Farbton-Sättigung-Helligkeit.

Bei ziemlicher Sättigung lassen sich Nähe bzw. Ferne zweier Farben anhand des Winkels, den sie auf dem Farbkreis bilden, recht eindeutig veranschaulichen.

Edit: Von den drei Farb(komponent)en, aus denen sich jeder Pixel zusammensetzt, wäre eine (meistens) ziemlich konträre Farbe die: maximaler Farbwert minus aktueller Farbwert. Das würde z.B. auch Schwarz-Weiß bzw. umgekehrt ergeben. Lediglich, wenn alle 3 Farb(komponent)en etwas 50% sind (ergäbe (etwa) Grau), ließe sich keine echte konträre und gut kontrastierte Farbe bilden. Doch das ließe sich mit einer zusätzlichen Definition (entweder dann Weiß oder Schwarz) lösen.

stahli 19. Feb 2012 22:51

AW: Eine ähnliche Farbe
 
Ich hatte hier mal einiges zum Thema Farben zusammen getragen: http://www.delphipraxis.net/88775-fa...eraendern.html

Eine einfache Vergleichsmöglichkeit wäre sicher die Helligkeit, aber bestimmt nicht die beste.

BUG 19. Feb 2012 22:59

AW: Eine ähnliche Farbe
 
Ich würde beim HSV-Modell ansetzen, um da Farben zu wählen. Die Sättigung wurde ich immer voll wählen und über Wert (ist ein Winkel) und Helligkeit eine Spirale legen, auf der die Punkte liegen.

Auch wenn du Abstände definieren willst, sollte sich dass Modell besser eignen als RGB.

jus 19. Feb 2012 23:26

AW: Eine ähnliche Farbe
 
Wenn du Abstände definieren willst, würde ich persönlich eher zu Lab-Farbmodell greifen, da die Unterschiede zwischen den Farben in Bezug auf die unser Sehempfinden quasi euklidischen Abständen entsprechen. Letztendlich wird im Druckereigewerbe/Druckvorstufe häufig die Untschiedlichkeit/Ähnlichkeit zweier Farben meist mit dem deltaE(Abstand) zweier Lab-Farbwerte angegeben.

Lg,
jus

Aphton 20. Feb 2012 01:11

AW: Eine ähnliche Farbe
 
Edit:
-Müll-

BUG 20. Feb 2012 01:50

AW: Eine ähnliche Farbe
 
Woran man auch denken sollte: neongrün auf rosa hebt sich zwar gut ab, sieht aber nicht besonders gut aus.
Gibt es einen Grund, warum du keine Palette vorgibst?

Blup 20. Feb 2012 08:25

AW: Eine ähnliche Farbe
 
@Aphton
Du versuchst lediglich die Gesamthelligkeit zu vergleichen.
Rot 255/0/0
Grün 0/225/0
Deine Funktion würde als Ergebnis liefern, das sich diese Farben nicht unterscheiden.
Abgesehen davon gehen Rot, Grün und Blau mit unterschiedlicher Gewichtung in die Gesamthelligkeit ein.
Das spiegeln andere bereits genannte Farbmodelle wesentlich besser wieder.

Uwe Raabe 20. Feb 2012 08:42

AW: Eine ähnliche Farbe
 
Zitat:

Zitat von BUG (Beitrag 1151933)
Gibt es einen Grund, warum du keine Palette vorgibst?

Als Betroffener mit einer Rot-Grün-Schwäche würde ich dies auch sehr begrüßen. Dann kann sich jeder die Farben zusammenstellen, die er gut unterscheiden kann.

ibp 20. Feb 2012 10:20

AW: Eine ähnliche Farbe
 
Möglichkeit: Der RGB Farbraum ist linear und kann als Würfel dargestellt werden (jeder Farbanteil eine Koordinatenachse). Dann kannst du mit einer einfachen Vektorberechnung den Abstand der Farben berechnen und mit deinen Vorgaben vergleichen.

2. Möglichkeit: HSV-Farbraum


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:33 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz