맨위로가기

JPEG 2000

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

JPEG 2000은 ISO/IEC 15444 표준으로 제정된 이미지 코딩 시스템이다. 2000년에 핵심 코딩 시스템(Part 1)이 발표되었으며, 확장(Part 2), Motion JPEG 2000(Part 3) 등이 순차적으로 발표되었다. JPEG 2000은 JPEG에 비해 압축 성능이 향상되었고, 코드 스트림의 유연성을 제공하며, 다양한 응용 분야에서 활용된다. 이 표준은 파일 형식과 코드스트림을 모두 정의하며, 다양한 프로그램과 라이브러리에서 지원한다.

2. 역사

JPEG 2000(JP2)은 기존 JPEG 표준을 개선하기 위해 1990년대 후반 공동 사진 전문가 그룹(JPEG) 주도로 개발된 웨이블릿 기반의 이미지 압축 표준이다.[94] 이 표준 개발에는 1995년 리코JPEG-LS 표준화 과정에 제안했던 CREW(Compression with Reversible Embedded Wavelets) 알고리즘[95][96]의 기술이 일부 영향을 미쳤다.[97]

JPEG 2000은 코드스트림 내에서 특정 영역에 대한 무작위 접근이나 관심 영역 설정 등 다양한 기능을 지원한다. 또한 모션 JPEG 2000 확장을 통해 동영상 압축에도 사용될 수 있으며, 2004년에는 디지털 시네마 분야의 표준 비디오 코딩 방식으로 채택되었다. 그러나 월드 와이드 웹에서는 사파리를 제외한 주요 웹 브라우저의 지원이 부족하여 2022년 기준으로 널리 사용되지 못하고 있다.

2. 1. 개발 배경

JPEG 2000(JP2)은 이미지 압축 표준 및 코딩 시스템으로, 1992년에 제정된 이산 코사인 변환(DCT) 기반의 기존 JPEG 표준을 대체할 목적으로 개발되었다.[94] 이 개발 작업은 1997년부터 2000년까지 공동 사진 전문가 그룹(JPEG) 위원회에서 진행되었으며, 당시 투라지 아브라함(Touradj Ebrahimi)이 의장을 맡았다.[94] JPEG 2000 표준(ISO/IEC 15444-1)은 2000년에 발표되었으며, 기존 DCT 방식 대신 새롭게 설계된 웨이블릿 변환 기반의 압축 방식을 사용한다.

JPEG 2000 표준 개발은 1995년 리코(Ricoh)가 JPEG-LS 표준화 과정에 제안했던 CREW(Compression with Reversible Embedded Wavelets) 알고리즘[95][96]의 영향을 받았다. 당시 JPEG-LS 표준에는 LOCO-I 알고리즘이 채택되었으나, CREW 알고리즘의 여러 기술적 특징들은 이후 JPEG 2000 표준에 반영되었다.[97]

2. 2. 표준화 과정

JPEG 2000 이미지 코딩 시스템(ISO/IEC 15444)은 다음의 여러 부분(Part)으로 구성된다. 각 파트는 특정 기능이나 응용 분야를 다룬다.

JPEG 2000 이미지 코딩 시스템 - 파트[11][12]
파트번호공개 출시일최신
수정본
동일한
ITU-T
표준
제목설명
초판현재
파트 1[https://www.iso.org/standard/87632.html ISO/IEC 15444-1]20002024[http://www.itu.int/rec/T-REC-T.800 T.800]코어 코딩 시스템JPEG 2000 압축의 기본 특성 (.jp2)
파트 2[https://www.iso.org/standard/84573.html ISO/IEC 15444-2]20042023[13][http://www.itu.int/rec/T-REC-T.801 T.801]확장(.jpx, .jpf, 부동 소수점)
파트 3[https://www.iso.org/standard/41570.html ISO/IEC 15444-3]200220072010[14][http://www.itu.int/rec/T-REC-T.802 T.802]Motion JPEG 2000(.mj2)
파트 4[https://www.iso.org/standard/85636.html ISO/IEC 15444-4]20022024[http://www.itu.int/rec/T-REC-T.803 T.803]적합성 테스트
파트 5[https://www.iso.org/standard/81575.html ISO/IEC 15444-5]20032021[15][http://www.itu.int/rec/T-REC-T.804 T.804]참조 소프트웨어JavaC 구현
파트 6[https://www.iso.org/standard/61124.html ISO/IEC 15444-6]20032013[http://www.itu.int/rec/T-REC-T.805 T.805]복합 이미지 파일 형식(.jpm) 예를 들어 문서 이미지, 사전 인쇄 및 팩스와 같은 응용 프로그램
파트 7폐지됨[11]ISO/IEC 15444-1의 최소 지원 기능 가이드라인[16](최소 지원 기능에 대한 기술 보고서[17])
파트 8[https://www.iso.org/standard/82566.html ISO/IEC 15444-8]20072023[18][http://www.itu.int/rec/T-REC-T.807 T.807]보안 JPEG 2000JPSEC (보안 측면)
파트 9[https://www.iso.org/standard/82567.html ISO/IEC 15444-9]20052023[19][http://www.itu.int/rec/T-REC-T.808 T.808]상호 작용 도구, API 및 프로토콜JPIP (상호 작용 프로토콜 및 API)
파트 10[https://www.iso.org/standard/61534.html ISO/IEC 15444-10]20082011[20][http://www.itu.int/rec/T-REC-T.809 T.809]3차원 데이터 확장을 위한JP3D (체적 이미징)
파트 11[https://www.iso.org/standard/40025.html ISO/IEC 15444-11]200720072013[21][http://www.itu.int/rec/T-REC-T.810 T.810]무선JPWL (무선 응용 프로그램)
파트 12[https://www.iso.org/standard/38612.html ISO/IEC 15444-12]
(2017년에 철회됨)
20042015[22]ISO 기본 미디어 파일 형식
파트 13[https://www.iso.org/standard/42271.html ISO/IEC 15444-13]20082008[23][http://www.itu.int/rec/T-REC-T.812 T.812]엔트리 레벨 JPEG 2000 인코더
파트 14[https://www.iso.org/standard/50410.html ISO/IEC 15444-14]2013[24][http://www.itu.int/rec/T-REC-T.813 T.813]XML 표현 및 참조JPXML[25]
파트 15[https://www.iso.org/standard/76621.html ISO/IEC 15444-15]20192019[https://www.itu.int/rec/T-REC-T.814-201906-I/en T.814]고처리량 JPEG 2000HTJ2K 및 JPH 파일 형식
파트 16[https://www.iso.org/standard/80620.html ISO/IEC 15444-16]20192021[26][https://www.itu.int/rec/T-REC-T.815/en T.815]ISO/IEC 23008-12에 JPEG 2000 이미지 캡슐화HEIF



2020년 6월 현재, JPEG 2000은 Part 1부터 Part 16까지 표준화되어 있다.[77]

3. 특징

JPEG 2000(JP2)은 이미지 압축 표준 및 코딩 시스템으로, 1992년에 제정된 이산 코사인 변환(DCT) 기반의 기존 JPEG 표준을 대체할 목적으로 개발되었다. 1997년부터 2000년까지 투라지 에브라히미(Touradj Ebrahimi, 이후 JPEG 의장)[94]가 의장을 맡은 공동 사진 전문가 그룹 위원회에 의해 새롭게 설계된 이산 웨이블릿 변환(DWT) 기반 방식으로 개발되었다. 이 표준화 작업의 시작은 1995년 리코(Ricoh)가 JPEG-LS 표준화 과정에 CREW(Compression with Reversible Embedded Wavelets) 알고리즘[95][96]을 제안한 것에서 비롯되었으며, 비록 JPEG-LS 표준에는 LOCO-I 알고리즘이 채택되었지만 CREW의 여러 기능은 JPEG 2000 표준의 기반이 되었다.[97]

JPEG 2000은 이산 웨이블릿 변환(DWT)을 기반으로 하며, 하나의 아키텍처에서 무손실 압축과 손실 압축을 모두 지원하는 유연성을 갖는다. 또한, 코드스트림은 다양한 세분성 수준에서 공간적 임의 접근(random access)이나 관심 영역(ROI) 접근을 지원하여 이미지의 특정 부분을 다른 품질로 저장하는 것이 가능하다.

표준화된 파일 확장자는 ISO/IEC 15444-1 규격 파일의 경우 `.jp2`이며, 확장된 Part-2 사양(ISO/IEC 15444-2)의 경우 `.jpx`이다. 등록된 MIME 유형은 RFC 3745에 따라 `image/jp2`로 정의되어 있다.

이 표준은 모션 JPEG 2000 확장을 통해 동영상 압축에도 적용될 수 있으며, 2004년에는 디지털 시네마의 비디오 코딩 표준으로 공식 채택되었다. 하지만 2022년 기준으로 사파리를 제외한 대부분의 주요 웹 브라우저에서 아직 널리 지원되지 않아 월드 와이드 웹에서는 보편적으로 사용되지 않고 있다.

3. 1. 압축 성능

JPEG 표준과 비교했을 때, JPEG 2000은 이미지 특성에 따라 일반적으로 20% 범위의 압축 성능 향상을 보인다. 특히 고해상도 이미지의 경우, JPEG 2000의 공간 중복성 예측이 압축 과정에 더 많이 기여하여 더 큰 이점을 얻는 경향이 있다. 그러나 압축 성능의 향상 자체는 기존 JPEG 표준에 비해 다소 미미하며, JPEG 2000이 제공하는 주요 장점은 코드 스트림의 상당한 유연성이다.

유사한 파일 크기에서 JPEG, JPEG 2000, JPEG XR, HEIF 비교


JPEG 2000으로 저장된 이미지(품질 50%)와 원본 간의 차이 (강조됨)


무손실 JPEG 표준처럼[9] JPEG 2000 표준은 단일 압축 아키텍처에서 무손실 압축과 손실 압축을 모두 제공한다. 무손실 압축은 가역 정수 웨이블릿 변환을 사용하여 구현된다. JPEG 2000은 매우 낮은 압축률부터 매우 높은 압축률까지, 매우 광범위한 유효 비트율을 처리할 수 있는 능력을 갖추고 있는데, 이는 JPEG 2000의 강점 중 하나이다. 압축 후 얻어지는 코드 스트림은 본질적으로 확장 가능(scalable)하며, 여러 방식으로 디코딩될 수 있다. 예를 들어, 코드 스트림을 임의의 지점에서 잘라내면 더 낮은 해상도나 신호 대 잡음비로 이미지 표현을 얻을 수 있다. 이는 JPEG 2000이 다중 해상도 분해 구조를 통해 이를 자동으로 수행하기 때문이다. 이러한 확장성 기능은 EBCOT(Embedded Block Coding with Optimized Truncation[76]) 알고리즘의 높은 부호화 효율과 PCRD-opt(Post Compression Rate Distortion Optimization) 등의 특징에 기인한다.

기술적으로 JPEG 2000은 JPEG과 몇 가지 주요한 차이점을 가진다. 이미지 데이터의 주파수 변환에 이산 코사인 변환(DCT) 대신 이산 웨이블릿 변환(DWT)을 사용하며, 엔트로피 부호화에는 허프만 부호 대신 산술 부호를 사용한다.

시각적 인공물 측면에서도 차이가 나타난다. JPEG 2000은 주로 이미지 가장자리 근처에서 흐릿함과 고리 형태로 나타나는 링잉 인공물만을 생성하는 반면, JPEG는 링잉 인공물과 더불어 8×8 블록 구조로 인해 발생하는 '블록킹' 인공물도 함께 생성한다.

JPEG 2000 압축 인공물 시연. 숫자는 압축률을 나타냄.


다만, 매우 낮은 비트 전송률 응용 프로그램에서는 H.264의 프레임 내 코딩 모드에 비해 성능이 떨어진다는 연구 결과도 있다.[33] 또한, 코드 스트림의 유연성은 장점이지만, 이러한 유연성 때문에 코덱이 복잡해지고 계산 집약적이 되는 단점이 있다.

3. 2. 확장성

JPEG에 비해 JPEG 2000이 가지는 주요 장점 중 하나는 압축 성능 향상보다는 코드스트림의 상당한 유연성이다.[94] JPEG 2000으로 압축된 이미지에서 생성된 코드스트림은 본질적으로 확장 가능하며, 여러 방식으로 디코딩될 수 있다. 예를 들어, 코드스트림을 임의의 지점에서 잘라내면 원본 이미지보다 더 낮은 해상도나 낮은 신호 대 잡음비(SNR, 즉 품질)를 가진 이미지 표현을 얻을 수 있다. 이는 확장 가능한 압축의 한 형태이다. 다양한 방식으로 코드스트림을 정렬함으로써 응용 프로그램은 성능 향상을 얻을 수 있다.

JPEG 2000은 압축 과정에서 이미지를 여러 해상도로 분해하는 다중 해상도 표현 방식을 사용한다. 이 피라미드 표현은 압축 외에도 이미지 표현의 확장성을 제공하는 데 활용된다. 이러한 특징은 점진적 디코딩(Progressive Decodingeng) 또는 신호 대 잡음비(SNR) 확장성으로 알려져 있다. JPEG 2000은 픽셀 정확도와 이미지 해상도(크기)에 따라 점진적으로 효율적인 코드스트림 구성을 제공한다. 이를 통해 시청자는 전체 파일을 다운로드하기 전에 최종 이미지의 저품질 버전을 미리 볼 수 있으며, 소스로부터 더 많은 데이터를 다운로드함에 따라 점진적으로 이미지 품질이 향상된다.

또한 JPEG 2000은 관심 영역(Region of Interesteng, ROI) 코딩 기능을 지원한다. 이를 통해 이미지 내의 특정 영역을 다른 영역(배경)보다 더 높은 품질로 압축할 수 있다. 관심 영역으로 지정된 부분의 DWT 계수들은 MAXSHIFT[88]라는 방법을 사용하여 값을 상향 이동(shift up)시켜 부호화 우선순위를 높인다. 특정 서브밴드 b의 DWT 계수들이 가질 수 있는 값의 범위(동적 범위)를 M_b 비트라고 할 때, MAXSHIFT 방법에서 사용하는 상향 이동량 s는 다음 조건을 만족해야 한다.

s\geq\max(M_b)

MAXSHIFT 방법을 이용한 ROI 기능은 디코더가 ROI의 형태에 대한 추가 정보 없이도 작동할 수 있다는 장점이 있다.

3. 3. 기타 기능

JPEG 2000은 데이터를 비교적 작고 독립적인 블록으로 나누어 처리하기 때문에, JPEG처럼 잡음이 많은 통신 환경에서 발생하는 비트 오류에 강한 편이다.

JP2 및 JPX 파일 형식은 색 공간 정보와 메타데이터를 유연하게 처리할 수 있으며, JPIP 프로토콜을 통해 네트워크 환경에서의 상호작용도 지원한다. 컴포넌트당 1비트에서 최대 38비트까지의 다양한 비트 심도를 지원하며, 지원하는 색 공간도 흑백, 3가지 유형의 YCbCr, sRGB, PhotoYCC, CMY(K), YCCK, CIELab을 포함한다. 이후 CIEJab (CIECAM02), e-sRGB, ROMM, YPbPr 등도 추가로 지원하게 되었다.[10] 또한, 알파 채널과 투명도를 완벽하게 지원한다.

기존 JPEG가 Exif 형식으로 메타데이터를 저장하는 것과 달리, JPEG 2000은 XML 형태로 메타데이터를 인코딩한다. ISO TC42 위원회는 표준 12234-1.4를 통해 Exif 태그와 XML 요소 간의 참조를 표준화했으며, XMP(Extensible Metadata Platform) 정보도 포함할 수 있다.

4. 기술적 내용

JPEG 2000(JP2)은 이미지 압축 표준 및 코딩 시스템으로, 1997년부터 2000년까지 투라지 에브라히미(Touradj Ebrahimi)가 의장을 맡은 공동 사진 전문가 그룹(Joint Photographic Experts Group, JPEG) 위원회 주도로 개발되었다.[94] 이 표준은 이산 코사인 변환(DCT)을 기반으로 하는 기존 JPEG 표준(1992년 발표)을 대체하기 위해 새롭게 설계된 웨이블릿 기반의 이산 웨이블릿 변환(DWT) 방식을 사용한다. 표준화된 파일 이름 확장자는 ISO/IEC 15444-1 규격 파일의 경우 `.jp2`이고, 확장된 Part 2 사양(ISO/IEC 15444-2)의 경우 `.jpx`이다. 등록된 MIME 유형은 RFC 3745에 따라 `image/jp2`이다.

JPEG 2000의 개발 배경에는 1995년 리코JPEG-LS 표준화 과정에 CREW(Compression with Reversible Embedded Wavelets) 알고리즘[95][96]을 제안한 것이 있다. 비록 JPEG-LS 표준에는 LOCO-I 알고리즘이 최종 채택되었지만, CREW 알고리즘의 여러 특징들이 JPEG 2000 표준에 영향을 주었다.[97]

JPEG 2000의 주요 기술적 특징 중 하나는 코드스트림 내에서 특정 영역에 대한 무작위 접근(spatial random access) 또는 관심 영역(Region of Interest, ROI) 접근을 다양한 수준으로 지원한다는 점이다. 이를 통해 이미지의 특정 부분을 다른 부분보다 더 높은 품질로 저장하는 것이 가능하다.

또한, JPEG 2000은 이산 웨이블릿 변환(DWT)을 기반으로 하므로, 압축된 데이터 하나로부터 다양한 해상도나 품질의 이미지를 추출할 수 있는 스케일러빌리티(scalability) 기능을 제공한다. 이 기술은 모션 JPEG 2000 확장을 통해 동영상 압축에도 활용될 수 있으며, 실제로 2004년에는 디지털 시네마의 비디오 코딩 표준으로 채택되기도 했다.

하지만 2022년 기준으로 사파리를 제외한 대부분의 웹 브라우저에서 JPEG 2000을 제대로 지원하지 않아, 월드 와이드 웹에서는 널리 사용되지 못하고 있다.

4. 1. 색 공간 변환

JPEG 2000 인코딩 과정에서 이미지는 초기에 RGB 색 공간에서 다른 색 공간으로 변환된다. 이 과정은 색상 구성 요소 간 정보 중복성을 줄여 압축 효율을 높이기 위함이다.[28] JPEG 2000 표준에서는 두 가지 주요 색 공간 변환 방식을 정의하고 있다.

=== 비가역 색상 변환 (ICT) ===

비가역 색상 변환(Irreversible Color Transform, ICT)은 널리 알려진 YCbCr 색 공간을 사용한다. 이 변환 방식은 계산 시 부동소수점 또는 고정소수점 연산을 필요로 하는데, 이 과정에서 반올림 오차가 발생할 수 있다. 이러한 반올림 오차 때문에 원본 RGB 값으로 완전히 복원되지 않아 '비가역적'이라 불린다. ICT는 주로 데이터 손실을 허용하는 손실 압축 모드에서 사용되며, 9/7 웨이블릿 변환과 함께 사용하도록 권장된다.[28] ICT 변환식은 다음과 같다.

\begin{bmatrix}

Y \\ C_b \\ C_r

\end{bmatrix}

=

\begin{bmatrix}

0.299 & 0.587 & 0.114 \\

  • 0.16875 & -0.331260 & 0.5 \\

0.5 & -0.41869 & -0.08131

\end{bmatrix}

\begin{bmatrix}

R \\ G \\ B

\end{bmatrix}

=== 가역 색상 변환 (RCT) ===

가역 색상 변환(Reversible Color Transform, RCT)은 수정된 YUV 색 공간(구체적으로는 YCGCO와 거의 유사한 형태)을 사용하며, 모든 계산을 정수 연산으로만 수행한다. 이 방식은 양자화 오차를 발생시키지 않으므로, 변환된 색상 값을 다시 원래의 RGB 값으로 어떠한 손실도 없이 완벽하게 복원할 수 있다. 이러한 특성으로 인해 '가역적'이라 불리며, 주로 원본 데이터 보존이 중요한 무손실 압축 모드에서 사용된다. RCT는 5/3 웨이블릿 변환과 함께 사용하도록 권장된다.[28] RCT를 정확히 구현하기 위해서는 표준에서 지정한 방식대로 숫자를 반올림해야 하며, 이 변환 과정은 단순한 행렬 곱 형태로 표현하기는 어렵다. 변환 및 역변환 식은 다음과 같다.[28]

변환:



\begin{array}{rl}

Y' &=& \left\lfloor \frac{R+2G+B}{4} \right\rfloor ; \\

C'_b &=& B - G ; \\

C'_r &=& R - G ;

\end{array}



역변환:



\begin{array}{rl}

G &=& Y' - \left\lfloor \frac{C'_b + C'_r}{4} \right\rfloor ; \\

R &=& C'_r + G ; \\

B &=& C'_b + G.

\end{array}



RCT 과정에서 원본 R, G, B 값이 동일한 정밀도를 가질 때, 변환된 색차 성분인 C'b와 C'r은 원래 성분보다 1비트 더 높은 정밀도를 갖게 된다. 이 추가적인 정밀도는 변환 과정의 완전한 가역성을 보장하는 데 필수적이다.[28]

=== 추가 고려 사항 ===

색 공간 변환 후 얻어지는 색차 성분(Cb, Cr 또는 C'b, C'r)은 인간 시각이 휘도(밝기) 정보보다 색상 차이 정보에 덜 민감하다는 점을 이용해, 휘도 성분(Y 또는 Y')보다 해상도를 낮추는 다운샘플링을 적용할 수 있다. 이는 압축 효율을 높이는 데 도움이 되지만, 반드시 수행해야 하는 것은 아니다. 특히 웨이블릿 변환 자체가 이미지를 여러 해상도 스케일로 분해하기 때문에, 가장 세밀한 웨이블릿 스케일 정보를 제거하는 방식으로 다운샘플링을 더 효과적으로 구현할 수도 있다.[28]

JPEG 2000 표준에서는 이 색상 변환 단계를 '다중 구성 요소 변환(multi-component transform)'이라고 지칭한다. 이는 해당 변환 기술이 일반적인 RGB 이미지뿐만 아니라, 여러 데이터 채널(구성 요소)을 갖는 다양한 종류의 데이터에도 적용될 수 있음을 의미한다.[28]

4. 2. 웨이블릿 변환

JPEG 2000에 사용되는 웨이블릿 변환의 예시. 이는 2단계 CDF 9/7 웨이블릿 변환이다.


JPEG 2000은 입력 이미지를 타일(tile) 단위로 나누어 처리하며, 각 타일에 대해 웨이블릿 변환을 적용한다. 이는 JPEG 표준이 8×8 블록 크기의 이산 코사인 변환(DCT)을 사용하는 것과 대조된다. JPEG 2000은 두 가지 다른 웨이블릿 변환 방식을 사용한다.

# 비가역 변환 (손실 압축용): CDF 9/7 웨이블릿 변환을 사용한다.[29] 이 변환은 잉그리드 도베시가 개발했으며, 실수 연산을 포함하므로 복호화 과정에서 정밀도 차이로 인한 양자화 잡음이 발생할 수 있어 '비가역적'이라고 불린다. 주로 손실 압축에 사용된다.

# 가역 변환 (무손실 압축용): Le Gall–Tabatabai (LGT) 5/3 웨이블릿 변환의 반올림된 버전을 사용한다.[30][29][31] 이 변환은 디디에 르 갈(Didier Le Gall)과 알리 J. 타바타바이(Ali J. Tabatabai)가 개발했으며,[32] 정수 계수만을 사용하기 때문에 출력 값에 반올림(양자화) 과정이 필요 없어 양자화 잡음이 발생하지 않는다. 따라서 무손실 압축에 사용된다.

LGT 5/3 웨이블릿은 무손실 압축에 사용된다.


이러한 웨이블릿 변환은 리프팅 기법(Lifting Scheme) 또는 컨볼루션(Convolution) 방식으로 구현될 수 있다.

JPEG 2000은 JPEG과 비교하여 다음과 같은 주요 기술적 차이점을 가진다.

  • 주파수 변환: 이산 코사인 변환(DCT) 대신 이산 웨이블릿 변환(DWT)을 사용한다.
  • 엔트로피 부호화: 허프만 부호 대신 산술 부호를 사용한다.
  • 압축 방식: 가역 부호화(무손실 압축)와 비가역 부호화(손실 압축)를 동일한 틀 안에서 구현할 수 있다.


JPEG 2000은 하나의 압축된 이미지 데이터로부터 다양한 해상도나 화질(비트레이트)의 이미지를 추출할 수 있는 스케일러빌리티(Scalability) 기능을 제공한다. 이는 특히 EBCOT(Embedded Block Coding with Optimized Truncation)[76] 알고리즘의 높은 부호화 효율과 압축 후 레이트 제어(Post Compression Rate Distortion Optimization: PCRD-opt) 기능 덕분이다.

순방향 2차원 DWT의 예시


JPEG 2000에서는 2채널 필터뱅크에 기반한 분리 가능한 2차원 DWT가 사용된다. 이는 이미지의 수평 방향과 수직 방향으로 각각 1차원 DWT를 순차적으로 적용하여 2차원 변환 계수를 얻는 방식이다. Part 1 표준에서는 손실 압축용(CDF 9/7)과 무손실 압축용(LGT 5/3) 두 가지 DWT 필터를 정의하며, 두 필터 모두 리프팅 기법을 사용하여 구현된다. 리프팅 기법을 사용하면 변환 계수의 정밀도를 유한하게(예: 정수) 유지하면서도 수학적으로 완전한 가역 변환을 구현할 수 있다는 장점이 있다.

1단계의 2차원 DWT를 수행하면 이미지는 4개의 서브밴드(subband)로 분해된다.

  • LL: 수평 저주파, 수직 저주파 성분
  • HL: 수평 고주파, 수직 저주파 성분
  • LH: 수평 저주파, 수직 고주파 성분
  • HH: 수평 고주파, 수직 고주파 성분


일반적으로 DWT는 저주파 성분인 LL 서브밴드에 대해 반복적으로 적용되어 다단계 변환을 수행한다 (옥타브 분할). JPEG 2000 Part 1에서는 최대 32단계까지 DWT를 적용할 수 있도록 규정하고 있다 (0단계는 DWT 미적용).

JPEG 2000의 프리신크트


각 DWT 레벨에서 얻어진 변환 계수들은 프리신크트(precinct)라고 하는 직사각형 영역으로 그룹화된다. 프리신크트의 크기는 각 차원별로 2의 거듭제곱이어야 하며, 최대 215 × 215 크기를 가질 수 있다. 동일한 번호의 프리신크트들은 이미지의 특정 공간적 영역에 해당하는 DWT 계수들의 집합으로 볼 수 있으며, 이는 이후의 부호화 과정에서 패킷(packet)을 구성하고 프로그레션 순서(progression order)를 결정하는 기본 단위가 된다.

4. 3. 양자화

웨이블릿 변환 후, 계수들은 표현에 필요한 비트 수를 줄이기 위해 스칼라 양자화(scalar quantization) 과정을 거친다. 이 과정은 데이터 압축을 가능하게 하지만, 동시에 이미지 품질의 손실을 유발할 수 있다.[76]

양자화 과정에서 핵심적인 매개변수는 양자화 단계(quantization step size)이다. 이 단계 값이 클수록 더 많은 정보가 손실되어 압축률은 높아지지만 이미지 품질은 저하된다. 반대로 단계 값이 작을수록 원본에 가까운 품질을 유지하지만 압축률은 낮아진다. 특히 무손실 압축 모드에서는 정보 손실이 전혀 없어야 하므로, 양자화 단계를 1로 설정한다. 이는 사실상 양자화를 수행하지 않는 것과 같다. 손실 압축 모드에서는 각 DWT 레벨이나 서브밴드별로 다른 양자화 단계 값을 지정하여 압축률과 품질을 세밀하게 조절할 수 있다.

JPEG 2000 표준의 Part 1에서는 스칼라 양자화만 지원한다. 스칼라 양자화는 각 웨이블릿 계수 x_b를 주어진 양자화 단계 \Delta_b로 나누고, 그 결과를 정수로 만드는 방식으로 이루어진다. 수식으로는 다음과 같이 표현할 수 있다.

Q(x_b) = \operatorname{sgn}(x_b) \left\lfloor \frac

{\Delta_b} \right\rfloor

여기서 Q(x_b)는 양자화된 계수, \operatorname{sgn}(x_b)는 계수의 부호, |x_b|는 계수의 절댓값, \Delta_b는 해당 서브밴드 b의 양자화 단계, \lfloor \cdot \rfloor는 바닥 함수(소수점 이하 버림)를 의미한다.

표준의 Part 2에서는 스칼라 양자화 외에 TCQ(Trellis Coded Quantization, 격자 부호화 양자화)라는 더 복잡한 양자화 방법도 선택적으로 사용할 수 있다.[87]

양자화된 계수들은 이후 엔트로피 부호화 단계(주로 산술 부호 방식 사용)를 거쳐 최종적인 압축 비트스트림으로 변환된다. 이 과정에서 EBCOT(Embedded Block Coding with Optimized Truncation) 알고리즘이 중요한 역할을 하며, 압축된 데이터로부터 다양한 해상도나 품질의 이미지를 추출할 수 있는 스케일러빌리티(scalability) 기능을 구현하는 데 기여한다.[76] 이는 이산 코사인 변환 후 허프만 부호를 사용하는 JPEG 방식과의 주요 차이점 중 하나이다.

4. 4. 코딩

이산 웨이블릿 변환(DWT)을 거친 계수들은 양자화 과정을 통해 스칼라 값으로 변환된다. 이 과정은 데이터 양을 줄여 압축률을 높이는 단계로, 양자화 단계(step size) 값을 조절하여 압축률과 품질 손실 정도를 결정한다. 양자화 단계 값이 1이면 양자화가 수행되지 않아 무손실 압축에 사용된다.

양자화된 계수들은 여러 개의 서브 밴드(sub-band)로 구성된다. 각 서브 밴드는 특정 주파수 대역과 이미지의 공간적 영역에 해당하는 계수들의 집합이다. 이 서브 밴드들은 다시 프리싱크트(precinct)라는 사각형 영역으로 나뉜다. 프리싱크트는 이미지의 특정 부분에 효율적으로 접근하기 위해 사용되지만, 필수적인 것은 아니다.

프리싱크트는 다시 코드 블록(code block)이라는 더 작은 단위로 분할된다. 코드 블록은 하나의 서브 밴드 내에 위치하며, 이미지 경계를 제외하고는 일반적으로 동일한 크기를 가진다. 코드 블록의 크기는 가로, 세로 각각 4 이상 1024 이하, 면적은 4096 이하인 2의 거듭제곱 값 중에서 선택할 수 있으며, 보통 64x64나 32x32 크기가 사용된다. 코드 블록은 JPEG 2000 코딩의 최소 단위이다.

코드 블록 분할의 예


각 코드 블록 내의 양자화된 DWT 계수들은 EBCOT(Embedded Block Coding with Optimized Truncation)[76] 알고리즘을 사용하여 부호화된다. EBCOT는 각 코드 블록을 비트 플레인(bit-plane) 단위로 나누어 처리한다. 비트 플레인은 계수들의 이진 표현에서 동일한 위치에 있는 비트들의 집합을 의미한다.

EBCOT에서의 비트 플레인


EBCOT는 가장 중요한 비트(최상위 비트 플레인)부터 덜 중요한 비트(최하위 비트 플레인) 순서로 코딩을 진행한다. 이때, 모든 비트가 0인 상위 비트 플레인들(제로 비트 플레인)은 코딩하지 않고 그 개수만 기록하여 효율성을 높인다. 각 비트 플레인은 세 가지 코딩 패스(coding pass)를 통해 처리된다.

EBCOT에서의 계수 비트의 스캔 패턴


세 가지 코딩 패스는 다음과 같다.

  • 중요성 전파 (Significance Propagation, SP): 아직 중요하지 않은(significant) 상태가 아니지만, 주변에 이미 중요한 계수가 있는 비트를 코딩한다. 이 패스를 거치면 해당 비트는 중요한 상태가 된다.
  • 크기 정제 (Magnitude Refinement, MR): 이미 이전 비트 플레인에서 중요하다고 판단된 계수의 현재 비트 플레인 값을 코딩한다. 이는 계수 값의 정밀도를 높이는 과정이다.
  • 정리 (Cleanup, CU): SP나 MR 패스에 속하지 않는 나머지 비트들을 코딩한다. 최상위 비트 플레인은 정보가 부족하여 항상 CU 패스로 처리된다.


각 코딩 패스에서 선택된 비트들은 주변 비트들의 상태(문맥, context)를 고려하여 MQ-코더라는 이진 산술 코더를 통해 압축된 비트 스트림으로 변환된다. MQ-코더는 JBIG2 표준에서도 사용되는 효율적인 산술 부호화 방식이다.

JPEG 2000 Part 1 부호화 절차


MQ-코더를 통해 생성된 비트 스트림은 패킷(packet) 단위로 구성된다. 패킷은 특정 프리싱크트 내 모든 코드 블록에서 나온 코딩 패스 결과들을 모아놓은 것으로, JPEG 2000의 확장성(scalability)을 구현하는 핵심 요소이다. 패킷 헤더에는 패킷이 비어있는지 여부, 포함된 코드 블록 정보, 제로 비트 플레인 수, 코딩 패스 수, 비트 스트림 길이 등의 정보가 포함된다.

패킷들은 다시 레이어(layer)로 묶인다. 레이어는 특정 이미지 품질 수준에 해당하는 패킷들의 집합이다. 일반적으로 코덱은 레이어가 추가될수록 이미지 품질이 점진적으로 향상되도록 패킷을 구성한다. 이를 통해 수신 측에서는 필요한 품질 수준까지만 데이터를 받아 디코딩할 수 있다.

JPEG 2000 코드 스트림 구조의 예(LRCP 프로그레션)


JPEG 2000 표준은 최적의 압축률과 품질을 달성하기 위해 각 코드 블록에서 어떤 코딩 패스까지 포함할지(즉, 패킷 길이를 어떻게 결정할지) 결정하는 구체적인 방법을 정의하지는 않는다. 하지만 일반적으로 비트율-왜곡 최적화(rate-distortion optimization) 기법을 사용한다. 이 기법은 각 코딩 패스를 포함했을 때 얻는 품질 향상(왜곡 감소량)과 비트율 증가량을 비교하여, 주어진 목표 비트율 내에서 전체 왜곡을 최소화하는 패킷 조합을 찾는다. 이는 라그랑주 승수를 이용한 최적화 문제 해결 방식으로 구현될 수 있다.

최종적으로 생성된 패킷들은 프로그레션 순서(progression order)에 따라 코드 스트림 내에 배열된다. 프로그레션 순서는 디코더가 이미지 데이터를 어떤 순서로 해석할지를 결정하며, 다음 5가지 방식이 가능하다.

  • LRCP: 레이어 → DWT 레벨 → 색상 컴포넌트 → 프리싱크트 (품질 우선)
  • RLCP: DWT 레벨 → 레이어 → 색상 컴포넌트 → 프리싱크트 (해상도 우선)
  • RPCL: DWT 레벨 → 프리싱크트 → 색상 컴포넌트 → 레이어 (해상도 및 위치 우선)
  • PCRL: 프리싱크트 → 색상 컴포넌트 → DWT 레벨 → 레이어 (위치 우선)
  • CPRL: 색상 컴포넌트 → 프리싱크트 → DWT 레벨 → 레이어 (색상 성분 우선)


이러한 유연한 코드 스트림 구조 덕분에 JPEG 2000은 이미지의 특정 해상도, 품질 수준, 또는 공간적 영역만을 선택적으로 디코딩하는 것이 용이하다.

5. JPEG 2000 이미지 코딩 시스템 - 파트

JPEG 2000 이미지 코딩 시스템(ISO/IEC 15444)은 다음의 파트로 구성된다.

JPEG 2000 이미지 코딩 시스템 - 파트[11][12]
파트번호공개 출시일최신
수정본
동일한
ITU-T
표준
제목설명
초판현재
파트 1[https://www.iso.org/standard/87632.html ISO/IEC 15444-1]20002024[http://www.itu.int/rec/T-REC-T.800 T.800]코어 코딩 시스템JPEG 2000 압축의 기본 특성 (.jp2)
파트 2[https://www.iso.org/standard/84573.html ISO/IEC 15444-2]20042023[13][http://www.itu.int/rec/T-REC-T.801 T.801]확장확장된 기능 (.jpx, .jpf, 부동 소수점 등)
파트 3[https://www.iso.org/standard/41570.html ISO/IEC 15444-3]200220072010[14][http://www.itu.int/rec/T-REC-T.802 T.802]Motion JPEG 2000동영상 압축 (.mj2)
파트 4[https://www.iso.org/standard/85636.html ISO/IEC 15444-4]20022024[http://www.itu.int/rec/T-REC-T.803 T.803]적합성 테스트표준 준수 여부 검증 절차
파트 5[https://www.iso.org/standard/81575.html ISO/IEC 15444-5]20032021[15][http://www.itu.int/rec/T-REC-T.804 T.804]참조 소프트웨어JavaC 구현 제공
파트 6[https://www.iso.org/standard/61124.html ISO/IEC 15444-6]20032013[http://www.itu.int/rec/T-REC-T.805 T.805]복합 이미지 파일 형식문서 이미지, 사전 인쇄 등 복합 콘텐츠 (.jpm)
파트 7폐지됨[11]ISO/IEC 15444-1의 최소 지원 기능 가이드라인[16](최소 지원 기능에 대한 기술 보고서[17])
파트 8[https://www.iso.org/standard/82566.html ISO/IEC 15444-8]20072023[18][http://www.itu.int/rec/T-REC-T.807 T.807]보안 JPEG 2000JPSEC (보안 기능 확장)
파트 9[https://www.iso.org/standard/82567.html ISO/IEC 15444-9]20052023[19][http://www.itu.int/rec/T-REC-T.808 T.808]상호 작용 도구, API 및 프로토콜JPIP (네트워크 상호 작용 프로토콜 및 API)
파트 10[https://www.iso.org/standard/61534.html ISO/IEC 15444-10]20082011[20][http://www.itu.int/rec/T-REC-T.809 T.809]3차원 데이터 확장을 위한JP3D (체적 이미징)
파트 11[https://www.iso.org/standard/40025.html ISO/IEC 15444-11]200720072013[21][http://www.itu.int/rec/T-REC-T.810 T.810]무선JPWL (무선 환경에서의 오류 보호)
파트 12[https://www.iso.org/standard/38612.html ISO/IEC 15444-12]
(2017년에 철회됨)
20042015[22]ISO 기본 미디어 파일 형식다른 파일 형식의 기반 제공
파트 13[https://www.iso.org/standard/42271.html ISO/IEC 15444-13]20082008[23][http://www.itu.int/rec/T-REC-T.812 T.812]엔트리 레벨 JPEG 2000 인코더기본적인 인코더 사양 정의
파트 14[https://www.iso.org/standard/50410.html ISO/IEC 15444-14]2013[24][http://www.itu.int/rec/T-REC-T.813 T.813]XML 표현 및 참조JPXML (XML 기반 메타데이터 표현) [25]
파트 15[https://www.iso.org/standard/76621.html ISO/IEC 15444-15]20192019[https://www.itu.int/rec/T-REC-T.814-201906-I/en T.814]고처리량 JPEG 2000HTJ2K (고속 처리용) 및 .jph 파일 형식
파트 16[https://www.iso.org/standard/80620.html ISO/IEC 15444-16]20192021[26][https://www.itu.int/rec/T-REC-T.815/en T.815]ISO/IEC 23008-12에 JPEG 2000 이미지 캡슐화HEIF 파일 형식 내 JPEG 2000 사용


6. 응용 분야

JPEG 2000은 다양한 분야에서 활용되는 이미지 압축 표준이다. 주요 응용 분야는 다음과 같다.


  • 멀티미디어 기기: 디지털 카메라, 개인 정보 단말기, 3G 휴대폰, 컬러 팩시밀리, 프린터, 스캐너 등 소비자용 기기.
  • 클라이언트/서버 통신: 인터넷 이미지 데이터베이스, 비디오 스트리밍, 비디오 서버 등.
  • 군사/감시: 고해상도(HD) 위성 이미지, 모션 감지, 네트워크 배포 및 저장.
  • 의료 영상: 특히 의료 데이터 교환을 위한 DICOM 표준에서 지원된다.[91]
  • 생체 인식
  • 원격 감지
  • 고품질 프레임 기반 비디오 녹화, 편집 및 저장.
  • 라이브 HDTV 피드 기여: 낮은 전송 지연 시간의 I-프레임 전용 비디오 압축 방식으로, 텔레비전 방송국 스튜디오에 연결되는 스포츠 이벤트 생중계 등에 사용된다.
  • 디지털 시네마: 2004년 비디오 코딩 표준으로 채택되었으며[89], 디지털 시네마 패키지(DCP) 등에 사용된다.
  • 디지털 보존: 공문서, 예술 작품[90], 디지털 오디오-비주얼 콘텐츠 및 이미지의 장기 보존.
  • 기상 데이터: 세계 기상 기구(WMO)는 GRIB2 파일 형식에 JPEG 2000 압축을 사용하여 파일 크기를 최대 80%까지 줄였다.[8]
  • 기타: 업무용 이미지 전송 시스템, 감시 카메라, PDF 파일 내 이미지 포맷 등.


JPEG 2000은 높은 압축 효율과 다양한 기능을 갖추고 있어 발표 초기에는 소비자용 기기에서도 널리 사용될 것으로 기대되었다. 그러나 기존 JPEG에 비해 계산량이 많아 처리 속도가 느리고 배터리 소모가 크다는 단점이 있어, 디지털 카메라 등에서의 채택은 예상보다 더디게 진행되었다. 이러한 문제를 해결하기 위해 Part 15(High Throughput JPEG 2000)에서는 새로운 블록 부호화 알고리즘을 표준화하여 처리 속도를 크게 향상시켰다.

6. 1. 한국 내 활용 사례

(작성할 내용 없음 - 원본 소스에 해당 섹션 관련 정보가 부재함)

7. 법적 지위

ISO 15444 표준은 특허로 보호되며, 17개의 특허 소유자가 명시되어 있다. 그러나 표준 개발에 기여한 회사와 조직들은 핵심 코딩 시스템인 파트 1(Part 1)에 대해서는 라이선스 비용 없이 사용할 수 있도록 합의했다. 다만 이것이 공식적인 보증을 의미하는 것은 아니다.[38][39] 일부 확장 기능을 사용하려면 라이선스 및 로열티 지불이 필요할 수 있다.[40][41]

JPEG 위원회는 다음과 같이 밝혔다.

:JPEG 위원회는 항상 자사의 표준이 로열티 및 라이선스 수수료 지불 없이 기본 형태로 구현될 수 있도록 하는 것을 강력한 목표로 삼았습니다... 새롭게 부상하는 JPEG 2000 표준은 이러한 방침에 따라 준비되었으며, 이 분야에서 많은 특허를 보유한 20개 이상의 대규모 조직과 합의하여 라이선스 수수료나 로열티 지불 없이 표준과 관련된 지적 재산을 사용할 수 있도록 했습니다.[42]

하지만 JPEG 위원회는 2004년에 공개되지 않은 잠재 특허가 위험을 초래할 수 있음을 인정하며 다음과 같이 덧붙였다.

:물론, 다른 조직이나 개인이 표준 구현에 영향을 미치는 지적 재산권을 주장할 가능성은 여전히 있으며, 모든 구현자는 이 분야에서 자체적인 검색 및 조사를 수행할 것을 권장합니다.[43]

ISO/IEC 15444-1:2016 표준의 "부록 L: 특허 명세서"에서는 다음과 같이 명시하고 있다.

:국제 표준화 기구 (ISO) 및 국제 전기 기술 위원회 (IEC)는 이 권고 또는 국제 표준의 준수가 특허의 사용을 수반할 수 있다는 주장이 있음에 주목합니다.

:

:지적 재산권 명세서의 전체 목록은 ITU-T 및 ISO 특허 선언 데이터베이스에서 얻을 수 있습니다 ([https://www.iso.org/iso-standards-and-patents.html]).

:

:ISO와 IEC는 이러한 특허권의 증거, 유효성 및 범위에 대해 어떠한 입장도 취하지 않습니다.

:

:이 권고 또는 국제 표준의 일부 요소가 위에 언급된 데이터베이스에 식별되지 않은 특허권의 대상이 될 수 있다는 가능성에 주목합니다. ISO와 IEC는 그러한 모든 특허권을 식별하는 것에 대해 책임을 지지 않습니다.

8. 관련 표준

JPEG 표준과 마찬가지로, JPEG 2000은 파일 형식과 코드스트림을 모두 정의한다. JPEG 2000 이미지는 파일로 저장될 때 일반적으로 JPEG 2000 파일 형식(`'''.jp2'''`)으로 묶인다. 표준의 파트 2 확장(ISO/IEC 15444-2)은 여러 코드스트림의 애니메이션이나 구성을 하나의 이미지로 포함하는 메커니즘을 통해 파일 형식을 확장하며, 이 확장된 파일 형식은 JPX라고 하며 파일 확장자 `'''.jpf'''`를 사용해야 하지만,[36] `'''.jpx'''`도 사용된다.[37]

JPEG 2000 이미지 코딩 시스템(ISO/IEC 15444)은 다음과 같은 여러 파트로 구성된다.

JPEG 2000 이미지 코딩 시스템 - 파트[11][12]
파트번호공개 출시일최신
수정본
동일한
ITU-T
표준
제목설명
초판현재
파트 1[https://www.iso.org/standard/87632.html ISO/IEC 15444-1]20002024[http://www.itu.int/rec/T-REC-T.800 T.800]코어 코딩 시스템JPEG 2000 압축의 기본 특성 (.jp2)
파트 2[https://www.iso.org/standard/84573.html ISO/IEC 15444-2]20042023[13][http://www.itu.int/rec/T-REC-T.801 T.801]확장(.jpx, .jpf, 부동 소수점)
파트 3[https://www.iso.org/standard/41570.html ISO/IEC 15444-3]200220072010[14][http://www.itu.int/rec/T-REC-T.802 T.802]Motion JPEG 2000(.mj2)
파트 4[https://www.iso.org/standard/85636.html ISO/IEC 15444-4]20022024[http://www.itu.int/rec/T-REC-T.803 T.803]적합성 테스트
파트 5[https://www.iso.org/standard/81575.html ISO/IEC 15444-5]20032021[15][http://www.itu.int/rec/T-REC-T.804 T.804]참조 소프트웨어Java 및 C 구현
파트 6[https://www.iso.org/standard/61124.html ISO/IEC 15444-6]20032013[http://www.itu.int/rec/T-REC-T.805 T.805]복합 이미지 파일 형식(.jpm) 문서 이미지, 사전 인쇄, 팩스 등 응용 프로그램
파트 7폐지됨[11]ISO/IEC 15444-1의 최소 지원 기능 가이드라인[16](최소 지원 기능에 대한 기술 보고서[17])
파트 8[https://www.iso.org/standard/82566.html ISO/IEC 15444-8]20072023[18][http://www.itu.int/rec/T-REC-T.807 T.807]보안 JPEG 2000JPSEC (보안 측면)
파트 9[https://www.iso.org/standard/82567.html ISO/IEC 15444-9]20052023[19][http://www.itu.int/rec/T-REC-T.808 T.808]상호 작용 도구, API 및 프로토콜JPIP (상호 작용 프로토콜 및 API)
파트 10[https://www.iso.org/standard/61534.html ISO/IEC 15444-10]20082011[20][http://www.itu.int/rec/T-REC-T.809 T.809]3차원 데이터 확장을 위한JP3D (체적 이미징)
파트 11[https://www.iso.org/standard/40025.html ISO/IEC 15444-11]200720072013[21][http://www.itu.int/rec/T-REC-T.810 T.810]무선JPWL (무선 응용 프로그램)
파트 12[https://www.iso.org/standard/38612.html ISO/IEC 15444-12]
(2017년에 철회됨)
20042015[22]ISO 기본 미디어 파일 형식
파트 13[https://www.iso.org/standard/42271.html ISO/IEC 15444-13]20082008[23][http://www.itu.int/rec/T-REC-T.812 T.812]엔트리 레벨 JPEG 2000 인코더
파트 14[https://www.iso.org/standard/50410.html ISO/IEC 15444-14]2013[24][http://www.itu.int/rec/T-REC-T.813 T.813]XML 표현 및 참조JPXML[25]
파트 15[https://www.iso.org/standard/76621.html ISO/IEC 15444-15]20192019[https://www.itu.int/rec/T-REC-T.814-201906-I/en T.814]고처리량 JPEG 2000HTJ2K 및 JPH 파일 형식
파트 16[https://www.iso.org/standard/80620.html ISO/IEC 15444-16]20192021[26][https://www.itu.int/rec/T-REC-T.815/en T.815]ISO/IEC 23008-12에 JPEG 2000 이미지 캡슐화HEIF



=== Motion JPEG 2000 ===

Motion JPEG 2000 (MJ2)은 ISO/IEC 15444-3으로 정의된 표준으로, 동영상 시퀀스에 JPEG 2000 형식을 사용한다.[47] 각 프레임은 JPEG 2000으로 독립적으로 압축되며, 시간적 또는 프레임 간 압축은 사용하지 않는다. 오디오와 결합하여 전체 프레젠테이션을 구성할 수 있으며,[48][49] 파일 형식은 ISO 기본 미디어 파일 형식(ISO/IEC 15444-12)을 기반으로 한다.[50] 파일 확장자는 `'''.mj2'''` 또는 `'''.mjp2'''`이다. MJ2는 디지털 보존 형식으로 고려되기도 한다.[52]

=== JPIP ===

JPIP (JPEG 2000 Interactive Protocol)는 ISO/IEC 15444-9로 정의된 이미지 검색 프로토콜이다.[46] 이 프로토콜을 사용하면 클라이언트가 이미지 서버에 있는 거대한 이미지의 특정 영역만 선택적으로 요청하여 전송받을 수 있어, 필요한 네트워크 대역폭을 줄일 수 있다. JPEG 2000 데이터는 ERDAS ECW/JP2 SDK의 ECWP 및 ECWPS 프로토콜을 사용하여 스트리밍될 수도 있다.

=== ISO 기본 미디어 파일 형식 ===

ISO/IEC 15444-12는 ISO 기본 미디어 파일 형식을 정의하며, 이는 ISO/IEC 14496-12(MPEG-4 Part 12)와 동일하다. Motion JPEG 2000 파일 형식뿐만 아니라 MP4 파일 형식, 3GP 파일 형식 등도 이 기본 형식을 기반으로 한다.

=== GML JP2 ===

오픈지오스페이셜 컨소시엄(OGC)은 지리 참조된 JPEG 2000 이미지를 위한 메타데이터 표준인 GMLJP2를 정의했다. 이는 XML을 사용하여 지리 마크업 언어(GML) 형식으로 지리 정보를 이미지 파일 내에 임베딩하는 방식이다.[58] GMLJP2 마크업이 포함된 JP2 및 JPX 파일은 지리 정보 시스템(GIS)에서 GeoTIFF와 유사하게 지구 표면의 정확한 위치에 배치하고 표시할 수 있다. 버전 2.0은 2014년에 승인되었다.[58]

9. 응용 프로그램 및 라이브러리 지원

JPEG 2000은 다양한 응용 프로그램과 라이브러리에서 지원된다. 주요 이미지 편집 프로그램 및 뷰어, 개발 라이브러리에서의 지원 현황은 다음과 같다.

JPEG 2000의 응용 프로그램 지원
프로그램파트 1파트 2라이선스
읽기쓰기읽기쓰기
ACDSee알 수 없음알 수 없음상용
Acorn[59]알 수 없음알 수 없음상용
Affinity Photo아니요아니요아니요상용
애플 iPhoto아니요아니요상용
오토데스크 AutoCAD알 수 없음상용
BAE Systems CoMPASS아니요아니요상용
Blender[60]알 수 없음알 수 없음오픈 소스 (GPL)
Phase One Capture One상용
Chasys Draw IES프리웨어
CineAsset상용
CompuPic Pro알 수 없음알 수 없음상용
Corel Photo-Paint상용
Daminion[61]아니요아니요상용
darktable[62]알 수 없음알 수 없음알 수 없음오픈 소스 (GPL)
DBGallery아니요아니요상용
digiKam[63][64] (KDE[65])알 수 없음알 수 없음오픈 소스 (GPL)
ECognition알 수 없음알 수 없음상용
ENVI알 수 없음알 수 없음상용
ERDAS IMAGINE알 수 없음알 수 없음상용
evince (PDF 1.5 임베딩)아니요아니요아니요오픈 소스 (GPL v2)
FastStone Image Viewer프리웨어
FastStone MaxView아니요아니요상용
FotoGrafix 2.0아니요아니요아니요아니요상용
FotoSketcher 2.70아니요아니요아니요아니요상용
GIMP 2.7[66]부분적 (플러그인)알 수 없음알 수 없음오픈 소스 (GPL)
Global Mapper아니요아니요상용
GNOME Web해당 없음알 수 없음해당 없음오픈 소스 (GPL)
Google Chrome부분적 (PDF)아니요알 수 없음아니요프리웨어
GraphicConverter알 수 없음셰어웨어
Gwenview (KDE[65])알 수 없음알 수 없음오픈 소스 (GPL)
IDL알 수 없음알 수 없음상용
ImageGlass[67]아니요아니요아니요오픈 소스 (GPL[68])
ImageMagick오픈 소스 (ImageMagick 라이선스)
Imagine (플러그인 포함)[69]아니요아니요아니요프리웨어
IrfanView아니요아니요프리웨어
KolourPaint (KDE[65])알 수 없음알 수 없음오픈 소스 (2-clause BSD)
Krita아니요알 수 없음아니요오픈 소스 (GPL)
LEADTOOLS[70][71]상용
Lightroom아니요아니요아니요아니요상용
Mathematica아니요아니요상용
Matlab툴박스를 통해툴박스를 통해툴박스를 통해툴박스를 통해상용
Mozilla Firefox부분적 (PDF, 플러그인)해당 없음알 수 없음해당 없음오픈 소스 (MPL)
Opera부분적 (PDF)해당 없음알 수 없음해당 없음상용
PaintShop Pro상용
PhotoFiltre아니요아니요아니요아니요상용
PhotoLine알 수 없음알 수 없음상용
Photoshop상용
[https://www.dl-c.com/site/products/ Picture Window Pro 7]아니요알 수 없음아니요상용
Pixel 이미지 편집기알 수 없음알 수 없음상용
Pixelmator Pro[72]알 수 없음알 수 없음상용
Preview상용
QGIS (플러그인 포함)알 수 없음알 수 없음오픈 소스 (GPL)
Safari부분적 (PDF)해당 없음해당 없음상용
Seashore[73]알 수 없음알 수 없음오픈 소스 (GPL)
SilverFast상용
XnView상용
Ziproxy아니요아니요오픈 소스 (GPL)



JPEG 2000 라이브러리 지원
라이브러리파트 1파트 2언어라이선스
읽기쓰기읽기쓰기
Grok부분적아니요C++오픈 소스 (AGPL)
JasPer아니요아니요C오픈 소스 ([https://raw.githubusercontent.com/jasper-software/jasper/master/LICENSE.txt JasPer 라이선스])
KakaduC++독점
OpenJPEG부분적부분적C오픈 소스 (2-clause BSD)



이 외에도 다음과 같은 운영 체제, 프레임워크, 프로그램 등에서 JPEG 2000을 지원한다.


  • 운영 체제: macOS, iOS
  • 프레임워크 및 툴킷:
  • * GTK (툴킷)(GTK)[92]
  • * Qt[93]
  • 기타 소프트웨어:
  • * 디지털 시네마 이니셔티브(DCI) 규격의 디지털 시네마
  • * Honeyview
  • * JTrim
  • * Susie (플러그인 필요)
  • * JuGeMu JPEG 2000 뷰어 (JPEG2000 Part1 지원)


오픈 소스 라이브러리인 OpenJPEG, JasPer, Grok 등을 통해 개발자들은 자신의 응용 프로그램에 JPEG 2000 기능을 통합할 수 있다.

참조

[1] 서적 JPEG2000 Image Compression Fundamentals, Standards and Practice: Image Compression Fundamentals, Standards and Practice https://books.google[...] Springer Science & Business Media 2012
[2] 논문 RFC 3745: MIME Type Registrations for JPEG 2000 (ISO/IEC 15444) https://datatracker.[...] Internet Engineering Task Force 2024-04-21
[3] 서적 CREW: Compression with Reversible Embedded Wavelets https://ieeexplore.i[...] IEEE Comput. Soc. Press 1995
[4] 논문 Decoding compression with reversible embedded wavelets (CREW) codestreams https://www.spiedigi[...] 1998-07-01
[5] 서적 An overview of JPEG-2000 https://ieeexplore.i[...] IEEE Comput. Soc 2000
[6] 서적 Understanding Digital Cinema: A Professional Handbook https://books.google[...] Taylor & Francis 2005
[7] 논문 On Implementation of Open Standards in Software: To What Extent Can ISO Standards Be Implemented in Open Source Software? http://www.diva-port[...] 2015
[8] 웹사이트 wgrib2 home page http://www.cpc.ncep.[...]
[9] 문서 The JPEG Still Picture Compression Standard http://www.cis.templ[...]
[10] 웹사이트 Guest post: Color in JP2 http://blog.wellcome[...] 2021-01-18
[11] 웹사이트 Joint Photographic Experts Group, JPEG2000 http://www.jpeg.org/[...] 2009-11-01
[12] 웹사이트 JPEG2000 (ISO 15444) https://eden.ign.fr/[...] 2009-11-01
[13] 웹사이트 ISO/IEC 15444-2:2023 - Information technology — JPEG 2000 image coding system — Part 2: Extensions https://www.iso.org/[...] 2023-07-20
[14] 웹사이트 ISO/IEC 15444-3:2007 – Information technology – JPEG 2000 image coding system: Motion JPEG 2000 https://www.iso.org/[...] 2017-10-19
[15] 웹사이트 ISO/IEC 15444-5:2021 – Information technology – JPEG 2000 image coding system: Reference software https://www.iso.org/[...] 2017-10-19
[16] 웹사이트 JPEG, JBIG – Resolutions of 22nd WG1 New Orleans Meeting http://kikaku.itscj.[...] 2009-11-01
[17] 웹사이트 22nd WG1 New Orleans Meeting, Draft Meeting Report http://kikaku.itscj.[...] 2009-11-01
[18] 웹사이트 iso https://www.iso.org/[...]
[19] 웹사이트 iso https://www.iso.org/[...]
[20] 웹사이트 ISO/IEC 15444-10:2011 – Information technology – JPEG 2000 image coding system: Extensions for three-dimensional data https://www.iso.org/[...] 2017-10-19
[21] 웹사이트 ISO/IEC 15444-11:2007 – Information technology – JPEG 2000 image coding system: Wireless https://www.iso.org/[...] 2017-10-19
[22] 웹사이트 ISO/IEC 15444-12:2015 – Information technology – JPEG 2000 image coding system – Part 12: ISO base media file format https://www.iso.org/[...] 2017-10-19
[23] 웹사이트 ISO/IEC 15444-13:2008 – Information technology – JPEG 2000 image coding system: An entry level JPEG 2000 encoder https://www.iso.org/[...] 2017-10-19
[24] 웹사이트 ISO/IEC 15444-14:2013 – Information technology – JPEG 2000 image coding system – Part 14: XML representation and reference https://www.iso.org/[...] 2009-11-01
[25] 웹사이트 Resolutions of 41st WG1 San Jose Meeting http://kikaku.itscj.[...] 2009-11-01
[26] 웹사이트 iso https://www.iso.org/[...]
[27] 논문 JPEG 2000 for Long-term Preservation: JP2 as a Preservation Format http://www.dlib.org/[...] 2011
[28] 웹사이트 T.800 : Information technology - JPEG 2000 image coding system: Core coding system https://www.itu.int/[...] 2021-03-19
[29] 논문 Mathematical properties of the JPEG2000 wavelet filters https://pdfs.semanti[...]
[30] 웹사이트 General characteristics and design considerations for temporal subband video coding https://www.itu.int/[...] Video Coding Experts Group 2019-09-13
[31] 서적 The Essential Guide to Video Processing https://books.google[...] Academic Press
[32] 학회발표 Sub-band coding of digital images using symmetric short kernel filters and arithmetic coding techniques 1988
[33] 웹사이트 Performance Comparison: H.26L Intra Coding vs. JPEG2000 http://etill.net/pap[...] 2008-04-22
[34] 웹사이트 JPEG2000 Performance Benchmarks on GPU https://www.fastcomp[...] 2019-04-26
[35] 웹사이트 JPEG2000 Performance Specification http://comprimato.co[...] 2016-09-01
[36] 간행물 ISO/IEC 15444-2 Information technology — JPEG 2000 image coding system: Extensions ISO 2004-05-15
[37] 웹사이트 JPEG 2000 Part 2 (Extensions) jpf (jpx) File Format https://www.loc.gov/[...] Library of Congress 2022-11-22
[38] Full draft JPEG 2000 Part 1 (Core) jp2 File Format https://www.loc.gov/[...] Library of Congress 2022-04-27
[39] Full draft JPEG 2000 Part 1, Core Coding System https://www.loc.gov/[...] Library of Congress 2022-11-22
[40] Full draft JPEG 2000 Part 2 (Extensions) jpf (jpx) File Format https://www.loc.gov/[...] Library of Congress 2022-11-22
[41] Full draft JPEG 2000 Part 2, Coding Extensions https://www.loc.gov/[...] Library of Congress 2005-06-21
[42] 웹사이트 JPEG 2000 Concerning recent patent claims https://web.archive.[...]
[43] 웹사이트 JPEG 2000 Committee Drafts https://web.archive.[...]
[44] 웹사이트 ISO/IEC 15444-2:2004, Information technology – JPEG 2000 image coding system: Extensions http://www.iso.org/i[...] 2009-06-11
[45] 웹사이트 ISO/IEC 15444-6:2003, Information technology – JPEG 2000 image coding system – Part 6: Compound image file format http://www.iso.org/i[...] 2009-06-11
[46] 웹사이트 ISO/IEC 15444-9:2005, Information technology – JPEG 2000 image coding system: Interactivity tools, APIs and protocols http://www.iso.org/i[...] 2009-06-11
[47] 웹사이트 T.802 : Information technology – JPEG 2000 image coding system: Motion JPEG 2000 http://www.itu.int/r[...] 2009-11-01
[48] 웹사이트 ISO/IEC 15444-3:2007, Information technology – JPEG 2000 image coding system: Motion JPEG 2000 http://www.iso.org/i[...] 2009-06-11
[49] 웹사이트 Motion JPEG 2000 (Part 3) https://web.archive.[...] 2009-11-01
[50] 웹사이트 T.802 : Information technology – JPEG 2000 image coding system: Motion JPEG 2000 – Summary http://www.itu.int/d[...] 2010-09-28
[51] 웹사이트 Motion JPEG 2000 (Part 3) https://web.archive.[...]
[52] 웹사이트 Motion JPEG 2000 mj2 File Format https://www.loc.gov/[...]
[53] 웹사이트 ISO Base Media File Format white paper – Proposal http://www.chiarigli[...] 2009-12-26
[54] 학술지 MPEG-4 File Formats white paper – Proposal http://www.chiarigli[...] 2009-12-26
[55] 학술지 ISO Base Media File Format white paper – Proposal http://mpeg.chiarigl[...] chiariglione.org 2009-12-26
[56] 웹사이트 ISO/IEC 14496-12:2004, Information technology – Coding of audio-visual objects – Part 12: ISO base media file format http://www.iso.org/i[...] 2009-06-11
[57] 웹사이트 ISO/IEC 15444-12:2008, Information technology – JPEG 2000 image coding system – Part 12: ISO base media file format http://www.iso.org/i[...] 2009-06-11
[58] 웹사이트 GMLJP2 Home Page http://www.opengeosp[...] Open Geospatial Consortium
[59] 웹사이트 Creating, Opening, and Saving Images https://flyingmeat.c[...] 2023-10-13
[60] 웹사이트 Blender 2.49 https://web.archive.[...] 2010-01-20
[61] 웹사이트 Daminion | an Effective Digital Asset Management Solution https://daminion.net[...]
[62] 웹사이트 darktable https://www.darktabl[...]
[63] 웹사이트 The digiKam Handbook – Supported File Formats https://web.archive.[...] docs.kde.org 2010-01-20
[64] 웹사이트 The Showfoto Handbook – Supported File Formats https://web.archive.[...] 2010-01-20
[65] 웹사이트 Development/Architecture/KDE3/Imaging and Animation http://techbase.kde.[...] 2010-01-20
[66] 웹사이트 GIMP 2.7 RELEASE NOTES http://www.gimp.org/[...] 2009-11-17
[67] 뉴스 Supported Formats | ImageGlass Docs https://imageglass.o[...] 2024-09-30
[68] 웹사이트 ImageGlass/LICENSE at develop · d2phap/ImageGlass https://github.com/d[...] 2024-09-30
[69] 웹사이트 Imagine: Freeware Image & Animation Viewer for Windows http://www.nyam.pe.k[...] 2018-05-02
[70] 웹사이트 File Formats: JPEG and LEAD Compressed (JPG, J2K, JPX, JP2, JLS, CMP, CMW) | Raster, Medical, Document Help https://www.leadtool[...]
[71] 웹사이트 JPEG 2000 Image Compression SDK Libraries for Windows, Linux, macOS, Android, iOS, Web, .NET Framework, .NET Core, Xamarin, UWP, C++ Class Library, C#, VB, C/C++, Java, Objective-C, Swift, and HTML / JavaScript | LEADTOOLS https://www.leadtool[...]
[72] 웹사이트 Creating, Opening, and Saving Images https://www.pixelmat[...] 2023-10-13
[73] 웹사이트 Seashore: A Free, Basic Image Editor for Mac OS X https://lowendmac.co[...] 2008-09-08
[74] 서적 JPEG2000 : image compression fundamentals, standards, and practice https://www.worldcat[...] Kluwer Academic Publishers 2002
[75] 서적 The JPEG 2000 suite https://www.worldcat[...] J. Wiley 2009
[76] 저널 High performance scalable image compression with EBCOT http://ieeexplore.ie[...] 2000-07
[77] 웹사이트 JPEG - JPEG 2000 https://jpeg.org/jpe[...] 2019-08-12
[78] 웹사이트 T.803 : Information technology - JPEG 2000 image coding system: Conformance testing https://www.itu.int/[...] 2019-09-06
[79] 웹사이트 T.804 : Information technology - JPEG 2000 image coding system: Reference software https://www.itu.int/[...] 2019-09-06
[80] 웹사이트 T.805 : Information technology - JPEG 2000 image coding system: Compound image file format https://www.itu.int/[...] 2019-09-06
[81] 웹사이트 T.807 : Information technology - JPEG 2000 image coding system: Secure JPEG 2000 https://www.itu.int/[...] 2019-09-06
[82] 웹사이트 T.808 : Information technology - JPEG 2000 image coding system: Interactivity tools, APIs and protocols https://www.itu.int/[...] 2019-09-06
[83] 웹사이트 T.809 : Information technology - JPEG 2000 image coding system: Extensions for three-dimensional data https://www.itu.int/[...] 2019-09-06
[84] 웹사이트 T.810 : Information technology - JPEG 2000 image coding system: Wireless https://www.itu.int/[...] 2019-09-06
[85] 웹사이트 T.812 : Information technology - JPEG 2000 image coding system: An entry level JPEG 2000 encoder https://www.itu.int/[...] 2019-09-06
[86] 웹사이트 T.813 : Information technology - JPEG 2000 image coding system: XML structural representation and reference https://www.itu.int/[...] 2019-09-06
[87] 저널 Universal trellis coded quantization http://ieeexplore.ie[...] 1999-12
[88] 저널 Efficient methods for encoding regions of interest in the upcoming JPEG2000 still image coding standard http://ieeexplore.ie[...] 2000-09
[89] 웹사이트 Digital Cinema Initiatives (DCI) - DIGITAL CINEMA SYSTEM SPECIFICATION, VERSION 1.2 https://www.dcimovie[...] 2019-08-12
[90] 웹사이트 国立公文書館 デジタルアーカイブ https://www.digital.[...] 2019-08-12
[91] 웹사이트 8.2.4 JPEG 2000 Image Compression http://dicom.nema.or[...] 2019-08-12
[92] 웹사이트 gdk-pixbuf - An image loading library https://git.gnome.or[...] 2014-07-16
[93] 웹사이트 Qt Image Formats QtImageFormats 5.3 Documentation Qt Project http://qt-project.or[...] 2014-07-16
[94] 서적 JPEG2000 Image Compression Fundamentals, Standards and Practice: Image Compression Fundamentals, Standards and Practice https://books.google[...] Springer Science & Business Media 2012
[95] 서적 CREW: Compression with Reversible Embedded Wavelets https://ieeexplore.i[...] IEEE Comput. Soc. Press 1995
[96] 저널 Decoding compression with reversible embedded wavelets (CREW) codestreams https://www.spiedigi[...] 1998-07
[97] 서적 An overview of JPEG-2000 https://ieeexplore.i[...] IEEE Comput. Soc 2000
[98] 웹인용 Joint Photographic Experts Group, JPEG2000 http://www.jpeg.org/[...] 2009-11-01
[99] 웹인용 JPEG2000 (ISO 15444) http://eden.ign.fr/s[...] 2009-11-01
[100] 웹인용 ISO/IEC 15444-1:2016 - Information technology -- JPEG 2000 image coding system: Core coding system https://www.iso.org/[...] 2017-10-19
[101] 웹인용 ISO/IEC 15444-2:2004 - Information technology -- JPEG 2000 image coding system: Extensions https://www.iso.org/[...] 2017-10-19
[102] 웹인용 ISO/IEC 15444-3:2007 - Information technology -- JPEG 2000 image coding system: Motion JPEG 2000 https://www.iso.org/[...] 2017-10-19
[103] 웹인용 ISO/IEC 15444-4:2004 - Information technology -- JPEG 2000 image coding system: Conformance testing https://www.iso.org/[...] 2017-10-19
[104] 웹인용 ISO/IEC 15444-5:2015 - Information technology -- JPEG 2000 image coding system: Reference software https://www.iso.org/[...] 2017-10-19
[105] 웹인용 ISO/IEC 15444-6:2013 - Information technology -- JPEG 2000 image coding system -- Part 6: Compound image file format https://www.iso.org/[...] 2017-10-19
[106] 웹인용 JPEG, JBIG - Resolutions of 22nd WG1 New Orleans Meeting http://kikaku.itscj.[...] 2000-12-08
[107] 웹인용 ISO/IEC 15444-8:2007 - Information technology -- JPEG 2000 image coding system: Secure JPEG 2000 https://www.iso.org/[...] 2017-10-19
[108] 웹인용 ISO/IEC 15444-9:2005 - Information technology -- JPEG 2000 image coding system: Interactivity tools, APIs and protocols https://www.iso.org/[...] 2017-10-19
[109] 웹인용 ISO/IEC 15444-10:2011 - Information technology -- JPEG 2000 image coding system: Extensions for three-dimensional data https://www.iso.org/[...] 2017-10-19
[110] 웹인용 ISO/IEC 15444-11:2007 - Information technology -- JPEG 2000 image coding system: Wireless https://www.iso.org/[...] 2017-10-19
[111] 웹인용 ISO/IEC 15444-12:2015 - Information technology -- JPEG 2000 image coding system -- Part 12: ISO base media file format https://www.iso.org/[...] 2017-10-19
[112] 웹인용 ISO/IEC 15444-13:2008 - Information technology -- JPEG 2000 image coding system: An entry level JPEG 2000 encoder https://www.iso.org/[...] 2017-10-19
[113] 웹인용 ISO/IEC 15444-14:2013 - Information technology -- JPEG 2000 image coding system -- Part 14: XML representation and reference https://www.iso.org/[...] 2007-07-01



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com