Localiser
Class DetectionGroupLocaliser

java.lang.Object
  extended by Localiser.DetectionGroupLocaliser

public class DetectionGroupLocaliser
extends java.lang.Object

Class to provide localisation functions for PamDetections which contain > 1 sub detections. The first iteration of this is being written for the purposes of working out where bearing lines from multiple manually tracked clicks cross and it's likely it will all need to be re-written one day !

Author:
Doug

Field Summary
private  double bearing
           
private  LatLong detectionLatLong
           
private  LatLong localisationLatLong
           
private  LatLong originLatLong
           
private  double parallelError
           
private  PamProcess parentProcess
           
private  double perpendicularError
           
private  double range
           
private  double referenceHeading
           
 
Constructor Summary
DetectionGroupLocaliser(PamProcess parentProcess)
           
 
Method Summary
 double getBearing()
           
 LatLong getDetectionLatLong()
           
 LatLong getLocalisationLatLong()
           
 LatLong getOriginLatLong()
           
 double getParallelError()
           
 PamProcess getParentProcess()
           
 double getPerpendicularError()
           
 double getRange()
           
 double getReferenceHeading()
           
 boolean localiseDetectionGroup(GroupDetection groupDetection, int side)
          calculate the position of detecion assuming that sub detections all contain bearings, which are probably ambiguous, so will calculate for one side or another - +1 = right of track, -1 = left of track.
 boolean localiseDetectionGroup(GroupDetection groupDetection, int side, double groupSize)
          Calcuates the position of a detection assuming that sub detections all contain bearings, which are probably ambiguous.
(package private)  boolean useDetection(PamDetection subDetection, int sideIndex)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

parentProcess

private PamProcess parentProcess

localisationLatLong

private LatLong localisationLatLong

originLatLong

private LatLong originLatLong

detectionLatLong

private LatLong detectionLatLong

range

private double range

bearing

private double bearing

perpendicularError

private double perpendicularError

parallelError

private double parallelError

referenceHeading

private double referenceHeading
Constructor Detail

DetectionGroupLocaliser

public DetectionGroupLocaliser(PamProcess parentProcess)
Method Detail

localiseDetectionGroup

public boolean localiseDetectionGroup(GroupDetection groupDetection,
                                      int side)
calculate the position of detecion assuming that sub detections all contain bearings, which are probably ambiguous, so will calculate for one side or another - +1 = right of track, -1 = left of track. No other values are allowed !

Parameters:
groupDetection -
side - -1 or 1 for left and right
Returns:
true of localisation calculated successfully

localiseDetectionGroup

public boolean localiseDetectionGroup(GroupDetection groupDetection,
                                      int side,
                                      double groupSize)
Calcuates the position of a detection assuming that sub detections all contain bearings, which are probably ambiguous. If groupSize > 0, then atempt to group clicks into fewer categories to speed up fit. (Not implemented).

Parameters:
groupDetection -
side - -1 or 1 for left and right
groupSize -
Returns:
true of localisation calculated successfully

useDetection

boolean useDetection(PamDetection subDetection,
                     int sideIndex)

getLocalisationLatLong

public LatLong getLocalisationLatLong()

getOriginLatLong

public LatLong getOriginLatLong()

getParentProcess

public PamProcess getParentProcess()

getRange

public double getRange()

getBearing

public double getBearing()

getDetectionLatLong

public LatLong getDetectionLatLong()

getParallelError

public double getParallelError()

getPerpendicularError

public double getPerpendicularError()

getReferenceHeading

public double getReferenceHeading()