Help for FIXVGR

PURPOSE:

"fixvgr" corrects the DN scale of Voyager images by multiplying each pixel
by a constant.  The resulting image is radiometrically more accurate.

	fixvgr INP=A OUT=B
where
	A = an image that has been radiometrically corrected by "ficor77".
	B = scaled output image.

Both input and output images are in 16-bit integer (halfword) data format.
The input may be any size (e.g. 800x800 geometrically uncorrected,
1000x1000 geometrically corrected, map projected) as long as it is in
the same radiometric scale as the "ficor77" output.

NOTE: As of March 1988, the scale correction was implemented directly into
"ficor77".  "fixvgr" need not be applied to images processed by "ficor77"
after this date (unless they need to be rescaled).

REFERENCES:

1) G.E.Danielson, et.al., "Radiometric Performance of the Voyager Cameras",
   JGR Vol 86, NO.A10, pp 8683-8689, 30 Sep 1981.

2) T.V. Johnson, "Corrections to Danielson et.al. Calibration", memorandum
   to the Voyager Imaging Team, 16 Jan 1986.

OPERATION:

The applied scaling corrects for errors in ground calibration of the camera
system's response through each of the filters, and adjusts for target distance
from the sun using the inverse square law.
		
The scale correction factor is a function of camera, filter, and planet-of-
encounter (target distance from the sun).  The camera serial number and
filter position are extracted automatically from the input picture label.
These values may be overridden via the CAMERA and FILTER parameters.

For Voyager 2, the planet-of-encounter is determined by searching the frame
label for a valid PICNO, Spacecraft-Event-Time (SCET), or Earth-Received-
Time (ERT), in that order.  This may be overridden via the PLANET keyword.

For Voyager 1, the planet-of-encounter is always set to Jupiter, and this
may not be overridden.

The scale factor is retrieved from a table stored in the Scale Correction
File (SCF).  This file may be specified by the SCF parameter.

The following scale correction is applied to each pixel:

	ODN = S*A1*IDN
where
	IDN is the DN value of the input pixel
	ODN is the DN value of the output pixel
	S is the scale factor retrieved from the SCF
	A1 is the number of 'I over F' units per DN, as reported in the
	    picture label by "ficor77".

Images scale-corrected by "fixvgr" may be identified by the following picture
label:

  (e.g) COMMENT=' PICTURE MULTIPLIED BY  0.93   FIXVGR	2/02/86 VERSION'
	SCALE='URANUS'

where 0.93 is the product S*A1, URANUS is the planet-of-encounter, and
2/02/86 is the version date of the SCF.

The resulting output image has a scale of 1 I/F unit per DN, where
10,000 I/F units would be produced by normal incidence of sunlight on a
Lambert disk at the target-body's distance from the sun (5.2 AU for
Jupiter, 9.51 AU for Saturn, 19.122 AU for Uranus, and xx.x AU for Neptune).

After March 1988, the scale correction was implemented directly into
"ficor77".  "fixvgr" need not be run on images processed by "ficor77" 
after this date.  However, if rescaling is desired (because of any future
update to the table), "fixvgr" may be used to perform this.

RESCALING:

The table of scale factors was first installed on 1/16/81 using the values
from Reference 1.  The values for the violet, orange, and UV filters for
the VGR-2 narrow-angle camera (filter positions 1,3, and 7) were updated
2/2/86 using the values from Reference 2.  Provision exits for future
updates to the table.

Images which have been scale corrected by "ficor77" or "fixvgr" using an older
version of the table may be rescaled by running "fixvgr".  "fixvgr" may also be
used to rescale an image to a new target-body.  The rescaling consists of:

	       S
	ODN = ---*IDN
	       So

where So and S are the old and new scale factors retrieved from the SCF.

EXAMPLE:

"fixvgr" is normally executed as follows:

	fixvgr E1 E2  scf=/project/test_work/testdata/mipl/vgr/vgrscf.dat

where E1 is the input image and E2 is the output image.  The following
example illustrates how each of the parameters are entered:

   fixvgr E1 E2 (301,301,200,200) 'SATURN CAMERA=4 FILTER=7 'NONEG

The output will be a 200 x 200 image, representing the sub-area of the
input image beginning at pixel coordinates (301,301).


PROGRAM HISTORY:

Written by:  	Joel A. Mosher		27 October 1980
Converted to VAX by:	Helen De Rueda	25 May 1984
Cognizant programmer:  G.M.Yagi
Revisions:
24 May 99  GMY... Update location of test files in test script
31 Oct 94  AMS... (CRI) Made portable for UNIX
22 May 92  GMY... Update test script (FR 64503)
 1 Feb 88  GMY... Retrieve scale from Scale Correction File
	          Add check for "ficor77 scale correction.
 2 FEB 86  LWK... New values for VGR-2 NA filters 1,3,7 (version 3)
15 JUN 85  LWK... Add planet-specific corrections (version 2)
25 MAY 84  HBD... Convert to VICAR2
17 MAR 82  JAM... Check for previous use of program
26 NOV 81  JAM... Add NOCORRECT option
 9 NOV 81  JAM... System label updates format code
30 OCT 81  JAM... Put in labelc change to modify pixel code to halfword
	          Add a half dn to result before truncating to integer
10 APR 81  JAM... Add new camera correction constants
16 MAR 81  JAM... Change constants from danielson
18 DEC 80  JAM... Initital release (IBM version)


PARAMETERS:


INP

STRING--REQUIRED The input image.

OUT

STRING--REQUIRED The output image.

SIZE

4 INTEGERS--OPTIONAL Vicar size field.

SL

INTEGER--OPTIONAL Starting Line.

SS

INTEGER--OPTIONAL Starting Sample.

NL

INTEGER--OPTIONAL Number of lines.

NS

INTEGER--OPTIONAL Number of samples.

PLANET

KEYWORD--OPTIONAL Planet-of-encounter Valid values are: Jupiter, Saturn, Uranus, or Neptune.

CAMERA

INTEGER--OPTIONAL Camera serial number.

FILTER

INTEGER--OPTIONAL Camera filter position

NONEG

KEYWORD--OPTIONAL Set negative DNs to zero.

NOCORREC

KEYWORD--OPTIONAL Do not correct scale.

SCF

STRING--OPTIONAL Scale Correction File.

See Examples:


Cognizant Programmer: