All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.bytedeco.opencv.opencv_face.FacemarkLBF Maven / Gradle / Ivy

There is a newer version: 4.10.0-1.5.11
Show newest version
// Targeted by JavaCPP version 1.5.2: DO NOT EDIT THIS FILE

package org.bytedeco.opencv.opencv_face;

import java.nio.*;
import org.bytedeco.javacpp.*;
import org.bytedeco.javacpp.annotation.*;

import static org.bytedeco.openblas.global.openblas_nolapack.*;
import static org.bytedeco.openblas.global.openblas.*;
import org.bytedeco.opencv.opencv_core.*;
import static org.bytedeco.opencv.global.opencv_core.*;
import org.bytedeco.opencv.opencv_imgproc.*;
import static org.bytedeco.opencv.global.opencv_imgproc.*;
import static org.bytedeco.opencv.global.opencv_imgcodecs.*;
import org.bytedeco.opencv.opencv_videoio.*;
import static org.bytedeco.opencv.global.opencv_videoio.*;
import org.bytedeco.opencv.opencv_highgui.*;
import static org.bytedeco.opencv.global.opencv_highgui.*;
import org.bytedeco.opencv.opencv_flann.*;
import static org.bytedeco.opencv.global.opencv_flann.*;
import org.bytedeco.opencv.opencv_features2d.*;
import static org.bytedeco.opencv.global.opencv_features2d.*;
import org.bytedeco.opencv.opencv_calib3d.*;
import static org.bytedeco.opencv.global.opencv_calib3d.*;
import org.bytedeco.opencv.opencv_objdetect.*;
import static org.bytedeco.opencv.global.opencv_objdetect.*;
import org.bytedeco.opencv.opencv_photo.*;
import static org.bytedeco.opencv.global.opencv_photo.*;

import static org.bytedeco.opencv.global.opencv_face.*;


/** \addtogroup face
 *  \{ */

@Namespace("cv::face") @Properties(inherit = org.bytedeco.opencv.presets.opencv_face.class)
public class FacemarkLBF extends FacemarkTrain {
    static { Loader.load(); }
    /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
    public FacemarkLBF(Pointer p) { super(p); }

    @NoOffset public static class Params extends Pointer {
        static { Loader.load(); }
        /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
        public Params(Pointer p) { super(p); }
        /** Native array allocator. Access with {@link Pointer#position(long)}. */
        public Params(long size) { super((Pointer)null); allocateArray(size); }
        private native void allocateArray(long size);
        @Override public Params position(long position) {
            return (Params)super.position(position);
        }
    
        /**
        * \brief Constructor
        */
        public Params() { super((Pointer)null); allocate(); }
        private native void allocate();

        
        /**  offset for the loaded face landmark points */
        public native double shape_offset(); public native Params shape_offset(double setter);
        
        /**  filename of the face detector model */
        public native @Str BytePointer cascade_face(); public native Params cascade_face(BytePointer setter);
        
        /** show the training print-out */
        public native @Cast("bool") boolean verbose(); public native Params verbose(boolean setter);

        
        /**  number of landmark points */
        public native int n_landmarks(); public native Params n_landmarks(int setter);
        
        /**  multiplier for augment the training data */
        public native int initShape_n(); public native Params initShape_n(int setter);

        
        /**  number of refinement stages */
        public native int stages_n(); public native Params stages_n(int setter);
        
        /**  number of tree in the model for each landmark point refinement */
        public native int tree_n(); public native Params tree_n(int setter);
        
        /**  the depth of decision tree, defines the size of feature */
        public native int tree_depth(); public native Params tree_depth(int setter);
        
        /**  overlap ratio for training the LBF feature */
        public native double bagging_overlap(); public native Params bagging_overlap(double setter);

        
        /**  filename where the trained model will be saved */
        public native @StdString BytePointer model_filename(); public native Params model_filename(BytePointer setter);
        /** flag to save the trained model or not */
        public native @Cast("bool") boolean save_model(); public native Params save_model(boolean setter);
        /** seed for shuffling the training data */
        public native @Cast("unsigned int") int seed(); public native Params seed(int setter);

        public native @StdVector IntPointer feats_m(); public native Params feats_m(IntPointer setter);
        public native @StdVector DoublePointer radius_m(); public native Params radius_m(DoublePointer setter);
        
        /**  index of facemark points on pupils of left and right eye */
        public native @StdVector IntPointer pupils(int i); public native Params pupils(int i, IntPointer setter);
        @MemberGetter public native @StdVector IntPointer pupils();

        public native @ByRef Rect detectROI(); public native Params detectROI(Rect setter);

        public native void read(@Const @ByRef FileNode arg0);
        public native void write(@ByRef FileStorage arg0);

    }

    @NoOffset public static class BBox extends Pointer {
        static { Loader.load(); }
        /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
        public BBox(Pointer p) { super(p); }
        /** Native array allocator. Access with {@link Pointer#position(long)}. */
        public BBox(long size) { super((Pointer)null); allocateArray(size); }
        private native void allocateArray(long size);
        @Override public BBox position(long position) {
            return (BBox)super.position(position);
        }
    
        public BBox() { super((Pointer)null); allocate(); }
        private native void allocate();
        public BBox(double x, double y, double w, double h) { super((Pointer)null); allocate(x, y, w, h); }
        private native void allocate(double x, double y, double w, double h);

        public native @ByVal Mat project(@Const @ByRef Mat shape);
        public native @ByVal Mat reproject(@Const @ByRef Mat shape);

        public native double x(); public native BBox x(double setter);
        public native double y(); public native BBox y(double setter);
        public native double x_center(); public native BBox x_center(double setter);
        public native double y_center(); public native BBox y_center(double setter);
        public native double x_scale(); public native BBox x_scale(double setter);
        public native double y_scale(); public native BBox y_scale(double setter);
        public native double width(); public native BBox width(double setter);
        public native double height(); public native BBox height(double setter);
    }

    public static native @Ptr FacemarkLBF create(@Const @ByRef(nullValue = "cv::face::FacemarkLBF::Params()") Params parameters );
    public static native @Ptr FacemarkLBF create( );
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy