What is a JPEG 2000 file in Photoshop?

JPEG 2000: Avancerede Funktioner i Foto

I den digitale billedbehandlings verden har filformater stor betydning for både kvalitet, filstørrelse og fleksibilitet. I mange år har JPEG været standarden for komprimerede billeder, men omkring årtusindskiftet introducerede Joint Photographic Experts Group en ny standard: JPEG 2000. Dette format blev udviklet med det formål ikke kun at forbedre kompressionsydelsen, men især at tilføje og forbedre funktioner som skalerbarhed og redigerbarhed, hvilket giver en langt større fleksibilitet i håndteringen af billeddata.

What size block is a JPEG 2000?
By default, the object reads JPEG2000 image files with a block size of [1024 1024] . To use a different block size, create the object and then change the block size using the IOBlockSize property. For example, to specify a block size of [512 512] , use this code. adapter = images.

Selvom JPEG 2000 måske ikke opnåede samme udbredelse som sin forgænger, primært på grund af kompleksitet og manglende bred software- og browserunderstøttelse, tilbyder det en række avancerede funktioner, der er værd at kende til for seriøse fotografer og billedbehandlere. Dette format er designet til at håndtere en bred vifte af applikationer, fra webbilleder og medicinsk billedbehandling til digitale arkiver og professionel fotografering.

Indholds

Hvad er JPEG 2000?

JPEG 2000 er ligesom det originale JPEG et pixelbaseret rasterformat. Det blev udviklet som en opdatering til JPEG-standarden og er baseret på en helt anden kompressionsteknologi, nemlig bølgetransformation (wavelets), i stedet for den diskrete cosinustransformation (DCT), som JPEG bruger. Dette fundamentale skift muliggør mange af de unikke funktioner, som JPEG 2000 tilbyder.

Formatet er standardiseret under ISO/IEC 15444 og bruger typisk filendelserne .jp2 og .jpx. Mens det originale JPEG-format har domineret web og forbrugerfotografi, finder JPEG 2000 anvendelse i mere specialiserede områder, hvor dets avancerede funktioner er afgørende, såsom digital biograf, medicinsk billedbehandling og overvågningssystemer.

Nøglefunktioner og Fordele ved JPEG 2000

Den primære motivation bag JPEG 2000 var ikke kun en beskeden forbedring af kompressionsforholdet (selvom det ofte opnår omkring 20% bedre kompression end JPEG ved lignende kvalitet), men især den betydelige fleksibilitet i dets datastrøm (codestream). Denne fleksibilitet er formatets største styrke og adskiller det markant fra JPEG.

Skalerbarhed

En af de mest fremtrædende funktioner er skalerbarhed. JPEG 2000-datastrømmen er i sagens natur skalerbar, hvilket betyder, at den kan afkodes på flere forskellige måder. Ved at afkorte datastrømmen på et hvilket som helst tidspunkt kan man opnå en repræsentation af billedet med lavere opløsning eller et lavere signal-til-støj-forhold (SNR). Dette kaldes henholdsvis opløsningsskalerbarhed og kvalitetsskalérbarhed.

Dette muliggør progressiv afkodning, hvor en lavere kvalitet eller lavere opløsning version af billedet vises hurtigt, mens resten af data downloades, og billedet gradvist forbedres i kvalitet eller detaljegrad. For eksempel kan man sende data, der repræsenterer lavere frekvensbånd (svarende til lavere opløsninger) først for en hurtig forhåndsvisning, før de finere detaljer overføres.

Derudover understøtter JPEG 2000 også spatial skalerbarhed, hvilket betyder, at man kan få adgang til eller afkode specifikke regioner af billedet (Region of Interest - ROI) uden at skulle behandle hele billedet. Dette er særligt nyttigt for meget store billeder eller i netværksapplikationer, hvor kun dele af billedet er nødvendige.

Tabsfri og Tabsgivende Kompression i Én Arkitektur

I modsætning til det originale JPEG, som enten er tabsgivende eller kræver en separat standard (Lossless JPEG) for tabsfri kompression, understøtter JPEG 2000 både tabsfri kompression og tabsgivende kompression inden for den samme arkitektur. Dette opnås ved brug af forskellige typer af bølgetransformation: en reversibel, heltalsbaseret bølgetransformation (5/3-filter) til tabsfri kompression og en irreversibel (9/7-filter) til tabsgivende kompression.

Evnen til at generere både en tabsfri og en række tabsgivende repræsentationer fra en enkelt komprimeret fil er en stor fordel. Man kan for eksempel arkivere en tabsfri version og samtidig generere mindre, tabsgivende versioner til visning eller distribution fra den samme komprimerede datastrøm.

Forbedret Billedkvalitet og Færre Artefakter

På grund af brugen af bølgetransformation over hele billedet (eller store fliser) i stedet for 8x8 blokke som i JPEG, lider JPEG 2000 ikke af de såkaldte 'blok-artefakter', der kan ses i stærkt komprimerede JPEG-billeder. JPEG 2000 producerer primært 'ring-artefakter', som manifesterer sig som sløring og ringe nær kanter. Selvom ring-artefakter stadig er en form for forringelse, opfattes de ofte som mindre forstyrrende end blok-artefakter, især ved højere kompressionsforhold.

What is the compression level of a JPEG 2000?
Compression ratio Comparison of JPEG, JPEG 2000, JPEG XR, and HEIF at similar file sizes. Compared to the previous JPEG standard, JPEG 2000 delivers a typical compression gain in the range of 20%, depending on the image characteristics.

JPEG 2000 er også designet til at håndtere et meget stort spektrum af effektive bitrater. Det kan opnå meget lave kompressionsrater (høj kvalitet/stor fil) og meget høje kompressionsrater (lav kvalitet/lille fil) effektivt. For at opnå en meget lille filstørrelse med det originale JPEG, er det ofte nødvendigt at reducere billedets opløsning før komprimering. Dette er unødvendigt med JPEG 2000 takket være dets indbyggede multi-opløsnings decomposition.

Understøttelse af Højere Bitdybder og Flere Farverum

JPEG 2000 understøtter en bredere vifte af bitdybder pr. farvekomponent, fra 1 til 38 bits, hvilket er væsentligt mere end de typiske 8 bits pr. komponent i almindelige JPEG-filer. Dette gør formatet velegnet til billeder med høj dynamisk rækkevidde eller medicinske billeder, der kræver høj præcision.

Formatet understøtter også en bred vifte af farverum, herunder monokrom, forskellige YCbCr-typer, sRGB, PhotoYCC, CMY(K), YCCK, CIELab, CIEJab, e-sRGB, ROMM og YPbPr. JP2- og JPX-filformaterne inkluderer mekanismer til håndtering af farverumsinformation og metadata.

Teknologien Bag JPEG 2000

For at forstå, hvordan JPEG 2000 opnår disse funktioner, kan vi se på dets kompressionsproces, som adskiller sig markant fra JPEG.

Farvetransformation

Først transformeres billedets farvekomponenter. For RGB-billeder er der to muligheder:

  • Irreversible Color Transform (ICT): Bruger BT.601 YCbCr farverummet og implementeres med flydende eller fast-punkt aritmetik. Fører til afrundingsfejl og bruges med 9/7 bølgetransformationen (tabsgivende).
  • Reversible Color Transform (RCT): Bruger et modificeret YUV-farverum (svarende til YCgCo), der ikke introducerer kvantiseringsfejl, hvilket gør det fuldt reversibelt. Kræver korrekt afrunding og bruges med 5/3 bølgetransformationen (tabsfri).

Disse transformationer adskiller luminans- (Y) og krominans- (Cb, Cr) komponenter, som derefter håndteres separat.

Opdeling i Fliser (Tiling)

Efter farvetransformationen kan billedet opdeles i rektangulære regioner kaldet fliser. Hver flise behandles og kodes uafhængigt. Fliser kan have enhver størrelse, og hele billedet kan behandles som én enkelt flise. Fordelen ved at bruge fliser er, at afkoderen behøver mindre hukommelse og kan afkode kun udvalgte fliser for delvis afkodning af billedet. Ulempen er, at billedkvaliteten kan falde en smule på grund af lavere PSNR, og brug af mange små fliser kan skabe en effekt, der minder om blokering i JPEG.

Bølgetransformation (Wavelet Transform)

Hver flise gennemgår derefter en bølgetransformation til en vilkårlig dybde. Dette er kernen i JPEG 2000's multi-opløsnings decomposition og adskiller det fra JPEG's faste 8x8 DCT-blokke. Transformationen kan implementeres ved hjælp af løfteskemaet eller konvolution. Som nævnt bruges 5/3-filteret til tabsfri og 9/7-filteret til tabsgivende kompression.

Kvantisering

Efter bølgetransformationen kvantiseres koefficienterne for at reducere antallet af bits, der repræsenterer dem. Dette er det trin, der introducerer tab i tabsgivende kompression. Kvantiseringssteppet bestemmer den endelige kvalitet: et større step giver højere kompression, men større tab af kvalitet. Med et kvantiseringsstep på 1 udføres ingen kvantisering (bruges i tabsfri tilstand).

Kodning

Resultatet af de foregående trin er en samling af sub-bånd (frekvensområder), der repræsenterer forskellige skaleringsniveauer. Disse sub-bånd opdeles yderligere i 'precincts' og derefter i 'code blocks'. Bitsene for de kvantiserede koefficienter i et code block kodes bit-for-bit ved hjælp af EBCOT-skemaet (Embedded Block Coding with Optimal Truncation). Hvert bitplan i et code block kodes i tre pas: Significance Propagation, Magnitude Refinement og Cleanup pass. Disse pas kodes derefter ved hjælp af en kontekst-drevet binær aritmetisk koder, MQ-koderen (også brugt i JBIG2).

Resultatet er en bitstrøm, der opdeles i 'packets'. En packet samler udvalgte pas fra alle code blocks inden for et precinct. Packets er nøglen til kvalitetsskalérbarhed – packets med mindre signifikante bits kan kasseres for at opnå lavere bitrater og højere forvrængning.

Is JPEG 2000 compatible?
JPEG 2000 image format on Chrome is not supported on any Chrome versions. JPEG 2000 image format on Safari is fully supported on 5.1-18, and not supported on 3.2-18.4 Safari versions. JPEG 2000 image format on Opera is not supported on any Opera versions.

Packets fra alle sub-bånd samles derefter i 'layers'. Lagene definerer progressionen efter billedkvalitet inden for datastrømmen. En codec vil typisk forsøge at opbygge lagene, så billedkvaliteten stiger monotont med hvert lag.

Processen inkluderer også rate-distortion optimering for at finde de optimale afkortningspunkter (packetlængder) for alle code blocks, der minimerer den samlede forvrængning ved en given mål-bitrate. Packets kan omarrangeres næsten vilkårligt i bitstrømmen, hvilket giver stor frihed for kodere og billedservere.

Kompressionsniveau og Kvalitet

JPEG 2000 tilbyder en beskeden forbedring i kompressionsydelse sammenlignet med det originale JPEG, typisk i størrelsesordenen 20%, afhængigt af billedets karakteristika. Billeder med højere opløsning har tendens til at drage større fordel. En af formatets styrker er evnen til at håndtere et meget stort område af effektive bitrater.

I meget lave bitraters applikationer har studier vist, at JPEG 2000 kan blive overgået af intra-frame kodningstilstanden i H.264 video-standarden, men for de fleste billedkomprimeringsscenarier tilbyder det en fremragende balance mellem kompressionsforhold og kvalitet, især på grund af fraværet af blok-artefakter og dets skalerbarhedsfunktioner.

JPEG 2000 vs. Original JPEG

Her er en sammenligning af de to formater baseret på de givne oplysninger:

Funktion Original JPEG JPEG 2000
Kompressionsteknik Diskret Cosinus Transformation (DCT) på 8x8 blokke Bølgetransformation (Wavelet) på fliser/hele billedet
Kompressionstype Primært tabsgivende (separat Lossless JPEG standard) Tabsgivende og tabsfri i én arkitektur
Artefakter Blok- og ring-artefakter Primært ring-artefakter
Skalerbarhed Nej (kræver forudgående nedskalering) Ja (opløsning, kvalitet, spatial)
Progressiv Afkodning Progressiv JPEG (scannes linje for linje) Progressiv efter kvalitet og opløsning
Region of Interest (ROI) Begrænset/Ikke standard Ja (understøttes i datastrømmen)
Bitdybde pr. komponent Typisk 8 bits 1 til 38 bits
Farverum Begrænset (typisk YCbCr, Gråtoner) Bredt udvalg (sRGB, CIELab, CMYK, etc.)
Kompleksitet Relativt lav Meget høj
Beregningstid/Ydeevne Hurtigere Langsommere, mere krævende
Browserunderstøttelse Fremragende Meget begrænset (primært Safari)
Modtagelighed for bitfejl Højere Lavere

Ulemper ved JPEG 2000

På trods af de mange tekniske fordele har JPEG 2000 ikke erstattet JPEG som det dominerende billedformat på internettet og i mange andre applikationer. De vigtigste årsager inkluderer:

  • Kompleksitet og Ydeevne: JPEG 2000 er betydeligt mere beregningsmæssigt krævende at kode og afkode end JPEG. Selvom hardwareacceleration og optimeringer kan hjælpe, kræver det stadig mere processorkraft.
  • Manglende Software- og Browserunderstøttelse: Dette er sandsynligvis den største hindring. De fleste webbrowsere understøtter ikke JPEG 2000 nativt (Safari er en undtagelse), hvilket gør det upraktisk til webbrug uden yderligere teknologier (som JPIP-protokollen). Understøttelse i billedredigeringssoftware og andre applikationer er også mindre udbredt end for JPEG.
  • Omkostninger ved Standarden: Standarden er udgivet som ISO/IEC 15444, og omkostningerne ved at opnå alle dokumenter for standarden har været en barriere for udbredelsen, især for mindre udviklere.
  • Fortolkningsrum i Standarden: Som nævnt kan specifikationen for JP2-formatet efterlade rum for flere fortolkninger vedrørende understøttelse af ICC-profiler og håndtering af grid-opløsningsinformation, hvilket kan føre til kompatibilitetsproblemer.

Ofte Stillede Spørgsmål (FAQ)

Hvad er kompressionsniveauet for JPEG 2000?

JPEG 2000 har ikke faste 'kompressionsniveauer' på samme måde som JPEG, hvor man ofte vælger en kvalitetsskala (f.eks. 0-100). I stedet styres kompressionsforholdet primært via kvantiseringssteppet og den efterfølgende rate-distortion optimering under kodningen. Man kan vælge en bestemt mål-bitrate (filstørrelse) eller et bestemt kvalitetsniveau (målt f.eks. i PSNR), og kodeprocessen optimerer derefter for at opnå dette. Formatet er designet til at håndtere et meget bredt spektrum af kompressionsforhold effektivt, fra tabsfri til meget høje kompressionsrater. Typisk opnår det omkring 20% bedre kompression end JPEG ved sammenlignelig visuel kvalitet.

Hvad er forskellen mellem JPEG og JPEG 2000 kompression?

Den fundamentale forskel ligger i den matematiske transformation, der bruges. JPEG anvender en 8x8 blokbaseret Diskret Cosinus Transformation (DCT), mens JPEG 2000 anvender en bølgetransformation (Wavelet Transform) på større områder eller hele billedet. Dette fører til flere forskelle, herunder:

  • Artefakter: JPEG har blok- og ring-artefakter; JPEG 2000 har primært ring-artefakter.
  • Skalerbarhed: JPEG 2000 er indbygget skalerbart (opløsning, kvalitet), mens JPEG ikke er.
  • Tabsfri/Tabsgivende: JPEG 2000 integrerer begge i én strøm; JPEG kræver separat standard for tabsfri.
  • Kompleksitet: JPEG 2000 er langt mere kompleks og beregningskrævende.
  • Bitdybde: JPEG 2000 understøtter op til 38 bits, JPEG typisk 8 bits.

Se tabellen ovenfor for en mere detaljeret sammenligning.

Hvilken blokstørrelse bruger JPEG 2000?

JPEG 2000 bruger ikke faste 8x8 blokke på samme måde som JPEG's DCT. I stedet opdeles billedet i fliser (tiles), som kan have variabel størrelse (f.eks. [1024 1024] eller [512 512] i nogle implementeringer, eller endda hele billedet som én flise). Bølgetransformationen anvendes på disse fliser. Inden for fliserne opdeles data i 'code blocks' for den endelige kodning (EBCOT), men disse code blocks er ikke det samme som JPEG's 8x8 DCT-blokke og er et internt trin i kodeprocessen efter transformationen. Så der er ikke en enkelt 'blokstørrelse' i samme forstand som i JPEG; processen er baseret på fliser og bølgetransformation.

Konklusion

JPEG 2000 er et teknisk overlegent filformat i mange henseender sammenlignet med det originale JPEG, især med hensyn til skalerbarhed, integreret tabsfri kompression, håndtering af højere bitdybder og fraværet af blokerende artefakter. Dets avancerede funktioner gør det ideelt til applikationer, der kræver høj fleksibilitet i billedhåndtering, progressiv levering eller bevaring af høj billedkvalitet og dynamisk rækkevidde.

Dog har dets kompleksitet og især den manglende brede understøttelse begrænset dets udbredelse i forbruger- og webverdenen. Ikke desto mindre forbliver det et vigtigt format inden for specifikke brancher og applikationer, hvor dets unikke egenskaber opvejer ulemperne ved dets kompleksitet.

Hvis du vil læse andre artikler, der ligner JPEG 2000: Avancerede Funktioner i Foto, kan du besøge kategorien Fotografi.

Avatar photo

Franne Voigt

Mit navn er Franne Voigt, jeg er en 35-årig fotograf fra Danmark med en passion for at fange øjeblikke og dele mine erfaringer gennem min fotoblog. Jeg har arbejdet med både portræt- og naturfotografi i over et årti, og på bloggen giver jeg tips, teknikker og inspiration til både nye og erfarne fotografer. Fotografi er for mig en måde at fortælle historier på – én ramme ad gangen.

Go up