Loading tests/pytests/data/isds/lrolroc_isd.json 0 → 100644 +498 −0 Original line number Diff line number Diff line { "IsisCameraVersion": 2, "NaifKeywords": { "BODY301_RADII": [ 1737.4, 1737.4, 1737.4 ], "BODY_FRAME_CODE": 31001, "BODY_CODE": 301, "INS-85600_MULTIPLI_LINE_ERROR": 0.0045, "INS-85600_CK_FRAME_ID": -85000.0, "TKFRAME_-85600_RELATIVE": "LRO_SC_BUS", "INS-85600_PIXEL_SAMPLES": 5064.0, "INS-85600_WAVELENGTH_RANGE": [ 400.0, 760.0 ], "INS-85600_ITRANSL": [ 0.0, 142.857, 0.0 ], "INS-85600_TRANSX": [ 0.0, 0.0, 0.007 ], "INS-85600_SWAP_OBSERVER_TARGET": "TRUE", "INS-85600_TRANSY": [ 0.0, 0.007, 0.0 ], "INS-85600_ITRANSS": [ 0.0, 0.0, 142.857 ], "INS-85600_LIGHTTIME_CORRECTION": "NONE", "INS-85600_ADDITIVE_LINE_ERROR": 0.0, "INS-85600_FOV_BOUNDARY_CORNERS": [ 4.9738e-06, -0.025335999999999997, 1.0, 4.9747e-06, -0.024943, 1.0, 5.0026999999999996e-06, 0.0, 1.0, 4.975e-06 ], "FRAME_-85600_NAME": "LRO_LROCNACL", "CK_-85600_SPK": -85.0, "INS-85600_CONSTANT_TIME_OFFSET": 0.0, "CK_-85600_SCLK": -85.0, "INS-85600_PIXEL_LINES": 1.0, "INS-85600_BORESIGHT": [ 0.0, 0.0, 1.0 ], "INS-85600_PLATFORM_ID": -85000.0, "INS-85600_BORESIGHT_LINE": 0.0, "FRAME_-85600_CLASS": 3.0, "INS-85600_FOCAL_LENGTH": 699.62, "INS-85600_F/RATIO": 3.577, "INS-85600_OD_K": 1.81e-05, "INS-85600_FOV_SHAPE": "POLYGON", "INS-85600_PIXEL_SIZE": [ 0.007, 0.007 ], "INS-85600_BORESIGHT_SAMPLE": 2548.0, "INS-85600_PIXEL_PITCH": 0.007, "INS-85600_ADDITIONAL_PREROLL": 1024.0, "INS-85600_CK_REFERENCE_ID": 1.0, "INS-85600_LT_SURFACE_CORRECT": "TRUE", "INS-85600_FOV_FRAME": "LRO_LROCNACL", "FRAME_-85600_CLASS_ID": -85600.0, "INS-85600_IFOV": 1.0005399999999999e-05, "FRAME_-85600_CENTER": -85.0, "INS-85600_CCD_CENTER": [ 2532.5, 1.0 ], "BODY301_POLE_RA": [ 269.9949, 0.0031, 0.0 ], "BODY301_NUT_PREC_PM": [ 3.561, 0.1208, -0.0642, 0.0158, 0.0252, -0.0066, -0.0047, -0.0046, 0.0028, 0.0052 ], "BODY301_NUT_PREC_RA": [ -3.8787000000000003, -0.1204, 0.07, -0.0172, 0.0, 0.0072, 0.0, 0.0, 0.0, -0.0052 ], "BODY301_LONG_AXIS": 0.0, "BODY301_NUT_PREC_DEC": [ 1.5419, 0.0239, -0.0278, 0.0068, 0.0, -0.0029, 0.0009, 0.0, 0.0, 0.0008 ], "BODY301_POLE_DEC": [ 66.5392, 0.013, 0.0 ], "BODY301_PM": [ 38.3213, 13.17635815, -1.3999999999999999e-12 ] }, "detector_sample_summing": 1, "detector_line_summing": 1, "focal_length_model": { "focal_length": 699.62 }, "detector_center": { "line": 0.0, "sample": 2547.5 }, "starting_detector_line": 0, "starting_detector_sample": 0, "focal2pixel_lines": [ -0.0, -142.857, -0.0 ], "focal2pixel_samples": [ 0.0, 0.0, 142.857 ], "optical_distortion": { "lrolrocnac": { "coefficients": [ 1.81e-05 ] } }, "image_lines": 400, "image_samples": 5064, "name_platform": "LUNAR RECONNAISSANCE ORBITER", "name_sensor": "LUNAR RECONNAISSANCE ORBITER NARROW ANGLE CAMERA LEFT", "reference_height": { "maxheight": 1000, "minheight": -1000, "unit": "m" }, "name_model": "USGS_ASTRO_LINE_SCANNER_SENSOR_MODEL", "interpolation_method": "lagrange", "line_scan_rate": [ [ 0.5, -0.20668596029281616, 0.0010334295999999998 ] ], "starting_ephemeris_time": 302228504.36824864, "center_ephemeris_time": 302228504.5749346, "radii": { "semimajor": 1737.4, "semiminor": 1737.4, "unit": "km" }, "InstrumentPointing": { "TimeDependentFrames": [ -85600, -85000, 1 ], "CkTableStartTime": 302228504.36824864, "CkTableEndTime": 302228504.7816205, "CkTableOriginalSize": 6, "EphemerisTimes": [ 302228504.36824864, 302228504.450923, 302228504.5335974, 302228504.61627173, 302228504.6989461, 302228504.7816205 ], "Quaternions": [ [ 0.22984449090659237, 0.8562360121526155, -0.01457632418312204, 0.4624055928145594 ], [ 0.22984459963498413, 0.8562197280950775, -0.014583335437683365, 0.4624354696246142 ], [ 0.22984367991941132, 0.8562032842671137, -0.014590196641096637, 0.4624661554895512 ], [ 0.2298423219602694, 0.8561872277925395, -0.01459745672913302, 0.46249632675068797 ], [ 0.2298413596492449, 0.8561711699907094, -0.014604593844944499, 0.4625263051005321 ], [ 0.22984081705372042, 0.8561549931881817, -0.014611505650658631, 0.4625562996626938 ] ], "AngularVelocity": [ [ 0.00015796288676771882, -0.0007643782570599635, -0.0003174531428220953 ], [ 0.00015631294459532674, -0.0007657803825957866, -0.0003184081089449395 ], [ 0.00013745925497849103, -0.0007797744104491687, -0.00032988161600413016 ], [ 0.00013211442776748356, -0.0007623315159936997, -0.00033874000799855454 ], [ 0.00014047395809259157, -0.0007614279586831931, -0.0003284683667926366 ], [ 0.0001443115614238801, -0.0007630657146284228, -0.00032321391571062645 ] ], "ConstantFrames": [ -85600 ], "ConstantRotation": [ 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0 ] }, "BodyRotation": { "TimeDependentFrames": [ 31006, 1 ], "CkTableStartTime": 302228504.36824864, "CkTableEndTime": 302228504.7816205, "CkTableOriginalSize": 6, "EphemerisTimes": [ 302228504.36824864, 302228504.450923, 302228504.5335974, 302228504.61627173, 302228504.6989461, 302228504.7816205 ], "Quaternions": [ [ -0.8896294526439446, 0.18337484217069425, -0.07150784453785884, 0.41209189802380003 ], [ -0.8896294073127606, 0.1833748342493258, -0.07150786471014642, 0.41209199590986223 ], [ -0.889629361981566, 0.18337482632795524, -0.07150788488243316, 0.41209209379591966 ], [ -0.8896293166503605, 0.18337481840658243, -0.07150790505471902, 0.41209219168197186 ], [ -0.8896292713191442, 0.18337481048520735, -0.071507925227004, 0.4120922895680191 ], [ -0.8896292259879173, 0.18337480256383012, -0.0715079453992881, 0.41209238745406124 ] ], "AngularVelocity": [ [ 6.23828510009553e-08, -1.0257490014652093e-06, 2.455354036200098e-06 ], [ 6.238285108687342e-08, -1.0257490015380855e-06, 2.4553540362115642e-06 ], [ 6.238285117279176e-08, -1.025749001610962e-06, 2.4553540362230297e-06 ], [ 6.238285125870996e-08, -1.0257490016838385e-06, 2.455354036234496e-06 ], [ 6.2382851344628e-08, -1.0257490017567146e-06, 2.4553540362459614e-06 ], [ 6.238285143054625e-08, -1.0257490018295912e-06, 2.4553540362574277e-06 ] ], "ConstantFrames": [ 31001, 31007, 31006 ], "ConstantRotation": [ 0.9999998732547144, -0.00032928542237557133, 0.00038086961867138755, 0.00032928600021094723, 0.9999999457843062, -1.4544409378362713e-06, -0.00038086911909607826, 1.5798557868269087e-06, 0.9999999274681067 ] }, "InstrumentPosition": { "SpkTableStartTime": 302228504.36824864, "SpkTableEndTime": 302228504.7816205, "SpkTableOriginalSize": 6, "EphemerisTimes": [ 302228504.36824864, 302228504.450923, 302228504.5335974, 302228504.61627173, 302228504.6989461, 302228504.7816205 ], "Positions": [ [ -1516.1039882048947, -668.6745734893002, 902.1405183116759 ], [ -1516.176000573894, -668.6422150991707, 902.0346703324196 ], [ -1516.2480053780712, -668.6098533709328, 901.9288178499854 ], [ -1516.320002565111, -668.5774883280569, 901.8229609411912 ], [ -1516.3919922384162, -668.5451199240163, 901.7170994539005 ], [ -1516.4639743456696, -668.5127481822817, 901.6112334649276 ] ], "Velocities": [ [ -0.8710817993164441, 0.3913754105818205, -1.2802723434988814 ], [ -0.8709903003882029, 0.39141578800691706, -1.2803268153571778 ], [ -0.8708987964969201, 0.3914561637581709, -1.2803812811841886 ], [ -0.8708072877088842, 0.391496537806338, -1.2804357409401614 ], [ -0.8707157738925385, 0.3915369102094339, -1.2804901947032974 ], [ -0.8706242551142269, 0.39157728093812155, -1.2805446424339852 ] ] }, "SunPosition": { "SpkTableStartTime": 302228504.5749346, "SpkTableEndTime": 302228504.5749346, "SpkTableOriginalSize": 1, "EphemerisTimes": [ 302228504.5749346 ], "Positions": [ [ -91885596.62561405, 111066639.06681778, 48186230.75049895 ] ], "Velocities": [ [ -23.97582426247181, -15.920790540011309, -6.940052709040858 ] ] } } tests/pytests/test_lro_drivers.py +8 −179 Original line number Diff line number Diff line Loading @@ -12,181 +12,10 @@ from ale.drivers.lro_drivers import LroLrocPds3LabelNaifSpiceDriver from ale.drivers.lro_drivers import LroLrocIsisLabelNaifSpiceDriver from ale.transformation import TimeDependentRotation from conftest import get_image_label, get_image_kernels, convert_kernels, compare_dicts from conftest import get_image_label, get_isd, get_image_kernels, convert_kernels, compare_dicts image_dict = { 'M103595705LE': { 'isis': { "CameraVersion": 2, "NaifKeywords": { "BODY301_RADII": [ 1737.4, 1737.4, 1737.4 ], "BODY_FRAME_CODE": 31001, "BODY_CODE": 301, "INS-85600_MULTIPLI_LINE_ERROR": 0.0045, "INS-85600_CK_FRAME_ID": -85000, "TKFRAME_-85600_RELATIVE": "LRO_SC_BUS", "INS-85600_PIXEL_SAMPLES": 5064, "INS-85600_WAVELENGTH_RANGE": [ 400, 760 ], "INS-85600_ITRANSL": [ 0, 142.857, 0 ], "INS-85600_TRANSX": [ 0, 0, 0.007 ], "INS-85600_SWAP_OBSERVER_TARGET": "TRUE", "INS-85600_TRANSY": [ 0, 0.007, 0 ], "INS-85600_ITRANSS": [ 0, 0, 142.857 ], "INS-85600_LIGHTTIME_CORRECTION": "NONE", "INS-85600_ADDITIVE_LINE_ERROR": 0, "INS-85600_FOV_BOUNDARY_CORNERS": [ 0.0000049738, -0.025335999999999997, 1, 0.0000049747, -0.024943, 1, 0.0000050026999999999996, 0, 1, 0.000004975 ], "FRAME_-85600_NAME": "LRO_LROCNACL", "CK_-85600_SPK": -85, "INS-85600_CONSTANT_TIME_OFFSET": 0, "CK_-85600_SCLK": -85, "INS-85600_PIXEL_LINES": 1, "INS-85600_BORESIGHT": [ 0, 0, 1 ], "INS-85600_PLATFORM_ID": -85000, "INS-85600_BORESIGHT_LINE": 0, "FRAME_-85600_CLASS": 3, "INS-85600_FOCAL_LENGTH": 699.62, "INS-85600_F/RATIO": 3.577, "INS-85600_OD_K": 0.0000181, "INS-85600_FOV_SHAPE": "POLYGON", "INS-85600_PIXEL_SIZE": [ 0.007, 0.007 ], "INS-85600_BORESIGHT_SAMPLE": 2548, "INS-85600_PIXEL_PITCH": 0.007, "INS-85600_ADDITIONAL_PREROLL": 1024, "INS-85600_CK_REFERENCE_ID": 1, "INS-85600_LT_SURFACE_CORRECT": "TRUE", "INS-85600_FOV_FRAME": "LRO_LROCNACL", "FRAME_-85600_CLASS_ID": -85600, "INS-85600_IFOV": 0.000010005399999999999, "FRAME_-85600_CENTER": -85, "INS-85600_CCD_CENTER": [ 2532.5, 1 ], "BODY301_POLE_RA": [ 269.9949, 0.0031, 0 ], "BODY301_NUT_PREC_PM": [ 3.561, 0.1208, -0.0642, 0.0158, 0.0252, -0.0066, -0.0047, -0.0046, 0.0028, 0.0052 ], "BODY301_NUT_PREC_RA": [ -3.8787000000000003, -0.1204, 0.07, -0.0172, 0, 0.0072, 0, 0, 0, -0.0052 ], "BODY301_LONG_AXIS": 0, "BODY301_NUT_PREC_DEC": [ 1.5419, 0.0239, -0.0278, 0.0068, 0, -0.0029, 0.0009, 0, 0, 0.0008 ], "BODY301_POLE_DEC": [ 66.5392, 0.013, 0 ], "BODY301_PM": [ 38.3213, 13.17635815, -1.3999999999999999e-12 ] }, "InstrumentPointing": { "TimeDependentFrames": [ -85600, -85000, 1 ], "CkTableStartTime": 302228504.36824864, "CkTableEndTime": 302228504.7816205, "CkTableOriginalSize": 6, "EphemerisTimes": [ 302228504.36824864, 302228504.450923, 302228504.5335974, 302228504.61627173, 302228504.6989461, 302228504.7816205 ], "Quaternions": [ [ 0.22984449090659237, 0.8562360121526155, -0.014576324183122052, 0.4624055928145594 ], [ 0.22984459963498413, 0.8562197280950775, -0.014583335437683352, 0.4624354696246142 ], [ 0.22984367991941132, 0.8562032842671137, -0.014590196641096627, 0.4624661554895512 ], [ 0.2298423219602694, 0.8561872277925395, -0.01459745672913303, 0.46249632675068797 ], [ 0.2298413596492449, 0.8561711699907094, -0.014604593844944487, 0.4625263051005321 ], [ 0.22984081705372042, 0.8561549931881817, -0.014611505650658618, 0.4625562996626938 ] ], "AngularVelocity": [ [ 0.00015796288676771882, -0.0007643782570599635, -0.0003174531428220953 ], [ 0.00015631294459532674, -0.0007657803825957866, -0.0003184081089449395 ], [ 0.00013745925497849103, -0.0007797744104491687, -0.00032988161600413016 ], [ 0.00013211442776748356, -0.0007623315159936997, -0.00033874000799855454 ], [ 0.00014047395809259157, -0.0007614279586831931, -0.0003284683667926366 ], [ 0.0001443115614238801, -0.0007630657146284228, -0.00032321391571062645 ] ], "ConstantFrames": [ -85600 ], "ConstantRotation": [ 1, 0, 0, 0, 1, 0, 0, 0, 1 ] }, "BodyRotation": { "TimeDependentFrames": [ 31006, 1 ], "CkTableStartTime": 302228504.36824864, "CkTableEndTime": 302228504.7816205, "CkTableOriginalSize": 6, "EphemerisTimes": [ 302228504.36824864, 302228504.450923, 302228504.5335974, 302228504.61627173, 302228504.6989461, 302228504.7816205 ], "Quaternions": [ [ -0.8896294526439446, 0.18337484217069425, -0.07150784453785884, 0.41209189802380003 ], [ -0.8896294073127606, 0.1833748342493258, -0.07150786471014642, 0.41209199590986223 ], [ -0.889629361981566, 0.18337482632795524, -0.07150788488243316, 0.41209209379591966 ], [ -0.8896293166503605, 0.18337481840658243, -0.07150790505471902, 0.41209219168197186 ], [ -0.8896292713191442, 0.18337481048520735, -0.071507925227004, 0.4120922895680191 ], [ -0.8896292259879173, 0.18337480256383012, -0.0715079453992881, 0.41209238745406124 ] ], "AngularVelocity": [ [ 6.23828510009553e-8, -0.0000010257490014652093, 0.000002455354036200098 ], [ 6.238285108687342e-8, -0.0000010257490015380855, 0.0000024553540362115642 ], [ 6.238285117279176e-8, -0.000001025749001610962, 0.0000024553540362230297 ], [ 6.238285125870996e-8, -0.0000010257490016838385, 0.000002455354036234496 ], [ 6.2382851344628e-8, -0.0000010257490017567146, 0.0000024553540362459614 ], [ 6.238285143054625e-8, -0.0000010257490018295912, 0.0000024553540362574277 ] ], "ConstantFrames": [ 31001, 31007, 31006 ], "ConstantRotation": [ 0.9999998732547144, -0.00032928542237557133, 0.00038086961867138755, 0.00032928600021094723, 0.9999999457843062, -0.0000014544409378362713, -0.00038086911909607826, 0.0000015798557868269087, 0.9999999274681067 ] }, "InstrumentPosition": { "SpkTableStartTime": 302228504.36824864, "SpkTableEndTime": 302228504.7816205, "SpkTableOriginalSize": 6, "EphemerisTimes": [ 302228504.36824864, 302228504.450923, 302228504.5335974, 302228504.61627173, 302228504.6989461, 302228504.7816205 ], "Positions": [[-1516.1039882048947, -668.6745734893002, 902.1405183116759 ], [ -1516.176000573894, -668.6422150991707, 902.0346703324196 ], [ -1516.2480053780712, -668.6098533709328, 901.9288178499854 ], [ -1516.320002565111, -668.5774883280569, 901.8229609411912 ], [ -1516.3919922384162, -668.5451199240163, 901.7170994539005 ], [ -1516.4639743456696, -668.5127481822817, 901.6112334649276 ]], "Velocities": [[-0.8710817993164441, 0.3913754105818205, -1.2802723434988814 ], [ -0.8709903003882029, 0.39141578800691706, -1.2803268153571778 ], [ -0.8708987964969201, 0.3914561637581709, -1.2803812811841886 ], [ -0.8708072877088842, 0.391496537806338, -1.2804357409401614 ], [ -0.8707157738925385, 0.3915369102094339, -1.2804901947032974 ], [ -0.8706242551142269, 0.39157728093812155, -1.2805446424339852 ]] }, "SunPosition": { "SpkTableStartTime": 302228504.5749346, "SpkTableEndTime": 302228504.5749346, "SpkTableOriginalSize": 1, "EphemerisTimes": [ 302228504.5749346 ], "Positions": [ [ -91885596.62561405, 111066639.06681778, 48186230.75049895 ] ], "Velocities": [ [ -23.97582426247181, -15.920790540011309, -6.940052709040858 ] ] } } } 'M103595705LE': get_isd("lrolroc") } @pytest.fixture(scope="module") Loading @@ -202,14 +31,14 @@ def test_kernels(): os.remove(kern) @pytest.mark.parametrize("label_type", ['isis3']) @pytest.mark.parametrize("formatter", ['isis']) @pytest.mark.parametrize("image", image_dict.keys()) def test_load_isis(test_kernels, label_type, formatter, image): def test_load(test_kernels, label_type, image): label_file = get_image_label(image, label_type) isis_isd = ale.loads(label_file, props={'kernels': test_kernels[image]}, formatter=formatter, verbose=True) isis_isd_obj = json.loads(isis_isd) print(json.dumps(isis_isd_obj, indent=4)) assert compare_dicts(isis_isd_obj, image_dict[image][formatter]) == [] isd_str = ale.loads(label_file, props={'kernels': test_kernels[image]}) isd_obj = json.loads(isd_str) print(json.dumps(isd_obj, indent=2)) assert compare_dicts(isd_obj, image_dict[image]) == [] # ========= Test pdslabel and naifspice driver ========= class test_pds_naif(unittest.TestCase): Loading Loading
tests/pytests/data/isds/lrolroc_isd.json 0 → 100644 +498 −0 Original line number Diff line number Diff line { "IsisCameraVersion": 2, "NaifKeywords": { "BODY301_RADII": [ 1737.4, 1737.4, 1737.4 ], "BODY_FRAME_CODE": 31001, "BODY_CODE": 301, "INS-85600_MULTIPLI_LINE_ERROR": 0.0045, "INS-85600_CK_FRAME_ID": -85000.0, "TKFRAME_-85600_RELATIVE": "LRO_SC_BUS", "INS-85600_PIXEL_SAMPLES": 5064.0, "INS-85600_WAVELENGTH_RANGE": [ 400.0, 760.0 ], "INS-85600_ITRANSL": [ 0.0, 142.857, 0.0 ], "INS-85600_TRANSX": [ 0.0, 0.0, 0.007 ], "INS-85600_SWAP_OBSERVER_TARGET": "TRUE", "INS-85600_TRANSY": [ 0.0, 0.007, 0.0 ], "INS-85600_ITRANSS": [ 0.0, 0.0, 142.857 ], "INS-85600_LIGHTTIME_CORRECTION": "NONE", "INS-85600_ADDITIVE_LINE_ERROR": 0.0, "INS-85600_FOV_BOUNDARY_CORNERS": [ 4.9738e-06, -0.025335999999999997, 1.0, 4.9747e-06, -0.024943, 1.0, 5.0026999999999996e-06, 0.0, 1.0, 4.975e-06 ], "FRAME_-85600_NAME": "LRO_LROCNACL", "CK_-85600_SPK": -85.0, "INS-85600_CONSTANT_TIME_OFFSET": 0.0, "CK_-85600_SCLK": -85.0, "INS-85600_PIXEL_LINES": 1.0, "INS-85600_BORESIGHT": [ 0.0, 0.0, 1.0 ], "INS-85600_PLATFORM_ID": -85000.0, "INS-85600_BORESIGHT_LINE": 0.0, "FRAME_-85600_CLASS": 3.0, "INS-85600_FOCAL_LENGTH": 699.62, "INS-85600_F/RATIO": 3.577, "INS-85600_OD_K": 1.81e-05, "INS-85600_FOV_SHAPE": "POLYGON", "INS-85600_PIXEL_SIZE": [ 0.007, 0.007 ], "INS-85600_BORESIGHT_SAMPLE": 2548.0, "INS-85600_PIXEL_PITCH": 0.007, "INS-85600_ADDITIONAL_PREROLL": 1024.0, "INS-85600_CK_REFERENCE_ID": 1.0, "INS-85600_LT_SURFACE_CORRECT": "TRUE", "INS-85600_FOV_FRAME": "LRO_LROCNACL", "FRAME_-85600_CLASS_ID": -85600.0, "INS-85600_IFOV": 1.0005399999999999e-05, "FRAME_-85600_CENTER": -85.0, "INS-85600_CCD_CENTER": [ 2532.5, 1.0 ], "BODY301_POLE_RA": [ 269.9949, 0.0031, 0.0 ], "BODY301_NUT_PREC_PM": [ 3.561, 0.1208, -0.0642, 0.0158, 0.0252, -0.0066, -0.0047, -0.0046, 0.0028, 0.0052 ], "BODY301_NUT_PREC_RA": [ -3.8787000000000003, -0.1204, 0.07, -0.0172, 0.0, 0.0072, 0.0, 0.0, 0.0, -0.0052 ], "BODY301_LONG_AXIS": 0.0, "BODY301_NUT_PREC_DEC": [ 1.5419, 0.0239, -0.0278, 0.0068, 0.0, -0.0029, 0.0009, 0.0, 0.0, 0.0008 ], "BODY301_POLE_DEC": [ 66.5392, 0.013, 0.0 ], "BODY301_PM": [ 38.3213, 13.17635815, -1.3999999999999999e-12 ] }, "detector_sample_summing": 1, "detector_line_summing": 1, "focal_length_model": { "focal_length": 699.62 }, "detector_center": { "line": 0.0, "sample": 2547.5 }, "starting_detector_line": 0, "starting_detector_sample": 0, "focal2pixel_lines": [ -0.0, -142.857, -0.0 ], "focal2pixel_samples": [ 0.0, 0.0, 142.857 ], "optical_distortion": { "lrolrocnac": { "coefficients": [ 1.81e-05 ] } }, "image_lines": 400, "image_samples": 5064, "name_platform": "LUNAR RECONNAISSANCE ORBITER", "name_sensor": "LUNAR RECONNAISSANCE ORBITER NARROW ANGLE CAMERA LEFT", "reference_height": { "maxheight": 1000, "minheight": -1000, "unit": "m" }, "name_model": "USGS_ASTRO_LINE_SCANNER_SENSOR_MODEL", "interpolation_method": "lagrange", "line_scan_rate": [ [ 0.5, -0.20668596029281616, 0.0010334295999999998 ] ], "starting_ephemeris_time": 302228504.36824864, "center_ephemeris_time": 302228504.5749346, "radii": { "semimajor": 1737.4, "semiminor": 1737.4, "unit": "km" }, "InstrumentPointing": { "TimeDependentFrames": [ -85600, -85000, 1 ], "CkTableStartTime": 302228504.36824864, "CkTableEndTime": 302228504.7816205, "CkTableOriginalSize": 6, "EphemerisTimes": [ 302228504.36824864, 302228504.450923, 302228504.5335974, 302228504.61627173, 302228504.6989461, 302228504.7816205 ], "Quaternions": [ [ 0.22984449090659237, 0.8562360121526155, -0.01457632418312204, 0.4624055928145594 ], [ 0.22984459963498413, 0.8562197280950775, -0.014583335437683365, 0.4624354696246142 ], [ 0.22984367991941132, 0.8562032842671137, -0.014590196641096637, 0.4624661554895512 ], [ 0.2298423219602694, 0.8561872277925395, -0.01459745672913302, 0.46249632675068797 ], [ 0.2298413596492449, 0.8561711699907094, -0.014604593844944499, 0.4625263051005321 ], [ 0.22984081705372042, 0.8561549931881817, -0.014611505650658631, 0.4625562996626938 ] ], "AngularVelocity": [ [ 0.00015796288676771882, -0.0007643782570599635, -0.0003174531428220953 ], [ 0.00015631294459532674, -0.0007657803825957866, -0.0003184081089449395 ], [ 0.00013745925497849103, -0.0007797744104491687, -0.00032988161600413016 ], [ 0.00013211442776748356, -0.0007623315159936997, -0.00033874000799855454 ], [ 0.00014047395809259157, -0.0007614279586831931, -0.0003284683667926366 ], [ 0.0001443115614238801, -0.0007630657146284228, -0.00032321391571062645 ] ], "ConstantFrames": [ -85600 ], "ConstantRotation": [ 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0 ] }, "BodyRotation": { "TimeDependentFrames": [ 31006, 1 ], "CkTableStartTime": 302228504.36824864, "CkTableEndTime": 302228504.7816205, "CkTableOriginalSize": 6, "EphemerisTimes": [ 302228504.36824864, 302228504.450923, 302228504.5335974, 302228504.61627173, 302228504.6989461, 302228504.7816205 ], "Quaternions": [ [ -0.8896294526439446, 0.18337484217069425, -0.07150784453785884, 0.41209189802380003 ], [ -0.8896294073127606, 0.1833748342493258, -0.07150786471014642, 0.41209199590986223 ], [ -0.889629361981566, 0.18337482632795524, -0.07150788488243316, 0.41209209379591966 ], [ -0.8896293166503605, 0.18337481840658243, -0.07150790505471902, 0.41209219168197186 ], [ -0.8896292713191442, 0.18337481048520735, -0.071507925227004, 0.4120922895680191 ], [ -0.8896292259879173, 0.18337480256383012, -0.0715079453992881, 0.41209238745406124 ] ], "AngularVelocity": [ [ 6.23828510009553e-08, -1.0257490014652093e-06, 2.455354036200098e-06 ], [ 6.238285108687342e-08, -1.0257490015380855e-06, 2.4553540362115642e-06 ], [ 6.238285117279176e-08, -1.025749001610962e-06, 2.4553540362230297e-06 ], [ 6.238285125870996e-08, -1.0257490016838385e-06, 2.455354036234496e-06 ], [ 6.2382851344628e-08, -1.0257490017567146e-06, 2.4553540362459614e-06 ], [ 6.238285143054625e-08, -1.0257490018295912e-06, 2.4553540362574277e-06 ] ], "ConstantFrames": [ 31001, 31007, 31006 ], "ConstantRotation": [ 0.9999998732547144, -0.00032928542237557133, 0.00038086961867138755, 0.00032928600021094723, 0.9999999457843062, -1.4544409378362713e-06, -0.00038086911909607826, 1.5798557868269087e-06, 0.9999999274681067 ] }, "InstrumentPosition": { "SpkTableStartTime": 302228504.36824864, "SpkTableEndTime": 302228504.7816205, "SpkTableOriginalSize": 6, "EphemerisTimes": [ 302228504.36824864, 302228504.450923, 302228504.5335974, 302228504.61627173, 302228504.6989461, 302228504.7816205 ], "Positions": [ [ -1516.1039882048947, -668.6745734893002, 902.1405183116759 ], [ -1516.176000573894, -668.6422150991707, 902.0346703324196 ], [ -1516.2480053780712, -668.6098533709328, 901.9288178499854 ], [ -1516.320002565111, -668.5774883280569, 901.8229609411912 ], [ -1516.3919922384162, -668.5451199240163, 901.7170994539005 ], [ -1516.4639743456696, -668.5127481822817, 901.6112334649276 ] ], "Velocities": [ [ -0.8710817993164441, 0.3913754105818205, -1.2802723434988814 ], [ -0.8709903003882029, 0.39141578800691706, -1.2803268153571778 ], [ -0.8708987964969201, 0.3914561637581709, -1.2803812811841886 ], [ -0.8708072877088842, 0.391496537806338, -1.2804357409401614 ], [ -0.8707157738925385, 0.3915369102094339, -1.2804901947032974 ], [ -0.8706242551142269, 0.39157728093812155, -1.2805446424339852 ] ] }, "SunPosition": { "SpkTableStartTime": 302228504.5749346, "SpkTableEndTime": 302228504.5749346, "SpkTableOriginalSize": 1, "EphemerisTimes": [ 302228504.5749346 ], "Positions": [ [ -91885596.62561405, 111066639.06681778, 48186230.75049895 ] ], "Velocities": [ [ -23.97582426247181, -15.920790540011309, -6.940052709040858 ] ] } }
tests/pytests/test_lro_drivers.py +8 −179 Original line number Diff line number Diff line Loading @@ -12,181 +12,10 @@ from ale.drivers.lro_drivers import LroLrocPds3LabelNaifSpiceDriver from ale.drivers.lro_drivers import LroLrocIsisLabelNaifSpiceDriver from ale.transformation import TimeDependentRotation from conftest import get_image_label, get_image_kernels, convert_kernels, compare_dicts from conftest import get_image_label, get_isd, get_image_kernels, convert_kernels, compare_dicts image_dict = { 'M103595705LE': { 'isis': { "CameraVersion": 2, "NaifKeywords": { "BODY301_RADII": [ 1737.4, 1737.4, 1737.4 ], "BODY_FRAME_CODE": 31001, "BODY_CODE": 301, "INS-85600_MULTIPLI_LINE_ERROR": 0.0045, "INS-85600_CK_FRAME_ID": -85000, "TKFRAME_-85600_RELATIVE": "LRO_SC_BUS", "INS-85600_PIXEL_SAMPLES": 5064, "INS-85600_WAVELENGTH_RANGE": [ 400, 760 ], "INS-85600_ITRANSL": [ 0, 142.857, 0 ], "INS-85600_TRANSX": [ 0, 0, 0.007 ], "INS-85600_SWAP_OBSERVER_TARGET": "TRUE", "INS-85600_TRANSY": [ 0, 0.007, 0 ], "INS-85600_ITRANSS": [ 0, 0, 142.857 ], "INS-85600_LIGHTTIME_CORRECTION": "NONE", "INS-85600_ADDITIVE_LINE_ERROR": 0, "INS-85600_FOV_BOUNDARY_CORNERS": [ 0.0000049738, -0.025335999999999997, 1, 0.0000049747, -0.024943, 1, 0.0000050026999999999996, 0, 1, 0.000004975 ], "FRAME_-85600_NAME": "LRO_LROCNACL", "CK_-85600_SPK": -85, "INS-85600_CONSTANT_TIME_OFFSET": 0, "CK_-85600_SCLK": -85, "INS-85600_PIXEL_LINES": 1, "INS-85600_BORESIGHT": [ 0, 0, 1 ], "INS-85600_PLATFORM_ID": -85000, "INS-85600_BORESIGHT_LINE": 0, "FRAME_-85600_CLASS": 3, "INS-85600_FOCAL_LENGTH": 699.62, "INS-85600_F/RATIO": 3.577, "INS-85600_OD_K": 0.0000181, "INS-85600_FOV_SHAPE": "POLYGON", "INS-85600_PIXEL_SIZE": [ 0.007, 0.007 ], "INS-85600_BORESIGHT_SAMPLE": 2548, "INS-85600_PIXEL_PITCH": 0.007, "INS-85600_ADDITIONAL_PREROLL": 1024, "INS-85600_CK_REFERENCE_ID": 1, "INS-85600_LT_SURFACE_CORRECT": "TRUE", "INS-85600_FOV_FRAME": "LRO_LROCNACL", "FRAME_-85600_CLASS_ID": -85600, "INS-85600_IFOV": 0.000010005399999999999, "FRAME_-85600_CENTER": -85, "INS-85600_CCD_CENTER": [ 2532.5, 1 ], "BODY301_POLE_RA": [ 269.9949, 0.0031, 0 ], "BODY301_NUT_PREC_PM": [ 3.561, 0.1208, -0.0642, 0.0158, 0.0252, -0.0066, -0.0047, -0.0046, 0.0028, 0.0052 ], "BODY301_NUT_PREC_RA": [ -3.8787000000000003, -0.1204, 0.07, -0.0172, 0, 0.0072, 0, 0, 0, -0.0052 ], "BODY301_LONG_AXIS": 0, "BODY301_NUT_PREC_DEC": [ 1.5419, 0.0239, -0.0278, 0.0068, 0, -0.0029, 0.0009, 0, 0, 0.0008 ], "BODY301_POLE_DEC": [ 66.5392, 0.013, 0 ], "BODY301_PM": [ 38.3213, 13.17635815, -1.3999999999999999e-12 ] }, "InstrumentPointing": { "TimeDependentFrames": [ -85600, -85000, 1 ], "CkTableStartTime": 302228504.36824864, "CkTableEndTime": 302228504.7816205, "CkTableOriginalSize": 6, "EphemerisTimes": [ 302228504.36824864, 302228504.450923, 302228504.5335974, 302228504.61627173, 302228504.6989461, 302228504.7816205 ], "Quaternions": [ [ 0.22984449090659237, 0.8562360121526155, -0.014576324183122052, 0.4624055928145594 ], [ 0.22984459963498413, 0.8562197280950775, -0.014583335437683352, 0.4624354696246142 ], [ 0.22984367991941132, 0.8562032842671137, -0.014590196641096627, 0.4624661554895512 ], [ 0.2298423219602694, 0.8561872277925395, -0.01459745672913303, 0.46249632675068797 ], [ 0.2298413596492449, 0.8561711699907094, -0.014604593844944487, 0.4625263051005321 ], [ 0.22984081705372042, 0.8561549931881817, -0.014611505650658618, 0.4625562996626938 ] ], "AngularVelocity": [ [ 0.00015796288676771882, -0.0007643782570599635, -0.0003174531428220953 ], [ 0.00015631294459532674, -0.0007657803825957866, -0.0003184081089449395 ], [ 0.00013745925497849103, -0.0007797744104491687, -0.00032988161600413016 ], [ 0.00013211442776748356, -0.0007623315159936997, -0.00033874000799855454 ], [ 0.00014047395809259157, -0.0007614279586831931, -0.0003284683667926366 ], [ 0.0001443115614238801, -0.0007630657146284228, -0.00032321391571062645 ] ], "ConstantFrames": [ -85600 ], "ConstantRotation": [ 1, 0, 0, 0, 1, 0, 0, 0, 1 ] }, "BodyRotation": { "TimeDependentFrames": [ 31006, 1 ], "CkTableStartTime": 302228504.36824864, "CkTableEndTime": 302228504.7816205, "CkTableOriginalSize": 6, "EphemerisTimes": [ 302228504.36824864, 302228504.450923, 302228504.5335974, 302228504.61627173, 302228504.6989461, 302228504.7816205 ], "Quaternions": [ [ -0.8896294526439446, 0.18337484217069425, -0.07150784453785884, 0.41209189802380003 ], [ -0.8896294073127606, 0.1833748342493258, -0.07150786471014642, 0.41209199590986223 ], [ -0.889629361981566, 0.18337482632795524, -0.07150788488243316, 0.41209209379591966 ], [ -0.8896293166503605, 0.18337481840658243, -0.07150790505471902, 0.41209219168197186 ], [ -0.8896292713191442, 0.18337481048520735, -0.071507925227004, 0.4120922895680191 ], [ -0.8896292259879173, 0.18337480256383012, -0.0715079453992881, 0.41209238745406124 ] ], "AngularVelocity": [ [ 6.23828510009553e-8, -0.0000010257490014652093, 0.000002455354036200098 ], [ 6.238285108687342e-8, -0.0000010257490015380855, 0.0000024553540362115642 ], [ 6.238285117279176e-8, -0.000001025749001610962, 0.0000024553540362230297 ], [ 6.238285125870996e-8, -0.0000010257490016838385, 0.000002455354036234496 ], [ 6.2382851344628e-8, -0.0000010257490017567146, 0.0000024553540362459614 ], [ 6.238285143054625e-8, -0.0000010257490018295912, 0.0000024553540362574277 ] ], "ConstantFrames": [ 31001, 31007, 31006 ], "ConstantRotation": [ 0.9999998732547144, -0.00032928542237557133, 0.00038086961867138755, 0.00032928600021094723, 0.9999999457843062, -0.0000014544409378362713, -0.00038086911909607826, 0.0000015798557868269087, 0.9999999274681067 ] }, "InstrumentPosition": { "SpkTableStartTime": 302228504.36824864, "SpkTableEndTime": 302228504.7816205, "SpkTableOriginalSize": 6, "EphemerisTimes": [ 302228504.36824864, 302228504.450923, 302228504.5335974, 302228504.61627173, 302228504.6989461, 302228504.7816205 ], "Positions": [[-1516.1039882048947, -668.6745734893002, 902.1405183116759 ], [ -1516.176000573894, -668.6422150991707, 902.0346703324196 ], [ -1516.2480053780712, -668.6098533709328, 901.9288178499854 ], [ -1516.320002565111, -668.5774883280569, 901.8229609411912 ], [ -1516.3919922384162, -668.5451199240163, 901.7170994539005 ], [ -1516.4639743456696, -668.5127481822817, 901.6112334649276 ]], "Velocities": [[-0.8710817993164441, 0.3913754105818205, -1.2802723434988814 ], [ -0.8709903003882029, 0.39141578800691706, -1.2803268153571778 ], [ -0.8708987964969201, 0.3914561637581709, -1.2803812811841886 ], [ -0.8708072877088842, 0.391496537806338, -1.2804357409401614 ], [ -0.8707157738925385, 0.3915369102094339, -1.2804901947032974 ], [ -0.8706242551142269, 0.39157728093812155, -1.2805446424339852 ]] }, "SunPosition": { "SpkTableStartTime": 302228504.5749346, "SpkTableEndTime": 302228504.5749346, "SpkTableOriginalSize": 1, "EphemerisTimes": [ 302228504.5749346 ], "Positions": [ [ -91885596.62561405, 111066639.06681778, 48186230.75049895 ] ], "Velocities": [ [ -23.97582426247181, -15.920790540011309, -6.940052709040858 ] ] } } } 'M103595705LE': get_isd("lrolroc") } @pytest.fixture(scope="module") Loading @@ -202,14 +31,14 @@ def test_kernels(): os.remove(kern) @pytest.mark.parametrize("label_type", ['isis3']) @pytest.mark.parametrize("formatter", ['isis']) @pytest.mark.parametrize("image", image_dict.keys()) def test_load_isis(test_kernels, label_type, formatter, image): def test_load(test_kernels, label_type, image): label_file = get_image_label(image, label_type) isis_isd = ale.loads(label_file, props={'kernels': test_kernels[image]}, formatter=formatter, verbose=True) isis_isd_obj = json.loads(isis_isd) print(json.dumps(isis_isd_obj, indent=4)) assert compare_dicts(isis_isd_obj, image_dict[image][formatter]) == [] isd_str = ale.loads(label_file, props={'kernels': test_kernels[image]}) isd_obj = json.loads(isd_str) print(json.dumps(isd_obj, indent=2)) assert compare_dicts(isd_obj, image_dict[image]) == [] # ========= Test pdslabel and naifspice driver ========= class test_pds_naif(unittest.TestCase): Loading