Class FourPointSyntheticStability


public class FourPointSyntheticStability extends Object
Computes the stability for a fiducial using 4 synthetic corners that are position based on the fiducial's width and height given the current estimated marker to camera transform. The 4 corners are placed symmetrically around the marker's origin at (-w/2,-h/2) (-w/2,h/2) (w/2,h/2) (w/2,-h/2). Stability is computed by varying the projected corners in pixel coordinates then recomputing the camera to fiducial pose and seeing how much it has changed.
  • Field Details

  • Constructor Details

    • FourPointSyntheticStability

      public FourPointSyntheticStability()
  • Method Details

    • setTransforms

      public void setTransforms(Point2Transform2_F64 pixelToNorm, Point2Transform2_F64 normToPixel)
      Specifies how to convert to and from pixels
    • setShape

      public void setShape(double width, double height)
      Specifes how big the fiducial is along two axises
      width - Length along x-axis
      height - Length along y-axis
    • computeStability

      public void computeStability(Se3_F64 targetToCamera, double disturbance, FiducialStability results)
      Estimate how sensitive this observation is to pixel noise
      targetToCamera - Observed target to camera pose estimate
      disturbance - How much the observation should be noised up, in pixels
      results - description how how sensitive the stability estimate is