본문 바로가기
자료구조

렝스부호화에 대하여

by sleepycho 2024. 4. 23.

 

렝스 부호화는 매우 간단한 비손실 압축 방법이다. 이 방법은 데이터에서 같은 값이 연속해서 나타나는 것을 그 개수와 반복되는 값만으로 표현하는 방식이다. 주로 아이콘과 같이 연속된 값이 많이 있는 데이터에 효과적으로 사용된다.

 

예를 들어, 흰 바탕에 검은 글자가 나오는 스크린을 생각해보겠다. 이 스크린에는 연속된 흰 픽셀이 많이 나타날 것이다.

 

다음은 한 스캔 라인의 예시이다. 

WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWBWWWWWWWWWWWWWW

 

이 데이터를 간단한 반복 길이 부호를 사용하여 압축하면 다음과 같은 결과를 얻을 수 있다:

12WB12W3B24WB14W

 

위 결과는 '12개의 W, (한 개의) B, 12개의 W, 3개의 B, 24개의 W, (한 개의) B, 14개의 W’로 해석된다. 이렇게 압축하면 원래 67글자였던 데이터가 단지 16글자로 표현된다.