대한지구물리학회 2004년 공동학술대회 (6월 10일 ~ 11일) 초록

교육용 인공위성 영상레이더 자료처리 공개 프로그램 (eSAR Processor)의 개발

Development of educational Synthetic Aperture Radar Processor

이 훈 열

강원도 춘천시 효자2동 강원대학교 지구물리학과

Tel: 033-250-8587, Fax: 033-244-8580, Email: hoonyol@kangwon.ac.kr

서론

영상레이더(imaging radar)는 안테나를 통하여 마이크로파를 쏘아서 물체로부터 후방 산란된 신호를 포착하여 2차원적인 영상을 얻는 센서이다. 마이크로파는 대기 중의 수증기나 구름, 먼지 등에 거의 영향을 받지 않기 때문에 날씨에 관계없이 영상을 얻을 수 있어서 원격탐사에서 널리 쓰이는 전자기파의 일종이다. 그 중에서도 최근에 각광받는 Synthetic Aperture Radar (SAR)는 안테나와 지표물체의 상호 움직임에 따른 거리 변화로 인한 도플러 효과를 이용하여 복잡한 자료처리 과정을 통해 높은 해상도를 얻는 원격탐사 센서로서 최근 각광을 받고 있다.

SAR 해상도의 급격한 향상은, 영상의 밝기만이 얻어지는 보통의 광학 영상과는 달리 영상의 위상(phase) 자료가 기록 보존되기 때문에 가능하다. 또한 시간과 위치를 달리하면서 취득된 영상들의 위상차를 이용한 SAR 간섭 기법(Interferometry)은 연간 수 십 센티미터에 걸쳐 일어나는 지표의 미세한 움직임을 밀리미터 오차로 측정해 낼 수 있기 때문에, 지진, 화산, 빙하의 움직임, 지반 침하 등으로 인한 지표의 변위를 정밀하게 측정하는데 최근 널리 이용되고 있다.

우리나라에서도 현재 SAR를 이용한 연구가 대학과 연구소에서 활발히 이루어지고 있으며, 2010년도에는 인공위성 SAR를 보유하는 국가적인 계획이 진행 중이다. 이에 대비하여 SAR 센서와 자료처리 과정을 이해하는 전문적인 인력의 배출이 시급한 실정이라 하겠다. 최근 대학원이나 학부과정에서 원격탐사를 가르치는 교과과정이 많이 늘어나고 있고 SAR에 대한 관심도 높아지고 있다.

원격탐사, 특히 SAR의 교육에는 자료 처리에 대한 비중이 높기 때문에 실습용 프로그램의 확보가 매우 중요하다. 그러나 보통의 상업용 SAR 프로세서는 가격이 매우 비싸고 프로그램 소스코드가 공개되지 않기 때문에 교육용으로는 한계가 있어서, 대학에서 SAR를 교육하고 인력을 양성하는데 현실적인 어려움이 많다. 미국 NASA에서는 소스코드와 함께 제공되는 roi_pack 이라는 SAR 처리 프로그램을 공개하고 있기도 하다. 그러나 이 프로그램은 Fortran, C, Perl과 같은 여러 언어로 구성되어 있고 모든 처리가 자동으로 일관되고 컴퓨터 자원이 많이 소요되기 때문에 대학에서 강의 실습용으로 사용하기에는 적합하지 않다는 것이 필자의 생각이다.

따라서 이 초록에서는 저자가 대학원 수업 교재로 사용하기 위하여 개발한 SAR 자료처리 프로그램에 대한 내용을 소개하고 향후 업그레이드 계획과 프로그램의 공개 방안을 소개하여, 앞으로 SAR를 교육하는데 널리 이용될 수 있도록 권장하고자 한다.

eSAR Processor 개요

eSAR Processor는 SAR의 원시 자료 형태인 RAW 자료를 이용하여 Range-Doppler Algorithm을 이용한 SAR focusing을 수행한다.  이 프로그램은 ANSI-C 언어로만 이루어졌기 때문에, PC, UNIX, Linux, 등 C-compiler 프로그램이 있는 거의 모든 컴퓨터에서 사용할 수 있는 장점이 있다. 저자는 MS Windows 상에서 cygwin (www.cygwin.com)이라는 공개 Linux 모사 프로그램을 사용하여 GNU C-compiler로 컴파일 하여 사용하기 때문에 비용이 들지 않고 license를 합법적으로 해결할 수 있었다.

이 프로그램은 크게 세 부위로 이루어져 있다 (그림 1). 첫째는 RAW 자료의  헤더 정보를 읽어서 자료 처리에 필요한 정보를 수집하고 원하는 부분의 데이터를 분리해내는 과정이다. 이 때 학생들이 자료의 정보를 읽어내고 프로그램에 필요한 변수들을 결정하는 과정에 있어서 SAR 시스템에 대한 이해를 높일 수 있기 때문에 교육적으로 매우 효과가 크다 하겠다. 이 프로그램은 특정한 인공위성 SAR 자료에만 국한되지 않고 원리가 되는 기본적인 변수 값들을 결정하여 입력해주면 되는 형식이기 때문에, SAR의 원리를 이해한다면 어떠한 종류의 자료도 처리가 가능한 프로그램이다. 또한 전체 데이터에서 일부분만을 추출하여 선택적으로 처리할 수 있도록 설계되어 있어서, 컴퓨터의 메모리, 저장장치의 공간, 프로세싱 시간 등을 교육 여건에 맞게 조절할 수 있다. 이는 보통 컴퓨터 자원이 한정되어있는 학교의 교육 실습용 공동 컴퓨터들을 활용하는데 매우 효율적인 방안이 된다. 가장 기본적인 SAR focusing을 하는데 필요한 컴퓨터 메모리는, 영상의 픽셀 크기가 가로, 세로 방향으로 각각 nrow, ncol 일 때 대략 nrow*ncol*16 Byte이다. 예들 들어 1024×4096 크기의 부분 영상은 약 70Mbyte의 메모리와 이와 비슷한 저장 공간이 최종 자료 처리 결과를 내는데 필요하며, 펜티엄-3 700MHz CPU에서도 수 분 이내에 생산되기 때문에 강의시간에 학생 개개인이 실시간으로 실습이 가능하다.

두 번째 단계로, eSAR Processor는 앞에서 추출된 변수 자료를 이용하여 range-Doppler algorithm을 이용, SAR focusing을 수행한다. 레이더의 안테나에서 지상으로 보내지는 chirp signal에 관련된 변수들을 자료의 헤더부분에서 얻어서 FFT(Fast Fourier Transformation)를 이용한 matched-filtering 기법으로 range compression을 수행한다. 이어서 range-azimuth 평면 위에 흩어져 있는 지상의 한 목표물에 대한 신호를 효율적으로 모으기 위한 range migration이 실행되며, 또한 안테나와 목표물간의 상대적 움직임 때문에 일어나는 Doppler 현상을 추적하여 azimuth compression을 수행한다. 이때에도  forward, inverse FFT 알고리듬이 사용된다. 따라서 SAR focusing에 소요되는 컴퓨터 프로세싱 시간은 대부분 2차원 자료 공간에 대한 range, azimuth 방향으로 각각 두 번에 걸친 1차원적인 forward, inverse FFT가 주로 차지한다. 이러한 SAR focusing과정을 통하여 SLC (Single Look Complex)영상이 얻어진다. eSAR Processor는 SAR focusing에 사용되는 다양한 변수들을 바꾸어서 프로세싱하는 실험이 가능하고 또한 원시 프로그램(source code)이 함께 제공되기 때문에 학생들로 하여금 SAR의 원리를 익히고 이 프로그램 자체를 변형 및 발전할 수 있는 여지를 남기고 있다.

셋째, 후처리 과정으로서 multilook processing과 자료출력기능이다. SAR 영상의 특징인 speckle 잡음을 제거하기 위한 multilook processing으로서는 SAR focusing 후 생성된 SLC 영상에 average filter를 적용하는 방법을 채택하였다. eSAR Processor는 프로그램이 수행되는 중간 단계의 결과들을 선택적으로 출력할 수 있기 때문에 교육적 효과가 있다. 출력된 자료는 기존의 영상 디스플레이 프로그램을 이용하여 후처리가 가능하다. 특히 앞에서 설명한 경우와 같이 cygwin에서 eSAR Processor를 구성한 경우에는 MS Windows 상에서 설치된 기존의 영상처리 프로그램을 그대로 사용하여 디스플레이가 가능하다. 출력 형식은 I/Q 혹은 amplitude/phase 중에서 선택할 수 있으며, 각 band의 형식 또한 BIL, BIP, BSQ 중에 선택되며, 자료 출력 단위도 4-byte와 8-byte 중에 하나를 선택할 수 있다. 그림 2는 SAR raw data(a)와 eSAR Processor로 자료처리가 끝난 후 영상(b)을 보여주고 있다.

공개 방안 및 향후 발전 계획

프로그램과 샘플 자료 및 자세한 사용 안내는 강원대학교 지구물리학과 홈페이지의 일부인 아래의 인터넷 주소에서 받을 수 있다.

http://www.kangwon.ac.kr/~geophy/geoinfo/index.htm

앞으로 이 프로그램의 사용이 활성화 되면 사용자 포럼을 인터넷상에 만들어서 상호 정보 교류, 업그레이드 방안 등을 논의할 계획이다. eSAR Processor는 현재까지 SAR focusing까지만 개발되어 있는 상태이다. 앞으로 SAR 간섭 기법을 구현할 수 있는 교육용 프로그램으로 발전시킬 계획이다.

결론

필자는 이 초록을 통하여 교육용 SAR 처리 소프트웨어인 eSAR Processor의 개발과 그 공개 활용 방안을 제안하면서, 앞으로 대학 및 대학원에서 인공위성 SAR에 관계되는 강좌가 많이 개설되어 교육할 때 도움이 되기를 바란다. 아직 eSAR Processor는 개발의 초기 단계에 있고 교육용이라는 목적으로 개발되었기 때문에, 자동으로 모든 것을 행하는 프로그램이 아니며 사용자는 SAR의 원리를 공부하고 eSAR Processor의 원시프로그램을 읽고 처리과정을 이해하는 정도의 노력이 요구된다. 앞으로 관심 있는 분들과의 상호 교류를 통하여 이 프로그램을 지속적으로 발전시켜 나갈 수 있기를 기대한다.

참고문헌

Curlander, J. C. and R. N. McDonough, 1991. Synthetic Aperture Radar Systems and Signal Processing, John Wiley & Sons, Inc.

Press, W. H., 1993. Numerical Recipes in C: The Art of Scientific Computing, 2nd ed., Cambridge.

Brigham, E. O., 1988. The Fast Fourier Transform and its Applications, Prentice-Hall, Inc.

SAR RAW DATA

Extract

Sub-Region

Read and Interpret

Data Header

Range Compression

Range

Migration

Multilook

Prepare Parameters

Range

FFT

Range

iFFT

Azimuth

FFT

Azimuth Compression

Azimuth

iFFT

User

eSAR Processor

output

output

output

output

output

output

output

output

그림 1. eSAR Processor 자료 처리 과정

(a) SAR RAW DATA	(b) Focused SAR Amplitude

그림 2. eSAR Processor 자료처리의 예. (a) ERS-1 SAR RAW Data (2048x4096 pixels, 5-bit real value). (b) Focused SAR amplitude image (4-look amplitude, 40km×18km).