01

p.41

문자열 압축

반복되는 문자나 패턴을 더 적은 비트로 표현하는 비손실 압축

1

런-렝스 인코딩

동일한 문자가 연속해서 반복되는 경우, 그것을 반복 문자 개수와 반복 문자의 쌍으로 표현

COFFEEEEEE FREEE
CO2F6E FR3E
알고리즘 단순
반복 문자가 길수록 압축 효율 높음
2

렘펠-지브 인코딩

문자열에 포함된 같은 패턴의 상대적 위치와 패턴의 길이로 문자열을 치환하여 압축

WELCOME COMPANY
WELCOME (5, 3)PANY
떨어져 있는 같은 패턴 압축 가능
반복 패턴이 많은 긴 문자열에서 압축 효율 높음

02

p.41

런-렝스 인코딩 시뮬레이션

연속해서 반복되는 문자를 개수와 문자로 바꾸어 압축한다

원래 문자열

COFFEEEEEE빈칸FREEE
압축 후 문자열
CO2F6E FR3E

단계

  1. 반복이 없는 `C`, `O`는 그대로 기록
  2. `FF`는 `2F`로 기록
  3. `EEEEEE`는 `6E`로 기록
  4. 빈칸과 반복 없는 `F`, `R`은 그대로 기록
  5. `EEE`는 `3E`로 기록

03

p.41

런-렝스 인코딩 퀴즈

반복 문자 개수와 반복 문자의 쌍으로 직접 압축해 보자

1

AAABCCCC

2

HELLOOO

3

MMMMNNP

04

p.41

렘펠-지브 인코딩 시뮬레이션

이미 나온 패턴을 현재 위치 기준의 거리와 길이로 표현한다

원래 문자열

WELCOME COMPANY
현재 위치 C
왼쪽으로 5칸 5
반복 길이 3
압축 후 문자열
WELCOME (5, 3)PANY

단계

  1. `WELCOME`까지 그대로 기록
  2. 현재 위치 `C`에서 왼쪽을 탐색
  3. 5문자 앞에서 같은 패턴 `COM` 발견
  4. 반복 패턴 길이 3을 확인
  5. `COM`을 `(5, 3)`으로 치환

05

p.41

렘펠-지브 인코딩 퀴즈

반복 패턴을 현재 위치 기준의 거리와 길이로 바꾸어 보자

1

ABCABC

2

CODE CODE

3

HELLO HELLO

06

p.42~43

이미지 압축

BMP 원본 이미지를 목적에 맞는 압축 파일 형식으로 변환한다

BMP 원본

각 화소의 색 정보를 차례대로 기록하는 무압축 파일

품질 우수 · 파일 크기 큼 · 확장자 .bmp

압축 파일 형식

파일 형식
PNG
GIF
JPEG
압축 방식
비손실
손실·비손실
손실
지원 색상
트루 컬러(24b)
256색(8b)
트루 컬러(24b)
압축 특징
반복 색 정보를 줄이고 손실 없이 압축
지원 색상이 적어 파일 크기가 작음
색 차이와 세밀한 정보를 제거
확장자
.png
.gif
.jpg .jpeg .jpe .jfif

07

p.44~45

소리 압축

WAV 원음을 디지털로 표현하고 목적에 맞는 압축 형식으로 변환한다

WAV 파일

웨이브 방식의 디지털 신호를 압축하지 않은 무압축 파일 형식

1 표본화

아날로그 소리 파형을 일정 간격으로 나누어 샘플 값을 측정

2 양자화

소리의 크기를 가까운 정숫값으로 표현

3 부호화

각 정수를 0과 1의 디지털값으로 표현

압축 파일 형식

FLAC 비손실 압축 .flac

원음 손실 없이 용량을 줄임

MP3 손실 압축 .mp3

사람이 잘 듣지 못하는 대역의 신호를 제거

AAC 손실 압축 .m4a

MP3와 같은 방식이나 같은 비트 전송률에서 음질이 더 좋음