Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 16. 10. 2010 18:53

pursulus
Příspěvky: 55
Škola: Vysoká škola dopravní Aš–Medzilaborce.
Pozice: DrVěd. Učím lesní zvířata moudrosti matematiky.
Reputace:   
 

Převod hodnoty barvy RGB z dvěstěpadesátišestkové řady do %% a zpět.

Urči vzorec, kterým se hodnota b barevného kanálu RGB, vycházející z bajtové jednořádkové matrice a vyjádřená v desítkové soustavě, převede na procentuální hodnotu p, a zpět.

[Hodnota barvy každého kanálu barevného modelu RGB (Red, Green, Blue) vychází z jednobajtové jednořádkové matrice a při převodu do desítkové soustavy je tato hodnota tradičně vyjadřována v mezích <0; 255>. V posledních letech někteří novátoři, ze jména z prostředí Wikipedie a Open Office, vyjadřují tuto hodnotu v procentech v mezích <0; 100>, stavějíce tak na odiv své levicové smýšlení. Všiml jsem si ale na určitém místě, že jejich převod je nesprávný. Budete pozornější?]

Offline

  • (téma jako vyřešené označil(a) pursulus)

#2 16. 10. 2010 19:02

Pavel Brožek
Místo: Praha
Příspěvky: 5694
Škola: Informatika na MFF UK
Pozice: Student
Reputace:   194 
 

Re: Převod hodnoty barvy RGB z dvěstěpadesátišestkové řady do %% a zpět.

Pokud chci, aby vztah byl lineární a nejnižší hodnota $b=0$ odpovídalo $p=0$ a nejvyšší hodnota $b=255$ odpovídala $p=100$, pak musí být vztah

$p=\frac{100}{255}\cdot b$.

Není mi jasné, jak to souvisí s levicovým/jiným smýšlením.

Offline

 

#3 16. 10. 2010 19:54

Oxyd
Příspěvky: 614
Škola: MFF UK, teoretická informatika
Pozice: Student
Reputace:   31 
 

Re: Převod hodnoty barvy RGB z dvěstěpadesátišestkové řady do %% a zpět.

Na jakém místě sis všiml, že jejich převod je nesprávný?

S barevnými reprezentacemi si člověk může vyhrát porůznu. Oko nevnímá barvy lineárně a není stejně citlivé na každou složku. Pokud ale převádíme lineární stupnici 0 .. 255 na lineární stupnici 0% .. 100%, pak se v tom snad nedá udělat chyba, ne?


Mýlím se častěji, než bych chtěl. Pokud vám v mém příspěvku něco nehraje, neváhejte se zeptat.
Jsem stále mlád a je mi příjemnější tykání. :)

Offline

 

#4 18. 10. 2010 04:42 — Editoval pursulus (09. 11. 2010 21:39)

pursulus
Příspěvky: 55
Škola: Vysoká škola dopravní Aš–Medzilaborce.
Pozice: DrVěd. Učím lesní zvířata moudrosti matematiky.
Reputace:   
 

Re: Převod hodnoty barvy RGB z dvěstěpadesátišestkové řady do %% a zpět.

ŘEŠENÍ (které se později ukáže jako nesprávné).



Levicové smýšlení a desítková soustava.

Tato má zmínka v zadání nesměřuje do politiky; je to lehká a letmá hříčka poukazující k Francouzské revoluci a určitému opět možná lehkému a letmému směřování myšlení těch lidí, již oblibují sobě soustavu dekadickou...

Zdar, a protože mohou býti připomínky  nebo protože se mohu v něčem mýliti (neznalý jsa všech tajů přírody), ponechávám to zde ještě otevřené.

Offline

 

#5 18. 10. 2010 12:35 — Editoval BrozekP (18. 10. 2010 16:33)

Pavel Brožek
Místo: Praha
Příspěvky: 5694
Škola: Informatika na MFF UK
Pozice: Student
Reputace:   194 
 

Re: Převod hodnoty barvy RGB z dvěstěpadesátišestkové řady do %% a zpět.

Ten můj převod nemá nic společného s dekadickou soustavou. Ať už vyjádříme vztah a výsledek v jakékoliv soustavě, vždy bude dávat číslo mezi 0 a 1 (po vydělení stem samozřejmě, chápal jsem p jako počet procent) popisující lineárně množství použité barvy. 0 odpovídá nepřítomnosti barvy a 1 odpovídá maximálnímu použití barvy. Tvůj převod tuto přirozenou logiku nesplňuje. Pokud do toho chceš zapojit zaokrouhlování a praktické problémy spojené s uložením čísla v počítači, už je to jiný problém, který jsi v úvodním příspěvku nedostatečně specifikoval.

Offline

 

#6 19. 10. 2010 00:25 — Editoval pursulus (19. 10. 2010 00:55)

pursulus
Příspěvky: 55
Škola: Vysoká škola dopravní Aš–Medzilaborce.
Pozice: DrVěd. Učím lesní zvířata moudrosti matematiky.
Reputace:   
 

Re: Převod hodnoty barvy RGB z dvěstěpadesátišestkové řady do %% a zpět.

↑ BrozekP:

Ano, rozumím.

Při výpočtech barev z nějakého kontinua, jakým je třeba prostor CIE Lab, při souvisejících s tím převodech je použitelný pouze druh převodu tebou uvedený, tedy p = b / 255; týž, který je použitý jmenovitě na e-stránce 'en.wikipedia.org/wiki/List_of_colors'.

Já svou "úlohu" formuloval záměrně tak, aby zadání bylo tak trošičku tajenkou, což jí mělo dodati na zajímavosti. Čekal jsem (marně!), že někdo tomu zadání porozumí správně, neboť je dost návodné na to, aby bylo lze si domysliti, kam věc směřuje: totiž k praktickému převodu diskrétních hodnot RGB tak, jak se používají v praxi grafika, sazeče, fotografa ve všech grafických prostředích-provaděčích pro zpracování obrazu. Jde o to, že v této praxi je odstín RGB barvy vždy diskrétní veličinou z důvodu způsobu uložení údaje o barvě v paměti stroje (nemusím rozváděti).

A jsme u věci. Výše zmíněná e-stránka Wikipedie je totiž seznamem barev PRÁVĚ pro tuto praxi. I když nepřesnost oko třeba ani nepostřehne -- je-li už barevný odstín určitého jména kodifikován určitou diskrétní hodnotou, je CHYBOU, když se použije převod používaný a vhodný pro výpočty v barevném kontinuu, jímž se tato kodifikovaná diskrétní hodnota změní. V praxi musí platiti, že padesát procent je polovina, a ne 49,5. Musí, neboť jinak se zcela konkrétní barva změní v jinou! (Viz příklady uvedené v Řešení.)

Takže; když už stanoviska jsou vysvětlena; zajímal by mě tvůj názor na správnost mého výpočtu-převodu, co se popsané praxe týká. Jsem přesvědčen, že to je správný postup, a že na Wikipedii omylem použili postup nevhodný.

S úctou, pursulus.

DODATEK: Když nad tím přemýšlím, je procentuální vyjádření diskrétní hodnoty z dvěstěpadesátišestkové řady, používané v praxi zpracování obrazu, úplně špatným, a zbytečným, krokem. Ach, ti levičáci, boha jeho materi atd.!

Offline

 

#7 19. 10. 2010 10:26 — Editoval LukasM (19. 10. 2010 10:27)

LukasM
Příspěvky: 3274
Reputace:   193 
 

Re: Převod hodnoty barvy RGB z dvěstěpadesátišestkové řady do %% a zpět.

↑ pursulus:
"je-li už barevný odstín určitého jména kodifikován určitou diskrétní hodnotou" - není, pojmenování je "fuzzy and arbitrary", což je napsáno hned nad tou tabulkou kterou kritizuješ.

"Výše zmíněná e-stránka Wikipedie je totiž seznamem barev PRÁVĚ pro tuto praxi." - proč? O tom jsem nikdy neslyšel. Ale i kdyby, že je přepočet nesprávný je jasné každému, a stejně by každý použil přesnou hodnotu udanou hexadecimálně. Nicméně spíš si myslím, že smyslem té tabulky je něco jiného, a sice zhruba ukázat laikovi, kolik té které barvy tam je, a na to jsou procenta přehlednější než číslo 0..255.


Jinak pochopil jsem to správně, že se snažíš najít způsob, jak barvu jednoznačně popsat celočíselnou hodnotou v procentech (resp. třemi takovými hodnotami)? To totiž, pokud se nepletu, odpovídá nalezení bijekce mezi množinou $\{0,1,2,\dots,255\}$ a $\{0,1,2,\dots,100\}$, jejímž hledáním bych se asi dlouho nezabýval.
Nebo to chápu celé nějak špatně?

Offline

 

#8 20. 10. 2010 12:31

pursulus
Příspěvky: 55
Škola: Vysoká škola dopravní Aš–Medzilaborce.
Pozice: DrVěd. Učím lesní zvířata moudrosti matematiky.
Reputace:   
 

Re: Převod hodnoty barvy RGB z dvěstěpadesátišestkové řady do %% a zpět.

↑ LukasM:

Na první tvé dva odstavce je odpověď v obecném úhrnu v následujícím mém příspěvku.

Nezabývám se hledáním uvedené bijekce, i když je tato součástí řešení [vyplývá z podmínek řešení A., bod a) a b)]. Praktický postup a návod je uvedený v mém Řešení (viz  oddíl C.) Rozvedu-li ovšem zpětný převod, je jasné, že se nedobéřu té samé barvy; důležité to není, protože tento je pouhou berličkou tam, kde v tabulce jsou (by byla) pouze a jenom procenta a já potřebuji dostati alespoň nějakou hodnotu, s níž by mi bylo lze pracovati, byť ne zcela přesnou [co jiného mi taky zbývá (by mi taky zbývalo), že].

Ostatek v obecném úhrnu, jež následuje v dalším příspěvku.

Offline

 

#9 20. 10. 2010 12:32

pursulus
Příspěvky: 55
Škola: Vysoká škola dopravní Aš–Medzilaborce.
Pozice: DrVěd. Učím lesní zvířata moudrosti matematiky.
Reputace:   
 

Re: Převod hodnoty barvy RGB z dvěstěpadesátišestkové řady do %% a zpět.

Zaměřme se na podstatné. O bodech, které teď uvedu, nediskutujme.

1. Z mého zadání lze jasně dovoditi, že úloha je o převodu diskrétních hodnot uložených tak v binární paměti stroje, to znamená o praxi týkající se zpracování barvy (tedy obrazu, tiskovin a tak dál) strojem, a že tedy není o výpočtech používaných v teorii barvy třeba při převodech různých modelů, prostorů a tak dál. Kdo to neuviděl, tak byl málo pozorný a málo přemýšlel. Kdo se zlobí na hádanku, že mu nenapověděla řešení, stává se hlupákem.

2. Tabulky barev označených názvy a číselnými hodnotami RGB v hex, ve 2^8 či v HSB (barevné kolo) slouží z principu pro praxi spíše než pro cokoli jiného. Snaha o kodifikaci barev je zřejmá, někde už tomu tak je (barvy vlajek organizací třeba). Kodifikace je tabulkově přes diskrétní hodnoty kanálů RGB, neboť neslouží prvotně k ničemu jinému než (současné) praxi a poučení. Jakýkoli převod pozměňující hodnoty určující barvu je tudíž chybný.

Následuje prostor pro přitakání, připomínky a žaloby.

Protože jsem si všiml, že na e-stránce 'en.wikipedia.org/wiki/List_of_colors' používají chybný převod (do procent), určil jsem správný vzorec s dalším praktickým návodem. Jsem přesvědčen, že můj postup je správný. Dokáže-li někdo, že není, donutí mi to samozřejmě označiti moje řešení za špatné. Toť vše.

Offline

 

#10 09. 11. 2010 22:06

pursulus
Příspěvky: 55
Škola: Vysoká škola dopravní Aš–Medzilaborce.
Pozice: DrVěd. Učím lesní zvířata moudrosti matematiky.
Reputace:   
 

Re: Převod hodnoty barvy RGB z dvěstěpadesátišestkové řady do %% a zpět.

↑ pursulus:

Tvé řešení je nesprávné. Proč? Je zatíženo logickou chybou, skrz niž jsi se dostal k nesprávným vývodům. Stručně řečeno (a já věřím, že to pochopíš), ty počítáš 256 kuliček, o něž ale vůbec nejde, jde o "sílu" barvy. A ta roste od nuly (žádná síla) k 255 (největší síla barvy). To máš 255 "skoků", ne 256. Tvůj "střed" barevnosti (padesátiprocentní hodnota) neexistuje -- musila by býti hodnota 127,5, což z povahy ukládání barev do "bajtové matrice" nelze. Středními hodnotami jsou vlastně hodnoty dvě, a to 127d a 128d, ale to je rozdíl lidským okem nepostřehnutelný, takže v praxi nedůležitý.

Dobře je tvůj omyl poznat tak, že si zvolíme dvoubitovou matrici (čtyři "kuličky"). Kdybys změřil sílu tvé padesátiprocentní hodnoty (ale i na vlastní oči bys to dobře viděl při tak malém počtu "skoků"), zjistil bys, že síla barevnosti tvých dvou "kuliček" vůbec střední barevnosti neodpovídá (jde o jednotřetinovou sílu barvy). Opět tu jsou střední hodnoty vlastně dvě, zde v jedné a ve dvou třetinách, což je rozdíl obrovský; ten se ztrácí teprve při vysokém počtu členů řady, jako je tomu při 256 členech oné "bajtové matrice".

Proto je správným řešením, ať už se zlobíš nebo ne, to uvedené uživatelem BrozekP, a tím i to použité na anglické Wikipedii. Ostatek věci vyplývá z uvedeného. S pozdravem, pursulus.

Offline

 

#11 09. 11. 2010 22:09

pursulus
Příspěvky: 55
Škola: Vysoká škola dopravní Aš–Medzilaborce.
Pozice: DrVěd. Učím lesní zvířata moudrosti matematiky.
Reputace:   
 

Re: Převod hodnoty barvy RGB z dvěstěpadesátišestkové řady do %% a zpět.

↑ pursulus:

Ano, teď už je mi jasné, i jak vznikl můj omyl. Přílišným zapálením se pro "objev" neviděl jsem více... Dávám ti, pursule, veliký bod k dobru za odhalení hrůzného omylu, jenž hrozil zmátnouti celou veřejnost.

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson