JBIG2

JBIG2
Internet media typeimage/x-jbig2
Developed byJoint Bi-level Image Experts Group
Latest release
2
Contained byPortable Document Format, FAX
StandardITU T.88 & ISO/IEC 14492

JBIG2 is an image compression standard for bi-level images, developed by the Joint Bi-level Image Experts Group. It is suitable for both lossless and lossy compression. According to a press release[1] from the Group, in its lossless mode JBIG2 typically generates files 3–5 times smaller than Fax Group 4 and 2–4 times smaller than JBIG, the previous bi-level compression standard released by the Group. JBIG2 was published in 2000 as the international standard ITU T.88,[2] and in 2001 as ISO/IEC 14492.[3]

Functionality

Ideally, a JBIG2 encoder will segment the input page into regions of text, regions of halftone images, and regions of other data. Regions that are neither text nor halftones are typically compressed using a context-dependent arithmetic coding algorithm called the MQ coder. Textual regions are compressed as follows: the foreground pixels in the regions are grouped into symbols. A dictionary of symbols is then created and encoded, typically also using context-dependent arithmetic coding, and the regions are encoded by describing which symbols appear where. Typically, a symbol will correspond to a character of text, but this is not required by the compression method. For lossy compression the difference between similar symbols (e.g., slightly different impressions of the same letter) can be neglected; for lossless compression, this difference is taken into account by compressing one similar symbol using another as a template. Halftone images may be compressed by reconstructing the grayscale image used to generate the halftone and then sending this image together with a dictionary of halftone patterns.[4] Overall, the algorithm used by JBIG2 to compress text is very similar to the JB2 compression scheme used in the DjVu file format for coding binary images.

PDF files versions 1.4 and above may contain JBIG2-compressed data. Open-source decoders for JBIG2 are jbig2dec[5] (AGPL), the java-based jbig2-imageio[6] (Apache-2), the JavaScript-based jbig2.js[7] (Apache-2), and the decoder by Glyph & Cog LLC found in Xpdf and Poppler[8] (both GPL). An open-source encoder is jbig2enc[9] (Apache-2).

Technical details

Typically, a bi-level image consists mainly of a large amount of textual and halftone data, in which the same shapes appear repeatedly. The bi-level image is segmented into three regions: text, halftone, and generic regions. Each region is coded differently and the coding methodologies are described in the following passage.

Text image data

Text coding is based on the nature of human visual interpretation. A human observer cannot tell the difference between two instances of the same characters in a bi-level image even though they may not exactly match pixel by pixel. Therefore, only the bitmap of one representative character instance needs to be coded instead of coding the bitmaps of each occurrence of the same character individually. For each character instance, the coded instance of the character is then stored into a "symbol dictionary".[10] There are two encoding methods for text image data: pattern matching and substitution (PM&S) and soft pattern matching (SPM).[11]

Block diagrams of (left) pattern matching and substitution method and (right) soft pattern matching method

Pattern matching and substitution (PM&S) is the more classic coding method. The encoder performs image segmentation to isolate character-sized chunks. For each individual chunk, the encoder looks for a match in the bitmap dictionary. If a match exists, we code an index of the corresponding representative bitmap in the dictionary and the position of the character on the page. The position is usually relative to another previously coded character. If a match is not found, the segmented pixel block is coded directly and added into the dictionary. Typical procedures of pattern matching and substitution algorithm are displayed in the left block diagram of the figure above. Although the method of PM&S can achieve outstanding compression, substitution errors could be made during the process if the image resolution is low.[11]

JBIG2 improves on PM&S with optional soft pattern matching (SPM). The same segmentation and searching is performed, but for each found match, the encoder saves not only the corresponding dictionary entry, but also refinement data describing the difference between the actual chunk and the dictionary chunk. Doing so greatly reduces substitution errors.[10][a] Since the dictionary match requires that the actual character and the dictionary character are highly similar, SPM only adds a tiny amount of data.[11]

Halftones

Halftone images can be compressed using two methods. One of the methods is similar to the context-based arithmetic coding algorithm, which adaptively positions the template pixels in order to obtain correlations between the adjacent pixels. In the second method, descreening is performed on the halftone image so that the image is converted back to grayscale. The converted grayscale values are then used as indexes of fixed-sized tiny bitmap patterns contained in a halftone bitmap dictionary. This allows decoder to successfully render a halftone image by presenting indexed dictionary bitmap patterns neighboring with each other.[10]

Entropy coding

All three region types including text, halftone, and generic regions may all use arithmetic coding or huffman coding. JBIG2 specifically uses the MQ coder, the same entropy encoder employed by JPEG 2000.

Patents

Patents for JBIG2 are owned by IBM and Mitsubishi. Free licenses should be available after a request. JBIG and JBIG2 patents are not the same.[13][14][15]

Character substitution errors in scanned documents

Some implementations of JBIG2 using lossy compression can potentially alter the characters in documents that are scanned to PDF. Unlike some other algorithms where compression artifacts are obvious, such as blurring[16] or mosquito noise, JBIG2's "pattern matching" matches up similar-looking symbols. If the matching is implemented poorly, especially in low-resolution scans where characters are less clearly defined, similar characters may get erroneously swapped. But as noted by computer scientist David Kriesel, who discovered such a problem as described below, "the error cause is not JBIG2 itself".[17]

In 2013, various substitutions (including replacing "6" with "8") were reported to happen on many Xerox Workcentre photocopier and printer machines. Numbers printed on scanned (but not OCR-ed) documents had potentially been altered. This has been demonstrated on construction blueprints and some tables of numbers; the potential impact of such substitution errors in documents such as medical prescriptions was briefly mentioned.[17][18][19] German computer scientist David Kriesel and Xerox were investigating this.[20][21]

Xerox subsequently acknowledged that this was a long-standing software defect, and their initial statements in suggesting that only non-factory settings could introduce the substitution were incorrect. No attempt was made to recall or mandate updates to the affected devices – which was acknowledged to affect more than a dozen product families. However, in August 2013 a software patch was made available, that when installed, automatically disabled pattern matching.[22] Documents previously scanned continue to potentially contain errors making their veracity difficult to substantiate. Following publicity about the potential for errors authorities in some countries made statements to prevent the use of JBIG2.[23]

In Germany the Federal Office for Information Security has issued a technical guideline that says the JBIG2 encoding "MUST NOT be used" for "replacement scanning".[24] In Switzerland the Coordination Office for the Permanent Archiving of Electronic Documents (Koordinationsstelle für die dauerhafte Archivierung elektronischer Unterlagen) has recommended against the use of JBIG2 when creating PDF documents.[25]

Exploit

A vulnerability in the Xpdf implementation of JBIG2, re-used in Apple's iOS phone operating software, was used by the Pegasus spyware to implement a zero-click attack on iPhones by constructing an emulated computer architecture inside a JBIG2 stream. Apple fixed this "FORCEDENTRY" vulnerability in iOS 14.8 in September 2021.[26]

See also

References

  1. ^ If the refinement data is used without any threshold of difference, encoding would be completely lossless. This could be less efficient than just tagging the whole page as a "generic region" for direct arithmetic coding.[12]
  1. ^ Press release from the Joint Bi-level Image experts Group Archived 2005-05-15 at the Wayback Machine.
  2. ^ "ITU-T Recommendation T.88 – T.88 : Information technology - Coded representation of picture and audio information - Lossy/lossless coding of bi-level images". Retrieved 2011-02-19.
  3. ^ "ISO/IEC 14492:2001 – Information technology – Lossy/lossless coding of bi-level images". Retrieved 2011-02-19.
  4. ^ JBIG2-the ultimate bi-level image coding standard, by F. Ono, W. Rucklidge, R. Arps, and C. Constantinescu, in Proceedings, 2000 International Conference on Image Processing (Vancouver, BC, Canada), vol. 1, pp. 140–143.
  5. ^ jbig2dec decoder home page.
  6. ^ jbig2-imageio decoder plugin for Java's ImageIO.
  7. ^ jbig2.js decoder for PDF.js.
  8. ^ JBIG2Stream decoder by Glyph & Cog LLC.
  9. ^ jbig2enc encoder project home.
  10. ^ a b c F. Ono, W. Rucklidge, R. Arps, and C. Constantinescu, "JBIG2-the ultimate bi-level image coding standard", Image Processing, 2000. Proceedings. 2000 International Conference on, vol. 1, pp. 140–143 vol. 1, 2000.
  11. ^ a b c P. Howard, F. Kossentini, B. Martins, S. Forchhammer, and W. Rucklidge, "The emerging JBIG2 standard", Circuits and Systems for Video Technology, IEEE Transactions on, vol. 8, no. 7, pp. 838–848, Nov 1998.
  12. ^ Langley, Adam. "jbig2enc: Documentation". GitHub. We can choose to do this for each symbol on the page, so we don't have to refine when we are only a couple of pixel off. If we refine whenever we [sic] a wrong pixel, we have lossless encoding using symbols.
  13. ^ What is the patent situation with JBIG?, archived from the original on 2012-02-23
  14. ^ What is JBIG2?, archived from the original on 2012-04-14, retrieved 2012-04-07
  15. ^ JBIG2 patents, archived from the original on 2017-09-29, retrieved 2012-04-07
  16. ^ Zhou Wang, Hamid R. Sheikh and Alan C. Bovik (2002). "No-reference perceptual quality assessment of JPEG compressed images". Proceedings 2002 International Conference on Image Processing (PDF). Archived from the original (PDF) on 2013-11-02.
  17. ^ a b "Xerox scanners/photocopiers randomly alter numbers in scanned documents". 2013-08-02. Retrieved 2013-08-04.
  18. ^ "Confused Xerox copiers rewrite documents, expert finds". BBC News. 2013-08-06. Retrieved 2013-08-06.
  19. ^ "Xerox Scanners / Photocopiers Randomly Alter Numbers". The Font Feed. 5 August 2013. Archived from the original on 26 October 2017.
  20. ^ "Xerox investigating latest mangling test findings". 2013-08-11. Retrieved 2013-08-11.
  21. ^ Update on Scanning Issue: Software Patches To Come, Xerox (blog), 2013-08-11, archived from the original on 2013-11-04, retrieved 2013-08-11
  22. ^ Xerox Corporation. Scanning and Compression White Paper, 2013
  23. ^ Kriesel, David. "Video and Slides of my Xerox Talk at 31C3". D. Kriesel Data Science, Machine Learning, BBQ, Photos, and Ants in a Terrarium. Retrieved 31 July 2016.
    Note: The video there is dubbed over in English; if you understand German, the original might be easier to follow: David Kriesel: Traue keinem Scan, den du nicht selbst gefälscht hast
  24. ^ "BSI Technical Guidelines 03138: Replacement Scanning" (PDF). Retrieved 28 December 2021.
  25. ^ "JBIG2 Compression". Retrieved 28 December 2021.
  26. ^ Beer, Ian; Groß, Samuel (2021-12-15). "Project Zero: A deep dive into an NSO zero-click iMessage exploit: Remote Code Execution". Google Project Zero. Retrieved 2021-12-16.

Read other articles:

Kerajaan Gwynedd[1]Teyrnas GwyneddAbad ke-5–1282 Bendera Lambang Ibu kotaDegannwy, Aberffraw dan Garth CelynBahasa yang umum digunakanWalesPemerintahanMonarki• 450 - 460 Cunedda• 520 - 547 Maelgwn I• 625 - 634 Cadwallon II• 1081 - 1137 Gruffudd I• 1137 - 1170 Owain I• 1195 - 1240 Llywelyn II• 1253 - 1282 Llywelyn III Era SejarahAbad Pertengahan• Didirikan Abad ke-5• Dianeksasi oleh Inggris 1282 Sunting kotak info • L...

 

Maryland vehicle license plates MarylandCurrent seriesNameMaryland ProudSize12 in × 6 in30 cm × 15 cmSerial format1AB2345IntroducedSeptember 26, 2016 (2016-09-26)AvailabilityIssued byMaryland Department of Transportation, Motor Vehicle AdministrationHistoryFirst issuedJuly 1, 1910 (1910-07-01)(pre-state plates from 1904 to June 30, 1910)vte The U.S. state of Maryland first required its residents to register their motor vehicles in ...

 

Ovarium (Latin: ōvāriumcode: la is deprecated ) atau indung telur adalah kelenjar kelamin yang dibawa oleh hewan betina. Vertebrata, termasuk manusia, memiliki dua ovarium yang berfungsi memproduksi sel telur dan mengeluarkan hormon. Sel telur pada wanita (manusia) berada bagian dalam di kiri dan kanan pinggul. Sel telur yang di produksi jika tidak di buahi lama kelamaan akan mengering, dan menempel pada dinding rahim. Lama kelamaan sel telur tersebut akan rontok, dan keluar melalui vagina....

This article's factual accuracy may be compromised due to out-of-date information. Please help update this article to reflect recent events or newly available information. (February 2017) This page lists the world fisheries' production. The tonnage from capture and aquaculture is listed by country. Fish, crustaceans, molluscs, etc. Following is a sortable table of the world fisheries' harvest for 2018. The tonnage from capture and aquaculture is listed by country. Capture includes fish, crus...

 

This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages) This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: FC Frederick – news · newspapers · books · scholar · JSTOR (January 2020) (Learn how and when to remove thi...

 

イスラームにおける結婚(イスラームにおけるけっこん)とは、二者の間で行われる法的な契約である。新郎新婦は自身の自由な意思で結婚に同意する。口頭または紙面での規則に従った拘束的な契約は、イスラームの結婚で不可欠だと考えられており、新郎と新婦の権利と責任の概要を示している[1]。イスラームにおける離婚は様々な形をとることができ、個�...

† Человек прямоходящий Научная классификация Домен:ЭукариотыЦарство:ЖивотныеПодцарство:ЭуметазоиБез ранга:Двусторонне-симметричныеБез ранга:ВторичноротыеТип:ХордовыеПодтип:ПозвоночныеИнфратип:ЧелюстноротыеНадкласс:ЧетвероногиеКлада:АмниотыКлада:Синапсиды�...

 

French military satellite program CERESCERES satelliteMission typeSIGINTOperatorCNES / DGACOSPAR ID2021-105A2021-105B2021-105CSATCAT no.494644946549466 Spacecraft propertiesBusEliteBusManufacturerThales Alenia Space (bus),Airbus Defence and Space (payload)Launch mass516 kg (1,138 lb) (each) Start of missionLaunch date16 November 2021, 09:27:55 UTC[1]RocketVega VV20Launch siteCentre Spatial Guyanais,Kourou, ELA-1ContractorArianespace Orbital parametersReference systemGeo...

 

See also: List of Olympic medalists in canoeing (women) and Canoeing at the Summer Olympics This is the complete list of men's Olympic medalists in canoeing. Current program Slalom C-1 Games Gold Silver Bronze 1972 Munichdetails Reinhard Eiben East Germany Reinhold Kauder West Germany Jamie McEwan United States 1976–1988 not included in the Olympic program 1992 Barcelonadetails Lukáš Pollert Czechoslovakia Gareth Marriott Great Britain Jacky Avril France 199...

Kamerun Artikel ini adalah bagian dari seri: Politik dan KetatanegaraanKamerun Presiden Paul Biya Perdana Menteri Ephraïm Inoni Majelis Nasional Partai politik Pemilihan umum: 2007 Provinsi Divisi Hubungan luar negeri Negara lain · Atlas Portal politiklihatbicarasunting Kamerun dibagi menjadi 10 region pada pembagian administratif tingkat pertama. Region Sepuluh region di Kamerun No. Nama Ibu kota Kode Luas(km²) Populasi(sensus 2005) 1 Adamawa Ngaoundéré CM-AD 63,701...

 

هنودمعلومات عامةنسبة التسمية الهند التعداد الكليالتعداد قرابة 1.21 مليار[1][2]تعداد الهند عام 2011ق. 1.32 مليار[3]تقديرات عام 2017ق. 30.8 مليون[4]مناطق الوجود المميزةبلد الأصل الهند البلد الهند  الهند نيبال 4,000,000[5] الولايات المتحدة 3,982,398[6] الإمار...

 

Частина серії проФілософіяLeft to right: Plato, Kant, Nietzsche, Buddha, Confucius, AverroesПлатонКантНіцшеБуддаКонфуційАверроес Філософи Епістемологи Естетики Етики Логіки Метафізики Соціально-політичні філософи Традиції Аналітична Арістотелівська Африканська Близькосхідна іранська Буддій�...

Artikel ini tidak memiliki referensi atau sumber tepercaya sehingga isinya tidak bisa dipastikan. Tolong bantu perbaiki artikel ini dengan menambahkan referensi yang layak. Tulisan tanpa sumber dapat dipertanyakan dan dihapus sewaktu-waktu.Cari sumber: Taman Wisata Wendit – berita · surat kabar · buku · cendekiawan · JSTOR Topik artikel ini mungkin tidak memenuhi kriteria kelayakan umum. Harap penuhi kelayakan artikel dengan: menyertakan sumber-sumber ...

 

الطيب والشرس والجميلةملصق الفيلممعلومات عامةالصنف الفني دراما، أكشنتاريخ الصدور29 أغسطس 1994 (1994-08-29) ( مصر)[1]مدة العرض 100 دقيقةاللغة الأصلية العربيةالبلد  مصرالطاقمالمخرج مدحت السباعي الكاتب محمد صفاء عامرالسيناريو مدحت السباعيالبطولة نور الشريففريد ش�...

 

ピタゴラスの定理 種類 定理分野 ユークリッド幾何学命題 2辺 (a, b) 上の2つの正方形の面積の和は、斜辺 (c) 上の正方形の面積に等しくなる。数式 a 2 + b 2 = c 2 {\displaystyle a^{2}+b^{2}=c^{2}} 一般化 余弦定理 空間幾何学 非ユークリッド幾何学 微分幾何学 結果 ピタゴラス数 逆ピタゴラスの定理 複素数 ユークリッド距離 ピタゴラスの三角恒等式 初等幾何学におけるピタゴラ�...

Railway station in Itoigawa, Japan Oyashirazu Station親不知駅Oyashirazu Station in September 2011General informationLocationUta, Itoigawa-shi, Niigata-ken 949-0307JapanCoordinates37°00′25″N 137°44′17″E / 37.0069°N 137.7380°E / 37.0069; 137.7380Operated by Echigo Tokimeki RailwayLine(s)■ Nihonkai Hisui LineDistance8.6 km from IchiburiPlatforms1 island platformHistoryOpened16 December 1912PassengersFY201718 LocationOyashirazu StationLocation within Japa...

 

State and local laws enforcing racial segregation in the Southern United States Jim Crow redirects here. For other uses, see Jim Crow (disambiguation). Part of a series of articles onRacial and ethnic segregation Overview Anti-miscegenation laws Crime of apartheid Allegations Caste Xenophobia Environmental / Institutional racism Ethnic nationalism Forced displacement Housing discrimination Exclusionary zoning Redlining Historical examples Australia Canada Pass system Separate schools...

 

У этого термина существуют и другие значения, см. Оппенгеймер (значения). Оппенгеймер. Триумф и трагедия Американского Прометеяангл. American Prometheus Жанр биография Автор Кай Берд Мартин Дж. Шервин Язык оригинала английский Дата первой публикации 2004 Издательство Alfred A. Knopf АС...

Main article: 1964 United States presidential election 1964 United States presidential election in Ohio ← 1960 November 3, 1964 1968 →   Nominee Lyndon B. Johnson Barry Goldwater Party Democratic Republican Home state Texas Arizona Running mate Hubert Humphrey William E. Miller Electoral vote 26 0 Popular vote 2,498,331 1,470,865 Percentage 62.94% 37.06% County results Johnson   50–60%   60–70%   70–80% Goldwa...

 

1973 film The No Mercy ManFilm posterDirected byDaniel VanceWritten byDaniel VanceMike Nolin (Michael Nolin)Produced byBill CokerPaul Rubey JohnsonStarringSteve SandorRockne TarkingtonSid HaigRon ThompsonMike LaneRichard X. SlatteryCinematographyDean CundeyEdited byGeorge Jay NicholsonMusic byDon VincentDistributed byCannon Film DistributorsRelease date 1973 (1973) Running time91 minutesCountryUnited StatesLanguageEnglish The No Mercy Man (also known as Bad Man, Trained to Kill, and Trai...