// // This file is auto-generated. Please don't modify it! // package org.opencv.imgcodecs; import java.util.ArrayList; import java.util.List; import org.opencv.core.Mat; import org.opencv.core.MatOfByte; import org.opencv.core.MatOfInt; import org.opencv.utils.Converters; // C++: class Imgcodecs public class Imgcodecs { // C++: enum ImreadModes (cv.ImreadModes) public static final int IMREAD_UNCHANGED = -1, IMREAD_GRAYSCALE = 0, IMREAD_COLOR = 1, IMREAD_ANYDEPTH = 2, IMREAD_ANYCOLOR = 4, IMREAD_LOAD_GDAL = 8, IMREAD_REDUCED_GRAYSCALE_2 = 16, IMREAD_REDUCED_COLOR_2 = 17, IMREAD_REDUCED_GRAYSCALE_4 = 32, IMREAD_REDUCED_COLOR_4 = 33, IMREAD_REDUCED_GRAYSCALE_8 = 64, IMREAD_REDUCED_COLOR_8 = 65, IMREAD_IGNORE_ORIENTATION = 128; // C++: enum ImwriteEXRCompressionFlags (cv.ImwriteEXRCompressionFlags) public static final int IMWRITE_EXR_COMPRESSION_NO = 0, IMWRITE_EXR_COMPRESSION_RLE = 1, IMWRITE_EXR_COMPRESSION_ZIPS = 2, IMWRITE_EXR_COMPRESSION_ZIP = 3, IMWRITE_EXR_COMPRESSION_PIZ = 4, IMWRITE_EXR_COMPRESSION_PXR24 = 5, IMWRITE_EXR_COMPRESSION_B44 = 6, IMWRITE_EXR_COMPRESSION_B44A = 7, IMWRITE_EXR_COMPRESSION_DWAA = 8, IMWRITE_EXR_COMPRESSION_DWAB = 9; // C++: enum ImwriteEXRTypeFlags (cv.ImwriteEXRTypeFlags) public static final int IMWRITE_EXR_TYPE_HALF = 1, IMWRITE_EXR_TYPE_FLOAT = 2; // C++: enum ImwriteFlags (cv.ImwriteFlags) public static final int IMWRITE_JPEG_QUALITY = 1, IMWRITE_JPEG_PROGRESSIVE = 2, IMWRITE_JPEG_OPTIMIZE = 3, IMWRITE_JPEG_RST_INTERVAL = 4, IMWRITE_JPEG_LUMA_QUALITY = 5, IMWRITE_JPEG_CHROMA_QUALITY = 6, IMWRITE_PNG_COMPRESSION = 16, IMWRITE_PNG_STRATEGY = 17, IMWRITE_PNG_BILEVEL = 18, IMWRITE_PXM_BINARY = 32, IMWRITE_EXR_TYPE = (3 << 4) + 0, IMWRITE_EXR_COMPRESSION = (3 << 4) + 1, IMWRITE_WEBP_QUALITY = 64, IMWRITE_PAM_TUPLETYPE = 128, IMWRITE_TIFF_RESUNIT = 256, IMWRITE_TIFF_XDPI = 257, IMWRITE_TIFF_YDPI = 258, IMWRITE_TIFF_COMPRESSION = 259, IMWRITE_JPEG2000_COMPRESSION_X1000 = 272; // C++: enum ImwritePAMFlags (cv.ImwritePAMFlags) public static final int IMWRITE_PAM_FORMAT_NULL = 0, IMWRITE_PAM_FORMAT_BLACKANDWHITE = 1, IMWRITE_PAM_FORMAT_GRAYSCALE = 2, IMWRITE_PAM_FORMAT_GRAYSCALE_ALPHA = 3, IMWRITE_PAM_FORMAT_RGB = 4, IMWRITE_PAM_FORMAT_RGB_ALPHA = 5; // C++: enum ImwritePNGFlags (cv.ImwritePNGFlags) public static final int IMWRITE_PNG_STRATEGY_DEFAULT = 0, IMWRITE_PNG_STRATEGY_FILTERED = 1, IMWRITE_PNG_STRATEGY_HUFFMAN_ONLY = 2, IMWRITE_PNG_STRATEGY_RLE = 3, IMWRITE_PNG_STRATEGY_FIXED = 4; // // C++: Mat cv::imread(String filename, int flags = IMREAD_COLOR) // /** * Loads an image from a file. * * imread * * The function imread loads an image from the specified file and returns it. If the image cannot be * read (because of missing file, improper permissions, unsupported or invalid format), the function * returns an empty matrix ( Mat::data==NULL ). * * Currently, the following file formats are supported: * * * * Note: * * * @param filename Name of file to be loaded. * @param flags Flag that can take values of cv::ImreadModes * @return automatically generated */ public static Mat imread(String filename, int flags) { return new Mat(imread_0(filename, flags)); } /** * Loads an image from a file. * * imread * * The function imread loads an image from the specified file and returns it. If the image cannot be * read (because of missing file, improper permissions, unsupported or invalid format), the function * returns an empty matrix ( Mat::data==NULL ). * * Currently, the following file formats are supported: * * * * Note: * * * @param filename Name of file to be loaded. * @return automatically generated */ public static Mat imread(String filename) { return new Mat(imread_1(filename)); } // // C++: bool cv::imreadmulti(String filename, vector_Mat& mats, int flags = IMREAD_ANYCOLOR) // /** * Loads a multi-page image from a file. * * The function imreadmulti loads a multi-page image from the specified file into a vector of Mat objects. * @param filename Name of file to be loaded. * @param flags Flag that can take values of cv::ImreadModes, default with cv::IMREAD_ANYCOLOR. * @param mats A vector of Mat objects holding each page, if more than one. * SEE: cv::imread * @return automatically generated */ public static boolean imreadmulti(String filename, List mats, int flags) { Mat mats_mat = new Mat(); boolean retVal = imreadmulti_0(filename, mats_mat.nativeObj, flags); Converters.Mat_to_vector_Mat(mats_mat, mats); mats_mat.release(); return retVal; } /** * Loads a multi-page image from a file. * * The function imreadmulti loads a multi-page image from the specified file into a vector of Mat objects. * @param filename Name of file to be loaded. * @param mats A vector of Mat objects holding each page, if more than one. * SEE: cv::imread * @return automatically generated */ public static boolean imreadmulti(String filename, List mats) { Mat mats_mat = new Mat(); boolean retVal = imreadmulti_1(filename, mats_mat.nativeObj); Converters.Mat_to_vector_Mat(mats_mat, mats); mats_mat.release(); return retVal; } // // C++: bool cv::imreadmulti(String filename, vector_Mat& mats, int start, int count, int flags = IMREAD_ANYCOLOR) // /** * Loads a of images of a multi-page image from a file. * * The function imreadmulti loads a specified range from a multi-page image from the specified file into a vector of Mat objects. * @param filename Name of file to be loaded. * @param start Start index of the image to load * @param count Count number of images to load * @param flags Flag that can take values of cv::ImreadModes, default with cv::IMREAD_ANYCOLOR. * @param mats A vector of Mat objects holding each page, if more than one. * SEE: cv::imread * @return automatically generated */ public static boolean imreadmulti(String filename, List mats, int start, int count, int flags) { Mat mats_mat = new Mat(); boolean retVal = imreadmulti_2(filename, mats_mat.nativeObj, start, count, flags); Converters.Mat_to_vector_Mat(mats_mat, mats); mats_mat.release(); return retVal; } /** * Loads a of images of a multi-page image from a file. * * The function imreadmulti loads a specified range from a multi-page image from the specified file into a vector of Mat objects. * @param filename Name of file to be loaded. * @param start Start index of the image to load * @param count Count number of images to load * @param mats A vector of Mat objects holding each page, if more than one. * SEE: cv::imread * @return automatically generated */ public static boolean imreadmulti(String filename, List mats, int start, int count) { Mat mats_mat = new Mat(); boolean retVal = imreadmulti_3(filename, mats_mat.nativeObj, start, count); Converters.Mat_to_vector_Mat(mats_mat, mats); mats_mat.release(); return retVal; } // // C++: size_t cv::imcount(String filename, int flags = IMREAD_ANYCOLOR) // /** * Returns the number of images inside the give file * * The function imcount will return the number of pages in a multi-page image, or 1 for single-page images * @param filename Name of file to be loaded. * @param flags Flag that can take values of cv::ImreadModes, default with cv::IMREAD_ANYCOLOR. * @return automatically generated */ public static long imcount(String filename, int flags) { return imcount_0(filename, flags); } /** * Returns the number of images inside the give file * * The function imcount will return the number of pages in a multi-page image, or 1 for single-page images * @param filename Name of file to be loaded. * @return automatically generated */ public static long imcount(String filename) { return imcount_1(filename); } // // C++: bool cv::imwrite(String filename, Mat img, vector_int params = std::vector()) // /** * Saves an image to a specified file. * * The function imwrite saves the image to the specified file. The image format is chosen based on the * filename extension (see cv::imread for the list of extensions). In general, only 8-bit * single-channel or 3-channel (with 'BGR' channel order) images * can be saved using this function, with these exceptions: * *
    *
  • * 16-bit unsigned (CV_16U) images can be saved in the case of PNG, JPEG 2000, and TIFF formats *
  • *
  • * 32-bit float (CV_32F) images can be saved in PFM, TIFF, OpenEXR, and Radiance HDR formats; * 3-channel (CV_32FC3) TIFF images will be saved using the LogLuv high dynamic range encoding * (4 bytes per pixel) *
  • *
  • * PNG images with an alpha channel can be saved using this function. To do this, create * 8-bit (or 16-bit) 4-channel image BGRA, where the alpha channel goes last. Fully transparent pixels * should have alpha set to 0, fully opaque pixels should have alpha set to 255/65535 (see the code sample below). *
  • *
  • * Multiple images (vector of Mat) can be saved in TIFF format (see the code sample below). *
  • *
* * If the image format is not supported, the image will be converted to 8-bit unsigned (CV_8U) and saved that way. * * If the format, depth or channel order is different, use * Mat::convertTo and cv::cvtColor to convert it before saving. Or, use the universal FileStorage I/O * functions to save the image to XML or YAML format. * * The sample below shows how to create a BGRA image, how to set custom compression parameters and save it to a PNG file. * It also demonstrates how to save multiple images in a TIFF file: * INCLUDE: snippets/imgcodecs_imwrite.cpp * @param filename Name of the file. * @param img (Mat or vector of Mat) Image or Images to be saved. * @param params Format-specific parameters encoded as pairs (paramId_1, paramValue_1, paramId_2, paramValue_2, ... .) see cv::ImwriteFlags * @return automatically generated */ public static boolean imwrite(String filename, Mat img, MatOfInt params) { Mat params_mat = params; return imwrite_0(filename, img.nativeObj, params_mat.nativeObj); } /** * Saves an image to a specified file. * * The function imwrite saves the image to the specified file. The image format is chosen based on the * filename extension (see cv::imread for the list of extensions). In general, only 8-bit * single-channel or 3-channel (with 'BGR' channel order) images * can be saved using this function, with these exceptions: * *
    *
  • * 16-bit unsigned (CV_16U) images can be saved in the case of PNG, JPEG 2000, and TIFF formats *
  • *
  • * 32-bit float (CV_32F) images can be saved in PFM, TIFF, OpenEXR, and Radiance HDR formats; * 3-channel (CV_32FC3) TIFF images will be saved using the LogLuv high dynamic range encoding * (4 bytes per pixel) *
  • *
  • * PNG images with an alpha channel can be saved using this function. To do this, create * 8-bit (or 16-bit) 4-channel image BGRA, where the alpha channel goes last. Fully transparent pixels * should have alpha set to 0, fully opaque pixels should have alpha set to 255/65535 (see the code sample below). *
  • *
  • * Multiple images (vector of Mat) can be saved in TIFF format (see the code sample below). *
  • *
* * If the image format is not supported, the image will be converted to 8-bit unsigned (CV_8U) and saved that way. * * If the format, depth or channel order is different, use * Mat::convertTo and cv::cvtColor to convert it before saving. Or, use the universal FileStorage I/O * functions to save the image to XML or YAML format. * * The sample below shows how to create a BGRA image, how to set custom compression parameters and save it to a PNG file. * It also demonstrates how to save multiple images in a TIFF file: * INCLUDE: snippets/imgcodecs_imwrite.cpp * @param filename Name of the file. * @param img (Mat or vector of Mat) Image or Images to be saved. * @return automatically generated */ public static boolean imwrite(String filename, Mat img) { return imwrite_1(filename, img.nativeObj); } // // C++: bool cv::imwritemulti(String filename, vector_Mat img, vector_int params = std::vector()) // public static boolean imwritemulti(String filename, List img, MatOfInt params) { Mat img_mat = Converters.vector_Mat_to_Mat(img); Mat params_mat = params; return imwritemulti_0(filename, img_mat.nativeObj, params_mat.nativeObj); } public static boolean imwritemulti(String filename, List img) { Mat img_mat = Converters.vector_Mat_to_Mat(img); return imwritemulti_1(filename, img_mat.nativeObj); } // // C++: Mat cv::imdecode(Mat buf, int flags) // /** * Reads an image from a buffer in memory. * * The function imdecode reads an image from the specified buffer in the memory. If the buffer is too short or * contains invalid data, the function returns an empty matrix ( Mat::data==NULL ). * * See cv::imread for the list of supported formats and flags description. * * Note: In the case of color images, the decoded images will have the channels stored in B G R order. * @param buf Input array or vector of bytes. * @param flags The same flags as in cv::imread, see cv::ImreadModes. * @return automatically generated */ public static Mat imdecode(Mat buf, int flags) { return new Mat(imdecode_0(buf.nativeObj, flags)); } // // C++: bool cv::imencode(String ext, Mat img, vector_uchar& buf, vector_int params = std::vector()) // /** * Encodes an image into a memory buffer. * * The function imencode compresses the image and stores it in the memory buffer that is resized to fit the * result. See cv::imwrite for the list of supported formats and flags description. * * @param ext File extension that defines the output format. * @param img Image to be written. * @param buf Output buffer resized to fit the compressed image. * @param params Format-specific parameters. See cv::imwrite and cv::ImwriteFlags. * @return automatically generated */ public static boolean imencode(String ext, Mat img, MatOfByte buf, MatOfInt params) { Mat buf_mat = buf; Mat params_mat = params; return imencode_0(ext, img.nativeObj, buf_mat.nativeObj, params_mat.nativeObj); } /** * Encodes an image into a memory buffer. * * The function imencode compresses the image and stores it in the memory buffer that is resized to fit the * result. See cv::imwrite for the list of supported formats and flags description. * * @param ext File extension that defines the output format. * @param img Image to be written. * @param buf Output buffer resized to fit the compressed image. * @return automatically generated */ public static boolean imencode(String ext, Mat img, MatOfByte buf) { Mat buf_mat = buf; return imencode_1(ext, img.nativeObj, buf_mat.nativeObj); } // // C++: bool cv::haveImageReader(String filename) // /** * Returns true if the specified image can be decoded by OpenCV * * @param filename File name of the image * @return automatically generated */ public static boolean haveImageReader(String filename) { return haveImageReader_0(filename); } // // C++: bool cv::haveImageWriter(String filename) // /** * Returns true if an image with the specified filename can be encoded by OpenCV * * @param filename File name of the image * @return automatically generated */ public static boolean haveImageWriter(String filename) { return haveImageWriter_0(filename); } // C++: Mat cv::imread(String filename, int flags = IMREAD_COLOR) private static native long imread_0(String filename, int flags); private static native long imread_1(String filename); // C++: bool cv::imreadmulti(String filename, vector_Mat& mats, int flags = IMREAD_ANYCOLOR) private static native boolean imreadmulti_0(String filename, long mats_mat_nativeObj, int flags); private static native boolean imreadmulti_1(String filename, long mats_mat_nativeObj); // C++: bool cv::imreadmulti(String filename, vector_Mat& mats, int start, int count, int flags = IMREAD_ANYCOLOR) private static native boolean imreadmulti_2(String filename, long mats_mat_nativeObj, int start, int count, int flags); private static native boolean imreadmulti_3(String filename, long mats_mat_nativeObj, int start, int count); // C++: size_t cv::imcount(String filename, int flags = IMREAD_ANYCOLOR) private static native long imcount_0(String filename, int flags); private static native long imcount_1(String filename); // C++: bool cv::imwrite(String filename, Mat img, vector_int params = std::vector()) private static native boolean imwrite_0(String filename, long img_nativeObj, long params_mat_nativeObj); private static native boolean imwrite_1(String filename, long img_nativeObj); // C++: bool cv::imwritemulti(String filename, vector_Mat img, vector_int params = std::vector()) private static native boolean imwritemulti_0(String filename, long img_mat_nativeObj, long params_mat_nativeObj); private static native boolean imwritemulti_1(String filename, long img_mat_nativeObj); // C++: Mat cv::imdecode(Mat buf, int flags) private static native long imdecode_0(long buf_nativeObj, int flags); // C++: bool cv::imencode(String ext, Mat img, vector_uchar& buf, vector_int params = std::vector()) private static native boolean imencode_0(String ext, long img_nativeObj, long buf_mat_nativeObj, long params_mat_nativeObj); private static native boolean imencode_1(String ext, long img_nativeObj, long buf_mat_nativeObj); // C++: bool cv::haveImageReader(String filename) private static native boolean haveImageReader_0(String filename); // C++: bool cv::haveImageWriter(String filename) private static native boolean haveImageWriter_0(String filename); }