압축에 대하여

 - 과거 모스 부호의 압축 이용 사례 : 자주 등장하는 E와 T를 .과 ㅡ으로 간단하게 표현하는 기법을 이용한 압축을 하였음

 

 


 - 압축 종류 -
손실 압축 : 데이터 압축 과정에서 원본 데이터 손실 - 예시 : 사진 화질을 낮추는 압축
비손실 압축 : 압축 이후에도 원본 데이터 유지 - 예시 : 화질 낮추지 않는 압축

 

 

 

 - 손실압축 -

 

대부분의 인코딩과 같은 부분들이 이에 해당함

 

 


 - 비손실압축 - 


1. RLE : Run-Length Encoding
 - 연속되는 문자를 줄임
EX. AAAAABBBCCCC > A5B3C4
00001111001111 > 04140214
또는 4424 ( 0과 1이 반복됨을 이용 )

 ( 04140214 )


2. 허프만 부호화
 - 모든 글자 탐색 후 점수 부여(일반적으로 자주 출현하는 E,T에 높은 점수를 주지 않고 압축을 시도할 파일을 검사하여 자주 출현하는 알파벳에 높은 점수를 부여)
 - 가장 자주 사용되는 문자를 낮은 용량을 먹는 형태로 표현
 - 빈도가 높은 문자는 짧게, 빈도가 높은 문자는 길게


3. LZ
 - 허프만 부호화처럼 모든 글자를 읽고나서 진행하면 느리니까 다르게 해보자 > 로 시작되었음
 - 문자가 아닌 문자들의 묶음 단위로 압축
    > 복잡해보여도 효율이 아주 좋아 후속 버전도 굉장히 많음
 - 우리가 아는 zip, gzip, egg, tar, png, docx 등의 파일은 DEFLATE를 이용한다
   DEFLATE : LZ77 압축방식을 입힌 후 그 결과를 허프만 부호화로 한번 더 곁들이는 압축 방식이다

 


 각 방법들은 상황에 따라 효율성이 달라져 무엇이 더 좋다고 말할 수 없으며, 실제로 다양한 곳에서 다양한 방법을 사용하고 있다.

 

 

+ Recent posts