2023-02-28,   김혜원

이번 포스팅은 초분광 이미지에 대해 공유합니다.


 

초분광 이미지란?

 

HSI_image

 

초분광 이미지(Hyper-Spectral Image, HSI)[1]는 좁은 대역의 스펙트럼 밴드를 수 백 ~ 수 천 개를 겹쳐 초분광 큐브 형태로 구성한 것입니다. 이 스펙트럼에는 많은 데이터 정보가 포함되어 있으며, 이를 분석하여 대상체의 상태, 구성, 특징, 변이 등을 도출할 수 있습니다. 초분광 이미지에 사용되는 스펙트럼은 UV(UltraViolet), VIS(Visible)/NIR(Near-Infrared), SWIR(Short-Wave Infrared), LWIR(Long-Wave Infrared) 등이 있습니다.

 

scanning

 

데이터 습득 형태는 4가지로 나눌 수 있습니다[2]. 일정한 스펙트럼 영역을 동시에 분광하여 공간좌표에 따라 움직이면서 측정하는 점스캐닝(Point-scanning 또는 Wisky-broom)과, 하나의 라인센서를 통해 Y축을 움직여 가며 측정하는 라인 스캐닝(Line-scanning 또는 Push-broom), 파장을 변화시키면서 측정 영역의 전체 이미지를 스캐닝하는 영역스캐닝(Areascanning 또는 staring), 센서를 다수의 스펙트럼 영역으로 구분하여 동시에 측정하는 스냅샷(Snapshot)이 있습니다.

 

초분광 이미지 파일 출력

 

초분광 이미지 파일은 이미지 원본 파일과 헤더 파일이 세트로 구성되어 있습니다. Python에서 파일을 열 때 헤더 파일에 작성된 정보를 이용해서 이미지 파일을 다룹니다.

<초분광 이미지 확인하기>

# 필요한 라이브러리 불러오기
import numpy as np
import matplotlib.pyplot as plt
from spectral import *

# 헤더파일 경로 입력
hdr_path=('파일 경로')

# 이미지 정보 출력
img_info = envi.open(hdr_path)

# 이미지 확인
plt.imshow(img_info.read_band(index))
plt.show()
plt.close()

 

초분광 이미지 파일 형식

 

file

 

이미지 파일은 정보를 저장하는 방식에 따라 3가지로 나눌 수 있습니다[3].

<이미지 파일 형식>

1. BSQ(Band-Sequential)
  - 밴드를 순서대로 저장
  - 배열 타입 : (R,C,B)

2. BIL(Band-Interleaved-by-Line)
  - 밴드의 행 순서대로 저장
  - 배열 타입 : (R,B,C)

3. BIP(Band-Interleaved-by-Pixel)
  - 밴드의 픽셀 순서대로 저장
  - 배열 타입 : (B,R,C)

* R(행), C(열), B(채널)

 

초분광 이미지 분석 방법

 

초분광 큐브에서 공간상의 화소(Pixel)는 분광 혼합(Spectral mixture)이 존재합니다. 분광 혼합은 하나의 픽셀이 대상체의 특성을 담기에는 공간해상도가 부족하거나 분광 센서의 분광 해상도가 낮아 서로 다른 물질에서 나오는 스펙트럼이 개별 스펙트럼의 합으로 나타날 때 발생하며, 하나 이상의 물질에서 나오는 반사에너지가 정량적으로 혼합되어 나타납니다. 이를 분석하기 위한 방법으로 분광 혼합분석(Spectral Unmixing)이 있습니다[4]. pixel을 구성하는 단일의 순수한 물질을 엔드멤버(Endmember)라고 하며, 여러 엔드 멤버의 구성 비율의 합으로 pixel을 표현할 수 있습니다.

<분광 혼합 분석>

1) Dimensionality reduction(차원 축소)
    : 분광영상에서 분광정보를 줄여 원하는 특정정보만을 추출하는 것
     -> 효과적인 분석과 노이즈 제거를 위함 
  - PCA(Principal Component Analysis, 주성분 분석)
  - LDA(Linear Discriminant Analysis, 선형 판별 분석)
  - MNF(Minimum Noise fraction transform, 최소 잡음 비율 변환)

2) Endmember detection(엔드멤버 추출)
  - 동시 알고리즘(Simultaneous algorithm)
    : 엔드멤버의 수를 알고 있다고 가정
    -> 대표적으로 NFINDER이 있음
  - 순차 알고리즘(Sequential algorithm)
    : 순차적인 엔드멤버의 세트로서 구성되어 있다고 가정
    
3) Abundance estimation
  - SAM(Spectral Angle Mapping, 분광각 매핑)

 


참고문헌

[1] 초분광 이미지

[2] 스캔 방식

[3] 이미지 저장 방식

[4] 초분광 이미지 설명

업데이트: