利用Sen2cor對哨兵2號(Sentinel-2)L1C多光譜數據進行輻射定標和大氣校正

歐空局(ESA)僅發布了哨兵2號(S2)的L1C級多光譜數據(MSI),L1C級數據是經過幾何精校正的正射影像,並沒有進行輻射定標和大氣校正。同時,ESA還對S2 L2A級數據就行了定義,L2A級數據主要包含經過輻射定標和大氣校正的大氣底層反射率數據(Bottom-of-Atmosphere corrected reflectance),但這個L2A數據需要用戶根據需求自行生產,為此,ESA發布了專門生產L2A級數據的插件Sen2cor。目前,SNAP對Sen2cor的支持並不好,很難在SNAP中直接調用Sen2cor,所以,這裡介紹下sen2cor的命令行配置步驟。當然,L2A級數據還包含一些別的產品,如氣溶膠厚度(Aerosol Optical Thickness, AOT)、大氣水蒸氣(Water Vapour Map, WVM)等。想要詳細了解S2各級產品數據、以及Sen2cor插件的,請參見以下鏈接,沒興趣的可以直接跳過。

  • S2用戶手冊:sentinel.esa.int/web/se
  • Sen2cor:step.esa.int/main/third

具體演算法如何實現的不是我們關心的,有興趣的去查找相關用戶手冊和技術報告,這裡僅給實現步驟:

1. 首先,下載SNAP平台和Sen2cor插件:SNAP建議下載最新6.0 版(step.esa.int/main/downl),這裡主要用來查看S2數據;Sen2cor下載2.4獨立安裝版。

2. SNAP直接安裝就可以;Sen2cor解壓之後(文件夾名為:Sen2Cor-2.4.0-win64),放到自己的用戶文件夾下,如,C:UsersAdministratorAppDataLocal,然後雙擊運行其中的L2A_Process.bat文件。

3. 打開Windows自帶的命令提示符(Command Propmt, CMD),Win10 CMD在開始菜單的「Windows系統」下。然後,在CMD中進入到Sen2cor的路徑下,如:cd C:UsersAdministratorAppDataLocalSen2Cor-2.4.0-win64。之後,輸入命令,L2A_Process --help,如果返回以下結果,並且沒有錯誤,說明你的安裝沒有問題。

C:UsersAdministratorAppDataLocalSen2Cor-2.4.0-win64>L2A_Process --help

usage: L2A_Process.py [-h] [--resolution {10,20,60}] [--sc_only] [--cr_only]

[--refresh] [--GIP_L2A GIP_L2A]

[--GIP_L2A_SC GIP_L2A_SC] [--GIP_L2A_AC GIP_L2A_AC]

directory

Sentinel-2 Level 2A Processor (Sen2Cor). Version: 2.4.0, created: 2017.06.05,

supporting Level-1C product version: 14.

positional arguments:

directory Directory where the Level-1C input files are located

optional arguments:

-h, --help show this help message and exit

--resolution {10,20,60}

Target resolution, can be 10, 20 or 60m. If omitted,

all resolutions will be processed

--sc_only Performs only the scene classification at 60 or 20m

resolution

--cr_only Performs only the creation of the L2A product tree, no

processing

--refresh Performs a refresh of the persistent configuration

before start

--GIP_L2A GIP_L2A Select the user GIPP

--GIP_L2A_SC GIP_L2A_SC

Select the scene classification GIPP

--GIP_L2A_AC GIP_L2A_AC

Select the atmospheric correction GIPP

4. 然後,把Sen2cor的存放路徑(C:UsersAdministratorAppDataLocalSen2Cor-2.4.0-win64),添加到系統的環境變數中,具體步驟:我的電腦→右擊、屬性→高級系統設置→選擇環境變數→Path→編輯、新建,即可完成添加;這樣做的目的,是為了無論在什麼目錄下運行,Windows系統都可以找到Sen2cor插件。

5. 下載一景S2 L1C數據(建議使用Internet Download Management 下載,快且不間斷),解壓;然後,在CMD中,切換到你數據所在的文件夾,如:cd G:s2-gucheng(不熟悉CMD的,記得先使用G:切到G盤);此時,你就可以在CMD中,根據Sen2cor語法要求(參見cmd給出的幫助信息),輸入處理命令了,語法結構基本上是:L2A_Process+數據相對路徑+可選參數,如:L2A_Process S2A_MSIL1C_20171005T030551_N0205_R075_T50SLJ_20171005T031513.SAFE --resolution=10 --refresh;當然,你也可以在CMD任意目錄下,輸入數據文件的絕對路徑進行處理,如:L2A_Process G:s2-guchengS2A_MSIL1C_20171005T030551_N0205_R075_T50SLJ_20171005T031513.SAFE --resolution=10 --refresh。

6. 然後,就焦急地等待Sen2cor慢慢生產吧,三種解析度全選,大約半小時左右。生產的L2A級數據,和L1C數據在同一文件夾下,命名規則和數據存放方式也相同,文件名僅把MSIL1C更新為了MSIL2A。

7. 在SNAP打開L2A數據,你會發現,較L1C數據,L2A的多光譜曲線變得正常了。如果,你不習慣SNAP,並且沒有最新的ENVI5.4,你可以通過自行構建多光譜數據,在ENVI5.3中查看,如何實現參見上一篇筆記。有問題歡迎交流:zhuyongchao10@163.com


推薦閱讀:

臨床醫學本科生應該怎麼準備科研?
雄激素受體AR通過RNA編輯酶ADAR1抑制肝癌細胞中circRNA表達
如何在做科研的時候提高質量的想法或者創新點?
編程在土木工程中有什麼應用?
如何看待清華打算推行的tenure track制度?

TAG:遙感數據 | 科研 |