克里斯蒂安·阿爾林·索倫森
這是一個用於處理 Sentinel-1 衛星圖像的 Python 模組,純粹是用 Python 編寫的。它允許您找到所需的圖像、下載它們並使用它們(校準、散斑擬合器等)。然後從 NASA ASF 下載資料。
為什麼?因為我不與 ESA SNAP 合作。另外,這樣我的整個工作流程就可以更輕鬆地用 Python 來完成了。
我對品質、安全性或任何其他方面不做任何保證。按照您的意願使用它。
介紹
要求
安裝並運行
在 Python 中使用 Sentinel-1 映像
SAR,簡要
致謝
麻木
地理貓熊
mgrs(應該在以後的版本中刪除..sry..)
scikit-learn(應該在以後的版本中刪除..sry..)
scipy(應該在以後的版本中刪除..sry..)
卡托皮
枕頭
貓熊
哨兵衛星
繪圖庫
這個儲存庫可以使用 git clone 或 pypi 安裝。
使用 Pypi
GDAL。確保您的 gdal 綁定正常工作...
使用pypy測試安裝sentinel_1_python
python3 -m pip install sentinel-1-python --extra-index-url=https://test.pypi.org/simple/
使用克隆
安裝所有要求
複製
git clone https://github.com/aalling93/sentinel_1_python.git
回目錄
取得影像的元數據
使用 Sentinel_metadata() 作為 met:met.area([29.9,21,56.7,58])met.get_metadata(sensor='s1_slc',start_data='20220109',end_date='20221010')
如果需要,可以過濾影像
met.iw() #filer 所以我們只有 IW
下載前顯示圖片:
met.plot_image_areas() # 顯示影像範圍met.show_cross_pol(4)
然後我們就可以看到影像的範圍。
並在下載之前顯示圖像...
下載圖像
資料夾= f'{os.getenv("raw_data_dir")}/slc_sweden'with Satellite_download(met.products_df) as dwl:os.makedirs(folder, exit_ok=True)#儲存元資料dwl.products_df.to_pic(klef' {folder} /slc_dataframe.pkl')#下載縮圖dwl.download_thumbnails(folder=f'{folder}/slc_thumbnails') #下載.zip格式的slc圖像並解壓為.SAFE格式..dwl.download_sentinel_1(f' {folder} /slc')
在Python中載入、校準、散斑過濾器影像
image_paths = glob.glob(f'{os.getenv("raw_data_dir")}/*/*/*.SAFE')img = s1_load(image_paths[0])img =img.calibrate(mode='gamma') #也可以使用,例如'sigma_0' img = img.boxcar(5) #可以輕鬆製作,例如Lee 濾波器..img.simple_plot(band_index=0)
我們現在可以提取由索引或座標集定義的圖像區域。
indx = img.get_index(lat=57.0047,long=19.399)img[indx[0]-125:indx[0]+125,indx[1]-125:indx[1]+125].simple_plot(band_index=1 )
回目錄
合成孔徑雷達 (SAR) 是一種主動式儀器,可用於非合作監視任務等。與MSI等產品相比,它的最大優勢在於它可以晝夜工作,並且可以穿透雲層和雨天。透過將 SAR 儀器安裝在衛星上,可以獲得具有特定設計的時間和空間解析度的全球覆蓋範圍。因此,透過結合AIS和SAR儀器,可以獲得合作和非合作監視。
雷達是一種發射具有微波頻譜中特定特徵的電磁脈衝的儀器。對於單靜態雷達,雷達儀器既發射又接收來自脈衝的反向散射訊號。反向散射訊號取決於其照射的目標的結構,因此,透過比較眾所周知的發射和接收訊號,可以使用單靜態雷達方程式來描述目標的幾何特徵和基本特徵:
在哪裡 ?是從發射訊號導出的接收訊號,??。變數?是雷達的設計特定波長,?(?,?) 是雷達增益模式。訊號根據行進距離 δ 進行分散。因此,可以導出雷達截面 ?(?, ?),它描述了目標的介電和幾何特性,並且取決於角度 ?和 ? 然而,在存在噪音的情況下,必須在單基地雷達方程式中添加另一個貢獻。在我的另一個儲存庫 https://github.com/aalling93/Finding-on-groud-Radars-in-SAR-images 中,我使用射頻幹擾 (RFI)。其他雷達的其他訊號幹擾 SAR 訊號的現象。一般來說,?(?,?) 描述的是目標區域內的可用能量,因此必須使用該區域進行標準化。雷達後向散射係數按下式計算:
根據當前的問題可以使用不同的區域。當使用 SAR 作為成像雷達時,影像中的每個像素都有一個相位和振幅值。透過校準影像,可以獲得雷達後向散射係數,如方程式所示。 。在此模組中,可以下載載入和校準 Sentinel-1 影像,而無需外部軟體或(臭名昭著的)Snappy 軟體包。
由於 SAR 受到照明區域內所有物體的反向散射影響,因此會出現一種稱為散斑的類似雜訊的現象。這會產生顆粒狀影像,其中每個像素都是該區域中單個物體的反向散射的組合。 在我的倉庫 https://github.com/aalling93/Custom-made-SAR-speckle-reduction 中,我實作了幾種不同的散斑濾波器,並顯示了不同條件下的差異。 。
SAR成像雷達與普通雷達不同,它利用平台的運動來合成更好的分辨率,因此被稱為合成孔徑雷達。當拍攝靜止目標的照片時,可以根據平台的速度找到多普勒頻率。 SAR 正在向相同目標發射和接收多個脈衝。當 SAR 飛向目標時,它會測量到正多普勒頻率,該頻率逐漸減小,直到垂直於目標,然後負多普勒頻率會逐漸增加
電磁訊號以水平或垂直極化方式傳輸,全參數 SAR 能夠傳輸水平和垂直極化。由於發射脈衝與目標的相互作用,垂直和水平訊號都會反射回 SAR。這導致出現幾種不同的散射機制。存在多種類型的散射機制。對於船舶檢測,最突出的是表面散射和雙反射散射。
發射的訊號將被其照亮的物體部分吸收,部分反射。表面散射是描述反射訊號的散射。如果表面完全光滑(鏡面反射),則不會有反向散射反射回 SAR。如果表面粗糙,則會發生散射,部分入射脈衝會散射回 SAR。與光滑表面相比,粗糙表面具有更高的反向散射。此外,對於粗糙表面和光滑表面,與 VH 和 HV 相比,VV 和 HH 具有更高的反向散射(HV 和 VH 幾乎總是相同)。 潮濕的表面會導致更高的雷達截面。表面的反向散射取決於其照射目標的粗糙度和介電常數。因此,即使考慮到其在 SAR 頻率下的高介電常數,由於其潮濕且相對光滑的表面(在低風速下),海洋表面通常會導致較小的反向散射。
當發射的脈衝從角落鏡面反射兩次回到 SAR 時,就會發生雙反射散射。這導致非常高的反向散射。船舶通常有很多角落並且非常光滑,導致反向散射特別高。因此,通常很容易區分例如船舶與海洋表面。有關海洋散射機制的更多資訊。如上所述,有幾種其他散射機制,並且當檢測例如北極 SAR 影像中的船隻時,也必須考慮體散射。
由於 SAR 及其移動平台的幾何形狀,典型的 SAR 成像感測器被設計為在影像擷取過程中假定目標靜止的情況下拍攝具有良好解析度的聚焦影像。這種聚焦不能針對移動目標,因此普通 SAR 儀器不適合用來偵測快速移動的物體,例如船舶。結果是靜態背景解析度良好,而移動目標解析度較差。在非合作監視任務中,這是一個重大問題。假設目標以恆定加速度垂直於 SAR 視線移動,可以透過考慮 SAR 影像的多普勒頻移來減少該問題。海船通常不遵循這種模式。因此,在使用 SAR 儀器觀察船舶時,必須考慮更複雜的軌跡模式。
總之,利用SAR儀器的能力,應該可以探測到海洋表面的船隻。
我自己、西蒙盧彭巴、艾吉爾利珀特
請參閱許可證文件。簡而言之:
在你的作品中引用我!類似:Kristian Aalling Sørensen (2020) sentinel_1_python [原始碼]。 https://github.com/aalling93/sentinel_1_python。電子郵件:[email protected]
讓盡可能多的人在 Github 上關注我。您和您的同事至少使用這個。我是一個同類獵人。
給這個儲存庫加註星標,條件與上面相同。
也許給我寫一兩封電子郵件,告訴我我的工作有多出色?
幫助我改進工作。我一直在尋找合作者。