MEX-HRSC To Planetary Science Archive Interface Control Document (EAICD) Prepared by Dr. Th. Roatsch Checked by K. Eichentopf (Coordinator) Approval H. Hoffmann ( HRSC Experiment Manager ) Release Prof. Dr.R. Jaumann ( HRSC Principal Investigator ) Distribution List: x Prof. Dr. Jaumann, DLR Berlin D. de Niem, DLR x H. Hoffmann, DLR Berlin x K. Eichentopf, DLR T. Behnke, DLR Berlin Dr. J. Flohrer, DLR W. Fohrmann, DLR A. Clochet, MMS Dr. H. Hirsch, DLR S. Govaers, DSS Dr. F. Lura, DLR U. Schönfeldt, DSS Dr. Nopirakowski, DLR x K.-D. Matz, DLR H. Eggel, ESTEC V. Mertens, DLR D. Titov, ESTEC Dr. E. Ress, DLR x J. Schöneich, DJO x Dr. Th. Roatsch, DLR Dr. S. Sujew, DLR P. Jepsen, JPL P. Zamani, JPL x L. Brumm, DLR Document Change Record Issue Date Document No. Affected Pages 001 24-Nov-2004 HRSC-DLR-TN-4200-008 Original 002 13-Jan-2005 HRSC-DLR-TN-4200-008 11,12 003 26-Jan-2005 HRSC-DLR-TN-4200-008 all 004 14-Feb-2005 HRSC-DLR-TN-4200-008 all 005 16-Mar-2015 HRSC-DLR-TN-4200-008 all Table Of Contents 1 Introduction 6 1.1Purpose and Scope 6 1.2 Archiving Authorities 6 1.3 Contents 6 1.4 Intended Readership 7 1.5 Applicable Documents 7 1.6 Relationships to Other Interfaces 8 1.7 Acronyms and Abbreviations 8 1.7 Contact Names and Addresses 8 2 Overview of Instrument Design, Data Handling Process and Product Generation 9 2.1 Instrument Design Overview 9 2.2 Data Handling Process 9 2.3 Product Generation 10 3 Archive Format and Content 10 3.1 Format and Conventions 10 3.1.1 Deliveries and Archive Volume Format 10 3.1.2 Data Set ID Formation 11 3.1.3 Data Directory Naming Convention 11 3.1.4 Filenaming Convention 11 3.2 Standards Used in Data Product Generation 11 3.2.1 PDS Standards 12 3.2.2 Time Standards 12 3.2.2.1 START_TIME and STOP_TIME Formation 12 3.2.2.2 SPACECRAFT_CLOCK_START_COUNT and SPACECRAFT_STOP_CLOCK_COUNT 12 3.2.3 Reference Systems 12 3.2.4 Other Applicable Standards 13 3.3 Data Validation 13 3.4 Content 14 3.4.1 Volume Set 14 3.4.2 Data Set 14 3.4.3 Directories 14 3.4.3.1 Root Directory 14 3.4.3.2 Calibration Directory 15 3.4.3.3 Catalog Directory 15 3.4.3.4 Index Directory 15 3.4.3.4.1 Dataset Index File, index.lbl and index.tab 15 3.4.3.4.2 Geometric Index File, geoindex.lbl and geoindex.tab 15 3.4.3.4.3 other Index Files 15 3.4.3.5 Browse Directory and Browse Files 15 3.4.3.5 Geometry Directory 16 3.4.3.6 Software Directory 16 3.4.3.7 Gazetter Directory 16 3.4.3.8 Label Directory 17 3.4.3.9 Document Directory 17 3.4.3.10 Extras Directory 17 3.4.3.11 Data Directory 17 3.4.4 Other Data Products 17 3.4.5 In-Flight Data Products 18 3.4.6 Software 18 3.4.7 Documentation 18 3.4.8 Derived and other Data Products 18 4. Detailed Interface Specifications 18 4.1 Data Product Structure 18 4.2 Label and Header Description 18 4.2.1 PDS Label 18 4.2.2 PDS Image Object 18 4.2.3 Keyword Length Limits 19 4.2.4 Data Type Restrictions 19 4.2.5 Interpretation of N/A, UNK and NULL 19 4.2.6 VICAR Label 20 4.2.7 VICAR Format 20 4.3 Binary Data Storage Conventions 21 4.4 PDS Keyword Table 21 4.4 Example PDS Product Label 26 Appendix: Available Software to read PDS files 32 1 INTRODUCTION 1.1 Purpose and Scope The purpose of this EAICD (Experimenter to (Science) Archive Interface Control Document) is two fold. First it provides users of the HRSC instrument with detailed description of the product and a description of how it was generated, including data sources and destinations. Secondly, it is the official interface between the HRSC team and the Planetary Science Archive. 1.2 Archiving Authorities 1.3 Contents This document describes the data flow of the HRSC instrument on MarsExpress from the s/c until the insertion into the PSA for ESA. It includes information on how data were processed, formatted, labeled and uniquely identified. The document discusses general naming schemes for data volumes, data sets, data and label files. Standards used to generate the product are explained. Software that may be used to access the product is explained furtheron. The design of the data set structure and the data product is given. Examples of these are given in the appendix. 1.4 Intended Readership The staff of the archiving authority (Planetary Science Archive, ESA, RSSD, design team) and any potential user of the HRSC data. 1.5 Applicable Documents 1. Planetary Data System Preparation Workbook, February 1, 1995, Version 3.1, JPL, D-7669, Part1 2. Planetary Data System Standards Reference, June 1, 1999, Version 3.3, JPL, D-7669, Part 2 3. MarsExpress Archive Generation, Validation and Transfer Plan, J. Zender, , ESA-MEX-TN-4009, Rev. 1.0, 21-Jun-2001 4. HRSC: the High Resolution Stereo Camera of Mars Express, . G. Neukum1, R. Jaumann and the HRSC Co-Investigator and Experiment Team, ESA SP-1240, 2004. 5. Mars Express - HRSC Data Products Naming Convention, T. Roatsch, HRSC-DLR-TN-4200-001, Issue 005, 6-August-2003. 6. PDS Standards Reference , http://pds.jpl.nasa.gov/documents/sr/index.html 7. Planetary Science Data Archive Technical Note – Geometry and Position Information, Issue 3, Revision 1, J. Diaz del Rio, ESA RSSD Planetary Missions Division, SOP-RSSD-TN-010, 20-September-2004. 8. MarsExpress - HRSC Level-1 Product Description, T. Roatsch, HRSC-DLR-TN-4200-004, Issue 001, 10-November-2000. 9. MarsExpress - HRSC Level-2 Product Description, T. Roatsch, HRSC-DLR-TN-4200-006, Issue 001, 10-November-2000. 10. MarsExpress – HRSC VICAR Label Description Document, T. Roatsch, HRSC-DLR-TN-4200-002, Issue 004, 24-August-2004. 11. Flight User Manual for HRSC on MarsExpress, R. Pischel, HRSC-DLR-MA-4100-001/4D, 24-July-2002 12. The VICAR Image Processing System, http://www-mipl.jpl.nasa.gov/external/vicar.html 13. Navigation and Ancillary Information Facility (NAIF), http://pds-naif.jpl.nasa.gov/ 14. Roatsch, T., Oberst, J., Acton, C., Zender, J.: SPICE Usage on the Mars Express Orbiter. XXVI. General Assembly of the European Geophysical Society, Nice, France, March 25-30, 2001, European Geophysical Society, (2001) 15. Zender, J., Bachman, N., Semenov, B., Acton, C., Roatsch, T.: Implementation Concept for Exchanging Ancillary Spacecraft Data for ESA's Mission to Mars, Mars Express. XXVI. General Assembly of the European Geophysical Society, Nice, France, March 25-30, 2001, European Geophysical Society, (2001) 16. Planetary Science Archive PVV User Manual, J. Zender and D. Heather, SOP-RSSD-UM-004, Issue 1, 06-November-2003 17. Mars Express Agreement on the Long-term Preservation of HRSC Camera Data, ME-EST-TN-11420, Issue 1.09 May 2003 1.6 Relationships to Other Interfaces This document is in close relationship to - Mars Express - HRSC Data Products Naming Convention [5] - MarsExpress - HRSC Level-2 Product Description [9] - MarsExpress – HRSC VICAR Label Description Document [10] The contents of these documents is summarized in this document for easier use. 1.7 Acronyms and Abbreviations CoI Co-Investigator DLR German Aerospace Center ESOC European Space Operation Center ESTEC European Space Research and Technology Center FUB Free University of Berlin HRSC High Resolution Stereo Scanner JPL NASA Jet Propulsion Laboratory PI Principal Investigaror PSA Planetary Science Archive PVV Planetary Data Science Volume Verifier SRC Super Resolution Camera VICAR Video Image Communication and Retrieval 1.8 Contact Names and Addresses Archive generation software Klaus-Dieter Matz, DLR Archive distribution Thomas Roatsch, DLR Levels 1 generation software cognizant engineer Thomas Roatsch, DLR Map projection and generation Frank Scholten, DLR Calibration software and procedures Klaus-Deter Matz, DLR Operations Reñe Pischel, DLR VICAR software cognizant Engineer Robert G. Deen, JPL PDS Central Node MEX Data Engineer Betty Sword, JPL PDS Imaging Node contact Rafael Alanis, JPL 2 OVERVIEW OF INSTRUMENT DESIGN, DATA HANDLING PROCESS AND PRODUCT GENERATION 2.1 Instrument Design Overview The High Resolution Stereo Camera (HRSC), originally developed for the Russian-led Mars-96 mission, was selected as part of the Orbiter payload for ESA s Mars Express mission. The HRSC is a pushbroom scanning instrument with nine CCD line detectors mounted in parallel in the focal plane. Its unique feature is the ability to obtain near-simultaneous imaging data of a specific site at high resolution, with along-track triple stereo, four colours and five different phase angles, thus avoiding any time-dependent variations of the observational conditions. An additional Super-Resolution Channel (SRC) a framing device will yield nested images in the metre-resolution range for detailed photogeologic studies. The spatial resolution from the nominal periapsis altitude of 250 km will be 10 m px 1, with an image swath of 53 km, for the HRSC and 2.3 m px 1 for the SRC. During the mission s nominal operational lifetime of 1 martian year (2 Earth years) and assuming an average HRSC data transfer share of 40%, it will be possible to cover at least 50% of the martian surface at a spatial resolution of d 15 m px 1. More than 70% of the surface can be observed at a spatial resolution of d 30 m px 1, while more than 1% will be imaged at better than 2.5 m px 1. The HRSC will thus close the gap between the medium- to lowresolution coverage and the very high-resolution images of the Mars Observer Camera on the Mars Global Surveyor mission and the in situ observations and measurements by landers. The HRSC will make a major contribution to the study of martian geosciences, with special emphasis on the evolution of the surface in general, the evolution of volcanism, and the role of water throughout martian history. The instrument will obtain images containing morphologic and topographic information at high spatial and vertical resolution, allowing the improvement of the cartographic base down to scales of 1:50 000. The experiment will also address atmospheric phenomena and atmosphere-surface interactions, and will provide urgently needed support for current and future lander missions as well as for exobiological studies. The goals of HRSC on Mars Express will not be met by any other planned mission or instrument. Further information about the insturment and its operation can be found in [4] and [11]. 2.2 Data Handling Process All HRSC data are processed at DLR in Berlin, Germany. The data processing consists of the following steps: - transfer of data from ESOC to DLR - remove all transmission headers to get the original camera data - sort camera data by sensor and combine them with the housekeeping data - decompress the data to get Level 1 - radiometric calibration of the data - calculate footprints of every image file and get Level 2 The formats of the data levels 1 and 2 are described in [8] and [9], respectively. All data processing steps are performed in the VICAR environment [12], a software package developed and maintained by JPL and used for the data processing of many planetary missions. DLR developed specific VICAR modules for every processing step. The cognizitant persons for the specific task are listed in chapter 1.8. Please, adress all questions and comments through the Data Processing Manager (thomas.roatsch@dlr.de). 2.3 Product Generation The starting point for the product generation are the bested data which are delivered by ESOC to the PI teams on CD-ROMs. Therefore, it is very important to get this data set right in time for the product generation. The following steps are the same as for the usual data product generation. The only addition is the final step of conversion from the VICAR format to PDS format and the generation of the complete data sets. This step is also performed at DLR in Berlin. The final products will be sent to the PI and the CoIs who are in charge for the data validation. The data will be send from DLR to PSA after succesful validation and PI approval. 3 ARCHIVE FORMAT AND CONTENT 3.1 Format and Conventions 3.1.1 Deliveries and Archive Volume Format The HRSC data will be delivered to PSA every 6 months. Every delivery contains the data taken during a time period of 6 months. The delivery will be performed only via file transfer, no storage media like CD or DVD will be used. The data will be split in a couple of sub-datasets to avoid file transfer problems with very huge files. All sub-datasets will have a size < 10 GByte. Thesub- datasets will also be compressed (using bzip2) to minimize the file transfer time. The following file naming scheme combining country and instrument name (as suggested by PSA) will be used for the sub-dataset names: DE_DLR_PF_MEXHRSC_oooo where oooo will be the four digit number of the first orbit in a sub-dataset, All sub-datasets will be packed to one single file (only for the file transfer from DLR to PSA) using the UNIX tar command with the following options tar cfvj and the extension bz2 will be added to the filename. 3.1.2 Data Set ID Formation All HRSC data belong to one data set. Therefore, the DATA_SET_ID for all data is constant and has the following value: MEX-M-HRSC/SRC-3-RDR-0010-V3.0 This name follows the standard PDS rules and contains the mission name, the instrument name, describes the level of processing (RDR), the start orbit number (e.g. 0010), and the version number. Version 3 was delivered based on an improved radiometric calibration The DATA_SET_ID must be changed whenever it will become necessary to deliver different versions. 3.1.3 Data Directory Naming Convention The HRSC data are sorted by orbit in the DATA directory, each sub-directory will have the name oooo where oooo is the number of the orbit in which the data were taken. 3.1.4 Filenaming Convention The file naming convention is described in detail in [5]. The image files in the DATA directories follow this convention: HOOOO_MMM_DD2.IMG where OOOO 4 digit orbit number MMM number of the image in this orbit DD sensor name (can be ND,S1,S2,P1,P2,BL,GR,IR,RE,SR) The ‘2’ indicates the level of processing which is archived in PSA/PDS. Please, note that all line sensor data which were taken together will get the same number. 3.2 Standards Used in Data Product Generation 3.2.1 PDS Standards All data apply to version 3.6 of the PDS Standards Reference, please see [1], [6] for details. 3.2.2 Time Standards All time information in the data follows the SPICE time standards. Please, see [13], [14], and [15] for details. Within the data products themselves, the time standard used is ET (Ephemeris Time), which is a double precision number of seconds.  The starting point for this time is the J2000 epoch. This epoch is Greenwich noon on January 1, 2000 Barycentric Dynamical Time. This ephemeris time is calculated from the Spacecraft Onboard Time using the appropriate SPICE routines and the time correlation packages which are provided by ESTEC as a SPICE Clock Kernel. Outside of the products themselves, there are a few instances inthe HRSC data sets where time flags are provided.  The main time values are provided in the data product labels, which provide a start and stop time for the measurement, and a corresponding clock count from the spacecraft.  Below, the standards used to define these values are described. 3.2.2.1     START_TIME and STOP_TIME Formation The PDS formation rule for dates and time in UTC is: YYYY-MM-DDThh:mm:ss.fff   YYYY      year (0000-9999)   MM        month (01-12)   DD      day of month (01-31)   T        date/time separator   hh       hour (00-23)   mm        minute (00-59)   ss       second (00-59)   fff      fractions of second (000-999) (restricted to 3 digits) This standard is followed for all START_TIME and STOP_TIME values in the products included in the HRSC data sets.  3.2.2.2   SPACECRAFT_CLOCK_START_COUNT and SPACECRAFT_CLOCK_STOP_COUNT The SPACECRAFT_CLOCK_START_COUNT and SPACECRAFT_CLOCK_STOP_COUNT values represent the on-board time counters (OBT) of the spacecraft and instrument computers.  This OBT counter is given in the headers of the experiment telemetry source packets.  It contains the data acquisition start time as 32-bit of unit seconds followed by 16-bit of fractional seconds.  The time resolution of the fractional part is 2^-16 = 1.52×10^-5 seconds.  Thus, the OBT is represented as a decimal real number in floating-point notation with 5 digits after the decimal point. A reset of the spacecraft clock is represented by an integer number followed by a slash, e.g. "1/" or "2/". Example: SPACECRAFT_CLOCK_START_COUNT = "1/21983325.39258"   3.2.3 Reference Systems The reference systems used for orbit, attitude, and target body follow the SPICE standards and are defined in the different SPICE kernels. Please, see [3], [13], [14], and [15] for details. All latitudes and longitudes are given in degrees, latitudes are planetocentric. 3.2.4 Other Applicable Standards No other standards are used. 3.3 Data Validation The validation of these volumes is divided into two processes: The first process is to check that the volumes are technically correct: - Insure that the volume is complete, and has correct structure as defined in this document. - Insure that dynamically generated file, such as index and catalog files are correct and complete. - Insure that structure of each generated volume is PDS compliant These steps will be performed using PVV, the PSA Validation and Verification Tool developed by ESTEC [16]. The second process is to check that the image data contained in the data volumes are correct. This will be done by visual inspection by the PI and three CoIs. Specific tools for automated checks may be developed by the teams in charge for this step. 3.4 Content 3.4.1 Volume Set There are no volume sets since the data will be delivered electronically. It is not planned to generate archives on any medium (like CD-ROM or DVD). 3.4.2 Data Set The data set name is defined in chapter 3.1.2. 3.4.3 Directories 3.4.3.1 Root Directory The Root Directory contains the following standard PDS files: AAREADME.TXT VOLDESC.CAT 3.4.3.2 Calibration Directory There is no calibration directory, the data are already radiometrically calibrated. 3.4.3.3 Catalog Directory The Catalog Directory contains the following standard PDS files: CATINFO.TXT DATASET.CAT INST.CAT INSTHOST.CAT MISSION.CAT PERSON.CAT REF.CAT SOFT.CAT 3.4.3.4 Index Directory 3.4.3.4.1 Dataset Index File, index.lbl and index.tab The Index Directory contains the required PDS index files which are generated by PVV [16]. 3.4.3.4.2 Geometric Index File, geoindex.lbl and geoindex.tab The Index Directory also contains the Geometric Index File as defined in [7]. These geometric index files currently do not exist for Phobos and Deimos data. The reason is that it is not possible to calculate the information based on the current SPICE kernels. Both orbit and pointing information must be improved, ESTEC is investigating this problem. 3.4.3.4.3 other Index Files The data set also contains browse index files which are generated using PVV [16]. 3.4.3.5 Browse Directory and Browse Files The browse directory has sub-directories for every orbit which belongs to the data set, the directory name is the four digits orbit number. The browse images are generated from the origial data using the following steps: - reducing the size both in line and sampl direction by a factor of 8 - conversion to unsigned 8 bit data - conversion to raw data - conversion to jpeg using the UNIX program cjpeg with the highest compression quality (100) The filenames of the browse files are the same as the original image files, the extension is changed from IMG for the image files to JPG for the browse files. The browse directory also contains a PDS labels for every browse image. Please, note that huge images (number of lines > 240,00) are reduced by a higher factor to avoid browse images with a number of lines > 30,000 which can not be displayed by some image display programs (like Adobes Photoshop). 3.4.3.6 Geometry Directory There is no Geometry Directory, all external geometry information (orbit data, attitude data, etc.) can be found in the Mars Express SPICE data set. The SPICE data are released as seperate data sets and are necessary for the generation of higher data levels. All other files necessary for the generation of higher data levels are included in the software directory (cahper 3.7). SPICE kernels will not be available as separate release at the time of the first HRSC data release, unfortunately. The user of the HRSC data has to get the SPICE kernels from the ftp server at ESTEC ftp://gorilla.estec.esa.int/pub/projects/mex/data/spice/kernels/ or from the ftp mirror at NAIF ftp://naif.jpl.nasa.gov/pub/naif/MEX/kernels/ 3.4.3.7 Software Directory The Software Directory contains the following files: GEOCAL.LBL GEOCAL.ZIP MINIVICAR.LBL MINIVICAR.ZIP SOFTINFO.TXT SOFTINFO.TXT is the standard PDS info file for this directory. GEOCAL.ZIP is a zip-file which contains the geomteric calibration files (one file per HRSC line sensor) which are necessary to run the geometric correction software (contained in MINIVICAR.ZIP), GEOCAL.LBL is the standard PDS label file for this zip-file. MINIVICAR.ZIP is a zip-file which contains the source code and necessary utilities to build the programs (both forLinux-RedHat-Enterprise and Sun-Solaris 9) listed below, MINIVICAR.LBL is the standard PDS label file for this zip-file. List of programs contained in MINIVICAR.ZIP: label a program to list the label of the files contained in the data directory xvd a program to display these data hrpref2asc a program to list the binary prefix of these data hrfill a program to interpolate over bad pixels (e.g. blemishes, saturated pixels) flcform_lut a program to generate a loock-up table for the 16-bit to 8-bit conversion of the image data dlr12to8 a program to perform this conversion (both without and with look-up table) hrortho a program for the geometric correction and map projection of HRSC line sensor data frameortho a program for the geometric correction and map projection of SRC images MINIVICAR.ZIP also contains a converter (written in JAVA) to convert the images into a couple of image formats. The installation and usage of the software is described in HRSC_MINIVICAR.TXT which can be found in the doument directory. 3.4.3.8 Gazetter Directory There is no Gazetter Directory. 3.4.3.9 Label Directory There is no Label directory. 3.4.3.10 Document Directory This directory contains the documentation for the HRSC data sets. The content is: - DOCINFO.TXT the standard PDS info file. - HRSC_EAICD.LBL the label for the Experimenter to Archive ICD - HRSC_EAICD.PDF the Adobe PDF file of the xperimenter to Archive ICD - HRSC_EAICD.TXT the Text file of the experimenter to Archive ICD - HRSC_ESA_SP.LBL the label for the HRSC Instrument Description published in the ESA SP-1240 - HRSC_ESA_SP.PDF the Adobe PDF file of the ESA SP-1240 - HRSC_LABEL.LBL the label for the HRSC VICAR and PDS label table - HRSC_LABEL.PDF the Adobe PDF file of the HRSC VICAR and PDS label table - HRSC_LABEL_HEADER.LBL the label for the HRSC VICAR and PDS label description - HRSC_LABEL_HEADER.PDF the Adobe PDF file of the HRSC VICAR and PDS label description - HRSC_MINIVICAR.LBL the label for the MINIVICAR documentation - HRSC_MINIVICAR.TXT the Text file describing the how to install and run MINIVICAR - VICAR2.LBL the Label for the description of the VICAR labels - VICAR2.TXT Text file describing the VICAR label. 3.4.3.11 Extras Directory There is no Extras Directory. 3.4.3.12 Data Directory The Data Directory contains sub-directories for every orbit which is part of the data set, the diretory names are the four digits orbit number. The contents of these sub-directories is described in 3.4.8. 3.4.4 Other Data Products No Pre-Flight Data Products, Sub-System test data, and instrument calibration data will be delivered to PSA/PDS. 3.4.5 In-Flight Data Products The HRSC data archive contains al l data which were taken in Mars orbit from Mars and its satellites Phobos and Deimos. The data are radiometrically calibrated, the HRSC team calls them level-2 data. The HRSC team will not archive the uncalibrated data in the PSA as agreed in [17]. These data can be used both forcross-instrument calibration (e.g. with the spectrometer OMEGA) or with instruments from other missions (e.g. from NASAs MER lander mission). 3.4.6 Software The HRSC processing software was developed in the VICAR environment [12]. VICAR was developed by NASA/JPL and was used for the processing of camera data from many planetary missions (e.g. Viking, Galeileo). The data processing team at DLR in Berlin developed specific modules to process the HRSC data. These modules perform the following steps: - remove all telemetry headers from the data - sort the data by sensor and combine the image data with the housekeeping data - decompression of the data - radiometric calibration of the data - calculation of the footprints for every image 3.4.7 Documentation The contents of the documentation directory is described in 3.4.3.10. 3.4.8 Derived and other Data Products There are currently no plans to deliver derived and other data products. Also, no data based on the cooperation with other Mars Express teams will be delivered. 4. DETAILED INTERFACE SPECIFICATIONS 4.1. Data Product Structure The data structure consists of an ASCII PDS label, followed by an embedded ASCII VICAR label, followed by a n x m block of binary image data. Inherent to the VICAR label is the possibility of an ASCII EOL label being appended after the binary data in order to handle label modifications. This EOL label is simply a continuation field for the main VICAR label, when there is no more space for expansion before the image data. 4.2 Label and Header Descriptions 4.2.1 PDS Label HRSC data have an attached PDS label. A PDS label is object-oriented and describes the objects in the data file. The PDS label contains keywords for product identification. The label also contains descriptive information needed to interpret or process the data in the file. PDS labels are written in Object Description Language (ODL [1]. PDS label statements have the form of "keyword = value". Each label statement is terminated with a carriage return character (ASCII 13) and a line feed character (ASCII 10) sequence to allow the label to be read by many operating systems. Pointer statements with the following format are used to indicate the location of data objects in the file: ^object = location where the carat character (^, also called a pointer) is followed by the name of the specific data object. The location is the 1-based starting record number for the data object within the file. 4.2.2 PDS Image Object An IMAGE object is a two-dimensional array of values, all of the same type, each of which is referred to as a sample. IMAGE objects are normally processed with special display tools to produce a visual representation of the samples by assigning brightness levels or display colors to the values. An IMAGE consists of a series of lines, each containing the same number of samples. The required IMAGE keywords define the parameters for simple IMAGE objects: * LINES is the number of lines in the image. * LINE_SAMPLES is the number of samples in each line. * SAMPLE_BITS is the number of bits in each individual sample. * SAMPLE_TYPE defines the sample data type. The IMAGE object has a number of keywords relating to image statistics. These keywords will be present in all data, the statistics keywords are: * MEAN * MEDIAN * MAXIMUM * MINIMUM * STANDARD_DEVIATION Many variations on the basic IMAGE object are possible with the addition of optional keywords and/or objects. The “^IMAGE” keyword identifies the start of the image data and will skip over the VICAR label. 4.2.3 Keyword Length Limits All PDS keywords are limited to 30 characters in length (Section 12.7.3 in PDS Standards Reference). Therefore, software that reads HRSC PDS labels must be able to ingest keywords up to 30 characters in length. 4.2.4 Data Type Restrictions In order to accomodate VICAR dual-labeled files, 16-bit data must be stored as signed data. Unsigned 16-bit data is not supported. 4.2.5 Interpretation of N/A, UNK, and NULL During the completion of data product labels or catalog files, one or more values may not be available for some set of required data elements. In this case PDS provides the symbolic literals “N/A”, “UNK”, and “NULL”, each of which is appropriate under different circumstances. * “N/A” (“Not Applicable”) indicates that the values within the domain of this data element are not applicable in this instance. * “UNK” (“Unknown”) indicates that the value for the data element is not known and never will be. “NULL” is used to flag values that are temporarily unknown. It indicates that the data preparer recognizes that a specific value should be applied, but that the true value was not readily available. “NULL” is a placeholder 4.2.6 VICAR Label For all data products, an embedded VICAR label follows the PDS label and is pointed to by the PDS pointer “^IMAGE_HEADER”. The VICAR label is also organized in an ASCII, “keyword = value” format, although there are only spaces between keywords (no carriage return/line feeds as in PDS). The information in the VICAR label is an exact copy of the information in the PDS label as defined in the next section. 4.2.7 VICAR Format The reader is referred to the VICAR File Format document for details of the format, which is available at the URL “http://www-mipl.jpl.nasa.gov/vicar/vic_file_fmt.html”. The following text is an excerpt which describes the basic structure: A VICAR file consists of two major parts: the labels, which describe what the file is, and the image area, which contains the actual image. The labels are potentially split into two parts, one at the beginning of the file, and one at the end. Normally, only the labels at the front of the file will be present. However, of the EOL keyword in the system label (described below) is equal to 1, then the EOL labels (End Of file Labels) are present. This happens if the labels expand beyond the space allocated for them. The VICAR file is treated as a series of fixed-length records, of size RECSIZE (see below). The image area always starts at a record boundary, so there may be unused space at the end of the label, before the actual image data starts. The label consists of a sequence of "keyword=value" pairs that describe the image, and is made up entirely of ASCII characters. Each keyword-value pair is separated by spaces. Keywords are strings, up to 32 characters in length, and consist of uppercase characters, underscores (“_”), and numbers (but should start with a letter). Values may be integer, real, or strings, and may be multiple (e.g. an array of 5 integers, but types cannot be mixed in a single value). Spaces may appear on either side of the equals character (=), but are not normally present. The first keyword is always LBLSIZE, which specifies the size of the label area in bytes. LBLSIZE is always a multiple of RECSIZE, even if the labels don't fill up the record. If the labels end before LBLSIZE is reached (the normal case), then a 0 byte terminates the label string. If the labels are exactly LBLSIZE bytes long, a null terminator is not necessarily present. The size of the label string is determined by the occurrence of the first 0 byte, or LBLSIZE bytes, whichever is smaller. If the system keyword EOL has the value 1, then End-Of-file Labels exist at the end of the image area (see above). The EOL labels, if present, start with another LBLSIZE keyword, which is treated exactly the same as the main LBLSIZE keyword. The length of the EOL labels is the smaller of the length to the first 0 byte or the EOL's LBLSIZE. Note that the main LBLSIZE does not include the size of the EOL labels. In order to read in the full label string, simply read in the EOL labels, strip off the LBLSIZE keyword, and append the rest to the end of the main label string. 4.3 Binary Data Storage Conventions HRSC data are stored as binary data. The data are stored in signed 16-bit integers. The PDS and VICAR labels are stored as ASCII text. The ordering of bits and bytes is only significant for pixel data; all other labeling information is in ASCII. All data are stored as Most Significant Byte first ("big-endian", as used by e.g. Sun computers and Java) 4.4 PDS keyword table The same keywords are used for all data. These keywords are described in the following table: FILE_NAME usual default name of the output file; this entry allows the user to check for accidental renaming of files, filename without path   string   DATA_SET_ID The data_set_id element is a unique alphanumeric identifier for a data set or a data product.   string MEX-M-HRSC-3-RDR-V1.0 DETECTOR_ID identifies which of the ten CCD detectors was used for this particular image.   string MEX_HRSC_S2, MEX_HRSC_RED, MEX_HRSC_P2, MEX_HRSC_BLUE, MEX_HRSC_NADIR, MEX_HRSC_GREEN, MEX_HRSC_P1, MEX_HRSC_IR, MEX_HRSC_S1, MEX_HRSC_SRC,MEX_HRSC_10, MEX_HRSC_11 EVENT_TYPE identifies the classification of an event, HRSC specific, to be defined by HRSC planning group   string   INSTRUMENT_HOST_ID The instrument_host_id element provides a unique identifier for the host where an instrument is located.   strig MEX INSTRUMENT_HOST_NAME full name of the spacecraft   string MARS_EXPRESS INSTRUMENT_ID The instrument_id element provides an abbreviated name or acronym which identifies an instrument.   string HRSC INSTRUMENT_NAME full name of an instrument   string HIGH_RESOLUTION_STEREO_SCANNER MISSION_NAME full name of mission   string MARS_EXPRESS MISSION_PHASE_NAME The mission_phase_name element provides the commonly-used identifier of a mission phase.   string   PROCESSING_LEVEL_ID identifies the processing level of a data set; parameter must be updated after each processing step according to the program specification , DLR-Levels   int 2 PRODUCT_CREATION_TIME The product_creation_time element defines the UTC system format time when a product was created.   string   PRODUCT_ID The product_id data element represents a permanent, unique identifier assigned to a data product by its producer.   string   SPACECRAFT_CLOCK_START_COUNT provides the value of the spacecraft clock at the beginning of a time period of interest. This is the same for all line sensors and SRC images during one imaging sequence.   string   SPACECRAFT_CLOCK_STOP_COUNT provides the value of the spacecraft clock at the end of a time period of interest. This is the same for all line sensors and SRC images during one imaging sequence.   string   START_TIME date and time of recording of the first image line in UTC format "YYYY-MM-DDTHH:MM:SS.MMMZ" (corresponds to the ephemeris time prefix entry of that line )   string   STOP_TIME date and time of recording of the last image line in UTC format "YYYY-MM-DDTHH:MM:SS.MMMZ" (corresponds to the ephemeris time prefix entry of that line )   string   ASCENDING_NODE_LONGITUDE value of the angle of the xy-plane of the J2000 coordinate system to the ascending node computed from the spacecraft's position- and velocity vector at periapsis (not to be used during test and cruise) deg real   MAXIMUM_RESOLUTION highest resolution in an image m/pixel real FOOTPRINT_POINT_LATITUDE The footprint_point_latitude element provides the latitude of a point within an array of points along the border of a footprint, described as a polygon, outlining an imaged area on the planet's surface. Latitude values are planetocentric. deg real (100)   FOOTPRINT_POINT_LONGITUDE The footprint_point_longitude element provides the longitude of a point within an array of points along the border of a footprint, described as a polygon, outlining an imaged area on the planet's surface. Longitude values are planetocentric. deg real (100)   ORBIT_NUMBER number of the orbital revolution of the s/c around the target body (not to be used during test and cruise)   int   ORBITAL_ECCENTRICITY value of orbit eccentricity computed from the spacecraft's position- and velocity vector at periapsis (not to be used during test and cruise)   real   ORBITAL_INCLINATION value of the angle of inclination with respect to the xy-plane computed from the spacecraft's position- and velocity vector at periapsis   real   ORBITAL_SEMIMAJOR_AXIS value of orbit semi-major axis cumputed from spacecraft 's position - and velocity vector at periapsis (not to be used during test and cruise) km real   PERIAPSIS_ALTITUDE The PERIAPSIS_ALTITUDE element provides the distance between the spacecraft and the target body at periapsis. Periapsis is the closest approach point of the spacecraft to the target body in its orbit around the target body. Note: For MARS EXPRESS, the al km real   PERIAPSIS_ARGUMENT_ANGLE angle in the xy-plane of the J2000 coordinate system from the ascending node to periapsis (not to be used during test and cruise) deg real   PERIAPSIS_TIME The PERIAPSIS_TIME element is the time, in UTC format "YYYY-MM-DDThh:mm:ss[.fff]Z", when the spacecraft passes through periapsis. Periapsis is the closest approach point of the spacecraft to the target body in its orbit around the target body. (not to be time string   SPACECRAFT_ORIENTATION The spacecraft orientation element provides the orientation of a spacecraft in orbit or cruise in respect to a given frame. E.g. a non-spinning spacecraft might be flown in +Y or -Y direction in respect to the spacecraft mechanical build frame. This element shall be used in combination with the keyword spacecraft_orientation_desc that describes the convention used to describe the spacecraft orientation. The spacecraft orientation shall be given as a 3-tuple, one value for the x,y and z axes   real {(0,1,0), (0,-1,0)} SPACECRAFT_POINTING_MODE The spacecraft pointing element provides information on the pointing mode of the spacecraft. The definition of the modes and the standard values are given in the s/c pointing mode description element, that shall always accompany the keyword   string {"NADIR", "ALONGTRACK", "ACROSSTRACK", "TRACKING" RIGHT_ASCENSION The right_ascension element provides the right ascension value. Right_ascension is defined as the arc of the celestial equator between the vernal equinox and the point where the hour circle through the given body intersects the Earth's mean equator (reckoned eastward). degree real DECLINATION The declination element provides the value of an angle, corresponding to latitude, used to fix position on the celestial sphere. Declination is measured positive north and negative south of the celestial equator, and is defined relative to a specified reference period or epoch. degree real OFFSET_ABGLE offset from nadir looking during ACROSS_TRACKING or ALONG_TRACKING degrees real SPACECRAFT_SOLAR_DISTANCE the spacecraft's distance to the Sun measured from its position vector at periapsis (not to be used during test and cruise) km real   TARGET_NAME name of the target body   string MARS,PHOBOS,DEIMOS,SKY DETECTOR_TEMPERATURE TEMPERATURE SPL_F (Dornier HKD doc.) for sensor P2,RE,S2, TEMPERATURE SPL_N (Dornier HKD doc.) for sensor BL,ND,GR, TEMPERATURE SPL_A (Dornier HKD doc.) for sensor P1,IR,S1; , temp_fpm in hrhk23, SRC first level is 2 Celsius real   FOCAL_PLANE_TEMPERATURE TEMPERATURE OPTICS in Dornier HKD document, HRSC only, temp_co in hrhk23 Celsius real   INST_CMPRS_NAME flag indicating whether spacecraft on-board compression has been bypassed, in which case, the received data were uncompressed; HRSC: config. byte 1/2, bit 2 = 1 ==> BYPASS_FLAG = "YES"   string NONE,"DIGITAL COSINE TRANSFORMATION" INST_CMPRS_QUALITY The compression index parameter in the table of scale factors (TABF). It is in the range from 0 to 15. A higher value means more compression   int 0,1,2,3,4,5,...,15 INST_CMPRS_QUANTZ_TBL_ID Number of the quantization matrix in the PMEM file, TB*2 + Malgo   int 0,1,2,3 INST_CMPRS_RATIO mean compression rate for the entire image data represented in the file, this number is =1 for data collected in the bypass mode.   real   INSTRUMENT_TEMPERATURE TEMPERATURE FEE in Dornier HKD document, temp_fee in hrhk23, SRC first level is 2 Celsius real   LENS_TEMPERATURE TEMPERATURE OPTICAL BENCH in Dornier HKD document, HRSC only, temp_ob in hrhk23 Celsius real   MACROPIXEL_SIZE macropixel format   int 1,2,4,8 MISSING_FRAMES The MISSING_FRAMES element is the total number of frames that are missing from a file. (Cf. ERROR_FRAMES and OVERFLOW_FRAMES). Note: For MARS EXPRESS, a frame, which is also called a "row", is eight lines of data. Each line, in turn, is composed of a s   int   PIXEL_SUBSAMPLING_FLAG The PIXEL_SUBSAMPLING_FLAG element indicates whether this product is the result of subsampling of the data, HRSC only.   string Y,N SAMPLE_FIRST_PIXEL position of the first pixel on the CCD line that contributes to the first VICAR macropixel (may still be dark or dummy pixels for level 1 images); config bytes 3,4; bits 0-12; note: FIRST_PIXEL = start_pixel_number + 1   int   SIGNAL_CHAIN_ID The SIGNAL_CHAIN_ID element identifies the signal chain (electronic signal path) number selected for charge-coupled device (CCD) output. Note: For MARS EXPRESS the High-Resolution Stereo Colour Imager (HRSC) is composed of 10 channels, each consisting of   int 0,1,2,3 BANDWIDTH The bandwidth element provides a measure of the spectral width of a filter or channel. For a root-mean-square detector this is the effective bandwidth of the filter i.e., the full width having a flat response over the bandwidth and zero response elsewhere. For HRSC this value is for the whole sensor (CCD+Optics). nm real   CENTER_FILTER_WAVELENGTH The center_filter_wavelength element provides the mid_point wavelength value between the minimum and maximum instrument filter wavelength values. For HRSC this value is for the whole sensor (CCD+Optics). nm real   RADIANCE_OFFSET The radiance_offset element provides the constant value by which a stored radiance is added. Note: Expressed as an equation: true_radiance_value = radiance_offset + radiance_scaling_factor * stored_radiance_value. W/m2/steradian real   RADIANCE_SCALING_FACTOR The radiance_scaling_factor element provides the constant value by which a stored radiance is multiplied. Note: Expressed as an equation: true_radiance_value = radiance_offset + radiance_scaling_factor * st W/m2/steradian real   REFLECTANCE_SCALING_FACTOR The reflectance_scaling_factor element identifies the conversion factor from DN to reflectance.   real   4.5. Example PDS Product Label PDS_VERSION_ID = PDS3 /* FILE DATA ELEMENTS */ RECORD_TYPE = FIXED_LENGTH RECORD_BYTES = 10420 FILE_RECORDS = 251387 LABEL_RECORDS = 2 /* POINTERS TO DATA OBJECTS */ ^IMAGE_HEADER = 3 ^IMAGE = 4 /* IDENTIFICATION DATA ELEMENTS */ FILE_NAME = "H0024_0000_ND2.IMG" DATA_SET_ID = "MEX-M-HRSC/SRC-3-RDR-0010-V1.0" DETECTOR_ID = MEX_HRSC_NADIR EVENT_TYPE = "MARS-LOCAL-CARTOGRAPHY-Im-Lc-Tc" INSTRUMENT_HOST_ID = MEX INSTRUMENT_HOST_NAME = "MARS EXPRESS" INSTRUMENT_ID = HRSC INSTRUMENT_NAME = "HIGH RESOLUTION STEREO CAMERA" MISSION_NAME = "MARS EXPRESS" MISSION_PHASE_NAME = MC_Phase_1 PROCESSING_LEVEL_ID = 2 PRODUCT_CREATION_TIME = 2004-11-24T19:53:14.000Z PRODUCT_ID = "H0024_0000_ND2.IMG" /* TIME DATA ELEMENTS */ SPACECRAFT_CLOCK_START_COUNT = "1/0022332827.31245" SPACECRAFT_CLOCK_STOP_COUNT = "1/0022333524.07540" START_TIME = 2004-01-16T11:35:55.639Z STOP_TIME = 2004-01-16T11:52:36.574Z /* ORBITAL DATA ELEMENTS */ ASCENDING_NODE_LONGITUDE = 228.47 MAXIMUM_RESOLUTION = 11.7 FOOTPRINT_POINT_LATITUDE = (-51.592,-51.3204,-51.3182,-50.2127, -49.1343,-47.0532,-45.0716,-44.1141, -43.1777,-42.2627,-40.4919,-38.7932, -37.1618,-34.0794,-31.9082,-30.5201, -29.8429,-29.1757,-27.2292,-26.5962, -25.9749,-25.3606,-24.7522,-22.3965, -21.8232,-21.2573,-20.691,-20.1401, -18.502,-17.9641,-17.4256,-16.345, -15.8032,-15.2604,-13.6279,-13.0823, -12.5358,-11.9887,-10.3444,-9.79539, -9.24578,-8.69579,-7.59391,-7.04251, -6.4911,-5.38784,-4.28411,-3.73212, -3.18019,-2.07651,-1.52482,-0.973341, 0.679678,3.42738,4.52295,5.61604, 7.79353,9.41786,12.1229,12.1305,12.1303 ,11.5946,11.0577,10.5197,9.98082, 9.44085,8.89994,6.18221,-3.71932, -5.92888,-6.48098,-7.03285,-7.58452, -8.13596,-8.68704,-9.78828,-10.3382, -11.4364,-11.9848,-12.5326,-13.0799, -13.6262,-15.2612,-15.8047,-16.3473, -16.8891,-17.9697,-18.5084,-19.0461, -21.8354,-22.9913,-23.5757,-26.6196, -28.5455,-29.2072,-34.1319,-34.8845, -45.2103,-48.2611,-51.592) FOOTPRINT_POINT_LONGITUDE = (175.791,171.024,171.001,171.293, 171.557,172.005,172.39,172.557,172.701, 172.843,173.092,173.309,173.491,173.8, 173.991,174.097,174.144,174.195,174.321 ,174.357,174.389,174.422,174.449, 174.566,174.588,174.613,174.635,174.656 ,174.702,174.713,174.736,174.764, 174.772,174.775,174.811,174.827,174.834 ,174.839,174.883,174.904,174.916, 174.931,174.913,174.901,174.901,174.909 ,174.914,174.912,174.914,174.915, 174.913,174.913,174.907,174.888,174.878 ,174.866,174.836,174.809,174.756, 176.143,176.149,176.143,176.139,176.138 ,176.133,176.13,176.127,176.115,176.094 ,176.094,176.093,176.09,176.089,176.089 ,176.088,176.092,176.091,176.084, 176.083,176.082,176.087,176.081,176.077 ,176.08,176.081,176.084,176.085,176.082 ,176.081,176.072,176.067,176.063, 176.051,176.048,176.042,176.014,176.006 ,175.906,175.858,175.791) ORBIT_NUMBER = 24 ORBITAL_ECCENTRICITY = 0.667 ORBITAL_INCLINATION = 86.66 ORBITAL_SEMIMAJOR_AXIS = 11020.2 PERIAPSIS_ALTITUDE = 274.22 PERIAPSIS_ARGUMENT_ANGLE = 355.69 PERIAPSIS_TIME = 2004-01-16T11:48:35.000Z SPACECRAFT_ORIENTATION = (0.0,1.0,0.0) ^MEX_ORIENTATION_DESC = "MEX_ORIENTATION_DESC.TXT" SPACECRAFT_POINTING_MODE = ACROSSTRACK ^MEX_POINTING_DESC = "MEX_POINTING_DESC.TXT" RIGHT_ASCENSION = -1e+32 DECLINATION = -1e+32 OFFSET_ANGLE = 2.04 SPACECRAFT_SOLAR_DISTANCE = 2.23543e+08 TARGET_NAME = MARS /* CAMERA DATA ELEMENTS */ DETECTOR_TEMPERATURE = 18.3705 FOCAL_PLANE_TEMPERATURE = 9.8067 INST_CMPRS_NAME = "DISCRETE COSINE TRANSFORMATION (DCT)" INST_CMPRS_RATIO = 7.43431 INST_CMPRS_QUALITY = 0 INST_CMPRS_QUANTZ_TBL_ID = 0 INSTRUMENT_TEMPERATURE = 11.4379 LENS_TEMPERATURE = 10.0106 MACROPIXEL_SIZE = 1 MISSING_FRAMES = 0 PIXEL_SUBSAMPLING_FLAG = N SAMPLE_FIRST_PIXEL = 80 SIGNAL_CHAIN_ID = 0 /* RADIOMETRIC DATA ELEMENTS */ BANDWIDTH = 177.0 CENTER_FILTER_WAVELENGTH = 677.5 RADIANCE_OFFSET = 0.0 RADIANCE_SCALING_FACTOR = 0.0695439 REFLECTANCE_SCALING_FACTOR = 0.00184611 /* DATA OBJECT DEFINITIONS */ OBJECT = IMAGE INTERCHANGE_FORMAT = BINARY LINES = 251384 LINE_PREFIX_BYTES = 68 LINE_SAMPLES = 5176 SAMPLE_TYPE = MSB_INTEGER SAMPLE_BITS = 16 BANDS = 1 BAND_STORAGE_TYPE = BAND_SEQUENTIAL MAXIMUM = 209 MEAN = 127.59 MINIMUM = 62 STANDARD_DEVIATION = 23.3313 END_OBJECT = IMAGE /* IMAGE HEADER DATA ELEMENTS */ OBJECT = IMAGE_HEADER HEADER_TYPE = VICAR2 INTERCHANGE_FORMAT = ASCII BYTES = 10420 ^DESCRIPTION = "VICAR2.TXT" END_OBJECT = IMAGE_HEADER END Appendix: Available Software to read PDS files The software delivery which is part of the data sets contains the display program xvd which can display images both in PDS and VICAR format. This programs uses the standard PDS library to open and read the data in PDS format. This library can not handle images which are larger than 2 GBytes, unfortunately. The same problem occurs also for other PDS programs (e.g. nasaview) which can not read large files. The only solution currently is to display the large files as VICAR files using xvd. DLR Institut für Planetenforschung HRSC on MarsExpress Doc.-No. : HRSC-DLR-TN-4200-008 Issue : 005 Date : 16-Mar-2015 Page : 1 DLR Institut für Planetenforschung HRSC on MarsExpress Doc.-No. : HRSC-DLR-TN-4200-008 MEX-HRSC to Planetary Science Archive Issue : 005 Interface Control Document (EAICD) Date : 16-Mar-2015 Page : 2 of 31