익명 사용자
로그인하지 않음
토론
기여
계정 만들기
로그인
IT 위키
검색
런렝스 인코딩
편집하기
IT 위키
이름공간
문서
토론
더 보기
더 보기
문서 행위
읽기
편집
원본 편집
역사
경고:
로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다.
로그인
하거나
계정을 생성하면
편집자가 사용자 이름으로 기록되고, 다른 장점도 있습니다.
스팸 방지 검사입니다. 이것을 입력하지
마세요
!
런렝스 인코딩(영어: Run-Length Encoding, RLE)은 동일한 값이 연속적으로 반복되는(run) 구간을 압축하여, 데이터 크기를 줄이는 단순한 무손실 압축 기법이다. 주로 데이터에 반복 구간이 많거나 희소 데이터(sparse data)에서 효과적이다. ==개요== *연속된 동일 값을 (값, 반복 길이) 쌍으로 표현한다. *예: [0, 0, 0, 3, 3, 1, 0, 0] → [(0,3), (3,2), (1,1), (0,2)] *일반적으로 흑백 이미지, 단순 그래픽, 희소 행렬 등에서 많이 사용된다. *단순성과 구현 용이성 때문에 가장 오래되고 널리 쓰이는 압축 방식 중 하나이다. ==원리== #원본 데이터에서 연속(run) 구간을 찾는다. #해당 값을 기록하고, 연속 길이를 함께 저장한다. #디코딩 시에는 (값, 길이) 쌍을 풀어서 원래 데이터로 복원한다. ==특징== *'''장점''' **구현이 매우 단순하고 인코딩/디코딩 속도가 빠르다. **반복 구간이 많을수록 압축 효율이 높다. **텍스트, 이미지, 희소 데이터 등 다양한 도메인에 적용 가능하다. *'''단점''' **반복 구간이 적을 경우 압축 효율이 떨어지고, 오히려 데이터가 더 커질 수 있다. **임의 접근(random access)이 어렵다. ==응용== *'''이미지 압축''' : TIFF, BMP 같은 포맷에서 픽셀 데이터 압축에 사용 *'''팩스 전송''' : 흑백 문서의 빈 공간(white run)과 글자 부분(black run)을 압축하여 전송 *'''데이터베이스''' : 희소 데이터 표현 최적화 *'''머신러닝''' : 희소 텐서 표현, 딥러닝 모델 파라미터 압축 ==변형== *'''RLC(Run-Length Coding)'''라고도 불리며, 동일한 개념으로 사용된다. *희소 행렬 표현에서는 값과 0의 길이를 분리하여 저장하는 변형이 사용되기도 한다. *허프만 코딩이나 다른 엔트로피 인코딩과 결합하여 효율을 높이는 경우도 있다. ==같이 보기== *[[비트맵 인코딩 (압축)]] *[[희소 데이터]] *[[데이터 압축]] *[[허프만 코딩]] ==참고 문헌== *Khalid Sayood, ''Introduction to Data Compression'', Morgan Kaufmann, 2017. *David Salomon, ''Data Compression: The Complete Reference'', Springer, 2007. ==각주== <references /> [[분류:인코딩]] [[분류:압축]]
요약:
IT 위키에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 라이선스로 배포된다는 점을 유의해 주세요(자세한 내용에 대해서는
IT 위키:저작권
문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다.
저작권이 있는 내용을 허가 없이 저장하지 마세요!
취소
편집 도움말
(새 창에서 열림)
둘러보기
둘러보기
대문
최근 바뀜
광고
위키 도구
위키 도구
특수 문서 목록
문서 도구
문서 도구
사용자 문서 도구
더 보기
여기를 가리키는 문서
가리키는 글의 최근 바뀜
문서 정보
문서 기록