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

feat: add support for sidd imagery #22

Merged
merged 1 commit into from
Oct 12, 2023
Merged

Conversation

edparris
Copy link
Contributor

@edparris edparris commented Oct 6, 2023

This change adds the ability to work with SIDD imagery and metadata in the OSML imagery toolkit. Sensor models for both full and chipped SIDD imagery are available through the regular load_gdal_dataset() function.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

:return: the sensor model; if available
"""
try:
if self.sidd_xml is None or len(self.sidd_xml) == 0:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would use if not self.sidd.xml: and eliminate the rest according to the PEPS8

For sequences, (strings, lists, tuples), use the fact that empty sequences are false:

# Correct:
if not seq:
if seq:
# Wrong:
if len(seq):
if not len(seq):

return u_spn

@staticmethod
def compute_u_gpn(scp_ecf: WorldCoordinate, u_row: np.ndarray, u_col: np.ndarray) -> np.ndarray:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing documentation for this.

@@ -24,7 +24,7 @@ repos:
rev: 6.0.0
hooks:
- id: flake8
args: ["--ignore=E203,W503,W605", "--max-line-length=125"]
args: ["--ignore=E203,W503,W605", "--max-line-length=160", "--extend-exclude=src/aws/osml/formats"]
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would we like to standardize on 160 in other packages as the max line length?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The only reason I did this is that there are some long regular expression strings in the XML parsing code. They look really ugly if they get broken up.

The black formatter still sets things to 125 which seems like a generally good practice. The only reason I set this here is because flake8 seems to be ignoring that excludes option so it was still complaining about the XML format files.

@edparris edparris merged commit 077e839 into dev Oct 12, 2023
2 checks passed
@edparris edparris deleted the feature/sidd-sensor-models branch October 12, 2023 13:51
edparris added a commit that referenced this pull request Dec 12, 2023
…ities (#32)

This release extends OversightML Imagery Toolkit support to include additional image formats and processing utilities. Key changes include:

* Support for SAR imagery including the SICD, and SIDD sensor models and ability to create georeferenced tiles. Also includes basic preprocessing utilities for converting complex data into 8-bit grayscales for display.
* RSM sensor models are enabled by default for datasets created using load_gdal_dataset().
* Addition of an optional output_size parameter for the GDALTileFactory that can be used to produce reduced resolution tiles.
* Addition of a new aws.osml.features module that contains utilities for working with GeoJSON features derived from imagery. These utilities include spatial indices for creating vector tiles and utilities for working with properties of features that have both geospatil and pixel coordinates.


---------

Pull Requests Merged:
* feat: add SICD sensor model with planar projection (#10)
* feat: add optional dynamic pixel range operations to tile factory (#9)
* feat: add HAE and DEM projections to SICD sensor model (#12)
* feat: Fix documentation commands for github actions (#13)
* docs: Updating CONTRIBUTING.md (#11)
* fix: correct calculation of INCA R/Rdot projection (#14)
* feat: update DRA to work with SICDs (#15)
* feat: enable RSM sensor model by default (#16)
* feat: gdal sensor model now supports non-wgs84 crs (#17)
* docs: update readme for SAR features (#18)
* feat: SAR examples and display processing (#21)
* feat: add support for sidd imagery (#22)
* feat: Update GitHub actions (#23)
* build: Update Github Actions
* fix: errors constructing RSMSectionedPolynomialSensorModel from TREs
* feat: adds features module with 2D spatial index and basic property utils
* feat: adds generic DEM tile set and geodetic coordinate formatting
* fix: lint error in generic_dem_tile_set.py
* feat: add ability to create scaled tiles and tiles from SIDD
* docs: add examples to package level documentation
* build: update library version to v1.2.0

---------

Co-authored-by: Ranbir Aulakh <[email protected]>
Co-authored-by: drduhe <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants