Class Distorter

java.lang.Object
skyview.geometry.Transformer
skyview.geometry.Distorter
All Implemented Interfaces:
java.io.Serializable, Component
Direct Known Subclasses:
DSS, DSS.DSSInv, Neat, Neat.NeatInv, SIP, SIP.SIPinverse

public abstract class Distorter
extends Transformer
implements Component
This class defines a non-linear distortion in the image plane. Normally the forward distortion converts from a fiducial projection plane to some distorted coordinates. The reverse distortion transforms from the distorted coordinates back to the fiducial coordinates.
See Also:
Serialized Form
  • Constructor Summary

    Constructors 
    Constructor Description
    Distorter()  
  • Method Summary

    Modifier and Type Method Description
    boolean applyBeforeScaling()  
    abstract java.lang.String getDescription()
    What does this object do?
    protected int getInputDimension()
    What is the input dimensionality of a Distorter?
    abstract java.lang.String getName()
    A name for this object
    protected int getOutputDimension()
    What is the output dimensionality of a Distorter?
    abstract Distorter inverse()
    Get the inverse of the transformation.
    double[][] jacobian​(double[] pix)
    Get the local Jacobian for the distortion.

    Methods inherited from class skyview.geometry.Transformer

    isInverse, transform, transform, transform

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

  • Method Details

    • getName

      public abstract java.lang.String getName()
      A name for this object
      Specified by:
      getName in interface Component
    • getDescription

      public abstract java.lang.String getDescription()
      What does this object do?
      Specified by:
      getDescription in interface Component
    • inverse

      public abstract Distorter inverse()
      Description copied from class: Transformer
      Get the inverse of the transformation. If the order matters, then the inverse is to be applied after the original transformation. This is primarily an issue with Converters.
      Specified by:
      inverse in class Transformer
    • getOutputDimension

      protected int getOutputDimension()
      What is the output dimensionality of a Distorter?
      Specified by:
      getOutputDimension in class Transformer
    • getInputDimension

      protected int getInputDimension()
      What is the input dimensionality of a Distorter?
      Specified by:
      getInputDimension in class Transformer
    • jacobian

      public double[][] jacobian​(double[] pix)
      Get the local Jacobian for the distortion. This implementation defers the calculation to the inverse distorter. Clearly this will need to be overriden in either the forward or backward distorter.
      Parameters:
      pix - The input position.
      Returns:
      The Jabobian matrix.
    • applyBeforeScaling

      public boolean applyBeforeScaling()