Class DocumentStraightener

java.lang.Object
io.scanbot.sdk.documentscanner.DocumentStraightener
All Implemented Interfaces:
AutoCloseable

public class DocumentStraightener extends Object implements AutoCloseable
Provides functionality to straighten document photos by eliminating physical deformations and surface warping, such as folds, creases, wrinkles, crumples, page and geometric bends. Required licence feature(s): DocumentScanner, ImageProcessing.
  • Constructor Details

    • DocumentStraightener

      public DocumentStraightener() throws LicenseException
      Constructs DocumentStraightener with the given params.
      Throws:
      LicenseException - If license requirements for the API are not met
  • Method Details

    • run

      Straightens document photos by eliminating physical deformations and surface warping, such as folds, creases, wrinkles, crumples, page curls, and geometric bends.
      Parameters:
      image - The image of the document to straighten.
      parameters - The parameters to use for straightening.
      priorCornersNormalized - If it is known where the document corners (e.g. from a prior detection), those can be provided here. The enhancer may take them into account to locate the document more accurately. As part of the straightening process, it may be necessary to detect the document corners. That's why providing them here can speed up the process (given the corners are already available). Corners must be provided in the clockwise order: top-left, top-right, bottom-right, bottom-left. The coordinates must be normalized to the range [0, 1] relative to the image dimensions. For x coordinates, 0 corresponds to the left edge of the image and 1 to the right edge. For y coordinates, 0 corresponds to the top edge of the image and 1 to the bottom edge. Note, that when a coordinate is normalized, correct formula for x coordinate is: x_normalized = x_pixel / (image_width - 1), and for y coordinate is: y_normalized = y_pixel / (image_height - 1).
      Returns:
      The detection result.
      Throws:
      InvalidImageRefException - If an invalid image reference is used
      LicenseException - If license requirements for the API are not met
    • isStraighteningModeAvailable

      public static boolean isStraighteningModeAvailable(DocumentStraighteningMode mode)
      Check if the specified straightening mode is available (i.e. required assets are present).
      Parameters:
      mode - The straightening mode to check.
      Returns:
      True if the straightening mode is available, false otherwise.
    • close

      public void close()
      Closes native resources held by the object.
      Specified by:
      close in interface AutoCloseable
    • finalize

      protected void finalize() throws Throwable
      Overrides:
      finalize in class Object
      Throws:
      Throwable