JBIG2 - JBIG2

JBIG2
Vyvinuto Společná dvouúrovňová skupina odborníků na obrázky
Poslední vydání
2
Obsahuje Přenosný formát dokumentu , FAX
Standard ITU T.88 a ISO / IEC 14492

JBIG2 je standard komprese obrazu pro dvouúrovňové obrázky , vyvinutý skupinou Joint Bi-level Image Experts Group . Je vhodný pro bezeztrátovou i ztrátovou kompresi. Podle tiskové zprávy skupiny JBIG2 ve svém bezztrátovém režimu obvykle generuje soubory 3–5krát menší než Fax Group 4 a 2–4krát menší než JBIG , předchozí standard dvouúrovňové komprese vydaný skupinou. JBIG2 byl vydán v roce 2000 jako mezinárodní standard ITU T.88 a v roce 2001 jako ISO / IEC 14492.

Funkčnost

V ideálním případě bude kodér JBIG2 segmentovat vstupní stránku na oblasti textu, oblasti obrázků polotónů a oblasti jiných dat. Regiony, které nejsou ani textové, ani polotónové, jsou obvykle komprimovány pomocí kontextově závislého aritmetického kódovacího algoritmu nazývaného kodér MQ. Textové oblasti jsou komprimovány následovně: pixely popředí v oblastech jsou seskupeny do symbolů. Poté se vytvoří a zakóduje slovník symbolů, obvykle také pomocí kontextově závislého aritmetického kódování, a oblasti se zakódují popisem, které symboly se kde vyskytují. Typicky bude symbol odpovídat znaku textu, ale to metoda komprese nevyžaduje. U ztrátové komprese lze rozdíl mezi podobnými symboly (např. Mírně odlišnými dojmy stejného písmene) opomenout; pro bezeztrátovou kompresi je tento rozdíl brán v úvahu komprimací jednoho podobného symbolu pomocí jiného jako šablony. Obrázky polotónů mohou být komprimovány rekonstrukcí obrazu ve stupních šedi, použitého pro generování půltónů, a poté odesláním tohoto obrázku společně se slovníkem vzorů polotónů. Celkově je algoritmus používaný JBIG2 ke kompresi textu velmi podobný schématu komprese JB2 používaného ve formátu souboru DjVu pro kódování binárních obrázků.

Soubory PDF verze 1.4 a vyšší mohou obsahovat data komprimovaná JBIG2. Open-source dekodéry pro JBIG2 jsou jbig2dec, jbig2-imageio založené na java a dekodér nalezený ve verzích 2.00 a vyšších xpdf . Kodér s otevřeným zdrojovým kódem je jbig2enc.

Technické údaje

Dvouúrovňový obrázek se obvykle skládá hlavně z velkého množství textových a polotónových dat, ve kterých se opakovaně objevují stejné tvary. Dvouúrovňový obrázek je rozdělen do tří oblastí: textové, polotónové a obecné oblasti. Každá oblast je kódována odlišně a metodiky kódování jsou popsány v následující pasáži.

Textová obrazová data

Kódování textu je založeno na povaze lidské vizuální interpretace. Lidský pozorovatel nedokáže rozeznat rozdíl mezi dvěma instancemi stejných postav na dvouúrovňovém obrázku, přestože se nemusí přesně shodovat pixel po pixelu. Proto je třeba místo kódování bitmap každého výskytu stejného znaku jednotlivě kódovat pouze bitmapu jedné reprezentativní instance znaku. Pro každou instanci znaku je kódovaná instance znaku uložena do „slovníku symbolů“. Pro textová obrazová data existují dvě metody kódování: párování a nahrazování vzorů (PM&S) a měkké párování vzorů (SPM). Tyto metody jsou uvedeny v následujících podsekcích.

Blokové diagramy (levé) metody porovnávání a substituce vzorů a (pravé) metody shody měkkých vzorů
Porovnání vzorů a substituce
Po provedení segmentace obrázku a hledání shody, a pokud shoda existuje, kódujeme rejstřík odpovídající reprezentativní bitmapy ve slovníku a pozici znaku na stránce. Pozice je obvykle relativní vůči jinému dříve kódovanému znaku. Pokud není nalezena shoda, segmentovaný blok pixelů je kódován přímo a přidán do slovníku. Typické postupy shody vzorů a substitučního algoritmu jsou zobrazeny v levém blokovém diagramu obrázku výše. Přestože metodou PM&S lze dosáhnout vynikající komprese, při nízkém rozlišení obrazu mohou během procesu docházet k substitučním chybám.
Měkké přizpůsobení vzoru
Kromě ukazatele na slovník a informací o poloze znaku jsou požadována také data upřesnění, protože jde o zásadní informaci použitou k rekonstrukci původního znaku v obrázku. Nasazení dat upřesnění může způsobit, že výše uvedená chyba nahrazování znaků bude vysoce nepravděpodobná. Data upřesnění obsahují aktuální požadovanou instanci znaku, která je kódována pomocí pixelů aktuálního znaku a shodného znaku ve slovníku. Protože je známo, že aktuální instance znaku je ve vysoké korelaci s odpovídajícím znakem, je predikce aktuálního pixelu přesnější.

Polotóny

Obrázky polotónů lze komprimovat dvěma způsoby. Jedna z metod je podobná algoritmu aritmetického kódování založeného na kontextu , který adaptivně umísťuje pixely šablony, aby získal korelace mezi sousedními pixely. Ve druhé metodě se na obrázku polotónů provede odstranění obrazovky, takže se obrázek převede zpět na stupně šedi. Převedené hodnoty ve stupních šedi se poté použijí jako indexy malých bitmapových vzorů pevné velikosti obsažených ve slovníku polotónových bitmap. To umožňuje dekodéru úspěšně vykreslit obraz polotónů prezentací rastrových vzorů indexovaných slovníků sousedících navzájem.

Aritmetické kódování entropie

Všechny tři typy oblastí včetně textu, polotónů a generických oblastí mohou všechny používat aritmetické kódování. JBIG2 konkrétně používá kodér MQ , stejný kodér entropie používaný JPEG 2000 .

Patenty

Patenty pro JBIG2 jsou ve vlastnictví společností IBM a Mitsubishi. Bezplatné licence by měly být k dispozici po žádosti. Patenty JBIG a JBIG2 nejsou stejné.

Nevýhody

Při použití ve ztrátovém režimu může komprese JBIG2 potenciálně změnit text způsobem, který není rozpoznatelný jako poškození. To je v kontrastu s některými jinými algoritmy, které jednoduše degradují na rozostření, čímž jsou artefakty komprese zřejmé. Protože se JBIG2 pokouší spojit podobně vypadající symboly, mohou být nahrazena například čísla „6“ a „8“.

V roce 2013 bylo hlášeno, že na mnoha kopírovacích a tiskařských strojích Xerox Workcentre došlo k různým náhradám (včetně nahrazení „6“ „8“) , kde mohla být potenciálně změněna čísla vytištěná na naskenovaných (nikoli však OCRed ) dokumentech. To bylo prokázáno na konstrukčních plánech a některých tabulkách čísel; stručně byl zmíněn potenciální dopad takových substitučních chyb v dokumentech, jako jsou lékařské předpisy . David Kriesel a Xerox to vyšetřovali.

Společnost Xerox následně uznala, že se jedná o dlouhotrvající softwarovou vadu, a jejich původní prohlášení naznačující, že substituci může zavést pouze jiné než tovární nastavení, byla nesprávná. Záplaty, které komplexně řeší problém, byly zveřejněny později v srpnu, ale nebyl učiněn žádný pokus o odvolání nebo pověření aktualizací dotčených zařízení - což bylo uznáno za vliv na více než tucet produktových řad. Dokumenty, které byly dříve naskenovány, mohou i nadále obsahovat chyby, takže jejich pravdivost je obtížné doložit. Německé a švýcarské regulační orgány následně (v roce 2015) zakázaly kódování JBIG2 v archivních dokumentech.

Reference

externí odkazy