Sea ice drift
Sea ice drift from Sentinel-1 SAR imagery using open source feature tracking.
https://github.com/nansencenter/sea_ice_drift
Category: Cryosphere
Sub Category: Sea Ice
Keywords from Contributors
resampler
Last synced: about 20 hours ago
JSON representation
Repository metadata
Sea ice drift from Sentinel-1 SAR imagery using open source feature tracking
- Host: GitHub
- URL: https://github.com/nansencenter/sea_ice_drift
- Owner: nansencenter
- License: gpl-3.0
- Created: 2015-11-19T08:40:38.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2023-05-24T07:50:40.000Z (almost 2 years ago)
- Last Synced: 2025-04-10T04:38:48.465Z (18 days ago)
- Language: Python
- Size: 22.7 MB
- Stars: 45
- Watchers: 13
- Forks: 18
- Open Issues: 4
- Releases: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
README.md
Sea ice drift from Sentinel-1 SAR data
A computationally efficient, open source feature tracking algorithm,
called ORB, is adopted and tuned for retrieval of the first guess
sea ice drift from Sentinel-1 SAR images. Pattern matching algorithm
based on MCC calculation is used further to retrieve sea ice drift on a
regular grid.
References:
- Korosov A.A. and Rampal P., A Combination of Feature Tracking and Pattern Matching with Optimal Parametrization for Sea Ice Drift Retrieval from SAR Data, Remote Sens. 2017, 9(3), 258; doi:10.3390/rs9030258
- Muckenhuber S., Korosov A.A., and Sandven S., Open-source feature-tracking algorithm for sea ice drift retrieval from Sentinel-1 SAR imagery, The Cryosphere, 10, 913-925, doi:10.5194/tc-10-913-2016, 2016
Running with Docker
# run ipython with SeaIceDrift
docker run --rm -it -v /path/to/data:/home/jovyan/work nansencenter/seaicedrift ipython
# run jupyter notebook with SeaIceDrift
docker run --rm -p 8888:8888 -v /path/to/data/and/notebooks:/home/jovyan/work nansencenter/seaicedrift
Installation on Ubuntu
# install some requirements with apt-get
apt-get install -y --no-install-recommends libgl1-mesa-glx gcc build-essential
# install some requirements with conda
conda install -c conda-forge gdal cartopy opencv
# install other requirements with pip
pip install netcdf4 nansat
# clone code
git clone https://github.com/nansencenter/sea_ice_drift.git
cd sea_ice_drift
# install SeaIceDrift
python setup.py install
Usage example
# download example datasets
wget https://github.com/nansencenter/sea_ice_drift_test_files/raw/master/S1B_EW_GRDM_1SDH_20200123T120618.tif
wget https://github.com/nansencenter/sea_ice_drift_test_files/raw/master/S1B_EW_GRDM_1SDH_20200125T114955.tif
# start Python and import relevant libraries
import numpy as np
import matplotlib.pyplot as plt
from nansat import Nansat
from sea_ice_drift import SeaIceDrift
# open pair of satellite images using Nansat and SeaIceDrift
filename1='S1B_EW_GRDM_1SDH_20200123T120618.tif'
filename2='S1B_EW_GRDM_1SDH_20200125T114955.tif'
sid = SeaIceDrift(filename1, filename2)
# run ice drift retrieval using Feature Tracking
uft, vft, lon1ft, lat1ft, lon2ft, lat2ft = sid.get_drift_FT()
# plot
plt.quiver(lon1ft, lat1ft, uft, vft);plt.show()
# define a grid (e.g. regular)
lon1pm, lat1pm = np.meshgrid(np.linspace(-33.5, -30.5, 50),
np.linspace(83.6, 83.9, 50))
# run ice drift retrieval for regular points using Pattern Matching
# use results from the Feature Tracking as the first guess
upm, vpm, apm, rpm, hpm, lon2pm, lat2pm = sid.get_drift_PM(
lon1pm, lat1pm,
lon1ft, lat1ft,
lon2ft, lat2ft)
# select high quality data only
gpi = rpm*hpm > 4
# plot high quality data on a regular grid
plt.quiver(lon1pm[gpi], lat1pm[gpi], upm[gpi], vpm[gpi], rpm[gpi])
Full example here
Owner metadata
- Name: Nansen Environmental and Remote Sensing Center
- Login: nansencenter
- Email: [email protected]
- Kind: organization
- Description:
- Website: www.nersc.no
- Location: Bergen, Norway
- Twitter: nansensenteret
- Company:
- Icon url: https://avatars.githubusercontent.com/u/5212513?v=4
- Repositories: 105
- Last ynced at: 2024-04-16T01:11:29.752Z
- Profile URL: https://github.com/nansencenter
GitHub Events
Total
- Issues event: 1
- Watch event: 3
- Issue comment event: 1
- Fork event: 1
Last Year
- Issues event: 1
- Watch event: 3
- Issue comment event: 1
- Fork event: 1
Committers metadata
Last synced: 6 days ago
Total Commits: 199
Total Committers: 5
Avg Commits per committer: 39.8
Development Distribution Score (DDS): 0.106
Commits in past year: 1
Committers in past year: 1
Avg Commits per committer in past year: 1.0
Development Distribution Score (DDS) in past year: 0.0
Name | Commits | |
---|---|---|
akorosov | k****v@g****m | 178 |
Stefan Muckenhuber | s****c@S****l | 17 |
stefanmuckenhuber | s****r@g****m | 2 |
Ashwin Nair | a****5@g****m | 1 |
tdcwilliams | t****s@g****m | 1 |
Committer domains:
Issue and Pull Request metadata
Last synced: 2 days ago
Total issues: 27
Total pull requests: 3
Average time to close issues: 5 months
Average time to close pull requests: 2 days
Total issue authors: 15
Total pull request authors: 3
Average comments per issue: 2.04
Average comments per pull request: 0.0
Merged pull request: 3
Bot issues: 0
Bot pull requests: 0
Past year issues: 1
Past year pull requests: 0
Past year average time to close issues: N/A
Past year average time to close pull requests: N/A
Past year issue authors: 1
Past year pull request authors: 0
Past year average comments per issue: 0.0
Past year average comments per pull request: 0
Past year merged pull request: 0
Past year bot issues: 0
Past year bot pull requests: 0
Top Issue Authors
- akorosov (7)
- hamoun1981 (3)
- lucearth (3)
- SAMPHY86 (3)
- tdcwilliams (1)
- QianShisysu (1)
- loniitkina (1)
- jthargrove (1)
- mitkin (1)
- Linkersem (1)
- LooperzZ (1)
- schuman12 (1)
- tsafs (1)
- Antarekai (1)
- YU9684 (1)
Top Pull Request Authors
- tdcwilliams (1)
- akorosov (1)
- ashnair1 (1)
Top Issue Labels
- enhancement (1)
Top Pull Request Labels
Dependencies
- nansat *
- jupyter/minimal-notebook latest build
Score: 5.5012582105447265