런 렝스 부호화(Run-Length Encoding)란?

같은 값이 이어지는 부분(런)을 그 값과 이어지는 길이의 쌍으로 치환하여 작게 하는 무손실 압축 방식. 예를 들어 흑백 화소의 열 0000000011110000은 '0이 8개, 1이 4개, 0이 4개'로 나타낼 수 있다. 흰 바탕이 많은 도면이나 팩스 이미지, 단색 영역이 많은 이미지처럼 같은 값이 길게 이어지는 데이터에서 잘 줄어든다. 값이 잘게 바뀌는 데이터에서는 런이 짧아져 오히려 커지는 경우가 있다. RLE라고도 한다.

일본어 명칭: ランレングス符号化

런 렝스 부호화(Run-Length Encoding)은(는) 정보 이론과 부호의 기초 등 1개 분야의 연습 문제 2개에 나와요.

분야: 정보 이론과 부호의 기초

도전해 보기: 런 렝스 부호화(Run-Length Encoding) 관련 문제

40문자의 문자열 AAAAAAAAAAAABBBBCCCCCCCCCCCCCCCCCCCCDDDD(A가 12개, B가 4개, C가 20개, D가 4개)를, 같은 문자의 연속을 '문자(1바이트)와 개수(1바이트)'의 쌍으로 나타내는 런 렝스 부호화로 압축한다. 원래 문자열은 1문자 1바이트로 하고, 압축률을 '압축 후의 크기 ÷ 압축 전의 크기'로 할 때 압축률은?

  1. A10%
  2. B20%
  3. C80%
정답과 해설 보기

정답: B. 20%

같은 문자의 연속(런)은 A, B, C, D의 4개이므로, 압축 후에는 4 × 2 = 8바이트가 됩니다. 압축 전은 40바이트이므로 압축률은 8 ÷ 40 = 0.2, 즉 20%입니다. 런 렝스 부호화는 같은 값이 길게 이어지는 데이터일수록 잘 줄어듭니다.

런 렝스 부호화로 압축했을 때 크기를 가장 작게 하기 쉬운 데이터는?

  1. A흰 배경에 검은 선으로 그린 도면을 흰색과 검은색의 두 값으로 나타낸 이미지
  2. B사진처럼 이웃한 화소의 값이 잘게 바뀌는 이미지
  3. C암호화한 뒤의, 0과 1이 무작위로 늘어선 것처럼 보이는 데이터
정답과 해설 보기

정답: A. 흰 배경에 검은 선으로 그린 도면을 흰색과 검은색의 두 값으로 나타낸 이미지

런 렝스 부호화는 같은 값이 이어지는 길이(런)를 수로 나타내므로, 같은 값이 길게 이어지는 데이터일수록 작아집니다. 흰 바탕이 많은 흑백 도면에서는 흰 화소가 길게 이어지므로 효과가 크며, 팩스의 부호화에도 이 생각이 쓰이고 있습니다. 값이 잘게 바뀌는 데이터에서는 런이 짧아져 오히려 커지는 경우도 있습니다.

해설 속 런 렝스 부호화(Run-Length Encoding)

런 렝스 부호화(Run-Length Encoding)이(가) 나오는 문제 (2)

  1. 40문자의 문자열 AAAAAAAAAAAABBBBCCCCCCCCCCCCCCCCCCCCDDDD(A가 12개, B가 4개, C가 20개, D가 4개)를, 같은 문자의 연속을 '문자(1바이트)와 개수(1바이트)'의 쌍으로 나타내는 런 렝스 부호화로 압축한다. 원래 문자열은 1문자 1바이트로 하고, 압축률을 '압축 후의 크기 ÷ 압축 전의 크기'로 할 때 압축률은?
  2. 런 렝스 부호화로 압축했을 때 크기를 가장 작게 하기 쉬운 데이터는?

관련 용어

무손실 압축(Lossless Compression) 상호 정보량(Mutual Information) 손실 압축(Lossy Compression) 순방향 오류 정정(FEC) 이진 대칭 채널(Binary Symmetric Channel) 접두 부호(Prefix Code) 정보 엔트로피(Information Entropy) 정보량(Self-Information) 크래프트 부등식(Kraft Inequality) 패리티 비트(Parity Bit)

용어집으로 돌아가기