-
Notifications
You must be signed in to change notification settings - Fork 35
Description
When running the following pipeline, I am getting unexpected results. Talking with @acpaquette these results are sensical because of how ISIS implements cropping.
Here is the pipeline:
- Generate an ISIS cube
- Crop the cube and propagate SPICE
- Use
isd_generate
to create an ISD from the cropped cube
My expected behavior is that the ISD generated by isd_generate
will be appropriate to use with the cropped ISIS cube. By appropriate, I mean that a campt
call and some knoten sensor model function will return the same results, plus or minus the accepted tolerance. In reality, the results are quite different. Why?
ISIS tracks the offsets in the cropped cube and carries around the full observation SPICE. Therefore, the ISD created by ALE is the full observation SPICE. But, the cropped cube is just that, a cropped image. The CSM has no idea that the ISD is provided for an uncropped image.
The result is that a test to ensure that say, pixel (10,10) in the cropped ISIS image returns the same lon/lat between both campt
and knoten
requires that I add whatever the start sample/line used for the crop
command. That information is not recorded in the ISD. It is available via cathist
.
I do not know that I have a suggested fix. Options that come to mind (without a lot of thought about the trickle down effects):
- "Fix" ISIS so that a cropped cube crops the SPICE as well. (I say "fix" because I think ISIS is working as intended.)
- Fix
isd_generate
to create a proper cropped ISD if the input ISIS cube is cropped