abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

    včera 18:33 | Nová verze

    Operační systém MidnightBSD, fork FreeBSD optimalizovaný pro desktop s prostředím Xfce, byl vydán ve verzi 3.0. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    včera 18:22 | IT novinky

    Na GOG.com běží Spring Sale. Při té příležitosti lze získat zdarma počítačovou hru Neurodeck: Psychological Deckbuilder (ProtonDB).

    Ladislav Hagara | Komentářů: 0
    25.3. 12:33 | Komunita

    Alex Ellis upozornil 15. března, že firma Docker se chystala zrušit bezplatný hosting open-source projektů na Docker Hubu. Po vlně odporu se představitelé firmy omluvili a posléze byl původní záměr odvolán.

    Fluttershy, yay! | Komentářů: 28
    25.3. 07:00 | IT novinky

    Ve věku 94 let zemřel Gordon Moore, mj. spoluzakladatel společnosti Intel a autor Moorova zákona.

    Ladislav Hagara | Komentářů: 1
    24.3. 17:11 | Nová verze

    Mercurial (Wikipedie), software pro SCM (Source Code Management), byl vydán ve verzi 6.4. Přehled novinek v poznámkách k vydání. Ve dnech 5. až 7. dubna proběhne konference Mercurial Paris.

    Ladislav Hagara | Komentářů: 0
    24.3. 11:55 | IT novinky

    Byly rozdány Ceny Velkého bratra (Big Brother Awards) za rok 2022 pro největší slídily pořádané nevládní organizací Iuridicum Remedium. Dlouhodobý slídil: Microsoft. Firemní slídil: Seznam. Úřední slídil: Nejvyšší správní soud. Výrok Velkého bratra: Marian Jurečka. Pozitivní cena: NoLog.

    Ladislav Hagara | Komentářů: 11
    24.3. 11:11 | Zajímavý projekt

    Byla představena online vzdělávací platforma Ada Computer Science pro učitele, studenty a kohokoli, kdo se zajímá o informatiku. Stojí za ní Raspberry Pi Foundation a Univerzita v Cambridgi.

    Ladislav Hagara | Komentářů: 0
    24.3. 09:11 | Bezpečnostní upozornění

    GitHub má nový RSA SSH klíč. Předchozí soukromý klíč byl krátce vystaven na GitHubu.

    Ladislav Hagara | Komentářů: 0
    24.3. 08:55 | IT novinky

    Společnost Framework Computer představila (YouTube) nové modulární notebooky: Laptop 13 s Intel Core nebo AMD Ryzen a Laptop 16 (YouTube).

    Ladislav Hagara | Komentářů: 0
    23.3. 19:33 | Nová verze

    Bylo vydáno Ubuntu 20.04.6 LTS, tj. šesté opravné vydání Ubuntu 20.04 LTS s kódovým názvem Focal Fossa. Přehled novinek v poznámkách k vydání a v přehledu změn.

    Ladislav Hagara | Komentářů: 2
    Používáte WSL (Windows Subsystem for Linux)?
     (74%)
     (12%)
     (4%)
     (10%)
    Celkem 327 hlasů
     Komentářů: 4, poslední 24.3. 06:42
    Rozcestník
    Štítky: není přiřazen žádný štítek


    Dotaz: Řazení barev - algoritmus

    6.3.2012 20:24 martin
    Řazení barev - algoritmus
    Přečteno: 940×
    Ahoj,

    potřebuju radu ohledně řazení barev. Nejedná se mi o kód v nějakém programovacím jazyku, ale o obecný algoritmus.

    Mým cílem je vytvořit něco, co bych nazval barevnou stupnicí (jako čáru - nikoli např. krychli -, kde by byly teoreticky zastoupeny všechny barvy). Jedná se o barevný prostor RGB.

    Na Wikipedii jsem našel článek o RGB, kde se píše: Čím větší je součet mohutností, tím světlejší je výsledná barva. Jenže v tabulce níže je, že např. červená má mohutnosti (255, 0, 0), kdežto modrá (0, 0, 255). Součet obou barev je tedy stejný (tj 255)... Co jsem pochopil špatně?

    Jak tedy barvy seřadit, podle jakého klíče, má-li se pracovat se složkami R (červená), G (zelená) a B (modrá)?

    Díky, Martin

    Řešení dotazu:


    Odpovědi

    6.3.2012 20:37 l4m4
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    Lidské barevné vidění je umožněno těmi druhy sensorů (čípků) s různou spektrální citlivostí, takže když do toho teď nebudem plést tyčinky, které to komplikují, když porovnáváme různé intensity světla, ale nikoli principiálně, je barva repesentována třemi čísly. Existuje spousta způsobů, jakou representaci zvolit, některé založené na fyziologii, jiné na procesech produkujících barvy (zrovna RGB patří do té druhé kategorie a pro popis vnímání barev je naprd), ale pořád půjde o trojice.

    Takže počujte, Kefalín, čo vy si predstavujete pod takým pojmom řazení trojic?

    Zapomeň na to, že jsou to barvy.

    Jak si představuješ řazení bodů nějakého trojrozměrného tělesa?
    6.3.2012 20:43 martin
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    Nemá cenu lhát - nevím. :-)

    Do této problematiky skoro nevidím, takže mluvím maximálně na základě povrchních znalostí. Co jsem pochopil, tak tři barevné složky modelu RGB mohou dohromady dát i jiné zajímavé vlastnosti, které mohou být zastoupeny jediným číslem. A to je asi to, co hledám.

    Jinými slovy: hledám tělo funkce, do které jako parametry vstupují R, G a B. Jejím výstupem má být nějaké jedno číslo.
    6.3.2012 20:55 l4m4
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    Takovou funkci z podstaty věci nelze zkonstruovat tak, aby blízké barvy dávaly blízká čísla a současně vzdálené barvy vzdálená čísla.

    Když použiješ třeba aproximaci jasu (luma)

    0.2126*red + 0.7152*green + 0.0722*blue

    tak budou podobně jasné barvy dávat blízké číslo, ale úplně jinak vypadající zelená a růžová stejné číslo -- budou-li stejně jasné.

    Podle mne je zadání problému, pokud jsi ho popsal správně, naprostá pitomost. Tudíž ho nelze splnit smysluplně. Splnit ho lze třeba naprosto pitomým způsobem, a to použitím diskrétní trojrozměrné Hilberovy křivky v prostoru RGB, což je spojité zobrazení krychle na úsečku. Takže dostaneš čáru, na které budou všechny barvy a budou se podél ní plynule měnit, nicméně to bude naprd.
    6.3.2012 20:44 Kit
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    Podívej se také na článek o HSV. V poslední třetině jsou i potřebné vzorečky.

    Barevná stupnice se dá reprezentovat jako čára možná jen jako barevné spektrum základních barev, ale pro zobrazení všech barev budeš potřebovat gamut.
    6.3.2012 20:59 l4m4
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    HSV je z hlediska vnímání barev taky prostor na houby -- a neřeší základní nesmysl: má si tazatel vybrat H, S nebo V? Visuální rovnoměrnost barevných přechodů lze slušně zajistit třeba v prostoru Msh, ale to neřeší, že pořád má tři čísla, ne jedno.
    6.3.2012 21:10 Kit
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    Myslím si, že je to jedno. Martin už v tuto chvíli jistě tuší, že tou krychlí může protknout nějakou přímku nebo křivku a tu si pak může rozložit na stupnici. Určitě je mu jasné i to, že takových křivek je nekonečně mnoho. A nemusí zůstat jen u křivek, že?
    7.3.2012 10:17 l4m4
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    Nebo raději: Ignorujte všechno, co Filip Jirsák označí za řešení, je to měřítkem toho, že to stojí za starou belu (své vlastní příspěvky z toho nevylučuji).
    6.3.2012 20:47 mimi.vx | skóre: 37 | blog: Mimi.VX | Praha
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus

    spatne jsi pochopil to ze jejich soucet neni 255 ale  (255,0,255)  při 8 bitech na barvu ....

    USE="-gnome -kde";turris
    6.3.2012 21:04 martin
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    Možná zkusím být konkrétnější - třeba zjistíme, že mé (nikoli zákazníkovo) zadání je zbytečně složité.

    Řekněme, že vytvářím aplikaci pracující se seznamem aut. Každé auto má nějakou barvu. Aplikace tedy nabízí nějakých deset "bežných" barev, kterou lze auto označit (barvou "modrá" tedy může být označeno auto světle i tmavě modré apod.). A právě seznam těchto deseti barev potřebuju "podle barvy" seřadit.

    Poznámka: nechci to dělat ručně pro případ přidání barvy.
    6.3.2012 21:14 Kit
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    Použil bych raději pojem "třídit", asi to bude přesnější. Řadí se čísla podle velikosti nebo slova podle abecedy, ale barvy bych raději třídil.
    6.3.2012 21:14 l4m4
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    To je trochu jiný problém -- a smysluplnější. V tom případě potřebuješ

    (a) Metriku v prostoru barev. V hrubé aproximaci můžeš použít i √(ΔR² + ΔG² + ΔB²). Jinak je zapotřebí převést to do barevného prostoru s lepší metrikou (CIELAB, CIELUV a další) a počítat vzdálenosti v něm.

    (b) Algoritmus na řešení problému obchodního cestujícího, přičemž městům odpovídají barvy a vzdálenosti mezi městy jsou vzdálenosti mezi barvami podle bodu (a). Algoritmů je řada, např. simulated annealing není nejefektivnější, ale lze ho naprogramovat vcelku snadno a může dát dobrý výsledek.

    Vzorníky většího počtu barev se uspořádávají spíš po nějakých řezech prostoru barev, ale pro menší počet barev by popsaný způsob měl fungovat dobře.
    7.3.2012 10:36 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    Zapomněl jste ještě na kalibrovanou sondu pro zjišťování barvy vozidla, a samozřejmě prostory se stálým osvětlením, kde se to měření bude provádět. A celé to musí počítat nějaký výpočetní cluster, čtyři shodné výsledky z pěti budou považovány za správný výsledek, a výsledek musí být s přesností na 20 řádů. Pro zobrazení 10 fotek v e-shopu je to naprosto nezbytné.
    Řešení 1× (Bilbo)
    7.3.2012 08:31 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    Použijte nějaký barvový model, ve kterém je jako složka odstín – třeba zmíněné HSV nebo HSL. Řaďte pak primárně podle odstínu (H), sekundárně podle saturace (S) a terciárně podle světlosti nebo jasu (L, V). Předpokládám, že pro takhle malý počet barev bude sekundární a terciární řazení zbytečné, je jen pro jistotu.
    7.3.2012 10:15 l4m4
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    Jak to, že si lidi mohou označovat coby řešení vlastní příspěvky, když jsou to navíc takové kydy?

    (a) Používat prostor HSV k nčemu jinému než zobrazení vybírátka v Photoshopu může akorát někdo, kdo o kolorimetrii ví velké kulové.

    (b) Vyzkoušej si své předpoklady na typických barvách aut jako černá, bílá, stříbrná (šedivá), červená, temně modrá, světle modrá.
    7.3.2012 10:43 martin
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    Podle odstínu jsem setřídil nějakých dvacet barev. Vyšlo mi toto pořadí (neuvádím přesné hodnoty barev, je to jen pro ilustraci - bude-li ale zájem, uvedu je):

    Černá, růžová, tmavě červená, červená, bílá, šedá, béžová, hnědá, oranžová, zlatá, olivová, žlutá, zelená, tyrkysová, modrá, tmavě modrá, fialová.

    Bez ohledu na teorii barev atd. mi to "intuitivně" docela sedí - kromě černé a šedé.
    Řešení 1× (Bilbo)
    7.3.2012 11:29 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    Problém „odstínů šedi“ je v tom, že tyhle modely je chápou jako „velmi nevýrazná modrá“ apod., podle toho, která složka zrovna o malinko převáží. Otázka je, zda kvůli tomu používat nějaký ještě složitější model, nebo jestli neudělat nějakou hranici pro sytost, všechny barvy s danou a menší sytostí (tj. odstíny šedé) seřadit na začátek podle světlosti nebo jasu, a zbytek seřadit podle odstínu. Ale to záleží spíš na tom, o jaké barvy se jedná ve skutečnosti, zda tam opravdu v sytosti bude nějaký zlom.
    Josef Kufner avatar 11.3.2012 01:16 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    To "intuitivně" bych viděl asi takto.
    Hello world ! Segmentation fault (core dumped)
    pavlix avatar 7.3.2012 12:59 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    Jak to, že si lidi mohou označovat coby řešení vlastní příspěvky, když jsou to navíc takové kydy?
    IMO je slušnost nechat review příspěvku alespoň na druhém člověku, i když ani to nezaručuje kvalitu.
    (a) Používat prostor HSV k nčemu jinému než zobrazení vybírátka v Photoshopu může akorát někdo, kdo o kolorimetrii ví velké kulové.
    Důvod? Já to nepopírám, protože o kolorimetrii vím velké kulové, ale rád se nechám poučit.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    7.3.2012 10:52 martin
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    Napadlo mě ještě jedno řešení.

    Každá barva má nějakou barevnou složku z modelu RGB největší (uvažujme, že hodnota žádné složky se nemůže rovnat jiné). Určeme, že existuje toto pořadí: barvy s převládající červenou složkou, barvy s převládající zelenou složkou, barvy s převládající modrou složkou. Barvy jedné kategorie (např. barvy s převládající modrou složkou) pak řaďme podle velikosti nepřevládajících složek (pořadí si určeme).

    Mohlo by to rozumně fungovat? Zkusím si to, pak řeknu výsledek.
    7.3.2012 11:21 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Řazení barev - algoritmus
    Tím se podle mne pomalu blížíte k nějakému modelu, který používá odstín barvy.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.