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í
×

    dnes 12:44 | IT novinky

    Nizozemská vláda ve snaze šetřit a zvyšovat efektivitu s využitím umělé inteligence (AI) hodlá zrušit asi 25.000 pracovních míst ve státní správě. Cílem je postupně dosáhnout ročních úspor až 3,5 miliardy eur (85,2 miliardy Kč). Na konci loňského roku ve státní správě pracovalo rekordních 160.000 lidí. „Nemůžeme pokračovat v tom, co jsme dělali dosud,“ uvedl státní tajemník pro efektivní fungování vlády Eric van den Burg. „Proto

    … více »
    Ladislav Hagara | Komentářů: 8
    dnes 12:00 | IT novinky

    Příspěvek na blogu PRUSA 3D představuje fotoaparát CAIM1 (Counter Artificial Intelligence Machine 1). Uměle vytvořený obsah je každým dnem těžší rozeznat od skutečných záběrů či fotografií, což podrývá důvěryhodnost žurnalistiky, archivních materiálů i každodenní tvorby obsahu. Fotoaparát CAIM1 byl vyvinut právě k tomu, aby ověřoval původ fotografií a videí přímo během jejich pořizování. Uvnitř fotoaparátu se nachází hardwarová Web3 peněženka se zabezpečovacím čipem Tropic Square TROPIC01.

    Ladislav Hagara | Komentářů: 3
    dnes 00:11 | Nová verze

    Jonathan Thomas oznámil vydání nové verze 4.1 video editoru OpenShot (Wikipedie). Zdrojové kódy OpenShotu jsou k dispozici na GitHubu. Ke stažení je i balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo na spouštění a spustit.

    Ladislav Hagara | Komentářů: 0
    včera 23:33 | Zajímavý článek

    Při běžné migraci virtuálního stroje mezi hypervizory se jeho MAC adresa přesune na jiný leaf switch. EVPN tuto změnu distribuuje pomocí BGP Type-2 route a MAC mobility sequence number. Problém nastává, pokud útočník podvrhne zdrojovou MAC adresu jiného zařízení. Leaf může změnu interpretovat jako legitimní přesun MAC a rozšířit ji přes BGP do celé fabric. Výsledkem může být přesměrování provozu určeného původnímu zařízení. Autor článku rozebírá možnosti detekce pomocí sledování MAC moves, BGP route reflektorů a kontroly na přístupové vrstvě.

    vencour | Komentářů: 0
    včera 15:11 | Nová verze

    Vývojáři desktopového prostředí Enlightenment (Wikipedie) a souvisejících knihoven Enlightenment Foundation Libraries (EFL) vydali nové verze. Enlightenment byl vydán ve verzi 0.28.0 a Enlightenment Foundation Libraries ve verzi 1.29.

    Ladislav Hagara | Komentářů: 4
    včera 13:55 | Zajímavý článek

    Cloudflare zjistil, že některé odpovědi modelu GLM-5.3 obsahovaly části dat z předchozích požadavků jiných zákazníků. Příčinou byla kombinace chybné konfigurace a chyby v inference enginu SGLang. Model podporoval kontextové okno 1 048 576 tokenů, ale GPU KV cache pool měl kapacitu pouze 681 280 tokenů. Při překročení kapacity docházelo k nesprávnému zpracování odmítnutého požadavku. Decode část systému následně pracovala se starými

    … více »
    vencour | Komentářů: 2
    včera 13:00 | Zajímavý článek

    Vývojáři Knot Resolver vysvětlují, jak změnili rozhodování o tom, které DNS záznamy ponechat v cache a které odstranit. Článek obsahuje skutečná měření: devět hodin DNS provozu při 2 000 QPS, srovnání cache o velikosti 25 MB a 40 GB a také porovnání s BIND 9, kromě algoritmů obsahuje konkrétní doporučení pro konfiguraci a diagnostiku.

    vencour | Komentářů: 0
    30.10. 13:44 | IT novinky

    Největší kryptoměnová burza světa Binance se stala terčem útoku, při kterém podvodníci odcizili během několika minut kryptoměny v hodnotě přibližně 6,3 miliardy dolarů. Jedná se o největší kryptoměnovou krádež v historii, přibližně čtyřikrát větší než loňský útok na burzu Bybit. Binance se podařilo ve spolupráci s partnery zmrazit aspoň aktiva v hodnotě zhruba 3 miliard dolarů a slíbila, že veškeré ztráty pokryje z vlastních prostředků.

    Ladislav Hagara | Komentářů: 16
    30.10. 02:16 | Bezpečnostní upozornění

    Zranitelnost CVE-2026-98432 s CVSS 9.8 odhalila AI od společnosti Anthropic. Jedná se o kritickou chybu v implementaci MPTCP (multipath TCP). Debian vydal patche 16.10. a 22.10., ale např. Ubuntu je zatím bez opravy. Více informací na The Hacker News.

    Max | Komentářů: 20
    29.10. 23:22 | Zajímavý software

    Na Slovensku vznikla úplne nová rally hra, ktorá je zadarmo a funguje vo Windowse, Linuxe či na Macu. Greenie Rally má viac ako 50 tratí a vozidiel, šampionáty či turnaje. Má retro feeling a imituje automobilové hry z prelomu tisícročí. Vyskúšate prejsť všetky mapy na Škode 130RS?

    Stanislav Hoferek | Komentářů: 14
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (20%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2962 hlasů
     Komentářů: 34, poslední 26.10. 08:24
    Rozcestník
    Štítky: není přiřazen žádný štítek


    Vložit další komentář
    28.4.2012 22:17 XSSds
    Rozbalit Rozbalit vše Re: RGB->YUV
    Mozem poprosit x86-16 a x86-128 bitovu verziu?
    Jardík avatar 28.4.2012 22:45 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: RGB->YUV
    Můžete
    Věřím v jednoho Boha.
    28.4.2012 22:41 User682 | skóre: 38 | blog: aqarium | Praha
    Rozbalit Rozbalit vše Re: RGB->YUV
    zdravim,

    dam Vam jenom inspiraci na hledani, ale ne reseni.

    Kdysi jsem prochazel git repositar ffmpeg projektu a je tam vcelku dost asembleru na ruzne konverze. Mozna, ze tam je neco co hledate.

    gf
    28.4.2012 22:54 Miriam
    Rozbalit Rozbalit vše Re: RGB->YUV
    Ahoj, ještě pořád nemáš holku? Moje nabídka stále platí, nezajdem někam na drink?
    Josef Kufner avatar 28.4.2012 23:54 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: RGB->YUV
    Řekl bych, že ta první otázka je vzhledem k obsahu zápisku celkem zbytečná ;-)
    Hello world ! Segmentation fault (core dumped)
    28.4.2012 23:59 Miriam
    Rozbalit Rozbalit vše Re: RGB->YUV
    Jsem slušná holka, né děvka. K tomu patří i formality ;)
    29.4.2012 00:00 Miriam
    Rozbalit Rozbalit vše Re: RGB->YUV
    A vlastně bych už měla jít spát. Tak pa a brou noc
    29.4.2012 00:14 blizzz | blog: Filmy
    Rozbalit Rozbalit vše Re: RGB->YUV
    Áno, určite si holka ale s kokotom :D
    29.4.2012 00:20 XSSds
    Rozbalit Rozbalit vše Re: RGB->YUV
    Ba dum tsss ... LOL True Story :D
    29.4.2012 00:55 blizzz | blog: Filmy
    Rozbalit Rozbalit vše Re: RGB->YUV
    čo tým chcel básnik povedať?
    Ha - ha - ha.
    Josef Kufner avatar 29.4.2012 00:27 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: RGB->YUV
    Však to samozřejmě. Jsem tím ani nic nevhodného nemyslel ;-)
    Hello world ! Segmentation fault (core dumped)
    Jardík avatar 29.4.2012 02:29 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: RGB->YUV
    Promiň, ale já nemůžu, mám poruchu osobnosti. Leda bys chtěla pejska, kterého bys ráda krmila a zbytek dne bys si ho nevšímala aby si mohl vklidu omílat, že je život zbytečnej a že nemá smysl chodit do práce, protože za chození do práce musíš platit nadlidem u koryta.
    Věřím v jednoho Boha.
    29.4.2012 00:07 Vskutečnosti Saýc | skóre: 7
    Rozbalit Rozbalit vše Re: RGB->YUV
    Premyslim jak rychle by o zvladla CUDA.
    29.4.2012 00:24 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: RGB->YUV
    Moc tomu nerozumím a proto se předem omlouvám za blbosti.

    Ale pokud vím, v tomto systém je U a V barevná složka, která se odvozuje od jasové složky.

    Tedy po výpočtu jasové složky stačí:

    U = konstanta * (B - Y')

    V = konstanta * (R - Y')

    Přijde mi zbytečné rozepisovat to násobením přes plnou transformační matici.
    29.4.2012 00:26 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: RGB->YUV
    U = 0,4921 * (B - Y')

    V = 0,8773 * (R - Y')
    Josef Kufner avatar 29.4.2012 00:34 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: RGB->YUV
    Jo, jo... a na Wikipedii je těch (podobně jednoduchých) vzorečků spousta.

    Btw, pár desítek let staré televize tenhle převod počítají analogově a stíhají to v reálném čase ;-)
    Hello world ! Segmentation fault (core dumped)
    29.4.2012 01:05 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: RGB->YUV
    Analogové operace jsou mnohonásobně rychlejší a efektivnější než digitální operace. V tomto případě je to i primitivní elektronický obvod.

    Ale hw obvod navržený na míru by to spočítal i digitálně v reálném čase.

    Ostatně to, že analogové obvody mají vyšší rychlosti i kapacitu (ale nižší odolnost proti šumu a ztrátě informací) už je znovuobjeven. Takové SSD disky a flashky už v zásadě nezaznamenávají informaci digitálně (pokud nejsou SLC) ale v zásadě analogově (MLC). Navyšuje to kapacitu, ale zhoršuje stabilitu uložených dat a rychleji to ztrácí data.

    Kromě šumu je analogová technika ve všech vlastnostech o mnoho řádů napřed. To co se dá v analogové technice vyřešit součástkami za 10 Kč, na vyřešení stejné operace v digitální technice je potřeba stroj za sto tisíc dolarů a ještě bude pokulhávat za analogem.

    Analogová elektronika je dokonce schopná řešit diferenciální rovnice v reálném čase.
    Kromě šumu je analogová technika ve všech vlastnostech o mnoho řádů napřed. To co se dá v analogové technice vyřešit součástkami za 10 Kč, na vyřešení stejné operace v digitální technice je potřeba stroj za sto tisíc dolarů a ještě bude pokulhávat za analogem.
    Pokud si vyberete jednu z těch několika málo operací, které se dají analogově snadno realizovat, tak ano :-)

    Ale rád se nechám přesvědčit – stačí, když ukážete, jak jednoduše analogově spočítat RSA :-)
    30.4.2012 01:39 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
    Rozbalit Rozbalit vše Re: RGB->YUV
    No já nevím, není náhodou MLC pouze soustava o jiném základu než 2?

    BTW ono záleží na rychlosti. S operačníma zesilovačema bys měl docela problém pro rychlost operací frekvencí xGHz. Resp ty operáky by asi nestály 10Kč.
    30.4.2012 02:14 ustp
    Rozbalit Rozbalit vše Re: RGB->YUV
    Trochu demagogie s tema ssd. MLC bunky pouzivaj vic napetovejch urovni, ale porad ukladaj digitalni data.
    30.4.2012 20:16 Ondrej 'SanTiago' Zajicek
    Rozbalit Rozbalit vše Re: RGB->YUV
    Presne tak, 'digitalni' obvykle znaci, ze vyznamy jsou prirazene diskretnim urovnim, nikoliv ze tech urovni musi byt pouze 2. Pouziti vice diskretnich urovni neni neobvykle (napr. 100Mbps a 1Gbps ethernet).
    1.5.2012 00:11 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
    Rozbalit Rozbalit vše Re: RGB->YUV
    Vlastně i výstup z DAC by byl před low pass filtrem diskrétní.
    1.5.2012 21:38 Ondrej 'SanTiago' Zajicek
    Rozbalit Rozbalit vše Re: RGB->YUV
    To vicemene ano, ale nemel diskretne definovane urovne.
    2.5.2012 01:20 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
    Rozbalit Rozbalit vše Re: RGB->YUV
    No leda přes dílky z nějakého Vref.
    30.4.2012 02:24 kralyk z abclinuxu | skóre: 29 | blog:  
    Rozbalit Rozbalit vše Re: RGB->YUV
    Hmm, tohle bylo lepší než obvyklé statě o C++ :-D
    Agent avatar 1.5.2012 17:09 Agent | blog: Life_in_Pieces | HC city
    Rozbalit Rozbalit vše Re: RGB->YUV
    Možná trochu OT, ale připomělo mi to, jak v Amáru vycházel návod na videotitulkovač někdy v polovině 90 let. Bedna plná integráčů a jediný co to umělo byly titulky. Netrvalo dlouho a takováto udělátka ztratila smysl. Jediná výhoda možná byla, že to bylo levnější než tehdejší PC s MPEG2 kartou.
    Nevěděl zpočátku, co si počít, jak žít, co dělat, ale brzy se vpravil do role samotáře.
    29.4.2012 01:28 Vskutečnosti Saýc | skóre: 7
    Rozbalit Rozbalit vše Re: RGB->YUV
    No staci si vsimnout, ze jardik zpracuje tricetisekundove video za necele ctyri sekundy, coz na realny cas spokojene staci.
    29.4.2012 03:21 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: RGB->YUV
    Nikdo se ani slovem nevyjádřil, že jardík nestíhá v reálném čase.

    Možná by si stačilo všimnout, že řeč byla o tom, že jakýsi předpotopní televizáč to stíhá v reálném čase.

    A možná by si stačilo všimnout, že nebyla jakákoli zmínka o jardíkovi, jeho algoritmu ani srovnávání rychlostí.

    Jinak řečeno, chápání psaného textu, nic moc. Doučte se to, studente a trénujte.
    29.4.2012 11:46 Vskutečnosti Saýc | skóre: 7
    Rozbalit Rozbalit vše Re: RGB->YUV
    Mozna by si stacilo vsimnout, na ktery prispevek odpovidam. Napoveda: neni to ten Vas.
    Jardík avatar 29.4.2012 03:38 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: RGB->YUV

    Mým výsledkem má být yuv420, pro každé 4 pixely (2x2) je tam jeden U a jeden V. Takže když mám pro 4 pixely už 4 Y', tak abych mohl použít ten vzorec řekněme pro U, musel bych nejdříve zprůměrovat B hodnoty pro ty 4 pixely, zprůměrovat Y hodnoty pro ty pixely a použít vzorec.

    Momentálně to dělám tak, pro každý pixel vypočítám Y, zprůměruju rgb hodnoty pro 2x2 sousední pixely a spočtu U. Pravděpodobně by mi použítí "jednodušší" vzorce v tomto případě moc nepomohlo. Leda bych U nepočítal z průměrů ale pouze z jednoho pixelu, ale pak bych asi nedostal hezký výsledek.

    Věřím v jednoho Boha.
    29.4.2012 04:14 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: RGB->YUV
    Jak jsem psal, nerozumím tomu do detailu.

    Nemusíte průměrovat nic, prostě hodnoty sečtete a to bude 4× požadovaná hodnota. Konstanty podle toho upravíte.

    Rovnou se přiznám, že kódy v článku jsme moc neluštil. Chybí mi další informace jako definice struktury a vůbec nějaké komentáře, takže jsem to jenom přelétl.

    Něčemu málo rozumím, ale ne celku. Nerozumím přesně v jakém formátu a rozsahu chodí vstupní RGB data.

    Ale jednu věc vím zcela určitě. Volba lepšího algoritmu a pohrání si s matematikou dává mnohem větší zrychlení, než ďábelsky kódovat nanosekundy pomocí asm. Možná se ukáže, že to není k ničemu.

    Určitě bych si vzal základní „atom“, tedy nejmenší pravidelný rámec, který mám vyrobit. Nejdříve bych si pohrál matematicky, pak by se snažil převést do bajtových operací tak, aby se to šikovně optimalizovalo. Neoptimalizoval bych jeden bod, ale celý nejmenší blok, který se pravidelně opakuje.

    Mám trochu pocit z článku, že náhodně hledáte vzorce a že v matematice plavete a tak se snažíte ďábelsky kódovat ty nanosekundy.

    Pochopit ty vzorce je jednoduché. Transformační matice s převodem na int počítání a posun je dělána právě pro SIMD, kde jsou tyhle nadbytečné operace vcelku zdarma. I proto Vám v klasickém C vyšel mnohem pomalejší algoritmus, protože jste tam rval věci optimalizované pro SIMD operace.

    Jardík avatar 29.4.2012 04:52 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: RGB->YUV
    Tenhle obrázek z wiki je můj výstupní formát.

    Vstup jsou za sebou jdoucí pixely B8G8R8A8 s tím, že celý obraz je vzhůru nohama (tak ho vrátí glReadPixels).
    Věřím v jednoho Boha.
    29.4.2012 14:13 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: RGB->YUV
    Snad rozumím. Pro jistotu popíšu:

    V zásadě se tedy kódují po čtveřicích pixelů. U každé čtveřice pixelů (čtverec 2×2 body) se spočítá Y', tedy vyjdou čtyři bajty Y'. Dále se ale pro celou čtveřici pixelů spočítá jen jedno U a následně jedno V.

    Celá čtveřice bodů, které přijdou jako 16 bajtů RGBA se zakódují do šesti bajtů Y'1, Y'2, Y'3, Y'4, U, V.

    Analogová hodnota Y' se pohybuje v rozsahu od 0 do 1, a transformuje se do bajtu Y' jako hodnota od 16 do 235. Hodnoty pod 16 a nad 235 se nepoužívají a těchto hodnot nemohou uložené bajty Y' nikdy nabýt.

    29.4.2012 14:43 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: RGB->YUV
    Co takhle?

    Spočítat pro každou čtveřici pixelů Y':

    Y' = (66R + 129G + 25B) >> 8 + 16;

    Ale algoritmus bych přepsal takto:

    ===============================================

    Varianta 1 pro extrémní šetření pamětí:

    a) Udělal bych si 128 KB velkou předpočítanou tabulku, tedy pole o 64 K prvcích, každý prvek by obsahovat 2 bajtovou hodnotu.

    index_1 = B + 256 * G; pole_1[index_1] = (16 * 256 + 25 * B + 129 * G);

    b) Udělal bych si druhou 512 B velkou předpočítanou tabulku:

    index_2 = R; pole_2[index_2] = (66 * R);

    c) Výsledné Y' bych spočítal jako:

    Y' = (pole_1[index_1] + pole_2[index_2]) >> 8;

    ===============================================

    Nejrychlejší varianta 2 pro zabrání 16 MB RAM (dnes mají počítače několik GB RAM):

    a) předpočítanou tabulku pro převod:

    index = B + 256 * G + 65536 * R (tedy nic počítat nemusíte, pouze použijete bajty B,G,R tak jak na intel procesorech leží) pole[index] = výsledná hodnota Y' bajtu

    29.4.2012 10:09 kutr
    Rozbalit Rozbalit vše Re: RGB->YUV
    Jak jsem psal, nerozumím tomu do detailu. Ale jednu věc vím zcela určitě. Volba lepšího algoritmu a pohrání si s matematikou dává mnohem větší zrychlení, než ďábelsky kódovat nanosekundy pomocí asm. Možná se ukáže, že to není k ničemu.
    Jenže Jardík obvykle jde cestou předčasné optimalizace a ukazuje nám proč se nemá dělat. (viz. jeho starší blog kde ďábelsky optimalizoval v ASM, až se dostal na stejný čas jako naivní C program)
    29.4.2012 16:11 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: RGB->YUV
    Mě naučili, co to je skutečná optimalizace, a jak efektivně matematické záležitosti a algoritmy mohou fungovat až na vysoké škole.

    Do té doby jsem také optimalizoval asm.

    Jenže díky bohu za to. Protože jsem se naučil optimalizovat algoritmy pro procesor a programovací jazyky a pak později i na úrovni algoritmů.

    To je mimochodem z jeden důvodů, proč je dobré udělat vysokou školu. Naučíte se spoustu věcí, na které nikdy nepřijdete (protože Vás k tomu nikdo nebude nutit a protože to nikdo kolem vás nebude znát). Uděláte skok o desítky let dopředu oproti stavu kdy se budete učit pouze praxí.

    Jardík si možná prošlápne cestu jak se to dělat nemá, ale jako vedlejší efekt se naučí být machr v postalgoritmické optimalizaci. Navíc ho to baví.

    Časem na to přijde a bude machr po všech stránkách.

    Nemůžete být v něčem dobří, pokud nejdete občas vedlejšími cestami, neděláte chyby a nevyzkoušíte si i co nefunguje.

    Ale Jardíkův zápal se mi strašně líbí.

    29.4.2012 21:01 anon
    Rozbalit Rozbalit vše Re: RGB->YUV
    Fajnovy posledni odstavce.

    Kazdopadne s tou vs nemohu souhlasit - me vs co se tyka odbornych znalosti dala temer nic. Nadruhou stranu jsem mel hromadu volnyho casu ve kterem jsem mohl sam nabrat hodne cenych zkusenosti h oboru I mimo. I kdyz vlastne kurzy mimo it mi daly zabrat no it me akorat trapilo ze to vsecho jsem se naucil sam uz pred x rokama a kdy jako budem delat neco zajimavyho.
    29.4.2012 00:59 Kvakor
    Rozbalit Rozbalit vše Re: RGB->YUV
    Kdyby to bylo YUV na RGB, tam to jsem před lety dělal a někde jsem našel a přepsal rutinu, která mohutně používá přetpočítané tabulky a ve vnitřením cyklu je jenom sčítaní, bitové posuvy a vytažení hodnoty z tabulky. Rozdíl mezi verzí co v cyklu počítala podle vzorečku a tou s předpočítanými tabulkami byl tenkrát asi o řád. Na druhou stranu, dnešní procesory jsou vůči pamětem tak rychlé, že násobení může vyjít levněji než načtení hodnoty z paměti. I tak budu komentovat jen céčkovou část:

    Aby se vyhodilo násobení z hlavniho cyklu, stačilo by předpočítat si dopředu tabulky pro každou hodnotu Y, Cr a Cb místo násobení uvnitř maker RGB_TO_YCbCrJPEG_* a pošoupnout všechno doprava až v okamžiku, kdy se ukládá finální hodnota (popř. to procpat ještě přes nějakou tabulku, co by dělala clipping). Dá se tím i zaokrouhlovat, pokud se dobře nastaví konstanta, co se přičítá před posuvem.

    Nebo možná udělat "unrolling" toho chroma subsamplingu a vecpal do něj i počítání luminance, protože mám pocit, že by to méně zaplácávalo cache - pokud už je některá hodnota z paměti načtená, měla by být využitá až "do mrtě". A to pošoupnutí ">> 2" u onoho supsamplingu se mi také moc nelíbí, protože to se může bez ztráty kytičky udělat až na konci a získámé tím trochu vyšší přenost.

    No a ještě bych nejspíš držel dva ukazatele do RGB pole from, pošouplé o th->stride a jenom je inkrementoval, protože i když z toho překladač udělá nepřímé adresování, stále to bude sahat do paměti. To samé i u výsledného Y a th->yw.
    29.4.2012 01:10 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: RGB->YUV
    Já bych reálně počítal Y' z RGB.

    Pak bych udělal předpočítané tabulky (B,Y')->U a (R,Y')->V.

    Bedňa avatar 29.4.2012 02:41 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: RGB->YUV
    Jardíku držím palce.
    KERNEL ULTRAS video channel >>>
    mirec avatar 29.4.2012 09:41 mirec | skóre: 33 | blog: mirecove_dristy | Poprad
    Rozbalit Rozbalit vše Re: RGB->YUV
    Držím palec. Práve riešim real time renderovanie OpenGL do YUV streamu s následným enkódovaním do MPEG2 a vysielaním cez rtmp.
    LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon
    29.4.2012 16:34 Miloslav Ponkrác
    Rozbalit Rozbalit vše Re: RGB->YUV
    Tak jsem prostudoval ITU dokument.

    Pochopil jsem, proč se výpočet počítá transformační maticí a nikoli odčítáním. Protože výsledné Y' je jen přibližným zaokrouhlením a celý výpočet se počítá na integerech jako fixed point čísla.

    Použití bajtu Y' by přidalo do výpočtu zaokrouhlovací chybu (výsledek by se mohl lišit o jedničku nahoru nebo dolů od skutečné hodnoty). Výpočet by se tedy musel prováděl na 16bitovém integeru namísto 8bitovém bajtu.

    Tedy výpočet Y' by pak do výpočtu U a V vstoupit jako celé fixed point číslo (16bitový integer) – tedy Y' před rotací doprava o 8 bitů.

    18.5.2012 07:38 Duff
    Rozbalit Rozbalit vše Re: RGB->YUV
    Pro výpočet pomocí procesoru by se to dalo pěkně paralelizovat. Matice by se rozdělila na počet částí jako procesorů/jader.

    A ještě lepší možnost je to počítat pomocí grafiky a pixel shaderů. I na smartfounech to půjde v reálném čase 30 snímků za sekundu.

    Založit nové vlákno • Nahoru

    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.