KPL/IK VO2 Visual Imaging Subsystem Camera B Instrument Kernel ======================================================================== This Viking Orbiter 1 (VO2) SPICE instrument kernel (I-kernel) contains the instrument geometric parameters for the Visual Imaging Subsystem Camera B (VISB) taken from Supplemental Experiment Data Record file generated by the Viking Project, from PDS Catalog file for VO2 VISB and from personal notes provided by Thomas C. Duxbury, JPL. Version and Date -------------------------------------------------------- Version 2.0 -- December 6, 2005 FOV definition, line/sample dimensions, and optical distortion data were added to the file. Version 1.1 -- April 20, 2000 Camera mounting alignment information provided by Thomas C. Duxbury was added to the file. Version 1.0 -- July 22, 1996 Contact Information -------------------------------------------------------- Contact NAIF node of the Planetary Data System if you have any questions regarding this IK file: Charles H. Acton, Jr (818)-354-3869 chuck.acton@jpl.nasa.gov Boris V. Semenov (818)-354-8136 boris.semenov@jpl.nasa.gov References -------------------------------------------------------- 1. VO2 Supplemental Experiment Data Record (SEDR) file, 1976-1980. 2. VO Camera Alignment and Optical Distortion Parameters, personal communication from Thomas C. Duxbury/JPL, March-July, 1996/December 2005. 3. Latest version of VO2 FK file. 4. PDS Catalog File for VO2 VISB instrument. Implementation Notes -------------------------------------------------------- This file is used by the SPICE system as follows: programs that make use of this I-kernel must `load' the kernel, normally during program initialization. Loading the kernel associates data items with their names in a data structure called the `kernel pool'. The SPICELIB routine FURNSH loads a kernel file into the pool as shown below. CALL FURNSH ( ) Naming Conventions -------------------------------------------------------- All names referencing data in this I-kernel are of the form INS_ The instrument ID is an negative integer value that uniquely identifies an instrument. For VO2, instrument IDs are of the form -30xxx. The upper bound on the length of a name is 32 characters. Instrument Overview -------------------------------------------------------- From [4]: "Each Viking Orbiter was equipped with two identical vidicon cameras. The camera system is commonly called the Visual Imaging Subsystem (VIS). Each camera consists of a telescope, a slow scan vidicon, a filter wheel, and associated electronics. The filter wheel contains blue, minus blue, violet, clear, green, and red filters. The angular field of view as defined by the reseau pattern is 1.51 by 1.69 degrees. Since the scan lines go beyond the reseau pattern in the line direction the active field of view is about 1.54 degrees in this direction. The actual ground area covered by an image varies as a function of spacecraft altitude and emission angle. The digital image is generated by scanning the vidicon face plate. The signal is digitized as a 7-bit number. The image contains 1056 horizontal lines. There are 1182 samples in each line exposed to incoming light. The vidicon samples 11 pixels on either side of the raster onto an opaque mask located at the front of each vidicon. Hence, 1204 samples per line are telemetered to Earth, but only 1182 contain information. Each camera can be commanded to acquire an image every 8.96 seconds. By alternating cameras, an image can be taken every 4.48 seconds." Mounting Alignment -------------------------------------------------------- Refer to the latest version of VO2 Frames Definition Kernel ([3]) for the VISB frame definition and mounting alignment information. Optical Parameters -------------------------------------------------------- The following nominal VO2 VISB first order optical parameters are provided in [4]: ------------------------------------------------- parameter value ------------------------------------------------- Focal Length, mm 474.610 f/ratio 3.5 FOV Angular Size, deg 1.692 x 1.543 IFOV, deg/pixel 0.00142 ------------------------------------------------- The values in the keywords are given in the same units as in the table above except for angles which are given in radians. \begindata INS-30002_FOCAL_LENGTH = ( 474.610 ) INS-30002_F/RATIO = ( 3.5 ) INS-30002_FOV_ANGULAR_SIZE = ( 0.02953097, 0.02693043 ) INS-30002_IFOV = ( 0.00002478, 0.00002478 ) \begintext Detector Parameters -------------------------------------------------------- The following nominal detector geometry parameters are provided in [4]: ----------------------------------------------- parameter value ----------------------------------------------- Pixel size, microns 11.76 (a) Number of pixels/mm 85.01536228 (a) Detector Size (physical) 1204 by 1056 Detector Array Center 601.5, 527.5 ----------------------------------------------- (a) Nominal pixel size and number of pixels per mm were computed from the nominal focal length and IFOV provided in the ``Optics Parameters'' section of this file. The values in the keywords are given in the same units as in the table above. \begindata INS-30002_PIXEL_SIZE = ( 11.76 ) INS-30002_K = ( 85.01536228 ) INS-30002_PIXEL_SAMPLES = ( 1204 ) INS-30002_PIXEL_LINES = ( 1056 ) INS-30002_CCD_CENTER = ( 601.5, 527.5 ) \begintext FOV Definition --------------------------------------------------------------------------- VO2 VISB FOV defined in this section is based on the VISB detector FOV angular size provided in the Table in "Optical Parameters" section above. The set of keywords in the following data section defines nominal VO2 VISB FOV with respect to the VO2_VISB frame to be a rectangle with angular size of 1.692 by 1.543 degrees centered about the boresight vector along +Z axis of VO2_VISB frame. \begindata INS-30002_FOV_FRAME = 'VO2_VISB' INS-30002_FOV_SHAPE = 'RECTANGLE' INS-30002_BORESIGHT = ( 0.0000000000000000 0.0000000000000000 +1.0000000000000000 ) INS-30002_FOV_CLASS_SPEC = 'ANGLES' INS-30002_FOV_REF_VECTOR = ( +1.0000000000000000 0.0000000000000000 0.0000000000000000 ) INS-30002_FOV_REF_ANGLE = ( 0.8460 ) INS-30002_FOV_CROSS_ANGLE = ( 0.7715 ) INS-30002_FOV_ANGLE_UNITS = 'DEGREES' \begintext Relationship Between VISB Reference Frame, FOV, and Line/Sample Coordinates --------------------------------------------------------------------------- This diagram illustrates VISB ``apparent'' FOV with respect to the ``VO2_VISB'' frame: 1204 pixels/line Line 1, Pixel 1 Line 1, Pixel 1204 --- *-------------------* ^ | | | | | | | | | | +Zvisa | | 1.543 deg | x-------------> +Xvisa | | | | | 1056 | | | | lines | | | V | | | --- +---------|---------* | Line 1056, Pixel 1204 | +Yvisa V | 1.692 deg | Boresight (+Z axis) |<----------------->| is into the page | | Optical Distortion Specification -------------------------------------------------------- The following optical distortion parameters for the VO2 VISB have been provided by Thomas C. Duxbury ([3]): F= 474.1000 (focal length) K= 83.0130 (distortion coefficients; the 1st and 5th elements -0.1670 provide the number of sample per mm and number of 0.0289 lines per mm correspondingly.) 0.6680 82.6700 -0.0464 S0= 605.5000 (boresight sample coordinate) L0= 529.2200 (boresight line coordinate) Using these parameters the sample/line coordinates ``S,L'' for a given view 3d vector ``P'' in the camera frame can be computed as follows: X = F * P(1) / P(3) Y = F * P(2) / P(3) XY = X * Y S = K(1)*X + K(2)*Y + K(3)*XY + S0 L = K(4)*X + K(5)*Y + K(6)*XY + L0 These parameters are provided in the keywords in this block. Note that this distortion model must be used in combination with camera alignment data also provided [3]. Therefore, the reference frame that should be used with the model is ``VO2_VISB_TD''. \begindata INS-30002_ODM_FRAME = 'VO2_VISB_TD' INS-30002_ODM_F = 474.1000 INS-30002_ODM_K = ( 83.0130 -0.1670 0.0289 0.6680 82.6700 -0.0464 ) INS-30002_ODM_S0 = 605.5000 INS-30002_ODM_L0 = 529.2200 \begintext Mounting Alignment -- Heritage Data -------------------------------------------------------- The camera alignment is provided in the VO2 FK file. The data in this section is kept for backward compatibility only. The orientation of the Camera B coordinate frame relative to the VO2 instrument platform frame is given as three angles: CROSS_CONE (or CHI), CONE (or PSI), and RASTER_ORIENTATION (or OMEGA). The platform-fixed to instrument-fixed coordinate transformation, T pl-cam, can be derived from these angles as follows: T pl-cam = R (RASTER_ORIENTATION) R (CONE) R (-CROSS_CONE) Z Y X where Ri(angle) represents a rotation of angle radians about about the i-th axis. The following section contains angles extracted from Supplemental Experiment Data Record file generated by the Viking Project. The angles are given in DEGREES. \begindata INS-30002_CROSS_CONE = ( .663000 ) INS-30002_CONE = ( -.044000 ) INS-30002_RASTER_ORIENTATION = ( 89.663790 ) \begintext The following section contains angles provided by Thomas C. Duxbury. The angles are given in DEGREES. (Note that these values are not enclosed between \begindata ... \begintext tokens and, thus, don't become available to the program when this file is loaded.) INS-30002_CROSS_CONE = ( .663000 ) INS-30002_CONE = ( -.044000 ) INS-30002_RASTER_ORIENTATION = ( 89.663800 ) The T pl-cam transformation matrix may be constructed with calls to following SPICE subroutines: CALL FURNSH( "this_file_name" ) CALL RTPOOL( "INS-30002_CROSS_CONE", CROSS, FOUND ) CALL RTPOOL( "INS-30002_CONE", CONE, FOUND ) CALL RTPOOL( "INS-30002_RASTER_ORIENTATION", RASTR, FOUND ) CALL ROTATE( -CROSS * RPD(), 1, MAT ) CALL ROTMAT( MAT, CONE * RPD(), 2, MAT ) CALL ROTMAT( MAT, RASTR * RPD(), 3, MAT ) Optical Parameters -- Heritage Data -------------------------------------------------------- The camera optics and detector parameters are provided in the earlier other sections of this file. The data in this section is kept for backward compatibility only. The quantities below are taken directly from the ORBITER CONSTANT PARAMETERS section of the SEDR file. All three parameters - linear dimensions of the field of view (FOV) in CONE and CROSS CONE directions and FOCAL LENGTH - are given in millimeters. \begindata INS-30002_FOV_CONE = ( 7.005 ) INS-30002_FOV_CROSS_CONE = ( 6.362 ) INS-30002_FOCAL_LENGTH = ( 474.1 ) \begintext Platform ID --------------------------------------------------------------------------- This number is the NAIF instrument ID of the platform on which the camera is mounted. For VO2 VISB such platform is the VO2 instrument platform. \begindata INS-30002_PLATFORM_ID = ( -30000 ) \begintext