Class EquirectangularDistortBase_F32

java.lang.Object
boofcv.alg.distort.spherical.EquirectangularDistortBase_F32
All Implemented Interfaces:
PixelTransform<Point2D_F32>
Direct Known Subclasses:
CameraToEquirectangular_F32, CylinderToEquirectangular_F32, EquirectangularRotate_F32

@Generated("boofcv.alg.distort.spherical.EquirectangularDistortBase_F64")
public abstract class EquirectangularDistortBase_F32
extends Object
implements PixelTransform<Point2D_F32>
Base class for all distortions from an equirectangular image. The output image precomputes pointing vectors from a canonical view. The source pixel is then computed by rotating each vector and computing the longitude and latitude.
  • Constructor Details

    • EquirectangularDistortBase_F32

      public EquirectangularDistortBase_F32()
  • Method Details

    • setEquirectangularShape

      public void setEquirectangularShape​(int width, int height)
      Specify the shame of the equirectangular image
      Parameters:
      width - equirectangular image width
      height - equirectangular image height
    • setConcurrent

      public void setConcurrent​(EquirectangularDistortBase_F32 original)
      Set for concurrent code. Doesn't copy expensive model variables
    • setDirection

      public void setDirection​(float yaw, float pitch, float roll)
      Specifies the rotation offset from the canonical location using yaw and pitch.
      Parameters:
      yaw - Radian from -pi to pi
      pitch - Radian from -pi/2 to pi/2
      roll - Radian from -pi to pi
    • setDirection

      public void setDirection​(FMatrixRMaj R)
      Specifies direction using a rotation matrix
      Parameters:
      R - rotation matrix
    • declareVectors

      protected void declareVectors​(int width, int height)
      Declares storage for precomputed pointing vectors to output image
      Parameters:
      width - output image width
      height - output image height
    • compute

      public void compute​(int x, int y, Point2D_F32 out)
      Input is in pinhole camera pixel coordinates. Output is in equirectangular coordinates
      Specified by:
      compute in interface PixelTransform<Point2D_F32>
      Parameters:
      x - Pixel x-coordinate in rendered pinhole camera
      y - Pixel y-coordinate in rendered pinhole camera
      out - The transformed pixel
    • getTools

      public EquirectangularTools_F32 getTools()
    • getRotation

      public FMatrixRMaj getRotation()