Following up, I made this script to create an ascii file per band of M3. Inputs are L1B LOC.IMG (ENVI format actually) for X,Y,Z, and L2 REF.IMG (also ENVI, but many bands). output are ascii*.xyz, will update with final scripts once it will have finished the process once...
--------- Temporary script to create r.in.xyz compatible input files, one file per band of M3... --------- #!/usr/bin/env python #if older python use: #from __future__ import * print("Usage: m3xyz.py LOCfile.IMG ReflectFile.IMG") # For image processing from math import * import numpy from osgeo import gdalnumeric from osgeo import gdal from osgeo.gdal_array import * from osgeo.gdalconst import * import os, sys #Load Loc file #loc = LoadFile( sys.argv[1] ) #ref = LoadFile( sys.argv[2] ) loc = "M3G20090111T013904_V03_LOC.IMG" ref = "M3G20090111T013904_V01_RFL.IMG" out = "outascii" #Location dataset ds_loc = gdal.Open(loc, GA_ReadOnly) ds_loc_cols = ds_loc.RasterXSize ds_loc_rows = ds_loc.RasterYSize ds_loc_bands = ds_loc.RasterCount ds_loc_driver = ds_loc.GetDriver().LongName b1 = ds_loc.GetRasterBand(1) longitude = b1.ReadAsArray(0, 0, ds_loc_cols, ds_loc_rows).astype(numpy.float) b2 = ds_loc.GetRasterBand(2) latitude = b2.ReadAsArray(0, 0, ds_loc_cols, ds_loc_rows).astype(numpy.float) b3 = ds_loc.GetRasterBand(3) radius = b3.ReadAsArray(0, 0, ds_loc_cols, ds_loc_rows).astype(numpy.float) #Reflectance dataset ds_ref = gdal.Open(ref, GA_ReadOnly) ds_ref_cols = ds_ref.RasterXSize ds_ref_rows = ds_ref.RasterYSize ds_ref_bands = ds_ref.RasterCount ds_ref_driver = ds_ref.GetDriver().LongName for n in range (ds_ref.RasterCount): f=open(out+"_"+str(n)+".xyz","w") b = ds_ref.GetRasterBand(n+1) d = b.ReadAsArray(0, 0, ds_ref_cols, ds_ref_rows).astype(numpy.float) for row in range(ds_ref_rows): for col in range(ds_ref_cols): f.write(str(longitude[row,col])+str(latitude[row,col])+str(d[row,col])) f.close() del d,b,f On 28 November 2013 10:47, Yann Chemin <yche...@gmail.com> wrote: > Hi, > > Chandrayaan M3 data is rather strange, it has products without > Georeference (i.e. Reflectance bands etc) and it has a .LOC image set (3 > bands), with one latitude band, one longitude band and one "altitude" band > (actually a distance to center of the moon). > > So each pixel of a product has indeed a coordinate, stored into a map. > Problem is that the products are not projected datasets (rectangular kind > of swath storage). > > What would be the best option to import with reprojection using all pixels > coordinates available... > What about importing in 3D? > > Thank you, > Yann > > > > -- > ---- > -- ----
_______________________________________________ grass-dev mailing list grass-dev@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/grass-dev