HSV ( Engelsk Hue, Saturation, Value - tone , saturation , value ) eller HSB ( Engelsk Hue, Saturation, Brightness - tone , saturation , brightness ) er en farvemodel, hvor farvekoordinaterne er :
Modellen er skabt af Alvy Ray Smith, en af de fremtidige medstiftere af Pixar , i midten af 1970'erne. Det er en ikke-lineær transformation af RGB -modellen .
Farven repræsenteret i HSV afhænger af den enhed, den vil blive udsendt til, da HSV er en konvertering af RGB-modellen, som også er enhedsafhængig. For at opnå en enhedsuafhængig farvekode bruges Lab -modellen .
Det skal bemærkes, at HSV (HSB) og HSL er to forskellige farvemodeller.
Den enkleste måde at kortlægge HSV til 3D-rum er at bruge et cylindrisk koordinatsystem . Her er H- koordinaten bestemt af den polære vinkel, S af radiusvektoren og V af Z - koordinaten. Det vil sige farvetoneændringer langs cylinderens omkreds, mætning langs radius og lysstyrke langs højden. På trods af den "matematiske" nøjagtighed har en sådan model en betydelig ulempe: i praksis falder antallet af mætningsniveauer og nuancer, der kan skelnes af øjet , når lysstyrken ( V ) nærmer sig nul (det vil sige på nuancer tæt på sort ). På små S og V opstår der også betydelige afrundingsfejl ved konvertering af RGB til HSV og omvendt. Derfor bruges den koniske model oftere.
En anden måde at visualisere et farverum på er med en kegle . Som i cylinderen ændres nuancen langs keglens omkreds. Farvemætning øges med afstanden fra keglens akse og lysstyrke - når den nærmer sig sin base. Nogle gange bruges en sekskantet regulær pyramide i stedet for en kegle .
Begge disse måder er en praktisk 3D-illustration af HSV-rummet. Men på grund af tredimensionaliteten bruges de ikke i applikationssoftware.
HSV-modellen bruges ofte i computergrafikprogrammer, fordi den er menneskevenlig. Følgende er måder at "udvide" 3D HSV-plads til en 2D computerskærm.
Denne gengivelse består af et farvehjul (cylindertværsnit) og en lysstyrkeskyder (cylinderhøjde). Denne visualisering var kendt for de første versioner af Corel -software . I øjeblikket bruges den ekstremt sjældent, oftere bruger de ringmodellen ("a la Macromedia ")
Nuance er repræsenteret som en regnbuering , og mætning og farveværdi vælges ved hjælp af en trekant indskrevet i denne ring . Dens lodrette akse styrer generelt mætning, mens dens vandrette akse giver dig mulighed for at ændre farveværdien. For at vælge en farve skal du således først angive nuancen og derefter vælge den ønskede farve fra trekanten.
Disse to diagrammer viser farver, der kun er forskellige i én komponent.
Forskellen på tætte farver kan vises på en anden måde - for at vise flere farver side om side, ikke meget forskellige i deres komponenter. Figuren til højre viser 27 tætte nuancer af orange sorteret efter lysstyrke og arrangeret i et spiralmønster . Firkanterne i midten viser de samme farver, men sorteret på en mere lineær måde.
Ofte vælger kunstnere at bruge HSV frem for andre modeller såsom RGB og CMYK , fordi de føler, at HSV-enheden er tættere på menneskelig farveopfattelse. RGB og CMYK definerer farve som en kombination af primærfarver ( henholdsvis rød , grøn og blå eller gul , magenta , cyan og sort ), mens HSV's farvekomponenter repræsenterer farveinformation i en mere velkendt form: Hvilken farve er det? Hvor mættet er han? Hvor lyst eller mørkt er det? HSL -farverummet repræsenterer farve på en lignende og måske endda mere intuitiv måde end HSV.
Vi mener, at:
Lad være den maksimale værdi af , og , og være minimum af dem.
udefineret hvis | |
hvis og | |
hvis og | |
hvis | |
hvis |
hvis | |
Ellers |
For enhver nuance , mætning og lysstyrke :
R | G | B | |
---|---|---|---|
0 | |||
en | |||
2 | |||
3 | |||
fire | |||
5 |
De resulterende værdier af de røde, grønne og blå RGB-kanaler beregnes som en procentdel. For at bringe dem i overensstemmelse med den almindelige COLORREF- repræsentation skal du gange hver af dem med .
Med heltalskodning er der for hver farve i HSV en tilsvarende farve i RGB. Det modsatte er dog ikke sandt: nogle farver i RGB kan ikke udtrykkes i HSV, så værdien af hver komponent er et heltal. Med denne kodning er faktisk kun en del af RGB-farverummet tilgængeligt.
To farver kaldes komplementære, hvis der, når de blandes i lige store forhold , opnås en ren grå farve . Hvis en farve er givet , skal der være en komplementær farve til den . Da den resulterende farve skal være grå, skal dens mætning (S) være 0. Således
Farvemodeller | ||
---|---|---|