Privacy Policy Cookie Policy Terms and Conditions JPEG - 위키백과

JPEG

위키백과 ― 우리 모두의 백과사전.

Joint Photographic Experts Group
확장자: .jpeg, .jpg, .jfif
MIME 종류: image/jpeg
개발: Joint Photographic
Experts Group
파일 포맷 종류: 래스터 이미지

JPEG(Joint Photographic Experts Group, 제이펙)은 정지 화상을 위해서 만들어진 손실 압축 방법 표준이다. 이 표준은 ISO와 ITU-T에서 제정하였다. JPEG를 사용하는 파일 형식들도 보통 JPEG 이미지라 불리며, .jpg, .jpeg, .jpe 등의 확장자를 사용한다.

JPEG 표준은 이미지가 어떻게 바이트 스트림으로 바뀌는 지만을 규정한다. 독립 JPEG 그룹(Independent JPEG Group; IJG)에서 만든 JPEG의 확장인 JFIF(JPEG File Interchange Format)는 JPEG 스트림을 저장과 전송에 적합한 형태로 담는 이미지 파일 형식이다. 디지털 카메라의 사진 저장 방식으로는 다른 확장인 EXIF JPEG 형식이 더 자주 사용된다. 일반적으로 JPEG 파일이라고 할 때는 JFIF 형식이거나 EXIF JPEG 형식을 가리키지만, JNG와 같은 JPEG 기반의 다른 파일 형식도 존재한다.

JPEG/JFIF는 상에서 사진 등의 화상을 보관하고 전송하는 데 가장 널리 사용되는 파일 형식이다. 하지만 이 압축 방법은 문자, 선, 세밀한 격자 등 고주파 성분이 많은 이미지의 변환에서는 GIFPNG에 비해 불리하며, 나쁜 품질을 보이는 경우가 많다. JPEG 표준에도 비손실 압축 방법이 정의되어 있지만 특허 문제와 압축률 등의 이유로 잘 사용되지는 않으며, PNG 등의 비손실 압축을 지원하는 포맷을 많이 사용한다.

목차

[편집] 압축과정 실례

JPEG 표준 안에는 많은 선택사항들이 있지만, 그 중 대부분은 거의 사용되지 않는다. 아래 설명은 픽셀당 24비트 (빨강, 초록, 파랑 각 8비트씩)의 색상정보를 가진 데이터를 변환하는 일반적인 방법에 대한 간단한 설명이다. 아래 설명한 방식에선 손실 압축 방식을 사용한다.

[편집] 색공간 변환

우선 각 픽셀의 RGB 데이터를 YCbCr이라는 다른 색공간 데이터로 변환한다. 이 색공간은 NTSCPAL 방식의 컬러 텔레비전 전송에 쓰에는 색공간과 유사하다. Y 성분은 픽셀의 루마(luma, 비디오 분야에서 휘도를 나타내는 값의 일종으로, 비디오 분야에서 정의된 luminance와 구분된다) 정보를 가지고 있으며, Cb와 Cr성분은 색차 정보(chroma components)를 가지고 있다. 사람의 눈이 색상 성분보다 휘도 성분에 더 민감하기 때문에 색상 정보를 더 많이 압축하기 위해서 YCbCr 색공간으로 변환한다. 색공간 변환 시 제한된 정밀도 (채널당 8 비트) 때문에 정보가 완전히 보전되지 않는다. 따라서 뒤에서 양자화를 전혀하지 않더라도 원본과 완전히 일치하지 않는다. 즉, JPEG 저장시 화질을 100%으로 하더라도 원본과 차이가 있게 된다.

[편집] 크로마 서브샘플링

때때로 Cb와 Cr 성분의 수를 줄인다. (이를 "다운샘플링", 혹은 "크로마 서브샘플링"이라 한다.) 이어지는 설명은 각 성분에 대한 것으로, 성분별로 같은 절차가 진행된다.

[편집] 이산 코사인 변환

전체 화상은 8×8 픽셀의 크기를 갖는 섹션으로 나뉘어지고 각 8×8 섹션의 각 성분 데이터는 이차원 이산 코사인 변환(DCT)을 이용하여 주파수 공간으로 변환된다.

[편집] 양자화

다음 단계: 양자화(퀀타이제이션). 사람의 눈은 명도에 대해 비교적 넓은 영역에서 작은 차이를 구분할 수 있다. 그러나 고주파의 명도 변화에서는 그 구별능력이 떨어진다. 이 사실에 근거하여 고주파 성분의 정보의 많은 부분은 버릴 수 있다. 이런 작업은 주파수 영역의 각 성분에 대해 특정 상수로 나누고 정수 몫만을 취함으로써 수행된다. 이 작업이 전체 압축 과정에서 가장 손실이 큰 부분이다. 이 방법으로 고주파 성분들은 거의 0이나 0이 근접한 양수, 혹은 음수가 된다. (여기서 말하는 주파수는 전자기파의 주파수를 말하는 것이 아니라, 데이터를 격자상에 늘어 놓았을 때의 공간적인 변화를 말하는 것이 주의.)

[편집] 엔트로피 부호화

마지막 단계: 엔트로피 부호화 (이 과정은 비손실 압축 방식이다.) 8×8 격자의 성분들을 저주파부터 지그재그로 일렬로 세운 뒤. 반복된 0에만 RLE를 적용하고, 그 결과들에 대해 허프만 부호화를 한다. 표준은 허프만 부호화 대신에 더 압축률이 좋은 산술 부호화도 가능하다고 기술하지만 산술 코딩은 인코딩, 디코딩시의 지연, 경제성 등의 이유로 잘 쓰이지 않는다.

압축을 푸는 디코딩 과정은 위 과정을 거꾸로 하면 가능하다.

[편집] 규격서

규격은 합동 그룹에서 만들어졌기 때문에, ISO와 ITU-T 양측에서 나오고 있다.

  • ITU-T권고 T.81
  • JIS X 4301
  • ISO/IEC 10918-1:1994

[편집] 같이 보기

Static Wikipedia (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia February 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu