001
002//
003// This file is auto-generated. Please don't modify it!
004//
005package org.opencv.objdetect;
006
007import java.lang.String;
008import java.util.ArrayList;
009import org.opencv.core.Mat;
010import org.opencv.core.MatOfDouble;
011import org.opencv.core.MatOfInt;
012import org.opencv.core.MatOfRect;
013import org.opencv.core.Size;
014
015// C++: class CascadeClassifier
016//javadoc: CascadeClassifier
017public class CascadeClassifier {
018
019    protected final long nativeObj;
020    protected CascadeClassifier(long addr) { nativeObj = addr; }
021
022
023    //
024    // C++:   CascadeClassifier(String filename)
025    //
026
027    //javadoc: CascadeClassifier::CascadeClassifier(filename)
028    public   CascadeClassifier(String filename)
029    {
030        
031        nativeObj = CascadeClassifier_0(filename);
032        
033        return;
034    }
035
036
037    //
038    // C++:   CascadeClassifier()
039    //
040
041    //javadoc: CascadeClassifier::CascadeClassifier()
042    public   CascadeClassifier()
043    {
044        
045        nativeObj = CascadeClassifier_1();
046        
047        return;
048    }
049
050
051    //
052    // C++:  Size getOriginalWindowSize()
053    //
054
055    //javadoc: CascadeClassifier::getOriginalWindowSize()
056    public  Size getOriginalWindowSize()
057    {
058        
059        Size retVal = new Size(getOriginalWindowSize_0(nativeObj));
060        
061        return retVal;
062    }
063
064
065    //
066    // C++: static bool convert(String oldcascade, String newcascade)
067    //
068
069    //javadoc: CascadeClassifier::convert(oldcascade, newcascade)
070    public static boolean convert(String oldcascade, String newcascade)
071    {
072        
073        boolean retVal = convert_0(oldcascade, newcascade);
074        
075        return retVal;
076    }
077
078
079    //
080    // C++:  bool empty()
081    //
082
083    //javadoc: CascadeClassifier::empty()
084    public  boolean empty()
085    {
086        
087        boolean retVal = empty_0(nativeObj);
088        
089        return retVal;
090    }
091
092
093    //
094    // C++:  bool isOldFormatCascade()
095    //
096
097    //javadoc: CascadeClassifier::isOldFormatCascade()
098    public  boolean isOldFormatCascade()
099    {
100        
101        boolean retVal = isOldFormatCascade_0(nativeObj);
102        
103        return retVal;
104    }
105
106
107    //
108    // C++:  bool load(String filename)
109    //
110
111    //javadoc: CascadeClassifier::load(filename)
112    public  boolean load(String filename)
113    {
114        
115        boolean retVal = load_0(nativeObj, filename);
116        
117        return retVal;
118    }
119
120
121    //
122    // C++:  bool read(FileNode node)
123    //
124
125    // Unknown type 'FileNode' (I), skipping the function
126
127
128    //
129    // C++:  int getFeatureType()
130    //
131
132    //javadoc: CascadeClassifier::getFeatureType()
133    public  int getFeatureType()
134    {
135        
136        int retVal = getFeatureType_0(nativeObj);
137        
138        return retVal;
139    }
140
141
142    //
143    // C++:  void detectMultiScale(Mat image, vector_Rect& objects, double scaleFactor = 1.1, int minNeighbors = 3, int flags = 0, Size minSize = Size(), Size maxSize = Size())
144    //
145
146    //javadoc: CascadeClassifier::detectMultiScale(image, objects, scaleFactor, minNeighbors, flags, minSize, maxSize)
147    public  void detectMultiScale(Mat image, MatOfRect objects, double scaleFactor, int minNeighbors, int flags, Size minSize, Size maxSize)
148    {
149        Mat objects_mat = objects;
150        detectMultiScale_0(nativeObj, image.nativeObj, objects_mat.nativeObj, scaleFactor, minNeighbors, flags, minSize.width, minSize.height, maxSize.width, maxSize.height);
151        
152        return;
153    }
154
155    //javadoc: CascadeClassifier::detectMultiScale(image, objects)
156    public  void detectMultiScale(Mat image, MatOfRect objects)
157    {
158        Mat objects_mat = objects;
159        detectMultiScale_1(nativeObj, image.nativeObj, objects_mat.nativeObj);
160        
161        return;
162    }
163
164
165    //
166    // C++:  void detectMultiScale(Mat image, vector_Rect& objects, vector_int& numDetections, double scaleFactor = 1.1, int minNeighbors = 3, int flags = 0, Size minSize = Size(), Size maxSize = Size())
167    //
168
169    //javadoc: CascadeClassifier::detectMultiScale(image, objects, numDetections, scaleFactor, minNeighbors, flags, minSize, maxSize)
170    public  void detectMultiScale2(Mat image, MatOfRect objects, MatOfInt numDetections, double scaleFactor, int minNeighbors, int flags, Size minSize, Size maxSize)
171    {
172        Mat objects_mat = objects;
173        Mat numDetections_mat = numDetections;
174        detectMultiScale2_0(nativeObj, image.nativeObj, objects_mat.nativeObj, numDetections_mat.nativeObj, scaleFactor, minNeighbors, flags, minSize.width, minSize.height, maxSize.width, maxSize.height);
175        
176        return;
177    }
178
179    //javadoc: CascadeClassifier::detectMultiScale(image, objects, numDetections)
180    public  void detectMultiScale2(Mat image, MatOfRect objects, MatOfInt numDetections)
181    {
182        Mat objects_mat = objects;
183        Mat numDetections_mat = numDetections;
184        detectMultiScale2_1(nativeObj, image.nativeObj, objects_mat.nativeObj, numDetections_mat.nativeObj);
185        
186        return;
187    }
188
189
190    //
191    // C++:  void detectMultiScale(Mat image, vector_Rect& objects, vector_int& rejectLevels, vector_double& levelWeights, double scaleFactor = 1.1, int minNeighbors = 3, int flags = 0, Size minSize = Size(), Size maxSize = Size(), bool outputRejectLevels = false)
192    //
193
194    //javadoc: CascadeClassifier::detectMultiScale(image, objects, rejectLevels, levelWeights, scaleFactor, minNeighbors, flags, minSize, maxSize, outputRejectLevels)
195    public  void detectMultiScale3(Mat image, MatOfRect objects, MatOfInt rejectLevels, MatOfDouble levelWeights, double scaleFactor, int minNeighbors, int flags, Size minSize, Size maxSize, boolean outputRejectLevels)
196    {
197        Mat objects_mat = objects;
198        Mat rejectLevels_mat = rejectLevels;
199        Mat levelWeights_mat = levelWeights;
200        detectMultiScale3_0(nativeObj, image.nativeObj, objects_mat.nativeObj, rejectLevels_mat.nativeObj, levelWeights_mat.nativeObj, scaleFactor, minNeighbors, flags, minSize.width, minSize.height, maxSize.width, maxSize.height, outputRejectLevels);
201        
202        return;
203    }
204
205    //javadoc: CascadeClassifier::detectMultiScale(image, objects, rejectLevels, levelWeights)
206    public  void detectMultiScale3(Mat image, MatOfRect objects, MatOfInt rejectLevels, MatOfDouble levelWeights)
207    {
208        Mat objects_mat = objects;
209        Mat rejectLevels_mat = rejectLevels;
210        Mat levelWeights_mat = levelWeights;
211        detectMultiScale3_1(nativeObj, image.nativeObj, objects_mat.nativeObj, rejectLevels_mat.nativeObj, levelWeights_mat.nativeObj);
212        
213        return;
214    }
215
216
217    @Override
218    protected void finalize() throws Throwable {
219        delete(nativeObj);
220    }
221
222
223
224    // C++:   CascadeClassifier(String filename)
225    private static native long CascadeClassifier_0(String filename);
226
227    // C++:   CascadeClassifier()
228    private static native long CascadeClassifier_1();
229
230    // C++:  Size getOriginalWindowSize()
231    private static native double[] getOriginalWindowSize_0(long nativeObj);
232
233    // C++: static bool convert(String oldcascade, String newcascade)
234    private static native boolean convert_0(String oldcascade, String newcascade);
235
236    // C++:  bool empty()
237    private static native boolean empty_0(long nativeObj);
238
239    // C++:  bool isOldFormatCascade()
240    private static native boolean isOldFormatCascade_0(long nativeObj);
241
242    // C++:  bool load(String filename)
243    private static native boolean load_0(long nativeObj, String filename);
244
245    // C++:  int getFeatureType()
246    private static native int getFeatureType_0(long nativeObj);
247
248    // C++:  void detectMultiScale(Mat image, vector_Rect& objects, double scaleFactor = 1.1, int minNeighbors = 3, int flags = 0, Size minSize = Size(), Size maxSize = Size())
249    private static native void detectMultiScale_0(long nativeObj, long image_nativeObj, long objects_mat_nativeObj, double scaleFactor, int minNeighbors, int flags, double minSize_width, double minSize_height, double maxSize_width, double maxSize_height);
250    private static native void detectMultiScale_1(long nativeObj, long image_nativeObj, long objects_mat_nativeObj);
251
252    // C++:  void detectMultiScale(Mat image, vector_Rect& objects, vector_int& numDetections, double scaleFactor = 1.1, int minNeighbors = 3, int flags = 0, Size minSize = Size(), Size maxSize = Size())
253    private static native void detectMultiScale2_0(long nativeObj, long image_nativeObj, long objects_mat_nativeObj, long numDetections_mat_nativeObj, double scaleFactor, int minNeighbors, int flags, double minSize_width, double minSize_height, double maxSize_width, double maxSize_height);
254    private static native void detectMultiScale2_1(long nativeObj, long image_nativeObj, long objects_mat_nativeObj, long numDetections_mat_nativeObj);
255
256    // C++:  void detectMultiScale(Mat image, vector_Rect& objects, vector_int& rejectLevels, vector_double& levelWeights, double scaleFactor = 1.1, int minNeighbors = 3, int flags = 0, Size minSize = Size(), Size maxSize = Size(), bool outputRejectLevels = false)
257    private static native void detectMultiScale3_0(long nativeObj, long image_nativeObj, long objects_mat_nativeObj, long rejectLevels_mat_nativeObj, long levelWeights_mat_nativeObj, double scaleFactor, int minNeighbors, int flags, double minSize_width, double minSize_height, double maxSize_width, double maxSize_height, boolean outputRejectLevels);
258    private static native void detectMultiScale3_1(long nativeObj, long image_nativeObj, long objects_mat_nativeObj, long rejectLevels_mat_nativeObj, long levelWeights_mat_nativeObj);
259
260    // native support for java finalize()
261    private static native void delete(long nativeObj);
262
263}