Vlákno názorů k článku PNG is Not GIF od su - \mathfrak{M}ĦĒNJMARCHON - Sorry ze trocha predbieham do dalsej casti, ale...

  • Článek je starý, nové názory již nelze přidávat.
  • 7. 9. 2006 22:44

    su - \mathfrak{M}ĦĒNJMARCHON (neregistrovaný)
    Sorry ze trocha predbieham do dalsej casti, ale filtre ma dost zaujali. Nakoniec som ich vygooglil, ale zatial neviem jak ich kombinuje (a testuje) pngcrush.

    Tiez sa mi zda trocha zvlastne, ze sa pouzivaju len riadkove filtre, ale to bude asi tym, ze sa komprimuje po riadkoch. Mne by tam asi najlepsie sedel Laplacov operator (na analyzu obrazku), ten "ukaze" kompaktne oblasti, tj. oblasti s nizsimi frekvenciami, na ktore by snad dobre siel pouzit Sub/Avg. To by vyhovovalo snad vacsine "beznych" obrazkov (takych, co nie su bielym sumom).

    Druha moznost co ma napadla: kompresia je hlavne kvoli pouzitiu na webe, mozno by bol dobry napad ziskat reprezentativnu vzorku cca milion nahodnych png-ciek (aby tam boli jak fotky, tak nejake schematicke nakresy a kombinacie). Z toho by sa vytvorilo zopar statistickymi metodami niekolko (napr. 5-20) "najbeznejsich profilov", ktore by boli charakterizovane napr. tvarom histogramu, druhmi frekvencii, atd. Clovek by si pri ukladani mohol vybrat kompresny profil "fotka", "skor fotka", ..., "schematicka grafika", pretoze toto myslim clovek vidi lepsie ako nejaky algoritmus (pripadne by to ten kompresny algoritmus brute-forcol vyskusanim vsetkych najbeznejsich profilov, ze ktory z nich vyjde najlepsie co do velkosti). Mozno uz taky program existuje, neviem.

    A mozno to uz trocha moc zjednodusujem.
  • 8. 9. 2006 9:30

    Pavel Tišnovský
    Zlatý podporovatel
    Ano, v PNGcku jsou pouze radkove filtry, nektere vsak "sahaji" i o jeden radek vyse (niz nemuzou, ten neni pri dekomprimaci jeste rozbaleny). Filtr s nejvetsi informaci o svem okoli vypada tak, ze precte barvu pixelu vlevo, nahore a vlevo nahore. To uz se docela dost blizi (v mezich moznosti) k Laplaceove operatoru.

    V tom clanku jsem se vyjadril obecne - pngcrush, alespon pokud vim, nezkousi uplne vsechny moznosti, protoze na kazdy obrazek vyzkousi maximalne 124 moznosti. Pokud by mel vyzkouset vsechny moznosti, jeste by se to cislo vynasobilo poctem radku. Ted me napadlo, ze bych to vlastne mohl na nejakem mensim PNGcku vyzkouset, staci si pohrat s pnglib.

    Neco podobneho s temi profily maji komprimacni metody definovane CCITT (pro faxy a treba i pro TIFF). Je to urceno pouze pro cernobile obrazky (B&W) a metody pracuji tak, ze konsorcium CCITT ziskalo vzorky mnoha formularu, dopisu, perovek apod. - proste vseho, co se posila faxem - a z techto vzorku vlastne vytvorilo pevne dane kody pro Huffmannovo kodovani. Teda dost jsem to zjednodusil, protoze se aplikuji i dalsi metody, ale ten zaklad v profilech tam je - ziskani vzorku bitu z realneho sveta. A kupodivu to funguje, B&W obrazky jsou vetsinou zkomprimovany pomoci CCITT lepe, nez pomoci LZW ci deflate.
  • 8. 9. 2006 14:25

    Jet (neregistrovaný)
    CCITT komprese faxu je fakt skvela vec. Nic nezkompresuje obycejnou nascannovanou stranku s textem v 200DPI lip nez g3fax. Ale beda, kdyz je ta stranka moc cerna.

    Jeden dotaz - co je to "PEROVKA"?
    google nasel mimo jine
    Maps, Weather, and Airports for Perovka, Russia
    a
    Deníček. Domácí stránka uživatele perovka. Žena, 32 let, Praha
    ale nic z toho asi nebude ta vase perovka :-)
  • 8. 9. 2006 16:12

    deda.jabko (neregistrovaný)
    ta zena mozna jo... perovky doufam, ze to reknu spravne nejsem malir, jsou kresby kreslene perem... napriklad kdyz se ve skole kresli tusi
  • 8. 9. 2006 17:21

    Pavel Tišnovský
    Zlatý podporovatel
    Nevim, jestli je to jeste dnes oficialni termin, ale perovkami se oznacuji treba ruzna cernobila schematka a nakresy ve skriptech. Treba tomu rikejme "carova grafika" - hledejte line art, line-art, lineart, cartoon apod.

    Jeste pridam kus manualu k jednomu grafickemu programu:
    ---------
    Tato funkce převádí obrázek na pérovku.

    Pérovky jsou monochromní obrázky "kreslené" jen "barvami" černou a bílou. Bližší vysvětlené naleznete v kapitole "Základy, Rastrové a vektorové grafiky".

    Pérovky pocházejí například z různých kreslicích programů. Převod do pérovka může mít smyl pro vytvoření masek.

    Při převodu z barevných nebo šedotónových obrázků se ztrácí informace o barvách a stupních šedi, na zařízeních s nízkým rozlišením proto ušetříte paměť a obraz se vypočítává rychleji. Převod však má smysl jen tehdy, když víte, že se obrázek nebude muset později převést pro jiné výstupní zařízení.

    Převod barevných nebo šedotónových obrázků na pérovku uděláte vybráním obrázku a kliknutím na ikonu. Po bezpečnostním dotazu, kdy můžete zadat budoucí rozlišení obrázku a zvolit druh převodu, se konverze provede.
    ---------
  • 8. 9. 2006 15:39

    su - \mathfrak{M}ĦĒNJMARCHON (neregistrovaný)
    Hned som o nieco mudrejsi :-)

    K CCITT metodam: jednak dost pomaha ta statistika, ale druhak IMHO to, ze je to B&W obrazok. Ak sa spravne pamatam, tak ludske oko vnima hlavne jas a preto ma vacsina "zmysluplnych" obrazkov silnu korelaciu medzi R,G,B zlozkami. V RGB priestore bude asi kompresia kazdej zlozky horsia nez v YCbCr. Teda by snad bolo lepsie previest obrazok z RGB do YCbCr a analyzovat ho tam (resp. robit statistiku v tomto farebnom priestore). Pokial som googlil spravne, tak PNG nepodporuje YCbCr a po prevode RGB->YCbCr treba nejaky FX format aby sme nestratili presnost alebo povolit stratovu kompresiu.
  • 8. 9. 2006 17:25

    Pavel Tišnovský
    Zlatý podporovatel
    Prevod z RGB do YCbCr se dela napriklad v JPEGu, ale CCITT bylo puvodne vytvoreno pro opravdove B&W obrazky, tj. mezi tim B a W uz nic neni :-) Zadne stupne sedi, pouze cerna a bila, 1 bit na pixel. I na techto obrazcich je CCITT vetsinou lepsi nez jine komprimacni metody, ale to je logicke, protoze jak deflate (PNG), tak i LZW (GIF) jsou vlastne strasne hloupe a "nevi", ze komprimuji obrazova - tj. prostorove usporadana - data. Trosku se da pomoci temi radkovymi filtry v PNG, ale stale to neni ono, ta dalsi "znalost", kterou ma CCITT tam proste chybi.