티스토리 뷰
Image Compression
[ Information Theory ]
· Source Coding
: 데이터 압축. 정보를 효율적으로 표현하고 저장하기 위해 데이터를 압축해 저장 공간을 절약하거나 대역폭을 절감.
· Channel Coding
: 데이터를 신뢰성 있게 전송. 노이즈, 간섭, 오류 등을 검출 및 정정하여 데이터의 신뢰성을 높임.
: Compression을 높게 할 수록 Noise-Free한 채널을 사용해야 한다.
→ 압축이 높은 비율로 진행되었으므로, 약간의 노이즈만 있어도 파일 전체에 큰 영향을 끼치기 때문.
[ Compression ]
· Lossless Compression
: 손실이 없는 데이터 압축 방식.
: 가변적 비트레이트(Variable Bit-rate) 사용.
: Data-Size를 보장하지 않음.
: Average Symbol Length를 최소화하는 것이 목표.
: Average Binary Length는 Entropy보다 항상 크거나 같다.
: Entropy에 따라 압축 효율이 달라질 수 있다.
→ 중복된 정보가 많을수록 압축률이 높음. 즉 Entropy가 낮을수록 압축률이 높다.
: 압축 효율성은 Entropy ÷ Average Symbol Length로 나타낼 수 있다.
· Lossy Compression
: 손실이 있는 데이터 압축 방식.
: 고정 비트레이트(Constant Bit-rate) 사용.
: Quality를 보장하지 않음.
- Rate Distortion
: 많은 비트 수를 사용해 압축을 진행할수록 왜곡이 덜 발생한다는 이론.
: 에러(왜곡)를 측정할 때 MSE를 사용하면 이미지의 크기에 따라 변별력이 없을 수 있음. → SNR, PSNR을 이용.
1) SNR : Signal-to-Noise Ratio. 원본 신호와 그에 대한 잡음에 대한 비율을 데시벨로 나타낸 수치.
2) PSNR : Peek-Signal-to-Noise-Ratio. SNR의 변형된 형태로, 피크 신호에 대한 잡음의 비율을 데시벨로 나타낸 수치.
→ SNR과 PSNR이 모두 낮아야 좋은 압축 알고리즘.
: Vector가 길수록, Dictionary의 길이가 짧을수록 Distortion이 커진다.
: Transform Coding(DFT 등)을 이용하여 특정 주파수 성분을 제거하거나, 효율적인 표현 방식을 채택해 압축 가능.
[ Image Compression ]
· Lossless Image Coding
- Run-Length Encoding
: 연속된 같은 값의 픽셀을 그룹화하여 표현하는 방식.
- Dictionary Based Image Coding
: GIF, PNG 형태로 압축하는 데 사용되는 방법.
: 데이터를 일정한 규칙에 따라 Dictionary에 매핑하여 부호화하는 방식.
: 중복성을 이용하여 효율적인 압축을 할 수 있음.
- Prediction Based Encoding
: 주변 픽셀과의 관계를 통해 값을 예측해 저장하는 방식.
: 예측 계산식을 미리 테이블에 저장해두고, 일치하거나 유사한 것을 가져다 사용하게 된다.
→ 예측 계산식이 테이블에 모두 존재하거나, 예측 계산식이 없는 경우 원본 데이터를 그대로 사용하면 Lossless Compression이 된다.
→ 예측 계산식이 테이블에 존재하지 않을 때 유사한 계산식을 사용하게 되면 Lossy Compression이 된다.
· Transform Image Coding
: 인코딩 시 Transform, Quantization, Entropy Coding의 3단계를 거친다.
: 디코딩 시 Entropy Decoding, Inverse Transfrom의 2단계를 거친다.
- JPEG Compression
1. RGB 색상을 YCbCr 형태로 변경. → 밝기 구분에 민감한 인간의 눈에 적절하게 변경해 밝기 요소를 제외하고 연산하기 위함.
2. Cr과 Cb를 2×2 pixel을 하나로 하여 Downsampling을 진행.
3. 이미지를 8×8 크기의 블록으로 분할하고, DCT를 계산해 64개의 계수를 생성.
4. Quantization Table을 이용하여 양자화를 진행.양자화된 값을 지그재그하게 나열.
→ 테이블에는 저주파 성분(DC coefficient)과 고주파 성분(AC coefficient)을 나누어 적절히 처리하고, 양자화된 DC계수는 효율적인
압축을 위해 다시 한 번 Huffman Coding 또는 DPCM을 진행하고, AC계수는 0이 많이 등장하기에 RLE 과정을 진행한다.
: 이미지 손실이 발생할 수 있으며, 손실이 크게 발생할 경우 격자 패턴의 디지털 풍화가 생길 수 있음.
: 인위적인 이미지엔 사용하기 좋지 않고, 풍경 사진 등 자연적인 이미지에 적용하기 수월.
: Stream이 중간에 깨지면 줄줄이 영향을 받는 문제가 있음.
: 크기가 큰 이미지의 압축에는 적절하지 않음.
'컴퓨터 공학 이론 > 멀티미디어 컴퓨팅' 카테고리의 다른 글
[멀티미디어 컴퓨팅] Computer Vision - Feature (0) | 2023.06.05 |
---|---|
[멀티미디어 컴퓨팅] Video Compression (0) | 2023.06.04 |
[멀티미디어 컴퓨팅] Image Processing (2) (0) | 2023.06.04 |
[멀티미디어 컴퓨팅] Image Processing (1) (0) | 2023.04.16 |
[멀티미디어 컴퓨팅] Sound (0) | 2023.04.16 |