Jeg er kjent med additiv (RGB), sub-abstractive (CMYK) og HSV-lignende fargebaner, men en artikkel Jeg prøver for øyeblikket å forstå YCbCr fargerom for bildesegmentering / objektdefinisjon.
Jeg har brukt mesteparten av morgenen på å lete etter noe som kan forklare YCbCr naturlig, men jeg får det bare ikke. Jeg fikk en fin, intuitiv forklaring på den generelle ideen bak dette fargerommet her , og forklaring på hvordan den brukes til bildekoding / komprimering fra disse gutter (alt på foto.SE).
Formlene for beregning av YCbCr fra RGB er lett tilgjengelig på wikipedia .
Jeg fikk motivasjonen til denne representasjonen, jeg fikk den Y-komponenten som inneholder det viktigste (for det menneskelige øye ) gråskalainformasjon om bildet.
Jeg fikk vite at Cb og Cr bærer informasjon om farger , og at de (på grunn av menneskelig øye (i) følsomhet) kan komprimeres uten et synlig tap i kvalitet. Men, hva representerer hver av krominanskomponentene egentlig?
Som artikkelforfatterne nevner at » krominansinformasjon er avgjørende i definisjonen av objekter «i deres tilnærming, og jeg kan ikke forstå hva jeg leser med min nåværende» Y er intensitet, Cb og Cr bærer fargeinformasjon på en eller annen måte «nivå av forståelse av YCbCr.
Jeg søker svar i tråd med «Cb er …, mens Cr er …» eller «hvis du forestiller deg å se gjennom / med XY, ser du faktisk på Cb-komponent …» , eller på en annen måte som vil hjelpe meg å forstå informasjon som bæres av hver av komponentene separat, ikke bare at de sammen bærer fargeinformasjon.
EDIT
La meg gi eksempler på intuitive forklaringer på andre fargerom av typen jeg ser etter:
RGB : Som å skinne med en farget blits lys på en svart vegg: Hvis du skinner med en blå lommelykt, ser du en blå refleksjon. Hvis du legger til en rød lommelykt, vil den vise en magenta refleksjon, som er en blanding av blått og rødt.
CMYK : Som å blande akvareller, «legger du til fargene overflaten reflekterer», (dvs. trekker fra fargen fra bakgrunnen), så hvis du blander en gul med en cyan, vil den reflektere grønt og dermed får du en grønn farge.
HSV : Små barn tiltrekkes av høyt mettede gjenstander, ikke lyse (verdi ). Hue-komponenten er det som «gir fargen», mens lav metning betyr at fargen er «fortynnet» med hvitt. Verdiendring gjør det hele lysere eller mørkere.
Med disse definisjonene har jeg klart å få en intuitiv følelse av hva en fargegjengivelse i hvert fargerom betyr uten å huske diagrammer for hver av dem. .
Svar
YUV (eller YCbCr) er som HSV, men i forskjellige koordinater. (Forskjellen mellom YUV og YCbCr er marginal – hovedsakelig relatert til eksakte formler).
$ V $ -komponenten er den samme. $ (S, H) $ kan betraktes som polare koordinater, og $ (U, V) $ som kartesisk. $ H $ er vinkelen og $ S $ er radiusen. En grov konvertering vil være:
$ U = S \ cdot \ cos (H) $
$ V = S \ cdot \ sin ( H) $
Du kan se denne lenken for mer info rmasjon.
En annen ting å legge til i din intuisjonsliste:
Metning er hvor ren fargen er fra spektral synspunkt . For eksempel har en laser et veldig smalt spektrum, noe som innebærer høy metning.
Ikke sikker på hva du mener med «faktisk» representerer, ettersom verken RGB eller YUV representerer hverken fotonfrekvensen eller de typiske menneskelige øynene stang / kjeglesvar. Men du kan se hvordan de ser ut for deg ved å syntetisere noen YCrCb fargepatcher, for eksempel (1,1,0), (1, -1,0), (1,0,1), (1,0, – 1) osv.
Her «en Wikipedia-side som inneholder et diagram:
http://en.wikipedia.org/wiki/File:YCbCr-CbCr_Scaled_Y50.png
Lagt til: RGB, og slikt, ble nesten designet (eller utviklet seg) for å matche en mulig menneskelig intuitiv forståelse av persepsjon (og fargenavn viser seg å være kulturelt lært). er det motsatte, utformet slik at støy i UV-området (lagt til et støyende NTSC-underbånd) vil være vanskelig å se og dermed være vanskeligere å beskrive. YCrCb er en variant på samme fargekartlegging. Så ikke se etter en eksisterende «intuitiv» innsikt, som kanskje ikke eksisterer. Kanskje lag din egen ved å «lære» diagrammet og bygge noen splitter nye nevrale forbindelser som kanskje ikke eksisterer i hjernen din (eller noe sånt.)
Kommentarer
Svar
Når du forstår HSV / HSB, bør det ikke være vanskelig å forstå YCbCr. B-kanalen i HSB samsvarer med chroma (chroma = metning http://vident.com/products/shade-management/color-theory/understanding-color-overview/hue-value-and-chroma/ ). Du kan ta rgb-bilde og konvertere det til gråtoner, eller du kan konvertere hver kanal i RGB til gråtoner, og de fletter dem sammen til en kanal. For forenkling, la oss ha piksler med 100% rødt, 100% grønt og 70% blått. Du vil beregne gjennomsnitt … (100 + 100 + 70) / 3 og du får verdien 90%, som betyr 90% av lysstyrken Så i gråtoner er det veldig lys grå farge. Hvis vi nå vil uttrykke de originale fargene mot gråtonekanalen, trenger vi 3 formler for hver farge (rød, grønn, blå). Du vil beregne forskjellen på verdien R vs gråtoner, G vs gråtoner og B vs gråtoner. Dette trenger 4 kanaler (RGB + chroma). Men vi kan gjøre det samme med 3 kanaler. Vi kan gjøre en liten korreksjon til den grønne kanalen. La oss beregne forskjellen til den grønne kanalen. Originalgrønn er 100%, ny verdi av grønt omgjort til grått er 90%. Forskjellen er -10%. Så la oss endre R- og B-kanalene for denne pikselet med denne forskjellen. Vi gjorde nettopp gammakorreksjon eller alle kanaler. Grønne kanalverdier vil være de samme som for gråtonebilde. Så vi beregner ikke lenger med grønn kanal. Grønn er «kodet «i Y … chroma-kanalen. Resten av farger (R, B) justeres også. R` = 90% av originalen eller 100% av Y fordi R og B er like i dette eksemplet. B-forbindelsen har forskjell + 20% mot original, men etter at den ble endret med gammakorreksjon har den forskjell + 30% mot Y. For å forenkle det enda mer, er det som formel hvor du må lage tillegg for alle tre forbindelsene. Forskjellene du får for rødt og blått er Cb og Cr. Tegnene sier bare at du sammenlignet Blue channel med chroma Channel og Red channel med Chromma channel. Derfor Cb og Cr.