Geospatial Vector Representation of Planetary Remote Sensing Hyperspectral Data
pix2vec: Vector Representation of Planetary Hyperspectral Data Cubes
- Free software: GNU General Public License v3
- Documentation: https://pix2vec.readthedocs.io.
- Produces a vector representation of the raster representation of HSI data 'cubes' generated by ISIS
- a relatively recent Integrated Software for Imagers and Spectrometers (ISIS) installation and the kalasiris module (which will be installed automatically).
Frigeri, A. and Hare, T. 2023. Geospatial Vector Representation of Planetary Mapping Spectrometer Data. 6th Planetay Data Workshop, Flagstaff, Arizona 26-28th June 2023, Abstract #7088.:
@INPROCEEDINGS{FrigeriHare2023, author = {{Frigeri}, A. and {Hare}, T.}, title = "{Geospatial Vector Representation of Planetary Mapping Spectrometer Data}", booktitle = {6th Planetay Data Workshop}, year = 2023, series = {LPI}, month = jun, eid = {7088}, pages = {7088} }
within a working ISIS environment, run:
pip install pix2vect
pix2vect requires spice-initialized ISIS cubes (see spiceinit).
Let's start with an hyperspectral cube from the The Moon Mineralogy Mapper (M3), the NASA spectrometer onboard Chandrayaan-1 mission to the Moon:
(ISIS) $ pix2vec -i -c M3G20090103T084105_V03_L1B.cub pix2vect - 2023 Alessandro Frigeri - Istituto Nazionale di Astrofisica Cube Type:M3 samples:304 lines:11739 file:M3G20090103T084105_V03_L1B.cub
now we create a vector GIS file representing the geometry of the sensor's pixel on the lunar surface:
pix2vec -c M3G20090103T084105_V03_L1B.cub -s 1,150 -l 3050,3200 -o M3G20090103T084105_V03_L1B_subset.gpkg
the vector file can then be loaded in your favorite GIS, and we can plot the file with a PixelValue greyscale:
each ground pixel element holds information that can be accessed:
for each ground-projected pixel, you now have access to these fields:
Filename Sample Line PixelValue RightAscension Declination PlanetocentricLatitude PlanetographicLatitude PositiveEast360Longitude PositiveEast180Longitude PositiveWest360Longitude PositiveWest180Longitude BodyFixedCoordinateX BodyFixedCoordinateY BodyFixedCoordinateZ LocalRadius SampleResolution LineResolution SpacecraftPositionX SpacecraftPositionY SpacecraftPositionZ SpacecraftAzimuth SlantDistance TargetCenterDistance SubSpacecraftLatitude SubSpacecraftLongitude SpacecraftAltitude OffNadirAngle SubSpacecraftGroundAzimuth SunPositionX SunPositionY SunPositionZ SubSolarAzimuth SolarDistance SubSolarLatitude SubSolarLongitude SubSolarGroundAzimuth Phase Incidence Emission NorthAzimuth EphemerisTime UTC LocalSolarTime SolarLongitude LookDirectionBodyFixedX LookDirectionBodyFixedY LookDirectionBodyFixedZ LookDirectionJ2000X LookDirectionJ2000Y LookDirectionJ2000Z LookDirectionCameraX LookDirectionCameraY LookDirectionCameraZ ObliqueDetectorResolution ObliquePixelResolution ObliqueLineResolution ObliqueSampleResolution Error
Documentation is available at https://pix2vec.readthedocs.io