HiRISE

HiRISE.HiCat.Utilities
Class StereoPairFinder

java.lang.Object
  extended by HiRISE.HiCat.Utilities.StereoPairFinder

public class StereoPairFinder
extends Object

A utility class for finding HiRISE Observations which overlap and may make good stereo pairs. The overlap test is the overlapping centers test used by the Retire_Suggestions mechanism. The overlap test can be applied to either the color products or the red products, respectively, to obtain a greater or lesser degree of coverage. The observations that overlap are made into MroStereoPairs, and the shadow tip change and stereo separation is calculated using code from HiSEAS

Version:
1.3
Author:
Rodney Heyd UA/HiRISE, Steven Wheelwright UA/HiRISE
See Also:
Retire_Suggestions

Field Summary
static String DEFAULT_CONFIGURATION_FILENAME
          Default configuration file
static String DEFAULT_OUTFILE_NAME
          Default configuration file
static String DEFAULT_PRODUCT_TYPE
          Default configuration file
static int EXIT_COMMAND_LINE_SYNTAX_ERROR
           
static int EXIT_SUCCESS
           
static int EXIT_UNKNOWN_PRODUCT_TYPE
           
static String ID
          Class identifier
 
Constructor Summary
StereoPairFinder()
          Construct a finder object using the default configuration file and default product type.
StereoPairFinder(String configuration_file, String product_type)
          Construct the finder using a supplied configuration file
 
Method Summary
 String findAnaglyph(MroStereoPair pair)
           
 Collection<MroStereoPair> getMroStereoPairs()
          Makes a MroStereoPair object for every possible pair of overlapping observations.
 Vector<Vector<String>> getOverlappingObservationGroups()
          Finds all observations which overlap.
static void main(String[] arguments)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ID

public static final String ID
Class identifier

See Also:
Constant Field Values

DEFAULT_CONFIGURATION_FILENAME

public static final String DEFAULT_CONFIGURATION_FILENAME
Default configuration file

See Also:
Constant Field Values

DEFAULT_OUTFILE_NAME

public static final String DEFAULT_OUTFILE_NAME
Default configuration file

See Also:
Constant Field Values

DEFAULT_PRODUCT_TYPE

public static final String DEFAULT_PRODUCT_TYPE
Default configuration file

See Also:
Constant Field Values

EXIT_SUCCESS

public static final int EXIT_SUCCESS
See Also:
Constant Field Values

EXIT_COMMAND_LINE_SYNTAX_ERROR

public static final int EXIT_COMMAND_LINE_SYNTAX_ERROR
See Also:
Constant Field Values

EXIT_UNKNOWN_PRODUCT_TYPE

public static final int EXIT_UNKNOWN_PRODUCT_TYPE
See Also:
Constant Field Values
Constructor Detail

StereoPairFinder

public StereoPairFinder(String configuration_file,
                        String product_type)
                 throws Configuration_Exception,
                        Database_Exception
Construct the finder using a supplied configuration file

Parameters:
configuration_file - - a String containing the name of the configuration file
product_type - - a String which specifies whether the RED or COLOR products should be used for detecting overlaps.
Throws:
Configuration_Exception
Database_Exception

StereoPairFinder

public StereoPairFinder()
                 throws Configuration_Exception,
                        Database_Exception
Construct a finder object using the default configuration file and default product type.

Throws:
Configuration_Exception
Database_Exception
Method Detail

getOverlappingObservationGroups

public Vector<Vector<String>> getOverlappingObservationGroups()
                                                       throws Database_Exception
Finds all observations which overlap. The criteria is the overlapping centers test used by the Retire_Suggestions mechanism.

Returns:
A list of groups where each observation in the group overlaps at least one other observation in that group.
Throws:
Database_Exception

getMroStereoPairs

public Collection<MroStereoPair> getMroStereoPairs()
                                            throws Database_Exception,
                                                   SPICE_Exception
Makes a MroStereoPair object for every possible pair of overlapping observations.

Returns:
A collection of MroStereoPairs which were found. Some may already exist as anaglyphs, and some may be unsuitable as anaglyph pairs because of unacceptable values for shadow tip difference, stereo separation angle, etc. No filtering is done on the output here--every possible pair is returned.
Throws:
Database_Exception
SPICE_Exception

findAnaglyph

public String findAnaglyph(MroStereoPair pair)
                    throws Database_Exception
Parameters:
pair - the MroStereoPair to be considered
Returns:
the Product ID of an existing anaglyph composed of this stereo pair or "" otherwise. Note: the label field of the underlying MroObservations must be set to the Observation ID for this method to work properly
Throws:
Database_Exception

main

public static void main(String[] arguments)
Parameters:
arguments -

HiRISE

Copyright \ (C) Arizona Board of Regents on behalf of the \ Planetary Image Research Laboratory, Lunar and \ Planetary Laboratory at the University of Arizona