Class RemovePerspectiveDistortion<T extends ImageBase<T>>

java.lang.Object
boofcv.alg.distort.RemovePerspectiveDistortion<T>

public class RemovePerspectiveDistortion<T extends ImageBase<T>> extends Object
Class which simplifies the removal of perspective distortion from a region inside an image. Given the ordered corners of a quadrilateral in the input image it applies a homography transform which reprojects the region into the input image into a rectangular output image.
  • Constructor Details

    • RemovePerspectiveDistortion

      public RemovePerspectiveDistortion(int width, int height, ImageType<T> imageType)
      Constructor which specifies the characteristics of the undistorted image
      Parameters:
      width - Width of undistorted image
      height - Height of undistorted image
      imageType - Type of undistorted image
    • RemovePerspectiveDistortion

      public RemovePerspectiveDistortion(int width, int height)
      Creates the variables for computing the transform but not rendering the image
      Parameters:
      width - Width of undistorted image
      height - Height of undistorted image
  • Method Details

    • apply

      public boolean apply(T input, Point2D_F64 corner0, Point2D_F64 corner1, Point2D_F64 corner2, Point2D_F64 corner3)
      Applies distortion removal to the specified region in the input image. The undistorted image is returned.
      Parameters:
      input - Input image
      corner0 - Top left corner
      corner1 - Top right corner
      corner2 - Bottom right corner
      corner3 - Bottom left corner
      Returns:
      true if successful or false if it failed
    • createTransform

      public boolean createTransform(Point2D_F64 tl, Point2D_F64 tr, Point2D_F64 br, Point2D_F64 bl)
      Compues the distortion removal transform
      Parameters:
      tl - Top left corner
      tr - Top right corner
      br - Bottom right corner
      bl - Bottom left corner
      Returns:
      true if successful or false if it failed
    • getH

      public DMatrixRMaj getH()
    • getTransform

      public PointTransformHomography_F32 getTransform()
    • getOutput

      public T getOutput()
      Returns the undistorted output image