CONTENT ======= The package contains 4 sets of data with almost identical structure. One set is in the /training folder, three sets are in the /testing folder. The only difference is that the /testing folder contains a /ground-truth folder which is missing from the /testing folders. The sets contain the following data: - A KML file that describes the target area. - An /images folder that contain cropped versions of the original NITF files. They are formed using a radius of 1000 (or in the case of training data 1500) pixels around the KML polygon centroid. Note that in some test sets some of the files are missing because the cropped version doesn't fully overlap with the target area. - A /metadata folder that contains all meta information that is present in the original NITF file's header and first image segment. Note that the content of this folder is identical for all 4 data sets. - An /rpc folder that contains camera model RPC parameters and the line and sample offsets of each cropped image. Note that the RPC parameters can also be found in the metadata files, you may use either version of the data. The sample offsets however are available only in these txt files. Detailed information on how the RPC parameters are listed in these files are given later in this document. The line and sample offsets (x0 and y0 coordinates) are the last two values in the file. They are given as real numbers, which were calculated by mapping the KML centroid using the RPC transformation to the original NITF image and then substracting the radius. The cropped images were then extracted as a subimage having Width and Height equal to (2*radius+1), with a top left corner at the (int)x0, (int)y0 integer coordinates. - A /ground-truth folder (only for training). Contains the expected elevation data in GeoTiff and XYZ formats. The content of these two files are identical, you may use either of them. The visualizer supports the xyz version. FORMAT AND FURTHER INFO ON THE RPC FILES ======================================== The RPC transformation needs these 80 coefficients (sRPC.adfLINE_NUM_COEFF[0...19], sRPC.adfLINE_DEN_COEFF[0...19], sRPC.adfSAMP_NUM_COEFF[0...19], sRPC.adfSAMP_DEN_COEFF[0...19]), also scale and offset parameters for each coordinate element [LAT, LON, HEIGHT, line, sample] (total of 10 additional parameters). E.g. scale and offset for lattitude are sRPC.dfLAT_SCALE,sRPC.dfLAT_OFF. RPC parameters are used to obtain image coordinates (row,col) or (line,sample) by forward mapping a 3D point (X,Y,Z). Finally, sampleOFFSET,lineOFFSET indicate the offset of the top(line)/left(sample) pixel of the cropped image with respect to NITF full image. This is needed to use the RPC parameters. Note that:sRPC.dfMIN_LONG, sRPC.dfMIN_LAT, sRPC.dfMAX_LONG, sRPC.dfMAX_LAT are not needed although available Further info on these parameters can be found at ftp://ftp.ecn.purdue.edu/jshan/proceedings/asprs2005/Files/0031.pdf Format of file: fprintf(fid,"%.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f, %.20f\n", sRPC.dfLINE_OFF, sRPC.dfSAMP_OFF, sRPC.dfLAT_OFF, sRPC.dfLONG_OFF, sRPC.dfHEIGHT_OFF, sRPC.dfLINE_SCALE, sRPC.dfSAMP_SCALE, sRPC.dfLAT_SCALE, sRPC.dfLONG_SCALE, sRPC.dfHEIGHT_SCALE, sRPC.adfLINE_NUM_COEFF[0],sRPC.adfLINE_NUM_COEFF[1],sRPC.adfLINE_NUM_COEFF[2],sRPC.adfLINE_NUM_COEFF[3],sRPC.adfLINE_NUM_COEFF[4],sRPC.adfLINE_NUM_COEFF[5],sRPC.adfLINE_NUM_COEFF[6],sRPC.adfLINE_NUM_COEFF[7],sRPC.adfLINE_NUM_COEFF[8],sRPC.adfLINE_NUM_COEFF[9], sRPC.adfLINE_NUM_COEFF[10],sRPC.adfLINE_NUM_COEFF[11],sRPC.adfLINE_NUM_COEFF[12],sRPC.adfLINE_NUM_COEFF[13],sRPC.adfLINE_NUM_COEFF[14],sRPC.adfLINE_NUM_COEFF[15],sRPC.adfLINE_NUM_COEFF[16],sRPC.adfLINE_NUM_COEFF[17],sRPC.adfLINE_NUM_COEFF[18],sRPC.adfLINE_NUM_COEFF[19], sRPC.adfLINE_DEN_COEFF[0],sRPC.adfLINE_DEN_COEFF[1],sRPC.adfLINE_DEN_COEFF[2],sRPC.adfLINE_DEN_COEFF[3],sRPC.adfLINE_DEN_COEFF[4],sRPC.adfLINE_DEN_COEFF[5],sRPC.adfLINE_DEN_COEFF[6],sRPC.adfLINE_DEN_COEFF[7],sRPC.adfLINE_DEN_COEFF[8],sRPC.adfLINE_DEN_COEFF[9], sRPC.adfLINE_DEN_COEFF[10],sRPC.adfLINE_DEN_COEFF[11],sRPC.adfLINE_DEN_COEFF[12],sRPC.adfLINE_DEN_COEFF[13],sRPC.adfLINE_DEN_COEFF[14],sRPC.adfLINE_DEN_COEFF[15],sRPC.adfLINE_DEN_COEFF[16],sRPC.adfLINE_DEN_COEFF[17],sRPC.adfLINE_DEN_COEFF[18],sRPC.adfLINE_DEN_COEFF[19], sRPC.adfSAMP_NUM_COEFF[0],sRPC.adfSAMP_NUM_COEFF[1],sRPC.adfSAMP_NUM_COEFF[2],sRPC.adfSAMP_NUM_COEFF[3],sRPC.adfSAMP_NUM_COEFF[4],sRPC.adfSAMP_NUM_COEFF[5],sRPC.adfSAMP_NUM_COEFF[6],sRPC.adfSAMP_NUM_COEFF[7],sRPC.adfSAMP_NUM_COEFF[8],sRPC.adfSAMP_NUM_COEFF[9], sRPC.adfSAMP_NUM_COEFF[10],sRPC.adfSAMP_NUM_COEFF[11],sRPC.adfSAMP_NUM_COEFF[12],sRPC.adfSAMP_NUM_COEFF[13],sRPC.adfSAMP_NUM_COEFF[14],sRPC.adfSAMP_NUM_COEFF[15],sRPC.adfSAMP_NUM_COEFF[16],sRPC.adfSAMP_NUM_COEFF[17],sRPC.adfSAMP_NUM_COEFF[18],sRPC.adfSAMP_NUM_COEFF[19], sRPC.adfSAMP_DEN_COEFF[0],sRPC.adfSAMP_DEN_COEFF[1],sRPC.adfSAMP_DEN_COEFF[2],sRPC.adfSAMP_DEN_COEFF[3],sRPC.adfSAMP_DEN_COEFF[4],sRPC.adfSAMP_DEN_COEFF[5],sRPC.adfSAMP_DEN_COEFF[6],sRPC.adfSAMP_DEN_COEFF[7],sRPC.adfSAMP_DEN_COEFF[8],sRPC.adfSAMP_DEN_COEFF[9], sRPC.adfSAMP_DEN_COEFF[10],sRPC.adfSAMP_DEN_COEFF[11],sRPC.adfSAMP_DEN_COEFF[12],sRPC.adfSAMP_DEN_COEFF[13],sRPC.adfSAMP_DEN_COEFF[14],sRPC.adfSAMP_DEN_COEFF[15],sRPC.adfSAMP_DEN_COEFF[16],sRPC.adfSAMP_DEN_COEFF[17],sRPC.adfSAMP_DEN_COEFF[18],sRPC.adfSAMP_DEN_COEFF[19], sRPC.dfMIN_LONG, sRPC.dfMIN_LAT, sRPC.dfMAX_LONG, sRPC.dfMAX_LAT,sampleOFFSET,lineOFFSET, 0));