Beginner level projection |
Beginner level projection |
Nov 6 2019, 11:50 PM
Post
#1
|
|
Junior Member Group: Members Posts: 31 Joined: 31-October 19 Member No.: 8699 |
Hi,
I'm trying to do the mapping just using SPICE for the Junocam images rather than going through ISIS. It might seem like I'm making life difficult for myself but I just wanted to make sure I'm doing the bare minimum amount of processing so it looks as close to a non-spinny-push-frame image as I can. I'm making all the beginner mistakes but I can't seem to figure out what they are so I was hoping someone might give me a hint? First I want to figure out how far Jupiter is because I want to have anything that didn't hit Jupiter get mapped to a sphere that hits Jupiter. This means any lens effects can get mapped in space near where they originated from which should hopefully make the edges of the planet seem less processed: [jupiterPos, jupiterLt] = spice.spkpos('JUPITER', et0, 'JUNO_SPACECRAFT', 'NONE', 'JUNO') jupiterDistance = np.linalg.norm(jupiterPos) Then I go through all the undistorted Junocam pixel vectors and figure Jupiter intercept points in the IAU_JUPITER frame so now I have a point cloud of all the planet mapped pixels: [point, trgepc, srfvec, found ] = spice.sincpt( 'Ellipsoid', 'JUPITER', et, 'IAU_JUPITER', 'LT+S', 'JUNO_SPACECRAFT', 'JUNO_JUNOCAM', v) If it didn't find an intersection then I figure out where that invisible sphere is going to be by extending out the pixel vector by the separation and move that to the IAU_JUPITER frame: direction = np.array(v) pos = direction*jupiterDistance/np.linalg.norm(direction) rotationMatrix = spice.pxform('JUNO_JUNOCAM','IAU_JUPITER',et-jupiterLt) pos = spice.mxv(rotationMatrix, pos) It works terribly! I seem to have a timing error in the frame offsets that seems suspiciously close to the light time between Jupiter and Juno and the sphere that catches all the sincpt misses is completely miles off. I've been staring at the code for a while and not figuring my mistake, I was hoping someone might point out where I've gone wrong. Many thanks Adam |
|
|
Nov 7 2019, 11:16 PM
Post
#2
|
|
Junior Member Group: Members Posts: 31 Joined: 31-October 19 Member No.: 8699 |
Thanks for the replys. I actually did start off using the boresight vector and it certainly looked like I was on the right track. Then I moved to looking for the edge of the planet from the undistort method in the IK and including the bias delay it looked pretty good other than being off by an additional delay (yes, I've definitely been through the IK file). I was assuming it was clock drift but later noticed it was similarish to the light time so I'm wondering if I'm not correcting for light times properly. I added the found image to this post where red means it didn't find Jupiter in that pixel's direction.
My kernal uses the following files: \begindata KERNELS_TO_LOAD = ( 'naif0012.tls','JNO_SCLKSCET.00092.tsc','de438s.bsp', 'jup310.bsp','juno_rec_orbit.bsp','juno_struct_v04.bsp','juno_v12.tf', 'juno_junocam_v03.ti','pck00010.tpc','juno_sc_nom_110807_171016_v01.bc' ) \begintext And I'm using image JNCR_2017244_08C00109_V01.IMG I attached the point cloud the first few framelets make and it looks reasonably hopeful. It got really ulgy really fast when I tried making that imaginary sphere to map the planet misses onto. You can see the planet on the right and the sphere way off on the left not attached so I've obviously messed up my SPICE calls. I've had a pretty hard look and I think it's my failure to grasp something rather than a simple coding error. My guess is I actually have two separate problems, one in my attempt to make an imaginary sphere just by multiplying a direction vector and the other in my light time correction flag for the sincpt call. That's why I just added those calls in the post. Thanks again. Adam |
|
|
Nov 7 2019, 11:24 PM
Post
#3
|
|
Senior Member Group: Members Posts: 2542 Joined: 13-September 05 Member No.: 497 |
'juno_sc_nom_110807_171016_v01.bc' Don't use the nom C kernels, use the rec C kernels. Our measurements show that the timing for that image was off by 3 pixels or 3*3.2 milliseconds. Not important, but still not following the invisible sphere stuff. -------------------- Disclaimer: This post is based on public information only. Any opinions are my own.
|
|
|
Lo-Fi Version | Time is now: 27th September 2024 - 03:11 AM |
RULES AND GUIDELINES Please read the Forum Rules and Guidelines before posting. IMAGE COPYRIGHT |
OPINIONS AND MODERATION Opinions expressed on UnmannedSpaceflight.com are those of the individual posters and do not necessarily reflect the opinions of UnmannedSpaceflight.com or The Planetary Society. The all-volunteer UnmannedSpaceflight.com moderation team is wholly independent of The Planetary Society. The Planetary Society has no influence over decisions made by the UnmannedSpaceflight.com moderators. |
SUPPORT THE FORUM Unmannedspaceflight.com is funded by the Planetary Society. Please consider supporting our work and many other projects by donating to the Society or becoming a member. |