양자화(이미지 처리)

Quantization (image processing)

양자화화상처리에 관여하는 손실압축기술로 값의 범위를 단일 양자값으로 압축함으로써 달성된다.특정 스트림의 이산 기호 수가 줄어들면 스트림의 압축성이 향상됩니다.예를 들어 디지털 이미지를 표현하기 위해 필요한 색상의 수를 줄이면 파일 크기를 줄일 수 있습니다.특정 용도에는 JPEG에서의 DCT 데이터 양자화 및 JPEG 2000에서의 DWT 데이터 양자화가 포함됩니다.

색 양자화

색정량화는 이미지에 사용되는 색상의 수를 줄입니다.이는 한정된 수의 색상을 지원하는 디바이스에 이미지를 표시하고 특정 종류의 이미지를 효율적으로 압축하는 데 중요합니다.대부분의 비트맵 에디터와 많은 운영 체제에는 색상 정량화를 지원하는 기능이 내장되어 있습니다.일반적인 현대식 색 양자화 알고리즘에는 가장 가까운 색 알고리즘(고정 팔레트용), 중앙 절단 알고리즘 및 8진수 기반 알고리즘이 있습니다.

일반적으로 컬러 양자화와 디더링을 조합하여 더 많은 컬러의 인상을 만들고 밴딩 아티팩트를 제거합니다.

이미지 압축을 위한 주파수 양자화

인간의 눈은 비교적 넓은 영역에서 작은 밝기 차이를 보는 데는 능숙하지만, 고주파(급변하는) 밝기 변화의 정확한 강도를 구별하는 데는 그다지 능숙하지 않습니다.이를 통해 고주파 성분을 무시함으로써 필요한 정보량을 줄일 수 있다.이는 주파수 영역의 각 구성요소를 해당 구성요소의 상수로 나눈 다음 가장 가까운 정수로 반올림하면 됩니다.이것은 전체 프로세스에서 손실되는 주요 작업입니다.그 결과, 일반적으로 많은 고주파 성분이 0으로 반올림되고, 나머지 대부분은 작은 양의 수 또는 음의 수가 되는 경우가 있습니다.

사람의 시력도 크로미넌스보다 휘도에 민감하기 때문에 두 가지를 분리하는 비RGB 색공간(예: YCbCr)에서 작업하고 채널을 [1]별도로 양자화함으로써 추가 압축을 얻을 수 있다.

양자화 행렬

일반적인 비디오 코덱은, 화상을 이산 블록(MPEG 의 경우는[1] 8 x 8 픽셀)으로 분할하는 것으로 동작합니다.그런 다음 이러한 블록에 이산 코사인 변환(DCT)을 수행하여 수평 및 [1]수직 주파수 성분을 계산할 수 있습니다.결과 블록(원래 블록과 동일한 크기)은 양자화 척도 코드에 의해 사전 곱셈되고 요소별로 양자화 행렬에 의해 분할되어 각 결과 요소를 반올림한다.양자화 매트릭스는 최대 효율로 인코딩할 수 있는 구성 요소를 0으로 변환하는 것 외에 인식 가능한 구성 요소(일반적으로 고주파수보다 낮은 주파수)에 걸쳐 더 높은 분해능을 제공하도록 설계되었습니다.많은 비디오 인코더(DivX, Xvid, 3ivx 등)와 압축 표준(MPEG-2 H.264/AVC 등)을 통해 커스텀 매트릭스를 사용할 수 있습니다.감소 정도는 양자화기 스케일 코드를 변경하여 전체 양자화기 [1]매트릭스보다 훨씬 적은 대역폭을 차지함으로써 달라질 수 있습니다.

DCT 계수 행렬의 예를 다음에 나타냅니다.

일반적인 양자화 매트릭스는 다음과 같습니다.

이 양자화 행렬을 사용하여 DCT 계수 행렬을 요소별로 나누고 정수로 반올림하면 다음과 같이 됩니다.

예를 들어 -415(DC 계수)를 사용하여 가장 가까운 정수로 반올림하는 경우

일반적으로 이 프로세스에서는 주로 왼쪽 상단(저주파수) 모서리에 값이 있는 행렬이 생성됩니다.0이 아닌 엔트리를 그룹화하고 런렝스 부호화를 하기 위해 지그재그 순서를 사용함으로써 양자화 된 매트릭스를 양자화되지 [1]않은 버전보다 훨씬 효율적으로 저장할 수 있다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ a b c d e John Wiseman, MPEG 비디오 압축 개요, https://web.archive.org/web/20111115004238/http://www.john-wiseman.com/technical/MPEG_tutorial.htm