논문리뷰

S2Mamba - 코드 구현

TheSole 2025. 5. 22. 15:34

링크:

https://github.com/TheSole0/S2Mamba-HSI-lineScanCam?tab=readme-ov-file

 

GitHub - TheSole0/S2Mamba-HSI-lineScanCam: It just started for the recoded

It just started for the recoded. Contribute to TheSole0/S2Mamba-HSI-lineScanCam development by creating an account on GitHub.

github.com

 

1. 개요 및 문제 정의

배경

S2Mamba는 Spectral-Spatial Multi-Head Attention Mamba Network로, 최근 제안된 Mamba 구조의 장점을 활용하여 초분광 영상(Hyperspectral Imaging, HSI)의 스펙트럼-공간 정보를 동시에 처리하기 위한 경량 구조. 본 프로젝트에서는 이를 이상 탐지(Anomaly Detection) 및 결함 분류(Classification)에 적용하여, 복잡한 산업 표면에서 결함을 신속하고 정확하게 판별하는 목적을 가짐.

문제 정의

  • HSI 데이터는 채널 수(예: 224 bands)가 많아 고차원 처리에 어려움이 있으며, 결함 클래스의 수가 적고 데이터 불균형이 심함
  • 기존 CNN은 국소 패턴 위주로 처리하며, 전역 스펙트럼 연산을 반영하기 어려움
  • 기존 Transformer 기반 구조는 메모리 과다 소모 및 추론 속도 저하 문제 존재

2. 접근 방법: S2Mamba 모델 설계 및 적용

구조 개요

  • 입력: (B, C=224, P, P) 형태의 HSI patch
  • 모델: Mamba 기반 attention block 1개(depths=[1]), embedding dim=64
  • 출력: 클래스 수에 따른 로짓 (CrossEntropy 기반 분류)

HSI 전처리

  • white/dark reference 보정
  • label remap (1: 정상, 2: DW, 3: DA, 4: 기타 → 0~3 재맵핑)
  • patch 기반 패치 추출 (P=7), 클래스별 max 1000개 샘플링

훈련 방식

  • 다중 샘플 학습 지원 (여러 capture 폴더 병합)
  • 클래스 불균형 대응을 위한 inverse weight 기반 CrossEntropyLoss 적용
  • ExponentialLR 스케줄러 적용

3. 구조

4. 성능 평가 및 시각화

  • [예시 결과]
    • OA=0.9995, AA=0.9568, Kappa=0.8015
    • 소수 클래스(DW, DA)에 대한 과적합 방지 및 generalization 확인됨

5. CLS-DL1 / CLS-DL2와의 차이점

 
항목 CLS-DL1 CLS-DL2 S2Mamba (제안 구조)
입력 구조 1D Spectral 1D Spectral + Fusion 2D Patch (Spectral + Spatial)
공간 정보 부분 활용 ✅ Full Patch 활용
모델 깊이 얕음 (3층 내외) 중간 (Residual 포함) 얕음 (depth=1, Mamba 구조)
추론 대상 GT 라벨 영역만 GT 라벨 영역만 전체 영역 (Full Map)
속도/효율성 빠름 중간 빠름 + 전체 대응 가능

6. S2Mamba 장단점 정리

 
항목설명
✅ 장점 경량 구조로 빠른 추론 / 고차원 입력에서의 효율적 attention 처리 / Transformer 대비 메모리 사용량 적음
⚠️ 단점 단일 depth 구조에서는 공간 정보 활용이 제한적 / 대규모 시계열 처리에는 부적합 / 고정 파라미터 구조로 task에 따라 최적화 필요