Android Central

Android färghantering: Allt du behöver veta

protection click fraud

Det har pratats mycket om färghantering här och på andra håll på internet den senaste tiden. Android Oreo ger nytt stöd för färghantering, Pixel 2 XL har ett rykte om att göra det dåligt, och dessa två saker tillsammans gör att vi vill prata om det. Men vad betyder färghantering egentligen?

Låt oss prata om det och lite om hur och varför det används, och kanske till och med lite mer coola grejer.

Vad är färghantering?

Skratta inte, men du måste förstå precis vilken färg som är baserat på hur våra ögon ser den innan du pratar om hur våra prylar försöker göra det rätt.

Färg beskrivs enklast som resultatet av Nyans, Mättnad och Briljans.

Ljus avger energi över specifika band eller våglängder, men våra ögon kan inte se de flesta av dem. Detta är känt som spektrum. Termer som IR (infraröd, eller längre våglängder än den röda änden av spektrumet vi kan se) och UV (ultraviolett, kortare än den blå våglängder som vi kan se) är verkliga och det finns gott om vetenskap om att mäta deras intensitet men de har inget att göra med Färg eftersom färg är en mänsklig sak.

I de våglängder av ljus som är synliga, Nyans är den punkt där ett band har mest energi, Mättnad definierar bandbredden (där ljusemissionen börjar på spektrumet och var den slutar), och Briljans är intensiteten hos en ljusvåg som är synlig för människor. Nyans definierar vilken färg våra ögon kommer att se, Mättnad definierar renheten i den, och Brilliance definierar dess ljusstyrka. Diagram hjälper, så här är en.

Detta är den typ av ljus som en växt inte kan använda för fotosyntes. Det är därför växter oftast har denna färg - de reflekterar detta ljus!
Detta är den typ av ljus som en växt inte kan använda för fotosyntes. Det är därför växter oftast har denna färg - de reflekterar detta ljus!

I det här diagrammet har rött, grönt och blått alla ungefär samma nyans - de toppar runt 450 - 550 nanometer. Rött har mest bandbredd (det täcker mer spektrum) så är mindre mättat än blått som har minst bandbredd. Alla tre färgerna har en mycket hög briljans där de toppar, så de är lika intensiva. Våra ögon tolkar detta som en lerig ful gul färg. Alla färger skapade i rött, blått och grönt kommer att ha sin egen spektrumprofil precis som ful-gul har.

Färgen på din TV och färgen på din telefon och färgen från din kamera måste alla matcha.

RGB står för rött, grönt och blått. Det är en tillsats modell för att skapa färg, där ljus i varje spektrum sänds ut för att skapa färgen. Om du har en färgbläckstråleskrivare (minns du dem?) skapar den en färg med cyan, magenta, gult och svart (CMYK) som subtraktiva modell, där färger appliceras så att ljuset som reflekteras från en yta är en specifik färg. RGBA (A: et är för Alfa och bestämmer graden av transparens) är modellen som används på en display för att producera en färg, oavsett vilken typ av display som används.

Färgen som produceras av en skrivare som använder CMYK-modellen och färgen som produceras på telefonens skärm med RGBA-modellen måste se likadana ut för våra ögon – rött måste se rött ut.

Detta är färghantering i sin mest grundläggande form.

Faktisk färghantering

Det finns många olika sätt att "skapa" färg. Vi tittade på HSB-, RGB- och CMYK-modellerna ovan, men det finns många andra sätt att försöka representera hur uteffekten av en ljuskälla ser ut för våra ögon. De designades alla så att rosa ser rosa ut, grönt ser grönt ut, orange ser orange ut och så vidare. Vi kan få en bra grunduppfattning om vilken färg som försöker representeras av vilken färgmodell som helst i vilket medium som helst. Men en grundläggande idé räcker helt enkelt inte.

Att göra något är inte detsamma som att göra det bra, och det gäller färghantering också.

Spektrum av färger är nästan oändligt, och när du använder något som kan visa mer än en handfull av dem behöver du ett sätt att se till att en viss grön nyans ser likadan ut för en persons ögon oavsett var den visas eller vilken modell som används för att skapa Det. När du har att göra med de miljontals olika färger som en modern elektronisk display kan visa, blir en bra metod för att återge rätt färg mycket viktig.

Du behöver en bra skärm

Du börjar med själva displayen. Alla bra avancerade skärmar måste kunna reproducera en Brett färgomfång. Det finns standarder från ITU-R (International Telecommunication Union - Radiocommunications Sector) som avgör vad ett brett färgomfång är, och de involverar mycket matematik och naturvetenskap. Tack och lov behöver vi inte räkna ut och behöver bara veta vilka färgrymder som uppfyller standarderna. För våra telefoner är det vanligtvis DCI-P3 färg rymd.

Detta är viktigare nu när skärmar kan visa fler färger.

Den ödesdigra Galaxy Note 7 är listad som den första telefonen som levereras med en 100 % DCI-P3 HDR-skärm, men eftersom vi har sett DCI-P3-kapabla skärmar från många företag. iPhone 7 och nyare levereras med en, OnePlus 5 och uppåt har en, HTC U11+ och Pixel 2 XL med flera har alla 100 % kompatibla DCI-P3-skärmar. Det betyder att skärmen burk återge färger korrekt och exakt för att uppfylla ITU-R-standarderna.

Sedan kalibrerar du den

När du väl använder rätt hårdvara kommer kalibrering in i bilden. Kalibrering är att mäta utdata från en bildskärm när den återger olika färger och att justera hårdvaran så att avläsningarna motsvarar ett specifikt värde. Eftersom det är omöjligt att kalibrera 16,7 miljoner olika färger används vanliga färgutrymmen. De mest Vanligt är sRGB (standard Röd Grön Blå).

Utvecklat av HP och Microsoft, sRGB är standarden på bildskärmar, skrivare och internet när ingen specifik färgrymd är definierad, och det är en mycket bra standard. Att kalibrera för sRGB är ganska enkelt eftersom du justerar med en kanal på ett värde som inte är noll och de andra två på noll och cyklar igenom. Det är därför du kommer att se 255,255,255 uttryckt för en färg (den är vit) eller 255,0,0 (det är röd). När kromatiken för varje primär kanal är kalibrerad, kommer alla andra färger att vara det också.

Helst är detta vad varje företag som tillverkar en display gör och sedan skickar det displayen ut genom dörren.

Innan Oreo var färghanteringen på Android trasig

Problemet är att vissa företag som använder Wide Color Gamut-skärmar skulle sträcka ut sRGB-utrymmet och omtolka färgvärdena till sitt eget unika spektrum. Detta gör de tre primära kanalerna mycket övermättade, vilket i sin tur innebär att var och en av 16.7 miljoner färger som skärmen kunde visa var inte längre kalibrerad för att se likadan ut på någon annan enhet.

Det finns många färgrymder och profiler. Den viktigaste för Android är sRGB.

Innan Android Oreo använde applikationer sRGB-färgrymden. Det finns en anledning till detta - low-end hårdvara. Att visa ett brett färgomfång kräver mer GPU- och CPU-kraft än sRGB-utrymmet. Om Android hade ställts in med en bred färgrymd som standard, skulle en del av telefonerna som folk köper kämpa för att visa den. Även om en telefons skärm inte ens kunde visa alla färger, finns det fortfarande en ganska stor prestandaträff.

Tillverkare av avancerade enheter ansåg att att "bryta" färgkalibrering och bearbeta färg med sina egna värden skulle visa upp deras överlägsna skärmar, och om det är en sak jag har lärt mig att göra det här jobbet i nästan åtta år är att en telefontillverkare bara bryr sig om vad som är bäst för sig.

Vissa appar måste fortfarande visa mestadels exakta färger, även när en tillverkare bryter färgrymden, så utvecklare var tvungna att göra sina tillgångar sämre för att försöka kompensera. En video, till exempel, ser bäst ut när en röd stoppskylt är samma röda som du känner igen den som och inte en slumpmässig färg som en tillverkare bestämt att den ska vara. När du väl introducerar en enhet med en 100 % DCI-P3-skärm kalibrerad för sRGB-färgrymden börjar saker och ting se trasiga ut. Detta är kärnan i problemen kring de "dämpade" färgerna på Pixel 2, även om vissa experter säger att kalibreringen inte är särskilt exakt från enhet till enhet.

Så här fixas det

Rätt stöd för bred färgomfång gör att just den här Pixel 2 XL och Note 8 visar den här bilden på samma sätt på båda skärmarna.
Rätt stöd för bred färgomfång gör att just den här Pixel 2 XL och Note 8 visar den här bilden på samma sätt på båda skärmarna.

Detta är den enkla delen och borde förmodligen ha gjorts från början. En utvecklare kan upptäcka om en enhet använder en bred färgomfångsskärm och har en aktivitet inne i applikationen som använder rätt färgrymd för att få ut det mesta av det. Om enheten inte kan visa breda färger används standard sRGB-profilen.

Google har tillhandahållit massor av tillgångar för utvecklare som vill följa de nya riktlinjerna i sina appar:

  • Android allmän färgrymdsdokumentation för API 26
  • Färgrymder som stöds av Android
  • Bred färgtillgångar och innehållsguide

Det här är väl och bra och bör visa sig vara ett bra sätt att se till att färgerna ser likadana ut från enhet till enhet om det inte är en lägre modell som inte kan visa alla färger. De skulle fortfarande se korrekta ut mellan enheter eftersom de skulle använda sRGB-färgrymden. Problemet är att få alla ombord att göra samma sak.

Vi hoppas att saker och ting kommer att bli bättre

För att detta ska fungera har Samsung, OnePlus, LG och alla andra företag som är "trasig" sRGB-tolkningen för att gå tillbaka och korrigera det och utvecklare måste bygga om sina appar för att stödja den nya färgrymden riktlinjer. Och ingen vill göra det.

Företag kommer sannolikt inte att ändra sättet de gör saker på förrän apputvecklare gör de appar som ser ut bra, och utvecklare kommer inte att skriva appar som kommer att se trasiga ut på miljoner och åter miljoner av telefoner. Apple kunde gå över till korrekt färghantering eftersom det kontrollerar hårdvaru- och mjukvaruutrymmet, samt ställer in riktlinjer för App Store. Google har inte den lyxen.

Någonstans funderar någon på sättet att fixa allt detta. Och skicka en trasig färgrymd som användaren kan välja på på Pixel 2-telefoner för att kompensera – ja, det är det inte. Vi vet att alla inblandade vill göra saker och ting på rätt sätt, och det innebär också att inte slå sönder något på de telefoner som redan är sålda. Förhoppningsvis löser det sig förr än senare.

instagram story viewer