REMOTE SENSING

Landsat 8호 위성영상에서 밝기온도 계산하기 (2)

유병혁 2013. 10. 9. 13:43

아래 글에서 Landsat 8호 위성영상에서 밝기온도를 계산하는 방법을 살펴 봤습니다.

Landsat 8호 위성영상에서 밝기온도 계산하기
http://blog.daum.net/geoscience/560

 

이번 글에서는 실제로 다운로드 받은 Landsat 8호 위성영상에서 밝기온도 계산을 처리해 보도록 하겠습니다.

래스터 연산이 가능한 모든 툴에서 계산이 가능하겠죠?! 여기서는 오랜만에 ENVI 프로그램의 Band Math를 이용해 보겠습니다.

 

Landsat 8호 위성영상에서 열적외 밴드는 10번과 11번입니다.

이 밴드의 DN값을 TOA 복사휘도(spectral radiance)로 변환한 후에, 절대온도, 다시 섭씨온도로 변환하게 됩니다.

 

이것을 수도코드(pseudocode)로 간략히 정리해 보면 아래와 같습니다.

 

먼저, DN 값을 TOA 복사휘도(Rad)로 변환하려면,

Rad = 0.0003342 * DN + 0.1

 

복사휘도를 절대온도(K)로 변환할 때는 10번과 11번 밴드 고유의 열 변환 상수 K1, K2가 적용됩니다. 

Case: Band 10 | K = 1321.08 / alog(774.89 / Rad + 1)

Case: Band 11 | K = 1201.14 / alog(480.89 / Rad + 1)

 

여기서, alog는 ENVI에서 정의되는 자연로그(natural logarithm)를 뜻합니다.

 

끝으로 계산된 절대온도는 섭씨온도(C)로 아래와 같은 식에 따라 변환됩니다.

C = K - 273.15

 

위의 과정을 10번과 11번 밴드 각각의 코딩 1줄로 정리하면 아래와 같습니다.

Case: Band 10 | C = 1321.08 / alog(774.89 / (0.0003342 * B10 + 0.1) + 1) - 273.15

Case: Band 11 | C = 1201.14 / alog(480.89 / (0.0003342 * B11 + 0.1) + 1) - 273.15

 

밝기온도를 10번과 11번 밴드 섭씨온도의 평균치로 정의하면, 다시 아래와 같이 정리될 수 있습니다.

즉, 두 개 절대온도의 평균치를 구한 후에 섭씨온도로 변환하면 되겠죠?!

C = (1321.08 / alog(774.89 / (0.0003342 * b10 + 0.1) + 1) + 1201.14 / alog(480.89 / (0.0003342 * b11 + 0.1) + 1)) / 2 - 273.15

 

이제 이 식을 가지고 ENVI의 Band Math에서 실제 영상에 적용해 보도록 하겠습니다.

먼저 ENVI를 실행합니다. 참고로, 제가 사용하고 있는 버전은 ENVI 5.0입니다.

 

ENVI 5.0 > Tools > ENVI Classic를 실행해 보겠습니다.

 

File > Open Image File을 클릭하고 Landsat 8호 위성영상의 10번, 11번 밴드를 열어보겠습니다.

 

 

실험 영상은 Path, Row가 각각 116, 53이고 2013년 9월 16일에 취득되었습니다.

 

이제 Basic Tools > Band Math를 실행해 보겠습니다.

앞서 작성한 코딩을 복사하여 붙여넣고 OK 버튼을 클릭합니다.

 

 

이제 B10과 B11에 각각의 밴드를 지정하고 출력 파일 위치를 설정한 후에 OK 버튼을 클릭합니다.

 

아래 그림과 같이 밝기온도가 계산되었습니다.

 

아래와 같이 섭씨온도로 변환된 화소값이 저장되어 있습니다. 

 

육안판독을 돕기 위해 Tools > Color Mapping > ENVI Color Tables를 클릭하고,

 

적합한 Color Table을 지정합니다. 여기서는 RAINBOW를 지정해 보겠습니다.

 

Color Table을 적용한 결과는 아래와 같습니다.