示例#1
0
def get_subframe_from_roidata(roidata, obsID):
    indict = roidata.dict[obsID]
    ccd = indict['CCDColour']
    fname = hirise_tools.getMosPathFromIDandCCD(obsID, ccd)
    centerX = int(indict['Map_Sample_Offset'])
    centerY = int(indict['Map_Line_Offset'])
    samples = int(indict['NSAMPLES'])
    lines = int(indict ['NLINES'])
    xOff = int(centerX) - samples / 2
    yOff = int(centerY) - lines / 2
    return SubFrame(fname, xOff, yOff, samples, lines)
示例#2
0
import pickle

args = sys.argv
try:
    roi_data_file = args[1]
except IndexError:
    print "Usage: {0} roi_data_file".format(args[0])
    sys.exit(1)

roidata = roi.ROI_Data()
roidata.read_in(roi_data_file)
roidict = roidata.dict

for obsID in roidict:
    ccd = roidict[obsID]['CCDColour']
    fname = hirise_tools.getMosPathFromIDandCCD(obsID, ccd)
    print fname
    ds = gdal.Open(fname, GA_ReadOnly)
    band = ds.GetRasterBand(1)
    xOff = roidict[obsID]['Map_Sample_Offset']
    yOff = roidict[obsID]['Map_Line_Offset']
    xCoreg = roidict[obsID]['CoReg_Sample_Offset']
    yCoreg = roidict[obsID]['CoReg_Line_Offset']
    xSize = roidict[obsID]['NSAMPLES']
    ySize = roidict[obsID]['NLINES']
    data = band.ReadAsArray(int(xOff) + int(xCoreg),
                          int(yOff) + int(yCoreg),
                          int(xSize), int(ySize))
    data[np.where(data < 0)] = np.NaN
    with open(os.path.basename(fname) + '.pickled_array', 'w') as outfile:
        pickle.dump(data, outfile)