GMT

격자별 대표값 선정 [blockmean, blockmedian, blockmode]

작성자
heukchoo
작성일
2021-01-17 20:20
조회
407
 

지도를 제작하기 위해선 xyz의 공간정보를 많이 다루게 된다.

xyz 데이터를 xy 공간에 뿌려보면 보통 무작위로 분포하며, 무작위로 분포하는 자료를 그대로 사용할 수도 있고 적당한 툴을 사용하여 격자별로 대표값을 선정하여 사용할 수도 있다.
(무작위 분포: 데이터가 어느곳은 밀집되거나 어느곳은 드문드문 있음)

 
GMT에서는 xyz 데이터를 netCDF 포맷의 격자 파일로 변환하여 사용한다.

격자파일은 정해진 구역을 정해진 간격으로 격자화하고 하나의 격자에 하나의 값을 가지고 있다.

GMT에서는 여러가지 격자 파일 변환 툴이 있고 그 중에서 많이 사용하는 surface 명령의 경우 무작위로 분포하는 xyz 파일을 그대로 사용하면 부적절한 샘플링으로 인해 계단현상과 같은 시각적 이상(aliasing)을 보일 수 있다.
이것을 효과적으로 해결하려면 blockmedian 등과 같은 툴로 격자별 대표값을 적절히 추출하여 사용하는 것이 좋다.

또한, blockmedian 등의 툴은 xyz 데이터를 격자별로 한개의 대표값으로 추려내면서 자료를 경량화하는 효과도 있다.

 



 
blockmean : 설정한 각 격자별로 평균값을 대표값으로 선정한다.

blockmedian : 설정한 각 격자별로 중앙값을 대표값으로 선정한다.

blockmode : 설정한 각 격자별로 최빈값을 대표값으로 선정한다.

 
GMT에서는 위 세개의 격자별 대표값 선정 툴을 제공한다.
주요 사용법이 동일하므로 blockmedian을 예로 설명한다.


다음은 입력방식만 달리한 blockmedian의 사용법이다.
gmt blockmedian 입력파일.xyz -R125/127/34/36 -I10m > 결과파일.xyz

type 입력파일.xyz | gmt blockmedian -R125/127/34/36 -I10m > 결과파일.xyz
 

입력파일은 아스키 포맷의 텍스트 파일이다.(확장자는 무관)
일반적으로 'x, y, z' 의 3개 열을 사용하며, 'x, y, z, w'의 4개 열을 사용할 수도 있다.

입력파일을 지정하지 않고 파이프라인(|) 사용하여 표준입력을 데이터로 받을 수도 있다.(예시의 2번째 행)

 
-R과 -I 필수 옵션이다.
-R은 격자화 할 공간범위를 나타낸다.
주로 입력파일의 x, y 범위를 사용한다.

-I는 격자 간격이다.
'-I10m'에서 m은 단위로서 위경도 도-분-초의 분을 의미한다.
단위는 분(m), 초(s), 미터(e), 피트(f), 킬로미터(k), 마일(M), 해리(n), US 측량 피트(u)가 있으며, 단위를 지정하지 않으면 기본적으로 '도'를 사용한다.
'-I10m/5m'와 같이 x, y의 격자 간격을 구분하여 지정할 수도 있다.

-W는 입력파일의 4번째 열에 가중치(w)가 주어진 경우 사용한다.

 

 

 
전체 0