MSG – 2세대 Meteosat
드라이버 단축 이름
MSG
빌드 의존성
msg 라이브러리
이 드라이버는 MSG(Meteosat Second Generation) 파일 읽기를 구현했습니다. MSG 포맷은 H-000-MSG1\_\_-MSG1\_\_\_\_\_\_\_\_-HRV\_\_\_\_\_\_-000007\_\_\_-200405311115-C\_
같은 이름을 가지고 있는 파일들로, 보통 날짜로 되어 있는 (예를 들어 앞의 이름에서 2004\05\31
) 폴더 구조로 배포됩니다.
MSG 파일은 웨이블릿 압축 파일입니다. 압축 해제 라이브러리를 (공공 웨이블릿 변환 압축 해제 라이브러리 소프트웨어, 단축명은 웨이블릿 변환 소프트웨어(Wavelet Transform Software) 를) 사용하려면 EUMETSAT 의 사용 허가가 필요합니다. 마이크로소프트 윈도우, 리눅스 및 솔라리스 운영 체제 상에서 이 소프트웨어를 컴파일할 수 있으며, 32비트 및 64비트는 물론 혼합 아키텍처에서도 작동합니다. 아파치 버전 2에 이 소프트웨어의 사용 권한이 포함되어 있습니다.
이 드라이버는 기본적으로 “활성화”되어 있지 않습니다. 빌드 지침 에서 사용자의 GDAL 라이브러리에 어떻게 이 드라이버를 포함시키는지에 관해 읽어보십시오.
드라이버 케이퍼빌리티
지리참조 작업 지원
이 드라이버는 지리참조 작업을 지원합니다.
빌드 지침
CMake 빌드
빌드 힌트 (cmake) 의 GDAL_USE_PUBLICDECOMPWT
옵션을 참조하십시오.
기타 빌드 시스템
웨이블릿 압축 해제 용 EUMETSAT 라이브러리를 frmts/msg
로 복사하십시오.
비주얼 스튜디오 6.0으로 빌드하는 경우, 해당 디렉터리에 저장되어 있는 PublicDecompWTMakefiles.zip
파일로부터 PublicDecompWT 를 위한 .vc makefile을 추출하십시오.
GNUMakefile을 이용해서 빌드하는 경우, --with-msg
옵션으로 MSG 드라이버를 활성화하십시오:
./configure --with-msg
사용자가 makefile 그리고/또는 MSG 소스 파일에서 조정이 필요한 점을 알아냈다면, “커밋(commit)”해주십시오. EUMETSAT 라이브러리는 “크로스 플랫폼”이지만, 마이크로소프트 윈도우와 비주얼 스튜디오 6.0과 작업하면서 다른 플랫폼의 MSG 드라이버를 확인할 여력이 없었습니다. 그리고 래스터 드라이버 구현 예제 의 “GDAL 트리에 드라이버 추가하기” 단락에 있는 4단계부터 7단계까지를 적용하십시오.
MSG 위키 페이지 에서 MSG 빌드 및 활용에 대한 힌트를 문서화하고 있습니다.
소스 데이터셋 사양
개별 파일을 선택해서 열 수도 있습니다. 이런 경우, 드라이버가 동일 이미지의 다른 스트립(strip)들에 대응하는 파일을 수집해서 이미지를 정확하게 구성할 것입니다.
다음은 gdal_translate.exe를 사용하는 예시입니다:
gdal_translate
C:\hrit_a\2004\05\31\H-000-MSG1__-MSG1________-HRV______-000008___-200405311115-C_
C:\output\myimage.tif
다음 문법을 사용해서 MSG 파일을 열 수도 있습니다:
MSG(source_folder,timestamp,(channel,channel,…,channel),use_root_folder,data_conversion,nr_cycles,step)
source_folder: 파일들을 담고 있는 폴더 구조를 가리키는 경로
timestamp: 해당 시간에 촬영된 이미지 12개의 파일 114개를 식별하는 날짜/시간을 표현하는 12자리 숫자. 예: 200501181200
channel: 1에서 12 사이의 숫자. 사용할 수 있는 채널 12개를 각각 표현합니다. 채널 1개만 지정하는 경우, 괄호는 있어도 없어도 됩니다.
use_root_folder: Y로 설정하면 파일들이 지정한 source_folder 자체에 존재한다는 의미입니다. N로 설정하면 파일들이 날짜 구조의 폴더(source_folder/YYYY/MM/DD)에 존재한다는 의미입니다.
data_conversion:
원본 10비트 DN 값을 유지하려면 N으로 설정하십시오. UInt16형 데이터를 산출합니다.
(GIF 및 JPEG 이미지의 경우 편리한) 8비트로 변환하려면 B로 설정하십시오. 바이트형 데이터를 산출합니다.
방사측정 보정을 수행하고 mW/m2/sr/(cm-1)-1 단위로 변환하려면 R로 설정하십시오. Float32 데이터를 산출합니다.
방사측정 보정을 수행하고 W/m2/sr/um 단위로 변환하려면 L로 설정하십시오. Float32 데이터를 산출합니다.
가시 밴드(1, 2, 3 및 12)의 반사율 및 적외선 밴드(다른 모든 밴드)의 켈빈 온도 단위 기온으로 변환하려면 T로 설정하십시오. Float32 데이터를 산출합니다.
nr_cycles: 동일 (시계열) 파일에 포함되기 위해 필요한 연속 사이클의 횟수를 나타내는 숫자입니다. 추가적인 밴드로 첨부됩니다.
step: 다중 사이클을 선택했을 때 단계 크기(stepsize)를 나타내는 숫자입니다. 예를 들어 15분마다: step = 1, 30분마다: step = 2, … 사이클은 정확히 15분 간격이기 때문에 그 사이의 시간으로부터 이미지를 얻을 수는 없다는 사실을 기억하십시오. (step은 정수형이기 때문입니다.)
다음은 gdal_translate 유틸리티를 사용하는 예시입니다.
200501181200 MSG 이미지의 1, 2, 3번 밴드를 IMG 포맷으로 가져오는 예시:
gdal_translate -of HFA MSG(\\pc2133-24002\RawData\,200501181200,(1,2,3),N,N,1,1) d:\output\outfile.img
동일하지만, 모든 값을 4로 나누어 10비트 이미지를 8비트로 변환해서 JPG 포맷으로 가져오는 예시:
gdal_translate -of JPEG MSG(\\pc2133-24002\RawData\,200501181200,(1,2,3),N,B,1,1) d:\output\outfile.jpg
동일하지만, JPEG 이미지의 밴드를 RGB 비슷하게 재정렬하는 예시:
gdal_translate -of JPEG MSG(\\pc2133-24002\RawData\,200501181200,(3,2,1),N,B,1,1) d:\output\outfile.jpg
원본 10비트 값을 유지하면서 2번 밴드만 Geotiff 포맷으로 가져오는 예시:
gdal_translate -of GTiff MSG(\\pc2133-24002\RawData\,200501181200,2,N,N,1,1) d:\output\outfile.tif
동일하지만, 12번 밴드만:
gdal_translate -of GTiff MSG(\\pc2133-24002\RawData\,200501181200,12,N,N,1,1) d:\output\outfile.tif
동일하지만, 12번 밴드를 mW/m2/sr/(cm-1)-1 단위로 방사측정 보정:
gdal_translate -of GTiff MSG(\\pc2133-24002\RawData\,200501181200,12,N,R,1,1) d:\output\outfile.tif
\pc2133-24002RawData... 대신 c:hrit-data20050118 로부터 데이터 추출:
gdal_translate -of GTiff MSG(c:\hrit-data\2005\01\18,200501181200,12,Y,R,1,1) d:\output\outfile.tif
동일하지만, 다른 옵션으로 (“use_root_folder” 파라미터 자리의 Y와 N의 차이점을 주목하십시오):
gdal_translate -of GTiff MSG(c:\hrit-data\,200501181200,12,N,R,1,1) d:\output\outfile.tif
방사측정 보정을 빼고, 연속 사이클 10회 (따라서 1200에서 1415까지):
gdal_translate -of GTiff MSG(c:\hrit-data\,200501181200,12,N,N,10,1) d:\output\outfile.tif
연속 사이클 10회, 그러나 1시간 간격으로 (따라서 1200에서 2100까지):
gdal_translate -of GTiff MSG(c:\hrit-data\,200501181200,12,N,N,10,4) d:\output\outfile.tif
1시간 간격으로 연속 사이클 10회, 3, 2, 1 밴드를 가져오는 예시:
gdal_translate -of GTiff MSG(c:\hrit-data\,200501181200,(3,2,1),N,N,10,4) d:\output\outfile.tif
지리참조 및 투영법
MSG 이미지는 정지위성 뷰(Geostationary Satellite View) 투영법을 사용합니다. 대부분의 GIS 패키지는 이 투영법을 인식하지 못 하지만 (이 투영법을 사용할 수 있다고 알려진 드라이버는 ILWIS가 유일합니다) gdalwarp.exe를 사용하면 이미지를 재투영할 수 있습니다.
참고
gdal/frmts/msg/msgdataset.cpp
로 구현되었습니다.http://www.eumetsat.int - 유럽기상위성개발기구