config
Class Config

java.lang.Object
  extended by config.Config

public class Config
extends java.lang.Object

Configure the execution of the algorithm. If a parameter is not set manually, the default parameters are used. Valid parameter names and values are predefined in Constants.


Field Summary
private  int additionalDummyNodes
          Configure how many dummy nodes are added when using the Hungarian algorithm at any point of the matching process.
private  double alpha
          Configure the alpha in the path distance computation.
private  java.lang.String extractSimilarityWith
          configure which algorithm is used to extract the similarity from the path distance matrix.
private  java.lang.String finalMatchingWith
          Configure which algorithm is used for the final matching.
private  java.lang.String handleBadMatchings
          Configure how bad matchings are handled in the matching result.
private  org.apache.log4j.Logger logger
          logger instance
private  int numberOfSamplePoints
          Configure the number of the sampling points used to gain the skeleton path vector, that is, the size of the skeleton path vector.
private  java.lang.String pathdistance
          configure which path distance definition will be used.
private  double preprocessing
          Configure the threshold for the skeleton preprocessor.
private  java.lang.String useDenominator
          Configuring the computation for the path distance definition.
private  java.lang.String useEndnodeOrder
          Configure how end nodes will be ordered.
private  java.lang.String visualize
          Configure how the matching result is visualized.
 
Constructor Summary
Config()
          Constructor.
Config(java.lang.String[] args)
          Constructor.
 
Method Summary
 int getAdditionalDummyNodes()
          Get how many dummy nodes are added when executing HungarianAlgorithm
 double getAlpha()
          Get the configuration for the weighting factor alpha.
 java.lang.String getExtractSimilarityWith()
          Get the configuration which method is used to extract the similarity between two end nodes from their path distance matrix
 java.lang.String getFinalMatchingWith()
          Get the configuration which method is used to perform the final matching.
 java.lang.String getHandleBadMatchings()
          Get the configuration how bad matchings in the matching result are handled.
 int getNumberOfSamplePoints()
          Get the configuration how many sample points are used for the skeleton path vector creation.
 java.lang.String getPathDistance()
          Get the configuration which path distance measurement is used
 double getPreprocessing()
          Get the threshold for preprocessing the skeleton.
 java.lang.String getUseDenominator()
          Get the configuration if the denominators in the path distance computation are used.
 java.lang.String getUseEndnodeOrder()
          Get the configuration how end nodes are ordered.
 java.lang.String getVisualize()
          Get the configuration for the visualization.
private  void parseArguments(java.lang.String[] args)
          Parse the arguments specified in the constructor.
private  void setAdditionalDummyNodes(java.lang.String arg)
          Configure how many dummy nodes will be added when executing HungarianAlgorithm
private  void setAlpha(java.lang.String arg)
          Set the alpha value for path distance computation.
private  void setExtractSimilarityWith(java.lang.String arg)
          conigure which algorithm to use to extract end node similarities from path distance matrices.
private  void setFinalMatching(java.lang.String arg)
          Configure which function to use to perform the final matching.
private  void setHandleMatchings(java.lang.String arg)
          Configure how bad matchings will be handled
private  void setNumberOfSamplePoints(java.lang.String arg)
          Set the number of sample points for the skeleton path vector.
private  void setOrderingEndnodes(java.lang.String arg)
          Configure how end nodes will be ordered
private  void setPathDistance(java.lang.String arg)
          Configure which path distance measurement will be used.
private  void setPreprocessing(java.lang.String arg)
          Set the threshold for the preprocessor
private  void setUseDenominator(java.lang.String arg)
          Configure if to use denominator in path distance computation
private  void setVisualize(java.lang.String arg)
          set the visualization mode
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

private final org.apache.log4j.Logger logger
logger instance


pathdistance

private java.lang.String pathdistance
configure which path distance definition will be used.

Possible values are:

Default is Constants.useOriginalPathDistance.


extractSimilarityWith

private java.lang.String extractSimilarityWith
configure which algorithm is used to extract the similarity from the path distance matrix.

Possible values are:

Default is Constants.OSBfunctionUsedForMatchingCosts.


useEndnodeOrder

private java.lang.String useEndnodeOrder
Configure how end nodes will be ordered. This will have no effect on the result if extractSimilarityWith is set the Constants.HungarianfunctionUsedForMatchingCosts.

Possible values are

Default is Constants.defaultOrder


finalMatchingWith

private java.lang.String finalMatchingWith
Configure which algorithm is used for the final matching.

Possible values are:

Default is Constants.finalMatchingWithHungarian


handleBadMatchings

private java.lang.String handleBadMatchings
Configure how bad matchings are handled in the matching result. Used only in 3D Matchings.

Possible values are:

Default is Constants.showAllMatchings.


useDenominator

private java.lang.String useDenominator
Configuring the computation for the path distance definition.

Possible values are:

Default is Constants.useDefaultDenominator


visualize

private java.lang.String visualize
Configure how the matching result is visualized.

Possible values are:

Default is Constants.showBoth


additionalDummyNodes

private int additionalDummyNodes
Configure how many dummy nodes are added when using the Hungarian algorithm at any point of the matching process. This only has an effect if either finalMatchingWith is set to Constants.finalMatchingWithHungarian or this extractSimilarityWith is set to Constants.HungarianfunctionUsedForMatchingCosts.

Default is 0.


preprocessing

private double preprocessing
Configure the threshold for the skeleton preprocessor. All branches shorter than this threshold are removed from the skeleton.

Default is -1, that is, the skeleton won't be preprocessed at all.


numberOfSamplePoints

private int numberOfSamplePoints
Configure the number of the sampling points used to gain the skeleton path vector, that is, the size of the skeleton path vector. This only has an effect on the matching result if thispathdistance is set to Constants.useOriginalPathDistance.

Default is 50.


alpha

private double alpha
Configure the alpha in the path distance computation. This only has an effect on the matching result if thispathdistance is set to Constants.useOriginalPathDistance.

Default is 70.

Constructor Detail

Config

public Config(java.lang.String[] args)
       throws InvalidConfigParameterException
Constructor. Create a new configuration instance with the arguments passed as string array. Each parameter has to have the following format: =. All parameter names and values are predefined in Constants.

Parameters:
args - the configuration arguments
Throws:
InvalidConfigParameterException - if one of the configuration arguments is not valid

Config

public Config()
       throws InvalidConfigParameterException
Constructor. Create a new configuration without any arguments. All parameters are set to default.

Throws:
InvalidConfigParameterException - if an error orccured while creating the new configuration
Method Detail

parseArguments

private void parseArguments(java.lang.String[] args)
                     throws InvalidConfigParameterException
Parse the arguments specified in the constructor.

Parameters:
args - - the configuration array
Throws:
InvalidConfigParameterException - if one of the configuration arguments is not valid

setAdditionalDummyNodes

private void setAdditionalDummyNodes(java.lang.String arg)
Configure how many dummy nodes will be added when executing HungarianAlgorithm

Parameters:
arg - configuring argument

getAdditionalDummyNodes

public int getAdditionalDummyNodes()
Get how many dummy nodes are added when executing HungarianAlgorithm

Returns:
number of dummy nodes

setVisualize

private void setVisualize(java.lang.String arg)
                   throws InvalidConfigParameterException
set the visualization mode

Parameters:
arg - configuring argument
Throws:
InvalidConfigParameterException

setUseDenominator

private void setUseDenominator(java.lang.String arg)
                        throws InvalidConfigParameterException
Configure if to use denominator in path distance computation

Parameters:
arg - configuring argument
Throws:
InvalidConfigParameterException

setHandleMatchings

private void setHandleMatchings(java.lang.String arg)
                         throws InvalidConfigParameterException
Configure how bad matchings will be handled

Parameters:
arg - configuring argument
Throws:
InvalidConfigParameterException

setPreprocessing

private void setPreprocessing(java.lang.String arg)
                       throws InvalidConfigParameterException
Set the threshold for the preprocessor

Parameters:
arg - configuring argument
Throws:
InvalidConfigParameterException

setNumberOfSamplePoints

private void setNumberOfSamplePoints(java.lang.String arg)
                              throws InvalidConfigParameterException
Set the number of sample points for the skeleton path vector.

Parameters:
arg - configuring argument
Throws:
InvalidConfigParameterException

setAlpha

private void setAlpha(java.lang.String arg)
               throws InvalidConfigParameterException
Set the alpha value for path distance computation.

Parameters:
arg - configuring argument
Throws:
InvalidConfigParameterException

setFinalMatching

private void setFinalMatching(java.lang.String arg)
                       throws InvalidConfigParameterException
Configure which function to use to perform the final matching.

Parameters:
arg - configuring argument
Throws:
InvalidConfigParameterException

setOrderingEndnodes

private void setOrderingEndnodes(java.lang.String arg)
                          throws InvalidConfigParameterException
Configure how end nodes will be ordered

Parameters:
arg - configuring argument
Throws:
InvalidConfigParameterException

setExtractSimilarityWith

private void setExtractSimilarityWith(java.lang.String arg)
                               throws InvalidConfigParameterException
conigure which algorithm to use to extract end node similarities from path distance matrices.

Parameters:
arg - configuring argument
Throws:
InvalidConfigParameterException

setPathDistance

private void setPathDistance(java.lang.String arg)
                      throws InvalidConfigParameterException
Configure which path distance measurement will be used.

Parameters:
arg - configuring argument
Throws:
InvalidConfigParameterException

getExtractSimilarityWith

public java.lang.String getExtractSimilarityWith()
Get the configuration which method is used to extract the similarity between two end nodes from their path distance matrix

Returns:
method used to extract the similarity between two end nodes

getPathDistance

public java.lang.String getPathDistance()
Get the configuration which path distance measurement is used

Returns:
used path distance measurement

getUseEndnodeOrder

public java.lang.String getUseEndnodeOrder()
Get the configuration how end nodes are ordered.

Returns:
order of the end nodes

getFinalMatchingWith

public java.lang.String getFinalMatchingWith()
Get the configuration which method is used to perform the final matching.

Returns:
method to perform the final matching

getHandleBadMatchings

public java.lang.String getHandleBadMatchings()
Get the configuration how bad matchings in the matching result are handled.

Returns:
how bad matchings are handled

getNumberOfSamplePoints

public int getNumberOfSamplePoints()
Get the configuration how many sample points are used for the skeleton path vector creation.

Returns:
number of sample points

getAlpha

public double getAlpha()
Get the configuration for the weighting factor alpha.

Returns:
the weighting factor alpha

getVisualize

public java.lang.String getVisualize()
Get the configuration for the visualization.

Returns:
the visualization mode

getPreprocessing

public double getPreprocessing()
Get the threshold for preprocessing the skeleton.

Returns:
the minimum length all skeleton branches must have

getUseDenominator

public java.lang.String getUseDenominator()
Get the configuration if the denominators in the path distance computation are used.

Returns:
if the denominators in the path distance computation are used