맨위로가기

JPEG

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

1. 개요

JPEG는 Joint Photographic Experts Group의 약자로, 1980년대 후반에 개발된 이미지 압축 표준이다. ISO와 ITU-T가 공동으로 개발했으며, 이미지 압축 및 압축 해제를 위한 코덱을 정의하지만 파일 형식은 지정하지 않는다. JPEG 파일 교환 형식(JFIF)과 Exif는 JPEG 압축 이미지를 교환하고 메타데이터를 저장하는 데 사용되는 일반적인 파일 형식이다. JPEG는 이산 코사인 변환(DCT)을 기반으로 하는 손실 압축 방식을 사용하며, 압축 과정에서 블록 노이즈, 모스키토 노이즈와 같은 압축 부작용이 발생할 수 있다. JPEG는 다양한 확장 및 파생 형식을 가지고 있으며, libjpeg와 같은 구현체들이 존재한다. 한국에서는 디지털 이미지의 표준 형식으로 널리 사용되며, 웹, 스마트폰 등 다양한 분야에서 활용되고 있다.

더 읽어볼만한 페이지

  • JPEG - JPEG XR
    JPEG XR은 마이크로소프트에서 개발하여 국제 표준으로 승인된 이미지 파일 포맷으로, 기존 JPEG 형식의 단점을 보완하고 압축 효율, 무손실 압축, 다양한 색상 모델 지원 등 여러 기능을 향상시킨 것이 특징이다.
  • JPEG - JPEG XT
    JPEG XT는 JPEG 표준의 확장으로, 고 동적 범위 이미지 코딩, 박스 파일 형식, 무손실 및 준 무손실 코딩 등 여러 파트로 구성된다.
  • 화상 압축 - PNG
    PNG는 GIF의 단점을 보완하여 개발된 무손실 압축 방식의 그래픽 파일 형식이며, 높은 색상 표현과 투명도를 지원하고, 8바이트 시그니처와 이미지 정보를 담은 청크들로 파일 구조가 구성된다.
  • 화상 압축 - 웨이블릿 변환
    웨이블릿 변환은 국부적인 작은 파인 웨이블릿을 패턴으로 신호, 시스템, 프로세스의 모델을 구성하는 방법으로, 푸리에 해석의 한계를 극복하고 시간-주파수 해석을 가능하게 하여 신호 분석, 노이즈 제거, 신호 압축 등에 활용된다.
  • 손실 압축 알고리즘 - VP9
    VP9는 구글이 개발한 오픈 소스 비디오 코덱으로, VP8보다 압축 효율을 높이고 HEVC보다 나은 성능을 목표로 개발되었으며, WebM 형식으로 사용되고 주요 웹 브라우저와 넷플릭스, 유튜브 등에서 지원했으나 AV1의 등장으로 개발이 중단되었다.
  • 손실 압축 알고리즘 - 고급 오디오 부호화
    고급 오디오 부호화(AAC)는 MP3 후속 코덱으로 설계되어 더 나은 음질을 제공하며, ISO/IEC 표준으로 다양한 프로파일과 기술을 통해 발전하여 아이튠즈 스토어, 유튜브, 디지털 방송 등에서 널리 활용되는 디지털 오디오 데이터 압축 표준이다.
JPEG - [IT 관련 정보]에 관한 문서
개요
유럽 들고양이 사진. 왼쪽에서 오른쪽으로 갈수록 손실률이 감소한다.
JPEG 압축의 화질 비교. 오른쪽에서 왼쪽으로 갈수록 압축률이 높은 대신 화질 손상이 많이 일어난다
종류손실 이미지 포맷
용도정지 화상, 텍스트
파일 확장자.jpg, .jpeg, .jpe, .jif, .jfif, .jfi
MIME 형식image/jpeg
매직 넘버ff d8 ff
기술 정보
개발합동 사진 전문가 단체, IBM, 미츠비시 일렉트릭, AT&T, 캐논
발표일1992년 9월 18일
표준ISO/IEC 10918, ITU-T T.81, ITU-T T.83, ITU-T T.84, ITU-T T.86
기반없음
확장 형식JPEG 2000
기타 컨테이너JFIF, 스테레오JPEG, JPEG Multi-Picture Format
추가 정보
설명디지털 이미지 크기를 줄이기 위한 손실 압축 방식
관련 용어Exif
웹사이트합동 사진 전문가 단체 공식 웹사이트

2. 역사

"JPEG"는 Joint Photographic Experts Group(공동 사진 전문가 그룹)의 약자로, 이 그룹은 JPEG 표준 및 기타 정지 화상 코딩 표준을 만들었다. "Joint"는 국제 표준화 기구(ISO) TC97 WG8 및 국제 전신 전화 자문 위원회(CCITT) SGVIII를 의미했다. 1986년에 설립된 이 그룹은 1980년대 후반에 JPEG 표준을 개발했다.[13] 1987년, ISO TC 97은 ISO/IEC JTC 1이 되었고, 1992년에는 CCITT가 ITU-T가 되었다.

현재 JTC1 측에서 JPEG는 ISO/IEC 공동 기술 위원회 1, 분과위원회 29, 작업반 1 (ISO/IEC JTC 1/SC 29/WG 1)의 두 개의 하위 그룹 중 하나이다. 제목은 ''정지 화상 코딩''이다.[14][15][16] ITU-T 측에서는 ITU-T SG16이 해당 기구이다. 원래 JPEG 그룹은 1986년에 조직되었으며,[17] 1992년에 첫 번째 JPEG 표준을 발행했으며, 이는 1992년 9월에 '''ITU-T 권고 T.81'''[18]로, 1994년에는 '''ISO/IEC 10918-1'''로 승인되었다.

JPEG 표준은 이미지를 바이트 스트림으로 압축하고 다시 이미지로 압축 해제하는 방법을 정의하는 코덱을 지정하지만, 해당 스트림을 포함하는 데 사용되는 파일 형식은 지정하지 않는다.[19]

1992년에 발표된 최초의 JPEG 규격은 CCITT(현재 ITU-T)와 Joint Photographic Experts Group이 인용한 여러 이전 학술 논문 및 특허의 프로세스를 구현했다.[11] JPEG 규격은 여러 회사의 특허를 인용하고 있으며, 다음은 해당 산술 부호화 알고리즘의 기반을 제공했던 특허이다.[11]


  • IBM
  • * 1986년 2월 4일 Kottappuram M. A. Mohiuddin 및 Jorma J. Rissanen 곱셈이 없는 다중 알파벳 산술 부호
  • * 1990년 2월 27일 G. Langdon, J. L. Mitchell, W. B. Pennebaker, Jorma J. Rissanen 산술 부호화 인코더 및 디코더 시스템
  • * 1990년 6월 19일 W. B. Pennebaker 및 J. L. Mitchell 산술 부호화기의 확률 적응
  • 미쓰비시 전기
  • * ([https://patents.google.com/patent/JPH02202267A 1021672]) 1989년 1월 21일 Toshihiro Kimura, Shigenori Kino, Fumitaka Ono, Masayuki Yoshida 부호화 시스템
  • * ([https://patents.google.com/patent/JPH0834434B2/en 2-46275]) 1990년 2월 26일 Tomohiro Kimura, Shigenori Kino, Fumitaka Ono, Masayuki Yoshida 부호화 장치 및 부호화 방법


JPEG 규격은 또한 IBM의 다른 세 개의 특허를 인용하고 있다. 특허 보유자로 인용된 다른 회사로는 AT&T (두 개의 특허)와 캐논(Canon Inc.)이 있다.[11]

Compression Labs의 Wen-Hsiung Chen과 Daniel J. Klenke가 1986년 10월에 출원한 특허는 DCT 기반 이미지 압축 알고리즘을 설명하며, 나중에 2002년에 논란의 원인이 되었다.[12] 그러나 JPEG 규격은 1977년과 1984년에 출판된 Wen-Hsiung Chen의 두 개의 이전 연구 논문을 인용했다.[11]

2002년, Forgent Networks는 1986년 10월 27일에 출원되어 1987년 10월 6일에 등록된 특허를 근거로 JPEG 기술에 대한 특허권을 소유하고 있으며 이를 행사할 것이라고 주장했다. Forgent는 당시 Compression Labs를 소유하고 있지 않았지만, Chen은 나중에 Compression Labs를 Forgent에 매각했고, Chen은 이후 Cisco에서 일하게 되었다. 이로 인해 Forgent는 해당 특허에 대한 소유권을 획득하게 되었다.[12]

JPEG 위원회는 2002년에 특허 주장을 조사했으며, 다양한 전문가들이 공유하는 의견에 따라 선행 기술에 의해 무효화될 수 있다고 판단했다.[25][12][26] 2002년과 2004년 사이에 Forgent는 약 30개 회사에 특허를 라이선스하여 약 1.05억달러를 벌어들였다. 2004년 4월, Forgent는 추가 라이선스료 지급을 강제하기 위해 다른 31개 회사를 고소했다. 같은 해 7월, 21개의 대형 컴퓨터 회사 컨소시엄은 특허 무효화를 목표로 반소를 제기했다. 또한, Microsoft는 2005년 4월 Forgent를 상대로 별도의 소송을 제기했다.[27]

2006년 2월, 미국 특허청은 Public Patent Foundation의 요청에 따라 Forgent의 JPEG 특허를 재심사하기로 동의했다.[28] 2006년 5월 26일, 미국 특허청은 선행 기술을 근거로 특허가 무효라고 판결했다. 미국 특허청은 또한 Forgent가 선행 기술에 대해 알고 있었음에도 불구하고 의도적으로 특허청에 알리지 않았다는 사실을 발견했다. 이로 인해 특허를 복원하려는 어떠한 항소도 성공할 가능성이 매우 낮아졌다.[29] Forgent는 또한 1994년 유럽 특허청에서 유사한 특허를 받았지만, 그 집행 가능성은 불분명하다.[30] 2006년 10월 27일 현재, 미국 특허의 20년 유효 기간이 만료된 것으로 보이며, 2006년 11월, Forgent는 JPEG 표준 사용에 대한 특허 청구권 행사를 포기하기로 합의했다.[31]

JPEG 위원회는 그들의 표준(특히 기본 방식)이 라이선스료 지불 없이 구현될 수 있도록 하는 것을 명시적인 목표 중 하나로 삼고 있으며, 20개 이상의 대형 조직으로부터 JPEG 2000 표준에 대한 적절한 라이선스 권한을 확보했다.

2007년 8월부터 Global Patent Holdings, LLC라는 또 다른 회사가 1993년에 발급된 특허가 웹사이트 또는 이메일을 통해 JPEG 이미지를 다운로드하는 행위에 의해 침해된다고 주장했다. 이 특허가 무효화되지 않으면 JPEG 이미지를 표시하는 모든 웹사이트에 적용될 수 있다. 이 특허는 2000년부터 2007년까지 미국 특허청의 재심사를 받았으며, 2007년 7월, 특허청은 특허의 모든 원래 청구를 취소했지만, Global Patent Holdings가 제안한 추가 청구(청구 17)는 유효하다고 판단했다.[32] Global Patent Holdings는 이후 특허의 청구 17을 기반으로 여러 건의 소송을 제기했다.

2009년 11월 24일, 미국 특허청은 Global Patent Holdings의 특허에 대한 재심사 결과, 모든 청구가 취소되었음을 확인하는 재심사 인증서를 발행했다.

2011년부터 2013년 초까지, 동부 텍사스에 기반을 둔 Princeton Digital Image Corporation[39]이라는 회사가 특허 침해를 주장하며 다수의 회사를 고소하기 시작했다. Princeton은 JPEG 이미지 압축 표준이 해당 특허를 침해한다고 주장하며, 다수의 웹사이트, 소매업체, 카메라 및 장치 제조업체 및 재판매업체를 고소했다. 이 특허는 원래 General Electric의 소유였으며 할당되었다. 이 특허는 2007년 12월에 만료되었지만, Princeton은 이 특허의 "과거 침해"를 이유로 다수의 회사를 고소했다.[40]

2. 1. 표준

JPEG 표준은 여러 파트로 구성되어 있으며, 각 파트는 특정 기능 및 요구 사항을 정의한다.[94][95][96] JPEG 파일 교환 형식(JFIF)은 JPEG 압축 이미지를 교환하기 위한 사실상의 표준 파일 형식이다.[19]

JPEG 표준은 공식적으로 ''정보 기술 – 연속 톤 정지 화상의 디지털 압축 및 코딩''으로 명명되었으며, ISO/IEC 10918은 다음 부분으로 구성된다.[15][17][20]

연속 톤 정지 화상의 디지털 압축 및 코딩 – 부품
부품ISO/IEC 표준ITU-T 권고최초 공개 릴리스 날짜최신 수정 사항제목설명
부품 1[https://www.iso.org/standard/18902.html ISO/IEC 10918-1:1994][http://www.itu.int/rec/T-REC-T.81 T.81 (09/92)]요구 사항 및 지침
부품 2[https://www.iso.org/standard/20689.html ISO/IEC 10918-2:1995][http://www.itu.int/rec/T-REC-T.83 T.83 (11/94)]준수 테스트소프트웨어 적합성 (부품 1에 대해) 규칙 및 검사.
부품 3[https://www.iso.org/standard/25037.html ISO/IEC 10918-3:1997][http://www.itu.int/rec/T-REC-T.84 T.84 (07/96)]확장정지 화상 교환 파일 형식 (SPIFF)을 포함하여 부품 1을 개선하기 위한 확장 세트.[21]
부품 4[https://www.iso.org/standard/85634.html ISO/IEC 10918-4:2024][http://www.itu.int/rec/T-REC-T.86 T.86 (06/98)]Appn 마커JPEG를 확장하는 데 사용되는 일부 매개변수를 등록하는 방법
부품 5[https://www.iso.org/standard/54989.html ISO/IEC 10918-5:2013][http://www.itu.int/rec/T-REC-T.871 T.871 (05/11)]JPEG 파일 교환 형식 (JFIF)JPEG 표준에 의해 인코딩된 이미지에 대한 사실상 표준 파일 형식인 인기 있는 형식. 2009년에 JPEG 위원회는 JFIF를 JPEG 부품 5로 표준화하기 위해 임시 그룹을 공식적으로 설립.[22]
부품 6[https://www.iso.org/standard/59634.html ISO/IEC 10918-6:2013][http://www.itu.int/rec/T-REC-T.872 T.872 (06/12)]인쇄 시스템에 적용ISO/IEC 10918-1에 따라 인코딩된 이미지의 교환을 위해 기능 및 응용 프로그램 도구의 하위 집합을 지정.
부품 7[https://www.iso.org/standard/85635.html ISO/IEC 10918-7:2023][http://www.itu.int/rec/T-REC-T.873 T.873 (06/21)]2019년 5월2023년 11월참조 소프트웨어JPEG 코어 코딩 시스템의 참조 구현을 제공.



Ecma International TR/98은 JPEG 파일 교환 형식(JFIF)을 지정하며, 첫 번째 에디션은 2009년 6월에 발행되었다.[23]

3. 기술적 특징

JPEG는 이산 코사인 변환(DCT)을 기반으로 하는 손실 압축 방식을 사용한다. 압축 과정은 RGB 색상 모델에서 YCbCr로의 색 공간 변환, 크로마 서브샘플링, DCT, 양자화, 엔트로피 부호화 등의 단계로 이루어진다. 사람의 눈은 색상 정보보다 휘도 정보에 더 민감하므로, 색상 정보를 더 많이 압축한다. 양자화 단계에서 고주파 성분을 제거하거나 줄여 파일 크기를 줄이지만, 화질 저하가 발생할 수 있다. 엔트로피 부호화 단계에서는 허프만 부호화 또는 산술 부호를 사용하여 데이터를 압축한다.

JPEG 압축 알고리즘은 부드러운 색상 및 톤 변화가 있는 사진과 그림에 가장 적합하다. 웹에서는 이미지 데이터 양을 줄이는 것이 중요하므로 JPEG의 압축 이점이 널리 활용된다. JPEG/Exif는 디지털 카메라에서 가장 일반적인 형식이다.

하지만 JPEG는 선화, 텍스트, 아이콘 그래픽에는 적합하지 않다. 인접 픽셀 간의 날카로운 대비로 인해 눈에 띄는 결함이 발생할 수 있다. 또한, 손실 압축 방식이므로 이미지 데이터를 정확하게 재현해야 하는 과학 및 의료 영상, 이미지 처리 작업에는 부적합하다. JPEG는 여러 번 편집할 파일에도 적합하지 않은데, 이미지를 다시 압축할 때마다 품질이 손실되기 때문이다.

JPEG는 이미지를 8×8 화소 블록으로 분할하고, 블록 단위로 DCT를 사용하여 공간 영역에서 주파수 영역으로 변환한다. 이후 양자화 비트 수를 줄여 정보량을 감소시킨 후, 허프만 부호를 이용한 엔트로피 부호화로 압축한다.[88]

주파수 영역 변환 시 저주파 성분에 에너지가 집중되는 점을 이용하여, 양자화 비트 수 감소로 정보량을 줄이고 엔트로피 부호화의 압축률을 높인다. JPEG는 양자화 매트릭스라는 계수표를 사용하여 저주파 성분보다 고주파 성분을 더 거칠게 양자화한다.

엔트로피 부호화에는 허프만 부호가 사용된다. 허프만 부호는 처리가 단순하여 연산량이 적고, 예상되는 데이터가 입력되면 높은 압축률을 보인다.

3. 1. 압축 과정

JPEG 이미지의 압축 과정은 다음과 같다.

1. 색 공간 변환: 이미지의 색상 표현을 RGB 색상 모델에서 YCbCr로 변환한다. YCbCr는 밝기를 나타내는 루마 구성 요소(Y')와 색상을 나타내는 두 개의 크로마 구성 요소(CB, CR)로 구성된다.[50] 이 단계는 생략되기도 한다. 사람의 눈은 색상보다 휘도에 더 민감하므로, 압축 효율을 높이기 위해 YCbCr 색 공간으로 변환한다.[51]

2. 크로마 서브샘플링: Cb와 Cr 성분의 해상도를 낮춘다. 이를 "다운 샘플링" 또는 "크로마 서브샘플링"이라고 한다. 크로마 서브샘플링 후, 각 채널은 8×8 블록으로 분할된다. 크로마 서브샘플링에 따라 최소 코딩 단위(MCU) 블록의 크기는 8×8(4:4:4 – 서브샘플링 없음), 16×8(4:2:2) 또는 일반적으로 16×16(4:2:0)이 된다.[52]

3. 이산 코사인 변환(DCT): 각 구성 요소(Y, Cb, Cr)의 각 8×8 블록은 정규화된 2차원 II형 이산 코사인 변환(DCT)을 사용하여 주파수 영역 표현으로 변환된다. 이미지 블록을 공간 영역에서 주파수 영역으로 변환한다.

4. 양자화: 주파수 영역에서 각 성분을 특정 상수로 나누고 정수 몫만 취한다. 이때문에 정보 손실이 발생한다.

5. 엔트로피 부호화: 무손실 데이터 압축의 특별한 형태이다. 이미지 구성 요소를 유사한 주파수를 함께 그룹화하고 길이 코딩 0을 삽입한 다음 남은 것에 대해 허프만 부호화를 사용하는 런 길이 부호화(RLE) 알고리즘을 사용하여 "지그재그" 순서로 정렬한다.

3. 2. 압축 해제 과정

압축 해제된 JPEG 데이터를 얻는 과정은 압축 과정을 역으로 취함으로써 이루어진다.[50] JPEG 파일은 다양한 방식으로 인코딩될 수 있지만, 가장 일반적으로는 JFIF 인코딩으로 수행된다. 디코딩 프로세스는 이러한 단계를 반대로 수행하지만, ''양자화''는 되돌릴 수 없기 때문에 제외된다.

''기본 순차'' JPEG 인코딩 및 디코딩 프로세스


이미지를 표시하기 위한 디코딩은 위에서 설명한 모든 과정을 역순으로 수행하는 것으로 구성된다.

(DC 계수의 차이를 다시 더한 후) DCT 계수 행렬을 가져온다.

:

\left[

\begin{array}{rrrrrrrr}

  • 26 & -3 & -6 & 2 & 2 & -1 & 0 & 0 \\

0 & -2 & -4 & 1 & 1 & 0 & 0 & 0 \\

  • 3 & 1 & 5 & -1 & -1 & 0 & 0 & 0 \\
  • 3 & 1 & 2 & -1 & 0 & 0 & 0 & 0 \\

1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\

0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\

0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\

0 & 0 & 0 & 0 & 0 & 0 & 0 & 0

\end{array}

\right]



그런 다음 위에서 얻은 양자화 행렬과 항별 곱을 하면 다음 결과가 나온다.

:

\left[

\begin{array}{rrrrrrrr}

  • 416 & -33 & -60 & 32 & 48 & -40 & 0 & 0 \\

0 & -24 & -56 & 19 & 26 & 0 & 0 & 0 \\

  • 42 & 13 & 80 & -24 & -40 & 0 & 0 & 0 \\
  • 42 & 17 & 44 & -29 & 0 & 0 & 0 & 0 \\

18 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\

0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\

0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\

0 & 0 & 0 & 0 & 0 & 0 & 0 & 0

\end{array}

\right]



이것은 왼쪽 상단 부분에 대한 원래 DCT 계수 행렬과 매우 유사하다.

다음 단계는 2차원 역 DCT(2D 유형-III DCT)를 수행하는 것이다. 이는 다음과 같이 주어진다.

:f_{x,y} =

\frac{1}{4}

\sum_{u=0}^7

\sum_{v=0}^7

\alpha(u) \alpha(v) F_{u,v}

\cos \left[\frac{(2x+1)u\pi}{16} \right]

\cos \left[\frac{(2y+1)v\pi}{16} \right]



여기서

  • \ x는 픽셀 행이며, 정수 \ 0 \leq x < 8이다.
  • \ y는 픽셀 열이며, 정수 \ 0 \leq y < 8이다.
  • \ \alpha(u)는 앞에서 정의한 정규화 스케일 팩터이며, 정수 \ 0 \leq u < 8이다.
  • \ F_{u,v}는 좌표 \ (u,v).에서 근사된 DCT 계수이다.
  • \ f_{x,y}는 좌표 \ (x,y)에서 재구성된 픽셀 값이다.


출력을 정수 값으로 반올림하면 (원래 정수 값이 있었기 때문에) 값의 이미지가 생성된다(아직 128만큼 이동됨).

:

\left[

\begin{array}{rrrrrrrr}

  • 66 & -63 & -71 & -68 & -56 & -65 & -68 & -46 \\
  • 71 & -73 & -72 & -46 & -20 & -41 & -66 & -57 \\
  • 70 & -78 & -68 & -17 & 20 & -14 & -61 & -63 \\
  • 63 & -73 & -62 & -8 & 27 & -14 & -60 & -58 \\
  • 58 & -65 & -61 & -27 & -6 & -40 & -68 & -50 \\
  • 57 & -57 & -64 & -58 & -48 & -66 & -72 & -47 \\
  • 53 & -46 & -61 & -74 & -65 & -63 & -62 & -45 \\
  • 47 & -34 & -53 & -74 & -60 & -47 & -47 & -41

\end{array}

\right]



각 항목에 128을 더하면

:

\left[

\begin{array}{rrrrrrrr}

62 & 65 & 57 & 60 & 72 & 63 & 60 & 82 \\

57 & 55 & 56 & 82 & 108 & 87 & 62 & 71 \\

58 & 50 & 60 & 111 & 148 & 114 & 67 & 65 \\

65 & 55 & 66 & 120 & 155 & 114 & 68 & 70 \\

70 & 63 & 67 & 101 & 122 & 88 & 60 & 78 \\

71 & 71 & 64 & 70 & 80 & 62 & 56 & 81 \\

75 & 82 & 67 & 54 & 63 & 65 & 66 & 83 \\

81 & 94 & 75 & 54 & 68 & 81 & 81 & 87

\end{array}

\right]



이것이 압축 해제된 서브 이미지이다. 일반적으로 압축 해제 프로세스에서 [0, 255]의 원래 입력 범위를 벗어나는 값이 생성될 수 있다. 이러한 경우 디코더는 압축 해제된 이미지를 원래 비트 심도로 저장할 때 오버플로를 방지하기 위해 출력 값을 해당 범위 내로 유지하도록 잘라야 한다.

압축 해제된 서브 이미지는 차이(원래 − 압축 해제)를 구하여 원래 서브 이미지와 비교할 수 있으며, 다음과 같은 오류 값이 나타난다.

:

\left[

\begin{array}{rrrrrrrr}

  • 10 & -10 & 4 & 6 & -2 & -2 & 4 & -9 \\

6 & 4 & -1 & 8 & 1 & -2 & 7 & 1 \\

4 & 9 & 8 & 2 & -4 & -10 & -1 & 8 \\

  • 2 & 3 & 5 & 2 & -1 & -8 & 2 & -1 \\
  • 3 & -2 & 1 & 3 & 4 & 0 & 8 & -8 \\

8 & -6 & -4 & -0 & -3 & 6 & 2 & -6 \\

10 & -11 & -3 & 5 & -8 & -4 & -1 & -0 \\

6 & -15 & -6 & 14 & -3 & -5 & -3 & 7

\end{array}

\right]



픽셀당 평균 절대 오차는 약 5 값이다(즉, \frac{1}{64} \sum_{x=0}^7 \sum_{y=0}^7 |e(x,y)| = 4.8750).

오류는 왼쪽 하단 모서리에서 가장 두드러지며, 여기서 왼쪽 하단 픽셀이 바로 오른쪽에 있는 픽셀보다 더 어둡게 된다.

3. 3. 노이즈 (압축 부작용)

JPEG는 이미지를 8×8 픽셀 크기의 블록으로 나누어 처리한다. 따라서 압축률을 높이면 블록 경계에서 블록 노이즈가 눈에 띄게 나타날 수 있다.[88] 압축 과정에서 이미지의 고주파 성분이 제거되면서, 특히 가장자리 주변에 모스키토 노이즈라고 불리는 노이즈가 발생할 수도 있다.[88] 이 현상은 마치 모기가 한 점에 모여드는 것처럼 보인다.[88]

색상 중에서는 특히 빨강에서 노이즈가 발생하기 쉽다.[88]

4. JPEG 파일 형식

JPEG 표준은 이미지를 바이트 스트림으로 압축하고 다시 이미지로 압축 해제하는 방법을 정의하는 코덱을 지정하지만, 해당 스트림을 포함하는 데 사용되는 파일 형식은 지정하지 않는다.[19] JPEG 압축 이미지를 교환하는 데 사용되는 일반적인 파일 형식으로는 Exif 및 JFIF 표준이 있다.

JPEG 표준은 공식적으로 ''정보 기술 – 연속 톤 정지 화상의 디지털 압축 및 코딩''으로 명명되었으며, ISO/IEC 10918은 다음 부분으로 구성된다.

연속 톤 정지 화상의 디지털 압축 및 코딩 – 부품[15][17][20]
부품ISO/IEC 표준ITU-T 권고최초 공개 릴리스 날짜최신 수정 사항제목설명
부품 5[https://www.iso.org/standard/54989.html ISO/IEC 10918-5:2013][http://www.itu.int/rec/T-REC-T.871 T.871 (05/11)]JPEG 파일 교환 형식 (JFIF)JPEG 표준에 의해 인코딩된 이미지에 대한 사실상 표준 파일 형식인 인기 있는 형식이다. 2009년에 JPEG 위원회는 JFIF를 JPEG 부품 5로 표준화하기 위해 임시 그룹을 공식적으로 설립했다.[22]



"JPEG 교환 형식"(JIF)으로 알려진 파일 형식은 표준의 부록 B에 명시되어 있다. 그러나 이 "순수한" 파일 형식은 표준의 모든 측면을 완전히 구현하는 인코더 및 디코더 프로그래밍의 어려움과 표준의 특정 단점 때문에 거의 사용되지 않는다.


  • 색 공간 정의
  • 구성 요소 서브 샘플링 등록
  • 픽셀 종횡비 정의


이러한 문제를 해결하기 위해 몇 가지 추가 표준이 개발되었다. 1992년에 처음 출시된 것은 JPEG 파일 교환 형식 (JFIF)이었고, 최근에는 Exif 및 ICC 색상 프로파일이 이어졌다. 이 두 형식 모두 실제 JIF 바이트 레이아웃을 사용하며, 서로 다른 ''마커''로 구성되지만, JIF 표준의 확장 지점 중 하나인 ''응용 프로그램 마커''를 사용한다. JFIF는 APP0을 사용하고, Exif는 APP1을 사용한다. JIF 표준에서 향후 사용을 위해 남겨둔 이 파일 세그먼트 내에서, 이러한 표준은 특정 메타데이터를 추가한다.

따라서 JFIF는 몇 가지 방식으로 특정 제약 조건 (예: 모든 다른 인코딩 모드를 허용하지 않음)을 지정한다는 점에서 JIF 표준의 축소 버전이며, 추가된 메타데이터로 인해 JIF의 확장 버전이기도 하다. 원본 JFIF 표준에 대한 문서는 다음과 같이 명시되어 있다.[44]

JPEG 압축을 사용하는 이미지 파일은 일반적으로 "JPEG 파일"이라고 하며, JIF 이미지 형식의 변형으로 저장된다. JPEG를 출력하는 대부분의 이미지 캡처 장치(예: 디지털 카메라)는 실제로 Exif 형식의 파일을 생성하고 있으며, 이 형식은 카메라 업계에서 메타데이터 교환을 위해 표준화한 형식이다. 반면에 Exif 표준은 색상 프로파일을 허용하지 않으므로 대부분의 이미지 편집 소프트웨어는 JPEG를 JFIF 형식으로 저장하고 Exif 파일의 APP1 세그먼트를 포함하여 거의 호환되는 방식으로 메타데이터를 포함한다. JFIF 표준은 다소 유연하게 해석된다.[45]

엄밀히 말하면 JFIF 및 Exif 표준은 호환되지 않는데, 각 표준은 해당 마커 세그먼트(각각 APP0 또는 APP1)가 먼저 나타나도록 지정하기 때문이다. 실제로 대부분의 JPEG 파일에는 Exif 헤더 앞에 JFIF 마커 세그먼트가 포함되어 있다. 이렇게 하면 이전 리더가 이전 형식인 JFIF 세그먼트를 올바르게 처리할 수 있고, 최신 리더는 다음 Exif 세그먼트를 디코딩하며, 먼저 나타나도록 요구하는 데 덜 엄격하다.

JPEG 압축을 사용하는 파일의 가장 일반적인 파일 확장자는 '''.jpg'''와 '''.jpeg'''이지만, .jpe, .jfif.jif도 사용된다.[46] 또한, JPEG 데이터는 다른 파일 형식에도 포함될 수 있다. 예를 들어, TIFF로 인코딩된 파일은 종종 JPEG 이미지를 기본 이미지의 썸네일로 포함하며, MP3 파일은 ID3v2 태그에 표지 그림의 JPEG를 포함할 수 있다.

5. JPEG 표준의 확장 및 파생 형식

JPEG는 여러 확장 및 파생 형식을 가지고 있다.


  • JPEG 2000: 2000년에 발표된 이산 웨이블릿 변환(DWT) 기반의 새로운 이미지 압축 표준이다. 기존 JPEG 표준을 대체하기 위해 개발되었으며, 압축 효율이 더 높고 최대 38비트/색상 채널, 16384 채널, 알파 투명도 코딩, 수십억 × 수십억 픽셀 이미지 지원, 무손실 압축 등 다양한 기능을 제공한다.[78]
  • JPEG XT: 2015년에 발표된 JPEG 확장 형식으로, 더 높은 비트 심도(최대 16비트), HDR(High Dynamic Range), 무손실 압축, 알파 채널 코딩 등을 지원한다. 기본 JPEG/JFIF 파일 형식과 하위 호환된다.[79]
  • JPEG LS: 1993년에 시작되어 ISO-14495-1/ITU-T.87로 출판된 저복잡도 무손실/준무손실 압축 표준이다. JPEG의 기존 무손실 구현보다 효율적이며, 무손실에 가까운 손실 모드도 제공한다.
  • JPEG XL: 2021~2022년에 발표된 JPEG의 차세대 형식으로, 압축 효율 향상 및 다양한 기능 지원을 목표로 개발되었다. 기존 JPEG 이미지의 효율적인 트랜스코딩을 지원하며, HEIF HM, Daala, WebP보다 뛰어난 정지 이미지 압축 성능을 제공한다. 수십억 픽셀 이미지, 최대 32비트/성분 HDR, 합성 이미지 패치 인코딩, 애니메이션 이미지, 알파 채널 코딩 등을 지원한다.[80][81][82][83][84]
  • JPEG 스테레오스코픽 (JPS): 3D 이미지 저장을 위한 형식으로, 스테레오스코픽 이미지를 위한 JPEG 기반 형식이다.[61][62] 하나의 JPG 파일에 왼쪽 눈과 오른쪽 눈을 위한 두 개의 정적 이미지가 나란히 인코딩되어 있다.

스테레오스코픽 .JPS 파일의 예시

  • JPEG 멀티 픽처 형식 (MPO): 여러 이미지를 하나의 파일에 저장하기 위한 형식으로, 두 개 이상의 JPEG 파일을 연결하여 저장한다.[64][65] 후지필름 파인픽스 리얼 3D W1, HTC 에보 3D, 닌텐도 3DS 등 다양한 장치에서 3D 이미지를 저장하는 데 사용된다.

6. 구현

libjpeg는 JPEG 코덱의 대표적인 오픈 소스 구현체이다. 1991년에 처음 공개되었으며 JPEG 표준의 성공에 핵심적인 역할을 했다.[68] 2009년 버전 7에서 이전 버전과의 ABI 호환성이 깨졌고, 2010년 버전 8은 비표준 확장을 도입하여 비판을 받았다.[69]

libjpeg-turbo는 libjpeg를 기반으로 SIMD 최적화를 통해 성능을 향상시킨 구현체이다.[70][71] 2019년에는 ISO/IEC 및 ITU-T T.873 참조 구현이 되었다.[72]

모질라는 libjpeg-turbo를 기반으로 더 느리지만 더 높은 품질의 인코더인 '''MozJPEG'''를 개발했다.[75]

구글은 압축률을 높이는 데 중점을 둔 고품질 JPEG 인코더인 Guetzli를 개발했다.[76] 구글은 Guetzli가 고품질 JPEG 이미지의 파일 크기를 35% 줄일 수 있다고 주장한다.[91]

2024년 4월, 구글은 코딩 속도는 MozJPEG와 유사하며 고품질 압축 설정에서 35%의 압축률 향상을 제공하는 새로운 JPEG 코딩 라이브러리인 '''Jpegli'''를 도입했다.[77]

참조

[1] 웹사이트 Definition of "JPEG" http://www.collinsdi[...] 2013-05-23
[2] 기술보고서 The effects of video compression on acceptability of images for monitoring life sciences experiments https://ntrs.nasa.go[...] 1992-07-01
[3] 웹사이트 The JPEG Image Format Explained https://home.bt.com/[...] BT Group 2018-05-31
[4] 웹사이트 Copy Protections Could Come to JPEGs https://www.bbc.co.u[...] 2015-10-15
[5] 뉴스 JPEG: 25 Jahre und kein bisschen alt https://www.heise.de[...] 2016-10-07
[6] 웹사이트 What Is a JPEG? The Invisible Object You See Every Day https://www.theatlan[...] 2013-09-24
[7] 웹사이트 HTTP Archive – Interesting Stats http://httparchive.o[...]
[8] 웹사이트 MIME Type Detection in Internet Explorer https://learn.micros[...] Microsoft 2016-07-13
[9] 웹사이트 JPEG File Interchange Format http://www.jpeg.org/[...] 2014-09-03
[10] 웹사이트 Why JPEG 2000 Never Took Off https://blog.ansi.or[...] 2018-07-10
[11] 웹사이트 T.81 – DIGITAL COMPRESSION AND CODING OF CONTINUOUS-TONE STILL IMAGES – REQUIREMENTS AND GUIDELINES https://www.w3.org/G[...] CCITT 1992-09-01
[12] 뉴스 Finding patent truth in JPEG claim https://www.cnet.com[...] 2002-07-23
[13] 학술지 JPEG-1 standard 25 years: past, present, and future reasons for a success 2018-08-31
[14] 웹사이트 ISO/IEC JTC 1/SC 29/WG 1 – Coding of Still Pictures (SC 29/WG 1 Structure) http://kikaku.itscj.[...] 2009-05-07
[15] 웹사이트 Programme of Work, (Allocated to SC 29/WG 1) http://kikaku.itscj.[...]
[16] 웹사이트 JTC 1/SC 29 – Coding of audio, picture, multimedia and hypermedia information http://www.iso.org/i[...]
[17] 웹사이트 Joint Photographic Experts Group, JPEG Homepage http://www.jpeg.org/[...]
[18] 웹사이트 T.81: Information technology – Digital compression and coding of continuous-tone still images – Requirements and guidelines http://www.itu.int/r[...]
[19] 서적 JPEG still image data compression standard https://books.google[...] Springer
[20] 웹사이트 JTC 1/SC 29 – Coding of audio, picture, multimedia and hypermedia information http://www.iso.org/i[...]
[21] 웹사이트 SPIFF, Still Picture Interchange File Format https://www.loc.gov/[...] Library of Congress 2012-01-30
[22] 보도자료 JPEG XR enters FDIS status: JPEG File Interchange Format (JFIF) to be standardized as JPEG Part 5 http://www.jpeg.org/[...] 2009-04-24
[23] 웹사이트 JPEG File Interchange Format (JFIF) http://www.ecma-inte[...] Ecma International
[24] 뉴스 Forgent's JPEG Patent https://pmt.sourcefo[...] 2002-01-01
[25] 웹사이트 Concerning recent patent claims http://www.jpeg.org/[...] 2002-07-19
[26] 웹사이트 JPEG and JPEG2000 – Between Patent Quarrel and Change of Technology http://www.algovisio[...]
[27] 웹사이트 Graphics patent suit fires back at Microsoft https://www.cnet.com[...] CNET News 2005-04-22
[28] 웹사이트 Trademark Office Re-examines Forgent JPEG Patent http://www.publish.c[...] 2006-02-03
[29] 웹사이트 USPTO: Broadest Claims Forgent Asserts Against JPEG Standard Invalid http://www.groklaw.n[...] 2006-05-26
[30] 웹사이트 Coding System for Reducing Redundancy http://gauss.ffii.or[...]
[31] 웹사이트 JPEG Patent Claim Surrendered http://www.pubpat.or[...] Public Patent Foundation 2006-11-02
[32] 웹사이트 Ex Parte Reexamination Certificate for U.S. Patent No. 5,253,341 http://www.uspto.gov[...]
[33] 웹사이트 Rozmanith: Using Software Patents to Silence Critics http://eupat.ffii.or[...]
[34] 웹사이트 A Bounty of $5,000 to Name Troll Tracker: Ray Niro Wants To Know Who Is saying All Those Nasty Things About Him http://www.law.com/j[...]
[35] 웹사이트 Hunting trolls: USPTO asked to reexamine broad image patent https://arstechnica.[...] 2008-02-05
[36] 문서 U.S. Patent Office – Granting Reexamination on 5,253,341 C1 commons:Image:2008-0[...]
[37] 웹사이트 Judge Puts JPEG Patent On Ice http://www.techdirt.[...] 2008-04-30
[38] 웹사이트 JPEG Patent's Single Claim Rejected (And Smacked Down For Good Measure) http://techdirt.com/[...] 2008-08-01
[39] 웹사이트 Princeton Digital Image Corporation Home Page http://www.princeton[...]
[40] 웹사이트 Article on Princeton Court Ruling Regarding GE License Agreement http://patentlaw.jmb[...] 2013-04-03
[41] 웹사이트 Progressive Decoding Overview http://msdn.microsof[...] Microsoft
[42] 웹사이트 12-bit JPEG encoder on GPU https://www.fastcomp[...] 2019-05
[43] 웹사이트 Why You Should Always Rotate Original JPEG Photos Losslessly http://petapixel.com[...] 2012-08-14
[44] 웹사이트 JFIF File Format as PDF http://www.w3.org/Gr[...]
[45] 웹사이트 JPEG image compression FAQ http://www.faqs.org/[...] 1999-03-29
[46] 웹사이트 Everything you need to know about JPEG files {{!}} Adobe https://www.adobe.co[...]
[47] 웹사이트 A Standard Default Color Space for the Internet - sRGB https://www.w3.org/G[...]
[48] 웹사이트 IEC 61966-2-1:1999/AMD1:2003 | IEC Webstore https://webstore.iec[...]
[49] 웹사이트 ISO/IEC 10918-1: 1993(E) p.36 http://www.digicamso[...]
[50] 웹사이트 Advanced Features: Compression parameter selection http://apodeline.fre[...]
[51] 서적 E - Learning Modules: Dlr Associates Series https://books.google[...] AuthorHouse 2012-06-20
[52] 웹사이트 DC / AC Frequency Questions - Doom9's Forum http://forum.doom9.o[...]
[53] 웹사이트 Video compression artifacts and MPEG noise reduction http://www.videsignl[...] 2006-02-24
[54] 웹사이트 ITU-T Rec. P.930 (08/96) Principles of a reference impairment system for video http://eu.sabotage.o[...]
[55] 논문 JPEG standard uniform quantization error modeling with applications to sequential and progressive operation modes http://openaccess.uo[...] 2001-04
[56] 논문 Further Lossless Compression of JPEG Images 2004-12-15
[57] 논문 Additional Lossless Compression of JPEG Images 2005-09-15
[58] 논문 Improved Redundancy Reduction for JPEG Files 2007-11-07
[59] 논문 Lossless Re-encoding of JPEG images using block-adaptive intra prediction
[60] 웹사이트 packjpg/packJPG https://github.com/p[...] 2023-02-19
[61] 웹사이트 General Purpose Stereoscopic Data Descriptor http://vrex.com/deve[...] 1997
[62] 웹사이트 JPS files http://ephehm.com/jp[...]
[63] 웹사이트 CGImageSource.SupportedTypes https://www.mbsplugi[...] MonkeyBread Software
[64] 웹사이트 Multi-Picture Format http://www.cipa.jp/s[...] 2009
[65] 웹사이트 MPO2Stereo: Convert Fujifilm MPO files to JPEG stereo pairs http://www.mtbs3d.co[...]
[66] 논문 A new fast matching method for adaptive compression of stereoscopic images http://iplab.dmi.uni[...] SPIE - Three-Dimensional Image Processing, Measurement (3DIPM), and Applications 2015
[67] 웹사이트 Adaptive Compression of Stereoscopic Images http://iplab.dmi.uni[...] International Conference on Image Analysis and Processing (ICIAP) 2013
[68] 웹사이트 Overview of JPEG http://jpeg.org/jpeg
[69] 웹사이트 jpeg-9, API/ABI compatibility, and the future role of this project https://lists.fedora[...] 2013-01-16
[70] 웹사이트 Software That Uses or Provides libjpeg-turbo http://libjpeg-turbo[...] 2012-02-09
[71] 웹사이트 Issue 48789 – chromium – Use libjpeg-turbo instead of libjpeg http://code.google.c[...] 2011-04-14
[72] 웹사이트 ISO/IEC 10918-7: 2019 Information technology — Digital compression and coding of continuous-tone still images — Part 7: Reference software https://www.iso.org/[...] 2022-05-07
[72] 웹사이트 T.873 (05/19): Information technology - Digital compression and coding of continuous-tone still images: Reference software https://www.itu.int/[...] 2023-03-01
[73] 웹사이트 JPEG - JPEG XT https://jpeg.org/jpe[...] 2018-03-03
[74] 논문 JPEG on STEROIDS: Common optimization techniques for JPEG image compression 2016-09
[75] 웹사이트 Introducing the 'mozjpeg' Project https://research.moz[...] 2014-03-05
[76] 웹사이트 Announcing Guetzli: A New Open Source JPEG Encoder https://research.goo[...] 2017-03-16
[77] 웹사이트 Introducing Jpegli: A New JPEG Coding Library https://opensource.g[...] Google Open Source Blog 2024-04-03
[78] 웹사이트 It's High Time to Replace JPEG With a Next-Generation Image Codec https://cloudinary.c[...] 2021-02-22
[79] 웹사이트 JPEG - JPEG XT https://jpeg.org/jpe[...] 2018-03-03
[80] 논문 JPEG XL next-generation image compression architecture and coding tools https://www.spiedigi[...] 2019-09-06
[81] 논문 Committee Draft of JPEG XL Image Coding System
[82] 간행물 N79010 Final Call for Proposals for a Next-Generation Image Coding Standard (JPEG XL) https://jpeg.org/dow[...]
[83] 표준 ISO/IEC 18181-1:2022 Information technology — JPEG XL image coding system — Part 1: Core coding system
[84] 표준 ISO/IEC 18181-2:2021 Information technology — JPEG XL image coding system — Part 2: File format
[85] 웹사이트 JPEGとは - IT用語辞典 https://e-words.jp/w[...]
[86] 웹사이트 http://www.nvidia.co[...]
[87] 웹사이트 Exifとは - IT用語辞典 https://e-words.jp/w[...]
[88] 웹사이트 静止画像符号化方式 https://www.jstage.j[...]
[89] 표준 連続階調静止画像のディジタル圧縮及び符号処理
[90] 웹사이트 Jpeg.org http://jpeg.org/jpeg
[91] 웹사이트 Announcing Guetzli: A New Open Source JPEG Encoder - Google Research Blog https://research.goo[...]
[92] 웹인용 T.81 – DIGITAL COMPRESSION AND CODING OF CONTINUOUS-TONE STILL IMAGES – REQUIREMENTS AND GUIDELINES https://www.w3.org/G[...] CCITT 1992-09
[93] 웹사이트 북한자료센터: 남북한 IT용어 비교 http://unibook.uniko[...]
[94] 웹인용 Programme of Work, (Allocated to SC 29/WG 1) http://kikaku.itscj.[...]
[95] 웹인용 Joint Photographic Experts Group, JPEG Homepage http://www.jpeg.org/[...]
[96] 웹인용 JTC 1/SC 29 – Coding of audio, picture, multimedia and hypermedia information http://www.iso.org/i[...]



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

문의하기 : help@durumis.com