天天看點

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

失蹤人口回歸+爺青回,本篇介紹下Suomi NPP VIIRS夜間燈光遙感資料下載下傳。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

1 夜間燈光遙感資料簡介

夜間燈光遙感資料就是指利用遙感技術捕捉夜晚地球上的燈光分布狀況,可以有效反映人類活動的空間分布,是以常用于各類社會經濟資料方面的遙感反演。這方面應用的知名案例包括武漢大學李德仁院士與李熙老師利用夜間燈光監測叙利亞戰争狀況,斯坦福大學利用夜間燈光與機器學習算法識别全球貧困人群等。

目前常用的夜間燈光遙感資料主要是兩個衛星,一個是DMSP(Defense Meteorological Sate-llite Program)是美國國防部的極軌衛星計劃,傳感器空間分辨率為3000 m,生産的夜光遙感産品空間分辨率通常為1000 m,同時DMPS夜光遙感資料是目前最長時間序列的夜光遙感資料(自1992-2013),可以提供長時間序列連續的夜光遙感監測。另一個則是2011年發射的新一代對地觀測衛星Suomi NPP,該衛星搭載的可見光/紅外輻射成像儀(Visible Infrared Imaging Radiometer Suit,VIIRS)能夠擷取新的夜間燈光遙感影像(Day/Night Band,DNB波段),空間分辨率也提高到750 m(以下簡稱NPP-DNB),生産的夜間燈光遙感産品空間分辨率通常為500 m。這兩個衛星以外,還有一些其他相關的夜間燈光衛星,但是資料較少,且不易擷取。值得注意的是,2018年中國也發射了自己的首顆專業夜間燈光衛星(由武漢大學設計與發射)——珞珈一号。

另外這裡推薦幾篇相關的夜間燈光遙感文章。第一篇是我參與的一篇RSE論文翻譯。第二篇是RSE最新的夜間燈光遙感綜述文章。

2 夜間燈光遙感資料下載下傳

1 年和月尺度産品下載下傳

DMSP夜間燈光遙感資料提供年尺度産品下載下傳。由于該衛星存在過飽和效應,NOAA為此釋出了多套去飽和的校正影像,關于DMSP夜間燈光遙感資料的詳細介紹可以參考ENVI/IDL的部落格:

DMSP衛星介紹和資料下載下傳

DMSP夜間燈光遙感資料年尺度産品下載下傳位址:

https://ngdc.noaa.gov/eog/dmsp.html

NPP夜間燈光遙感資料提供了年,月和日尺度資料下載下傳。其中年和月的資料為合成産品,經過一定校正處理和合成。目前NPP夜間燈光遙感資料的年産品和月産品合成工作由科羅拉多礦業大學承擔。NPP夜間燈光遙感資料的年産品和月産品下載下傳連結,其中月産品資料存在3個月滞後期。

科羅拉多礦業大學提供的NPP夜間燈光遙感資料年尺度和與尺度下載下傳位址:

https://eogdata.mines.edu/download_dnb_composites.html

此外,這裡要介紹另一套夜間燈光遙感資料産品。約莫兩年前我曾經收到一位當老師的同學提出的一個關于夜間燈光遙感問題:為什麼印度的燈光比中國亮?之前我不是特别明白怎麼回答,一直到看到我即将介紹的這套産品,終于有了答案,這套産品名為“火石(Flint)”,是由中國科學院中國遙感衛星地面站陳甫團隊研制的地球夜光産品資料集。

這裡引用該團隊在科普中國發表的文章中的文字“之前說NASA公布的夜光圖上印度比中國亮,主要原因那是圖沒做好,另外一個原因是印度農村密度大,是以燈光分布廣,其實不怎麼亮”來回答前面那個問題。

“火石(Flint)”産品首頁:

http://satsee.radi.ac.cn/cfimage/nightlight/

科普中國文章“ 5年夜光遙感監測合成,中科院版全球高清夜光資料集來了!”:

http://www.kepuchina.cn/wiki/yzts/201805/t20180518_629897.shtml

2 日尺度産品下載下傳

本篇部落客要介紹NPP夜間燈光遙感資料日尺度産品的下載下傳。目前NOAA官網提供從當天起到60天前的日尺度夜間燈光産品,全球被分割為6塊。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

NOAA NPP夜間燈光遙感資料日尺度産品下載下傳位址:

https://ngdc.noaa.gov/eog/viirs/download_ut_mos.html

初次外,NOAA也提供了過往的曆史日尺度資料下載下傳,被內建在NOAA的綜合大型數組資料管理系統(The Comprehensive Large Array-data Stewardship System,CLASS)中。

NOAA CLASS系統:

https://www.bou.class.noaa.gov/saa/products/welcome

如果想下載下傳需要先注冊該網站的賬戶,接着選擇傳感器,NPP夜間燈光遙感資料請選擇VIIRS_SDR的資料。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

點選GO以後,跳轉到如下的頁面。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

接着可以設定感興趣研究區以及研究時間段。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

選擇所需的波段。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

NPP夜間燈光遙感資料常用的波段檔案為以下兩個,一個是DNB資料。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

另一個是對應的定位資料。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

選擇完畢以後,點選quick search % order。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

接下來就會等收到NOAA CLASS的下載下傳郵件(如下圖)。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

這個資料同樣是采用FTP進行下載下傳,對于FTP不了解的同學可以翻一下前面這篇部落格:

葵花8号衛星資料簡介與下載下傳(一)——資料介紹與FTP下載下傳

這裡不贅述FileZilla軟體的安裝,隻介紹如何配置FTP站點進行下載下傳。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

點選站點管理器。主機位址就是郵件最上面第一行FTP位址,使用者為anonymous,密碼為user@internet。設定完畢點選連接配接。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

接下來會看到很多檔案夾。根據你的訂單号找到對應的檔案夾下。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

然後把選擇的檔案拖拽到左邊的本地檔案夾即可下載下傳。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

NPP夜間燈光遙感資料使用者文檔:

https://ncc.nesdis.noaa.gov/documents/documentation/viirs-users-guide-tech-report-142a-v1.3.pdf

NPP夜間燈光遙感資料初學者slides。

http://rammb.cira.colostate.edu/projects/npp/Beginner_Guide_to_VIIRS_Imagery_Data.pd

f"

資料命名規則。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

除了以上資料,日尺度的産品資料還有NASA制作的一套校正産品——NASA Black Marble Product。

下載下傳連結:

https://viirsland.gsfc.nasa.gov/Products/NASA/BlackMarble.html

3 NPP夜間燈光遙感資料讀取與可視化

1 Google Earth Engine

Google Earth Engine是Google推出的行星尺度的遙感雲計算平台,提供了大量遙感資料的內建與運算工具。同時也包括DMSP和NPP夜間燈光遙感資料(月尺度和年尺度)。這裡給出樣例的可視化代碼。

var dataset = ee.ImageCollection('NOAA/VIIRS/DNB/MONTHLY_V1/VCMSLCFG')
                  .filter(ee.Filter.date('2020-01-01', '2020-02-28'));
var nighttime = dataset.select('avg_rad');
var nighttimeVis = {min: 0.0, max: 60.0};
Map.setCenter(-77.1056, 38.8904, 8);
Map.addLayer(nighttime, nighttimeVis, 'Nighttime');           

運作結果。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

月尺度和年尺度産品提供的是tiff産品。可以在ArcGIS和ENVI裡進行進一步處理。

2 日尺度hdf5資料讀取與可視化(ENVI)

關于用ENVI讀取日尺度hdf5資料的方式,詳情參見以下ENVI/IDL部落格與L3HARRIS。

夜光遙感資料處理 NPP VIIRS Datasets

3 日尺度hdf5資料讀取與可視化(R語言)

這裡也介紹下如何在R語言裡讀取hdf5以及轉換格式。基礎的兩個包分别為raster和rhdf5。其中rhdf5必須通過BioManager包安裝。這裡是安裝指令。

install.packages('raster')
install.packages('BioManager')
BioManager::install('rhdfr')           

hdf5是一個在科學計算領域有廣泛應用的資料格式,可以了解為多個檔案夾壓縮而成的格式。對于這類檔案讀取,首先需要先了解檔案的結構才能讀取。這裡采用的指令就是h5ls。

h5ls(filename)           

filename為hdf5檔案名。如下圖所示給出了NPP夜間燈光遙感資料hdf5檔案的具體結構。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

我們所需要用到的屬性包括All_Data/VIIRS-DNB-GEO_All/下的Longitude和Latitude,以及All_Data/VIIRS-DNB-SDR_All/下的radiance,即夜間燈光DNB波段值。利用h5read函數讀取這幾個資料,指令行如下。

dnblat <- h5read(filename, 'All_Data/VIIRS-DNB-GEO_All/Latitude')
dnblon <- h5read(filename, 'All_Data/VIIRS-DNB-GEO_All/Longitude')
dnbrad <- h5read(filename, 'All_Data/VIIRS-DNB-SDR_All/Radiance')           

這樣即得到了夜間燈光遙感資料矩陣形式存儲的經度,緯度以及波段值。接下來将三個矩陣組合成一個栅格即可。根據如下代碼即可得到一個栅格資料。

radpts <- cbind(long = as.vector(dnblon), lat = as.vector(dnblat), rad = as.vector(dnbrad))
radpts <- data.frame(radpts)
colnames(radpts) <- c("x", "y", "radiance")
e <- extent(randpts[, (1:2)])
r <- raster(e, ncol = ncol(dnbrad), nrow = nrow(dnbrad), crs = "+proj=longlat + datum=WGS84")
radr <- rasterize(radpts[, (1:2), r, radpts[,3], fun = mean)           

簡單可視化結果如圖。

Suomi NPP VIIRS夜間燈光遙感資料簡介與下載下傳(一)——資料介紹,FTP下載下傳與hdf5讀取1 夜間燈光遙感資料簡介2 夜間燈光遙感資料下載下傳3 NPP夜間燈光遙感資料讀取與可視化

另外可以看到這個DNB波段值數值較小,是經過縮放的,需要乘以10的9次方使得DNB波段值呈現正常範圍。當然日尺度的資料由于雲,月相等因素的影響,品質還有待提升。

這裡也提供一些轉換NASA的hdf5夜間燈光遙感相關資料的代碼。

VIIRS_HDF5toGeoTIFF.R Working with Daily NASA VIIRS Surface Reflectance Data

參考連結:

繼續閱讀