Ⅰ. 서 론
레이다 시스템은 강력한 RF 신호의 반사 신호를 이용하여 표적 감지 및 분류를 수행한다. 수신 시간과 도플러 주파수를 통해 표적의 거리와 속도를 측정할 수 있다. 레이다는 외부 환경에 대한 강건성 때문에 자율주행과 국방 분야에서 핵심 센서로 널리 사용되고 있다[1]~[3].
하지만 레이다 시스템은 표적에 대한 반사 신호만을 수신하는 것은 아니다. 산, 바다, 나무 등과 같은 주변 지형지물 또한 레이다의 RF 신호를 반사시킬 수 있다. 이와 같이 표적 이외의 주변 지형지물에 의한 반사 신호를 ‘클러터’라 지칭한다.
주변 지형지물은 표적보다 면적이 크기 때문에 클러터 신호는 표적 신호보다 강하게 레이다에 수신된다. 그림 1 및 그림 2는 레이다와 표적이 서로 가까워지게 비행을 하는 상황에서 클러터가 포함되지 않은 이상적인 레이다 수신 신호인 clean radar signal과 클러터가 포함된 레이다 수신 신호인 cluttered radar signal을 시간 영역과 주파수 영역에서 비교한다. 그림 1에서 클러터의 수신 신호 세기가 표적 신호 세기를 압도하게 되면서, 표적에 대한 명확한 거리 측정이 불가능한 것을 볼 수 있다. 그림 2의 주파수 영역에서 cluttered radar signal을 관측할 시 표적과 클러터에 대한 도플러 주파수가 동시에 수신되기에 레이다의 속도 측정 능력이 감소된다. 특히, 레이다가 탑재된 비행체의 경우, lookdown 상황에서 수신된 지상 클러터는 레이다의 거리 및 속도 측정 능력을 크게 감소시키기 때문에 클러터 신호 필터링 메커니즘이 요구된다.
딥러닝 분야에서 denoising은 클러터 제거와 유사한 주제다. Denoising은 노이즈가 포함된 입력 데이터로부터 노이즈가 제거된 깨끗한 출력 데이터를 만들어내도록 딥러닝 네트워크를 학습시키는 것을 목표한다. 딥러닝 네트워크는 학습 데이터로부터 입력으로 들어오는 노이즈의 feature를 학습하며, 노이즈를 감지하고 필터링한다.
Denoising에 대한 아이디어에 영감을 받아 본 논문은 딥러닝 기반 지상 클러터 신호 제거 기법을 제시한다. 본 논문은 이중 엔코딩 채널을 가진 엔코더-디코더 denoising 네트워크 구조를 제안한다. 이중 엔코딩 채널을 이용하여 네트워크는 클러터 제거를 위한 다양한 feature를 학습할 수 있다. Element-wise addition 기반 residual connection과 channel-wise concatenation 기반 skip connection을 이용하여 전반적인 gradient update flow를 확보하고, feature 추출성능을 개선했다. 본 논문에서는 MATLAB Phased Array Toolbox를 이용하여 개별 지상 클러터 환경과 레이다 운용 조건을 반영한 레이다 신호 데이터셋 생성 파이프라인을 제작했다[4]. 본 논문은 고전적인 기법보다 높은 평균 SCR(signal-to-clutter ratio)을 도달함으로써 지상 클러터 신호 제거에 딥러닝 기법의 적용 가능성을 보여주는 것을 목표로 한다.
Ⅱ. 관련 연구
표적에 대한 거리와 속도를 정확하게 측정하기 위해서는 클러터의 세기를 감소시키는 것이 중요하다. 이를 위해 클러터 신호 제거 알고리즘은 이동 표적이 지형지물과 달리 도플러 주파수 변화를 통해 시간 영역과 주파수 영역에서 변화를 일으킨다는 차이점을 응용한다[5],[6].
MTI(moving target indicator)는 시간 영역 기반 클러터 제거 필터이다[5]. MTI는 2~3개의 연속적인 펄스 반사 신호를 이용하여, 시간 영역에서 고정 지형지물에 의한 클러터 신호를 상쇄하고, 표적 신호를 강화시킬 수 있는 delay line canceller 구조를 사용한다[6]. MTI는 최대한 높은 range unambiguity 확보와 정확한 표적 거리 측정을 위해 LPRF(low pulse repetition frequency)를 사용한다. 하지만 이로 인해 MTI는 낮은 Doppler unambiguity를 가지며, 고속 표적 감지 능력이 제한된다. MTI의 한계점을 해결하기 위해 CFAR(constant false alarm rate), zero velocity filter, clutter subtraction 등 여러 신호처리 기법으로 구성된 MTD(moving target detector)가 사용된다[7].
PDR(pulse Doppler radar)은 주파수 영역에서의 펄스 반사 신호를 응용한 이동 표적 감지 기법이다[5]. 레이다가 전체 full scan을 수행할 때마다 PDR은 range 단위로 FFT (fast Fourier transform)를 적용하여 range-Doppler map을 생성한다. 주파수 영역에서 이동 표적의 도플러 주파수에 집중함으로서 클러터를 필터링한다. PDR은 HPRF (high pulse repetition frequency)를 사용하기에 단거리 고속 표적 감지 능력을 갖추게 된다. 그러나 MTI 대비 낮은 range unambiguity로 인해 장거리 표적 감지 능력이 제한된다.
STAP(space time adaptive processing)은 항공기용 레이다의 lookdown 비행 시나리오에서 발생하는 강한 지상 클러터를 대응할 때 사용된다[5],[8]. STAP은 클러터 또는 적대적 재밍과 같은 외부 간섭 상황에서 다중 배열 레이다의 개별 펄스 반사 신호를 각자 별도의 디지털 필터에 병렬적으로 적용함으로써 클러터를 제거한다[5],[9].
지도학습 기반 autoencoder는 레이다 이미지 데이터 denoising에 사용된다. 참고문헌 [10]은 실내 클러터 제거를 위한 sparsity-based denoising autoencoder를 제안했다[10]. 해당 논문 저자들은 RF 이미징 센서를 이용하여 동일 장소에 대한 cluttered radar 이미지와 clean radar 이미지를 짝을 지어 학습 데이터셋으로 수집했다. Autoencoder가 클러터가 포함된 radar 이미지를 입력받아 clean radar 이미지를 출력하도록 지도학습을 적용했다.
참고문헌 [11]은 holographic subsurface radar imaging을 이용한 물체 투시 인식을 위해 autoencoder를 이용한 클러터 제거 기법을 제안했다. 해당 논문 저자들은 동일 지점에 대해 인식 표적 물체가 있는 상황과 없는 상황에서의 cluttered radar 이미지를 각각 촬영하고, 각각의 결과물 이미지를 빼서 clean radar 이미지를 만들었다[11]. 제안한 방법의 클러터 제거 성능을 비교 평가하기 위해 SCR을 정량적인 평가지표로 사용했다[11].
참고문헌 [12]는 GAN(generative adversarial network)을 이용하여 cluttered spectrogram 이미지에서 드론의 micro doppler signature를 감지하는 DAE(denoising adversarial autoencoder)를 제안했다. 현실 데이터 수집이 제한된 상황에서 수집된 소수의 학습 데이터를 기반으로 GAN을 통해 딥러닝 네트워크를 경쟁시킴으로써 목표 기능을 수행할 수 있는 딥러닝 네트워크를 만들 수 있다[13].
Ⅲ. 본 론
딥러닝은 데이터 기반의 학습 알고리즘이다. 딥러닝 네트워크가 목표 기능을 학습하기 위해서는 적절한 구조와 특성을 갖춘 학습 데이터를 확보하는 것이 핵심이다. 높은 성능과 일반화 특성을 확보하기 위해서는 대규모의 학습 데이터를 확보해야 한다.
본 논문은 다양한 클러터 환경과 레이다 운용 조건을 반영한 레이다 신호를 만들어내기 위해 MATLAB Phased Array Toolbox를 이용했다[4]. 그림 3은 MATLAB을 이용하여 제작한 레이다 신호 데이터셋 생성 파이프라인이다. 표 1은 해당 파이프라인에 사용되는 입력 파라미터이다.
데이터셋 생성 파이프라인은 크게 2개 시뮬레이션 루프로 구성되어 있다. 시나리오 시뮬레이션 루프(scenario simulation loop)는 레이다와 표적의 비행 시나리오를 실행하는 것을 담당한다. 시뮬레이션 실행 중 레이다와 표적의 위치를 업데이트한다. 그리고 사용자가 정의한 탐색 각도 패턴에 맞춰서 레이다 빔 방사 각도를 업데이트한다. 펄스 시뮬레이션 루프(pulse simulation loop)는 pulse radar의 송수신 신호를 모사하는 것을 담당한다.
펄스 시뮬레이션 루프는 특정 방사 각도에 대한 수신 신호의 range-time intensity 데이터를 1차원 벡터 형태로 생성한다. 시나리오 시뮬레이션 루프의 레이다 방사각도 업데이트로 인해 펄스 시뮬레이션 루프는 매번 다른 각도의 수신 신호 데이터를 만들어낸다. 매번 full scan마다 1차원 벡터로 구성된 range-time intensity 데이터를 수직으로 쌓아서 그림 4에 묘사된 바와 같이 range-time 이미지를 만들어낼 수 있다. Clean radar signal 데이터로 구성된 range-time 이미지는 학습의 groundtruth로 사용되며, cluttered radar signal 데이터로 구성된 range-time 이미지는 딥러닝 네트워크의 입력으로 사용된다.
지상 클러터는 그림 5와 같이 지형 특성과 종류에 따라 다른 신호 데이터 분포를 지니고 있다. 지상 클러터 노이즈 신호를 제거하고, 표적 신호를 추출하는 전반적인 과정과 목표는 딥러닝 분야에서 입력 데이터에서 노이즈를 제거하는 denoising과 유사하다. 본 논문은 레이다가 탑재된 비행체가 지상 클러터를 수신하는 상황에서 표적 신호를 필터링할 수 있는 엔코더-디코더 구조의 딥러닝 기반 필터를 제안한다. 또한 학습된 정보를 네트워크 전반에 효과적으로 전파할 수 있는 딥러닝 레이어 연결 기법을 적용했다.
그림 6은 단일 채널을 가진 기초적인 엔코더-디코더 구조를 보여준다. 그림 6과 같은 구조에서는 엔코더는 CNN (convolutional neural network)을 통해 지상 클러터의 종류별 feature를 학습하는 것을 목표한다. Max pooling과 활성화 함수를 통해 제일 강하고 뚜렷하게 나타나는 feature만 선정하여 다음 단계의 CNN 블록에 전달한다. 이를 통해 엔코더는 노이즈 제거 및 표적 신호 복원에 대해 강하게 활성화되는 중요 정보만 압축된 latent feature vector를 만들어낸다. 디코더는 latent feature vector를 기반으로 표적 신호 정보를 복원하는 것을 목표한다. Latent feature vector 로 압축된 정보를 원래 크기로 복원하기 위해 max pooling 에 대응되는 up convolution 레이어를 사용한다. Up convolution 레이어는 압축된 latent feature vector를 원래 크기로 복원하는 데에 필요한 feature를 학습한다. 그림 4에 나온 바와 같이 이미지의 가로, 세로 픽셀 개수가 표적과의 거리 및 빔 방사 각도 정보를 내포하고 있기에 표적에 대한 정확한 거리 및 각도 정보까지 보존하기 위해 입력 이미지와 동일한 출력 이미지 크기를 만들어낸다. 디코딩 채널에서는 CNN을 통해 노이즈에서 표적 신호 정보를 복원하기 위한 feature를 학습한다.
그림 6과 같은 단일 채널 엔코더-디코더를 학습할 때 유의해야 하는 점은 딥러닝 네트워크의 레이어가 증가하면서 수직적으로 깊어지면 과도한 압축에 의한 정보 손실이 발생할 수 있다는 점이다. 엔코더가 max pooling을 통해 입력 데이터를 latent feature vector로 압축하는 과정에서 클러터가 표적 신호보다 매우 강하게 수신되는 영역에서 입력 데이터 내의 클러터 노이즈뿐만 아니라 복원하고자 하는 표적 정보까지 소실될 수 있다. 이로 인해 높은 SCR을 도달하지 못할 수도 있다. 또한 딥러닝 네트워크가 깊어지면서 gradient vanishing에 의한 학습 실패가 발생할 수 있다는 것이다.
본 논문은 그림 7과 같이 엔코더-디코더 구조를 기반으로 residual connection과 skip connection이 결합된 이중 엔코딩 채널 denoising 네트워크를 제안한다. 지형 특성에 따라 지상 클러터의 신호 데이터 분포가 다른 점을 고려하여 이중 엔코딩 채널을 적용하였다. 학습 초기에 엔코딩 채널 1번과 2번은 각각 독립적으로 랜덤 weight로 설정된다. 학습을 진행하면서 cluttered radar signal에 대해 엔코딩 채널 1번과 2번은 각각 다른 feature를 학습한다[14],[15]. 이를 통해 단일 엔코딩 채널을 사용했을 때보다 다양한 feature를 추출하면서 지상 클러터의 신호 데이터 분포의 다양성을 보다 효과적으로 대응할 수 있다.
이중 엔코딩 채널을 적용하면서 수평적으로 네트워크의 구조가 커지게 되며, 학습해야 할 weight가 증가하게 된다. 이와 같은 상황에서 각각 개별의 엔코딩 채널이 학습 내용을 기반으로 출력된 정보가 latent feature vector로 압축되면서 소실되는 것을 최소화하기 위해 구조적인 feature 재사용력을 부여해야 한다. 이중으로 분리된 엔코딩 채널에 element-wise addition 기반 residual connection을 사용하여 feature 정보를 융합했다[16],[17]. 그리고 융합된 정보를 동일 레벨의 디코딩 layer에 channel-wise concatenation 기반 skip connection으로 연결하여 네트워크 전반에 gradient update flow를 확보함으로써 구조적인 feature 재사용성을 적용하였다[18]. 이를 통해 엔코딩 채널에서 max pooling의 압축에 의해 소실되기 이전의 표적 정보 데이터와 up convolution에 의해서 복원되고 있는 데이터가 같이 이용되면서 표적 정보의 feature 정보 소실을 최소화하고 클러터 제거 및 표적 신호 복원을 개선할 수 있다. 그리고 네트워크 전반에 gradient update flow를 확보함으로서 gradient vanishing을 방지할 수 있다[18]. 이중 엔코딩 채널과 디코딩 채널이 연결되면서 클러터 제거를 위해 학습된 클러터 feature가 네트워크 전반에 걸쳐서 효과적으로 사용되면서 학습 속도를 높일 수 있다[19].
식 (1)은 그림 6 및 그림 7에 제시된 딥러닝 네트워크를 학습시키기 위해 사용한 pixel-by-pixel L2 loss로 구성된 loss function이다. Loss function을 통해 clean radar signal과 유사한 출력 데이터를 만들어내도록 지도함으로서 딥러닝 네트워크가 클러터 제거를 학습할 수 있게 된다.
Ⅳ. 실 험
그림 3의 레이다 신호 데이터셋 생성 파이프라인을 이용하여 다양한 클러터 환경과 레이다 운용 조건을 반영한 8,000개의 clean radar signal과 cluttered radar signal 데이터를 제작했다. 데이터셋 중 57 %는 training, 24 %는 validation, 19 %는 test로 나눠서 denoising 딥러닝 네트워크 학습을 수행했다. 학습의 안정성을 확보하기 위해 입출력 데이터에 최소-최대 정규화를 적용하여 데이터의 범위를 0과 1로 통일했다.
그림 6 및 그림 7에 제시된 denoising 딥러닝 네트워크는 PyTorch 1.8.0에서 구현되었다[20]. 학습은 Nvidia GPU를 사용하여 총 100회 수행되었다. Learning rate 1e-5의 Adam Optimizer를 사용하여 식 (1)에 제시된 loss function을 최소화하도록 네트워크를 학습시켰다[21].
참고문헌 [11]은 식 (2)와 같이 레이다 신호 이미지에 적용할 수 있는 SCR 수식을 제안했다. Denoising 딥러닝 네트워크의 클러터 제거 성능을 정량적으로 평가하기 위해 식 (2)를 사용하여 SCR을 계산했다.
Loss function과 SCR 변화 추이를 이용하여 그림 6 및 7에 제시된 denoising 딥러닝 네트워크의 클러터 제거 학습 성능을 비교했다. 그림 8은 epoch 10번 주기로 측정한 평균 loss function 비교 그래프이다. 효과적인 비교를 위해 Y축에 대해 log scale을 적용했다. 그림 9는 epoch 10번 주기로 validation set을 이용하여 측정한 평균 SCR 비교 그래프이다.
그림 8에서 그림 7에 제시된 본 논문의 이중 엔코딩 채널 denoising 네트워크가 그림 6의 기초적인 구조보다 낮은 loss에 더 빠르게 도달하는 것을 볼 수 있다. 그리고 그림 9에서 이중 엔코딩 채널 denoising 네트워크가 그림 6의 기초적인 구조보다 SCR 31 dB 수준에 빠르게 수렴하는 것을 볼 수 있다. 이를 통해 본 논문의 딥러닝 네트워크 구조에 사용된 이중 엔코딩 채널, residual connection, skip connection이 높은 학습 능력 및 클러터 제거 성능 수렴에 기여하는 것을 볼 수 있다.
Test set에 대하여 이중 엔코딩 채널 denoising 네트워크를 MATLAB에서 제공하는 3 delay line canceller MTI와 비교 분석하여 표 2와 같이 정리했다[4].
본 논문에서 제안한 딥러닝 기반 기법은 고전적인 신호처리 기반의 클러터 제거 알고리즘인 MTI 보다 전체 평균 SCR 16.29 dB가 개선된 것을 볼 수 있다. 클러터 종류별로 SCR을 비교한 결과, 산, 숲 등 multi-path가 발생할 수 있는 복잡한 구조의 클러터 환경에서 딥러닝 기반 기법이 MTI보다 최소 SCR 8.71 dB, 최대 SCR 25.25 dB 만큼 개선된 클러터 제거 성능을 보여준다. 그리고 본 논문이 목표한 지상 클러터에 대해서 딥러닝 기반 기법이 일관적인 SCR을 확보했다. 이를 통해 학습 데이터가 확보된 상황에서 딥러닝 기반 denoising 네트워크가 고전적인 신호처리 기반 클러터 제거 알고리즘보다 높은 일반화 특성과 클러터 제거 성능을 갖출 수 있다는 것을 확인할 수 있다.
Ⅴ. 결 론
본 논문은 엔코더-디코더 구조를 기반으로 residual connection과 skip connection이 결합된 이중 엔코딩 채널 denoising 네트워크를 제안했다. 본 논문은 딥러닝 학습을 위해 다양한 지상 클러터 환경과 레이다 운용 조건을 반영한 레이다 신호 데이터셋 생성법을 제안했다.
학습 및 실험 결과, 본 논문의 딥러닝 기반 클러터 제거 기법은 고전적인 신호처리 기반 기법보다 높은 클러터 제거 성능과 일반화 특성을 갖추었다는 것을 보여준다. 본 논문의 이중 엔코딩 채널 denoising 딥러닝 네트워크는 레이다 시스템에서 클러터 제거를 위한 필터로서 사용될 수 있다는 것을 제시한다.
현대 레이다 시스템은 외부의 적대적인 재밍 환경에서 클러터 제거를 수행할 수 있어야 한다. 본 논문에서 제시한 레이다 신호 데이터셋 생성법은 RF 재밍 시나리오를 포함하여 보다 다양한 시나리오의 레이다 신호 데이터셋을 제공하도록 개선될 수 있다. 이를 통해 추후 적대적 재밍 환경에서도 클러터 제거를 수행할 수 있는 딥러닝 기반 필터 제작 기법을 제시할 수 있다.