DOI-USGS / ISIS3

Integrated Software for Imagers and Spectrometers v3. ISIS3 is a digital image processing software package to manipulate imagery collected by current and past NASA and International planetary missions.
https://isis.astrogeology.usgs.gov
Other
198 stars 167 forks source link

slpmap produces erroneous output #1357

Closed ascbot closed 5 years ago

ascbot commented 5 years ago

Author Name: Jeff Anderson (Jeff Anderson)

Original Assignee: Jeff Anderson


The slpmap program uses the equations as defined in arcmap. These equations rely on the pixel resolution. The program currently reads the pixel resolution at the center of the image. However, the pixel resolution varies across the entire map projection, for example, simple cylindrical. Therefore the slopes are in error the further we get away from the lat and/or lon of true scale.

http://webhelp.esri.com/arcgisdesktop/9.3/index.cfm?TopicName=How%20Slope%20(3D%20Analyst)%20works

Steps to reproduce:

run slpmap on any global DTM using a simple cylindrical projection

ascbot commented 5 years ago

Original Redmine Comment Author Name: Jeff Anderson (Jeff Anderson) Original Date: 2012-06-19T23:30:44Z


IMPACT There are two impacts, one positive and one negative. The positive impact is the program will be fixed and compute the correct slope everywhere in a projected DTM. The negative impact is the program will run slower ... on the order of 50% slower.

ascbot commented 5 years ago

Original Redmine Comment Author Name: Jeff Anderson (Jeff Anderson) Original Date: 2012-06-20T22:13:19Z


The change is ready to test. Please use the following commands

setisis /work/projects/isis/latest/m00910/isis

You can the run the updated version of slpmap

The updated documentation can be found as follows

firefox $ISISROOT/src/base/apps/slpmap/slpmap.html

ascbot commented 5 years ago

Original Redmine Comment Author Name: Jeff Anderson (Jeff Anderson) Original Date: 2012-07-09T23:21:31Z


Checking to see if Trent has time to test

ascbot commented 5 years ago

Original Redmine Comment Author Name: Jeff Anderson (Jeff Anderson) Original Date: 2012-07-23T23:21:56Z


Jeff, I forget it you stated you are going ahead with the latitude corrected slope (or if it was too slow). If you are to implement both - you should list it in interface as an option. Option one - scale corrected; Option two - typical 3x3 plane fitting routine in which the user need to worry about distortions in the map projection. Slope is not just for DEMs since it can help find sharp changes in any raster and some may not want it doing anything fancy.

Couple comments.

1.) Slope *DEGREES check box is nice but in the interface it never states that radians is the default if not checked. I would have guessed "percent rise". Digging in the help I figured it out but it should be on the main interface.

*CONVERSION should have a better tool tip - "resolution to meters" could be for X,Y or the DN. That should be specified.

*The output for slope in degree for an Athabasca CTX DEM was identical to ArcMap's routine. Which makes me guess the latitude correction was not applied (although this was close to the equator).

2.) Aspect *Choosing where "0" starts is seemingly random for aspect routines. I would think the default for 0 would be "up" (surface pointing north) which is how ArcMap portrays it. However, in slpmap, 0 is to the right (pointing east).
http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#//009z000000vp000000.htm

*I also would think the domain in degrees would be 0 to 360 (increasing counter-clockwise) no matter where 0 starts and not -180 to 180 and increasing counter-clock-wise which is currently used in slpmap.

*Setting where 0 starts might be an option for users?

Do you plan of having aspect latitude corrected also?

looking good, Trent

ascbot commented 5 years ago

Original Redmine Comment Author Name: Jeff Anderson (Jeff Anderson) Original Date: 2012-08-14T17:17:15Z


The program now computes slope accurately based on the pixel resolution throughout the image. X and Y resolution are computed independently. In addition, if a map projection is not available for the cube the user can set the pixel resolution.