Few-shot Segmentation을 활용한 합성 위성영상 기반 군사무기 탐지 알고리즘 설계
Design of a Few-Shot Segmentation-Based Algorithm for Military Weapon Detection in Synthetic Satellite Imagery
- 주제어 (키워드) Few-shot Segmentation , Episodic Learning , Synthetic dataset
- 발행기관 서강대학교 AI.SW대학원
- 지도교수 강석주
- 발행년도 2025
- 학위수여년월 2025. 2
- 학위명 석사
- 학과 및 전공 AI.SW대학원 데이터사이언스 · 인공지능
- 실제 URI http://www.dcollection.net/handler/sogang/000000079673
- UCI I804:11029-000000079673
- 본문언어 한국어
- 저작권 서강대학교 논문은 저작권 보호를 받습니다.
초록 (요약문)
본 연구는 인공위성을 통한 군사무기 탐지가 국가 안보에 있어 중요한 기술임을 강조하며, 이를 효율적으로 탐지하고 분석하는 기술 개발을 제시한다. 그러나 인공위성으로 획득할 수 있는 군사무기 데이터는 시공간적 제약으로 매우 제한적이며, 기존의 대규모 데이터셋을 요구하는 모델 학습 방식은 이러한 제약을 극복하는 데 한계가 있다. 따라서 본 연구는 ARMA3 시뮬레이터를 활용해 무기체계 합성 데이터셋을 구축하고, 최근 주목받고 있는 Visual Prompting, Open-set object detection, Few- Shot Segmentation 등의 기법을 적용하여 소규모 데이터셋으로도 타겟 데이터셋에서 원하는 객체들을 효과적으로 탐지하고 분류할 수 있는 방법을 제시하는 것을 목표로 한다. ARMA3 에디터를 사용하여 시뮬레이터의 가상 맵에 다양한 군사 객체들을 배치하고, 이후 시뮬레이터 내의 카메라 파라미터들을 조정하여 실제 위성영상과 유사한 촬영 조건을 재현하려 시도하였다. 맵의 양 끝에 군사 객체를 배치한 상태에서 시뮬레이터의 물리엔진을 이용하여 객체 간 거리를 측정하고 모니터의 크기를 반영하여 공간해상도(m/pixel)을 구하는 방식을 사용하였다. 데이터셋은 기본적으로 Semantic Segmentation 방식으로 4 가지 객체에 대하여 레이블링 되었다. Few-shot Learning 의 방식을 적용하기 위해서 Episodic Learning 에 맞게 학습의 시나리오를 구성하였다. Task 단위로 클래스를 묶은 다음 각 Task 를 Support set 과 Query set 으로 나누어서 구성하였다. 이 때에 Support set 이 구성되는 클래스의 수에 따라서 N-way, 각 클래스의 데이터의 샘플 수에 따라서 K- shots 을 결정한다. 본 논문에서는 4-way, 5-shots 혹은 4-way, 1-shots 로 에피소드를 구성해서 실험하였다. 매우 소량의 데이터셋을 통해서 원하는 결과를 도출할 수 있도록 딥러닝 기반의 Zero- shot Learning, One-shot Learning, Few-shot Learning 과 같은 방법들이 포함된다. 해당 방법들에 해당하는 모델들을 활용하여 실험을 진행하였다. Zero-shot Learning 에 기반한 방법으로 Vision Transformer 기반의 아키텍처에 이미지 패치를 나누어 사전학습된 SegGPT 모델을 활용하여 image prompt 와 함께 binary mask 를 모델의 입력으로 주고 query image 에서 원하는 객체를 찾을 수 있을지 실험해 보았다. Few- shot detection 을 응용하여 Open-set detection 이 가능한 모델에 image prompt 와 함께 bounding box 를 모델의 입력으로 주고 역시 query image 에서 타겟 객체를 찾을 수 있는지 실험하였다. detection model 로는 T-Rex2 model 을 사용하였고 Recall 값은 매우 높으나 False-Positive 케이스들에 의해서 Precision 값들이 극단적으로 낮은 현상을 확인하였다. 따라서 retrieval 방식을 통해서 해당 문제를 해결하려 접근하였다. 최종적으로는 Few-shot segmentation 을 기반으로 하는 모델링을 진행하여 본 논문에서 제시한 문제상황을 해결하려 실험하였다. Few-shot Segmentation 을 진행하기 위한 모델링 설계를 하였으며, Query image 를 받아서 Binary mask 를 예측하는 Segmentation branch 와 Support image 를 입력으로 받아서 해당 feature map 의 정보를 Segmentation branch 에 전달하는 Conditioning branch 를 구성하였다. Support mask 는 다운샘플링하여, 설계한 mask weightning module 에서 Support feature 와 함께 연산을 진행하였다. Decoder 레이어에서는 앞서 처리된 feature map 들을 concatenate 한 뒤에 MLP 기반의 lightweight-decoder 에 입력으로 주고 Decoder 는 출력으로 Query image 의 binary mask 를 예측하도록 하였다. 모델링 단계에서 pixel-level relation 과 feature-level relation 을 계산하여 module 단에서의 옵션을 주었으며, 사전학습된 encoder 를 교체하면서 정량적인 실험을 통해서 few-shot segmentation 에서의 IOU metric 을 측정하였다.
more초록 (요약문)
Using the ARMA3 editor, various military objects were placed on the virtual map of the simulator. Subsequently, adjustments were made to the camera parameters within the simulator to replicate shooting conditions similar to real satellite imagery. Distances between objects were measured using the simulator's physics engine, while spatial resolution (m/pixel) was calculated by incorporating the monitor's size, with military objects positioned at opposite ends of the map. The dataset was primarily labeled for four types of objects using the semantic segmentation method. To apply the few-shot learning approach, the learning scenarios were structured according to episodic learning. Classes were grouped into tasks, and each task was divided into a support set and a query set. Based on the number of classes in the support set, the setup was defined as N-way, and the number of samples per class determined K-shots. In this study, experiments were conducted using episodes configured as 4-way, 5-shots or 4-way, 1- shots. To derive desired results with a minimal dataset, methods based on deep learning, such as zero-shot learning, one-shot learning, and few-shot learning, were incorporated. Experiments were conducted using models relevant to these methods. For the zero-shot learning approach, the SegGPT model, which utilizes a Vision Transformer-based architecture, was employed. The image was divided into patches, and with the model pre-trained, binary masks were given as inputs alongside an image prompt to investigate whether the target objects in a query image could be identified. Additionally, a few-shot detection method was applied to an open-set detection-capable model. Bounding boxes and image prompts were inputted into the model to see if the target objects in the query image could be detected. The T-Rex2 model was used as the detection model, and while high recall values were achieved, the precision was found to be extremely low due to numerous false-positive cases. To address this issue, a retrieval-based approach was adopted. Finally, experiments were conducted using a few-shot segmentation-based modeling approach to resolve the problem scenarios presented in this study. A model design was created for few-shot segmentation, comprising a segmentation branch that predicts a binary mask from a query image and a conditioning branch that inputs support images and transfers feature map information to the segmentation branch. The support mask was downsampled, and computations were performed with the support features in the designed mask- weighting module. In the decoder layer, the processed feature maps were concatenated and input into a lightweight MLP-based decoder, which then predicted the binary mask of the query image as output. During the modeling phase, pixel-level relations and feature-level relations were computed to provide options at the module level. The pre-trained encoder was replaced, and quantitative experiments were conducted to measure the IOU metric for few-shot segmentation.
more목차
제 1 장 서론 7
1.1 연구 배경 7
1.2 논문의 구성 7
제 2 장 합성 데이터셋 구축 8
2.1 시뮬레이터를 활용한 합성데이터셋 8
2.2 데이터셋 구성 10
제 3 장 관련 연구 및 시도 14
3.1 문제 정의 14
3.2 Image Prompting(Zero-Shot Learning) 14
3.3 Open-set detection & Image Retrieval 16
3.4 Few-shot Segmentation 18
제 4 장 학습 시나리오 설정 및 모델링 19
4.1 학습 시나리오 설정 19
4.1.1 Few Shot Segmentation & Episodic Learning 19
4.2 신경망 모델 구조 21
4.2.1 모듈 설계 21
제 5 장 실험 및 결과 24
5.1 실험 결과 분석 24
제 6 장 결론 및 제언 26
참고문헌 29