2017-08-28 1 views
1

Dies ist eine arkane Frage, aber hier ist Hoffnung.Munsell Farbraum, CIE, und der mysteriöse 1.0257

Es wurde empirisch festgestellt, dass die Leuchtdichte Y in den CIE-Farbräume eine Funktion der V. Munsell-Wert ist es nicht von Farbton oder Farbsättigung abhängen. Die Funktion kann durch ein Polynom 5. Grades angenähert werden (Gl. 2 von ASTM Standard D 1535-1508.)

double munV_to_cieY(const double V) { 
    // V is in [0,10] 
    // Y is in [0,100] 
    double Y = V*(1.1914+V*(-0.22533+V*(0.23352+V*(-0.020484+V*0.00081939)))); 
    return Y; 
} 

Es ist der Fall, dass in den Munsell renotation Daten, die HVC zuordnet Tripel mit xyY Tripel, die Y in xyY wird effektiv mit einer mysteriösen 1.0257 multipliziert. Ich habe bestätigt, dass dies der Fall ist. Ich habe vor Jahren gelesen, dass die Mystery-Nummer auf irgendeinen Fehler zurückzuführen ist, aber das ist alles, woran ich mich erinnere.

Was war der Fehler?

Ich möchte wissen, weil ich ein Programm, das sRGB Pixel Munsell abbildet. Sollte ich den 1.0257 nur bei der Verarbeitung der Renotation Trainingsdaten verwenden? Oder soll ich es auch im Programm an sich verwenden?

Kann mir jemand sagen, was los ist mit diesem 1,0257, oder einen Weg vorschlagen, um herauszufinden?

EDIT: I die Funktion umgekehrt ist, eine kubische Spline verwendet. Wenn auf die Renotationsdaten angewendet, die ich habe, hier ist, was ich bekomme

V Y  V'  
1 1.21 1.022 
2 3.126 2.031 
3 6.55 3.037 
4 12.00 4.046 
5 19.77 5.056 
6 30.03 6.064 
7 43.06 7.076 
8 59.1 8.085 
9 78.66 9.092 

Ich versuche, meinen Kopf darum herum zu wickeln.

Antwort

0

Kurze Antwort ist, die renotation Y-Daten sind zu hoch um einen Faktor von 1,0257, aber die quintic Formel in der Frage aufgeführt ist richtig.

(Die Diskrepanz ist offensichtlich auf die Reflektionsvermögen von 0,975 von Magnesiumdioxid, eine weiße Substanz, die im Zusammenhang irgendwie wurde vermutet man verwendet, wenn die Proben Farbe analysiert.)

Ein Vorgänger des obigen Quintic wurde an die unkorrigierten Renotationsdaten angepasst. Der ASTM-Standard enthält eine Anmerkung dahingehend, dass das richtige Quintic von dem vorherigen erhalten wurde, indem das Original durch 1,0257 geteilt wurde (dh Multiplizieren jedes Koeffizienten mit 0,975).

0

In Bezug auf Gleichung 2, ASTM D1535-08e1 besagt:

Die Koeffizienten dieser Gleichung aus der Gleichung 1943 erhalten werden, indem jeder Koeffizient Multiplizieren mit 0,975, der Reflexionsgrad Faktor Magnesiumoxid in Bezug auf den perfekten Reflexionsdiffusor, und auf fünf Stellen der Genauigkeit runden.

Die Munsell Renotation Daten allgemein verfügbar durch die .dat, experimental.dat und real.dat Dateien CIE xyY Werte verfügen, die von einem 1/0.975 ± = 1,0257 Faktor skaliert werden, weil das Referenzweiß für die Messung verwendet wurde Magnesiumoxid.

Die Magnesiumoxidreflexion bezogen auf den perfekt reflektierenden Diffusor beträgt 97,5%, daher wird Munsell Value (V) = 10 in Luminanz (Y) = 100/97,5 ≈ 102,57 umgerechnet, wenn Magnesiumoxid das Referenzweiß ist.

Wenn Sie Konvertierungen mit der Munsell-Spezifikation durchführen, z. 2.5R 9/2, unter Verwendung der ASTM D1535-08e1-Übung müssen Sie die berechnete Luminanz (Y) nicht skalieren, da das verwendete Referenzweiß der perfekte reflektierende Diffusor ist. Wenn Sie die Munsell Renotation CIE xyY-Daten direkt verwenden, müssen Sie sie zunächst entsprechend dem Verhältnis zwischen Magnesiumoxid und Ihrem Referenzweiß skalieren.

+0

Ich freue mich sehr, von Ihnen zu hören. Ich sehe jetzt, dass das Teilen durch 1,0257 gleich ist. Aber offen gesagt, bin ich immer noch verwirrt. Siehe EDIT 2 in der ursprünglichen Frage. Die Umkehrung der ASTM-Funktion stellt den Wert von V nicht mit großer Genauigkeit wieder her. Gibt es einen anderen Renotationsdatensatz, von dem ich nichts weiß? Ich benutze eine namens All.dat, die für eine sehr lange Zeit im Internet war. Ich bin mit den jüngsten Arbeiten zu diesem Thema nicht auf dem neuesten Stand. Ich begann mein Projekt in den frühen 2000er Jahren, bevor ich es auf Eis legte, weil ich keine Zeit hatte. Ich habe es gerade erst aus Mottenkugeln herausgebracht. –

+0

Jetzt bin ich sogar verwirrt. Ich habe die all.dat-Datei, die ich benutze, zum ersten Mal seit langem gesehen. Es hat Werte extrapoliert, die Munsell V = 10 mit Y = 102,57 entsprechen. Mein Kopf dreht sich. –

+0

Ich schaute auf was wir in Farbe haben. Zuerst ist unsere Inversion basierend auf linearer Interpolation (https://github.com/colour-science/colour/blob/124f5f72c418571e41fb06d05a99c02e2b825413/colour/notation/munsell.py#L423) viel genauer als das, was Sie erhalten: 'print (colour.munsell_value_ASTMD153508 (colour.luminance_ASTMD153508 (10))) '10.0000002083. Zweitens verwenden wir nicht die xyY-Daten aus den verschiedenen .dat-Dateien, und es gibt tatsächlich einen Unterschied, wenn Sie die Y-Post-Konvertierung nicht skalieren. Ich habe ein Problem an unserem Ende geöffnet (https://github.com/colour-science/colour/issues/340). –