HSL och HSV

Fig. 1. HSL (a–d) och HSV (e–h). Ovan (a, e): utskurna 3D-modeller av varje. Nedan: tvådimensionella diagram som visar två av en modells tre parametrar samtidigt, och håller den andra konstant: cylindriska skal (b, f) med konstant mättnad, i detta fall utsidan av varje cylinder; horisontella tvärsnitt (c, g) med konstant HSL-lätthet eller HSV-värde, i detta fall skivorna halvvägs ner för varje cylinder; och rektangulära vertikala tvärsnitt (d, h) med konstant nyans, i detta fall av nyanser 0° röd och dess komplement 180° cyan.

HSL (för nyans, saturation, ljushet ) och HSV (för nyans, saturation, värde ; även känd som HSB , för nyans, saturation, ljushet ) är alternativa representationer av RGB - färgmodellen , designad på 1970-talet av datorgrafikforskare för att mer nära överensstämmelse med hur människans syn uppfattar färgskapande egenskaper. I dessa modeller är färgerna i varje nyans arrangerade i en radiell skiva, runt en central axel av neutrala färger som sträcker sig från svart längst ner till vitt upptill.

HSL-representationen modellerar hur olika färger blandas ihop för att skapa färg i den verkliga världen, med ljushetsdimensionen som liknar de varierande mängderna svart eller vit färg i blandningen (t.ex. för att skapa "ljusröd", kan ett rött pigment blandas med vit färg; denna vita färg motsvarar ett högt "lätthetsvärde" i HSL-representationen). Helt mättade färger placeras runt en cirkel med ett ljushetsvärde på ½, med ett ljushetsvärde på 0 eller 1 motsvarande helt svart respektive vitt.

Samtidigt modellerar HSV-representationen hur färger visas under ljus. Skillnaden mellan HSL och HSV är att en färg med maximal ljushet i HSL är rent vit, men en färg med maximalt värde/ljusstyrka i HSV är analog med att lysa ett vitt ljus på ett färgat föremål (t.ex. att lysa ett starkt vitt ljus på ett rött objekt gör att objektet fortfarande ser rött ut, bara ljusare och mer intensivt, medan ett svagt ljus lyser på ett rött objekt gör att objektet ser mörkare och mindre ljust ut).

Problemet med både HSV och HSL är att dessa metoder inte effektivt separerar färg i sina tre värdekomponenter enligt människans uppfattning om färg. Detta kan ses när mättnadsinställningarna ändras - det är ganska lätt att märka skillnaden i perceptuell ljushet trots att "V" eller "L" är fixerade.

Grundläggande princip

Fig. 2a. HSL cylinder.
Fig. 2b. HSV cylinder.

HSL och HSV är båda cylindriska geometrier ( fig. 2 ), med nyans, deras vinkeldimension, som börjar vid den röda primären vid 0°, passerar genom den gröna primären vid 120° och den blå primären vid 240°, för att sedan svepa tillbaka till röd vid 360°. I varje geometri omfattar den centrala vertikala axeln de neutrala , akromatiska eller grå färgerna som sträcker sig från topp till botten, vit vid ljushet 1 (värde 1) till svart vid ljushet 0 (värde 0).

I båda geometrierna är de additiva primära och sekundära färgerna – röd, gul , grön, cyan , blå och magenta – och linjära blandningar mellan angränsande par av dem, ibland kallade rena färger , arrangerade runt cylinderns yttre kant med mättnad 1. Dessa mättade färger har ljushet 0,5 i HSL, medan de i HSV har värde 1. Blandning av dessa rena färger med svart – ger så kallade nyanser – lämnar mättnaden oförändrad. I HSL är mättnaden också oförändrad genom färgning med vitt, och endast blandningar med både svart och vitt – så kallade toner – har en mättnad mindre än 1. I HSV minskar enbart färgning mättnaden.

Fig. 3a–b. Om vi ​​plottar nyans och (a) HSL-ljushet eller (b) HSV-värde mot chroma ( intervall av RGB-värden) snarare än mättnad (chroma över maximal chroma för den skivan), är det resulterande fasta materialet en bicone respektive kon , inte en cylinder. Sådana diagram gör ofta anspråk på att representera HSL eller HSV direkt, med kromadimensionen förvirrande märkt "mättnad".

Eftersom dessa definitioner av mättnad – där mycket mörka (i båda modellerna) eller mycket ljusa (i HSL) nästan neutrala färger anses vara helt mättade (till exempel nere till höger i den skivade HSL-cylindern eller uppe till höger) – i konflikt med den intuitiva uppfattningen om färgrenhet, ritas ofta en konisk eller bikonisk fast substans istället ( fig. 3 ), med vad denna artikel kallar chroma som dess radiella dimension (lika med intervallet för RGB-värdena), istället för mättnad (där mättnaden är lika med chroma över maximal chroma i den biten av (bi)konen). Förvirrande nog brukar sådana diagram märka denna radiella dimension som "mättnad", vilket suddar ut eller raderar skillnaden mellan mättnad och färg. Som beskrivs nedan är beräkning av chroma ett användbart steg i härledningen av varje modell. Eftersom en sådan mellanmodell – med dimensioner nyans, kromatografi och HSV-värde eller HSL-ljushet – tar formen av en kon eller bikon, kallas HSV ofta för "hexkonmodellen" medan HSL ofta kallas "bi-hexkonmodellen" ( fig. 8 ).

Motivering

HSL-färgrymden uppfanns för TV 1938 av Georges Valensi som en metod för att lägga till färgkodning till befintliga monokroma (dvs. innehåller endast L-signalen) sändningar, vilket gör det möjligt för befintliga mottagare att ta emot nya färgsändningar (i svartvitt) utan modifiering som luminanssignalen (svartvit) sänds oförändrad . Den har använts i alla större analoga TV-sändningar inklusive NTSC , PAL och SECAM och alla större digitala sändningssystem och är grunden för kompositvideo .

Fig. 4. Målar länge blandade färger genom att kombinera relativt ljusa pigment med svart och vitt. Blandningar med vitt kallas nyanser , blandningar med svart kallas nyanser och blandningar med båda kallas toner . Se Nyanser och nyanser .
Several paint mixing terms can be arranged into a triangular arrangement: the left edge of the triangle shows white at its top and black at its bottom with gray between the two, each in its respective oval. A pure color (in this case, a bright blue-green) lies at the right corner of the triangle. On the edge between the pure color and black is a shade (a darker blue-green), between the pure color and white is a tint (a lighter, faded blue-green), and a tone lies in the middle of the triangle (a muted blue-green).
Fig. 5. Denna färgmodell från 1916 av den tyske kemisten Wilhelm Ostwald exemplifierar metoden "blandningar med vitt och svart", och organiserar 24 "rena" färger i en nyanscirkel och färgerna för varje nyans i en triangel. Modellen tar alltså formen av en bicon.
The RGB cube has black at its origin, and the three dimensions R, G, and B pointed in orthogonal directions away from black. The corner in each of those directions is the respective primary color (red, green, or blue), while the corners further away from black are combinations of two primaries (red plus green makes yellow, red plus blue makes magenta, green plus blue makes cyan). At the cube's corner farthest from the origin lies white. Any point in the cube describes a particular color within the gamut of RGB.
Fig. 6a. RGB-omfånget kan ordnas i en kub.
The same image, with a portion removed for clarity.
Fig. 6b. Samma bild, med en del borttagen för tydlighetens skull.
In classic patent application style, this is a black-and-white diagram with the patent name, inventor name, and patent number listed at the top, shaded by crosshatching. This diagram shows a three-dimensional view of Tektronix's biconic HSL geometry, made up of horizontal circular slices along a vertical axis expanded for ease of viewing. Within each circular slice, saturation goes from zero at the center to one at the margins, while hue is an angular dimension, beginning at blue with hue zero, through red with hue 120 degrees and green with hue 240 degrees, and back to blue.
Fig. 7. Tektronix grafikterminaler använde den tidigaste kommersiella implementeringen av HSL, 1979. Detta diagram, från ett patent inlämnat 1983, visar bikongeometrin som ligger till grund för modellen.

De flesta tv-apparater, datorskärmar och projektorer producerar färger genom att kombinera rött, grönt och blått ljus i olika intensiteter – de så kallade RGB - additiva primärfärgerna . De resulterande blandningarna i RGB-färgrymden kan reproducera en mängd olika färger (kallas en gamut ); dock är förhållandet mellan de ingående mängderna rött, grönt och blått ljus och den resulterande färgen ointuitivt, särskilt för oerfarna användare, och för användare som är bekanta med subtraktiv färgblandning av färger eller traditionella konstnärsmodeller baserade på nyanser och nyanser ( fig . 4 ). Dessutom definierar varken additiva eller subtraktiva färgmodeller färgförhållanden på samma sätt som det mänskliga ögat gör.

Föreställ dig till exempel att vi har en RGB-skärm vars färg styrs av tre skjutreglage från 0–255 , en som styr intensiteten för var och en av de röda, gröna och blå primärerna. Om vi ​​börjar med en relativt färgstark apelsin , med sRGB- värden R = 217 , G = 118 , B = 33 , och vill minska dess färgstarka med hälften till en mindre mättad apelsin, skulle vi behöva dra reglagen för att minska R med 31 , öka G med 24 och öka B med 59, som bilden nedan.

Unintuitive-rgb.png

I ett försök att tillgodose mer traditionella och intuitiva färgblandningsmodeller, introducerade datorgrafikpionjärer vid PARC och NYIT HSV-modellen för datorskärmsteknik i mitten av 1970-talet, formellt beskriven av Alvy Ray Smith i augusti 1978-numret av Computer Graphics . I samma nummer beskrev Joblove och Greenberg HSL-modellen – vars dimensioner de märkte nyans , relativ kroma och intensitet – och jämförde den med HSV ( fig. 1 ). Deras modell baserades mer på hur färger organiseras och konceptualiseras i människans syn i termer av andra färgskapande attribut, såsom nyans, ljushet och färg; såväl som på traditionella färgblandningsmetoder – t.ex. i målning – som innebär att färgglada pigment blandas med svart eller vitt för att uppnå ljusare, mörkare eller mindre färgglada färger.

Följande år, 1979, på SIGGRAPH , introducerade Tektronix grafikterminaler som använder HSL för färgbeteckning, och Computer Graphics Standards Committee rekommenderade det i sin årliga statusrapport ( fig. 7 ). Dessa modeller var användbara inte bara för att de var mer intuitiva än råa RGB-värden, utan också för att omvandlingarna till och från RGB var extremt snabba att beräkna: de kunde köras i realtid på 1970-talets hårdvara. Följaktligen har dessa modeller och liknande blivit överallt i bildredigering och grafikprogram sedan dess. Några av deras användningsområden beskrivs nedan .

Formell härledning

A flow-chart–like diagram shows the derivation of HSL, HSV, and a luma/chroma/hue model. At the top lies an RGB "color cube", which as a first step is tilted onto its corner so that black lies at the bottom and white at the top. At the next step, the three models diverge, and the height of red, yellow, green, cyan, blue, and magenta is set based on the formula for lightness, value, or luma: in HSV, all six of these are placed in the plane with white, making an upside-down hexagonal pyramid; in HSL, all six are placed in a plane halfway between white and black, making a bipyramid; in the luma/chroma/hue model, the height is determined by the approximate formula luma equals 0.3 times red plus 0.6 times green plus 0.1 times blue. At the next step, each horizontal slice of HSL and HSV is expanded to fill a uniform-width hexagonal prism, while the luma/chroma/hue model is simply embedded in that prism without modification. As a final step, all three models' hexagonal prisms are warped into cylinders, reflecting the nature of the definition of hue and saturation or chroma. For full details and mathematical formalism, read the rest of this section.
Fig. 8. Den geometriska härledningen av de cylindriska HSL- och HSV-representationerna av en RGB-"färgkub".
Visualiserad geometrisk härledning av den cylindriska HSV-representationen av en RGB "colorcube".
Visualiserad geometrisk härledning av den cylindriska HSL-representationen av en RGB "colorcube".

Färgtillverkningsattribut

Dimensionerna för HSL- och HSV-geometrierna – enkla transformationer av den icke-perceptuellt baserade RGB-modellen – är inte direkt relaterade till de fotometriska färgtillverkningsattributen med samma namn, som definierats av forskare som CIE eller ASTM . Icke desto mindre är det värt att granska dessa definitioner innan vi går in i härledningen av våra modeller. För definitionerna av färgtillverkningsattribut som följer, se:

Nyans
"Attributet för en visuell känsla enligt vilken ett område verkar likna en av de upplevda färgerna : röd, gul, grön och blå, eller en kombination av två av dem".
Radians ( L e,Ω )
Strålningseffekten av ljus som passerar genom en viss yta per enhet rymdvinkel per enhet projicerad area, mätt i SI-enheter i watt per steradian per kvadratmeter ( W·sr −1 ·m −2 ) .
Luminans ( Y eller L v,Ω )
Radiansen viktad av effekten av varje våglängd på en typisk mänsklig observatör, mätt i SI-enheter i candela per kvadratmeter ( cd/m 2 ). Ofta används termen luminans för den relativa luminansen , Y / Yn , där Yn är luminansen för referensvitpunkten .
Luma ( Y′ )
Den viktade summan av gammakorrigerade R , G och B -värden, som används i Y′CbCr , för JPEG -komprimering och videoöverföring.
Ljusstyrka (eller värde)
"Attributet för en visuell känsla enligt vilken ett område verkar avge mer eller mindre ljus".
Ljusstyrka
"Ljusstyrkan i förhållande till ljusstyrkan hos en på liknande sätt upplyst vit".
Colorfulness
"Attributet för en visuell sensation enligt vilken den upplevda färgen på ett område verkar vara mer eller mindre kromatisk".
Chroma
Den "färgfullhet i förhållande till ljusstyrkan hos en på samma sätt upplyst vit".
Mättnad
"färgfullheten hos en stimulans i förhållande till dess egen ljusstyrka".

Ljusstyrka och färgstarkhet är absoluta mått, som vanligtvis beskriver den spektrala fördelningen av ljus som kommer in i ögat, medan ljushet och kromatografi mäts i förhållande till någon vit punkt, och används därför ofta för beskrivningar av ytfärger, förblir ungefär konstanta även som ljusstyrka och färgstarkhet. ändras med annan belysning . Mättnad kan definieras som antingen förhållandet mellan färgstarka och ljusstyrka, eller förhållandet mellan färg och ljushet.

Allmän riktlinje

HSL, HSV och relaterade modeller kan härledas via geometriska strategier, eller kan ses som specifika instanser av en "generaliserad LHS-modell". HSL- och HSV-modellbyggarna tog en RGB-kub – med ingående mängder av rött, grönt och blått ljus i en färg som betecknas R , G , B [0, 1] – och lutade den på sitt hörn så att svart vilade vid utgångspunkten med vitt direkt ovanför den längs den vertikala axeln, mätte sedan nyansen av färgerna i kuben efter deras vinkel runt den axeln, med början med rött vid 0°. Sedan kom de fram till en karakterisering av ljusstyrka/värde/ljushet, och definierade mättnad till att sträcka sig från 0 längs axeln till 1 vid den mest färgstarka punkten för varje par av andra parametrar.

Nyans och färgton

When an RGB cube, tilted so that its white corner rests vertically above its black corner, is projected into the plane perpendicular to that neutral axis, it makes the shape of a hexagon, with red, yellow, green, cyan, blue, and magenta arranged counterclockwise at its corners. This projection defines the hue and chroma of any color, as described in the caption and article text.
Fig. 9. Både nyans och färgton definieras baserat på projektionen av RGB-kuben på en hexagon i "kromaticitetsplanet". Chroma är den relativa storleken på den hexagon som passerar genom en punkt, och nyans är hur långt runt den hexagonens kant punkten ligger.

I var och en av våra modeller beräknar vi både nyans och vad den här artikeln kommer att kalla chroma , efter Joblove och Greenberg (1978), på samma sätt – det vill säga att färgens nyans har samma numeriska värden i alla dessa modeller, liksom dess färg. Om vi ​​tar vår lutade RGB-kub och projicerar den på "kromaticitetsplanet " vinkelrätt mot den neutrala axeln, får vår projektion formen av en hexagon, med rött, gult, grönt, cyan, blått och magenta i sina hörn ( fig . 9 ). Nyans är ungefär vinkeln för vektorn till en punkt i projektionen, med rött vid 0°, medan chroma är ungefär avståndet mellan punkten från origo.

Mer exakt definieras både nyans och kromatografi i denna modell med avseende på den hexagonala formen på projektionen. Kroma är proportionen av avståndet från origo till kanten av hexagonen . I den nedre delen av det intilliggande diagrammet är detta förhållandet mellan längderna OP / OP , eller alternativt förhållandet mellan radierna för de två hexagonerna. Detta förhållande är skillnaden mellan de största och minsta värdena bland R , G eller B i en färg. För att göra våra definitioner lättare att skriva, kommer vi att definiera dessa max-, minimum- och chroma-komponentvärden som M , m , respektive C .

För att förstå varför chroma kan skrivas som M m , lägg märke till att vilken neutral färg som helst, med R = G = B , projicerar på origo och så har 0 chroma. Om vi ​​alltså adderar eller subtraherar samma mängd från alla tre av R , G och B , rör vi oss vertikalt inom vår lutade kub och ändrar inte projektionen. Därför projicerar två valfria färger av ( R , G , B ) och ( R m , G m , B m ) ut på samma punkt och har samma färg. Kroman för en färg med en av dess komponenter lika med noll ( m = 0) är helt enkelt det maximala av de andra två komponenterna. Denna chroma är M i det speciella fallet med en färg med en nollkomponent, och M m i allmänhet.

Nyansen är andelen av avståndet runt kanten av hexagonen som passerar genom den projicerade punkten, ursprungligen mätt i området [ 0, 1] men nu vanligtvis mätt i grader [ 0°, 360°] . För punkter som projicerar ut på origo i kromaticitetsplanet (dvs. grått), är nyansen odefinierad. Matematiskt är denna definition av nyans skriven bitvis :

tilldelas neutrala färger (dvs med C = 0 ) en nyans på 0° för att underlätta representationen.

Pictured at left is the hexagonal projection shown earlier. At right, each side of the hexagon has been changed into a 60° arc of a circle with the same radius.
Fig. 10. Definitionerna av nyans och kromatografi i HSL och HSV har effekten av att förvränga hexagoner till cirklar.

Dessa definitioner motsvarar en geometrisk skevning av hexagoner till cirklar: varje sida av hexagonen är avbildad linjärt på en 60° cirkelbåge ( fig. 10 ). Efter en sådan transformation är nyansen just vinkeln runt origo och chroma avståndet från origo: vinkeln och storleken på vektorn som pekar mot en färg.

Instead of measuring hue and chroma with reference to the hexagonal edge of the projection of the RGB cube into the plane perpendicular to its neutral axis, we can define chromaticity coordinates alpha and beta in the plane—with alpha pointing in the direction of red, and beta perpendicular to it—and then define hue H2 and chroma C2 as the polar coordinates of these. That is, the tangent of hue is beta over alpha, and chroma squared is alpha squared plus beta squared.
Fig. 11. Att konstruera rektangulära kromaticitetskoordinater α och β och sedan omvandla dessa till nyans H 2 och chroma C 2 ger något annorlunda värden än att beräkna den hexagonala nyansen H och chroma C : jämför siffrorna i detta diagram med de tidigare i detta avsnitt.

Ibland för bildanalystillämpningar hoppas denna hexagon-till-cirkel-transformation över, och färgton och färgton (vi betecknar dessa H 2 och C 2 ) definieras av de vanliga kartesiska-till-polära koordinattransformationerna ( fig. 11 ). Det enklaste sättet att härleda dessa är via ett par kartesiska kromaticitetskoordinater som vi kallar α och β :

( Atan2- funktionen, en "arctangens med två argument", beräknar vinkeln från ett kartesiskt koordinatpar.)

Lägg märke till att dessa två definitioner av nyans ( H och H 2 ) nästan sammanfaller, med en maximal skillnad mellan dem för vilken färg som helst på cirka 1,12° - vilket förekommer vid tolv speciella nyanser, till exempel H = 13,38° , H 2 = 12,26° - och med H = H 2 för varje multipel av 30°. De två definitionerna av chroma ( C och C 2 ) skiljer sig mer väsentligt åt: de är lika i hörnen av vår hexagon, men vid punkter halvvägs mellan två hörn, såsom H = H 2 = 30° , har vi C = 1 , men C2 = ¾ ≈ 0,866 , en skillnad cirka 13,4%.

Lätthet

When we plot HSV value against chroma, the result, regardless of hue, is an upside-down isosceles triangle, with black at the bottom, and white at the top bracketed by the most chromatic colors of two complementary hues at the top right and left corners. When we plot HSL lightness against chroma, the result is a rhombus, again with black at the bottom and white at the top, but with the colorful complements at horizontal ends of the line halfway between them. When we plot the component average, sometimes called HSI intensity, against chroma, the result is a parallelogram whose shape changes depending on hue, as the most chromatic colors for each hue vary between one third and two thirds between black and white. Plotting luma against chroma yields a parallelogram of much more diverse shape: blue lies about 10 percent of the way from black to white, while its complement yellow lies 90 percent of the way there; by contrast, green is about 60 percent of the way from black to white while its complement magenta is 40 percent of the way there.
Fig. 12a–d. Fyra olika möjliga "lätthet"-dimensioner, plottade mot kromatografi, för ett par komplementära nyanser. Varje plot är ett vertikalt tvärsnitt av dess tredimensionella fasta färg.

Även om definitionen av nyans är relativt okontroversiell – den uppfyller i stort sett kriteriet att färger av samma upplevda nyans ska ha samma numeriska nyans – är definitionen av en ljushets- eller värdedimension mindre uppenbar: det finns flera möjligheter beroende på syftet och målen. av representationen. Här är fyra av de vanligaste ( fig. 12 ; tre av dessa visas också i fig. 8 ):

  • Den enklaste definitionen är bara det aritmetiska medelvärdet , dvs medelvärdet, av de tre komponenterna, i HSI-modellen som kallas intensitet ( fig. 12a ). Detta är helt enkelt projiceringen av en punkt på den neutrala axeln – den vertikala höjden av en punkt i vår lutande kub. Fördelen är att denna representation, tillsammans med euklidiska avståndsberäkningar av nyans och färgton, bevarar avstånd och vinklar från RGB-kubens geometri.
  • I HSV "hexcone"-modellen definieras värde som den största komponenten i en färg, vårt M ovan ( fig. 12b ) . Detta placerar alla tre primärfärgerna, och även alla "sekundära färger" - cyan, gult och magenta - i ett plan med vitt, som bildar en sexkantig pyramid av RGB-kuben.
  • I HSL "bi-hexcone"-modellen definieras ljushet som medelvärdet av de största och minsta färgkomponenterna ( fig. 12c ), dvs mellanområdet för RGB-komponenterna. Denna definition sätter också de primära och sekundära färgerna i ett plan, men ett plan som passerar halvvägs mellan vitt och svart. Den resulterande färgen är en dubbelkon som liknar Ostwalds, som visas ovan .
  • Ett mer perceptuellt relevant alternativ är att använda luma , Y′ , som en ljushetsdimension ( fig. 12d) . Luma är det viktade medelvärdet av gammakorrigerade R , G och B , baserat på deras bidrag till upplevd ljushet, som länge använts som den monokromatiska dimensionen i färg-tv-sändningar. För sRGB är Rec. 709 primärer ger Y′ 709 , digital NTSC använder Y′ 601 enligt Rec. 601 och några andra primärer används också som resulterar i olika koefficienter.
    { \text{601}
    Adobe)
    HDTV)
    UHDTV, HDR)

Alla fyra lämnar den neutrala axeln ifred. Det vill säga, för färger med R = G = B , ger vilken som helst av de fyra formuleringarna en ljushet som är lika med värdet av R , G eller B.

För en grafisk jämförelse, se fig. 13 nedan .

Mättnad

Fig. 14a–d. I både HSL och HSV mättnad helt enkelt den kroma som skalas för att fylla intervallet [0, 1] för varje kombination av nyans och ljushet eller värde.

Vid kodning av färger i en nyans/ljushet/krom- eller nyans/värde/krom-modell (med definitionerna från de två föregående avsnitten), är inte alla kombinationer av ljushet (eller värde) och färger meningsfulla: det vill säga hälften av färgerna kan betecknas med H ∈ [0°, 360°) , faller C ∈ [0, 1] och V ∈ [0, 1] utanför RGB-omfånget (de grå delarna av skivorna i figur 14). Skaparna av dessa modeller ansåg att detta var ett problem för vissa användningsområden. Till exempel, i ett färgvalsgränssnitt med två av dimensionerna i en rektangel och den tredje på ett skjutreglage, är hälften av den rektangeln gjord av oanvänt utrymme. Föreställ dig nu att vi har ett skjutreglage för lätthet: användarens avsikt när han justerar skjutreglaget är potentiellt tvetydig: hur ska programvaran hantera färger utanför spektrumet? Eller omvänt, om användaren har valt en mörklila så färgstark som möjligt ljushet uppåt, vad ska man göra: skulle användaren föredra att se en ljusare lila fortfarande så färgstark som möjligt för den givna nyansen och ljusheten , eller en ljusare lila med exakt samma färg som originalfärgen ?

För att lösa problem som dessa, skalar HSL- och HSV-modellerna chroma så att den alltid passar in i området [0, 1] för varje kombination av nyans och ljushet eller värde, vilket kallar det nya attributet saturation i båda fallen (fig. 14) ). För att beräkna endera, dividera helt enkelt kroma med maximal kroma för det värdet eller ljusheten.

Fig. 15a–b. I HSI är mättnad , som visas i skivan till höger, ungefär kromatografin i förhållande till ljushet. Vanlig är också en modell med dimensionerna I , H 2 , C 2 , som visas i skivan till vänster. Lägg märke till att nyansen i dessa skivor är densamma som nyansen ovan, men H skiljer sig något från H 2 .

HSI-modellen som vanligtvis används för datorseende, som tar H 2 som en nyansdimension och komponentens medelvärde I ("intensitet") som en lätthetsdimension, försöker inte "fylla" en cylinder enligt dess definition av mättnad. Istället för att presentera färgval eller modifieringsgränssnitt för slutanvändare, är målet med HSI att underlätta separation av former i en bild. Mättnad definieras därför i linje med den psykometriska definitionen: kroma relativt lätthet ( fig. 15 ). Se Använd i bildanalys i den här artikeln.

Att använda samma namn för dessa tre olika definitioner av mättnad leder till viss förvirring, eftersom de tre attributen beskriver väsentligt olika färgförhållanden; i HSV och HSI stämmer begreppet ungefär överens med den psykometriska definitionen av en chroma av en färg i förhållande till dess egen ljushet, men i HSL kommer den inte i närheten. Ännu värre, ordet saturation används också ofta för en av de mätningar vi kallar chroma ovan ( C eller C 2 ).

Exempel

Alla parametervärden som visas nedan är angivna som värden i intervallet [0, 1] , förutom de för H och H 2 , som ligger i intervallet [0°, 360°) .

Färg R G B H H 2 C C 2 V L jag Y′ 601 S HSV S HSL S HSI
#FFFFFF 1 000 1 000 1 000 n/a n/a 0,000 0,000 1 000 1 000 1 000 1 000 0,000 0,000 0,000
#808080 0,500 0,500 0,500 n/a n/a 0,000 0,000 0,500 0,500 0,500 0,500 0,000 0,000 0,000
#000000 0,000 0,000 0,000 n/a n/a 0,000 0,000 0,000 0,000 0,000 0,000 0,000 0,000 0,000
#FF0000 1 000 0,000 0,000 0,0 ° 0,0 ° 1 000 1 000 1 000 0,500 0,333 0,299 1 000 1 000 1 000
#BFBF00 0,750 0,750 0,000 60,0 ° 60,0 ° 0,750 0,750 0,750 0,375 0,500 0,664 1 000 1 000 1 000
#008000 0,000 0,500 0,000 120,0 ° 120,0 ° 0,500 0,500 0,500 0,250 0,167 0,293 1 000 1 000 1 000
#80FFFF 0,500 1 000 1 000 180,0 ° 180,0 ° 0,500 0,500 1 000 0,750 0,833 0,850 0,500 1 000 0,400
#8080FF 0,500 0,500 1 000 240,0 ° 240,0 ° 0,500 0,500 1 000 0,750 0,667 0,557 0,500 1 000 0,250
#BF40BF 0,750 0,250 0,750 300,0 ° 300,0 ° 0,500 0,500 0,750 0,500 0,583 0,457 0,667 0,500 0,571
#A0A424 0,628 0,643 0,142 61,8 ° 61,5 ° 0,501 0,494 0,643 0,393 0,471 0,581 0,779 0,638 0,699
#411BEA 0,255 0,104 0,918 251,1 ° 250,0 ° 0,814 0,750 0,918 0,511 0,426 0,242 0,887 0,832 0,756
#1EAC41 0,116 0,675 0,255 134,9 ° 133,8 ° 0,559 0,504 0,675 0,396 0,349 0,460 0,828 0,707 0,667
#F0C80E 0,941 0,785 0,053 49,5 ° 50,5 ° 0,888 0,821 0,941 0,497 0,593 0,748 0,944 0,893 0,911
#B430E5 0,704 0,187 0,897 283,7 ° 284,8 ° 0,710 0,636 0,897 0,542 0,596 0,423 0,792 0,775 0,686
#ED7651 0,931 0,463 0,316 14,3 ° 13,2 ° 0,615 0,556 0,931 0,624 0,570 0,586 0,661 0,817 0,446
#FEF888 0,998 0,974 0,532 56,9 ° 57,4 ° 0,466 0,454 0,998 0,765 0,835 0,931 0,467 0,991 0,363
#19CB97 0,099 0,795 0,591 162,4 ° 163,4 ° 0,696 0,620 0,795 0,447 0,495 0,564 0,875 0,779 0,800
#362698 0,211 0,149 0,597 248,3 ° 247,3 ° 0,448 0,420 0,597 0,373 0,319 0,219 0,750 0,601 0,533
#7E7EB8 0,495 0,493 0,721 240,5 ° 240,4 ° 0,228 0,227 0,721 0,607 0,570 0,520 0,316 0,290 0,135

Använd i slutanvändarprogramvara









Fig 16a–g. På 1990-talet var HSL och HSV färgvalsverktyg överallt. Skärmbilderna ovan är tagna från: · (a) SGI IRIX 5, c. 1995; · (b) Adobe Photoshop , c. 1990; · (c) IBM OS/2 Warp 3, c. 1994; · (d) Apple Macintosh System 7 , c. 1996; · (e) Fractal Design Painter , c. 1993; · (f) Microsoft Windows 3.1 , c. 1992; · (g) NeXTSTEP , c. 1995. Dessa är utan tvekan baserade på tidigare exempel, som sträcker sig tillbaka till PARC och NYIT i mitten av 1970-talet.

Det ursprungliga syftet med HSL och HSV och liknande modeller, och deras vanligaste nuvarande tillämpning, är i färgvalsverktyg . Som enklast har vissa sådana färgväljare tre skjutreglage, en för varje attribut. De flesta visar dock ett tvådimensionellt snitt genom modellen, tillsammans med ett skjutreglage som styr vilken speciell skiva som visas. Den senare typen av GUI uppvisar stor variation, på grund av valet av cylindrar, hexagonala prismor eller koner/bicones som modellerna föreslår (se diagrammet längst upp på sidan ) . Flera färgväljare från 1990-talet visas till höger, varav de flesta har förblivit nästan oförändrade under den mellanliggande tiden: i dag använder nästan varje datorfärgväljare HSL eller HSV, åtminstone som ett alternativ. Vissa mer sofistikerade varianter är designade för att välja hela uppsättningar av färger, baserat sina förslag på kompatibla färger på HSL- eller HSV-relationerna mellan dem.

De flesta webbapplikationer som behöver färgval baserar också sina verktyg på HSL eller HSV, och förpackade färgväljare med öppen källkod finns för de flesta stora webbgränssnittsramverk . CSS 3- specifikationen tillåter webbförfattare att ange färger för sina sidor direkt med HSL-koordinater.

HSL och HSV används ibland för att definiera gradienter för datavisualisering , som i kartor eller medicinska bilder. Till exempel har det populära GIS -programmet ArcGIS historiskt tillämpat anpassningsbara HSV-baserade gradienter på numeriska geografiska data.

Xv hsv-modification.png
Fig. 17. xv :s HSV-baserade färgmodifierare.
PS 2.5 hue-saturation tool.png
Fig. 18. Nyans/mättnadsverktyget i Photoshop 2.5, ca. 1992.

Bildredigeringsprogram innehåller också vanligtvis verktyg för att justera färger med hänvisning till HSL- eller HSV-koordinater, eller till koordinater i en modell baserad på "intensiteten" eller luma som definieras ovan . I synnerhet verktyg med ett par "nyans" och "mättnad"-skjutreglage är vanliga, åtminstone från slutet av 1980-talet, men olika mer komplicerade färgverktyg har också implementerats. Unix bildvisare och färgredigerare xv tillät till exempel sex användardefinierbara färgtonsområden ( H ) att roteras och storleksändras, inklusive en rattliknande kontroll för mättnad ( S HSV ) och ett kurvliknande gränssnitt för kontroll av värde ( V )—se fig. 17. Bildredigeraren Picture Window Pro inkluderar ett verktyg för "färgkorrigering" som ger komplex ommappning av punkter i ett nyans-/mättnadsplan relativt antingen HSL- eller HSV-rymden.

Videoredigerare använder också dessa modeller. Till exempel inkluderar både Avid och Final Cut Pro färgverktyg baserade på HSL eller en liknande geometri för att justera färgen i video. Med Avid-verktyget väljer användare en vektor genom att klicka på en punkt inom nyans-/mättnadscirkeln för att flytta alla färger på en viss ljushetsnivå (skuggor, mellantoner, högdagrar) efter den vektorn.

Sedan version 4.0 har Adobe Photoshops blandningslägen "Luminosity", "Hue", "Saturation" och "Color" sammansatta lager med hjälp av en luma/chroma/hue-färggeometri. Dessa har kopierats flitigt, men flera imitatorer använder HSL (t.ex. PhotoImpact , Paint Shop Pro ) eller HSV-geometrierna istället.

Använd i bildanalys

HSL, HSV, HSI eller relaterade modeller används ofta i datorseende och bildanalys för funktionsdetektering eller bildsegmentering . Tillämpningarna av sådana verktyg inkluderar objektdetektering, till exempel i robotseende ; objektigenkänning , till exempel av ansikten , text eller registreringsskyltar ; innehållsbaserad bildhämtning ; och analys av medicinska bilder .

För det mesta är datorseendealgoritmer som används på färgbilder enkla tillägg till algoritmer designade för gråskalebilder , till exempel k-medel eller suddig klustring av pixelfärger, eller kannykantdetektering . I det enklaste leds varje färgkomponent separat genom samma algoritm. Det är därför viktigt att de egenskaperna kan urskiljas i de färgdimensioner som används. Eftersom R , G och B -komponenterna i ett objekts färg i en digital bild alla är korrelerade med mängden ljus som träffar objektet, och därför med varandra, gör bildbeskrivningar i termer av dessa komponenter det svårt att skilja objekt åt. Beskrivningar i termer av nyans/ljushet/krom eller nyans/ljushet/mättnad är ofta mer relevanta.

Från och med slutet av 1970-talet användes transformationer som HSV eller HSI som en kompromiss mellan effektivitet för segmentering och beräkningskomplexitet. De kan betraktas som liknande tillvägagångssätt och avsikter med den neurala bearbetning som används av människans färgseende, utan att komma överens i detalj: om målet är objektdetektering, är grovt separering av nyans, ljushet och färg eller mättnad effektiv, men det finns ingen särskild anledning att strikt efterlikna mänskliga färgsvar. John Kenders magisteravhandling från 1976 föreslog HSI-modellen. Ohta et al. (1980) använde istället en modell uppbyggd av dimensioner liknande de vi har kallat I , α , och β . Under de senaste åren har sådana modeller fortsatt att se stor användning, eftersom deras prestanda jämförs med mer komplexa modeller, och deras enkelhet i beräkningen är fortfarande övertygande.

Nackdelar

Fig 20a. sRGB - omfånget kartlagt i CIELAB-rymden. Lägg märke till att linjerna som pekar mot de röda, gröna och blå primärerna inte är jämnt fördelade av nyansvinkeln och har olika längd. Primärerna har också olika L *-värden.
Fig 20b. Adobe RGB -omfånget kartlagt i CIELAB-rymden. Lägg också märke till att dessa två RGB-utrymmen har olika omfång och därför kommer att ha olika HSL- och HSV-representationer.

Även om HSL, HSV och relaterade utrymmen fungerar tillräckligt bra för att till exempel välja en enskild färg, ignorerar de mycket av komplexiteten i färgutseendet. I grund och botten byter de upp perceptuell relevans för beräkningshastighet, från en tid i datorhistorien (avancerade grafikarbetsstationer från 1970-talet eller mitten av 1990-talets konsumentdatorer) när mer sofistikerade modeller skulle ha varit för beräkningsmässigt dyra.

HSL och HSV är enkla transformationer av RGB som bevarar symmetrier i RGB-kuben som inte är relaterade till mänsklig perception, så att dess R , G och B -hörn är lika långt från den neutrala axeln och lika fördelade runt den. Om vi ​​plottar RGB-omfånget i ett mer perceptuellt enhetligt utrymme, som CIELAB (se nedan ), blir det omedelbart tydligt att de röda, gröna och blå primärerna inte har samma ljushet eller färg, eller jämnt fördelade nyanser. Dessutom använder olika RGB-skärmar olika primära skärmar och har därför olika omfång. Eftersom HSL och HSV definieras enbart med hänvisning till ett visst RGB-utrymme, är de inte absoluta färgrymder : för att specificera en färg exakt kräver rapportering inte bara HSL- eller HSV-värden, utan också egenskaperna hos RGB-utrymmet de är baserade på, inklusive gammakorrigering vid användning.

Om vi ​​tar en bild och extraherar komponenterna för nyans, mättnad och ljushet eller värde, och sedan jämför dessa med komponenterna med samma namn som definierats av färgforskare, kan vi snabbt se skillnaden, perceptuellt. Undersök till exempel följande bilder av en brandventilation ( fig. 13 ) . Originalet finns i sRGB-färgrymden. CIELAB L * är en CIE-definierad akromatisk ljushetskvantitet (beroende enbart på den perceptuella akromatiska luminansen Y , men inte de blandade kromatiska komponenterna X eller Z , i CIEXYZ-färgrymden från vilken själva sRGB-färgrymden härrör), och den är enkel att detta liknar den ursprungliga färgbilden i perceptuell ljushet. Luma är ungefär lika, men skiljer sig något vid hög kromaticitet, där den avviker mest från beroende enbart på den verkliga akromatiska luminansen ( Y , eller ekvivalent L *) och påverkas av den kolorimetriska kromaticiteten ( x,y , eller ekvivalent, a*, b* av CIELAB). HSL L och HSVV skiljer sig däremot väsentligt från perceptuell lätthet.

A full-color image shows a high-contrast and quite dramatic scene of a fire breather with a large orange-yellow flame extending from his lips. He wears dark but colorful orange-red clothing.
Fig. 13a. Färgfotografi (sRGB-färgrymd).
A grayscale image showing the CIELAB lightness component of the photograph appears to be a faithful rendering of the scene: it looks roughly like a black-and-white photograph taken on panchromatic film would look, with clear detail in the flame, which is much brighter than the man's outfit or the background.
Fig. 13b. CIELAB L * (omvandlas ytterligare tillbaka till sRGB för konsekvent visning).
A grayscale image showing the luma appears roughly similar to the CIELAB lightness image, but is a bit brighter in areas which were originally very colorful.
Fig. 13c. Rec. 601 luma Y' .
A grayscale image showing the component average (HSI intensity) of the photograph is much a less convincing facsimile of the color photograph, with reduced contrast, especially with its flame darker than in the original.
Fig. 13d. Komponentmedelvärde: "intensitet" I .
A grayscale image showing the HSV value component of the photograph leaves the flame completely white (in photographer's parlance, "blown out"), and the man's clothing much too bright.
Fig. 13e. HSV-värde V .
A grayscale image showing the HSL lightness component of the photograph renders the flame, as approximately middle gray, and ruins the dramatic effect of the original by radically reducing its contrast.
Fig. 13f. HSL lätthet L .

Även om ingen av dimensionerna i dessa utrymmen matchar deras perceptuella analoger, är värdet av HSV och mättnaden av HSL speciella brottslingar. I HSV hålls de blå primära och vita för att ha samma värde, även om perceptuellt den blå primära har någonstans runt 10 % av luminansen av vitt (den exakta andelen beror på de särskilda RGB-primärerna som används ) . I HSL hålls en blandning av 100 % rött, 100 % grönt, 90 % blått – det vill säga mycket ljusgult – ha samma mättnad som den gröna primärfärgen, även om den förstnämnda färgen nästan inte har någon färg eller mättnad med de konventionella psykometriska definitionerna. Sådana perversiteter fick Cynthia Brewer, expert på färgschemaval för kartor och informationsskärmar, att berätta för American Statistical Association :

Datavetenskap erbjuder några fattigare kusiner till dessa perceptuella utrymmen som också kan dyka upp i ditt programvarugränssnitt, som HSV och HLS. De är enkla matematiska transformationer av RGB, och de verkar vara perceptuella system eftersom de använder sig av terminologin nyans-lätthet/värde-mättnad. Men ta en närmare titt; låt dig inte luras. Perceptuella färgdimensioner är dåligt skalade av färgspecifikationerna som tillhandahålls i dessa och vissa andra system. Till exempel förväxlas mättnad och ljushet, så en mättnadsskala kan också innehålla ett brett spektrum av ljusstyrkor (till exempel kan den gå från vitt till grönt, vilket är en kombination av både ljushet och mättnad). Likaså förväxlas nyans och ljushet så att till exempel en mättad gul och mättad blå kan betecknas som samma "ljushet" men har stora skillnader i upplevd ljushet. Dessa brister gör systemen svåra att använda för att kontrollera utseendet på ett färgschema på ett systematiskt sätt. Om mycket justeringar krävs för att uppnå önskad effekt, erbjuder systemet liten fördel jämfört med att brottas med råspecifikationer i RGB eller CMY.

Om dessa problem gör HSL och HSV problematiska för att välja färger eller färgscheman, gör de dem mycket värre för bildjustering. HSL och HSV, som Brewer nämnde, förväxlar perceptuella färgskapande attribut, så att ändring av valfri dimension resulterar i olikformiga förändringar av alla tre perceptuella dimensioner och förvränger alla färgförhållanden i bilden. Om du till exempel roterar nyansen av en ren mörkblå mot grönt kommer också att minska dess upplevda färgning och öka dess upplevda ljushet (den senare är gråare och ljusare), men samma nyansrotation kommer att ha motsatt inverkan på ljusheten och färgningen av en ljusare blågrön— till (den senare är mer färgglad och något mörkare). I exemplet nedan ( fig. 21 ) är bilden till vänster (a) originalfotografiet av en grön sköldpadda . I mittenbilden (b) har vi roterat nyansen ( H ) för varje färg med -30° , samtidigt som HSV-värdet och mättnaden eller HSL-ljusheten och mättnaden hållits konstant. I bilden till höger (c) gör vi samma rotation till HSL/HSV-nyansen för varje färg, men sedan tvingar vi CIELAB-ljusheten ( L *, en anständig approximation av upplevd ljushet) att förbli konstant. Lägg märke till hur den nyansförskjutna mellanversionen utan en sådan korrigering dramatiskt förändrar de upplevda ljushetsförhållandena mellan färgerna i bilden. I synnerhet är sköldpaddans skal mycket mörkare och har mindre kontrast, och bakgrundsvattnet är mycket ljusare.

Fig. 21a. Färgfotografi.
Fig. 21b. HSL/HSV-nyans för varje färg förskjuten med -30° .
Fig. 21c. Nyansen ändrades men CIELABs ljushet ( L *) behölls som i originalet.

Eftersom nyans är en cirkulär storhet, representerad numeriskt med en diskontinuitet vid 360°, är den svår att använda i statistiska beräkningar eller kvantitativa jämförelser: analys kräver användning av cirkulär statistik . Dessutom definieras färgtonen bitvis, i 60°-bitar, där förhållandet mellan ljushet, värde och färgton till R , G och B beror på färgtonsbiten i fråga. Denna definition introducerar diskontinuiteter, hörn som tydligt kan ses i horisontella skivor av HSL eller HSV.

Charles Poynton, expert på digital video, listar ovanstående problem med HSL och HSV i sin Color FAQ och drar slutsatsen att:

HSB och HLS utvecklades för att specificera numerisk nyans, mättnad och ljusstyrka (eller nyans, ljushet och mättnad) i en tid då användare var tvungna att ange färger numeriskt. De vanliga formuleringarna av HSB och HLS är felaktiga med avseende på egenskaperna hos färgseende. Nu när användare kan välja färger visuellt, eller välja färger relaterade till andra media (som PANTONE ), eller använda perceptuellt baserade system som L*u*v* och L*a*b* , bör HSB och HLS överges.

Andra färgmodeller med cylindrisk koordinat

Skaparna av HSL och HSV var långt ifrån de första att föreställa sig färger som passade in i koniska eller sfäriska former, med neutrala färger som löper från svart till vitt i en central axel, och nyanser som motsvarar vinklar runt den axeln. Liknande arrangemang går tillbaka till 1700-talet och fortsätter att utvecklas i de modernaste och mest vetenskapliga modellerna.

Formler för färgkonvertering

För att konvertera från HSL eller HSV till RGB, inverterar vi i huvudsak stegen som anges ovan (som tidigare, R , G , B [0, 1] ) . Först beräknar vi chroma, genom att multiplicera mättnad med den maximala chroma för en given ljushet eller ett givet värde. Därefter hittar vi punkten på en av de tre nedre ytorna av RGB-kuben som har samma nyans och färg som vår färg (och därför projicerar på samma punkt i färgplanet). Slutligen lägger vi till lika stora mängder R , G och B för att nå rätt ljushet eller värde.

Till RGB

HSL till RGB

Givet en färg med nyans H ∈ [0°, 360°] , mättnad S L ∈ [0, 1] och ljushet L ∈ [0, 1] finner vi först chroma:

Sedan kan vi hitta en punkt ( R 1 , G 1 , B 1 ) längs de tre nedre ytorna av RGB-kuben, med samma nyans och kroma som vår färg (med mellanvärdet X för den näst största komponenten i denna färg) :

I ekvationen ovan hänvisar notationen till resten av den euklidiska divisionen av med 2. är inte nödvändigtvis ett heltal.

När är ett heltal, skulle "grannformeln" ge samma resultat, eftersom eller , som lämpligt.

Slutligen kan vi hitta R , G och B genom att lägga till samma mängd till varje komponent, för att matcha lätthet:

HSL till RGB alternativ

De polygonala styckvisa funktionerna kan förenklas något genom smart användning av minimi- och maximivärden samt resten av operationen.

Givet en färg med nyans , mättnad , och ljushet , definierar vi först funktionen:

där och:

Och utmatade R,G,B-värden (från är:

Ovanstående alternativa formler tillåter kortare implementeringar. I formlerna ovan också bråkdelen av modulen, t.ex. , och .

Basformen konstrueras enligt följande: är en "triangel" för vilken värden större eller lika med −1 börjar från k=2 och slutar vid k=10, och den högsta punkten är vid k=6. Sedan med ändrar vi värden större än 1 till lika med 1. Sedan ändrar vi värden med mindre än −1 till lika med −1. Vid det här laget får vi något som liknar den röda formen från fig. 24 efter en vertikal vändning (där maximum är 1 och minimum är -1). R,G,B-funktionerna i använder denna form transformerad på följande sätt: modulo-skiftad på (med ) (på annat sätt för R,G,B ) skalas på (med ) och skiftas på (med ).

Vi observerar följande formegenskaper (fig. 24 kan hjälpa till att få en intuition om dem):

HSV till RGB

Fig. 24. En grafisk representation av RGB-koordinater givna värden för HSV. Denna ekvation visar ursprunget för markerade vertikala axelvärden

Givet en HSV-färg med nyans H ∈ [0°, 360°] , mättnad kan SV ∈ [0, 1] och värdet V ∈ [0, 1] vi använda samma strategi. Först hittar vi chroma:

Sedan kan vi återigen hitta en punkt ( R 1 , G 1 , B 1 ) längs de tre nedre ytorna av RGB-kuben, med samma nyans och färgton som vår färg (med hjälp av mellanvärdet X för den näst största komponenten av denna färg):

Som tidigare, när är ett heltal, skulle "angränsande" formler ge samma resultat.

Slutligen kan vi hitta R , G och B genom att lägga till samma mängd till varje komponent, för att matcha värdet:

HSV till RGB alternativ

Givet en färg med nyans mättnad , och värdet , först definierar vi funktion :

där och:

Och utmatade R,G,B-värden (från är:

Ovan alternativa ekvivalenta formler tillåter kortare implementering. I ovanstående formler också en del av modulen, t.ex. formeln . Värdena för . Basformen

är konstruerad enligt följande: är "triangel" för vilken icke-negativa värden börjar från k=0, högsta punkten vid k=2 och "slutar" vid k=4, då ändrar vi värden större än ett till ett med ändra sedan negativa värden till noll med – och vi får (för ) något som liknar grön form från Fig. 24 (vilket maxvärde är 1 och minvärde är 0). R,G,B-funktionerna för använder denna form transformerad på följande sätt: modulo-skiftad på (med ) (på annat sätt för R,G,B) skalas på (med ) och skiftas på (med ). Vi observerar följande formegenskaper (fig. 24 kan hjälpa till att få intuition om detta):

HSI till RGB

Givet en HSI-färg med nyans H ∈ [0°, 360°] , mättnad S I ∈ [0, 1] och intensitet I ∈ [0, 1] , kan vi använda samma strategi, i en något annan ordning:

Där är chroma.

Sedan kan vi återigen hitta en punkt ( R 1 , G 1 , B 1 ) längs de tre nedre ytorna av RGB-kuben, med samma nyans och färgton som vår färg (med hjälp av mellanvärdet X för den näst största komponenten av denna färg):

Överlappning (när är ett heltal) uppstår eftersom två sätt att beräkna värdet är ekvivalenta: eller , efter behov.

Slutligen kan vi hitta R , G och B genom att lägga till samma mängd till varje komponent, för att matcha lätthet:

Luma, chroma och nyans till RGB

Givet en färg med nyans H ∈ [0°, 360°) , chroma C ∈ [0, 1] och luma Y 601 ∈ [0, 1] , kan vi återigen använda samma strategi. Eftersom vi redan har H och C , kan vi genast hitta vår punkt ( R 1 , G 1 , B 1 ) längs de tre nedre ytorna av RGB-kuben:

Överlappning (när är ett heltal) uppstår eftersom två sätt att beräkna värdet är ekvivalenta: eller , efter behov.

Sedan kan vi hitta R , G och B genom att lägga till samma mängd till varje komponent, för att matcha luma:

Interkonvertering

HSV till HSL

Givet en färg med nyans SV , och värdet ,

HSL till HSV

Givet en färg med nyans mättnad , och luminans ,

Från RGB

Detta är en upprepning av den tidigare konverteringen.

Värdet måste ligga inom området .

Med maximal komponent (dvs värde)

och minimikomponent

,

intervall (dvs. chroma)

och mellanregister (dvs. lätthet)

,

vi får gemensam nyans:

och distinkta mättningar:

Swatches

För muspekaren över färgrutorna nedan för att se R- , G- och B -värdena för varje färgruta i ett verktygstips .

HSL

H = 180° H = 0°
L \ S 1 3⁄4 _ _ 1⁄2 _ _ 1⁄4 _ _ 0 1⁄4 _ _ 1⁄2 _ _ 3⁄4 _ _ 1
1                  
7 8                  
3 4                  
5 8                  
1 2                  
3 8                  
1 4                  
1 8                  
0                  
H = 210° H = 30°
L \ S 1 3⁄4 _ _ 1⁄2 _ _ 1⁄4 _ _ 0 1⁄4 _ _ 1⁄2 _ _ 3⁄4 _ _ 1
1                  
7 8                  
3 4                  
5 8                  
1 2                  
3 8                  
1 4                  
1 8                  
0                  
H = 240° H = 60°
L \ S 1 3⁄4 _ _ 1⁄2 _ _ 1⁄4 _ _ 0 1⁄4 _ _ 1⁄2 _ _ 3⁄4 _ _ 1
1                  
7 8                  
3 4                  
5 8                  
1 2                  
3 8                  
1 4                  
1 8                  
0                  
H = 270° H = 90°
L \ S 1 3⁄4 _ _ 1⁄2 _ _ 1⁄4 _ _ 0 1⁄4 _ _ 1⁄2 _ _ 3⁄4 _ _ 1
1                  
7 8                  
3 4                  
5 8                  
1 2                  
3 8                  
1 4                  
1 8                  
0                  
H = 300° H = 120°
L \ S 1 3⁄4 _ _ 1⁄2 _ _ 1⁄4 _ _ 0 1⁄4 _ _ 1⁄2 _ _ 3⁄4 _ _ 1
1                  
7 8                  
3 4                  
5 8                  
1 2                  
3 8                  
1 4                  
1 8                  
0                  
H = 330° H = 150°
L \ S 1 3⁄4 _ _ 1⁄2 _ _ 1⁄4 _ _ 0 1⁄4 _ _ 1⁄2 _ _ 3⁄4 _ _ 1
1                  
7 8                  
3 4                  
5 8                  
1 2                  
3 8                  
1 4                  
1 8                  
0                  

HSV

H = 180° H = 0°
V \ S 1 3⁄4 _ _ 1⁄2 _ _ 1⁄4 _ _ 0 1⁄4 _ _ 1⁄2 _ _ 3⁄4 _ _ 1
1                  
7 8                  
3 4                  
5 8                  
1 2                  
3 8                  
1 4                  
1 8                  
0                  
H = 210° H = 30°
V \ S 1 3⁄4 _ _ 1⁄2 _ _ 1⁄4 _ _ 0 1⁄4 _ _ 1⁄2 _ _ 3⁄4 _ _ 1
1                  
7 8                  
3 4                  
5 8                  
1 2                  
3 8                  
1 4                  
1 8                  
0                  
H = 240° H = 60°
V \ S 1 3⁄4 _ _ 1⁄2 _ _ 1⁄4 _ _ 0 1⁄4 _ _ 1⁄2 _ _ 3⁄4 _ _ 1
1                  
7 8                  
3 4                  
5 8                  
1 2                  
3 8                  
1 4                  
1 8                  
0                  
H = 270° H = 90°
V \ S 1 3⁄4 _ _ 1⁄2 _ _ 1⁄4 _ _ 0 1⁄4 _ _ 1⁄2 _ _ 3⁄4 _ _ 1
1                  
7 8                  
3 4                  
5 8                  
1 2                  
3 8                  
1 4                  
1 8                  
0                  
H = 300° H = 120°
V \ S 1 3⁄4 _ _ 1⁄2 _ _ 1⁄4 _ _ 0 1⁄4 _ _ 1⁄2 _ _ 3⁄4 _ _ 1
1                  
7 8                  
3 4                  
5 8                  
1 2                  
3 8                  
1 4                  
1 8                  
0                  
H = 330° H = 150°
V \ S 1 3⁄4 _ _ 1⁄2 _ _ 1⁄4 _ _ 0 1⁄4 _ _ 1⁄2 _ _ 3⁄4 _ _ 1
1                  
7 8                  
3 4                  
5 8                  
1 2                  
3 8                  
1 4                  
1 8                  
0                  

Se även

Anteckningar

Bibliografi

externa länkar