DOI-USGS / usgscsm

This repository stores USGS Community Sensor Model (CSM) camera models
Other
26 stars 33 forks source link

Support for the radial + tangential distortion model #466

Closed oleg-alexandrov closed 8 months ago

oleg-alexandrov commented 9 months ago

Add support for the radial + tangential distortion model. This has 5 distortion coefficients, stored in order k1, k2, p1, p2, k3. The k1, k2, k3 coefficients are for radial distortion, and p1 and p2 for tangential distortion. This was validated with the OpenCV implementation using the function cv::projectPoints().

Corresponding code was added in "ale" (https://github.com/DOI-USGS/ale/pull/575).

The issue discussing this: https://github.com/DOI-USGS/usgscsm/issues/465

Tests were added for:

Licensing

This project is mostly composed of free and unencumbered software released into the public domain, and we are unlikely to accept contributions that are not also released into the public domain. Somewhere near the top of each file should have these words:

This work is free and unencumbered software released into the public domain. In jurisdictions that recognize copyright laws, the author or authors of this software dedicate any and all copyright interest in the software to the public domain.

oleg-alexandrov commented 9 months ago

Any comments as to whether changing the name of an internal function is fine or it has to be kept consistent? The new name was motivated by the fact that there are now two distortion Jacobians, for transverse and radtan distortion.

BTW, I think the binary compatibility may have been broken just because the Distortion enum has one more field now.

Anyhow, this is the last issue for this pull request, so hoping to hear how to proceed.

oleg-alexandrov commented 9 months ago

@acpaquette: Any firm decision on this? No problem adjusting things either way, then it could be pulled in.

oleg-alexandrov commented 8 months ago

@acpaquette @jlaura: Thoughts? Happy to conform what is considered existing policy or best practices, if a specific change is suggested. There's no good reason for this to be left in limbo as people move on and stuff gets forgotten.

oleg-alexandrov commented 8 months ago

Thanks. Can this be pulled in? I haven't gotten yet the write access Jay applied for. Then I'll take care of such things without bugging folks.