1
2//
3// This file is auto-generated. Please don't modify it!
4//
5package org.opencv.core;
6
7import java.lang.String;
8import java.util.ArrayList;
9import java.util.List;
10import org.opencv.core.Mat;
11import org.opencv.core.MatOfDouble;
12import org.opencv.core.MatOfInt;
13import org.opencv.core.Scalar;
14import org.opencv.core.TermCriteria;
15import org.opencv.utils.Converters;
16
17public class Core {
18
19    // these constants are wrapped inside functions to prevent inlining
20    private static String getVersion() { return "3.0.0-dev"; }
21    private static String getNativeLibraryName() { return "opencv_java300"; }
22    private static int getVersionMajor() { return 3; }
23    private static int getVersionMinor() { return 0; }
24    private static int getVersionRevision() { return 0; }
25    private static String getVersionStatus() { return "-dev"; }
26
27    public static final String VERSION = getVersion();
28    public static final String NATIVE_LIBRARY_NAME = getNativeLibraryName();
29    public static final int VERSION_MAJOR = getVersionMajor();
30    public static final int VERSION_MINOR = getVersionMinor();
31    public static final int VERSION_REVISION = getVersionRevision();
32    public static final String VERSION_STATUS = getVersionStatus();
33
34    private static final int
35            CV_8U = 0,
36            CV_8S = 1,
37            CV_16U = 2,
38            CV_16S = 3,
39            CV_32S = 4,
40            CV_32F = 5,
41            CV_64F = 6,
42            CV_USRTYPE1 = 7;
43
44
45    public static final int
46            SVD_MODIFY_A = 1,
47            SVD_NO_UV = 2,
48            SVD_FULL_UV = 4,
49            FILLED = -1,
50            REDUCE_SUM = 0,
51            REDUCE_AVG = 1,
52            REDUCE_MAX = 2,
53            REDUCE_MIN = 3,
54            StsOk = 0,
55            StsBackTrace = -1,
56            StsError = -2,
57            StsInternal = -3,
58            StsNoMem = -4,
59            StsBadArg = -5,
60            StsBadFunc = -6,
61            StsNoConv = -7,
62            StsAutoTrace = -8,
63            HeaderIsNull = -9,
64            BadImageSize = -10,
65            BadOffset = -11,
66            BadDataPtr = -12,
67            BadStep = -13,
68            BadModelOrChSeq = -14,
69            BadNumChannels = -15,
70            BadNumChannel1U = -16,
71            BadDepth = -17,
72            BadAlphaChannel = -18,
73            BadOrder = -19,
74            BadOrigin = -20,
75            BadAlign = -21,
76            BadCallBack = -22,
77            BadTileSize = -23,
78            BadCOI = -24,
79            BadROISize = -25,
80            MaskIsTiled = -26,
81            StsNullPtr = -27,
82            StsVecLengthErr = -28,
83            StsFilterStructContentErr = -29,
84            StsKernelStructContentErr = -30,
85            StsFilterOffsetErr = -31,
86            StsBadSize = -201,
87            StsDivByZero = -202,
88            StsInplaceNotSupported = -203,
89            StsObjectNotFound = -204,
90            StsUnmatchedFormats = -205,
91            StsBadFlag = -206,
92            StsBadPoint = -207,
93            StsBadMask = -208,
94            StsUnmatchedSizes = -209,
95            StsUnsupportedFormat = -210,
96            StsOutOfRange = -211,
97            StsParseError = -212,
98            StsNotImplemented = -213,
99            StsBadMemBlock = -214,
100            StsAssert = -215,
101            GpuNotSupported = -216,
102            GpuApiCallError = -217,
103            OpenGlNotSupported = -218,
104            OpenGlApiCallError = -219,
105            OpenCLApiCallError = -220,
106            OpenCLDoubleNotSupported = -221,
107            OpenCLInitError = -222,
108            OpenCLNoAMDBlasFft = -223,
109            DECOMP_LU = 0,
110            DECOMP_SVD = 1,
111            DECOMP_EIG = 2,
112            DECOMP_CHOLESKY = 3,
113            DECOMP_QR = 4,
114            DECOMP_NORMAL = 16,
115            NORM_INF = 1,
116            NORM_L1 = 2,
117            NORM_L2 = 4,
118            NORM_L2SQR = 5,
119            NORM_HAMMING = 6,
120            NORM_HAMMING2 = 7,
121            NORM_TYPE_MASK = 7,
122            NORM_RELATIVE = 8,
123            NORM_MINMAX = 32,
124            CMP_EQ = 0,
125            CMP_GT = 1,
126            CMP_GE = 2,
127            CMP_LT = 3,
128            CMP_LE = 4,
129            CMP_NE = 5,
130            GEMM_1_T = 1,
131            GEMM_2_T = 2,
132            GEMM_3_T = 4,
133            DFT_INVERSE = 1,
134            DFT_SCALE = 2,
135            DFT_ROWS = 4,
136            DFT_COMPLEX_OUTPUT = 16,
137            DFT_REAL_OUTPUT = 32,
138            DCT_INVERSE = DFT_INVERSE,
139            DCT_ROWS = DFT_ROWS,
140            BORDER_CONSTANT = 0,
141            BORDER_REPLICATE = 1,
142            BORDER_REFLECT = 2,
143            BORDER_WRAP = 3,
144            BORDER_REFLECT_101 = 4,
145            BORDER_TRANSPARENT = 5,
146            BORDER_REFLECT101 = BORDER_REFLECT_101,
147            BORDER_DEFAULT = BORDER_REFLECT_101,
148            BORDER_ISOLATED = 16,
149            SORT_EVERY_ROW = 0,
150            SORT_EVERY_COLUMN = 1,
151            SORT_ASCENDING = 0,
152            SORT_DESCENDING = 16,
153            COVAR_SCRAMBLED = 0,
154            COVAR_NORMAL = 1,
155            COVAR_USE_AVG = 2,
156            COVAR_SCALE = 4,
157            COVAR_ROWS = 8,
158            COVAR_COLS = 16,
159            KMEANS_RANDOM_CENTERS = 0,
160            KMEANS_PP_CENTERS = 2,
161            KMEANS_USE_INITIAL_LABELS = 1,
162            LINE_4 = 4,
163            LINE_8 = 8,
164            LINE_AA = 16,
165            FONT_HERSHEY_SIMPLEX = 0,
166            FONT_HERSHEY_PLAIN = 1,
167            FONT_HERSHEY_DUPLEX = 2,
168            FONT_HERSHEY_COMPLEX = 3,
169            FONT_HERSHEY_TRIPLEX = 4,
170            FONT_HERSHEY_COMPLEX_SMALL = 5,
171            FONT_HERSHEY_SCRIPT_SIMPLEX = 6,
172            FONT_HERSHEY_SCRIPT_COMPLEX = 7,
173            FONT_ITALIC = 16,
174            CPU_MMX = 1,
175            CPU_SSE = 2,
176            CPU_SSE2 = 3,
177            CPU_SSE3 = 4,
178            CPU_SSSE3 = 5,
179            CPU_SSE4_1 = 6,
180            CPU_SSE4_2 = 7,
181            CPU_POPCNT = 8,
182            CPU_AVX = 10,
183            CPU_AVX2 = 11,
184            CPU_FMA3 = 12,
185            CPU_AVX_512F = 13,
186            CPU_AVX_512BW = 14,
187            CPU_AVX_512CD = 15,
188            CPU_AVX_512DQ = 16,
189            CPU_AVX_512ER = 17,
190            CPU_AVX_512IFMA512 = 18,
191            CPU_AVX_512PF = 19,
192            CPU_AVX_512VBMI = 20,
193            CPU_AVX_512VL = 21,
194            CPU_NEON = 100;
195
196
197    //
198    // C++:  double getTickFrequency()
199    //
200
201    //javadoc: getTickFrequency()
202    public static double getTickFrequency()
203    {
204
205        double retVal = getTickFrequency_0();
206
207        return retVal;
208    }
209
210
211    //
212    // C++:  int64 getCPUTickCount()
213    //
214
215    //javadoc: getCPUTickCount()
216    public static long getCPUTickCount()
217    {
218
219        long retVal = getCPUTickCount_0();
220
221        return retVal;
222    }
223
224
225    //
226    // C++:  void setErrorVerbosity(bool verbose)
227    //
228
229    //javadoc: setErrorVerbosity(verbose)
230    public static void setErrorVerbosity(boolean verbose)
231    {
232
233        setErrorVerbosity_0(verbose);
234
235        return;
236    }
237
238
239    //
240    // C++:  void mulSpectrums(Mat a, Mat b, Mat& c, int flags, bool conjB = false)
241    //
242
243    //javadoc: mulSpectrums(a, b, c, flags, conjB)
244    public static void mulSpectrums(Mat a, Mat b, Mat c, int flags, boolean conjB)
245    {
246
247        mulSpectrums_0(a.nativeObj, b.nativeObj, c.nativeObj, flags, conjB);
248
249        return;
250    }
251
252    //javadoc: mulSpectrums(a, b, c, flags)
253    public static void mulSpectrums(Mat a, Mat b, Mat c, int flags)
254    {
255
256        mulSpectrums_1(a.nativeObj, b.nativeObj, c.nativeObj, flags);
257
258        return;
259    }
260
261
262    //
263    // C++:  int getOptimalDFTSize(int vecsize)
264    //
265
266    //javadoc: getOptimalDFTSize(vecsize)
267    public static int getOptimalDFTSize(int vecsize)
268    {
269
270        int retVal = getOptimalDFTSize_0(vecsize);
271
272        return retVal;
273    }
274
275
276    //
277    // C++:  void randu(Mat& dst, double low, double high)
278    //
279
280    //javadoc: randu(dst, low, high)
281    public static void randu(Mat dst, double low, double high)
282    {
283
284        randu_0(dst.nativeObj, low, high);
285
286        return;
287    }
288
289
290    //
291    // C++:  void randn(Mat& dst, double mean, double stddev)
292    //
293
294    //javadoc: randn(dst, mean, stddev)
295    public static void randn(Mat dst, double mean, double stddev)
296    {
297
298        randn_0(dst.nativeObj, mean, stddev);
299
300        return;
301    }
302
303
304    //
305    // C++:  void randShuffle(Mat& dst, double iterFactor = 1., RNG* rng = 0)
306    //
307
308    //javadoc: randShuffle(dst, iterFactor)
309    public static void randShuffle(Mat dst, double iterFactor)
310    {
311
312        randShuffle_0(dst.nativeObj, iterFactor);
313
314        return;
315    }
316
317    //javadoc: randShuffle(dst)
318    public static void randShuffle(Mat dst)
319    {
320
321        randShuffle_1(dst.nativeObj);
322
323        return;
324    }
325
326
327    //
328    // C++:  double kmeans(Mat data, int K, Mat& bestLabels, TermCriteria criteria, int attempts, int flags, Mat& centers = Mat())
329    //
330
331    //javadoc: kmeans(data, K, bestLabels, criteria, attempts, flags, centers)
332    public static double kmeans(Mat data, int K, Mat bestLabels, TermCriteria criteria, int attempts, int flags, Mat centers)
333    {
334
335        double retVal = kmeans_0(data.nativeObj, K, bestLabels.nativeObj, criteria.type, criteria.maxCount, criteria.epsilon, attempts, flags, centers.nativeObj);
336
337        return retVal;
338    }
339
340    //javadoc: kmeans(data, K, bestLabels, criteria, attempts, flags)
341    public static double kmeans(Mat data, int K, Mat bestLabels, TermCriteria criteria, int attempts, int flags)
342    {
343
344        double retVal = kmeans_1(data.nativeObj, K, bestLabels.nativeObj, criteria.type, criteria.maxCount, criteria.epsilon, attempts, flags);
345
346        return retVal;
347    }
348
349
350    //
351    // C++:  int borderInterpolate(int p, int len, int borderType)
352    //
353
354    //javadoc: borderInterpolate(p, len, borderType)
355    public static int borderInterpolate(int p, int len, int borderType)
356    {
357
358        int retVal = borderInterpolate_0(p, len, borderType);
359
360        return retVal;
361    }
362
363
364    //
365    // C++:  void copyMakeBorder(Mat src, Mat& dst, int top, int bottom, int left, int right, int borderType, Scalar value = Scalar())
366    //
367
368    //javadoc: copyMakeBorder(src, dst, top, bottom, left, right, borderType, value)
369    public static void copyMakeBorder(Mat src, Mat dst, int top, int bottom, int left, int right, int borderType, Scalar value)
370    {
371
372        copyMakeBorder_0(src.nativeObj, dst.nativeObj, top, bottom, left, right, borderType, value.val[0], value.val[1], value.val[2], value.val[3]);
373
374        return;
375    }
376
377    //javadoc: copyMakeBorder(src, dst, top, bottom, left, right, borderType)
378    public static void copyMakeBorder(Mat src, Mat dst, int top, int bottom, int left, int right, int borderType)
379    {
380
381        copyMakeBorder_1(src.nativeObj, dst.nativeObj, top, bottom, left, right, borderType);
382
383        return;
384    }
385
386
387    //
388    // C++:  void add(Mat src1, Mat src2, Mat& dst, Mat mask = Mat(), int dtype = -1)
389    //
390
391    //javadoc: add(src1, src2, dst, mask, dtype)
392    public static void add(Mat src1, Mat src2, Mat dst, Mat mask, int dtype)
393    {
394
395        add_0(src1.nativeObj, src2.nativeObj, dst.nativeObj, mask.nativeObj, dtype);
396
397        return;
398    }
399
400    //javadoc: add(src1, src2, dst, mask)
401    public static void add(Mat src1, Mat src2, Mat dst, Mat mask)
402    {
403
404        add_1(src1.nativeObj, src2.nativeObj, dst.nativeObj, mask.nativeObj);
405
406        return;
407    }
408
409    //javadoc: add(src1, src2, dst)
410    public static void add(Mat src1, Mat src2, Mat dst)
411    {
412
413        add_2(src1.nativeObj, src2.nativeObj, dst.nativeObj);
414
415        return;
416    }
417
418
419    //
420    // C++:  void subtract(Mat src1, Mat src2, Mat& dst, Mat mask = Mat(), int dtype = -1)
421    //
422
423    //javadoc: subtract(src1, src2, dst, mask, dtype)
424    public static void subtract(Mat src1, Mat src2, Mat dst, Mat mask, int dtype)
425    {
426
427        subtract_0(src1.nativeObj, src2.nativeObj, dst.nativeObj, mask.nativeObj, dtype);
428
429        return;
430    }
431
432    //javadoc: subtract(src1, src2, dst, mask)
433    public static void subtract(Mat src1, Mat src2, Mat dst, Mat mask)
434    {
435
436        subtract_1(src1.nativeObj, src2.nativeObj, dst.nativeObj, mask.nativeObj);
437
438        return;
439    }
440
441    //javadoc: subtract(src1, src2, dst)
442    public static void subtract(Mat src1, Mat src2, Mat dst)
443    {
444
445        subtract_2(src1.nativeObj, src2.nativeObj, dst.nativeObj);
446
447        return;
448    }
449
450
451    //
452    // C++:  void multiply(Mat src1, Mat src2, Mat& dst, double scale = 1, int dtype = -1)
453    //
454
455    //javadoc: multiply(src1, src2, dst, scale, dtype)
456    public static void multiply(Mat src1, Mat src2, Mat dst, double scale, int dtype)
457    {
458
459        multiply_0(src1.nativeObj, src2.nativeObj, dst.nativeObj, scale, dtype);
460
461        return;
462    }
463
464    //javadoc: multiply(src1, src2, dst, scale)
465    public static void multiply(Mat src1, Mat src2, Mat dst, double scale)
466    {
467
468        multiply_1(src1.nativeObj, src2.nativeObj, dst.nativeObj, scale);
469
470        return;
471    }
472
473    //javadoc: multiply(src1, src2, dst)
474    public static void multiply(Mat src1, Mat src2, Mat dst)
475    {
476
477        multiply_2(src1.nativeObj, src2.nativeObj, dst.nativeObj);
478
479        return;
480    }
481
482
483    //
484    // C++:  void divide(Mat src1, Mat src2, Mat& dst, double scale = 1, int dtype = -1)
485    //
486
487    //javadoc: divide(src1, src2, dst, scale, dtype)
488    public static void divide(Mat src1, Mat src2, Mat dst, double scale, int dtype)
489    {
490
491        divide_0(src1.nativeObj, src2.nativeObj, dst.nativeObj, scale, dtype);
492
493        return;
494    }
495
496    //javadoc: divide(src1, src2, dst, scale)
497    public static void divide(Mat src1, Mat src2, Mat dst, double scale)
498    {
499
500        divide_1(src1.nativeObj, src2.nativeObj, dst.nativeObj, scale);
501
502        return;
503    }
504
505    //javadoc: divide(src1, src2, dst)
506    public static void divide(Mat src1, Mat src2, Mat dst)
507    {
508
509        divide_2(src1.nativeObj, src2.nativeObj, dst.nativeObj);
510
511        return;
512    }
513
514
515    //
516    // C++:  void divide(double scale, Mat src2, Mat& dst, int dtype = -1)
517    //
518
519    //javadoc: divide(scale, src2, dst, dtype)
520    public static void divide(double scale, Mat src2, Mat dst, int dtype)
521    {
522
523        divide_3(scale, src2.nativeObj, dst.nativeObj, dtype);
524
525        return;
526    }
527
528    //javadoc: divide(scale, src2, dst)
529    public static void divide(double scale, Mat src2, Mat dst)
530    {
531
532        divide_4(scale, src2.nativeObj, dst.nativeObj);
533
534        return;
535    }
536
537
538    //
539    // C++:  void scaleAdd(Mat src1, double alpha, Mat src2, Mat& dst)
540    //
541
542    //javadoc: scaleAdd(src1, alpha, src2, dst)
543    public static void scaleAdd(Mat src1, double alpha, Mat src2, Mat dst)
544    {
545
546        scaleAdd_0(src1.nativeObj, alpha, src2.nativeObj, dst.nativeObj);
547
548        return;
549    }
550
551
552    //
553    // C++:  void addWeighted(Mat src1, double alpha, Mat src2, double beta, double gamma, Mat& dst, int dtype = -1)
554    //
555
556    //javadoc: addWeighted(src1, alpha, src2, beta, gamma, dst, dtype)
557    public static void addWeighted(Mat src1, double alpha, Mat src2, double beta, double gamma, Mat dst, int dtype)
558    {
559
560        addWeighted_0(src1.nativeObj, alpha, src2.nativeObj, beta, gamma, dst.nativeObj, dtype);
561
562        return;
563    }
564
565    //javadoc: addWeighted(src1, alpha, src2, beta, gamma, dst)
566    public static void addWeighted(Mat src1, double alpha, Mat src2, double beta, double gamma, Mat dst)
567    {
568
569        addWeighted_1(src1.nativeObj, alpha, src2.nativeObj, beta, gamma, dst.nativeObj);
570
571        return;
572    }
573
574
575    //
576    // C++:  void convertScaleAbs(Mat src, Mat& dst, double alpha = 1, double beta = 0)
577    //
578
579    //javadoc: convertScaleAbs(src, dst, alpha, beta)
580    public static void convertScaleAbs(Mat src, Mat dst, double alpha, double beta)
581    {
582
583        convertScaleAbs_0(src.nativeObj, dst.nativeObj, alpha, beta);
584
585        return;
586    }
587
588    //javadoc: convertScaleAbs(src, dst)
589    public static void convertScaleAbs(Mat src, Mat dst)
590    {
591
592        convertScaleAbs_1(src.nativeObj, dst.nativeObj);
593
594        return;
595    }
596
597
598    //
599    // C++:  Scalar sum(Mat src)
600    //
601
602    //javadoc: sum(src)
603    public static Scalar sumElems(Mat src)
604    {
605
606        Scalar retVal = new Scalar(sumElems_0(src.nativeObj));
607
608        return retVal;
609    }
610
611
612    //
613    // C++:  void LUT(Mat src, Mat lut, Mat& dst)
614    //
615
616    //javadoc: LUT(src, lut, dst)
617    public static void LUT(Mat src, Mat lut, Mat dst)
618    {
619
620        LUT_0(src.nativeObj, lut.nativeObj, dst.nativeObj);
621
622        return;
623    }
624
625
626    //
627    // C++:  void findNonZero(Mat src, Mat& idx)
628    //
629
630    //javadoc: findNonZero(src, idx)
631    public static void findNonZero(Mat src, Mat idx)
632    {
633
634        findNonZero_0(src.nativeObj, idx.nativeObj);
635
636        return;
637    }
638
639
640    //
641    // C++:  int countNonZero(Mat src)
642    //
643
644    //javadoc: countNonZero(src)
645    public static int countNonZero(Mat src)
646    {
647
648        int retVal = countNonZero_0(src.nativeObj);
649
650        return retVal;
651    }
652
653
654    //
655    // C++:  Scalar mean(Mat src, Mat mask = Mat())
656    //
657
658    //javadoc: mean(src, mask)
659    public static Scalar mean(Mat src, Mat mask)
660    {
661
662        Scalar retVal = new Scalar(mean_0(src.nativeObj, mask.nativeObj));
663
664        return retVal;
665    }
666
667    //javadoc: mean(src)
668    public static Scalar mean(Mat src)
669    {
670
671        Scalar retVal = new Scalar(mean_1(src.nativeObj));
672
673        return retVal;
674    }
675
676
677    //
678    // C++:  void meanStdDev(Mat src, vector_double& mean, vector_double& stddev, Mat mask = Mat())
679    //
680
681    //javadoc: meanStdDev(src, mean, stddev, mask)
682    public static void meanStdDev(Mat src, MatOfDouble mean, MatOfDouble stddev, Mat mask)
683    {
684        Mat mean_mat = mean;
685        Mat stddev_mat = stddev;
686        meanStdDev_0(src.nativeObj, mean_mat.nativeObj, stddev_mat.nativeObj, mask.nativeObj);
687
688        return;
689    }
690
691    //javadoc: meanStdDev(src, mean, stddev)
692    public static void meanStdDev(Mat src, MatOfDouble mean, MatOfDouble stddev)
693    {
694        Mat mean_mat = mean;
695        Mat stddev_mat = stddev;
696        meanStdDev_1(src.nativeObj, mean_mat.nativeObj, stddev_mat.nativeObj);
697
698        return;
699    }
700
701
702    //
703    // C++:  double norm(Mat src1, int normType = NORM_L2, Mat mask = Mat())
704    //
705
706    //javadoc: norm(src1, normType, mask)
707    public static double norm(Mat src1, int normType, Mat mask)
708    {
709
710        double retVal = norm_0(src1.nativeObj, normType, mask.nativeObj);
711
712        return retVal;
713    }
714
715    //javadoc: norm(src1, normType)
716    public static double norm(Mat src1, int normType)
717    {
718
719        double retVal = norm_1(src1.nativeObj, normType);
720
721        return retVal;
722    }
723
724    //javadoc: norm(src1)
725    public static double norm(Mat src1)
726    {
727
728        double retVal = norm_2(src1.nativeObj);
729
730        return retVal;
731    }
732
733
734    //
735    // C++:  double norm(Mat src1, Mat src2, int normType = NORM_L2, Mat mask = Mat())
736    //
737
738    //javadoc: norm(src1, src2, normType, mask)
739    public static double norm(Mat src1, Mat src2, int normType, Mat mask)
740    {
741
742        double retVal = norm_3(src1.nativeObj, src2.nativeObj, normType, mask.nativeObj);
743
744        return retVal;
745    }
746
747    //javadoc: norm(src1, src2, normType)
748    public static double norm(Mat src1, Mat src2, int normType)
749    {
750
751        double retVal = norm_4(src1.nativeObj, src2.nativeObj, normType);
752
753        return retVal;
754    }
755
756    //javadoc: norm(src1, src2)
757    public static double norm(Mat src1, Mat src2)
758    {
759
760        double retVal = norm_5(src1.nativeObj, src2.nativeObj);
761
762        return retVal;
763    }
764
765
766    //
767    // C++:  double PSNR(Mat src1, Mat src2)
768    //
769
770    //javadoc: PSNR(src1, src2)
771    public static double PSNR(Mat src1, Mat src2)
772    {
773
774        double retVal = PSNR_0(src1.nativeObj, src2.nativeObj);
775
776        return retVal;
777    }
778
779
780    //
781    // C++:  void batchDistance(Mat src1, Mat src2, Mat& dist, int dtype, Mat& nidx, int normType = NORM_L2, int K = 0, Mat mask = Mat(), int update = 0, bool crosscheck = false)
782    //
783
784    //javadoc: batchDistance(src1, src2, dist, dtype, nidx, normType, K, mask, update, crosscheck)
785    public static void batchDistance(Mat src1, Mat src2, Mat dist, int dtype, Mat nidx, int normType, int K, Mat mask, int update, boolean crosscheck)
786    {
787
788        batchDistance_0(src1.nativeObj, src2.nativeObj, dist.nativeObj, dtype, nidx.nativeObj, normType, K, mask.nativeObj, update, crosscheck);
789
790        return;
791    }
792
793    //javadoc: batchDistance(src1, src2, dist, dtype, nidx, normType, K)
794    public static void batchDistance(Mat src1, Mat src2, Mat dist, int dtype, Mat nidx, int normType, int K)
795    {
796
797        batchDistance_1(src1.nativeObj, src2.nativeObj, dist.nativeObj, dtype, nidx.nativeObj, normType, K);
798
799        return;
800    }
801
802    //javadoc: batchDistance(src1, src2, dist, dtype, nidx)
803    public static void batchDistance(Mat src1, Mat src2, Mat dist, int dtype, Mat nidx)
804    {
805
806        batchDistance_2(src1.nativeObj, src2.nativeObj, dist.nativeObj, dtype, nidx.nativeObj);
807
808        return;
809    }
810
811
812    //
813    // C++:  float cubeRoot(float val)
814    //
815
816    //javadoc: cubeRoot(val)
817    public static float cubeRoot(float val)
818    {
819
820        float retVal = cubeRoot_0(val);
821
822        return retVal;
823    }
824
825
826    //
827    // C++:  float fastAtan2(float y, float x)
828    //
829
830    //javadoc: fastAtan2(y, x)
831    public static float fastAtan2(float y, float x)
832    {
833
834        float retVal = fastAtan2_0(y, x);
835
836        return retVal;
837    }
838
839
840    //
841    // C++:  void merge(vector_Mat mv, Mat& dst)
842    //
843
844    //javadoc: merge(mv, dst)
845    public static void merge(List<Mat> mv, Mat dst)
846    {
847        Mat mv_mat = Converters.vector_Mat_to_Mat(mv);
848        merge_0(mv_mat.nativeObj, dst.nativeObj);
849
850        return;
851    }
852
853
854    //
855    // C++:  void split(Mat m, vector_Mat& mv)
856    //
857
858    //javadoc: split(m, mv)
859    public static void split(Mat m, List<Mat> mv)
860    {
861        Mat mv_mat = new Mat();
862        split_0(m.nativeObj, mv_mat.nativeObj);
863        Converters.Mat_to_vector_Mat(mv_mat, mv);
864        mv_mat.release();
865        return;
866    }
867
868
869    //
870    // C++:  void mixChannels(vector_Mat src, vector_Mat dst, vector_int fromTo)
871    //
872
873    //javadoc: mixChannels(src, dst, fromTo)
874    public static void mixChannels(List<Mat> src, List<Mat> dst, MatOfInt fromTo)
875    {
876        Mat src_mat = Converters.vector_Mat_to_Mat(src);
877        Mat dst_mat = Converters.vector_Mat_to_Mat(dst);
878        Mat fromTo_mat = fromTo;
879        mixChannels_0(src_mat.nativeObj, dst_mat.nativeObj, fromTo_mat.nativeObj);
880
881        return;
882    }
883
884
885    //
886    // C++:  void extractChannel(Mat src, Mat& dst, int coi)
887    //
888
889    //javadoc: extractChannel(src, dst, coi)
890    public static void extractChannel(Mat src, Mat dst, int coi)
891    {
892
893        extractChannel_0(src.nativeObj, dst.nativeObj, coi);
894
895        return;
896    }
897
898
899    //
900    // C++:  void insertChannel(Mat src, Mat& dst, int coi)
901    //
902
903    //javadoc: insertChannel(src, dst, coi)
904    public static void insertChannel(Mat src, Mat dst, int coi)
905    {
906
907        insertChannel_0(src.nativeObj, dst.nativeObj, coi);
908
909        return;
910    }
911
912
913    //
914    // C++:  void normalize(Mat src, Mat& dst, double alpha = 1, double beta = 0, int norm_type = NORM_L2, int dtype = -1, Mat mask = Mat())
915    //
916
917    //javadoc: normalize(src, dst, alpha, beta, norm_type, dtype, mask)
918    public static void normalize(Mat src, Mat dst, double alpha, double beta, int norm_type, int dtype, Mat mask)
919    {
920
921        normalize_0(src.nativeObj, dst.nativeObj, alpha, beta, norm_type, dtype, mask.nativeObj);
922
923        return;
924    }
925
926    //javadoc: normalize(src, dst, alpha, beta, norm_type, dtype)
927    public static void normalize(Mat src, Mat dst, double alpha, double beta, int norm_type, int dtype)
928    {
929
930        normalize_1(src.nativeObj, dst.nativeObj, alpha, beta, norm_type, dtype);
931
932        return;
933    }
934
935    //javadoc: normalize(src, dst, alpha, beta, norm_type)
936    public static void normalize(Mat src, Mat dst, double alpha, double beta, int norm_type)
937    {
938
939        normalize_2(src.nativeObj, dst.nativeObj, alpha, beta, norm_type);
940
941        return;
942    }
943
944    //javadoc: normalize(src, dst)
945    public static void normalize(Mat src, Mat dst)
946    {
947
948        normalize_3(src.nativeObj, dst.nativeObj);
949
950        return;
951    }
952
953
954    //
955    // C++:  void reduce(Mat src, Mat& dst, int dim, int rtype, int dtype = -1)
956    //
957
958    //javadoc: reduce(src, dst, dim, rtype, dtype)
959    public static void reduce(Mat src, Mat dst, int dim, int rtype, int dtype)
960    {
961
962        reduce_0(src.nativeObj, dst.nativeObj, dim, rtype, dtype);
963
964        return;
965    }
966
967    //javadoc: reduce(src, dst, dim, rtype)
968    public static void reduce(Mat src, Mat dst, int dim, int rtype)
969    {
970
971        reduce_1(src.nativeObj, dst.nativeObj, dim, rtype);
972
973        return;
974    }
975
976
977    //
978    // C++:  int getNumberOfCPUs()
979    //
980
981    //javadoc: getNumberOfCPUs()
982    public static int getNumberOfCPUs()
983    {
984
985        int retVal = getNumberOfCPUs_0();
986
987        return retVal;
988    }
989
990
991    //
992    // C++:  void add(Mat src1, Scalar src2, Mat& dst, Mat mask = Mat(), int dtype = -1)
993    //
994
995    //javadoc: add(src1, src2, dst, mask, dtype)
996    public static void add(Mat src1, Scalar src2, Mat dst, Mat mask, int dtype)
997    {
998
999        add_3(src1.nativeObj, src2.val[0], src2.val[1], src2.val[2], src2.val[3], dst.nativeObj, mask.nativeObj, dtype);
1000
1001        return;
1002    }
1003
1004    //javadoc: add(src1, src2, dst, mask)
1005    public static void add(Mat src1, Scalar src2, Mat dst, Mat mask)
1006    {
1007
1008        add_4(src1.nativeObj, src2.val[0], src2.val[1], src2.val[2], src2.val[3], dst.nativeObj, mask.nativeObj);
1009
1010        return;
1011    }
1012
1013    //javadoc: add(src1, src2, dst)
1014    public static void add(Mat src1, Scalar src2, Mat dst)
1015    {
1016
1017        add_5(src1.nativeObj, src2.val[0], src2.val[1], src2.val[2], src2.val[3], dst.nativeObj);
1018
1019        return;
1020    }
1021
1022
1023    //
1024    // C++:  void subtract(Mat src1, Scalar src2, Mat& dst, Mat mask = Mat(), int dtype = -1)
1025    //
1026
1027    //javadoc: subtract(src1, src2, dst, mask, dtype)
1028    public static void subtract(Mat src1, Scalar src2, Mat dst, Mat mask, int dtype)
1029    {
1030
1031        subtract_3(src1.nativeObj, src2.val[0], src2.val[1], src2.val[2], src2.val[3], dst.nativeObj, mask.nativeObj, dtype);
1032
1033        return;
1034    }
1035
1036    //javadoc: subtract(src1, src2, dst, mask)
1037    public static void subtract(Mat src1, Scalar src2, Mat dst, Mat mask)
1038    {
1039
1040        subtract_4(src1.nativeObj, src2.val[0], src2.val[1], src2.val[2], src2.val[3], dst.nativeObj, mask.nativeObj);
1041
1042        return;
1043    }
1044
1045    //javadoc: subtract(src1, src2, dst)
1046    public static void subtract(Mat src1, Scalar src2, Mat dst)
1047    {
1048
1049        subtract_5(src1.nativeObj, src2.val[0], src2.val[1], src2.val[2], src2.val[3], dst.nativeObj);
1050
1051        return;
1052    }
1053
1054
1055    //
1056    // C++:  void multiply(Mat src1, Scalar src2, Mat& dst, double scale = 1, int dtype = -1)
1057    //
1058
1059    //javadoc: multiply(src1, src2, dst, scale, dtype)
1060    public static void multiply(Mat src1, Scalar src2, Mat dst, double scale, int dtype)
1061    {
1062
1063        multiply_3(src1.nativeObj, src2.val[0], src2.val[1], src2.val[2], src2.val[3], dst.nativeObj, scale, dtype);
1064
1065        return;
1066    }
1067
1068    //javadoc: multiply(src1, src2, dst, scale)
1069    public static void multiply(Mat src1, Scalar src2, Mat dst, double scale)
1070    {
1071
1072        multiply_4(src1.nativeObj, src2.val[0], src2.val[1], src2.val[2], src2.val[3], dst.nativeObj, scale);
1073
1074        return;
1075    }
1076
1077    //javadoc: multiply(src1, src2, dst)
1078    public static void multiply(Mat src1, Scalar src2, Mat dst)
1079    {
1080
1081        multiply_5(src1.nativeObj, src2.val[0], src2.val[1], src2.val[2], src2.val[3], dst.nativeObj);
1082
1083        return;
1084    }
1085
1086
1087    //
1088    // C++:  void divide(Mat src1, Scalar src2, Mat& dst, double scale = 1, int dtype = -1)
1089    //
1090
1091    //javadoc: divide(src1, src2, dst, scale, dtype)
1092    public static void divide(Mat src1, Scalar src2, Mat dst, double scale, int dtype)
1093    {
1094
1095        divide_5(src1.nativeObj, src2.val[0], src2.val[1], src2.val[2], src2.val[3], dst.nativeObj, scale, dtype);
1096
1097        return;
1098    }
1099
1100    //javadoc: divide(src1, src2, dst, scale)
1101    public static void divide(Mat src1, Scalar src2, Mat dst, double scale)
1102    {
1103
1104        divide_6(src1.nativeObj, src2.val[0], src2.val[1], src2.val[2], src2.val[3], dst.nativeObj, scale);
1105
1106        return;
1107    }
1108
1109    //javadoc: divide(src1, src2, dst)
1110    public static void divide(Mat src1, Scalar src2, Mat dst)
1111    {
1112
1113        divide_7(src1.nativeObj, src2.val[0], src2.val[1], src2.val[2], src2.val[3], dst.nativeObj);
1114
1115        return;
1116    }
1117
1118
1119    //
1120    // C++:  void absdiff(Mat src1, Scalar src2, Mat& dst)
1121    //
1122
1123    //javadoc: absdiff(src1, src2, dst)
1124    public static void absdiff(Mat src1, Scalar src2, Mat dst)
1125    {
1126
1127        absdiff_0(src1.nativeObj, src2.val[0], src2.val[1], src2.val[2], src2.val[3], dst.nativeObj);
1128
1129        return;
1130    }
1131
1132
1133    //
1134    // C++:  void compare(Mat src1, Scalar src2, Mat& dst, int cmpop)
1135    //
1136
1137    //javadoc: compare(src1, src2, dst, cmpop)
1138    public static void compare(Mat src1, Scalar src2, Mat dst, int cmpop)
1139    {
1140
1141        compare_0(src1.nativeObj, src2.val[0], src2.val[1], src2.val[2], src2.val[3], dst.nativeObj, cmpop);
1142
1143        return;
1144    }
1145
1146
1147    //
1148    // C++:  void min(Mat src1, Scalar src2, Mat& dst)
1149    //
1150
1151    //javadoc: min(src1, src2, dst)
1152    public static void min(Mat src1, Scalar src2, Mat dst)
1153    {
1154
1155        min_0(src1.nativeObj, src2.val[0], src2.val[1], src2.val[2], src2.val[3], dst.nativeObj);
1156
1157        return;
1158    }
1159
1160
1161    //
1162    // C++:  void max(Mat src1, Scalar src2, Mat& dst)
1163    //
1164
1165    //javadoc: max(src1, src2, dst)
1166    public static void max(Mat src1, Scalar src2, Mat dst)
1167    {
1168
1169        max_0(src1.nativeObj, src2.val[0], src2.val[1], src2.val[2], src2.val[3], dst.nativeObj);
1170
1171        return;
1172    }
1173
1174
1175    //
1176    // C++:  int64 getTickCount()
1177    //
1178
1179    //javadoc: getTickCount()
1180    public static long getTickCount()
1181    {
1182
1183        long retVal = getTickCount_0();
1184
1185        return retVal;
1186    }
1187
1188
1189    //
1190    // C++:  String getBuildInformation()
1191    //
1192
1193    //javadoc: getBuildInformation()
1194    public static String getBuildInformation()
1195    {
1196
1197        String retVal = getBuildInformation_0();
1198
1199        return retVal;
1200    }
1201
1202
1203    //
1204    // C++:  void flip(Mat src, Mat& dst, int flipCode)
1205    //
1206
1207    //javadoc: flip(src, dst, flipCode)
1208    public static void flip(Mat src, Mat dst, int flipCode)
1209    {
1210
1211        flip_0(src.nativeObj, dst.nativeObj, flipCode);
1212
1213        return;
1214    }
1215
1216
1217    //
1218    // C++:  void repeat(Mat src, int ny, int nx, Mat& dst)
1219    //
1220
1221    //javadoc: repeat(src, ny, nx, dst)
1222    public static void repeat(Mat src, int ny, int nx, Mat dst)
1223    {
1224
1225        repeat_0(src.nativeObj, ny, nx, dst.nativeObj);
1226
1227        return;
1228    }
1229
1230
1231    //
1232    // C++:  void hconcat(vector_Mat src, Mat& dst)
1233    //
1234
1235    //javadoc: hconcat(src, dst)
1236    public static void hconcat(List<Mat> src, Mat dst)
1237    {
1238        Mat src_mat = Converters.vector_Mat_to_Mat(src);
1239        hconcat_0(src_mat.nativeObj, dst.nativeObj);
1240
1241        return;
1242    }
1243
1244
1245    //
1246    // C++:  void vconcat(vector_Mat src, Mat& dst)
1247    //
1248
1249    //javadoc: vconcat(src, dst)
1250    public static void vconcat(List<Mat> src, Mat dst)
1251    {
1252        Mat src_mat = Converters.vector_Mat_to_Mat(src);
1253        vconcat_0(src_mat.nativeObj, dst.nativeObj);
1254
1255        return;
1256    }
1257
1258
1259    //
1260    // C++:  void bitwise_and(Mat src1, Mat src2, Mat& dst, Mat mask = Mat())
1261    //
1262
1263    //javadoc: bitwise_and(src1, src2, dst, mask)
1264    public static void bitwise_and(Mat src1, Mat src2, Mat dst, Mat mask)
1265    {
1266
1267        bitwise_and_0(src1.nativeObj, src2.nativeObj, dst.nativeObj, mask.nativeObj);
1268
1269        return;
1270    }
1271
1272    //javadoc: bitwise_and(src1, src2, dst)
1273    public static void bitwise_and(Mat src1, Mat src2, Mat dst)
1274    {
1275
1276        bitwise_and_1(src1.nativeObj, src2.nativeObj, dst.nativeObj);
1277
1278        return;
1279    }
1280
1281
1282    //
1283    // C++:  void bitwise_or(Mat src1, Mat src2, Mat& dst, Mat mask = Mat())
1284    //
1285
1286    //javadoc: bitwise_or(src1, src2, dst, mask)
1287    public static void bitwise_or(Mat src1, Mat src2, Mat dst, Mat mask)
1288    {
1289
1290        bitwise_or_0(src1.nativeObj, src2.nativeObj, dst.nativeObj, mask.nativeObj);
1291
1292        return;
1293    }
1294
1295    //javadoc: bitwise_or(src1, src2, dst)
1296    public static void bitwise_or(Mat src1, Mat src2, Mat dst)
1297    {
1298
1299        bitwise_or_1(src1.nativeObj, src2.nativeObj, dst.nativeObj);
1300
1301        return;
1302    }
1303
1304
1305    //
1306    // C++:  void bitwise_xor(Mat src1, Mat src2, Mat& dst, Mat mask = Mat())
1307    //
1308
1309    //javadoc: bitwise_xor(src1, src2, dst, mask)
1310    public static void bitwise_xor(Mat src1, Mat src2, Mat dst, Mat mask)
1311    {
1312
1313        bitwise_xor_0(src1.nativeObj, src2.nativeObj, dst.nativeObj, mask.nativeObj);
1314
1315        return;
1316    }
1317
1318    //javadoc: bitwise_xor(src1, src2, dst)
1319    public static void bitwise_xor(Mat src1, Mat src2, Mat dst)
1320    {
1321
1322        bitwise_xor_1(src1.nativeObj, src2.nativeObj, dst.nativeObj);
1323
1324        return;
1325    }
1326
1327
1328    //
1329    // C++:  void bitwise_not(Mat src, Mat& dst, Mat mask = Mat())
1330    //
1331
1332    //javadoc: bitwise_not(src, dst, mask)
1333    public static void bitwise_not(Mat src, Mat dst, Mat mask)
1334    {
1335
1336        bitwise_not_0(src.nativeObj, dst.nativeObj, mask.nativeObj);
1337
1338        return;
1339    }
1340
1341    //javadoc: bitwise_not(src, dst)
1342    public static void bitwise_not(Mat src, Mat dst)
1343    {
1344
1345        bitwise_not_1(src.nativeObj, dst.nativeObj);
1346
1347        return;
1348    }
1349
1350
1351    //
1352    // C++:  void absdiff(Mat src1, Mat src2, Mat& dst)
1353    //
1354
1355    //javadoc: absdiff(src1, src2, dst)
1356    public static void absdiff(Mat src1, Mat src2, Mat dst)
1357    {
1358
1359        absdiff_1(src1.nativeObj, src2.nativeObj, dst.nativeObj);
1360
1361        return;
1362    }
1363
1364
1365    //
1366    // C++:  void inRange(Mat src, Scalar lowerb, Scalar upperb, Mat& dst)
1367    //
1368
1369    //javadoc: inRange(src, lowerb, upperb, dst)
1370    public static void inRange(Mat src, Scalar lowerb, Scalar upperb, Mat dst)
1371    {
1372
1373        inRange_0(src.nativeObj, lowerb.val[0], lowerb.val[1], lowerb.val[2], lowerb.val[3], upperb.val[0], upperb.val[1], upperb.val[2], upperb.val[3], dst.nativeObj);
1374
1375        return;
1376    }
1377
1378
1379    //
1380    // C++:  void compare(Mat src1, Mat src2, Mat& dst, int cmpop)
1381    //
1382
1383    //javadoc: compare(src1, src2, dst, cmpop)
1384    public static void compare(Mat src1, Mat src2, Mat dst, int cmpop)
1385    {
1386
1387        compare_1(src1.nativeObj, src2.nativeObj, dst.nativeObj, cmpop);
1388
1389        return;
1390    }
1391
1392
1393    //
1394    // C++:  void min(Mat src1, Mat src2, Mat& dst)
1395    //
1396
1397    //javadoc: min(src1, src2, dst)
1398    public static void min(Mat src1, Mat src2, Mat dst)
1399    {
1400
1401        min_1(src1.nativeObj, src2.nativeObj, dst.nativeObj);
1402
1403        return;
1404    }
1405
1406
1407    //
1408    // C++:  void max(Mat src1, Mat src2, Mat& dst)
1409    //
1410
1411    //javadoc: max(src1, src2, dst)
1412    public static void max(Mat src1, Mat src2, Mat dst)
1413    {
1414
1415        max_1(src1.nativeObj, src2.nativeObj, dst.nativeObj);
1416
1417        return;
1418    }
1419
1420
1421    //
1422    // C++:  void sqrt(Mat src, Mat& dst)
1423    //
1424
1425    //javadoc: sqrt(src, dst)
1426    public static void sqrt(Mat src, Mat dst)
1427    {
1428
1429        sqrt_0(src.nativeObj, dst.nativeObj);
1430
1431        return;
1432    }
1433
1434
1435    //
1436    // C++:  void pow(Mat src, double power, Mat& dst)
1437    //
1438
1439    //javadoc: pow(src, power, dst)
1440    public static void pow(Mat src, double power, Mat dst)
1441    {
1442
1443        pow_0(src.nativeObj, power, dst.nativeObj);
1444
1445        return;
1446    }
1447
1448
1449    //
1450    // C++:  void exp(Mat src, Mat& dst)
1451    //
1452
1453    //javadoc: exp(src, dst)
1454    public static void exp(Mat src, Mat dst)
1455    {
1456
1457        exp_0(src.nativeObj, dst.nativeObj);
1458
1459        return;
1460    }
1461
1462
1463    //
1464    // C++:  void log(Mat src, Mat& dst)
1465    //
1466
1467    //javadoc: log(src, dst)
1468    public static void log(Mat src, Mat dst)
1469    {
1470
1471        log_0(src.nativeObj, dst.nativeObj);
1472
1473        return;
1474    }
1475
1476
1477    //
1478    // C++:  void polarToCart(Mat magnitude, Mat angle, Mat& x, Mat& y, bool angleInDegrees = false)
1479    //
1480
1481    //javadoc: polarToCart(magnitude, angle, x, y, angleInDegrees)
1482    public static void polarToCart(Mat magnitude, Mat angle, Mat x, Mat y, boolean angleInDegrees)
1483    {
1484
1485        polarToCart_0(magnitude.nativeObj, angle.nativeObj, x.nativeObj, y.nativeObj, angleInDegrees);
1486
1487        return;
1488    }
1489
1490    //javadoc: polarToCart(magnitude, angle, x, y)
1491    public static void polarToCart(Mat magnitude, Mat angle, Mat x, Mat y)
1492    {
1493
1494        polarToCart_1(magnitude.nativeObj, angle.nativeObj, x.nativeObj, y.nativeObj);
1495
1496        return;
1497    }
1498
1499
1500    //
1501    // C++:  void cartToPolar(Mat x, Mat y, Mat& magnitude, Mat& angle, bool angleInDegrees = false)
1502    //
1503
1504    //javadoc: cartToPolar(x, y, magnitude, angle, angleInDegrees)
1505    public static void cartToPolar(Mat x, Mat y, Mat magnitude, Mat angle, boolean angleInDegrees)
1506    {
1507
1508        cartToPolar_0(x.nativeObj, y.nativeObj, magnitude.nativeObj, angle.nativeObj, angleInDegrees);
1509
1510        return;
1511    }
1512
1513    //javadoc: cartToPolar(x, y, magnitude, angle)
1514    public static void cartToPolar(Mat x, Mat y, Mat magnitude, Mat angle)
1515    {
1516
1517        cartToPolar_1(x.nativeObj, y.nativeObj, magnitude.nativeObj, angle.nativeObj);
1518
1519        return;
1520    }
1521
1522
1523    //
1524    // C++:  void phase(Mat x, Mat y, Mat& angle, bool angleInDegrees = false)
1525    //
1526
1527    //javadoc: phase(x, y, angle, angleInDegrees)
1528    public static void phase(Mat x, Mat y, Mat angle, boolean angleInDegrees)
1529    {
1530
1531        phase_0(x.nativeObj, y.nativeObj, angle.nativeObj, angleInDegrees);
1532
1533        return;
1534    }
1535
1536    //javadoc: phase(x, y, angle)
1537    public static void phase(Mat x, Mat y, Mat angle)
1538    {
1539
1540        phase_1(x.nativeObj, y.nativeObj, angle.nativeObj);
1541
1542        return;
1543    }
1544
1545
1546    //
1547    // C++:  void magnitude(Mat x, Mat y, Mat& magnitude)
1548    //
1549
1550    //javadoc: magnitude(x, y, magnitude)
1551    public static void magnitude(Mat x, Mat y, Mat magnitude)
1552    {
1553
1554        magnitude_0(x.nativeObj, y.nativeObj, magnitude.nativeObj);
1555
1556        return;
1557    }
1558
1559
1560    //
1561    // C++:  bool checkRange(Mat a, bool quiet = true,  _hidden_ * pos = 0, double minVal = -DBL_MAX, double maxVal = DBL_MAX)
1562    //
1563
1564    //javadoc: checkRange(a, quiet, minVal, maxVal)
1565    public static boolean checkRange(Mat a, boolean quiet, double minVal, double maxVal)
1566    {
1567
1568        boolean retVal = checkRange_0(a.nativeObj, quiet, minVal, maxVal);
1569
1570        return retVal;
1571    }
1572
1573    //javadoc: checkRange(a)
1574    public static boolean checkRange(Mat a)
1575    {
1576
1577        boolean retVal = checkRange_1(a.nativeObj);
1578
1579        return retVal;
1580    }
1581
1582
1583    //
1584    // C++:  void patchNaNs(Mat& a, double val = 0)
1585    //
1586
1587    //javadoc: patchNaNs(a, val)
1588    public static void patchNaNs(Mat a, double val)
1589    {
1590
1591        patchNaNs_0(a.nativeObj, val);
1592
1593        return;
1594    }
1595
1596    //javadoc: patchNaNs(a)
1597    public static void patchNaNs(Mat a)
1598    {
1599
1600        patchNaNs_1(a.nativeObj);
1601
1602        return;
1603    }
1604
1605
1606    //
1607    // C++:  void gemm(Mat src1, Mat src2, double alpha, Mat src3, double beta, Mat& dst, int flags = 0)
1608    //
1609
1610    //javadoc: gemm(src1, src2, alpha, src3, beta, dst, flags)
1611    public static void gemm(Mat src1, Mat src2, double alpha, Mat src3, double beta, Mat dst, int flags)
1612    {
1613
1614        gemm_0(src1.nativeObj, src2.nativeObj, alpha, src3.nativeObj, beta, dst.nativeObj, flags);
1615
1616        return;
1617    }
1618
1619    //javadoc: gemm(src1, src2, alpha, src3, beta, dst)
1620    public static void gemm(Mat src1, Mat src2, double alpha, Mat src3, double beta, Mat dst)
1621    {
1622
1623        gemm_1(src1.nativeObj, src2.nativeObj, alpha, src3.nativeObj, beta, dst.nativeObj);
1624
1625        return;
1626    }
1627
1628
1629    //
1630    // C++:  void mulTransposed(Mat src, Mat& dst, bool aTa, Mat delta = Mat(), double scale = 1, int dtype = -1)
1631    //
1632
1633    //javadoc: mulTransposed(src, dst, aTa, delta, scale, dtype)
1634    public static void mulTransposed(Mat src, Mat dst, boolean aTa, Mat delta, double scale, int dtype)
1635    {
1636
1637        mulTransposed_0(src.nativeObj, dst.nativeObj, aTa, delta.nativeObj, scale, dtype);
1638
1639        return;
1640    }
1641
1642    //javadoc: mulTransposed(src, dst, aTa, delta, scale)
1643    public static void mulTransposed(Mat src, Mat dst, boolean aTa, Mat delta, double scale)
1644    {
1645
1646        mulTransposed_1(src.nativeObj, dst.nativeObj, aTa, delta.nativeObj, scale);
1647
1648        return;
1649    }
1650
1651    //javadoc: mulTransposed(src, dst, aTa)
1652    public static void mulTransposed(Mat src, Mat dst, boolean aTa)
1653    {
1654
1655        mulTransposed_2(src.nativeObj, dst.nativeObj, aTa);
1656
1657        return;
1658    }
1659
1660
1661    //
1662    // C++:  void transpose(Mat src, Mat& dst)
1663    //
1664
1665    //javadoc: transpose(src, dst)
1666    public static void transpose(Mat src, Mat dst)
1667    {
1668
1669        transpose_0(src.nativeObj, dst.nativeObj);
1670
1671        return;
1672    }
1673
1674
1675    //
1676    // C++:  void transform(Mat src, Mat& dst, Mat m)
1677    //
1678
1679    //javadoc: transform(src, dst, m)
1680    public static void transform(Mat src, Mat dst, Mat m)
1681    {
1682
1683        transform_0(src.nativeObj, dst.nativeObj, m.nativeObj);
1684
1685        return;
1686    }
1687
1688
1689    //
1690    // C++:  void perspectiveTransform(Mat src, Mat& dst, Mat m)
1691    //
1692
1693    //javadoc: perspectiveTransform(src, dst, m)
1694    public static void perspectiveTransform(Mat src, Mat dst, Mat m)
1695    {
1696
1697        perspectiveTransform_0(src.nativeObj, dst.nativeObj, m.nativeObj);
1698
1699        return;
1700    }
1701
1702
1703    //
1704    // C++:  void completeSymm(Mat& mtx, bool lowerToUpper = false)
1705    //
1706
1707    //javadoc: completeSymm(mtx, lowerToUpper)
1708    public static void completeSymm(Mat mtx, boolean lowerToUpper)
1709    {
1710
1711        completeSymm_0(mtx.nativeObj, lowerToUpper);
1712
1713        return;
1714    }
1715
1716    //javadoc: completeSymm(mtx)
1717    public static void completeSymm(Mat mtx)
1718    {
1719
1720        completeSymm_1(mtx.nativeObj);
1721
1722        return;
1723    }
1724
1725
1726    //
1727    // C++:  void setIdentity(Mat& mtx, Scalar s = Scalar(1))
1728    //
1729
1730    //javadoc: setIdentity(mtx, s)
1731    public static void setIdentity(Mat mtx, Scalar s)
1732    {
1733
1734        setIdentity_0(mtx.nativeObj, s.val[0], s.val[1], s.val[2], s.val[3]);
1735
1736        return;
1737    }
1738
1739    //javadoc: setIdentity(mtx)
1740    public static void setIdentity(Mat mtx)
1741    {
1742
1743        setIdentity_1(mtx.nativeObj);
1744
1745        return;
1746    }
1747
1748
1749    //
1750    // C++:  double determinant(Mat mtx)
1751    //
1752
1753    //javadoc: determinant(mtx)
1754    public static double determinant(Mat mtx)
1755    {
1756
1757        double retVal = determinant_0(mtx.nativeObj);
1758
1759        return retVal;
1760    }
1761
1762
1763    //
1764    // C++:  Scalar trace(Mat mtx)
1765    //
1766
1767    //javadoc: trace(mtx)
1768    public static Scalar trace(Mat mtx)
1769    {
1770
1771        Scalar retVal = new Scalar(trace_0(mtx.nativeObj));
1772
1773        return retVal;
1774    }
1775
1776
1777    //
1778    // C++:  double invert(Mat src, Mat& dst, int flags = DECOMP_LU)
1779    //
1780
1781    //javadoc: invert(src, dst, flags)
1782    public static double invert(Mat src, Mat dst, int flags)
1783    {
1784
1785        double retVal = invert_0(src.nativeObj, dst.nativeObj, flags);
1786
1787        return retVal;
1788    }
1789
1790    //javadoc: invert(src, dst)
1791    public static double invert(Mat src, Mat dst)
1792    {
1793
1794        double retVal = invert_1(src.nativeObj, dst.nativeObj);
1795
1796        return retVal;
1797    }
1798
1799
1800    //
1801    // C++:  bool solve(Mat src1, Mat src2, Mat& dst, int flags = DECOMP_LU)
1802    //
1803
1804    //javadoc: solve(src1, src2, dst, flags)
1805    public static boolean solve(Mat src1, Mat src2, Mat dst, int flags)
1806    {
1807
1808        boolean retVal = solve_0(src1.nativeObj, src2.nativeObj, dst.nativeObj, flags);
1809
1810        return retVal;
1811    }
1812
1813    //javadoc: solve(src1, src2, dst)
1814    public static boolean solve(Mat src1, Mat src2, Mat dst)
1815    {
1816
1817        boolean retVal = solve_1(src1.nativeObj, src2.nativeObj, dst.nativeObj);
1818
1819        return retVal;
1820    }
1821
1822
1823    //
1824    // C++:  void sort(Mat src, Mat& dst, int flags)
1825    //
1826
1827    //javadoc: sort(src, dst, flags)
1828    public static void sort(Mat src, Mat dst, int flags)
1829    {
1830
1831        sort_0(src.nativeObj, dst.nativeObj, flags);
1832
1833        return;
1834    }
1835
1836
1837    //
1838    // C++:  void sortIdx(Mat src, Mat& dst, int flags)
1839    //
1840
1841    //javadoc: sortIdx(src, dst, flags)
1842    public static void sortIdx(Mat src, Mat dst, int flags)
1843    {
1844
1845        sortIdx_0(src.nativeObj, dst.nativeObj, flags);
1846
1847        return;
1848    }
1849
1850
1851    //
1852    // C++:  int solveCubic(Mat coeffs, Mat& roots)
1853    //
1854
1855    //javadoc: solveCubic(coeffs, roots)
1856    public static int solveCubic(Mat coeffs, Mat roots)
1857    {
1858
1859        int retVal = solveCubic_0(coeffs.nativeObj, roots.nativeObj);
1860
1861        return retVal;
1862    }
1863
1864
1865    //
1866    // C++:  double solvePoly(Mat coeffs, Mat& roots, int maxIters = 300)
1867    //
1868
1869    //javadoc: solvePoly(coeffs, roots, maxIters)
1870    public static double solvePoly(Mat coeffs, Mat roots, int maxIters)
1871    {
1872
1873        double retVal = solvePoly_0(coeffs.nativeObj, roots.nativeObj, maxIters);
1874
1875        return retVal;
1876    }
1877
1878    //javadoc: solvePoly(coeffs, roots)
1879    public static double solvePoly(Mat coeffs, Mat roots)
1880    {
1881
1882        double retVal = solvePoly_1(coeffs.nativeObj, roots.nativeObj);
1883
1884        return retVal;
1885    }
1886
1887
1888    //
1889    // C++:  bool eigen(Mat src, Mat& eigenvalues, Mat& eigenvectors = Mat())
1890    //
1891
1892    //javadoc: eigen(src, eigenvalues, eigenvectors)
1893    public static boolean eigen(Mat src, Mat eigenvalues, Mat eigenvectors)
1894    {
1895
1896        boolean retVal = eigen_0(src.nativeObj, eigenvalues.nativeObj, eigenvectors.nativeObj);
1897
1898        return retVal;
1899    }
1900
1901    //javadoc: eigen(src, eigenvalues)
1902    public static boolean eigen(Mat src, Mat eigenvalues)
1903    {
1904
1905        boolean retVal = eigen_1(src.nativeObj, eigenvalues.nativeObj);
1906
1907        return retVal;
1908    }
1909
1910
1911    //
1912    // C++:  void calcCovarMatrix(Mat samples, Mat& covar, Mat& mean, int flags, int ctype = CV_64F)
1913    //
1914
1915    //javadoc: calcCovarMatrix(samples, covar, mean, flags, ctype)
1916    public static void calcCovarMatrix(Mat samples, Mat covar, Mat mean, int flags, int ctype)
1917    {
1918
1919        calcCovarMatrix_0(samples.nativeObj, covar.nativeObj, mean.nativeObj, flags, ctype);
1920
1921        return;
1922    }
1923
1924    //javadoc: calcCovarMatrix(samples, covar, mean, flags)
1925    public static void calcCovarMatrix(Mat samples, Mat covar, Mat mean, int flags)
1926    {
1927
1928        calcCovarMatrix_1(samples.nativeObj, covar.nativeObj, mean.nativeObj, flags);
1929
1930        return;
1931    }
1932
1933
1934    //
1935    // C++:  void PCACompute(Mat data, Mat& mean, Mat& eigenvectors, int maxComponents = 0)
1936    //
1937
1938    //javadoc: PCACompute(data, mean, eigenvectors, maxComponents)
1939    public static void PCACompute(Mat data, Mat mean, Mat eigenvectors, int maxComponents)
1940    {
1941
1942        PCACompute_0(data.nativeObj, mean.nativeObj, eigenvectors.nativeObj, maxComponents);
1943
1944        return;
1945    }
1946
1947    //javadoc: PCACompute(data, mean, eigenvectors)
1948    public static void PCACompute(Mat data, Mat mean, Mat eigenvectors)
1949    {
1950
1951        PCACompute_1(data.nativeObj, mean.nativeObj, eigenvectors.nativeObj);
1952
1953        return;
1954    }
1955
1956
1957    //
1958    // C++:  void PCACompute(Mat data, Mat& mean, Mat& eigenvectors, double retainedVariance)
1959    //
1960
1961    //javadoc: PCACompute(data, mean, eigenvectors, retainedVariance)
1962    public static void PCACompute(Mat data, Mat mean, Mat eigenvectors, double retainedVariance)
1963    {
1964
1965        PCACompute_2(data.nativeObj, mean.nativeObj, eigenvectors.nativeObj, retainedVariance);
1966
1967        return;
1968    }
1969
1970
1971    //
1972    // C++:  void PCAProject(Mat data, Mat mean, Mat eigenvectors, Mat& result)
1973    //
1974
1975    //javadoc: PCAProject(data, mean, eigenvectors, result)
1976    public static void PCAProject(Mat data, Mat mean, Mat eigenvectors, Mat result)
1977    {
1978
1979        PCAProject_0(data.nativeObj, mean.nativeObj, eigenvectors.nativeObj, result.nativeObj);
1980
1981        return;
1982    }
1983
1984
1985    //
1986    // C++:  void PCABackProject(Mat data, Mat mean, Mat eigenvectors, Mat& result)
1987    //
1988
1989    //javadoc: PCABackProject(data, mean, eigenvectors, result)
1990    public static void PCABackProject(Mat data, Mat mean, Mat eigenvectors, Mat result)
1991    {
1992
1993        PCABackProject_0(data.nativeObj, mean.nativeObj, eigenvectors.nativeObj, result.nativeObj);
1994
1995        return;
1996    }
1997
1998
1999    //
2000    // C++:  void SVDecomp(Mat src, Mat& w, Mat& u, Mat& vt, int flags = 0)
2001    //
2002
2003    //javadoc: SVDecomp(src, w, u, vt, flags)
2004    public static void SVDecomp(Mat src, Mat w, Mat u, Mat vt, int flags)
2005    {
2006
2007        SVDecomp_0(src.nativeObj, w.nativeObj, u.nativeObj, vt.nativeObj, flags);
2008
2009        return;
2010    }
2011
2012    //javadoc: SVDecomp(src, w, u, vt)
2013    public static void SVDecomp(Mat src, Mat w, Mat u, Mat vt)
2014    {
2015
2016        SVDecomp_1(src.nativeObj, w.nativeObj, u.nativeObj, vt.nativeObj);
2017
2018        return;
2019    }
2020
2021
2022    //
2023    // C++:  void SVBackSubst(Mat w, Mat u, Mat vt, Mat rhs, Mat& dst)
2024    //
2025
2026    //javadoc: SVBackSubst(w, u, vt, rhs, dst)
2027    public static void SVBackSubst(Mat w, Mat u, Mat vt, Mat rhs, Mat dst)
2028    {
2029
2030        SVBackSubst_0(w.nativeObj, u.nativeObj, vt.nativeObj, rhs.nativeObj, dst.nativeObj);
2031
2032        return;
2033    }
2034
2035
2036    //
2037    // C++:  double Mahalanobis(Mat v1, Mat v2, Mat icovar)
2038    //
2039
2040    //javadoc: Mahalanobis(v1, v2, icovar)
2041    public static double Mahalanobis(Mat v1, Mat v2, Mat icovar)
2042    {
2043
2044        double retVal = Mahalanobis_0(v1.nativeObj, v2.nativeObj, icovar.nativeObj);
2045
2046        return retVal;
2047    }
2048
2049
2050    //
2051    // C++:  void dft(Mat src, Mat& dst, int flags = 0, int nonzeroRows = 0)
2052    //
2053
2054    //javadoc: dft(src, dst, flags, nonzeroRows)
2055    public static void dft(Mat src, Mat dst, int flags, int nonzeroRows)
2056    {
2057
2058        dft_0(src.nativeObj, dst.nativeObj, flags, nonzeroRows);
2059
2060        return;
2061    }
2062
2063    //javadoc: dft(src, dst)
2064    public static void dft(Mat src, Mat dst)
2065    {
2066
2067        dft_1(src.nativeObj, dst.nativeObj);
2068
2069        return;
2070    }
2071
2072
2073    //
2074    // C++:  void idft(Mat src, Mat& dst, int flags = 0, int nonzeroRows = 0)
2075    //
2076
2077    //javadoc: idft(src, dst, flags, nonzeroRows)
2078    public static void idft(Mat src, Mat dst, int flags, int nonzeroRows)
2079    {
2080
2081        idft_0(src.nativeObj, dst.nativeObj, flags, nonzeroRows);
2082
2083        return;
2084    }
2085
2086    //javadoc: idft(src, dst)
2087    public static void idft(Mat src, Mat dst)
2088    {
2089
2090        idft_1(src.nativeObj, dst.nativeObj);
2091
2092        return;
2093    }
2094
2095
2096    //
2097    // C++:  void dct(Mat src, Mat& dst, int flags = 0)
2098    //
2099
2100    //javadoc: dct(src, dst, flags)
2101    public static void dct(Mat src, Mat dst, int flags)
2102    {
2103
2104        dct_0(src.nativeObj, dst.nativeObj, flags);
2105
2106        return;
2107    }
2108
2109    //javadoc: dct(src, dst)
2110    public static void dct(Mat src, Mat dst)
2111    {
2112
2113        dct_1(src.nativeObj, dst.nativeObj);
2114
2115        return;
2116    }
2117
2118
2119    //
2120    // C++:  void idct(Mat src, Mat& dst, int flags = 0)
2121    //
2122
2123    //javadoc: idct(src, dst, flags)
2124    public static void idct(Mat src, Mat dst, int flags)
2125    {
2126
2127        idct_0(src.nativeObj, dst.nativeObj, flags);
2128
2129        return;
2130    }
2131
2132    //javadoc: idct(src, dst)
2133    public static void idct(Mat src, Mat dst)
2134    {
2135
2136        idct_1(src.nativeObj, dst.nativeObj);
2137
2138        return;
2139    }
2140
2141
2142    // manual port
2143    public static class MinMaxLocResult {
2144        public double minVal;
2145        public double maxVal;
2146        public Point minLoc;
2147        public Point maxLoc;
2148
2149        public MinMaxLocResult() {
2150            minVal=0; maxVal=0;
2151            minLoc=new Point();
2152            maxLoc=new Point();
2153        }
2154    }
2155
2156    // C++: minMaxLoc(Mat src, double* minVal, double* maxVal=0, Point* minLoc=0, Point* maxLoc=0, InputArray mask=noArray())
2157
2158    //javadoc: minMaxLoc(src, mask)
2159    public static MinMaxLocResult minMaxLoc(Mat src, Mat mask) {
2160        MinMaxLocResult res = new MinMaxLocResult();
2161        long maskNativeObj=0;
2162        if (mask != null) {
2163            maskNativeObj=mask.nativeObj;
2164        }
2165        double resarr[] = n_minMaxLocManual(src.nativeObj, maskNativeObj);
2166        res.minVal=resarr[0];
2167        res.maxVal=resarr[1];
2168        res.minLoc.x=resarr[2];
2169        res.minLoc.y=resarr[3];
2170        res.maxLoc.x=resarr[4];
2171        res.maxLoc.y=resarr[5];
2172        return res;
2173    }
2174
2175    //javadoc: minMaxLoc(src)
2176    public static MinMaxLocResult minMaxLoc(Mat src) {
2177        return minMaxLoc(src, null);
2178    }
2179
2180
2181
2182
2183    // C++:  double getTickFrequency()
2184    private static native double getTickFrequency_0();
2185
2186    // C++:  int64 getCPUTickCount()
2187    private static native long getCPUTickCount_0();
2188
2189    // C++:  void setErrorVerbosity(bool verbose)
2190    private static native void setErrorVerbosity_0(boolean verbose);
2191
2192    // C++:  void mulSpectrums(Mat a, Mat b, Mat& c, int flags, bool conjB = false)
2193    private static native void mulSpectrums_0(long a_nativeObj, long b_nativeObj, long c_nativeObj, int flags, boolean conjB);
2194    private static native void mulSpectrums_1(long a_nativeObj, long b_nativeObj, long c_nativeObj, int flags);
2195
2196    // C++:  int getOptimalDFTSize(int vecsize)
2197    private static native int getOptimalDFTSize_0(int vecsize);
2198
2199    // C++:  void randu(Mat& dst, double low, double high)
2200    private static native void randu_0(long dst_nativeObj, double low, double high);
2201
2202    // C++:  void randn(Mat& dst, double mean, double stddev)
2203    private static native void randn_0(long dst_nativeObj, double mean, double stddev);
2204
2205    // C++:  void randShuffle(Mat& dst, double iterFactor = 1., RNG* rng = 0)
2206    private static native void randShuffle_0(long dst_nativeObj, double iterFactor);
2207    private static native void randShuffle_1(long dst_nativeObj);
2208
2209    // C++:  double kmeans(Mat data, int K, Mat& bestLabels, TermCriteria criteria, int attempts, int flags, Mat& centers = Mat())
2210    private static native double kmeans_0(long data_nativeObj, int K, long bestLabels_nativeObj, int criteria_type, int criteria_maxCount, double criteria_epsilon, int attempts, int flags, long centers_nativeObj);
2211    private static native double kmeans_1(long data_nativeObj, int K, long bestLabels_nativeObj, int criteria_type, int criteria_maxCount, double criteria_epsilon, int attempts, int flags);
2212
2213    // C++:  int borderInterpolate(int p, int len, int borderType)
2214    private static native int borderInterpolate_0(int p, int len, int borderType);
2215
2216    // C++:  void copyMakeBorder(Mat src, Mat& dst, int top, int bottom, int left, int right, int borderType, Scalar value = Scalar())
2217    private static native void copyMakeBorder_0(long src_nativeObj, long dst_nativeObj, int top, int bottom, int left, int right, int borderType, double value_val0, double value_val1, double value_val2, double value_val3);
2218    private static native void copyMakeBorder_1(long src_nativeObj, long dst_nativeObj, int top, int bottom, int left, int right, int borderType);
2219
2220    // C++:  void add(Mat src1, Mat src2, Mat& dst, Mat mask = Mat(), int dtype = -1)
2221    private static native void add_0(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj, long mask_nativeObj, int dtype);
2222    private static native void add_1(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj, long mask_nativeObj);
2223    private static native void add_2(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj);
2224
2225    // C++:  void subtract(Mat src1, Mat src2, Mat& dst, Mat mask = Mat(), int dtype = -1)
2226    private static native void subtract_0(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj, long mask_nativeObj, int dtype);
2227    private static native void subtract_1(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj, long mask_nativeObj);
2228    private static native void subtract_2(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj);
2229
2230    // C++:  void multiply(Mat src1, Mat src2, Mat& dst, double scale = 1, int dtype = -1)
2231    private static native void multiply_0(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj, double scale, int dtype);
2232    private static native void multiply_1(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj, double scale);
2233    private static native void multiply_2(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj);
2234
2235    // C++:  void divide(Mat src1, Mat src2, Mat& dst, double scale = 1, int dtype = -1)
2236    private static native void divide_0(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj, double scale, int dtype);
2237    private static native void divide_1(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj, double scale);
2238    private static native void divide_2(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj);
2239
2240    // C++:  void divide(double scale, Mat src2, Mat& dst, int dtype = -1)
2241    private static native void divide_3(double scale, long src2_nativeObj, long dst_nativeObj, int dtype);
2242    private static native void divide_4(double scale, long src2_nativeObj, long dst_nativeObj);
2243
2244    // C++:  void scaleAdd(Mat src1, double alpha, Mat src2, Mat& dst)
2245    private static native void scaleAdd_0(long src1_nativeObj, double alpha, long src2_nativeObj, long dst_nativeObj);
2246
2247    // C++:  void addWeighted(Mat src1, double alpha, Mat src2, double beta, double gamma, Mat& dst, int dtype = -1)
2248    private static native void addWeighted_0(long src1_nativeObj, double alpha, long src2_nativeObj, double beta, double gamma, long dst_nativeObj, int dtype);
2249    private static native void addWeighted_1(long src1_nativeObj, double alpha, long src2_nativeObj, double beta, double gamma, long dst_nativeObj);
2250
2251    // C++:  void convertScaleAbs(Mat src, Mat& dst, double alpha = 1, double beta = 0)
2252    private static native void convertScaleAbs_0(long src_nativeObj, long dst_nativeObj, double alpha, double beta);
2253    private static native void convertScaleAbs_1(long src_nativeObj, long dst_nativeObj);
2254
2255    // C++:  Scalar sum(Mat src)
2256    private static native double[] sumElems_0(long src_nativeObj);
2257
2258    // C++:  void LUT(Mat src, Mat lut, Mat& dst)
2259    private static native void LUT_0(long src_nativeObj, long lut_nativeObj, long dst_nativeObj);
2260
2261    // C++:  void findNonZero(Mat src, Mat& idx)
2262    private static native void findNonZero_0(long src_nativeObj, long idx_nativeObj);
2263
2264    // C++:  int countNonZero(Mat src)
2265    private static native int countNonZero_0(long src_nativeObj);
2266
2267    // C++:  Scalar mean(Mat src, Mat mask = Mat())
2268    private static native double[] mean_0(long src_nativeObj, long mask_nativeObj);
2269    private static native double[] mean_1(long src_nativeObj);
2270
2271    // C++:  void meanStdDev(Mat src, vector_double& mean, vector_double& stddev, Mat mask = Mat())
2272    private static native void meanStdDev_0(long src_nativeObj, long mean_mat_nativeObj, long stddev_mat_nativeObj, long mask_nativeObj);
2273    private static native void meanStdDev_1(long src_nativeObj, long mean_mat_nativeObj, long stddev_mat_nativeObj);
2274
2275    // C++:  double norm(Mat src1, int normType = NORM_L2, Mat mask = Mat())
2276    private static native double norm_0(long src1_nativeObj, int normType, long mask_nativeObj);
2277    private static native double norm_1(long src1_nativeObj, int normType);
2278    private static native double norm_2(long src1_nativeObj);
2279
2280    // C++:  double norm(Mat src1, Mat src2, int normType = NORM_L2, Mat mask = Mat())
2281    private static native double norm_3(long src1_nativeObj, long src2_nativeObj, int normType, long mask_nativeObj);
2282    private static native double norm_4(long src1_nativeObj, long src2_nativeObj, int normType);
2283    private static native double norm_5(long src1_nativeObj, long src2_nativeObj);
2284
2285    // C++:  double PSNR(Mat src1, Mat src2)
2286    private static native double PSNR_0(long src1_nativeObj, long src2_nativeObj);
2287
2288    // C++:  void batchDistance(Mat src1, Mat src2, Mat& dist, int dtype, Mat& nidx, int normType = NORM_L2, int K = 0, Mat mask = Mat(), int update = 0, bool crosscheck = false)
2289    private static native void batchDistance_0(long src1_nativeObj, long src2_nativeObj, long dist_nativeObj, int dtype, long nidx_nativeObj, int normType, int K, long mask_nativeObj, int update, boolean crosscheck);
2290    private static native void batchDistance_1(long src1_nativeObj, long src2_nativeObj, long dist_nativeObj, int dtype, long nidx_nativeObj, int normType, int K);
2291    private static native void batchDistance_2(long src1_nativeObj, long src2_nativeObj, long dist_nativeObj, int dtype, long nidx_nativeObj);
2292
2293    // C++:  float cubeRoot(float val)
2294    private static native float cubeRoot_0(float val);
2295
2296    // C++:  float fastAtan2(float y, float x)
2297    private static native float fastAtan2_0(float y, float x);
2298
2299    // C++:  void merge(vector_Mat mv, Mat& dst)
2300    private static native void merge_0(long mv_mat_nativeObj, long dst_nativeObj);
2301
2302    // C++:  void split(Mat m, vector_Mat& mv)
2303    private static native void split_0(long m_nativeObj, long mv_mat_nativeObj);
2304
2305    // C++:  void mixChannels(vector_Mat src, vector_Mat dst, vector_int fromTo)
2306    private static native void mixChannels_0(long src_mat_nativeObj, long dst_mat_nativeObj, long fromTo_mat_nativeObj);
2307
2308    // C++:  void extractChannel(Mat src, Mat& dst, int coi)
2309    private static native void extractChannel_0(long src_nativeObj, long dst_nativeObj, int coi);
2310
2311    // C++:  void insertChannel(Mat src, Mat& dst, int coi)
2312    private static native void insertChannel_0(long src_nativeObj, long dst_nativeObj, int coi);
2313
2314    // C++:  void normalize(Mat src, Mat& dst, double alpha = 1, double beta = 0, int norm_type = NORM_L2, int dtype = -1, Mat mask = Mat())
2315    private static native void normalize_0(long src_nativeObj, long dst_nativeObj, double alpha, double beta, int norm_type, int dtype, long mask_nativeObj);
2316    private static native void normalize_1(long src_nativeObj, long dst_nativeObj, double alpha, double beta, int norm_type, int dtype);
2317    private static native void normalize_2(long src_nativeObj, long dst_nativeObj, double alpha, double beta, int norm_type);
2318    private static native void normalize_3(long src_nativeObj, long dst_nativeObj);
2319
2320    // C++:  void reduce(Mat src, Mat& dst, int dim, int rtype, int dtype = -1)
2321    private static native void reduce_0(long src_nativeObj, long dst_nativeObj, int dim, int rtype, int dtype);
2322    private static native void reduce_1(long src_nativeObj, long dst_nativeObj, int dim, int rtype);
2323
2324    // C++:  int getNumberOfCPUs()
2325    private static native int getNumberOfCPUs_0();
2326
2327    // C++:  void add(Mat src1, Scalar src2, Mat& dst, Mat mask = Mat(), int dtype = -1)
2328    private static native void add_3(long src1_nativeObj, double src2_val0, double src2_val1, double src2_val2, double src2_val3, long dst_nativeObj, long mask_nativeObj, int dtype);
2329    private static native void add_4(long src1_nativeObj, double src2_val0, double src2_val1, double src2_val2, double src2_val3, long dst_nativeObj, long mask_nativeObj);
2330    private static native void add_5(long src1_nativeObj, double src2_val0, double src2_val1, double src2_val2, double src2_val3, long dst_nativeObj);
2331
2332    // C++:  void subtract(Mat src1, Scalar src2, Mat& dst, Mat mask = Mat(), int dtype = -1)
2333    private static native void subtract_3(long src1_nativeObj, double src2_val0, double src2_val1, double src2_val2, double src2_val3, long dst_nativeObj, long mask_nativeObj, int dtype);
2334    private static native void subtract_4(long src1_nativeObj, double src2_val0, double src2_val1, double src2_val2, double src2_val3, long dst_nativeObj, long mask_nativeObj);
2335    private static native void subtract_5(long src1_nativeObj, double src2_val0, double src2_val1, double src2_val2, double src2_val3, long dst_nativeObj);
2336
2337    // C++:  void multiply(Mat src1, Scalar src2, Mat& dst, double scale = 1, int dtype = -1)
2338    private static native void multiply_3(long src1_nativeObj, double src2_val0, double src2_val1, double src2_val2, double src2_val3, long dst_nativeObj, double scale, int dtype);
2339    private static native void multiply_4(long src1_nativeObj, double src2_val0, double src2_val1, double src2_val2, double src2_val3, long dst_nativeObj, double scale);
2340    private static native void multiply_5(long src1_nativeObj, double src2_val0, double src2_val1, double src2_val2, double src2_val3, long dst_nativeObj);
2341
2342    // C++:  void divide(Mat src1, Scalar src2, Mat& dst, double scale = 1, int dtype = -1)
2343    private static native void divide_5(long src1_nativeObj, double src2_val0, double src2_val1, double src2_val2, double src2_val3, long dst_nativeObj, double scale, int dtype);
2344    private static native void divide_6(long src1_nativeObj, double src2_val0, double src2_val1, double src2_val2, double src2_val3, long dst_nativeObj, double scale);
2345    private static native void divide_7(long src1_nativeObj, double src2_val0, double src2_val1, double src2_val2, double src2_val3, long dst_nativeObj);
2346
2347    // C++:  void absdiff(Mat src1, Scalar src2, Mat& dst)
2348    private static native void absdiff_0(long src1_nativeObj, double src2_val0, double src2_val1, double src2_val2, double src2_val3, long dst_nativeObj);
2349
2350    // C++:  void compare(Mat src1, Scalar src2, Mat& dst, int cmpop)
2351    private static native void compare_0(long src1_nativeObj, double src2_val0, double src2_val1, double src2_val2, double src2_val3, long dst_nativeObj, int cmpop);
2352
2353    // C++:  void min(Mat src1, Scalar src2, Mat& dst)
2354    private static native void min_0(long src1_nativeObj, double src2_val0, double src2_val1, double src2_val2, double src2_val3, long dst_nativeObj);
2355
2356    // C++:  void max(Mat src1, Scalar src2, Mat& dst)
2357    private static native void max_0(long src1_nativeObj, double src2_val0, double src2_val1, double src2_val2, double src2_val3, long dst_nativeObj);
2358
2359    // C++:  int64 getTickCount()
2360    private static native long getTickCount_0();
2361
2362    // C++:  String getBuildInformation()
2363    private static native String getBuildInformation_0();
2364
2365    // C++:  void flip(Mat src, Mat& dst, int flipCode)
2366    private static native void flip_0(long src_nativeObj, long dst_nativeObj, int flipCode);
2367
2368    // C++:  void repeat(Mat src, int ny, int nx, Mat& dst)
2369    private static native void repeat_0(long src_nativeObj, int ny, int nx, long dst_nativeObj);
2370
2371    // C++:  void hconcat(vector_Mat src, Mat& dst)
2372    private static native void hconcat_0(long src_mat_nativeObj, long dst_nativeObj);
2373
2374    // C++:  void vconcat(vector_Mat src, Mat& dst)
2375    private static native void vconcat_0(long src_mat_nativeObj, long dst_nativeObj);
2376
2377    // C++:  void bitwise_and(Mat src1, Mat src2, Mat& dst, Mat mask = Mat())
2378    private static native void bitwise_and_0(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj, long mask_nativeObj);
2379    private static native void bitwise_and_1(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj);
2380
2381    // C++:  void bitwise_or(Mat src1, Mat src2, Mat& dst, Mat mask = Mat())
2382    private static native void bitwise_or_0(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj, long mask_nativeObj);
2383    private static native void bitwise_or_1(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj);
2384
2385    // C++:  void bitwise_xor(Mat src1, Mat src2, Mat& dst, Mat mask = Mat())
2386    private static native void bitwise_xor_0(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj, long mask_nativeObj);
2387    private static native void bitwise_xor_1(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj);
2388
2389    // C++:  void bitwise_not(Mat src, Mat& dst, Mat mask = Mat())
2390    private static native void bitwise_not_0(long src_nativeObj, long dst_nativeObj, long mask_nativeObj);
2391    private static native void bitwise_not_1(long src_nativeObj, long dst_nativeObj);
2392
2393    // C++:  void absdiff(Mat src1, Mat src2, Mat& dst)
2394    private static native void absdiff_1(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj);
2395
2396    // C++:  void inRange(Mat src, Scalar lowerb, Scalar upperb, Mat& dst)
2397    private static native void inRange_0(long src_nativeObj, double lowerb_val0, double lowerb_val1, double lowerb_val2, double lowerb_val3, double upperb_val0, double upperb_val1, double upperb_val2, double upperb_val3, long dst_nativeObj);
2398
2399    // C++:  void compare(Mat src1, Mat src2, Mat& dst, int cmpop)
2400    private static native void compare_1(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj, int cmpop);
2401
2402    // C++:  void min(Mat src1, Mat src2, Mat& dst)
2403    private static native void min_1(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj);
2404
2405    // C++:  void max(Mat src1, Mat src2, Mat& dst)
2406    private static native void max_1(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj);
2407
2408    // C++:  void sqrt(Mat src, Mat& dst)
2409    private static native void sqrt_0(long src_nativeObj, long dst_nativeObj);
2410
2411    // C++:  void pow(Mat src, double power, Mat& dst)
2412    private static native void pow_0(long src_nativeObj, double power, long dst_nativeObj);
2413
2414    // C++:  void exp(Mat src, Mat& dst)
2415    private static native void exp_0(long src_nativeObj, long dst_nativeObj);
2416
2417    // C++:  void log(Mat src, Mat& dst)
2418    private static native void log_0(long src_nativeObj, long dst_nativeObj);
2419
2420    // C++:  void polarToCart(Mat magnitude, Mat angle, Mat& x, Mat& y, bool angleInDegrees = false)
2421    private static native void polarToCart_0(long magnitude_nativeObj, long angle_nativeObj, long x_nativeObj, long y_nativeObj, boolean angleInDegrees);
2422    private static native void polarToCart_1(long magnitude_nativeObj, long angle_nativeObj, long x_nativeObj, long y_nativeObj);
2423
2424    // C++:  void cartToPolar(Mat x, Mat y, Mat& magnitude, Mat& angle, bool angleInDegrees = false)
2425    private static native void cartToPolar_0(long x_nativeObj, long y_nativeObj, long magnitude_nativeObj, long angle_nativeObj, boolean angleInDegrees);
2426    private static native void cartToPolar_1(long x_nativeObj, long y_nativeObj, long magnitude_nativeObj, long angle_nativeObj);
2427
2428    // C++:  void phase(Mat x, Mat y, Mat& angle, bool angleInDegrees = false)
2429    private static native void phase_0(long x_nativeObj, long y_nativeObj, long angle_nativeObj, boolean angleInDegrees);
2430    private static native void phase_1(long x_nativeObj, long y_nativeObj, long angle_nativeObj);
2431
2432    // C++:  void magnitude(Mat x, Mat y, Mat& magnitude)
2433    private static native void magnitude_0(long x_nativeObj, long y_nativeObj, long magnitude_nativeObj);
2434
2435    // C++:  bool checkRange(Mat a, bool quiet = true,  _hidden_ * pos = 0, double minVal = -DBL_MAX, double maxVal = DBL_MAX)
2436    private static native boolean checkRange_0(long a_nativeObj, boolean quiet, double minVal, double maxVal);
2437    private static native boolean checkRange_1(long a_nativeObj);
2438
2439    // C++:  void patchNaNs(Mat& a, double val = 0)
2440    private static native void patchNaNs_0(long a_nativeObj, double val);
2441    private static native void patchNaNs_1(long a_nativeObj);
2442
2443    // C++:  void gemm(Mat src1, Mat src2, double alpha, Mat src3, double beta, Mat& dst, int flags = 0)
2444    private static native void gemm_0(long src1_nativeObj, long src2_nativeObj, double alpha, long src3_nativeObj, double beta, long dst_nativeObj, int flags);
2445    private static native void gemm_1(long src1_nativeObj, long src2_nativeObj, double alpha, long src3_nativeObj, double beta, long dst_nativeObj);
2446
2447    // C++:  void mulTransposed(Mat src, Mat& dst, bool aTa, Mat delta = Mat(), double scale = 1, int dtype = -1)
2448    private static native void mulTransposed_0(long src_nativeObj, long dst_nativeObj, boolean aTa, long delta_nativeObj, double scale, int dtype);
2449    private static native void mulTransposed_1(long src_nativeObj, long dst_nativeObj, boolean aTa, long delta_nativeObj, double scale);
2450    private static native void mulTransposed_2(long src_nativeObj, long dst_nativeObj, boolean aTa);
2451
2452    // C++:  void transpose(Mat src, Mat& dst)
2453    private static native void transpose_0(long src_nativeObj, long dst_nativeObj);
2454
2455    // C++:  void transform(Mat src, Mat& dst, Mat m)
2456    private static native void transform_0(long src_nativeObj, long dst_nativeObj, long m_nativeObj);
2457
2458    // C++:  void perspectiveTransform(Mat src, Mat& dst, Mat m)
2459    private static native void perspectiveTransform_0(long src_nativeObj, long dst_nativeObj, long m_nativeObj);
2460
2461    // C++:  void completeSymm(Mat& mtx, bool lowerToUpper = false)
2462    private static native void completeSymm_0(long mtx_nativeObj, boolean lowerToUpper);
2463    private static native void completeSymm_1(long mtx_nativeObj);
2464
2465    // C++:  void setIdentity(Mat& mtx, Scalar s = Scalar(1))
2466    private static native void setIdentity_0(long mtx_nativeObj, double s_val0, double s_val1, double s_val2, double s_val3);
2467    private static native void setIdentity_1(long mtx_nativeObj);
2468
2469    // C++:  double determinant(Mat mtx)
2470    private static native double determinant_0(long mtx_nativeObj);
2471
2472    // C++:  Scalar trace(Mat mtx)
2473    private static native double[] trace_0(long mtx_nativeObj);
2474
2475    // C++:  double invert(Mat src, Mat& dst, int flags = DECOMP_LU)
2476    private static native double invert_0(long src_nativeObj, long dst_nativeObj, int flags);
2477    private static native double invert_1(long src_nativeObj, long dst_nativeObj);
2478
2479    // C++:  bool solve(Mat src1, Mat src2, Mat& dst, int flags = DECOMP_LU)
2480    private static native boolean solve_0(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj, int flags);
2481    private static native boolean solve_1(long src1_nativeObj, long src2_nativeObj, long dst_nativeObj);
2482
2483    // C++:  void sort(Mat src, Mat& dst, int flags)
2484    private static native void sort_0(long src_nativeObj, long dst_nativeObj, int flags);
2485
2486    // C++:  void sortIdx(Mat src, Mat& dst, int flags)
2487    private static native void sortIdx_0(long src_nativeObj, long dst_nativeObj, int flags);
2488
2489    // C++:  int solveCubic(Mat coeffs, Mat& roots)
2490    private static native int solveCubic_0(long coeffs_nativeObj, long roots_nativeObj);
2491
2492    // C++:  double solvePoly(Mat coeffs, Mat& roots, int maxIters = 300)
2493    private static native double solvePoly_0(long coeffs_nativeObj, long roots_nativeObj, int maxIters);
2494    private static native double solvePoly_1(long coeffs_nativeObj, long roots_nativeObj);
2495
2496    // C++:  bool eigen(Mat src, Mat& eigenvalues, Mat& eigenvectors = Mat())
2497    private static native boolean eigen_0(long src_nativeObj, long eigenvalues_nativeObj, long eigenvectors_nativeObj);
2498    private static native boolean eigen_1(long src_nativeObj, long eigenvalues_nativeObj);
2499
2500    // C++:  void calcCovarMatrix(Mat samples, Mat& covar, Mat& mean, int flags, int ctype = CV_64F)
2501    private static native void calcCovarMatrix_0(long samples_nativeObj, long covar_nativeObj, long mean_nativeObj, int flags, int ctype);
2502    private static native void calcCovarMatrix_1(long samples_nativeObj, long covar_nativeObj, long mean_nativeObj, int flags);
2503
2504    // C++:  void PCACompute(Mat data, Mat& mean, Mat& eigenvectors, int maxComponents = 0)
2505    private static native void PCACompute_0(long data_nativeObj, long mean_nativeObj, long eigenvectors_nativeObj, int maxComponents);
2506    private static native void PCACompute_1(long data_nativeObj, long mean_nativeObj, long eigenvectors_nativeObj);
2507
2508    // C++:  void PCACompute(Mat data, Mat& mean, Mat& eigenvectors, double retainedVariance)
2509    private static native void PCACompute_2(long data_nativeObj, long mean_nativeObj, long eigenvectors_nativeObj, double retainedVariance);
2510
2511    // C++:  void PCAProject(Mat data, Mat mean, Mat eigenvectors, Mat& result)
2512    private static native void PCAProject_0(long data_nativeObj, long mean_nativeObj, long eigenvectors_nativeObj, long result_nativeObj);
2513
2514    // C++:  void PCABackProject(Mat data, Mat mean, Mat eigenvectors, Mat& result)
2515    private static native void PCABackProject_0(long data_nativeObj, long mean_nativeObj, long eigenvectors_nativeObj, long result_nativeObj);
2516
2517    // C++:  void SVDecomp(Mat src, Mat& w, Mat& u, Mat& vt, int flags = 0)
2518    private static native void SVDecomp_0(long src_nativeObj, long w_nativeObj, long u_nativeObj, long vt_nativeObj, int flags);
2519    private static native void SVDecomp_1(long src_nativeObj, long w_nativeObj, long u_nativeObj, long vt_nativeObj);
2520
2521    // C++:  void SVBackSubst(Mat w, Mat u, Mat vt, Mat rhs, Mat& dst)
2522    private static native void SVBackSubst_0(long w_nativeObj, long u_nativeObj, long vt_nativeObj, long rhs_nativeObj, long dst_nativeObj);
2523
2524    // C++:  double Mahalanobis(Mat v1, Mat v2, Mat icovar)
2525    private static native double Mahalanobis_0(long v1_nativeObj, long v2_nativeObj, long icovar_nativeObj);
2526
2527    // C++:  void dft(Mat src, Mat& dst, int flags = 0, int nonzeroRows = 0)
2528    private static native void dft_0(long src_nativeObj, long dst_nativeObj, int flags, int nonzeroRows);
2529    private static native void dft_1(long src_nativeObj, long dst_nativeObj);
2530
2531    // C++:  void idft(Mat src, Mat& dst, int flags = 0, int nonzeroRows = 0)
2532    private static native void idft_0(long src_nativeObj, long dst_nativeObj, int flags, int nonzeroRows);
2533    private static native void idft_1(long src_nativeObj, long dst_nativeObj);
2534
2535    // C++:  void dct(Mat src, Mat& dst, int flags = 0)
2536    private static native void dct_0(long src_nativeObj, long dst_nativeObj, int flags);
2537    private static native void dct_1(long src_nativeObj, long dst_nativeObj);
2538
2539    // C++:  void idct(Mat src, Mat& dst, int flags = 0)
2540    private static native void idct_0(long src_nativeObj, long dst_nativeObj, int flags);
2541    private static native void idct_1(long src_nativeObj, long dst_nativeObj);
2542    private static native double[] n_minMaxLocManual(long src_nativeObj, long mask_nativeObj);
2543
2544}
2545