001//
002// This file is auto-generated. Please don't modify it!
003//
004package org.opencv.photo;
005
006import java.util.ArrayList;
007import java.util.List;
008import org.opencv.core.Algorithm;
009import org.opencv.core.Mat;
010import org.opencv.utils.Converters;
011
012// C++: class CalibrateCRF
013/**
014 * The base class for camera response calibration algorithms.
015 */
016public class CalibrateCRF extends Algorithm {
017
018    protected CalibrateCRF(long addr) { super(addr); }
019
020    // internal usage only
021    public static CalibrateCRF __fromPtr__(long addr) { return new CalibrateCRF(addr); }
022
023    //
024    // C++:  void cv::CalibrateCRF::process(vector_Mat src, Mat& dst, Mat times)
025    //
026
027    /**
028     * Recovers inverse camera response.
029     *
030     *     @param src vector of input images
031     *     @param dst 256x1 matrix with inverse camera response function
032     *     @param times vector of exposure time values for each image
033     */
034    public void process(List<Mat> src, Mat dst, Mat times) {
035        Mat src_mat = Converters.vector_Mat_to_Mat(src);
036        process_0(nativeObj, src_mat.nativeObj, dst.nativeObj, times.nativeObj);
037    }
038
039
040    @Override
041    protected void finalize() throws Throwable {
042        delete(nativeObj);
043    }
044
045
046
047    // C++:  void cv::CalibrateCRF::process(vector_Mat src, Mat& dst, Mat times)
048    private static native void process_0(long nativeObj, long src_mat_nativeObj, long dst_nativeObj, long times_nativeObj);
049
050    // native support for java finalize()
051    private static native void delete(long nativeObj);
052
053}