이것은 Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 제공자에서 실행할 수 있는 r.compressgrass 명령입니다.
프로그램:
이름
r.압축 - 래스터 맵을 압축하고 압축을 해제합니다.
키워드
래스터, 맵 관리, 압축
개요
r.압축
r.압축 --도움
r.압축 [-up] 지도=현[,현, ...] [-도움] [--말 수가 많은] [--조용한] [--ui]
플래그 :
-u
지도 압축 해제
-p
입력 맵의 압축 정보 및 데이터 유형을 인쇄합니다.
--도움
사용 요약 인쇄
--말 수가 많은
자세한 모듈 출력
--조용한
조용한 모듈 출력
--UI
강제 실행 GUI 대화 상자
매개 변수 :
지도=문자열[,문자열,...] [필수의]
기존 래스터 맵의 이름
기술
r.압축 래스터 맵 레이어를 압축하고 압축 해제하는 데 사용할 수 있습니다. 또한,
입력 래스터 맵의 맵 압축 및 데이터 유형에 대한 정보를 인쇄합니다.
압축 중에 이 프로그램은 RLE(Run-Length-Encoding)를 사용하여 래스터 맵을 다시 포맷합니다.
또는 ZLIB의 "deflate"(LZ77 기반) 알고리즘. 매우 적은 양의 데이터를 포함하는 래스터 맵 레이어
정보(경계, 지질, 토양 및 토지 이용 지도 등)는 크게 줄어들 수 있습니다.
크기. 일부 래스터 맵 레이어는 원래 크기의 약 1%로 축소됩니다. 래스터 맵
고도 및 사진 또는 위성 이미지와 같은 복잡한 이미지를 포함하는 레이어가 있을 수 있습니다.
크기가 약간 증가합니다. 새로 생성된 모든 래스터 맵은 자동으로 저장됩니다.
압축 형식(아래 형식 참조). 다른 모듈은 압축 형식과 일반 형식을 모두 읽을 수 있습니다.
(압축되지 않은) 파일 형식.
예를 들어, Spearfish 데이터베이스 래스터 맵 레이어 소유자 원래는 크기였습니다
26600바이트. RLE 압축 후 래스터 맵은 1249바이트(25351)로 줄었습니다.
바이트가 더 작아짐).
래스터 파일은 수동으로 압축 해제하여 원래 형식으로 되돌릴 수 있습니다.
전에, -u 의 국기 r.압축. 면 r.압축 래스터 맵을 압축하라는 요청을 받았습니다.
이미 압축된 경우(또는 이미 압축 해제된 래스터 맵을 압축 해제하는 경우) 간단히
사용자에게 지도가 이미 압축 해제되었음을 알리고 종료합니다.
술어
· INTEGER 맵(CELL 데이터 유형): INTEGER 유형(정수만)의 래스터 맵
· FLOAT 맵(FCELL 데이터 타입): FLOAT 타입(4바이트, 7-9자리)의 래스터 맵
정도)
· DOUBLE 맵(DCELL 데이터 타입): DOUBLE 타입(8바이트, 15-17자리)의 래스터 맵
정도)
· NULL: 래스터 맵에서 "데이터 없음"을 나타내며 0(영) 데이터와 구별됩니다.
가치
익숙한 압축 알고리즘
부동 소수점(FCELL, DCELL) 래스터 맵은 RLE 압축을 사용하지 않습니다.
ZLIB로 압축되거나 압축되지 않음.
정수(CELL) 래스터 맵은 기본적으로 ZLIB 압축되거나 압축되지 않은 상태로 유지될 수 있습니다.
환경 변수 GRASS_INT_ZLIB가 존재하고 값이 0이며 새로 생성됨
압축된 정수(CELL 유형) 래스터 맵은 RLE 압축을 사용하여 압축됩니다.
ZLIB 대신.
내부 cellhd 파일에서 "압축" 값은 RLE의 경우 1이고 ZLIB의 경우 2입니다.
분명히 압축 해제는 래스터 맵의 압축에 의해 제어되며
환경 변수.
노트
r.압축 비대화형 또는 대화형으로 실행할 수 있습니다. 비대화형 사용 시,
사용자는 압축할 래스터 맵 레이어의 이름을 지정해야 합니다.
명령줄에서 다음 형식을 사용하여 압축 해제합니다. 지도=name[,name,...] (각각 name is
압축 또는 압축 해제할 래스터 맵 레이어의 이름). 기본 동작은 다음과 같습니다.
명명된 맵을 압축합니다.
형식
개념적으로 래스터 데이터 파일은 셀 행으로 구성되며 각 행에는 다음이 포함됩니다.
동일한 수의 셀. 셀은 하나 이상의 바이트로 구성됩니다. 셀당 바이트 수는
셀에 저장된 범주 값에 따라 달라집니다. 범주 값은 0~255 범위에 속합니다.
셀당 1바이트가 필요하지만 256-65535 범위의 범주 값에는 2바이트가 필요합니다.
65535 이상 범위의 카테고리 값에는 셀당 3바이트(또는 그 이상)가 필요합니다.
The 감압 래스터 맵 형식은 개념적 형식과 일치합니다. 예를 들어, 래스터
1바이트 셀로 구성된 맵은 행 100개, 행당 200개의 셀로 구성되어 있으며, 총 20,000바이트로 구성됩니다.
UNIX 명령 실행 ls -l 이 파일의 크기는 20,000으로 표시됩니다. 셀이
2바이트 셀의 경우 파일에는 40,000바이트가 필요합니다. 지도 레이어 범주 값은 다음과 같습니다.
왼쪽 위 모서리 셀 다음에 북쪽 경계를 따라 다른 셀이 옵니다.
첫 번째 행의 마지막 바이트 다음에 오는 바이트는 두 번째 행의 첫 번째 셀입니다.
범주 값(왼쪽에서 오른쪽으로 이동). 행 끝 마커나 기타
래스터 맵에서 코드 동기화. 셀 헤더 파일(셀HD)는 이것을 정의하는 데 사용됩니다.
바이트 문자열은 카테고리 값의 행으로 나뉩니다.
The 압축 된 RLE 형식은 그렇게 단순하지는 않지만 디자인이 매우 우아합니다.
래스터 데이터를 저장하는 데 필요한 디스크 공간만 줄어들지만 종종 더 빠른 결과를 가져올 수 있습니다.
디스크 I/O가 적기 때문에 그래픽 및 분석 프로그램 실행이 용이합니다. 두 가지가 있습니다.
압축 RLE 형식: 3.0 이전 버전 형식(GRASS 프로그램은 읽을 수 있지만 읽을 수 없음)
더 이상 생산되지 않음) 및 버전 3.0 형식(새로운 래스터가 자동으로 사용됨)
지도 레이어가 생성됩니다).
3.0 이전 체재:
첫 번째 3바이트(문자) - 이것은 래스터 데이터를 식별하는 특수 코드입니다.
압축.
주소 배열(long) - 주소 배열(행 수 + 1)을 가리키는 주소
각 행의 내부 시작입니다. 각 행의 크기가 다를 수 있으므로 이 배열은
데이터 매핑을 제공하는 데 필요합니다.
데이터의 북쪽 가장자리에서 시작하여 행별로 일련의 바이트 그룹이 설명됩니다.
데이터입니다. 각 그룹의 바이트 수는 셀당 바이트 수에 1을 더한 값입니다.
각 그룹의 첫 번째 바이트는 다음을 포함하는 셀 수(최대 255)를 계산합니다.
그룹의 나머지 바이트가 제공하는 카테고리 값입니다.
포스트-3.0 체재:
3바이트 코드는 사용되지 않습니다. 대신 셀 헤더의 필드를 사용하여 다음을 나타냅니다.
압축 형식.
주소 배열은 동일합니다.
RLE 형식은 각 데이터 행 앞에 다음이 붙는 것을 제외하고는 3.0 이전 RLE와 동일합니다.
행의 셀당 바이트 수를 포함하는 단일 바이트 및
run-length-encoding을 사용하면 행이 non-run-length-encoding보다 적은 공간을 필요로 하지 않습니다.
그러면 해당 행은 인코딩되지 않습니다.
이러한 개선 사항은 래스터의 3.0%에서 99 이전 형식보다 더 나은 압축을 제공합니다.
데이터 레이어. 더 커지는 래스터 데이터 레이어의 종류는 각 행이
압축하면 더 커질 것입니다(예: 영상 밴드 파일). 그러나 이 경우에도
래스터 데이터 레이어는 주소 배열의 크기와 단일 크기만큼만 더 커집니다.
각 행 앞에 오는 바이트.
GRASS GIS 7.0.0부터 Integer(CELL) 맵의 기본 압축 방법은 deflate입니다.
더 이상 RLE 압축이 아닙니다.
DEFLATE 압축 수평
환경 변수 GRASS_ZLIB_LEVEL이 존재하고 해당 값을 다음과 같이 구문 분석할 수 있는 경우
정수, 새로 생성된 래스터 맵이 사용될 때 사용되는 압축 수준을 결정합니다.
zlib 압축을 사용하여 압축합니다. 이는 모든 래스터 맵 유형(CELL, FCELL,
(디셀러).
변수가 존재하지 않거나 값을 정수로 구문 분석할 수 없는 경우 zlib의
기본 압축 수준이 사용됩니다.
사용 예
현재 압축 상태 인쇄:
r.compress 압축_아니요 -p
(레벨 0: 없음). 데이터 유형:
압축되지 않은 맵의 복사본에 RLE 압축 적용:
# RLE 압축을 이용한 맵 압축
g.copy 래스터=압축_아니요,압축_RLE
GRASS_INT_ZLIB=0 # RLE를 내보냅니다
r.compress 압축_RLE
r.compress 압축_RLE -p
압축됨(레벨 1: RLE). 데이터 유형:
GRASS_INT_ZLIB 설정 해제
압축되지 않은 맵의 복사본에 DEFLATE(ZLIB) 압축을 적용합니다.
# DEFLATE 압축을 사용하여 맵 압축
g.copy 래스터=압축_아니요,압축_DEFLATE
export GRASS_INT_ZLIB=1 # 수축
r.compress 압축_DEFLATE
r.compress 압축_DEFLATE -p
압축됨(레벨 2: DEFLATE). 데이터 유형:
GRASS_INT_ZLIB 설정 해제
onworks.net 서비스를 사용하여 r.compressgrass를 온라인으로 사용하세요