Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Support for NonGeoDatasets #433

Merged
merged 34 commits into from
Feb 6, 2024
Merged

Add Support for NonGeoDatasets #433

merged 34 commits into from
Feb 6, 2024

Conversation

Pale-Blue-Dot-97
Copy link
Owner

@Pale-Blue-Dot-97 Pale-Blue-Dot-97 commented Feb 5, 2024

This major PR adds experimental support for NonGeoDatasets to minerva.

Warning

This new functionality is still somewhat experimental. Effort has been made to eliminate bugs and replicate the same functionality of GeoDataset with NonGeoDataset but there are some gaps.

Updates

  • Closes Support torchgeo.datasets.NonGeoDataset #426
  • Split PairedDataset into PairedGeoDataset and PairedNonGeoDataset
  • Split SSL4EOS12Sentinel2 into GeoSSL4EOS12Sentinel2 and NonGeoSSL4EOS12Sentinel2
  • NEW: PairedConcatDataset. Replicates the functions of PairedUnionDataset but for NonGeoDataset.
  • NEW: MinervaNonGeoDataset. Extension of NonGeoDataset that adds a __or__ method so that the dataset1 | dataset2 syntax still works.
  • NEW: MultiSpectralDataset. Generic dataset for multi-spectral imagery using both NonGeoDataset and VisionDataset.
  • Updates to factory.py to support NonGeoDataset
  • New tests to cover new functionality
  • example_GeoSimConvNet.yml now uses NonGeoSSL4EOS12Sentinel2 (and associated changes)

Note

From a user perspective, there are no breaking changes. As long as you are using minerva via the YAML or CLI, no changes are needed.

Major contributions from @jonhare

@Pale-Blue-Dot-97 Pale-Blue-Dot-97 added bug Something isn't working enhancement New feature or request generalise Code needs generalising dependencies Pull requests that update a dependency file testing New tests needed restructure Restructure package python Pull requests that update Python code markdown Updates to Markdown yaml Updates to yaml files labels Feb 5, 2024
@Pale-Blue-Dot-97 Pale-Blue-Dot-97 self-assigned this Feb 5, 2024
@Pale-Blue-Dot-97 Pale-Blue-Dot-97 linked an issue Feb 5, 2024 that may be closed by this pull request
Copy link

codecov bot commented Feb 6, 2024

Codecov Report

Attention: 66 lines in your changes are missing coverage. Please review.

Comparison is base (ca9b74f) 98.43% compared to head (80cc1af) 97.77%.
Report is 290 commits behind head on beta.

❗ Current head 80cc1af differs from pull request most recent head 3d2d33e. Consider uploading reports for the commit 3d2d33e to get more accurate results

Files Patch % Lines
minerva/datasets/paired.py 88.33% 14 Missing ⚠️
minerva/datasets/factory.py 89.83% 12 Missing ⚠️
minerva/datasets/utils.py 68.96% 9 Missing ⚠️
minerva/models/siamese.py 78.57% 9 Missing ⚠️
minerva/logger/tasklog.py 95.34% 6 Missing ⚠️
minerva/models/core.py 91.37% 5 Missing ⚠️
minerva/tasks/core.py 98.11% 3 Missing ⚠️
minerva/logger/steplog.py 95.23% 2 Missing ⚠️
minerva/modelio.py 94.73% 2 Missing ⚠️
minerva/tasks/knn.py 97.14% 2 Missing ⚠️
... and 2 more
Additional details and impacted files
@@            Coverage Diff             @@
##             beta     #433      +/-   ##
==========================================
- Coverage   98.43%   97.77%   -0.66%     
==========================================
  Files          32       39       +7     
  Lines        3631     4143     +512     
==========================================
+ Hits         3574     4051     +477     
- Misses         57       92      +35     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@Pale-Blue-Dot-97 Pale-Blue-Dot-97 merged commit 0a68baa into beta Feb 6, 2024
10 of 12 checks passed
@Pale-Blue-Dot-97 Pale-Blue-Dot-97 deleted the 426-nongeo-dev branch February 6, 2024 22:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working dependencies Pull requests that update a dependency file enhancement New feature or request generalise Code needs generalising markdown Updates to Markdown python Pull requests that update Python code restructure Restructure package testing New tests needed yaml Updates to yaml files
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support torchgeo.datasets.NonGeoDataset
1 participant