2010년 2월 5일 금요일

[Spatial Analysis]분석환경의 정의가 중요하다

래스터 중첩분석 등 분석 후 셀 크기를 이용하여 면적을 산출하곤 한다. 특히 표고/경사 등 Continuous 데이터가 아닌 카테고리(Ordinal, Norminal)데이터의 경우에 분석영역 및 Extent 등을 설정하지 않고 분석할 경우 값별 면적이 분석할 때마다(분석인자의 Extent가 다를경우) 달라질 수 있다.

따라서, 정확한 면적(래스터에 대해서 정확한 면적을 논하기는 무의미하지만)의 측정 또는 분석의 일관성을 유지하기 위해 분석환경을 설정하는 것이 매우 중요하다.

분석환경 설정에는 분석영역 정의(Mask Dataset, Extent)와 분석 셀 크기 정의 등이 있다.



ArcGIS에서 Spatial Analyst Toolbar를 사용하는 경우에는 Option... 메뉴의 Analysis mask 및 Analysis Extent를 설정할 수 있으며, ArcToolbox의 경우에는 Environment... 버튼의 Raster Analysis Setting 및 General Settings 탭에서 설정하면 된다.

1. 분석영역 정의하기
래스터 데이터를 생성할 경우 Origin Point, 셀크기(X, Y), Column/Row 갯수, 픽셀 유형 등을 설정한다.
Origin Point는 래스터 생성을 위한 기준점인데 그림과 같이 좌하단을 기준점으로 사용한다.
또한 PixelBlock을 이용하여 Double[x,y]와 같은 방법으로 래스터 셀의 값에 접근할 수 있으며, 이때는 그림과 같이 좌상단이 (0, 0)이다.

아래 그림은 1미터 셀 크기의 래스터를 행/열 갯수를 10개로 설정하고 생성한 후 각 셀 값에는 좌상단부터 일련번호값을 부여한 예이다.



2. Extent 및 Mask DataSet 정의하기
분석 전에 Extent 및 Mask Dataset 정의를 반드시 고려해야 한다.

Mask Dataset을 적용하면 아래와 같이 분석영역에 대해서만 처리하게된다.
Mask Dataset을 적용하는 시기는 모든 분석(중첩, 일반화 등)이 완료되어 통합하는 단계가 적절할 것이다.


특히, 서로다른 셀 크기의 래스터의 경우 데이터셋의 특성에 맞는 Resample 방법을 선택하여 셀 크기를 동일한 사이즈로 맞추어 줘야한다.


※ Raster Pyramids에 대해서...

다음은 위 1 * 1 미터 래스터를 3 * 3 미터 래스터로 Nearest neighbor 방법으로 리샘플링한 결과이다. 단, Extent를 1미터 원본 래스터로 설정한 경우이다.

다음은 위 1 * 1 미터 래스터를 3 * 3 미터 래스터로 Nearest neighbor 방법으로 리샘플링한 결과이다. 단, Extent 및 Mask를 적용하지 않은 상태이다.