Som Plus-medlem får du: Tillgång till våra Plus-artiklar | Egen blogg och Portfolio | Fri uppladdning av dina bilder | Rabatt på kameraförsäkring och fotoresor | 20% rabatt på Leofoto-stativ och tillbehör | Köp till Sveriges mest lästa fototidning Fotosidan Magasin till extra bra pris.

Plusmedlemskap kostar 379 kr per år

Annons

Varför heter det färgrymd (colorspace)

Produkter
(logga in för att koppla)

Galaxens President

Avslutat medlemskap
Varför heter det färgrymd, vilket antagligen är en felöversättning av colorspace?

Efter att ha läst Stefan Ohlssons utomordentliga introduktionsartikel till colormanagement här på fotosidan dök några frågor upp i mitt huvud.

Färgrymder verkar vara något ganska väl definierat utifrån matematik, linjär algebra och Hilbert-rum, varför följer man inte då också matematikens nomenklatur.

Ett rum, som brukar var inom matematiken den gängse översättningen av ett "space", brukar definieras utifrån att om man har en punkt x i rummet A och multiplicerar (skalar) den punkten med en ändlig men i övrigt godtycklig konstant c (som även kan vara negativ eller 0) så ligger den skalade punkten cx fortfarande i rummet A.

Eftersom vad man inom foto kallar färgrymd bara rör sig i den enbart positiva oktanten och varje element av x som mest kan anta ett värde motsvarande 255 gånger dess basvektor (Röd, Grön eller Blå) är färgrymder såsom Adobe RGB, sRGB etc. ingen rymd i gängse mening, utan snarare olika färgmängder (colorsets).

Vad jag däremot skulle kunna gå med på att kalla färgrymder är RGB och CMYK om man antar att något av delkomponenterna kan vara hur intensiva som helst, men om man skall vara nogranna är varje dimension här (r,g,b,c,m,y,eller k) bara halvrymder (halfspaces).

Om nu "olika" färgrymder vore matematiska rymder så skulle inte heller en "konvertering" från en färgrymd såsom Adobe RGB till sRGB vara en konvertering. Det enda vi gör är att vi byter koordinatsystem genom att uttrycka vår färg, dock fortfarande samma färg i samma rymd, i ett nytt koordinatsystem utifrån nya basvektorer (mer konkret: vi blandar vår färg ifrån nya nyanser av rött, grönt och blått, men vi får samma färg). Är det dock olika färgmängder (colorsets) får vi nya färgmängder i och med att mängden alltid når till 255 gånger basvektorerna och basvektorernas längd m.m. varierar.

Jag är mer benägen om att hålla med om att en konvertering från RGB till CMYK är en konvertering i färgrymd.

Någon som kan säga om det finns någon grund för varför det heter som det gör eller är det bara en övergeneralisering av Space-begreppet som dessutom översatts fel till svenska?

Mer matematik till folket :)!!!

/Richard (som försöker dela med sig av sin dagliga nörddos)
 
Spännande, jag kunde inte sagt det bättre själv. Vem går inte igång på lite linjär algebra och Hilbertrum så här på fredag förmiddag!?

Jag tycker du ska ringa upp "ring P1" och dela med dig av den insikten till svenska folket..
 
Huvudet på spiken

Jag har känt att något var fel med resonemangen om färgrymder, men har inte orkat reda ut riktigt vad. Nu har du gjort det åt mig. Tack!
Klart att det är frågan om mängder, då får man tänka lite annorlunda.
 
Jag har inte läst Stefans artikel, men tänkte ändå bidra med följande fakta.

1931 definierade CIE (Commission Internationale de l`Éclairage, International Commission on Illumination) tre st primära färger X, Y, Z.

Dessa färger X,Y,Z är inga riktiga färger (de är mer än 100% mättade) men alla färger som vi kan uppfatta kan uttryckas som en positiv linjärkombination av dessa tre:

C = xX + yY + zZ, där x,y,z > 0

Alla sådana färger C bildar den s k "CIE's XYZ-color space" vilket kan visualiseras som en blobb i rymden. En speciell 2D-projektion av denna blobb bildar CIE:s kromatiska diagram, men jag lämnar det därhän.

Jag går inte heller in på om det är lämpligt att översätta "color space" till färgrymd (jag har inget emot det) men alla färger är dock en positiv linjärkombination av X,Y,Z.

Ett annat relaterat uttryck är det engelska "color gamut" som (om jag förstått det rätt) erhålls genom att välja ut tre färger I,J,K i CIE-rymden.
Alla de färger inuti den triangel vars hörn är I,J,K brukar kallas ett "färgregister" (color gamut). T ex kan I,J,K vara R,G,B för en skärm, eller C,M,Y för en skrivare.

Det är dock så att vissa färger som ska uttryckas i RGB-systemet kräver en negativ mängd R. Detta var ett utav skälen till varför CIE-standarden infördes.
 
OK, color gamut eller färgregistret är alltså den mängd G som utgörs av den konvexa kombinationen av basvektorerna X,Y,X (basfärgerna, t.ex. R,G & B) dvs
G={g=(1-b)*X+b*a*Y+b*(1-a)*Z|0<a,b,<1}

CIE's färgrum är jag inte riktigt med på annat än att det är ett vidare färgrum än ögat kan uppfatta. Negativ mängd rött ljus? Har det med att göra att rött (och övriga färger också för den delen) defineras utav ögat utifrån en viktad integral över spektrat? Jag får inte ihop det riktigt.

Hur definieras IJK färgerna i CIE rymden eller är de generiska basvektorer?
 
Senast ändrad:
Nja, färgregistret innehåller de färger C som kan bildas genom

C = aI + bJ + cK, där 0 <= a,b,c <= 1

där I,J,K t ex är R,G,B för skärmar
eller C,M,Y för en skrivare.

CIE-rymden innehåller alla färger samt (som du säger) lite till, tack vare att X,Y,Z är supermättade färger som inte finns.

I böcker osv brukar en ortografisk avbildning av CIE-rymden visas. Denna kallas CIE:s kromatiska diagram och är alltså ett plan inuti rymden. Den är vald på ett speciellt sätt som jag inte tänkte motivera här, men det är viktigt att veta att detta plan (det kromatiska diagrammet) inte innehåller alla färger. Brunt finns t ex inte med, men däremot en ljusare variant av brun.

CIE-koordinater anges faktiskt i det kromatiska diagrammet och inte i CIE-rymden eftersom det är lättare att mäta i en tvådimensionell figur.

Hade CIE-standarden valt R,G,B istf X,Y,Z så skulle vissa färger kräva en negativ mängd R vilket var något man ville undvika.

R<0 innebär t ex att man kan matcha en färg med grönt och blått om man först blandar färgen med rött.

Varför vissa färger kräver R<0 beror väl på att R,G,B-rymden inte är tillräckligt stor för att "omfamna" alla färger. Det går tydligen inte att välja tre synliga färger som omfamnar hela färgrymden utan man fick välja hypotetiska färger X,Y,Z.

Jag kan rekommendera någon bok i Datorgrafik om du vill läsa mer, t ex "Computer Graphics, Principles and Practice" av Foley, van Dam, et al, eller "Computer Graphics" av Hearn and Baker. Det finns också böcker som bara handlar om färg, men kolla först att de verkligen tar upp CIE-standarden.
 
kpt skrev:
...
Alla de färger inuti den triangel vars hörn är I,J,K brukar kallas ett "färgregister" (color gamut). T ex kan I,J,K vara R,G,B för en skärm, eller C,M,Y för en skrivare.
...


kpt skrev:
Nja, färgregistret innehåller de färger C som kan bildas genom

C = aI + bJ + cK, där 0 <= a,b,c <= 1

där I,J,K t ex är R,G,B för skärmar
eller C,M,Y för en skrivare.

Det du beskriver i din andra post blir en kub. Är det månne den tetraeder som spänns upp av origo, I, J, och K som blir färgregistret(colorgammut), dvs den konvexa kombinationen
G={C=c*(1-b)*I+c*b*a*J+c*b*(1-a)*K|0<=I,J,K<=1}?

Jag har en bok ståendes i bokhyllan som datoriserad bildanalys. Det borde stå om CIE färgrymd där också. Jag får kolla efter och lära mig mer där.
Mvh
/Richard
 
Sleepless skrev:
Jag känner mig så jävla korkad just nu.

;)

Förtvivla icke.

Det här är ju ingenting man behöver ha koll på för att kunna ta bra bilder. Inte ens för att bearbeta dem i nåt program behöver man denna detaljkunskap.

Även jag som tycker det kan vara rätt kul att snöa in på sån här nördkunskap då och då har svårt att orka och hänga med i detta.
 
Nu tror jag att jag förstått det där med CIE och "superfärger".

1931 definierade CIE (Commission Internationale de l'Eclairage - the INternational Commision on Illumination) de tre primärfärgerna utifrån de rena våglängderna: Blue=435.8 nm, Green=546.2 nm, red 746.1 nm.

Det ljus som ögat uppfattar som mest mättat är en ren våglängd av ljuset medan ljus som har en effekt distibuerat jämnt över alla våglängder uppfattas som vitt.

Ögat har tre typer av tappar som är känsliga över olika våglängdsområden, de "röda" våglängderna, kalla dess stimuli X, de "gröna" våglängderna, kalla dess stimuli Y, och de "blå" våglängderna, kalla dess stimuli Z. Varje uppfattade färg får alltså en kombination X,Y,Z i "output" från ögats tappar. Kalla tripletten X,Y,Z tristimulus. Om vi då normerar vår tristimuli med den uppfattade ljusstyrkan X+Y+Z (brightness) får vi de sk trichromatiska koefficienterna
x=X/(X+Y+Z)
y=Y/(X+Y+Z)
z=Z/(X+Y+Z)
som genom normeringen summerar till ett (x+y+z=1)

plottar vi då ögats uppfattade färger får vi en form i x,y planet (Chromaticity diagrammet) enligt figuren nedan (notera att normaliseringsvilkoret x+y+z=1 ovan ger z=1-x-y för varje punkt x,y därför finns ingen mening med att plotta även z) där de mest mättade färgerna ligger i periferin och motsvarande våglängd är angiven i nanometer.

Där är också de tre standardiserade, enligt CIE 1931, primärfärgerna R, G och B markerade. Genom att kombinera dessa konvext dvs låta färgen
c=r*R+g*G+b*B där r+g+b=1 (dvs normaliserat för att ge konstant brightness) kan vi bara få färger inom den markerade triangeln. Notera att vi bara kan blanda en possitiv mängd av varje färgkomponent (dvs r>0, g>0, b>0). För att även kunna få väldigt mättade turkos-gröna färger t.ex. nära våglängder 500 till 530 nm skulle vi vara tvungna att använda negativ mängd rött vilket inte är fysikaliskt möjligt för att inte bryta mot normaliseringsvilkoret r+g+b=1.

Genom att använda färger utanför det fysikaliska färgområdet (som plottats med färg nedan) som basvektorerna X,Y,Z kan man alltså beskriva hela den fysikaliska färgområdet samt lite till.

Det färgområdet som du kan beskriva med CIE grundfärger X,Y,Z är alltså kubiskt. Medan gammut dvs färgen som man kan beskriva med sina grundfärger har formen av en tetraeder i den rymden enligt X,Y,Z där x+y+z=b där b är brightness.

Hoppas detta klargör det där med "negativ rödfärg" och färger som inte finns.

Stycket där gammut nämns är min egen slutledning övrigt är min tolkning av kapitel 4.6 i

R.C. Gonzales, R.E. Woods, Digital Image Processing, Addison-Wesley Publishing, 1993

Mvh
Richard
 

Bilagor

  • cieolay_ra.jpg
    cieolay_ra.jpg
    55.2 KB · Visningar: 151
Jag noterade också att ingenstans i bokan talar man om colorspace's utan man pratar om color models dvs färgmodeller. När man har en skrivare eller bildskarm och jobbar med arbetsfärg"rymder" så använder man alltså inte de CIE standardiserade R G och B färgerna att blanda från utan andra färger som liggar innuti den markerade triangeln.

Notera också att färgerna inne i figuren motsvarar inte de sanna färgerna utan är pseudofärger eftersom bildskärmar eller motsvarande tryckfärger inte kan reproducera färgerna i periferin på figuren.
 
Lite tillägg bara för att knyta ihop ditt inlägg med mitt:

Color gamut = färgregister.

En färgmodell beskriver alla färger i ett visst register. RGB-modellen är en sådan färgmodell där man tänker sig en kub med hörnen (0,0,0)=Svart, (1,0,1)=Magenta, (1,1,0)=Gul, (1,1,1)=Vitt, osv.

Man kan omvandla mellan X,Y,Z och R,G,B med följande matrismultiplikation (som förmodligen ser hemsk ut i ett proportionellt typsnitt):

[R] [3.24 -1.54 -0.50] [X]
[G] = [-0.97 1.88 0.04] [Y]
[0.06 -0.20 1.06] [Z]
 
kpt skrev:

Man kan omvandla mellan X,Y,Z och R,G,B med följande matrismultiplikation (som förmodligen ser hemsk ut i ett proportionellt typsnitt):

[R] [3.24 -1.54 -0.50] [X]
[G] = [-0.97 1.88 0.04] [Y]
[0.06 -0.20 1.06] [Z]

Inverterar jag matrisen får jag följande rellation

[X] [0.4121 0.3568 0.1809][R]
[Y]=[0.2123 0.7136 0.0732][G]
[Z] [0.0167 0.1144 0.9470]

Dvs X kan då uttryckas som (0.41, 0.36, 0.18),
Y kan uttryckas som (0.21, 0.71, 0.07)
Z kan uttryckas som (0.02, 0.11, 0.95) uttryckt i RGB koordingater. Dvs X,Y,Z skulle ligga inuti den markerade triangeln i figuren ovan om RGB är enligt CIE defintion av grundfärgerna utifrån våglängder (koordinaterna för XYZ utryckt i RGB är possitiva och summerar till ett). Något är konstigt här. Är det månne så enkelt att du kastad om RGB och XYZ i din formel ovan (i så fall ska även RGB och XYZ byta plats i min formel)?

Det skulle då stämma att RGB låg inne inom det område som spänns upp av "superfärgerna" XYZ och det skulle krävas negativa värden av RGB för att utrycka trippeln X Y Z.
 
boris.bonasin skrev:
Detta, som Kjell Post skrev, tycker jag är särskilt logiskt "...men hörnen i den kuben är färger som inte finns."

Komplexa tal som beskrivs av en realdel och en imagenärdel (imagenärdelen proportionerlig mot i=sqrt(-1)) finns ju egentligen inte heller men är lik förbannat ett fruktansvärt användbart verktyg i praktiken.
 
ANNONS
Götaplatsens Foto