Hogyan lehet a színtartományokat egyformán skálázni?
A kérdést az dönti el, hogy mit is akarsz kezdeni az eredménnyel, miért fontos. Mondjuk ha a vörös és kék szubpixelek által leadott teljesítményt számítod, akkor mindegy, hogy az adott vörös szubpixel mellett a zöld, kék is ugyanolyan teljesítményt ad le – azaz a szín valójában fehér –, a vörös szubpixel fényerején ez mit sem változtat.
Ha emberi érzékelésről van szó, akkor már maszatosabb a téma. Hány színt különböztetünk meg a szivárványon? Jellemzően 6-8-at szokás felsorolni: vörös, narancssárga, citromsárga, sárgászöld, zöld, türkiz, kék, ibolya. Ez lehet jó kiindulópont, RGB-nél ez 6 színre praktikus felosztani: vörös (#ff0000), sárga (#ffff00), zöld (#00ff00), türkiz (#00ffff), kék (#0000ff), lila (#ff00ff). Bár ez kicsit csalás, a vörös és sárga között az ember túl nagynak érzi a különbséget, általában megkülönbözteti a narancssárgát, viszont a kék és zöld között meg nem érez akkora különbséget, és a türkizt nem feltétlenül különíti el külön színként.
Én mindenféle háttér nélkül azt csinálnám, hogy átkonvertálnám a színeket RGB-ről HSV-re vagy HSL-re (szín, telítettség, világosság/fényerő). (Lásd: [link] illetve [link] ) Vörösnek venném, ami színben a színtiszta vöröstől ±30° távolságon belül van. Esetleg a narancs felé kompenzálnék, azaz -30, +20 tartományt néznék. Illetve kritérium lenne, hogy a telítettség legalább 10-20% legyen, hiszen egy szinte fehérnek tűnő rózsaszínt (#ffeeee) általában nem szoktunk pirosnak hívni. Illetve a fényerőt is legalább 10-20%-os kritériumnak venném, hiszen a nagyon enyhén derengő vöröst (#110000), ami szinte már fekete, megint nem tudnám vörösnek hívni.
Ilyen módon mondjuk:
is_red = ((h<=20) || (h>330)) && (s>20) && (v>10);
is_blue = (h>210) && (h<270) && (s>20) && (v>10);
De mint írtam, a cél szerint lehet ezen módosítani, attól független egzakt megoldása nincs a problémának, a pontos feladatnál is önkényes annak megjelölése, hogy mi piros és mi nem, ott esetleg egy a feladat szempontjából releváns, sokak által kitöltött teszt – amiben színekről nyilatkoznak, hogy az vörös-e vagy sem – adhat némi eligazítást, hogy mit tekintsünk pirosnak, és mit ne.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!