├── .gitignore
├── .idea
├── .name
├── codeStyleSettings.xml
├── compiler.xml
├── copyright
│ └── profiles_settings.xml
├── dictionaries
│ └── Liang.xml
├── encodings.xml
├── gradle.xml
├── libraries
│ ├── animated_vector_drawable_23_2_1.xml
│ ├── appcompat_v7_23_2_1.xml
│ ├── core_3_2_1.xml
│ ├── support_annotations_23_2_1.xml
│ ├── support_v4_23_2_1.xml
│ └── support_vector_drawable_23_2_1.xml
├── misc.xml
├── modules.xml
└── runConfigurations.xml
├── CamServer
├── .classpath
├── .project
├── .settings
│ └── org.eclipse.jdt.core.prefs
└── src
│ ├── ServerMain.java
│ ├── Utility.java
│ └── com
│ ├── gl
│ └── shared
│ │ └── Data.java
│ └── yjm
│ └── shared
│ └── Data.java
├── LICENSE
├── README.md
├── app
├── .gitignore
├── build.gradle
├── proguard-rules.pro
└── src
│ └── main
│ ├── AndroidManifest.xml
│ ├── java
│ └── com
│ │ └── gl
│ │ ├── camera
│ │ ├── model
│ │ │ ├── MyCamera.java
│ │ │ └── MyCameraEx.java
│ │ ├── service
│ │ │ ├── CameraApplication.java
│ │ │ ├── FloatWindowService.java
│ │ │ └── NetworkChangeReceiver.java
│ │ ├── util
│ │ │ ├── BitmapUtility.java
│ │ │ └── Preference.java
│ │ └── view
│ │ │ ├── FloatWindowSmallView.java
│ │ │ ├── MainActivity.java
│ │ │ └── MyWindowManager.java
│ │ └── shared
│ │ └── Data.java
│ ├── jniLibs
│ ├── armeabi-v7a
│ │ ├── libopencv_calib3d.a
│ │ ├── libopencv_core.a
│ │ ├── libopencv_features2d.a
│ │ ├── libopencv_flann.a
│ │ ├── libopencv_highgui.a
│ │ ├── libopencv_imgcodecs.a
│ │ ├── libopencv_imgproc.a
│ │ ├── libopencv_java3.so
│ │ ├── libopencv_ml.a
│ │ ├── libopencv_objdetect.a
│ │ ├── libopencv_photo.a
│ │ ├── libopencv_shape.a
│ │ ├── libopencv_stitching.a
│ │ ├── libopencv_superres.a
│ │ ├── libopencv_ts.a
│ │ ├── libopencv_video.a
│ │ ├── libopencv_videoio.a
│ │ └── libopencv_videostab.a
│ └── x86
│ │ ├── libopencv_calib3d.a
│ │ ├── libopencv_core.a
│ │ ├── libopencv_features2d.a
│ │ ├── libopencv_flann.a
│ │ ├── libopencv_highgui.a
│ │ ├── libopencv_imgcodecs.a
│ │ ├── libopencv_imgproc.a
│ │ ├── libopencv_java3.so
│ │ ├── libopencv_ml.a
│ │ ├── libopencv_objdetect.a
│ │ ├── libopencv_photo.a
│ │ ├── libopencv_shape.a
│ │ ├── libopencv_stitching.a
│ │ ├── libopencv_superres.a
│ │ ├── libopencv_video.a
│ │ ├── libopencv_videoio.a
│ │ └── libopencv_videostab.a
│ └── res
│ ├── layout
│ ├── activity_main.xml
│ ├── float_window.xml
│ ├── view_face_detection.xml
│ └── view_quality.xml
│ ├── mipmap-hdpi
│ └── ic_launcher.png
│ ├── mipmap-mdpi
│ └── ic_launcher.png
│ ├── mipmap-xhdpi
│ └── ic_launcher.png
│ ├── mipmap-xxhdpi
│ └── ic_launcher.png
│ ├── values-w820dp
│ └── dimens.xml
│ └── values
│ ├── colors.xml
│ ├── dimens.xml
│ ├── strings.xml
│ └── styles.xml
├── build.gradle
├── gradle.properties
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── import-summary.txt
├── openCVLibrary310
├── build.gradle
├── lint.xml
└── src
│ └── main
│ ├── AndroidManifest.xml
│ ├── aidl
│ └── org
│ │ └── opencv
│ │ └── engine
│ │ └── OpenCVEngineInterface.aidl
│ ├── java
│ └── org
│ │ └── opencv
│ │ ├── android
│ │ ├── AsyncServiceHelper.java
│ │ ├── BaseLoaderCallback.java
│ │ ├── Camera2Renderer.java
│ │ ├── CameraBridgeViewBase.java
│ │ ├── CameraGLRendererBase.java
│ │ ├── CameraGLSurfaceView.java
│ │ ├── CameraRenderer.java
│ │ ├── FpsMeter.java
│ │ ├── InstallCallbackInterface.java
│ │ ├── JavaCameraView.java
│ │ ├── LoaderCallbackInterface.java
│ │ ├── OpenCVLoader.java
│ │ ├── StaticHelper.java
│ │ └── Utils.java
│ │ ├── calib3d
│ │ ├── Calib3d.java
│ │ ├── StereoBM.java
│ │ ├── StereoMatcher.java
│ │ └── StereoSGBM.java
│ │ ├── core
│ │ ├── Algorithm.java
│ │ ├── Core.java
│ │ ├── CvException.java
│ │ ├── CvType.java
│ │ ├── DMatch.java
│ │ ├── KeyPoint.java
│ │ ├── Mat.java
│ │ ├── MatOfByte.java
│ │ ├── MatOfDMatch.java
│ │ ├── MatOfDouble.java
│ │ ├── MatOfFloat.java
│ │ ├── MatOfFloat4.java
│ │ ├── MatOfFloat6.java
│ │ ├── MatOfInt.java
│ │ ├── MatOfInt4.java
│ │ ├── MatOfKeyPoint.java
│ │ ├── MatOfPoint.java
│ │ ├── MatOfPoint2f.java
│ │ ├── MatOfPoint3.java
│ │ ├── MatOfPoint3f.java
│ │ ├── MatOfRect.java
│ │ ├── Point.java
│ │ ├── Point3.java
│ │ ├── Range.java
│ │ ├── Rect.java
│ │ ├── RotatedRect.java
│ │ ├── Scalar.java
│ │ ├── Size.java
│ │ └── TermCriteria.java
│ │ ├── features2d
│ │ ├── DescriptorExtractor.java
│ │ ├── DescriptorMatcher.java
│ │ ├── FeatureDetector.java
│ │ └── Features2d.java
│ │ ├── imgcodecs
│ │ └── Imgcodecs.java
│ │ ├── imgproc
│ │ ├── CLAHE.java
│ │ ├── Imgproc.java
│ │ ├── LineSegmentDetector.java
│ │ ├── Moments.java
│ │ └── Subdiv2D.java
│ │ ├── ml
│ │ ├── ANN_MLP.java
│ │ ├── Boost.java
│ │ ├── DTrees.java
│ │ ├── EM.java
│ │ ├── KNearest.java
│ │ ├── LogisticRegression.java
│ │ ├── Ml.java
│ │ ├── NormalBayesClassifier.java
│ │ ├── RTrees.java
│ │ ├── SVM.java
│ │ ├── StatModel.java
│ │ └── TrainData.java
│ │ ├── objdetect
│ │ ├── BaseCascadeClassifier.java
│ │ ├── CascadeClassifier.java
│ │ ├── HOGDescriptor.java
│ │ └── Objdetect.java
│ │ ├── photo
│ │ ├── AlignExposures.java
│ │ ├── AlignMTB.java
│ │ ├── CalibrateCRF.java
│ │ ├── CalibrateDebevec.java
│ │ ├── CalibrateRobertson.java
│ │ ├── MergeDebevec.java
│ │ ├── MergeExposures.java
│ │ ├── MergeMertens.java
│ │ ├── MergeRobertson.java
│ │ ├── Photo.java
│ │ ├── Tonemap.java
│ │ ├── TonemapDrago.java
│ │ ├── TonemapDurand.java
│ │ ├── TonemapMantiuk.java
│ │ └── TonemapReinhard.java
│ │ ├── utils
│ │ └── Converters.java
│ │ ├── video
│ │ ├── BackgroundSubtractor.java
│ │ ├── BackgroundSubtractorKNN.java
│ │ ├── BackgroundSubtractorMOG2.java
│ │ ├── DenseOpticalFlow.java
│ │ ├── DualTVL1OpticalFlow.java
│ │ ├── KalmanFilter.java
│ │ └── Video.java
│ │ └── videoio
│ │ ├── VideoCapture.java
│ │ ├── VideoWriter.java
│ │ └── Videoio.java
│ └── res
│ └── values
│ └── attrs.xml
└── settings.gradle
/.gitignore:
--------------------------------------------------------------------------------
1 | # Built application files
2 | *.apk
3 | *.ap_
4 |
5 | # Files for the ART/Dalvik VM
6 | *.dex
7 |
8 | # Java class files
9 | *.class
10 |
11 | # Generated files
12 | bin/
13 | gen/
14 | out/
15 |
16 | # Gradle files
17 | .gradle/
18 | build/
19 |
20 | # Local configuration file (sdk path, etc)
21 | local.properties
22 |
23 | # Proguard folder generated by Eclipse
24 | proguard/
25 |
26 | # Log Files
27 | *.log
28 |
29 | # Android Studio Navigation editor temp files
30 | .navigation/
31 |
32 | # Android Studio captures folder
33 | captures/
34 |
35 | # Intellij
36 | *.iml
37 | .idea/workspace.xml
38 |
39 | # Keystore files
40 | *.jks
41 |
--------------------------------------------------------------------------------
/.idea/.name:
--------------------------------------------------------------------------------
1 | Camera
--------------------------------------------------------------------------------
/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/.idea/copyright/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/.idea/dictionaries/Liang.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | qrcode
5 |
6 |
7 |
--------------------------------------------------------------------------------
/.idea/encodings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/.idea/gradle.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
26 |
27 |
--------------------------------------------------------------------------------
/.idea/libraries/animated_vector_drawable_23_2_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/.idea/libraries/appcompat_v7_23_2_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/.idea/libraries/core_3_2_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/.idea/libraries/support_annotations_23_2_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/.idea/libraries/support_v4_23_2_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/.idea/libraries/support_vector_drawable_23_2_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
--------------------------------------------------------------------------------
/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/.idea/runConfigurations.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/CamServer/.classpath:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/CamServer/.project:
--------------------------------------------------------------------------------
1 |
2 |
3 | CamServer
4 |
5 |
6 |
7 |
8 |
9 | org.eclipse.jdt.core.javabuilder
10 |
11 |
12 |
13 |
14 |
15 | org.eclipse.jdt.core.javanature
16 |
17 |
18 |
--------------------------------------------------------------------------------
/CamServer/.settings/org.eclipse.jdt.core.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
4 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
5 | org.eclipse.jdt.core.compiler.compliance=1.7
6 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate
7 | org.eclipse.jdt.core.compiler.debug.localVariable=generate
8 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate
9 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
10 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
11 | org.eclipse.jdt.core.compiler.source=1.7
12 |
--------------------------------------------------------------------------------
/CamServer/src/ServerMain.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/CamServer/src/ServerMain.java
--------------------------------------------------------------------------------
/CamServer/src/Utility.java:
--------------------------------------------------------------------------------
1 | import java.io.File;
2 | import java.io.FileWriter;
3 | import java.io.IOException;
4 | import java.text.SimpleDateFormat;
5 | import java.util.Date;
6 |
7 |
8 | public class Utility {
9 | public static String getNow() {
10 | return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss ").format(new Date());
11 | }
12 |
13 | // public static void writeLog(String log) {
14 | // File file = new File("/root");
15 | // String br;
16 | // if (file.exists()) {
17 | // file = new File("/root/server.log");
18 | // br = "\n";
19 | // } else {
20 | // file = new File("D:\\server.log");
21 | // br = "\r\n";
22 | // }
23 | // FileWriter fileWriter;
24 | // try {
25 | // fileWriter = new FileWriter(file, true);
26 | // fileWriter.append(getNow() + log + br);
27 | // fileWriter.close();
28 | // } catch (IOException e) {
29 | // e.printStackTrace();
30 | // }
31 | // }
32 | }
33 |
--------------------------------------------------------------------------------
/CamServer/src/com/gl/shared/Data.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/CamServer/src/com/gl/shared/Data.java
--------------------------------------------------------------------------------
/CamServer/src/com/yjm/shared/Data.java:
--------------------------------------------------------------------------------
1 | package com.gl.shared;
2 |
3 | import java.io.ByteArrayInputStream;
4 | import java.io.ByteArrayOutputStream;
5 | import java.io.IOException;
6 | import java.io.InputStream;
7 | import java.io.ObjectInputStream;
8 | import java.io.ObjectOutputStream;
9 | import java.io.Serializable;
10 | import java.util.zip.GZIPInputStream;
11 | import java.util.zip.GZIPOutputStream;
12 |
13 | public class Data implements Serializable {
14 | private static final long serialVersionUID = -7768683932651126083L;
15 | public static final short TAG_HELLO = 0;//������
16 | public static final short TAG_START_FRONT = 1;//����ǰ����ͷ
17 | public static final short TAG_START_BACK = 2;//����������ͷ
18 | public static final short TAG_STOP = 3;//ֹͣ���
19 | public static final short TAG_VIDEO = 4;//��Ƶ����
20 | public static final short TAG_ERR_PASSWORD = 5;//�������
21 | public static final short TAG_CAM_CONN_TO_SERVER = 6;//����ض����ӵ�������
22 | public static final short TAG_MON_CONN_TO_SERVER = 7;//��ض����ӵ�������
23 | private String password;
24 | byte[] data;
25 | short tag;
26 |
27 | public String getPassword() {
28 | return password;
29 | }
30 |
31 | public void setPassword(String password) {
32 | this.password = password;
33 | }
34 |
35 | public byte[] getData() {
36 | try {
37 | return depress(data);
38 | } catch (IOException e) {
39 | e.printStackTrace();
40 | }
41 | return null;
42 | }
43 |
44 | public void setData(byte[] data) {
45 | try {
46 | this.data = compress(data);
47 | } catch (IOException e) {
48 | e.printStackTrace();
49 | }
50 | }
51 |
52 | public int getTag() {
53 | return tag;
54 | }
55 |
56 | public void setTag(short tag) {
57 | this.tag = tag;
58 | }
59 |
60 |
61 | public Data(short tag, String password) {
62 | this.tag = tag;
63 | this.password = password;
64 | }
65 |
66 | public Data(short tag) {
67 | this.tag = tag;
68 | }
69 |
70 | public Data(byte[] data) {
71 | this.tag = TAG_VIDEO;
72 | this.data = data;
73 | }
74 |
75 | public static Data fromBytes(byte[] bytes) throws IOException,
76 | ClassNotFoundException {
77 | ObjectInputStream inputStream = new ObjectInputStream(
78 | new ByteArrayInputStream(bytes));
79 | Data data = (Data) inputStream.readObject();
80 | return data;
81 | }
82 |
83 | public static Data fromInputStream(InputStream inputStream) {
84 | Data data = null;
85 | try {
86 | ObjectInputStream objectInputStream = new ObjectInputStream(inputStream);
87 | data = (Data) objectInputStream.readObject();
88 | } catch (IOException | ClassNotFoundException e) {
89 | e.printStackTrace();
90 | return null;
91 | }
92 | return data;
93 | }
94 |
95 | private byte[] compress(byte[] bytes) throws IOException {
96 | ByteArrayOutputStream baos = new ByteArrayOutputStream();
97 | GZIPOutputStream gzipOutputStream = new GZIPOutputStream(baos);
98 | gzipOutputStream.write(bytes);
99 | gzipOutputStream.close();
100 | return baos.toByteArray();
101 | }
102 |
103 | private byte[] depress(byte[] bytes) throws IOException {
104 | ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
105 | GZIPInputStream gzipInputStream = new GZIPInputStream(bais);
106 | ByteArrayOutputStream baos = new ByteArrayOutputStream();
107 | int len;
108 | byte[] buf = new byte[1024];
109 | while ((len = gzipInputStream.read(buf)) != -1) {
110 | baos.write(buf, 0, len);
111 | }
112 | baos.close();
113 | gzipInputStream.close();
114 | return baos.toByteArray();
115 | }
116 |
117 | public byte[] toBytes() throws IOException {
118 | ByteArrayOutputStream arrStream = new ByteArrayOutputStream();
119 | ObjectOutputStream objStream = new ObjectOutputStream(arrStream);
120 | objStream.writeObject(this);
121 | objStream.close();
122 | return arrStream.toByteArray();
123 | }
124 | }
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Camera
2 | 视频监控系统-监控端
3 |
--------------------------------------------------------------------------------
/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/app/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'com.android.application'
2 |
3 | android {
4 | compileSdkVersion 23
5 | buildToolsVersion '23.0.3'
6 |
7 | defaultConfig {
8 | applicationId "com.gl.camera"
9 | minSdkVersion 15
10 | targetSdkVersion 23
11 | versionCode 1
12 | versionName "1.0"
13 | }
14 | buildTypes {
15 | release {
16 | minifyEnabled false
17 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
18 | }
19 | }
20 | }
21 |
22 | dependencies {
23 | compile fileTree(include: ['*.jar'], dir: 'libs')
24 | compile 'com.google.zxing:core:3.2.1'
25 | compile 'com.android.support:appcompat-v7:23.2.1'
26 | compile project(':openCVLibrary310')
27 | }
28 |
--------------------------------------------------------------------------------
/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # By default, the flags in this file are appended to flags specified
3 | # in C:\Users\Liang\AppData\Local\Android\sdk/tools/proguard/proguard-android.txt
4 | # You can edit the include path and order by changing the proguardFiles
5 | # directive in build.gradle.
6 | #
7 | # For more details, see
8 | # http://developer.android.com/guide/developing/tools/proguard.html
9 |
10 | # Add any project specific keep options here:
11 |
12 | # If your project uses WebView with JS, uncomment the following
13 | # and specify the fully qualified class name to the JavaScript interface
14 | # class:
15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
16 | # public *;
17 | #}
18 |
--------------------------------------------------------------------------------
/app/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
22 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/app/src/main/java/com/gl/camera/service/CameraApplication.java:
--------------------------------------------------------------------------------
1 | package com.gl.camera.service;
2 |
3 | import android.app.Application;
4 | import android.util.Log;
5 |
6 | import org.opencv.android.OpenCVLoader;
7 |
8 | /**
9 | * Created by Liang on 2016/5/30.
10 | */
11 | public class CameraApplication extends Application {
12 | @Override
13 | public void onCreate() {
14 | super.onCreate();
15 | if (!OpenCVLoader.initDebug()) {
16 | Log.e(this.getClass().getSimpleName(), " OpenCVLoader.initDebug(), not working.");
17 | } else {
18 | Log.d(this.getClass().getSimpleName(), " OpenCVLoader.initDebug(), working.");
19 | }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/app/src/main/java/com/gl/camera/service/FloatWindowService.java:
--------------------------------------------------------------------------------
1 | package com.gl.camera.service;
2 |
3 | import android.app.ActivityManager;
4 | import android.app.ActivityManager.RunningTaskInfo;
5 | import android.app.Notification;
6 | import android.app.PendingIntent;
7 | import android.app.Service;
8 | import android.content.Context;
9 | import android.content.Intent;
10 | import android.content.pm.PackageManager;
11 | import android.content.pm.ResolveInfo;
12 | import android.os.Handler;
13 | import android.os.IBinder;
14 | import android.support.v7.app.NotificationCompat;
15 | import android.util.Log;
16 |
17 | import com.gl.camera.R;
18 | import com.gl.camera.view.MainActivity;
19 | import com.gl.camera.view.MyWindowManager;
20 |
21 | import java.util.ArrayList;
22 | import java.util.List;
23 | import java.util.Timer;
24 | import java.util.TimerTask;
25 |
26 | public class FloatWindowService extends Service {
27 | private static String TAG = "MyCamera";
28 | /**
29 | * 用于在线程中创建或移除悬浮窗。
30 | */
31 | private Handler handler = new Handler();
32 |
33 | /**
34 | * 定时器,定时进行检测当前应该创建还是移除悬浮窗。
35 | */
36 | private Timer timer;
37 |
38 | @Override
39 | public IBinder onBind(Intent intent) {
40 | return null;
41 | }
42 |
43 | @Override
44 | public void onCreate() {
45 | super.onCreate();
46 | Intent intent = new Intent(this, MainActivity.class);
47 | PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, 0);
48 | Notification notification = new NotificationCompat.Builder(this).
49 | setSmallIcon(R.mipmap.ic_launcher).
50 | setContentTitle("Camera").
51 | setContentText("监控服务已启动").
52 | setContentIntent(pendingIntent).build();
53 | startForeground(1, notification);
54 | }
55 |
56 | @Override
57 | public int onStartCommand(Intent intent, int flags, int startId) {
58 | // 开启定时器,每隔0.5秒刷新一次
59 | Log.i(TAG, "服务启动");
60 | if (timer != null) {
61 | timer.cancel();
62 | //移除悬浮窗
63 | MyWindowManager.removeSmallWindow(getApplicationContext());
64 | }
65 | timer = new Timer();
66 | timer.scheduleAtFixedRate(new RefreshTask(), 0, 500);
67 |
68 | return super.onStartCommand(intent, flags, startId);
69 | }
70 |
71 | @Override
72 | public void onDestroy() {
73 | super.onDestroy();
74 | // Service被终止的同时也停止定时器继续运行
75 | timer.cancel();
76 | timer = null;
77 | }
78 |
79 | class RefreshTask extends TimerTask {
80 | @Override
81 | public void run() {
82 | // 当前界面是桌面,且没有悬浮窗显示,则创建悬浮窗。
83 | if (isHome() && !MyWindowManager.isWindowShowing()) {
84 | handler.post(new Runnable() {
85 | @Override
86 | public void run() {
87 | MyWindowManager.createSmallWindow(getApplicationContext());
88 | Log.i(TAG, "启动悬浮窗");
89 | }
90 | });
91 | }
92 | // 当前界面不是桌面,且有悬浮窗显示,则移除悬浮窗。
93 | // else if (!isHome() && MyWindowManager.isWindowShowing()) {
94 | // handler.post(new Runnable() {
95 | // @Override
96 | // public void run() {
97 | // MyWindowManager.removeSmallWindow(getApplicationContext());
98 | // }
99 | // });
100 | // }
101 | }
102 |
103 | }
104 |
105 | /**
106 | * 判断当前界面是否是桌面
107 | */
108 | private boolean isHome() {
109 | ActivityManager mActivityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
110 | List rti = mActivityManager.getRunningTasks(1);
111 | return getHomes().contains(rti.get(0).topActivity.getPackageName());
112 | }
113 |
114 | /**
115 | * 获得属于桌面的应用的应用包名称
116 | *
117 | * @return 返回包含所有包名的字符串列表
118 | */
119 | private List getHomes() {
120 | List names = new ArrayList();
121 | PackageManager packageManager = this.getPackageManager();
122 | Intent intent = new Intent(Intent.ACTION_MAIN);
123 | intent.addCategory(Intent.CATEGORY_HOME);
124 | List resolveInfo = packageManager.queryIntentActivities(intent,
125 | PackageManager.MATCH_DEFAULT_ONLY);
126 | for (ResolveInfo ri : resolveInfo) {
127 | names.add(ri.activityInfo.packageName);
128 | }
129 | return names;
130 | }
131 | }
132 |
--------------------------------------------------------------------------------
/app/src/main/java/com/gl/camera/service/NetworkChangeReceiver.java:
--------------------------------------------------------------------------------
1 | package com.gl.camera.service;
2 |
3 | import android.content.BroadcastReceiver;
4 | import android.content.Context;
5 | import android.content.Intent;
6 | import android.net.ConnectivityManager;
7 | import android.net.NetworkInfo;
8 | import android.support.v4.content.LocalBroadcastManager;
9 | import android.util.Log;
10 |
11 | /**
12 | * Created by Liang on 2016/5/25.
13 | */
14 | public class NetworkChangeReceiver extends BroadcastReceiver {
15 | private static final String TAG = "NetworkChangeReceiver";
16 |
17 | @Override
18 | public void onReceive(Context context, Intent intent) {
19 | ConnectivityManager connectionManager = (ConnectivityManager)
20 | context.getSystemService(Context.CONNECTIVITY_SERVICE);
21 | NetworkInfo networkInfo = connectionManager.getActiveNetworkInfo();
22 | LocalBroadcastManager localBroadcastManager = LocalBroadcastManager.getInstance(context);
23 | if (networkInfo != null && networkInfo.isAvailable()) {
24 | // localBroadcastManager.sendBroadcast(new Intent("com.gl.camera.RESTART_LISTEN"));
25 | Log.i(TAG, "网络可用");
26 | } else {
27 | Log.i(TAG, "网络不可用");
28 | // localBroadcastManager.sendBroadcast(new Intent("com.gl.camera.STOP_LISTEN"));
29 | }
30 | }
31 |
32 | }
33 |
--------------------------------------------------------------------------------
/app/src/main/java/com/gl/camera/util/BitmapUtility.java:
--------------------------------------------------------------------------------
1 | package com.gl.camera.util;
2 |
3 | import android.graphics.Bitmap;
4 | import android.graphics.Matrix;
5 |
6 | import com.google.zxing.BarcodeFormat;
7 | import com.google.zxing.MultiFormatWriter;
8 | import com.google.zxing.WriterException;
9 | import com.google.zxing.common.BitMatrix;
10 |
11 | import org.opencv.core.Core;
12 | import org.opencv.core.Mat;
13 | import org.opencv.core.MatOfFloat;
14 | import org.opencv.core.MatOfInt;
15 | import org.opencv.imgproc.Imgproc;
16 |
17 | import java.util.ArrayList;
18 | import java.util.List;
19 |
20 | /**
21 | * Created by Liang on 2016/5/5.
22 | */
23 | public class BitmapUtility {
24 | public final static int WHITE = 0xFFFFFFFF;
25 | public final static int BLACK = 0xFF000000;
26 | public final static int WIDTH = 800;
27 | public final static int HEIGHT = 800;
28 |
29 | public static Bitmap RotateBitmap(Bitmap source, float angle) {
30 | Matrix matrix = new Matrix();
31 | matrix.postRotate(angle);
32 | return Bitmap.createBitmap(source, 0, 0, source.getWidth(), source.getHeight(), matrix, true);
33 | }
34 |
35 | public static Bitmap encodeAsBitmap(String str) throws WriterException {
36 | BitMatrix result;
37 | try {
38 | result = new MultiFormatWriter().encode(str, BarcodeFormat.QR_CODE, WIDTH, HEIGHT, null);
39 | } catch (IllegalArgumentException iae) {
40 | // Unsupported format
41 | return null;
42 | }
43 |
44 | int width = result.getWidth();
45 | int height = result.getHeight();
46 | int[] pixels = new int[width * height];
47 | for (int y = 0; y < height; y++) {
48 | int offset = y * width;
49 | for (int x = 0; x < width; x++) {
50 | pixels[offset + x] = result.get(x, y) ? BLACK : WHITE;
51 | }
52 | }
53 |
54 | Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
55 | bitmap.setPixels(pixels, 0, width, 0, 0, width, height);
56 | return bitmap;
57 | }
58 |
59 | /**
60 | * 将图片进行处理,变成灰图再转化为直方图
61 | */
62 | public static Mat histogram(Mat img) {
63 | Mat b_hist = null;
64 | Mat grayMat = new Mat();
65 | Imgproc.cvtColor(img, grayMat, Imgproc.COLOR_RGB2GRAY, 4);
66 | List bgr_planes = new ArrayList<>();
67 | Core.split(grayMat, bgr_planes);
68 | MatOfInt histSize = new MatOfInt(256);
69 | final MatOfFloat histRange = new MatOfFloat(0f, 256f);
70 | boolean accumulate = false;
71 | b_hist = new Mat();
72 | //生成直方图
73 | Imgproc.calcHist(bgr_planes, new MatOfInt(0), new Mat(), b_hist, histSize, histRange, accumulate);
74 | grayMat.release();
75 | histSize.release();
76 | histRange.release();
77 | for (Mat mat : bgr_planes) {
78 | mat.release();
79 | }
80 | return b_hist;
81 | }
82 |
83 | /*
84 | * 比较两个直方图
85 | * @param hist1直方图1
86 | * @param hist2直方图2
87 | * @param similarity相似度
88 | * @return 两张图片的相似度高于Similarity时返回true,否则返回false
89 | * */
90 | public static boolean compareMat(Mat hist1, Mat hist2, int similarity) {
91 | //该算法约相似,值越小
92 | double rate = 0;
93 | rate = Imgproc.compareHist(hist1, hist2, Imgproc.CV_COMP_BHATTACHARYYA);//巴氏系数
94 | if ((1 - rate) * 100 > similarity)
95 | return true;
96 | return false;
97 | }
98 | }
99 |
--------------------------------------------------------------------------------
/app/src/main/java/com/gl/camera/util/Preference.java:
--------------------------------------------------------------------------------
1 | package com.gl.camera.util;
2 |
3 | import android.content.Context;
4 | import android.content.SharedPreferences;
5 | import android.preference.PreferenceManager;
6 |
7 | /**
8 | * Created by Liang on 2016/4/7.
9 | */
10 | public class Preference {
11 | private static Preference preference;
12 | private SharedPreferences sharedPreferences;
13 |
14 | public static Preference getInstance(Context context) {
15 | if (preference == null) {
16 | preference = new Preference(context);
17 | }
18 | return preference;
19 | }
20 |
21 | private Preference(Context context) {
22 | sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context);
23 | }
24 |
25 | public void setPort(int port) {
26 | SharedPreferences.Editor editor = sharedPreferences.edit();
27 | editor.putInt("port", port);
28 | editor.apply();
29 | }
30 |
31 | public int getPort() {
32 | return sharedPreferences.getInt("port", -1);
33 | }
34 |
35 | public void setPassword(String password) {
36 | SharedPreferences.Editor editor = sharedPreferences.edit();
37 | editor.putString("password", password);
38 | editor.apply();
39 | }
40 |
41 | public String getPassword() {
42 | return sharedPreferences.getString("password", "no password");
43 | }
44 |
45 | public void setQuality(int quality) {
46 | SharedPreferences.Editor editor = sharedPreferences.edit();
47 | editor.putInt("quality", quality);
48 | editor.apply();
49 | }
50 |
51 | public int getQuality() {
52 | return sharedPreferences.getInt("quality", 20);
53 | }
54 |
55 | public void setResolution(int resolution) {
56 | SharedPreferences.Editor editor = sharedPreferences.edit();
57 | editor.putInt("resolution", resolution);
58 | editor.apply();
59 | }
60 |
61 | public int getResolution() {
62 | return sharedPreferences.getInt("resolution", 20);
63 | }
64 |
65 | public void setFPS(int fps) {
66 | SharedPreferences.Editor editor = sharedPreferences.edit();
67 | editor.putInt("fps", fps);
68 | editor.apply();
69 | }
70 |
71 | public int getFPS() {
72 | return sharedPreferences.getInt("fps", 15);
73 | }
74 |
75 | public void setDeviceId(String deviceId) {
76 | SharedPreferences.Editor editor = sharedPreferences.edit();
77 | editor.putString("DeviceId", deviceId);
78 | editor.apply();
79 | }
80 |
81 | public String getDeviceId() {
82 | return sharedPreferences.getString("DeviceId", "");
83 | }
84 |
85 | public void setEmail(String email) {
86 | SharedPreferences.Editor editor = sharedPreferences.edit();
87 | editor.putString("email", email);
88 | editor.apply();
89 | }
90 |
91 | public String getEmail() {
92 | return sharedPreferences.getString("email", "");
93 | }
94 |
95 | public void setFrequency(int frequency) {
96 | SharedPreferences.Editor editor = sharedPreferences.edit();
97 | editor.putInt("frequency", frequency);
98 | editor.apply();
99 | }
100 |
101 | public int getFrequency() {
102 | return sharedPreferences.getInt("frequency", 15);
103 | }
104 |
105 | public void setDrop(boolean drop) {
106 | SharedPreferences.Editor editor = sharedPreferences.edit();
107 | editor.putBoolean("drop", drop);
108 | editor.apply();
109 | }
110 |
111 | public boolean getDrop() {
112 | return sharedPreferences.getBoolean("drop", false);
113 | }
114 |
115 | public void setDropSimilarity(int dropSimilarity) {
116 | SharedPreferences.Editor editor = sharedPreferences.edit();
117 | editor.putInt("DropSimilarity", dropSimilarity);
118 | editor.apply();
119 | }
120 |
121 | public int getDropSimilarity() {
122 | return sharedPreferences.getInt("DropSimilarity", 80);
123 | }
124 | }
125 |
--------------------------------------------------------------------------------
/app/src/main/java/com/gl/camera/view/MyWindowManager.java:
--------------------------------------------------------------------------------
1 | package com.gl.camera.view;
2 |
3 | import android.content.Context;
4 | import android.graphics.PixelFormat;
5 | import android.view.Gravity;
6 | import android.view.WindowManager;
7 | import android.view.WindowManager.LayoutParams;
8 |
9 | public class MyWindowManager {
10 |
11 | /**
12 | * 小悬浮窗View的实例
13 | */
14 | private static FloatWindowSmallView smallWindow;
15 |
16 | /**
17 | * 小悬浮窗View的参数
18 | */
19 | private static LayoutParams smallWindowParams;
20 |
21 | /**
22 | * 用于控制在屏幕上添加或移除悬浮窗
23 | */
24 | private static WindowManager mWindowManager;
25 |
26 | /**
27 | * 创建一个小悬浮窗。初始位置为屏幕的右部中间位置。
28 | *
29 | * @param context 必须为应用程序的Context.
30 | */
31 | public static void createSmallWindow(Context context) {
32 | WindowManager windowManager = getWindowManager(context);
33 | if (smallWindow == null) {
34 | smallWindow = new FloatWindowSmallView(context);
35 | if (smallWindowParams == null) {
36 | smallWindowParams = new LayoutParams();
37 | smallWindowParams.type = LayoutParams.TYPE_PHONE;
38 | smallWindowParams.format = PixelFormat.RGBA_8888;
39 | smallWindowParams.flags = LayoutParams.FLAG_NOT_TOUCH_MODAL
40 | | LayoutParams.FLAG_NOT_FOCUSABLE;
41 | smallWindowParams.gravity = Gravity.LEFT | Gravity.TOP;
42 | smallWindowParams.width = 1;
43 | smallWindowParams.height = 1;
44 | smallWindowParams.x = 0;
45 | smallWindowParams.y = 0;
46 | }
47 | windowManager.addView(smallWindow, smallWindowParams);
48 | }
49 | }
50 |
51 | /**
52 | * 将小悬浮窗从屏幕上移除。
53 | *
54 | * @param context 必须为应用程序的Context.
55 | */
56 | public static void removeSmallWindow(Context context) {
57 | if (smallWindow != null) {
58 | WindowManager windowManager = getWindowManager(context);
59 | windowManager.removeView(smallWindow);
60 | smallWindow = null;
61 | }
62 | }
63 |
64 |
65 | /**
66 | * 是否有悬浮窗(包括小悬浮窗和大悬浮窗)显示在屏幕上。
67 | *
68 | * @return 有悬浮窗显示在桌面上返回true,没有的话返回false。
69 | */
70 | public static boolean isWindowShowing() {
71 | return smallWindow != null;
72 | }
73 |
74 | /**
75 | * 如果WindowManager还未创建,则创建一个新的WindowManager返回。否则返回当前已创建的WindowManager。
76 | *
77 | * @param context 必须为应用程序的Context.
78 | * @return WindowManager的实例,用于控制在屏幕上添加或移除悬浮窗。
79 | */
80 | private static WindowManager getWindowManager(Context context) {
81 | if (mWindowManager == null) {
82 | mWindowManager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
83 | }
84 | return mWindowManager;
85 | }
86 | }
87 |
--------------------------------------------------------------------------------
/app/src/main/java/com/gl/shared/Data.java:
--------------------------------------------------------------------------------
1 | package com.gl.shared;
2 |
3 | import java.io.ByteArrayInputStream;
4 | import java.io.ByteArrayOutputStream;
5 | import java.io.IOException;
6 | import java.io.InputStream;
7 | import java.io.ObjectInputStream;
8 | import java.io.ObjectOutputStream;
9 | import java.io.Serializable;
10 | import java.util.zip.GZIPInputStream;
11 | import java.util.zip.GZIPOutputStream;
12 |
13 | public class Data implements Serializable {
14 | private static final long serialVersionUID = -7768683932651126083L;
15 | public static final short TAG_HELLO = 0;//心跳包
16 | public static final short TAG_START_FRONT = 1;//启动前摄像头
17 | public static final short TAG_START_BACK = 2;//启动后摄像头
18 | public static final short TAG_STOP = 3;//停止监控
19 | public static final short TAG_VIDEO = 4;//视频数据
20 | public static final short TAG_ERR_PASSWORD = 5;//密码错误
21 | public static final short TAG_CAM_CONN_TO_SERVER = 6;//被监控端连接到服务器
22 | public static final short TAG_MON_CONN_TO_SERVER = 7;//监控端连接到服务器
23 | private String password;
24 | byte[] data;
25 | short tag;
26 |
27 | public String getPassword() {
28 | return password;
29 | }
30 |
31 | public void setPassword(String password) {
32 | this.password = password;
33 | }
34 |
35 | public byte[] getData() {
36 | try {
37 | return depress(data);
38 | } catch (IOException e) {
39 | e.printStackTrace();
40 | }
41 | return null;
42 | }
43 |
44 | public void setData(byte[] data) {
45 | try {
46 | this.data = compress(data);
47 | } catch (IOException e) {
48 | e.printStackTrace();
49 | }
50 | }
51 |
52 | public int getTag() {
53 | return tag;
54 | }
55 |
56 | public void setTag(short tag) {
57 | this.tag = tag;
58 | }
59 |
60 |
61 | public Data(short tag, String password) {
62 | this.tag = tag;
63 | this.password = password;
64 | }
65 |
66 | public Data(short tag) {
67 | this.tag = tag;
68 | }
69 |
70 | public Data(byte[] data) {
71 | this.tag = TAG_VIDEO;
72 | this.data = data;
73 | }
74 |
75 | public static Data fromBytes(byte[] bytes) throws IOException,
76 | ClassNotFoundException {
77 | ObjectInputStream inputStream = new ObjectInputStream(
78 | new ByteArrayInputStream(bytes));
79 | Data data = (Data) inputStream.readObject();
80 | return data;
81 | }
82 |
83 | public static Data fromInputStream(InputStream inputStream) {
84 | Data data = null;
85 | try {
86 | ObjectInputStream objectInputStream = new ObjectInputStream(inputStream);
87 | data = (Data) objectInputStream.readObject();
88 | } catch (IOException | ClassNotFoundException e) {
89 | e.printStackTrace();
90 | return null;
91 | }
92 | return data;
93 | }
94 |
95 | private byte[] compress(byte[] bytes) throws IOException {
96 | ByteArrayOutputStream baos = new ByteArrayOutputStream();
97 | GZIPOutputStream gzipOutputStream = new GZIPOutputStream(baos);
98 | gzipOutputStream.write(bytes);
99 | gzipOutputStream.close();
100 | return baos.toByteArray();
101 | }
102 |
103 | private byte[] depress(byte[] bytes) throws IOException {
104 | ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
105 | GZIPInputStream gzipInputStream = new GZIPInputStream(bais);
106 | ByteArrayOutputStream baos = new ByteArrayOutputStream();
107 | int len;
108 | byte[] buf = new byte[1024];
109 | while ((len = gzipInputStream.read(buf)) != -1) {
110 | baos.write(buf, 0, len);
111 | }
112 | baos.close();
113 | gzipInputStream.close();
114 | return baos.toByteArray();
115 | }
116 |
117 | public byte[] toBytes() throws IOException {
118 | ByteArrayOutputStream arrStream = new ByteArrayOutputStream();
119 | ObjectOutputStream objStream = new ObjectOutputStream(arrStream);
120 | objStream.writeObject(this);
121 | objStream.close();
122 | return arrStream.toByteArray();
123 | }
124 | }
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_calib3d.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_calib3d.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_core.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_core.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_features2d.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_features2d.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_flann.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_flann.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_highgui.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_highgui.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_imgcodecs.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_imgcodecs.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_imgproc.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_imgproc.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_java3.so:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_java3.so
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_ml.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_ml.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_objdetect.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_objdetect.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_photo.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_photo.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_shape.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_shape.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_stitching.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_stitching.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_superres.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_superres.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_ts.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_ts.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_video.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_video.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_videoio.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_videoio.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/armeabi-v7a/libopencv_videostab.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/armeabi-v7a/libopencv_videostab.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_calib3d.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_calib3d.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_core.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_core.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_features2d.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_features2d.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_flann.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_flann.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_highgui.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_highgui.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_imgcodecs.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_imgcodecs.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_imgproc.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_imgproc.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_java3.so:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_java3.so
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_ml.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_ml.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_objdetect.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_objdetect.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_photo.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_photo.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_shape.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_shape.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_stitching.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_stitching.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_superres.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_superres.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_video.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_video.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_videoio.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_videoio.a
--------------------------------------------------------------------------------
/app/src/main/jniLibs/x86/libopencv_videostab.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/jniLibs/x86/libopencv_videostab.a
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
15 |
16 |
22 |
23 |
28 |
29 |
34 |
35 |
40 |
41 |
46 |
50 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/float_window.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
12 |
13 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/view_face_detection.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
14 |
15 |
19 |
20 |
24 |
25 |
30 |
31 |
32 |
35 |
36 |
40 |
41 |
49 |
50 |
51 |
54 |
55 |
59 |
60 |
66 |
67 |
72 |
73 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/view_quality.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
15 |
16 |
20 |
21 |
28 |
29 |
34 |
35 |
36 |
40 |
41 |
45 |
46 |
53 |
54 |
59 |
60 |
61 |
65 |
66 |
70 |
71 |
78 |
79 |
84 |
85 |
86 |
90 |
91 |
96 |
97 |
100 |
101 |
105 |
106 |
113 |
114 |
119 |
120 |
121 |
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/values-w820dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 64dp
6 |
7 |
--------------------------------------------------------------------------------
/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #3F51B5
4 | #303F9F
5 | #FF4081
6 |
7 |
--------------------------------------------------------------------------------
/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 16dp
4 | 16dp
5 |
6 |
--------------------------------------------------------------------------------
/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | Camera
3 |
4 |
--------------------------------------------------------------------------------
/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
10 |
11 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/build.gradle:
--------------------------------------------------------------------------------
1 | // Top-level build file where you can add configuration options common to all sub-projects/modules.
2 |
3 | buildscript {
4 | repositories {
5 | jcenter()
6 | }
7 | dependencies {
8 | classpath 'com.android.tools.build:gradle:2.1.2'
9 |
10 | // NOTE: Do not place your application dependencies here; they belong
11 | // in the individual module build.gradle files
12 | }
13 | }
14 |
15 | allprojects {
16 | repositories {
17 | jcenter()
18 | }
19 | }
20 |
21 | task clean(type: Delete) {
22 | delete rootProject.buildDir
23 | }
24 |
--------------------------------------------------------------------------------
/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) users:
4 | # Gradle settings configured through the IDE *will override*
5 | # any settings specified in this file.
6 |
7 | # For more details on how to configure your build environment visit
8 | # http://www.gradle.org/docs/current/userguide/build_environment.html
9 |
10 | # Specifies the JVM arguments used for the daemon process.
11 | # The setting is particularly useful for tweaking memory settings.
12 | # Default value: -Xmx10248m -XX:MaxPermSize=256m
13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
14 |
15 | # When configured, Gradle will run in incubating parallel mode.
16 | # This option should only be used with decoupled projects. More details, visit
17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
18 | # org.gradle.parallel=true
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pwrliang/Camera/4f95ee1116974a066e70897fdb238903c7f40e09/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Fri Apr 08 20:45:08 CST 2016
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip
7 |
--------------------------------------------------------------------------------
/gradlew.bat:
--------------------------------------------------------------------------------
1 | @if "%DEBUG%" == "" @echo off
2 | @rem ##########################################################################
3 | @rem
4 | @rem Gradle startup script for Windows
5 | @rem
6 | @rem ##########################################################################
7 |
8 | @rem Set local scope for the variables with windows NT shell
9 | if "%OS%"=="Windows_NT" setlocal
10 |
11 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
12 | set DEFAULT_JVM_OPTS=
13 |
14 | set DIRNAME=%~dp0
15 | if "%DIRNAME%" == "" set DIRNAME=.
16 | set APP_BASE_NAME=%~n0
17 | set APP_HOME=%DIRNAME%
18 |
19 | @rem Find java.exe
20 | if defined JAVA_HOME goto findJavaFromJavaHome
21 |
22 | set JAVA_EXE=java.exe
23 | %JAVA_EXE% -version >NUL 2>&1
24 | if "%ERRORLEVEL%" == "0" goto init
25 |
26 | echo.
27 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
28 | echo.
29 | echo Please set the JAVA_HOME variable in your environment to match the
30 | echo location of your Java installation.
31 |
32 | goto fail
33 |
34 | :findJavaFromJavaHome
35 | set JAVA_HOME=%JAVA_HOME:"=%
36 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe
37 |
38 | if exist "%JAVA_EXE%" goto init
39 |
40 | echo.
41 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
42 | echo.
43 | echo Please set the JAVA_HOME variable in your environment to match the
44 | echo location of your Java installation.
45 |
46 | goto fail
47 |
48 | :init
49 | @rem Get command-line arguments, handling Windowz variants
50 |
51 | if not "%OS%" == "Windows_NT" goto win9xME_args
52 | if "%@eval[2+2]" == "4" goto 4NT_args
53 |
54 | :win9xME_args
55 | @rem Slurp the command line arguments.
56 | set CMD_LINE_ARGS=
57 | set _SKIP=2
58 |
59 | :win9xME_args_slurp
60 | if "x%~1" == "x" goto execute
61 |
62 | set CMD_LINE_ARGS=%*
63 | goto execute
64 |
65 | :4NT_args
66 | @rem Get arguments from the 4NT Shell from JP Software
67 | set CMD_LINE_ARGS=%$
68 |
69 | :execute
70 | @rem Setup the command line
71 |
72 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
73 |
74 | @rem Execute Gradle
75 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
76 |
77 | :end
78 | @rem End local scope for the variables with windows NT shell
79 | if "%ERRORLEVEL%"=="0" goto mainEnd
80 |
81 | :fail
82 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
83 | rem the _cmd.exe /c_ return code!
84 | if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
85 | exit /b 1
86 |
87 | :mainEnd
88 | if "%OS%"=="Windows_NT" endlocal
89 |
90 | :omega
91 |
--------------------------------------------------------------------------------
/openCVLibrary310/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'com.android.library'
2 |
3 | android {
4 | compileSdkVersion 23
5 | buildToolsVersion '23.0.3'
6 |
7 | defaultConfig {
8 | minSdkVersion 15
9 | targetSdkVersion 23
10 | }
11 |
12 | buildTypes {
13 | release {
14 | minifyEnabled false
15 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/openCVLibrary310/lint.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/aidl/org/opencv/engine/OpenCVEngineInterface.aidl:
--------------------------------------------------------------------------------
1 | package org.opencv.engine;
2 |
3 | /**
4 | * Class provides a Java interface for OpenCV Engine Service. It's synchronous with native OpenCVEngine class.
5 | */
6 | interface OpenCVEngineInterface
7 | {
8 | /**
9 | * @return Returns service version.
10 | */
11 | int getEngineVersion();
12 |
13 | /**
14 | * Finds an installed OpenCV library.
15 | * @param OpenCV version.
16 | * @return Returns path to OpenCV native libs or an empty string if OpenCV can not be found.
17 | */
18 | String getLibPathByVersion(String version);
19 |
20 | /**
21 | * Tries to install defined version of OpenCV from Google Play Market.
22 | * @param OpenCV version.
23 | * @return Returns true if installation was successful or OpenCV package has been already installed.
24 | */
25 | boolean installVersion(String version);
26 |
27 | /**
28 | * Returns list of libraries in loading order, separated by semicolon.
29 | * @param OpenCV version.
30 | * @return Returns names of OpenCV libraries, separated by semicolon.
31 | */
32 | String getLibraryList(String version);
33 | }
34 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/android/CameraGLSurfaceView.java:
--------------------------------------------------------------------------------
1 | package org.opencv.android;
2 |
3 | import org.opencv.R;
4 |
5 | import android.content.Context;
6 | import android.content.res.TypedArray;
7 | import android.opengl.GLSurfaceView;
8 | import android.util.AttributeSet;
9 | import android.util.Log;
10 | import android.view.SurfaceHolder;
11 |
12 | public class CameraGLSurfaceView extends GLSurfaceView {
13 |
14 | private static final String LOGTAG = "CameraGLSurfaceView";
15 |
16 | public interface CameraTextureListener {
17 | /**
18 | * This method is invoked when camera preview has started. After this method is invoked
19 | * the frames will start to be delivered to client via the onCameraFrame() callback.
20 | * @param width - the width of the frames that will be delivered
21 | * @param height - the height of the frames that will be delivered
22 | */
23 | public void onCameraViewStarted(int width, int height);
24 |
25 | /**
26 | * This method is invoked when camera preview has been stopped for some reason.
27 | * No frames will be delivered via onCameraFrame() callback after this method is called.
28 | */
29 | public void onCameraViewStopped();
30 |
31 | /**
32 | * This method is invoked when a new preview frame from Camera is ready.
33 | * @param texIn - the OpenGL texture ID that contains frame in RGBA format
34 | * @param texOut - the OpenGL texture ID that can be used to store modified frame image t display
35 | * @param width - the width of the frame
36 | * @param height - the height of the frame
37 | * @return `true` if `texOut` should be displayed, `false` - to show `texIn`
38 | */
39 | public boolean onCameraTexture(int texIn, int texOut, int width, int height);
40 | };
41 |
42 | private CameraTextureListener mTexListener;
43 | private CameraGLRendererBase mRenderer;
44 |
45 | public CameraGLSurfaceView(Context context, AttributeSet attrs) {
46 | super(context, attrs);
47 |
48 | TypedArray styledAttrs = getContext().obtainStyledAttributes(attrs, R.styleable.CameraBridgeViewBase);
49 | int cameraIndex = styledAttrs.getInt(R.styleable.CameraBridgeViewBase_camera_id, -1);
50 | styledAttrs.recycle();
51 |
52 | if(android.os.Build.VERSION.SDK_INT >= 21)
53 | mRenderer = new Camera2Renderer(this);
54 | else
55 | mRenderer = new CameraRenderer(this);
56 |
57 | setCameraIndex(cameraIndex);
58 |
59 | setEGLContextClientVersion(2);
60 | setRenderer(mRenderer);
61 | setRenderMode(GLSurfaceView.RENDERMODE_WHEN_DIRTY);
62 | }
63 |
64 | public void setCameraTextureListener(CameraTextureListener texListener)
65 | {
66 | mTexListener = texListener;
67 | }
68 |
69 | public CameraTextureListener getCameraTextureListener()
70 | {
71 | return mTexListener;
72 | }
73 |
74 | public void setCameraIndex(int cameraIndex) {
75 | mRenderer.setCameraIndex(cameraIndex);
76 | }
77 |
78 | public void setMaxCameraPreviewSize(int maxWidth, int maxHeight) {
79 | mRenderer.setMaxCameraPreviewSize(maxWidth, maxHeight);
80 | }
81 |
82 | @Override
83 | public void surfaceCreated(SurfaceHolder holder) {
84 | super.surfaceCreated(holder);
85 | }
86 |
87 | @Override
88 | public void surfaceDestroyed(SurfaceHolder holder) {
89 | mRenderer.mHaveSurface = false;
90 | super.surfaceDestroyed(holder);
91 | }
92 |
93 | @Override
94 | public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) {
95 | super.surfaceChanged(holder, format, w, h);
96 | }
97 |
98 | @Override
99 | public void onResume() {
100 | Log.i(LOGTAG, "onResume");
101 | super.onResume();
102 | mRenderer.onResume();
103 | }
104 |
105 | @Override
106 | public void onPause() {
107 | Log.i(LOGTAG, "onPause");
108 | mRenderer.onPause();
109 | super.onPause();
110 | }
111 |
112 | public void enableView() {
113 | mRenderer.enableView();
114 | }
115 |
116 | public void disableView() {
117 | mRenderer.disableView();
118 | }
119 | }
120 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/android/FpsMeter.java:
--------------------------------------------------------------------------------
1 | package org.opencv.android;
2 |
3 | import java.text.DecimalFormat;
4 |
5 | import org.opencv.core.Core;
6 |
7 | import android.graphics.Canvas;
8 | import android.graphics.Color;
9 | import android.graphics.Paint;
10 | import android.util.Log;
11 |
12 | public class FpsMeter {
13 | private static final String TAG = "FpsMeter";
14 | private static final int STEP = 20;
15 | private static final DecimalFormat FPS_FORMAT = new DecimalFormat("0.00");
16 |
17 | private int mFramesCouner;
18 | private double mFrequency;
19 | private long mprevFrameTime;
20 | private String mStrfps;
21 | Paint mPaint;
22 | boolean mIsInitialized = false;
23 | int mWidth = 0;
24 | int mHeight = 0;
25 |
26 | public void init() {
27 | mFramesCouner = 0;
28 | mFrequency = Core.getTickFrequency();
29 | mprevFrameTime = Core.getTickCount();
30 | mStrfps = "";
31 |
32 | mPaint = new Paint();
33 | mPaint.setColor(Color.BLUE);
34 | mPaint.setTextSize(20);
35 | }
36 |
37 | public void measure() {
38 | if (!mIsInitialized) {
39 | init();
40 | mIsInitialized = true;
41 | } else {
42 | mFramesCouner++;
43 | if (mFramesCouner % STEP == 0) {
44 | long time = Core.getTickCount();
45 | double fps = STEP * mFrequency / (time - mprevFrameTime);
46 | mprevFrameTime = time;
47 | if (mWidth != 0 && mHeight != 0)
48 | mStrfps = FPS_FORMAT.format(fps) + " FPS@" + Integer.valueOf(mWidth) + "x" + Integer.valueOf(mHeight);
49 | else
50 | mStrfps = FPS_FORMAT.format(fps) + " FPS";
51 | Log.i(TAG, mStrfps);
52 | }
53 | }
54 | }
55 |
56 | public void setResolution(int width, int height) {
57 | mWidth = width;
58 | mHeight = height;
59 | }
60 |
61 | public void draw(Canvas canvas, float offsetx, float offsety) {
62 | Log.d(TAG, mStrfps);
63 | canvas.drawText(mStrfps, offsetx, offsety, mPaint);
64 | }
65 |
66 | }
67 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/android/InstallCallbackInterface.java:
--------------------------------------------------------------------------------
1 | package org.opencv.android;
2 |
3 | /**
4 | * Installation callback interface.
5 | */
6 | public interface InstallCallbackInterface
7 | {
8 | /**
9 | * New package installation is required.
10 | */
11 | static final int NEW_INSTALLATION = 0;
12 | /**
13 | * Current package installation is in progress.
14 | */
15 | static final int INSTALLATION_PROGRESS = 1;
16 |
17 | /**
18 | * Target package name.
19 | * @return Return target package name.
20 | */
21 | public String getPackageName();
22 | /**
23 | * Installation is approved.
24 | */
25 | public void install();
26 | /**
27 | * Installation is canceled.
28 | */
29 | public void cancel();
30 | /**
31 | * Wait for package installation.
32 | */
33 | public void wait_install();
34 | };
35 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/android/LoaderCallbackInterface.java:
--------------------------------------------------------------------------------
1 | package org.opencv.android;
2 |
3 | /**
4 | * Interface for callback object in case of asynchronous initialization of OpenCV.
5 | */
6 | public interface LoaderCallbackInterface
7 | {
8 | /**
9 | * OpenCV initialization finished successfully.
10 | */
11 | static final int SUCCESS = 0;
12 | /**
13 | * Google Play Market cannot be invoked.
14 | */
15 | static final int MARKET_ERROR = 2;
16 | /**
17 | * OpenCV library installation has been canceled by the user.
18 | */
19 | static final int INSTALL_CANCELED = 3;
20 | /**
21 | * This version of OpenCV Manager Service is incompatible with the app. Possibly, a service update is required.
22 | */
23 | static final int INCOMPATIBLE_MANAGER_VERSION = 4;
24 | /**
25 | * OpenCV library initialization has failed.
26 | */
27 | static final int INIT_FAILED = 0xff;
28 |
29 | /**
30 | * Callback method, called after OpenCV library initialization.
31 | * @param status status of initialization (see initialization status constants).
32 | */
33 | public void onManagerConnected(int status);
34 |
35 | /**
36 | * Callback method, called in case the package installation is needed.
37 | * @param callback answer object with approve and cancel methods and the package description.
38 | */
39 | public void onPackageInstall(final int operation, InstallCallbackInterface callback);
40 | };
41 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/android/OpenCVLoader.java:
--------------------------------------------------------------------------------
1 | package org.opencv.android;
2 |
3 | import android.content.Context;
4 |
5 | /**
6 | * Helper class provides common initialization methods for OpenCV library.
7 | */
8 | public class OpenCVLoader
9 | {
10 | /**
11 | * OpenCV Library version 2.4.2.
12 | */
13 | public static final String OPENCV_VERSION_2_4_2 = "2.4.2";
14 |
15 | /**
16 | * OpenCV Library version 2.4.3.
17 | */
18 | public static final String OPENCV_VERSION_2_4_3 = "2.4.3";
19 |
20 | /**
21 | * OpenCV Library version 2.4.4.
22 | */
23 | public static final String OPENCV_VERSION_2_4_4 = "2.4.4";
24 |
25 | /**
26 | * OpenCV Library version 2.4.5.
27 | */
28 | public static final String OPENCV_VERSION_2_4_5 = "2.4.5";
29 |
30 | /**
31 | * OpenCV Library version 2.4.6.
32 | */
33 | public static final String OPENCV_VERSION_2_4_6 = "2.4.6";
34 |
35 | /**
36 | * OpenCV Library version 2.4.7.
37 | */
38 | public static final String OPENCV_VERSION_2_4_7 = "2.4.7";
39 |
40 | /**
41 | * OpenCV Library version 2.4.8.
42 | */
43 | public static final String OPENCV_VERSION_2_4_8 = "2.4.8";
44 |
45 | /**
46 | * OpenCV Library version 2.4.9.
47 | */
48 | public static final String OPENCV_VERSION_2_4_9 = "2.4.9";
49 |
50 | /**
51 | * OpenCV Library version 2.4.10.
52 | */
53 | public static final String OPENCV_VERSION_2_4_10 = "2.4.10";
54 |
55 | /**
56 | * OpenCV Library version 2.4.11.
57 | */
58 | public static final String OPENCV_VERSION_2_4_11 = "2.4.11";
59 |
60 | /**
61 | * OpenCV Library version 3.0.0.
62 | */
63 | public static final String OPENCV_VERSION_3_0_0 = "3.0.0";
64 |
65 | /**
66 | * OpenCV Library version 3.1.0.
67 | */
68 | public static final String OPENCV_VERSION_3_1_0 = "3.1.0";
69 |
70 |
71 | /**
72 | * Loads and initializes OpenCV library from current application package. Roughly, it's an analog of system.loadLibrary("opencv_java").
73 | * @return Returns true is initialization of OpenCV was successful.
74 | */
75 | public static boolean initDebug()
76 | {
77 | return StaticHelper.initOpenCV(false);
78 | }
79 |
80 | /**
81 | * Loads and initializes OpenCV library from current application package. Roughly, it's an analog of system.loadLibrary("opencv_java").
82 | * @param InitCuda load and initialize CUDA runtime libraries.
83 | * @return Returns true is initialization of OpenCV was successful.
84 | */
85 | public static boolean initDebug(boolean InitCuda)
86 | {
87 | return StaticHelper.initOpenCV(InitCuda);
88 | }
89 |
90 | /**
91 | * Loads and initializes OpenCV library using OpenCV Engine service.
92 | * @param Version OpenCV library version.
93 | * @param AppContext application context for connecting to the service.
94 | * @param Callback object, that implements LoaderCallbackInterface for handling the connection status.
95 | * @return Returns true if initialization of OpenCV is successful.
96 | */
97 | public static boolean initAsync(String Version, Context AppContext,
98 | LoaderCallbackInterface Callback)
99 | {
100 | return AsyncServiceHelper.initOpenCV(Version, AppContext, Callback);
101 | }
102 | }
103 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/android/StaticHelper.java:
--------------------------------------------------------------------------------
1 | package org.opencv.android;
2 |
3 | import org.opencv.core.Core;
4 |
5 | import java.util.StringTokenizer;
6 | import android.util.Log;
7 |
8 | class StaticHelper {
9 |
10 | public static boolean initOpenCV(boolean InitCuda)
11 | {
12 | boolean result;
13 | String libs = "";
14 |
15 | if(InitCuda)
16 | {
17 | loadLibrary("cudart");
18 | loadLibrary("nppc");
19 | loadLibrary("nppi");
20 | loadLibrary("npps");
21 | loadLibrary("cufft");
22 | loadLibrary("cublas");
23 | }
24 |
25 | Log.d(TAG, "Trying to get library list");
26 |
27 | try
28 | {
29 | System.loadLibrary("opencv_info");
30 | libs = getLibraryList();
31 | }
32 | catch(UnsatisfiedLinkError e)
33 | {
34 | Log.e(TAG, "OpenCV error: Cannot load info library for OpenCV");
35 | }
36 |
37 | Log.d(TAG, "Library list: \"" + libs + "\"");
38 | Log.d(TAG, "First attempt to load libs");
39 | if (initOpenCVLibs(libs))
40 | {
41 | Log.d(TAG, "First attempt to load libs is OK");
42 | String eol = System.getProperty("line.separator");
43 | for (String str : Core.getBuildInformation().split(eol))
44 | Log.i(TAG, str);
45 |
46 | result = true;
47 | }
48 | else
49 | {
50 | Log.d(TAG, "First attempt to load libs fails");
51 | result = false;
52 | }
53 |
54 | return result;
55 | }
56 |
57 | private static boolean loadLibrary(String Name)
58 | {
59 | boolean result = true;
60 |
61 | Log.d(TAG, "Trying to load library " + Name);
62 | try
63 | {
64 | System.loadLibrary(Name);
65 | Log.d(TAG, "Library " + Name + " loaded");
66 | }
67 | catch(UnsatisfiedLinkError e)
68 | {
69 | Log.d(TAG, "Cannot load library \"" + Name + "\"");
70 | e.printStackTrace();
71 | result &= false;
72 | }
73 |
74 | return result;
75 | }
76 |
77 | private static boolean initOpenCVLibs(String Libs)
78 | {
79 | Log.d(TAG, "Trying to init OpenCV libs");
80 |
81 | boolean result = true;
82 |
83 | if ((null != Libs) && (Libs.length() != 0))
84 | {
85 | Log.d(TAG, "Trying to load libs by dependency list");
86 | StringTokenizer splitter = new StringTokenizer(Libs, ";");
87 | while(splitter.hasMoreTokens())
88 | {
89 | result &= loadLibrary(splitter.nextToken());
90 | }
91 | }
92 | else
93 | {
94 | // If dependencies list is not defined or empty.
95 | result &= loadLibrary("opencv_java3");
96 | }
97 |
98 | return result;
99 | }
100 |
101 | private static final String TAG = "OpenCV/StaticHelper";
102 |
103 | private static native String getLibraryList();
104 | }
105 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/Algorithm.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.core;
6 |
7 | import java.lang.String;
8 |
9 | // C++: class Algorithm
10 | //javadoc: Algorithm
11 | public class Algorithm {
12 |
13 | protected final long nativeObj;
14 | protected Algorithm(long addr) { nativeObj = addr; }
15 |
16 |
17 | //
18 | // C++: String getDefaultName()
19 | //
20 |
21 | //javadoc: Algorithm::getDefaultName()
22 | public String getDefaultName()
23 | {
24 |
25 | String retVal = getDefaultName_0(nativeObj);
26 |
27 | return retVal;
28 | }
29 |
30 |
31 | //
32 | // C++: void clear()
33 | //
34 |
35 | //javadoc: Algorithm::clear()
36 | public void clear()
37 | {
38 |
39 | clear_0(nativeObj);
40 |
41 | return;
42 | }
43 |
44 |
45 | //
46 | // C++: void save(String filename)
47 | //
48 |
49 | //javadoc: Algorithm::save(filename)
50 | public void save(String filename)
51 | {
52 |
53 | save_0(nativeObj, filename);
54 |
55 | return;
56 | }
57 |
58 |
59 | @Override
60 | protected void finalize() throws Throwable {
61 | delete(nativeObj);
62 | }
63 |
64 |
65 |
66 | // C++: String getDefaultName()
67 | private static native String getDefaultName_0(long nativeObj);
68 |
69 | // C++: void clear()
70 | private static native void clear_0(long nativeObj);
71 |
72 | // C++: void save(String filename)
73 | private static native void save_0(long nativeObj, String filename);
74 |
75 | // native support for java finalize()
76 | private static native void delete(long nativeObj);
77 |
78 | }
79 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/CvException.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | public class CvException extends RuntimeException {
4 |
5 | private static final long serialVersionUID = 1L;
6 |
7 | public CvException(String msg) {
8 | super(msg);
9 | }
10 |
11 | @Override
12 | public String toString() {
13 | return "CvException [" + super.toString() + "]";
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/CvType.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | public final class CvType {
4 |
5 | // type depth constants
6 | public static final int
7 | CV_8U = 0, CV_8S = 1,
8 | CV_16U = 2, CV_16S = 3,
9 | CV_32S = 4,
10 | CV_32F = 5,
11 | CV_64F = 6,
12 | CV_USRTYPE1 = 7;
13 |
14 | // predefined type constants
15 | public static final int
16 | CV_8UC1 = CV_8UC(1), CV_8UC2 = CV_8UC(2), CV_8UC3 = CV_8UC(3), CV_8UC4 = CV_8UC(4),
17 | CV_8SC1 = CV_8SC(1), CV_8SC2 = CV_8SC(2), CV_8SC3 = CV_8SC(3), CV_8SC4 = CV_8SC(4),
18 | CV_16UC1 = CV_16UC(1), CV_16UC2 = CV_16UC(2), CV_16UC3 = CV_16UC(3), CV_16UC4 = CV_16UC(4),
19 | CV_16SC1 = CV_16SC(1), CV_16SC2 = CV_16SC(2), CV_16SC3 = CV_16SC(3), CV_16SC4 = CV_16SC(4),
20 | CV_32SC1 = CV_32SC(1), CV_32SC2 = CV_32SC(2), CV_32SC3 = CV_32SC(3), CV_32SC4 = CV_32SC(4),
21 | CV_32FC1 = CV_32FC(1), CV_32FC2 = CV_32FC(2), CV_32FC3 = CV_32FC(3), CV_32FC4 = CV_32FC(4),
22 | CV_64FC1 = CV_64FC(1), CV_64FC2 = CV_64FC(2), CV_64FC3 = CV_64FC(3), CV_64FC4 = CV_64FC(4);
23 |
24 | private static final int CV_CN_MAX = 512, CV_CN_SHIFT = 3, CV_DEPTH_MAX = (1 << CV_CN_SHIFT);
25 |
26 | public static final int makeType(int depth, int channels) {
27 | if (channels <= 0 || channels >= CV_CN_MAX) {
28 | throw new java.lang.UnsupportedOperationException(
29 | "Channels count should be 1.." + (CV_CN_MAX - 1));
30 | }
31 | if (depth < 0 || depth >= CV_DEPTH_MAX) {
32 | throw new java.lang.UnsupportedOperationException(
33 | "Data type depth should be 0.." + (CV_DEPTH_MAX - 1));
34 | }
35 | return (depth & (CV_DEPTH_MAX - 1)) + ((channels - 1) << CV_CN_SHIFT);
36 | }
37 |
38 | public static final int CV_8UC(int ch) {
39 | return makeType(CV_8U, ch);
40 | }
41 |
42 | public static final int CV_8SC(int ch) {
43 | return makeType(CV_8S, ch);
44 | }
45 |
46 | public static final int CV_16UC(int ch) {
47 | return makeType(CV_16U, ch);
48 | }
49 |
50 | public static final int CV_16SC(int ch) {
51 | return makeType(CV_16S, ch);
52 | }
53 |
54 | public static final int CV_32SC(int ch) {
55 | return makeType(CV_32S, ch);
56 | }
57 |
58 | public static final int CV_32FC(int ch) {
59 | return makeType(CV_32F, ch);
60 | }
61 |
62 | public static final int CV_64FC(int ch) {
63 | return makeType(CV_64F, ch);
64 | }
65 |
66 | public static final int channels(int type) {
67 | return (type >> CV_CN_SHIFT) + 1;
68 | }
69 |
70 | public static final int depth(int type) {
71 | return type & (CV_DEPTH_MAX - 1);
72 | }
73 |
74 | public static final boolean isInteger(int type) {
75 | return depth(type) < CV_32F;
76 | }
77 |
78 | public static final int ELEM_SIZE(int type) {
79 | switch (depth(type)) {
80 | case CV_8U:
81 | case CV_8S:
82 | return channels(type);
83 | case CV_16U:
84 | case CV_16S:
85 | return 2 * channels(type);
86 | case CV_32S:
87 | case CV_32F:
88 | return 4 * channels(type);
89 | case CV_64F:
90 | return 8 * channels(type);
91 | default:
92 | throw new java.lang.UnsupportedOperationException(
93 | "Unsupported CvType value: " + type);
94 | }
95 | }
96 |
97 | public static final String typeToString(int type) {
98 | String s;
99 | switch (depth(type)) {
100 | case CV_8U:
101 | s = "CV_8U";
102 | break;
103 | case CV_8S:
104 | s = "CV_8S";
105 | break;
106 | case CV_16U:
107 | s = "CV_16U";
108 | break;
109 | case CV_16S:
110 | s = "CV_16S";
111 | break;
112 | case CV_32S:
113 | s = "CV_32S";
114 | break;
115 | case CV_32F:
116 | s = "CV_32F";
117 | break;
118 | case CV_64F:
119 | s = "CV_64F";
120 | break;
121 | case CV_USRTYPE1:
122 | s = "CV_USRTYPE1";
123 | break;
124 | default:
125 | throw new java.lang.UnsupportedOperationException(
126 | "Unsupported CvType value: " + type);
127 | }
128 |
129 | int ch = channels(type);
130 | if (ch <= 4)
131 | return s + "C" + ch;
132 | else
133 | return s + "C(" + ch + ")";
134 | }
135 |
136 | }
137 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/DMatch.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | //C++: class DMatch
4 |
5 | /**
6 | * Structure for matching: query descriptor index, train descriptor index, train
7 | * image index and distance between descriptors.
8 | */
9 | public class DMatch {
10 |
11 | /**
12 | * Query descriptor index.
13 | */
14 | public int queryIdx;
15 | /**
16 | * Train descriptor index.
17 | */
18 | public int trainIdx;
19 | /**
20 | * Train image index.
21 | */
22 | public int imgIdx;
23 |
24 | // javadoc: DMatch::distance
25 | public float distance;
26 |
27 | // javadoc: DMatch::DMatch()
28 | public DMatch() {
29 | this(-1, -1, Float.MAX_VALUE);
30 | }
31 |
32 | // javadoc: DMatch::DMatch(_queryIdx, _trainIdx, _distance)
33 | public DMatch(int _queryIdx, int _trainIdx, float _distance) {
34 | queryIdx = _queryIdx;
35 | trainIdx = _trainIdx;
36 | imgIdx = -1;
37 | distance = _distance;
38 | }
39 |
40 | // javadoc: DMatch::DMatch(_queryIdx, _trainIdx, _imgIdx, _distance)
41 | public DMatch(int _queryIdx, int _trainIdx, int _imgIdx, float _distance) {
42 | queryIdx = _queryIdx;
43 | trainIdx = _trainIdx;
44 | imgIdx = _imgIdx;
45 | distance = _distance;
46 | }
47 |
48 | /**
49 | * Less is better.
50 | */
51 | public boolean lessThan(DMatch it) {
52 | return distance < it.distance;
53 | }
54 |
55 | @Override
56 | public String toString() {
57 | return "DMatch [queryIdx=" + queryIdx + ", trainIdx=" + trainIdx
58 | + ", imgIdx=" + imgIdx + ", distance=" + distance + "]";
59 | }
60 |
61 | }
62 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/KeyPoint.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | import org.opencv.core.Point;
4 |
5 | //javadoc: KeyPoint
6 | public class KeyPoint {
7 |
8 | /**
9 | * Coordinates of the keypoint.
10 | */
11 | public Point pt;
12 | /**
13 | * Diameter of the useful keypoint adjacent area.
14 | */
15 | public float size;
16 | /**
17 | * Computed orientation of the keypoint (-1 if not applicable).
18 | */
19 | public float angle;
20 | /**
21 | * The response, by which the strongest keypoints have been selected. Can
22 | * be used for further sorting or subsampling.
23 | */
24 | public float response;
25 | /**
26 | * Octave (pyramid layer), from which the keypoint has been extracted.
27 | */
28 | public int octave;
29 | /**
30 | * Object ID, that can be used to cluster keypoints by an object they
31 | * belong to.
32 | */
33 | public int class_id;
34 |
35 | // javadoc:KeyPoint::KeyPoint(x,y,_size,_angle,_response,_octave,_class_id)
36 | public KeyPoint(float x, float y, float _size, float _angle, float _response, int _octave, int _class_id)
37 | {
38 | pt = new Point(x, y);
39 | size = _size;
40 | angle = _angle;
41 | response = _response;
42 | octave = _octave;
43 | class_id = _class_id;
44 | }
45 |
46 | // javadoc: KeyPoint::KeyPoint()
47 | public KeyPoint()
48 | {
49 | this(0, 0, 0, -1, 0, 0, -1);
50 | }
51 |
52 | // javadoc: KeyPoint::KeyPoint(x, y, _size, _angle, _response, _octave)
53 | public KeyPoint(float x, float y, float _size, float _angle, float _response, int _octave)
54 | {
55 | this(x, y, _size, _angle, _response, _octave, -1);
56 | }
57 |
58 | // javadoc: KeyPoint::KeyPoint(x, y, _size, _angle, _response)
59 | public KeyPoint(float x, float y, float _size, float _angle, float _response)
60 | {
61 | this(x, y, _size, _angle, _response, 0, -1);
62 | }
63 |
64 | // javadoc: KeyPoint::KeyPoint(x, y, _size, _angle)
65 | public KeyPoint(float x, float y, float _size, float _angle)
66 | {
67 | this(x, y, _size, _angle, 0, 0, -1);
68 | }
69 |
70 | // javadoc: KeyPoint::KeyPoint(x, y, _size)
71 | public KeyPoint(float x, float y, float _size)
72 | {
73 | this(x, y, _size, -1, 0, 0, -1);
74 | }
75 |
76 | @Override
77 | public String toString() {
78 | return "KeyPoint [pt=" + pt + ", size=" + size + ", angle=" + angle
79 | + ", response=" + response + ", octave=" + octave
80 | + ", class_id=" + class_id + "]";
81 | }
82 |
83 | }
84 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/MatOfByte.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | import java.util.Arrays;
4 | import java.util.List;
5 |
6 | public class MatOfByte extends Mat {
7 | // 8UC(x)
8 | private static final int _depth = CvType.CV_8U;
9 | private static final int _channels = 1;
10 |
11 | public MatOfByte() {
12 | super();
13 | }
14 |
15 | protected MatOfByte(long addr) {
16 | super(addr);
17 | if( !empty() && checkVector(_channels, _depth) < 0 )
18 | throw new IllegalArgumentException("Incompatible Mat");
19 | //FIXME: do we need release() here?
20 | }
21 |
22 | public static MatOfByte fromNativeAddr(long addr) {
23 | return new MatOfByte(addr);
24 | }
25 |
26 | public MatOfByte(Mat m) {
27 | super(m, Range.all());
28 | if( !empty() && checkVector(_channels, _depth) < 0 )
29 | throw new IllegalArgumentException("Incompatible Mat");
30 | //FIXME: do we need release() here?
31 | }
32 |
33 | public MatOfByte(byte...a) {
34 | super();
35 | fromArray(a);
36 | }
37 |
38 | public void alloc(int elemNumber) {
39 | if(elemNumber>0)
40 | super.create(elemNumber, 1, CvType.makeType(_depth, _channels));
41 | }
42 |
43 | public void fromArray(byte...a) {
44 | if(a==null || a.length==0)
45 | return;
46 | int num = a.length / _channels;
47 | alloc(num);
48 | put(0, 0, a); //TODO: check ret val!
49 | }
50 |
51 | public byte[] toArray() {
52 | int num = checkVector(_channels, _depth);
53 | if(num < 0)
54 | throw new RuntimeException("Native Mat has unexpected type or size: " + toString());
55 | byte[] a = new byte[num * _channels];
56 | if(num == 0)
57 | return a;
58 | get(0, 0, a); //TODO: check ret val!
59 | return a;
60 | }
61 |
62 | public void fromList(List lb) {
63 | if(lb==null || lb.size()==0)
64 | return;
65 | Byte ab[] = lb.toArray(new Byte[0]);
66 | byte a[] = new byte[ab.length];
67 | for(int i=0; i toList() {
73 | byte[] a = toArray();
74 | Byte ab[] = new Byte[a.length];
75 | for(int i=0; i0)
42 | super.create(elemNumber, 1, CvType.makeType(_depth, _channels));
43 | }
44 |
45 |
46 | public void fromArray(DMatch...a) {
47 | if(a==null || a.length==0)
48 | return;
49 | int num = a.length;
50 | alloc(num);
51 | float buff[] = new float[num * _channels];
52 | for(int i=0; i ldm) {
75 | DMatch adm[] = ldm.toArray(new DMatch[0]);
76 | fromArray(adm);
77 | }
78 |
79 | public List toList() {
80 | DMatch[] adm = toArray();
81 | return Arrays.asList(adm);
82 | }
83 | }
84 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/MatOfDouble.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | import java.util.Arrays;
4 | import java.util.List;
5 |
6 | public class MatOfDouble extends Mat {
7 | // 64FC(x)
8 | private static final int _depth = CvType.CV_64F;
9 | private static final int _channels = 1;
10 |
11 | public MatOfDouble() {
12 | super();
13 | }
14 |
15 | protected MatOfDouble(long addr) {
16 | super(addr);
17 | if( !empty() && checkVector(_channels, _depth) < 0 )
18 | throw new IllegalArgumentException("Incompatible Mat");
19 | //FIXME: do we need release() here?
20 | }
21 |
22 | public static MatOfDouble fromNativeAddr(long addr) {
23 | return new MatOfDouble(addr);
24 | }
25 |
26 | public MatOfDouble(Mat m) {
27 | super(m, Range.all());
28 | if( !empty() && checkVector(_channels, _depth) < 0 )
29 | throw new IllegalArgumentException("Incompatible Mat");
30 | //FIXME: do we need release() here?
31 | }
32 |
33 | public MatOfDouble(double...a) {
34 | super();
35 | fromArray(a);
36 | }
37 |
38 | public void alloc(int elemNumber) {
39 | if(elemNumber>0)
40 | super.create(elemNumber, 1, CvType.makeType(_depth, _channels));
41 | }
42 |
43 | public void fromArray(double...a) {
44 | if(a==null || a.length==0)
45 | return;
46 | int num = a.length / _channels;
47 | alloc(num);
48 | put(0, 0, a); //TODO: check ret val!
49 | }
50 |
51 | public double[] toArray() {
52 | int num = checkVector(_channels, _depth);
53 | if(num < 0)
54 | throw new RuntimeException("Native Mat has unexpected type or size: " + toString());
55 | double[] a = new double[num * _channels];
56 | if(num == 0)
57 | return a;
58 | get(0, 0, a); //TODO: check ret val!
59 | return a;
60 | }
61 |
62 | public void fromList(List lb) {
63 | if(lb==null || lb.size()==0)
64 | return;
65 | Double ab[] = lb.toArray(new Double[0]);
66 | double a[] = new double[ab.length];
67 | for(int i=0; i toList() {
73 | double[] a = toArray();
74 | Double ab[] = new Double[a.length];
75 | for(int i=0; i0)
40 | super.create(elemNumber, 1, CvType.makeType(_depth, _channels));
41 | }
42 |
43 | public void fromArray(float...a) {
44 | if(a==null || a.length==0)
45 | return;
46 | int num = a.length / _channels;
47 | alloc(num);
48 | put(0, 0, a); //TODO: check ret val!
49 | }
50 |
51 | public float[] toArray() {
52 | int num = checkVector(_channels, _depth);
53 | if(num < 0)
54 | throw new RuntimeException("Native Mat has unexpected type or size: " + toString());
55 | float[] a = new float[num * _channels];
56 | if(num == 0)
57 | return a;
58 | get(0, 0, a); //TODO: check ret val!
59 | return a;
60 | }
61 |
62 | public void fromList(List lb) {
63 | if(lb==null || lb.size()==0)
64 | return;
65 | Float ab[] = lb.toArray(new Float[0]);
66 | float a[] = new float[ab.length];
67 | for(int i=0; i toList() {
73 | float[] a = toArray();
74 | Float ab[] = new Float[a.length];
75 | for(int i=0; i0)
40 | super.create(elemNumber, 1, CvType.makeType(_depth, _channels));
41 | }
42 |
43 | public void fromArray(float...a) {
44 | if(a==null || a.length==0)
45 | return;
46 | int num = a.length / _channels;
47 | alloc(num);
48 | put(0, 0, a); //TODO: check ret val!
49 | }
50 |
51 | public float[] toArray() {
52 | int num = checkVector(_channels, _depth);
53 | if(num < 0)
54 | throw new RuntimeException("Native Mat has unexpected type or size: " + toString());
55 | float[] a = new float[num * _channels];
56 | if(num == 0)
57 | return a;
58 | get(0, 0, a); //TODO: check ret val!
59 | return a;
60 | }
61 |
62 | public void fromList(List lb) {
63 | if(lb==null || lb.size()==0)
64 | return;
65 | Float ab[] = lb.toArray(new Float[0]);
66 | float a[] = new float[ab.length];
67 | for(int i=0; i toList() {
73 | float[] a = toArray();
74 | Float ab[] = new Float[a.length];
75 | for(int i=0; i0)
40 | super.create(elemNumber, 1, CvType.makeType(_depth, _channels));
41 | }
42 |
43 | public void fromArray(float...a) {
44 | if(a==null || a.length==0)
45 | return;
46 | int num = a.length / _channels;
47 | alloc(num);
48 | put(0, 0, a); //TODO: check ret val!
49 | }
50 |
51 | public float[] toArray() {
52 | int num = checkVector(_channels, _depth);
53 | if(num < 0)
54 | throw new RuntimeException("Native Mat has unexpected type or size: " + toString());
55 | float[] a = new float[num * _channels];
56 | if(num == 0)
57 | return a;
58 | get(0, 0, a); //TODO: check ret val!
59 | return a;
60 | }
61 |
62 | public void fromList(List lb) {
63 | if(lb==null || lb.size()==0)
64 | return;
65 | Float ab[] = lb.toArray(new Float[0]);
66 | float a[] = new float[ab.length];
67 | for(int i=0; i toList() {
73 | float[] a = toArray();
74 | Float ab[] = new Float[a.length];
75 | for(int i=0; i0)
41 | super.create(elemNumber, 1, CvType.makeType(_depth, _channels));
42 | }
43 |
44 | public void fromArray(int...a) {
45 | if(a==null || a.length==0)
46 | return;
47 | int num = a.length / _channels;
48 | alloc(num);
49 | put(0, 0, a); //TODO: check ret val!
50 | }
51 |
52 | public int[] toArray() {
53 | int num = checkVector(_channels, _depth);
54 | if(num < 0)
55 | throw new RuntimeException("Native Mat has unexpected type or size: " + toString());
56 | int[] a = new int[num * _channels];
57 | if(num == 0)
58 | return a;
59 | get(0, 0, a); //TODO: check ret val!
60 | return a;
61 | }
62 |
63 | public void fromList(List lb) {
64 | if(lb==null || lb.size()==0)
65 | return;
66 | Integer ab[] = lb.toArray(new Integer[0]);
67 | int a[] = new int[ab.length];
68 | for(int i=0; i toList() {
74 | int[] a = toArray();
75 | Integer ab[] = new Integer[a.length];
76 | for(int i=0; i0)
41 | super.create(elemNumber, 1, CvType.makeType(_depth, _channels));
42 | }
43 |
44 | public void fromArray(int...a) {
45 | if(a==null || a.length==0)
46 | return;
47 | int num = a.length / _channels;
48 | alloc(num);
49 | put(0, 0, a); //TODO: check ret val!
50 | }
51 |
52 | public int[] toArray() {
53 | int num = checkVector(_channels, _depth);
54 | if(num < 0)
55 | throw new RuntimeException("Native Mat has unexpected type or size: " + toString());
56 | int[] a = new int[num * _channels];
57 | if(num == 0)
58 | return a;
59 | get(0, 0, a); //TODO: check ret val!
60 | return a;
61 | }
62 |
63 | public void fromList(List lb) {
64 | if(lb==null || lb.size()==0)
65 | return;
66 | Integer ab[] = lb.toArray(new Integer[0]);
67 | int a[] = new int[ab.length];
68 | for(int i=0; i toList() {
74 | int[] a = toArray();
75 | Integer ab[] = new Integer[a.length];
76 | for(int i=0; i0)
42 | super.create(elemNumber, 1, CvType.makeType(_depth, _channels));
43 | }
44 |
45 | public void fromArray(KeyPoint...a) {
46 | if(a==null || a.length==0)
47 | return;
48 | int num = a.length;
49 | alloc(num);
50 | float buff[] = new float[num * _channels];
51 | for(int i=0; i lkp) {
78 | KeyPoint akp[] = lkp.toArray(new KeyPoint[0]);
79 | fromArray(akp);
80 | }
81 |
82 | public List toList() {
83 | KeyPoint[] akp = toArray();
84 | return Arrays.asList(akp);
85 | }
86 | }
87 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/MatOfPoint.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | import java.util.Arrays;
4 | import java.util.List;
5 |
6 | public class MatOfPoint extends Mat {
7 | // 32SC2
8 | private static final int _depth = CvType.CV_32S;
9 | private static final int _channels = 2;
10 |
11 | public MatOfPoint() {
12 | super();
13 | }
14 |
15 | protected MatOfPoint(long addr) {
16 | super(addr);
17 | if( !empty() && checkVector(_channels, _depth) < 0 )
18 | throw new IllegalArgumentException("Incompatible Mat");
19 | //FIXME: do we need release() here?
20 | }
21 |
22 | public static MatOfPoint fromNativeAddr(long addr) {
23 | return new MatOfPoint(addr);
24 | }
25 |
26 | public MatOfPoint(Mat m) {
27 | super(m, Range.all());
28 | if( !empty() && checkVector(_channels, _depth) < 0 )
29 | throw new IllegalArgumentException("Incompatible Mat");
30 | //FIXME: do we need release() here?
31 | }
32 |
33 | public MatOfPoint(Point...a) {
34 | super();
35 | fromArray(a);
36 | }
37 |
38 | public void alloc(int elemNumber) {
39 | if(elemNumber>0)
40 | super.create(elemNumber, 1, CvType.makeType(_depth, _channels));
41 | }
42 |
43 | public void fromArray(Point...a) {
44 | if(a==null || a.length==0)
45 | return;
46 | int num = a.length;
47 | alloc(num);
48 | int buff[] = new int[num * _channels];
49 | for(int i=0; i lp) {
70 | Point ap[] = lp.toArray(new Point[0]);
71 | fromArray(ap);
72 | }
73 |
74 | public List toList() {
75 | Point[] ap = toArray();
76 | return Arrays.asList(ap);
77 | }
78 | }
79 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/MatOfPoint2f.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | import java.util.Arrays;
4 | import java.util.List;
5 |
6 | public class MatOfPoint2f extends Mat {
7 | // 32FC2
8 | private static final int _depth = CvType.CV_32F;
9 | private static final int _channels = 2;
10 |
11 | public MatOfPoint2f() {
12 | super();
13 | }
14 |
15 | protected MatOfPoint2f(long addr) {
16 | super(addr);
17 | if( !empty() && checkVector(_channels, _depth) < 0 )
18 | throw new IllegalArgumentException("Incompatible Mat");
19 | //FIXME: do we need release() here?
20 | }
21 |
22 | public static MatOfPoint2f fromNativeAddr(long addr) {
23 | return new MatOfPoint2f(addr);
24 | }
25 |
26 | public MatOfPoint2f(Mat m) {
27 | super(m, Range.all());
28 | if( !empty() && checkVector(_channels, _depth) < 0 )
29 | throw new IllegalArgumentException("Incompatible Mat");
30 | //FIXME: do we need release() here?
31 | }
32 |
33 | public MatOfPoint2f(Point...a) {
34 | super();
35 | fromArray(a);
36 | }
37 |
38 | public void alloc(int elemNumber) {
39 | if(elemNumber>0)
40 | super.create(elemNumber, 1, CvType.makeType(_depth, _channels));
41 | }
42 |
43 | public void fromArray(Point...a) {
44 | if(a==null || a.length==0)
45 | return;
46 | int num = a.length;
47 | alloc(num);
48 | float buff[] = new float[num * _channels];
49 | for(int i=0; i lp) {
70 | Point ap[] = lp.toArray(new Point[0]);
71 | fromArray(ap);
72 | }
73 |
74 | public List toList() {
75 | Point[] ap = toArray();
76 | return Arrays.asList(ap);
77 | }
78 | }
79 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/MatOfPoint3.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | import java.util.Arrays;
4 | import java.util.List;
5 |
6 | public class MatOfPoint3 extends Mat {
7 | // 32SC3
8 | private static final int _depth = CvType.CV_32S;
9 | private static final int _channels = 3;
10 |
11 | public MatOfPoint3() {
12 | super();
13 | }
14 |
15 | protected MatOfPoint3(long addr) {
16 | super(addr);
17 | if( !empty() && checkVector(_channels, _depth) < 0 )
18 | throw new IllegalArgumentException("Incompatible Mat");
19 | //FIXME: do we need release() here?
20 | }
21 |
22 | public static MatOfPoint3 fromNativeAddr(long addr) {
23 | return new MatOfPoint3(addr);
24 | }
25 |
26 | public MatOfPoint3(Mat m) {
27 | super(m, Range.all());
28 | if( !empty() && checkVector(_channels, _depth) < 0 )
29 | throw new IllegalArgumentException("Incompatible Mat");
30 | //FIXME: do we need release() here?
31 | }
32 |
33 | public MatOfPoint3(Point3...a) {
34 | super();
35 | fromArray(a);
36 | }
37 |
38 | public void alloc(int elemNumber) {
39 | if(elemNumber>0)
40 | super.create(elemNumber, 1, CvType.makeType(_depth, _channels));
41 | }
42 |
43 | public void fromArray(Point3...a) {
44 | if(a==null || a.length==0)
45 | return;
46 | int num = a.length;
47 | alloc(num);
48 | int buff[] = new int[num * _channels];
49 | for(int i=0; i lp) {
71 | Point3 ap[] = lp.toArray(new Point3[0]);
72 | fromArray(ap);
73 | }
74 |
75 | public List toList() {
76 | Point3[] ap = toArray();
77 | return Arrays.asList(ap);
78 | }
79 | }
80 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/MatOfPoint3f.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | import java.util.Arrays;
4 | import java.util.List;
5 |
6 | public class MatOfPoint3f extends Mat {
7 | // 32FC3
8 | private static final int _depth = CvType.CV_32F;
9 | private static final int _channels = 3;
10 |
11 | public MatOfPoint3f() {
12 | super();
13 | }
14 |
15 | protected MatOfPoint3f(long addr) {
16 | super(addr);
17 | if( !empty() && checkVector(_channels, _depth) < 0 )
18 | throw new IllegalArgumentException("Incompatible Mat");
19 | //FIXME: do we need release() here?
20 | }
21 |
22 | public static MatOfPoint3f fromNativeAddr(long addr) {
23 | return new MatOfPoint3f(addr);
24 | }
25 |
26 | public MatOfPoint3f(Mat m) {
27 | super(m, Range.all());
28 | if( !empty() && checkVector(_channels, _depth) < 0 )
29 | throw new IllegalArgumentException("Incompatible Mat");
30 | //FIXME: do we need release() here?
31 | }
32 |
33 | public MatOfPoint3f(Point3...a) {
34 | super();
35 | fromArray(a);
36 | }
37 |
38 | public void alloc(int elemNumber) {
39 | if(elemNumber>0)
40 | super.create(elemNumber, 1, CvType.makeType(_depth, _channels));
41 | }
42 |
43 | public void fromArray(Point3...a) {
44 | if(a==null || a.length==0)
45 | return;
46 | int num = a.length;
47 | alloc(num);
48 | float buff[] = new float[num * _channels];
49 | for(int i=0; i lp) {
71 | Point3 ap[] = lp.toArray(new Point3[0]);
72 | fromArray(ap);
73 | }
74 |
75 | public List toList() {
76 | Point3[] ap = toArray();
77 | return Arrays.asList(ap);
78 | }
79 | }
80 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/MatOfRect.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | import java.util.Arrays;
4 | import java.util.List;
5 |
6 |
7 | public class MatOfRect extends Mat {
8 | // 32SC4
9 | private static final int _depth = CvType.CV_32S;
10 | private static final int _channels = 4;
11 |
12 | public MatOfRect() {
13 | super();
14 | }
15 |
16 | protected MatOfRect(long addr) {
17 | super(addr);
18 | if( !empty() && checkVector(_channels, _depth) < 0 )
19 | throw new IllegalArgumentException("Incompatible Mat");
20 | //FIXME: do we need release() here?
21 | }
22 |
23 | public static MatOfRect fromNativeAddr(long addr) {
24 | return new MatOfRect(addr);
25 | }
26 |
27 | public MatOfRect(Mat m) {
28 | super(m, Range.all());
29 | if( !empty() && checkVector(_channels, _depth) < 0 )
30 | throw new IllegalArgumentException("Incompatible Mat");
31 | //FIXME: do we need release() here?
32 | }
33 |
34 | public MatOfRect(Rect...a) {
35 | super();
36 | fromArray(a);
37 | }
38 |
39 | public void alloc(int elemNumber) {
40 | if(elemNumber>0)
41 | super.create(elemNumber, 1, CvType.makeType(_depth, _channels));
42 | }
43 |
44 | public void fromArray(Rect...a) {
45 | if(a==null || a.length==0)
46 | return;
47 | int num = a.length;
48 | alloc(num);
49 | int buff[] = new int[num * _channels];
50 | for(int i=0; i lr) {
73 | Rect ap[] = lr.toArray(new Rect[0]);
74 | fromArray(ap);
75 | }
76 |
77 | public List toList() {
78 | Rect[] ar = toArray();
79 | return Arrays.asList(ar);
80 | }
81 | }
82 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/Point.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | //javadoc:Point_
4 | public class Point {
5 |
6 | public double x, y;
7 |
8 | public Point(double x, double y) {
9 | this.x = x;
10 | this.y = y;
11 | }
12 |
13 | public Point() {
14 | this(0, 0);
15 | }
16 |
17 | public Point(double[] vals) {
18 | this();
19 | set(vals);
20 | }
21 |
22 | public void set(double[] vals) {
23 | if (vals != null) {
24 | x = vals.length > 0 ? vals[0] : 0;
25 | y = vals.length > 1 ? vals[1] : 0;
26 | } else {
27 | x = 0;
28 | y = 0;
29 | }
30 | }
31 |
32 | public Point clone() {
33 | return new Point(x, y);
34 | }
35 |
36 | public double dot(Point p) {
37 | return x * p.x + y * p.y;
38 | }
39 |
40 | @Override
41 | public int hashCode() {
42 | final int prime = 31;
43 | int result = 1;
44 | long temp;
45 | temp = Double.doubleToLongBits(x);
46 | result = prime * result + (int) (temp ^ (temp >>> 32));
47 | temp = Double.doubleToLongBits(y);
48 | result = prime * result + (int) (temp ^ (temp >>> 32));
49 | return result;
50 | }
51 |
52 | @Override
53 | public boolean equals(Object obj) {
54 | if (this == obj) return true;
55 | if (!(obj instanceof Point)) return false;
56 | Point it = (Point) obj;
57 | return x == it.x && y == it.y;
58 | }
59 |
60 | public boolean inside(Rect r) {
61 | return r.contains(this);
62 | }
63 |
64 | @Override
65 | public String toString() {
66 | return "{" + x + ", " + y + "}";
67 | }
68 | }
69 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/Point3.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | //javadoc:Point3_
4 | public class Point3 {
5 |
6 | public double x, y, z;
7 |
8 | public Point3(double x, double y, double z) {
9 | this.x = x;
10 | this.y = y;
11 | this.z = z;
12 | }
13 |
14 | public Point3() {
15 | this(0, 0, 0);
16 | }
17 |
18 | public Point3(Point p) {
19 | x = p.x;
20 | y = p.y;
21 | z = 0;
22 | }
23 |
24 | public Point3(double[] vals) {
25 | this();
26 | set(vals);
27 | }
28 |
29 | public void set(double[] vals) {
30 | if (vals != null) {
31 | x = vals.length > 0 ? vals[0] : 0;
32 | y = vals.length > 1 ? vals[1] : 0;
33 | z = vals.length > 2 ? vals[2] : 0;
34 | } else {
35 | x = 0;
36 | y = 0;
37 | z = 0;
38 | }
39 | }
40 |
41 | public Point3 clone() {
42 | return new Point3(x, y, z);
43 | }
44 |
45 | public double dot(Point3 p) {
46 | return x * p.x + y * p.y + z * p.z;
47 | }
48 |
49 | public Point3 cross(Point3 p) {
50 | return new Point3(y * p.z - z * p.y, z * p.x - x * p.z, x * p.y - y * p.x);
51 | }
52 |
53 | @Override
54 | public int hashCode() {
55 | final int prime = 31;
56 | int result = 1;
57 | long temp;
58 | temp = Double.doubleToLongBits(x);
59 | result = prime * result + (int) (temp ^ (temp >>> 32));
60 | temp = Double.doubleToLongBits(y);
61 | result = prime * result + (int) (temp ^ (temp >>> 32));
62 | temp = Double.doubleToLongBits(z);
63 | result = prime * result + (int) (temp ^ (temp >>> 32));
64 | return result;
65 | }
66 |
67 | @Override
68 | public boolean equals(Object obj) {
69 | if (this == obj) return true;
70 | if (!(obj instanceof Point3)) return false;
71 | Point3 it = (Point3) obj;
72 | return x == it.x && y == it.y && z == it.z;
73 | }
74 |
75 | @Override
76 | public String toString() {
77 | return "{" + x + ", " + y + ", " + z + "}";
78 | }
79 | }
80 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/Range.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | //javadoc:Range
4 | public class Range {
5 |
6 | public int start, end;
7 |
8 | public Range(int s, int e) {
9 | this.start = s;
10 | this.end = e;
11 | }
12 |
13 | public Range() {
14 | this(0, 0);
15 | }
16 |
17 | public Range(double[] vals) {
18 | set(vals);
19 | }
20 |
21 | public void set(double[] vals) {
22 | if (vals != null) {
23 | start = vals.length > 0 ? (int) vals[0] : 0;
24 | end = vals.length > 1 ? (int) vals[1] : 0;
25 | } else {
26 | start = 0;
27 | end = 0;
28 | }
29 |
30 | }
31 |
32 | public int size() {
33 | return empty() ? 0 : end - start;
34 | }
35 |
36 | public boolean empty() {
37 | return end <= start;
38 | }
39 |
40 | public static Range all() {
41 | return new Range(Integer.MIN_VALUE, Integer.MAX_VALUE);
42 | }
43 |
44 | public Range intersection(Range r1) {
45 | Range r = new Range(Math.max(r1.start, this.start), Math.min(r1.end, this.end));
46 | r.end = Math.max(r.end, r.start);
47 | return r;
48 | }
49 |
50 | public Range shift(int delta) {
51 | return new Range(start + delta, end + delta);
52 | }
53 |
54 | public Range clone() {
55 | return new Range(start, end);
56 | }
57 |
58 | @Override
59 | public int hashCode() {
60 | final int prime = 31;
61 | int result = 1;
62 | long temp;
63 | temp = Double.doubleToLongBits(start);
64 | result = prime * result + (int) (temp ^ (temp >>> 32));
65 | temp = Double.doubleToLongBits(end);
66 | result = prime * result + (int) (temp ^ (temp >>> 32));
67 | return result;
68 | }
69 |
70 | @Override
71 | public boolean equals(Object obj) {
72 | if (this == obj) return true;
73 | if (!(obj instanceof Range)) return false;
74 | Range it = (Range) obj;
75 | return start == it.start && end == it.end;
76 | }
77 |
78 | @Override
79 | public String toString() {
80 | return "[" + start + ", " + end + ")";
81 | }
82 | }
83 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/Rect.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | //javadoc:Rect_
4 | public class Rect {
5 |
6 | public int x, y, width, height;
7 |
8 | public Rect(int x, int y, int width, int height) {
9 | this.x = x;
10 | this.y = y;
11 | this.width = width;
12 | this.height = height;
13 | }
14 |
15 | public Rect() {
16 | this(0, 0, 0, 0);
17 | }
18 |
19 | public Rect(Point p1, Point p2) {
20 | x = (int) (p1.x < p2.x ? p1.x : p2.x);
21 | y = (int) (p1.y < p2.y ? p1.y : p2.y);
22 | width = (int) (p1.x > p2.x ? p1.x : p2.x) - x;
23 | height = (int) (p1.y > p2.y ? p1.y : p2.y) - y;
24 | }
25 |
26 | public Rect(Point p, Size s) {
27 | this((int) p.x, (int) p.y, (int) s.width, (int) s.height);
28 | }
29 |
30 | public Rect(double[] vals) {
31 | set(vals);
32 | }
33 |
34 | public void set(double[] vals) {
35 | if (vals != null) {
36 | x = vals.length > 0 ? (int) vals[0] : 0;
37 | y = vals.length > 1 ? (int) vals[1] : 0;
38 | width = vals.length > 2 ? (int) vals[2] : 0;
39 | height = vals.length > 3 ? (int) vals[3] : 0;
40 | } else {
41 | x = 0;
42 | y = 0;
43 | width = 0;
44 | height = 0;
45 | }
46 | }
47 |
48 | public Rect clone() {
49 | return new Rect(x, y, width, height);
50 | }
51 |
52 | public Point tl() {
53 | return new Point(x, y);
54 | }
55 |
56 | public Point br() {
57 | return new Point(x + width, y + height);
58 | }
59 |
60 | public Size size() {
61 | return new Size(width, height);
62 | }
63 |
64 | public double area() {
65 | return width * height;
66 | }
67 |
68 | public boolean contains(Point p) {
69 | return x <= p.x && p.x < x + width && y <= p.y && p.y < y + height;
70 | }
71 |
72 | @Override
73 | public int hashCode() {
74 | final int prime = 31;
75 | int result = 1;
76 | long temp;
77 | temp = Double.doubleToLongBits(height);
78 | result = prime * result + (int) (temp ^ (temp >>> 32));
79 | temp = Double.doubleToLongBits(width);
80 | result = prime * result + (int) (temp ^ (temp >>> 32));
81 | temp = Double.doubleToLongBits(x);
82 | result = prime * result + (int) (temp ^ (temp >>> 32));
83 | temp = Double.doubleToLongBits(y);
84 | result = prime * result + (int) (temp ^ (temp >>> 32));
85 | return result;
86 | }
87 |
88 | @Override
89 | public boolean equals(Object obj) {
90 | if (this == obj) return true;
91 | if (!(obj instanceof Rect)) return false;
92 | Rect it = (Rect) obj;
93 | return x == it.x && y == it.y && width == it.width && height == it.height;
94 | }
95 |
96 | @Override
97 | public String toString() {
98 | return "{" + x + ", " + y + ", " + width + "x" + height + "}";
99 | }
100 | }
101 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/RotatedRect.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | //javadoc:RotatedRect_
4 | public class RotatedRect {
5 |
6 | public Point center;
7 | public Size size;
8 | public double angle;
9 |
10 | public RotatedRect() {
11 | this.center = new Point();
12 | this.size = new Size();
13 | this.angle = 0;
14 | }
15 |
16 | public RotatedRect(Point c, Size s, double a) {
17 | this.center = c.clone();
18 | this.size = s.clone();
19 | this.angle = a;
20 | }
21 |
22 | public RotatedRect(double[] vals) {
23 | this();
24 | set(vals);
25 | }
26 |
27 | public void set(double[] vals) {
28 | if (vals != null) {
29 | center.x = vals.length > 0 ? (double) vals[0] : 0;
30 | center.y = vals.length > 1 ? (double) vals[1] : 0;
31 | size.width = vals.length > 2 ? (double) vals[2] : 0;
32 | size.height = vals.length > 3 ? (double) vals[3] : 0;
33 | angle = vals.length > 4 ? (double) vals[4] : 0;
34 | } else {
35 | center.x = 0;
36 | center.x = 0;
37 | size.width = 0;
38 | size.height = 0;
39 | angle = 0;
40 | }
41 | }
42 |
43 | public void points(Point pt[])
44 | {
45 | double _angle = angle * Math.PI / 180.0;
46 | double b = (double) Math.cos(_angle) * 0.5f;
47 | double a = (double) Math.sin(_angle) * 0.5f;
48 |
49 | pt[0] = new Point(
50 | center.x - a * size.height - b * size.width,
51 | center.y + b * size.height - a * size.width);
52 |
53 | pt[1] = new Point(
54 | center.x + a * size.height - b * size.width,
55 | center.y - b * size.height - a * size.width);
56 |
57 | pt[2] = new Point(
58 | 2 * center.x - pt[0].x,
59 | 2 * center.y - pt[0].y);
60 |
61 | pt[3] = new Point(
62 | 2 * center.x - pt[1].x,
63 | 2 * center.y - pt[1].y);
64 | }
65 |
66 | public Rect boundingRect()
67 | {
68 | Point pt[] = new Point[4];
69 | points(pt);
70 | Rect r = new Rect((int) Math.floor(Math.min(Math.min(Math.min(pt[0].x, pt[1].x), pt[2].x), pt[3].x)),
71 | (int) Math.floor(Math.min(Math.min(Math.min(pt[0].y, pt[1].y), pt[2].y), pt[3].y)),
72 | (int) Math.ceil(Math.max(Math.max(Math.max(pt[0].x, pt[1].x), pt[2].x), pt[3].x)),
73 | (int) Math.ceil(Math.max(Math.max(Math.max(pt[0].y, pt[1].y), pt[2].y), pt[3].y)));
74 | r.width -= r.x - 1;
75 | r.height -= r.y - 1;
76 | return r;
77 | }
78 |
79 | public RotatedRect clone() {
80 | return new RotatedRect(center, size, angle);
81 | }
82 |
83 | @Override
84 | public int hashCode() {
85 | final int prime = 31;
86 | int result = 1;
87 | long temp;
88 | temp = Double.doubleToLongBits(center.x);
89 | result = prime * result + (int) (temp ^ (temp >>> 32));
90 | temp = Double.doubleToLongBits(center.y);
91 | result = prime * result + (int) (temp ^ (temp >>> 32));
92 | temp = Double.doubleToLongBits(size.width);
93 | result = prime * result + (int) (temp ^ (temp >>> 32));
94 | temp = Double.doubleToLongBits(size.height);
95 | result = prime * result + (int) (temp ^ (temp >>> 32));
96 | temp = Double.doubleToLongBits(angle);
97 | result = prime * result + (int) (temp ^ (temp >>> 32));
98 | return result;
99 | }
100 |
101 | @Override
102 | public boolean equals(Object obj) {
103 | if (this == obj) return true;
104 | if (!(obj instanceof RotatedRect)) return false;
105 | RotatedRect it = (RotatedRect) obj;
106 | return center.equals(it.center) && size.equals(it.size) && angle == it.angle;
107 | }
108 |
109 | @Override
110 | public String toString() {
111 | return "{ " + center + " " + size + " * " + angle + " }";
112 | }
113 | }
114 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/Scalar.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | //javadoc:Scalar_
4 | public class Scalar {
5 |
6 | public double val[];
7 |
8 | public Scalar(double v0, double v1, double v2, double v3) {
9 | val = new double[] { v0, v1, v2, v3 };
10 | }
11 |
12 | public Scalar(double v0, double v1, double v2) {
13 | val = new double[] { v0, v1, v2, 0 };
14 | }
15 |
16 | public Scalar(double v0, double v1) {
17 | val = new double[] { v0, v1, 0, 0 };
18 | }
19 |
20 | public Scalar(double v0) {
21 | val = new double[] { v0, 0, 0, 0 };
22 | }
23 |
24 | public Scalar(double[] vals) {
25 | if (vals != null && vals.length == 4)
26 | val = vals.clone();
27 | else {
28 | val = new double[4];
29 | set(vals);
30 | }
31 | }
32 |
33 | public void set(double[] vals) {
34 | if (vals != null) {
35 | val[0] = vals.length > 0 ? vals[0] : 0;
36 | val[1] = vals.length > 1 ? vals[1] : 0;
37 | val[2] = vals.length > 2 ? vals[2] : 0;
38 | val[3] = vals.length > 3 ? vals[3] : 0;
39 | } else
40 | val[0] = val[1] = val[2] = val[3] = 0;
41 | }
42 |
43 | public static Scalar all(double v) {
44 | return new Scalar(v, v, v, v);
45 | }
46 |
47 | public Scalar clone() {
48 | return new Scalar(val);
49 | }
50 |
51 | public Scalar mul(Scalar it, double scale) {
52 | return new Scalar(val[0] * it.val[0] * scale, val[1] * it.val[1] * scale,
53 | val[2] * it.val[2] * scale, val[3] * it.val[3] * scale);
54 | }
55 |
56 | public Scalar mul(Scalar it) {
57 | return mul(it, 1);
58 | }
59 |
60 | public Scalar conj() {
61 | return new Scalar(val[0], -val[1], -val[2], -val[3]);
62 | }
63 |
64 | public boolean isReal() {
65 | return val[1] == 0 && val[2] == 0 && val[3] == 0;
66 | }
67 |
68 | @Override
69 | public int hashCode() {
70 | final int prime = 31;
71 | int result = 1;
72 | result = prime * result + java.util.Arrays.hashCode(val);
73 | return result;
74 | }
75 |
76 | @Override
77 | public boolean equals(Object obj) {
78 | if (this == obj) return true;
79 | if (!(obj instanceof Scalar)) return false;
80 | Scalar it = (Scalar) obj;
81 | if (!java.util.Arrays.equals(val, it.val)) return false;
82 | return true;
83 | }
84 |
85 | @Override
86 | public String toString() {
87 | return "[" + val[0] + ", " + val[1] + ", " + val[2] + ", " + val[3] + "]";
88 | }
89 |
90 | }
91 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/Size.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | //javadoc:Size_
4 | public class Size {
5 |
6 | public double width, height;
7 |
8 | public Size(double width, double height) {
9 | this.width = width;
10 | this.height = height;
11 | }
12 |
13 | public Size() {
14 | this(0, 0);
15 | }
16 |
17 | public Size(Point p) {
18 | width = p.x;
19 | height = p.y;
20 | }
21 |
22 | public Size(double[] vals) {
23 | set(vals);
24 | }
25 |
26 | public void set(double[] vals) {
27 | if (vals != null) {
28 | width = vals.length > 0 ? vals[0] : 0;
29 | height = vals.length > 1 ? vals[1] : 0;
30 | } else {
31 | width = 0;
32 | height = 0;
33 | }
34 | }
35 |
36 | public double area() {
37 | return width * height;
38 | }
39 |
40 | public Size clone() {
41 | return new Size(width, height);
42 | }
43 |
44 | @Override
45 | public int hashCode() {
46 | final int prime = 31;
47 | int result = 1;
48 | long temp;
49 | temp = Double.doubleToLongBits(height);
50 | result = prime * result + (int) (temp ^ (temp >>> 32));
51 | temp = Double.doubleToLongBits(width);
52 | result = prime * result + (int) (temp ^ (temp >>> 32));
53 | return result;
54 | }
55 |
56 | @Override
57 | public boolean equals(Object obj) {
58 | if (this == obj) return true;
59 | if (!(obj instanceof Size)) return false;
60 | Size it = (Size) obj;
61 | return width == it.width && height == it.height;
62 | }
63 |
64 | @Override
65 | public String toString() {
66 | return (int)width + "x" + (int)height;
67 | }
68 |
69 | }
70 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/core/TermCriteria.java:
--------------------------------------------------------------------------------
1 | package org.opencv.core;
2 |
3 | //javadoc:TermCriteria
4 | public class TermCriteria {
5 |
6 | /**
7 | * The maximum number of iterations or elements to compute
8 | */
9 | public static final int COUNT = 1;
10 | /**
11 | * The maximum number of iterations or elements to compute
12 | */
13 | public static final int MAX_ITER = COUNT;
14 | /**
15 | * The desired accuracy threshold or change in parameters at which the iterative algorithm is terminated.
16 | */
17 | public static final int EPS = 2;
18 |
19 | public int type;
20 | public int maxCount;
21 | public double epsilon;
22 |
23 | /**
24 | * Termination criteria for iterative algorithms.
25 | *
26 | * @param type
27 | * the type of termination criteria: COUNT, EPS or COUNT + EPS.
28 | * @param maxCount
29 | * the maximum number of iterations/elements.
30 | * @param epsilon
31 | * the desired accuracy.
32 | */
33 | public TermCriteria(int type, int maxCount, double epsilon) {
34 | this.type = type;
35 | this.maxCount = maxCount;
36 | this.epsilon = epsilon;
37 | }
38 |
39 | /**
40 | * Termination criteria for iterative algorithms.
41 | */
42 | public TermCriteria() {
43 | this(0, 0, 0.0);
44 | }
45 |
46 | public TermCriteria(double[] vals) {
47 | set(vals);
48 | }
49 |
50 | public void set(double[] vals) {
51 | if (vals != null) {
52 | type = vals.length > 0 ? (int) vals[0] : 0;
53 | maxCount = vals.length > 1 ? (int) vals[1] : 0;
54 | epsilon = vals.length > 2 ? (double) vals[2] : 0;
55 | } else {
56 | type = 0;
57 | maxCount = 0;
58 | epsilon = 0;
59 | }
60 | }
61 |
62 | public TermCriteria clone() {
63 | return new TermCriteria(type, maxCount, epsilon);
64 | }
65 |
66 | @Override
67 | public int hashCode() {
68 | final int prime = 31;
69 | int result = 1;
70 | long temp;
71 | temp = Double.doubleToLongBits(type);
72 | result = prime * result + (int) (temp ^ (temp >>> 32));
73 | temp = Double.doubleToLongBits(maxCount);
74 | result = prime * result + (int) (temp ^ (temp >>> 32));
75 | temp = Double.doubleToLongBits(epsilon);
76 | result = prime * result + (int) (temp ^ (temp >>> 32));
77 | return result;
78 | }
79 |
80 | @Override
81 | public boolean equals(Object obj) {
82 | if (this == obj) return true;
83 | if (!(obj instanceof TermCriteria)) return false;
84 | TermCriteria it = (TermCriteria) obj;
85 | return type == it.type && maxCount == it.maxCount && epsilon == it.epsilon;
86 | }
87 |
88 | @Override
89 | public String toString() {
90 | return "{ type: " + type + ", maxCount: " + maxCount + ", epsilon: " + epsilon + "}";
91 | }
92 | }
93 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/imgproc/CLAHE.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.imgproc;
6 |
7 | import org.opencv.core.Algorithm;
8 | import org.opencv.core.Mat;
9 | import org.opencv.core.Size;
10 |
11 | // C++: class CLAHE
12 | //javadoc: CLAHE
13 | public class CLAHE extends Algorithm {
14 |
15 | protected CLAHE(long addr) { super(addr); }
16 |
17 |
18 | //
19 | // C++: Size getTilesGridSize()
20 | //
21 |
22 | //javadoc: CLAHE::getTilesGridSize()
23 | public Size getTilesGridSize()
24 | {
25 |
26 | Size retVal = new Size(getTilesGridSize_0(nativeObj));
27 |
28 | return retVal;
29 | }
30 |
31 |
32 | //
33 | // C++: double getClipLimit()
34 | //
35 |
36 | //javadoc: CLAHE::getClipLimit()
37 | public double getClipLimit()
38 | {
39 |
40 | double retVal = getClipLimit_0(nativeObj);
41 |
42 | return retVal;
43 | }
44 |
45 |
46 | //
47 | // C++: void apply(Mat src, Mat& dst)
48 | //
49 |
50 | //javadoc: CLAHE::apply(src, dst)
51 | public void apply(Mat src, Mat dst)
52 | {
53 |
54 | apply_0(nativeObj, src.nativeObj, dst.nativeObj);
55 |
56 | return;
57 | }
58 |
59 |
60 | //
61 | // C++: void collectGarbage()
62 | //
63 |
64 | //javadoc: CLAHE::collectGarbage()
65 | public void collectGarbage()
66 | {
67 |
68 | collectGarbage_0(nativeObj);
69 |
70 | return;
71 | }
72 |
73 |
74 | //
75 | // C++: void setClipLimit(double clipLimit)
76 | //
77 |
78 | //javadoc: CLAHE::setClipLimit(clipLimit)
79 | public void setClipLimit(double clipLimit)
80 | {
81 |
82 | setClipLimit_0(nativeObj, clipLimit);
83 |
84 | return;
85 | }
86 |
87 |
88 | //
89 | // C++: void setTilesGridSize(Size tileGridSize)
90 | //
91 |
92 | //javadoc: CLAHE::setTilesGridSize(tileGridSize)
93 | public void setTilesGridSize(Size tileGridSize)
94 | {
95 |
96 | setTilesGridSize_0(nativeObj, tileGridSize.width, tileGridSize.height);
97 |
98 | return;
99 | }
100 |
101 |
102 | @Override
103 | protected void finalize() throws Throwable {
104 | delete(nativeObj);
105 | }
106 |
107 |
108 |
109 | // C++: Size getTilesGridSize()
110 | private static native double[] getTilesGridSize_0(long nativeObj);
111 |
112 | // C++: double getClipLimit()
113 | private static native double getClipLimit_0(long nativeObj);
114 |
115 | // C++: void apply(Mat src, Mat& dst)
116 | private static native void apply_0(long nativeObj, long src_nativeObj, long dst_nativeObj);
117 |
118 | // C++: void collectGarbage()
119 | private static native void collectGarbage_0(long nativeObj);
120 |
121 | // C++: void setClipLimit(double clipLimit)
122 | private static native void setClipLimit_0(long nativeObj, double clipLimit);
123 |
124 | // C++: void setTilesGridSize(Size tileGridSize)
125 | private static native void setTilesGridSize_0(long nativeObj, double tileGridSize_width, double tileGridSize_height);
126 |
127 | // native support for java finalize()
128 | private static native void delete(long nativeObj);
129 |
130 | }
131 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/imgproc/LineSegmentDetector.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.imgproc;
6 |
7 | import org.opencv.core.Algorithm;
8 | import org.opencv.core.Mat;
9 | import org.opencv.core.Size;
10 |
11 | // C++: class LineSegmentDetector
12 | //javadoc: LineSegmentDetector
13 | public class LineSegmentDetector extends Algorithm {
14 |
15 | protected LineSegmentDetector(long addr) { super(addr); }
16 |
17 |
18 | //
19 | // C++: int compareSegments(Size size, Mat lines1, Mat lines2, Mat& _image = Mat())
20 | //
21 |
22 | //javadoc: LineSegmentDetector::compareSegments(size, lines1, lines2, _image)
23 | public int compareSegments(Size size, Mat lines1, Mat lines2, Mat _image)
24 | {
25 |
26 | int retVal = compareSegments_0(nativeObj, size.width, size.height, lines1.nativeObj, lines2.nativeObj, _image.nativeObj);
27 |
28 | return retVal;
29 | }
30 |
31 | //javadoc: LineSegmentDetector::compareSegments(size, lines1, lines2)
32 | public int compareSegments(Size size, Mat lines1, Mat lines2)
33 | {
34 |
35 | int retVal = compareSegments_1(nativeObj, size.width, size.height, lines1.nativeObj, lines2.nativeObj);
36 |
37 | return retVal;
38 | }
39 |
40 |
41 | //
42 | // C++: void detect(Mat _image, Mat& _lines, Mat& width = Mat(), Mat& prec = Mat(), Mat& nfa = Mat())
43 | //
44 |
45 | //javadoc: LineSegmentDetector::detect(_image, _lines, width, prec, nfa)
46 | public void detect(Mat _image, Mat _lines, Mat width, Mat prec, Mat nfa)
47 | {
48 |
49 | detect_0(nativeObj, _image.nativeObj, _lines.nativeObj, width.nativeObj, prec.nativeObj, nfa.nativeObj);
50 |
51 | return;
52 | }
53 |
54 | //javadoc: LineSegmentDetector::detect(_image, _lines)
55 | public void detect(Mat _image, Mat _lines)
56 | {
57 |
58 | detect_1(nativeObj, _image.nativeObj, _lines.nativeObj);
59 |
60 | return;
61 | }
62 |
63 |
64 | //
65 | // C++: void drawSegments(Mat& _image, Mat lines)
66 | //
67 |
68 | //javadoc: LineSegmentDetector::drawSegments(_image, lines)
69 | public void drawSegments(Mat _image, Mat lines)
70 | {
71 |
72 | drawSegments_0(nativeObj, _image.nativeObj, lines.nativeObj);
73 |
74 | return;
75 | }
76 |
77 |
78 | @Override
79 | protected void finalize() throws Throwable {
80 | delete(nativeObj);
81 | }
82 |
83 |
84 |
85 | // C++: int compareSegments(Size size, Mat lines1, Mat lines2, Mat& _image = Mat())
86 | private static native int compareSegments_0(long nativeObj, double size_width, double size_height, long lines1_nativeObj, long lines2_nativeObj, long _image_nativeObj);
87 | private static native int compareSegments_1(long nativeObj, double size_width, double size_height, long lines1_nativeObj, long lines2_nativeObj);
88 |
89 | // C++: void detect(Mat _image, Mat& _lines, Mat& width = Mat(), Mat& prec = Mat(), Mat& nfa = Mat())
90 | private static native void detect_0(long nativeObj, long _image_nativeObj, long _lines_nativeObj, long width_nativeObj, long prec_nativeObj, long nfa_nativeObj);
91 | private static native void detect_1(long nativeObj, long _image_nativeObj, long _lines_nativeObj);
92 |
93 | // C++: void drawSegments(Mat& _image, Mat lines)
94 | private static native void drawSegments_0(long nativeObj, long _image_nativeObj, long lines_nativeObj);
95 |
96 | // native support for java finalize()
97 | private static native void delete(long nativeObj);
98 |
99 | }
100 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/ml/Boost.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.ml;
6 |
7 |
8 |
9 | // C++: class Boost
10 | //javadoc: Boost
11 | public class Boost extends DTrees {
12 |
13 | protected Boost(long addr) { super(addr); }
14 |
15 |
16 | public static final int
17 | DISCRETE = 0,
18 | REAL = 1,
19 | LOGIT = 2,
20 | GENTLE = 3;
21 |
22 |
23 | //
24 | // C++: static Ptr_Boost create()
25 | //
26 |
27 | //javadoc: Boost::create()
28 | public static Boost create()
29 | {
30 |
31 | Boost retVal = new Boost(create_0());
32 |
33 | return retVal;
34 | }
35 |
36 |
37 | //
38 | // C++: double getWeightTrimRate()
39 | //
40 |
41 | //javadoc: Boost::getWeightTrimRate()
42 | public double getWeightTrimRate()
43 | {
44 |
45 | double retVal = getWeightTrimRate_0(nativeObj);
46 |
47 | return retVal;
48 | }
49 |
50 |
51 | //
52 | // C++: int getBoostType()
53 | //
54 |
55 | //javadoc: Boost::getBoostType()
56 | public int getBoostType()
57 | {
58 |
59 | int retVal = getBoostType_0(nativeObj);
60 |
61 | return retVal;
62 | }
63 |
64 |
65 | //
66 | // C++: int getWeakCount()
67 | //
68 |
69 | //javadoc: Boost::getWeakCount()
70 | public int getWeakCount()
71 | {
72 |
73 | int retVal = getWeakCount_0(nativeObj);
74 |
75 | return retVal;
76 | }
77 |
78 |
79 | //
80 | // C++: void setBoostType(int val)
81 | //
82 |
83 | //javadoc: Boost::setBoostType(val)
84 | public void setBoostType(int val)
85 | {
86 |
87 | setBoostType_0(nativeObj, val);
88 |
89 | return;
90 | }
91 |
92 |
93 | //
94 | // C++: void setWeakCount(int val)
95 | //
96 |
97 | //javadoc: Boost::setWeakCount(val)
98 | public void setWeakCount(int val)
99 | {
100 |
101 | setWeakCount_0(nativeObj, val);
102 |
103 | return;
104 | }
105 |
106 |
107 | //
108 | // C++: void setWeightTrimRate(double val)
109 | //
110 |
111 | //javadoc: Boost::setWeightTrimRate(val)
112 | public void setWeightTrimRate(double val)
113 | {
114 |
115 | setWeightTrimRate_0(nativeObj, val);
116 |
117 | return;
118 | }
119 |
120 |
121 | @Override
122 | protected void finalize() throws Throwable {
123 | delete(nativeObj);
124 | }
125 |
126 |
127 |
128 | // C++: static Ptr_Boost create()
129 | private static native long create_0();
130 |
131 | // C++: double getWeightTrimRate()
132 | private static native double getWeightTrimRate_0(long nativeObj);
133 |
134 | // C++: int getBoostType()
135 | private static native int getBoostType_0(long nativeObj);
136 |
137 | // C++: int getWeakCount()
138 | private static native int getWeakCount_0(long nativeObj);
139 |
140 | // C++: void setBoostType(int val)
141 | private static native void setBoostType_0(long nativeObj, int val);
142 |
143 | // C++: void setWeakCount(int val)
144 | private static native void setWeakCount_0(long nativeObj, int val);
145 |
146 | // C++: void setWeightTrimRate(double val)
147 | private static native void setWeightTrimRate_0(long nativeObj, double val);
148 |
149 | // native support for java finalize()
150 | private static native void delete(long nativeObj);
151 |
152 | }
153 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/ml/Ml.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.ml;
6 |
7 |
8 |
9 | public class Ml {
10 |
11 | public static final int
12 | VAR_NUMERICAL = 0,
13 | VAR_ORDERED = 0,
14 | VAR_CATEGORICAL = 1,
15 | TEST_ERROR = 0,
16 | TRAIN_ERROR = 1,
17 | ROW_SAMPLE = 0,
18 | COL_SAMPLE = 1;
19 |
20 |
21 |
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/ml/NormalBayesClassifier.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.ml;
6 |
7 | import org.opencv.core.Mat;
8 |
9 | // C++: class NormalBayesClassifier
10 | //javadoc: NormalBayesClassifier
11 | public class NormalBayesClassifier extends StatModel {
12 |
13 | protected NormalBayesClassifier(long addr) { super(addr); }
14 |
15 |
16 | //
17 | // C++: static Ptr_NormalBayesClassifier create()
18 | //
19 |
20 | //javadoc: NormalBayesClassifier::create()
21 | public static NormalBayesClassifier create()
22 | {
23 |
24 | NormalBayesClassifier retVal = new NormalBayesClassifier(create_0());
25 |
26 | return retVal;
27 | }
28 |
29 |
30 | //
31 | // C++: float predictProb(Mat inputs, Mat& outputs, Mat& outputProbs, int flags = 0)
32 | //
33 |
34 | //javadoc: NormalBayesClassifier::predictProb(inputs, outputs, outputProbs, flags)
35 | public float predictProb(Mat inputs, Mat outputs, Mat outputProbs, int flags)
36 | {
37 |
38 | float retVal = predictProb_0(nativeObj, inputs.nativeObj, outputs.nativeObj, outputProbs.nativeObj, flags);
39 |
40 | return retVal;
41 | }
42 |
43 | //javadoc: NormalBayesClassifier::predictProb(inputs, outputs, outputProbs)
44 | public float predictProb(Mat inputs, Mat outputs, Mat outputProbs)
45 | {
46 |
47 | float retVal = predictProb_1(nativeObj, inputs.nativeObj, outputs.nativeObj, outputProbs.nativeObj);
48 |
49 | return retVal;
50 | }
51 |
52 |
53 | @Override
54 | protected void finalize() throws Throwable {
55 | delete(nativeObj);
56 | }
57 |
58 |
59 |
60 | // C++: static Ptr_NormalBayesClassifier create()
61 | private static native long create_0();
62 |
63 | // C++: float predictProb(Mat inputs, Mat& outputs, Mat& outputProbs, int flags = 0)
64 | private static native float predictProb_0(long nativeObj, long inputs_nativeObj, long outputs_nativeObj, long outputProbs_nativeObj, int flags);
65 | private static native float predictProb_1(long nativeObj, long inputs_nativeObj, long outputs_nativeObj, long outputProbs_nativeObj);
66 |
67 | // native support for java finalize()
68 | private static native void delete(long nativeObj);
69 |
70 | }
71 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/ml/RTrees.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.ml;
6 |
7 | import org.opencv.core.Mat;
8 | import org.opencv.core.TermCriteria;
9 |
10 | // C++: class RTrees
11 | //javadoc: RTrees
12 | public class RTrees extends DTrees {
13 |
14 | protected RTrees(long addr) { super(addr); }
15 |
16 |
17 | //
18 | // C++: Mat getVarImportance()
19 | //
20 |
21 | //javadoc: RTrees::getVarImportance()
22 | public Mat getVarImportance()
23 | {
24 |
25 | Mat retVal = new Mat(getVarImportance_0(nativeObj));
26 |
27 | return retVal;
28 | }
29 |
30 |
31 | //
32 | // C++: static Ptr_RTrees create()
33 | //
34 |
35 | //javadoc: RTrees::create()
36 | public static RTrees create()
37 | {
38 |
39 | RTrees retVal = new RTrees(create_0());
40 |
41 | return retVal;
42 | }
43 |
44 |
45 | //
46 | // C++: TermCriteria getTermCriteria()
47 | //
48 |
49 | //javadoc: RTrees::getTermCriteria()
50 | public TermCriteria getTermCriteria()
51 | {
52 |
53 | TermCriteria retVal = new TermCriteria(getTermCriteria_0(nativeObj));
54 |
55 | return retVal;
56 | }
57 |
58 |
59 | //
60 | // C++: bool getCalculateVarImportance()
61 | //
62 |
63 | //javadoc: RTrees::getCalculateVarImportance()
64 | public boolean getCalculateVarImportance()
65 | {
66 |
67 | boolean retVal = getCalculateVarImportance_0(nativeObj);
68 |
69 | return retVal;
70 | }
71 |
72 |
73 | //
74 | // C++: int getActiveVarCount()
75 | //
76 |
77 | //javadoc: RTrees::getActiveVarCount()
78 | public int getActiveVarCount()
79 | {
80 |
81 | int retVal = getActiveVarCount_0(nativeObj);
82 |
83 | return retVal;
84 | }
85 |
86 |
87 | //
88 | // C++: void setActiveVarCount(int val)
89 | //
90 |
91 | //javadoc: RTrees::setActiveVarCount(val)
92 | public void setActiveVarCount(int val)
93 | {
94 |
95 | setActiveVarCount_0(nativeObj, val);
96 |
97 | return;
98 | }
99 |
100 |
101 | //
102 | // C++: void setCalculateVarImportance(bool val)
103 | //
104 |
105 | //javadoc: RTrees::setCalculateVarImportance(val)
106 | public void setCalculateVarImportance(boolean val)
107 | {
108 |
109 | setCalculateVarImportance_0(nativeObj, val);
110 |
111 | return;
112 | }
113 |
114 |
115 | //
116 | // C++: void setTermCriteria(TermCriteria val)
117 | //
118 |
119 | //javadoc: RTrees::setTermCriteria(val)
120 | public void setTermCriteria(TermCriteria val)
121 | {
122 |
123 | setTermCriteria_0(nativeObj, val.type, val.maxCount, val.epsilon);
124 |
125 | return;
126 | }
127 |
128 |
129 | @Override
130 | protected void finalize() throws Throwable {
131 | delete(nativeObj);
132 | }
133 |
134 |
135 |
136 | // C++: Mat getVarImportance()
137 | private static native long getVarImportance_0(long nativeObj);
138 |
139 | // C++: static Ptr_RTrees create()
140 | private static native long create_0();
141 |
142 | // C++: TermCriteria getTermCriteria()
143 | private static native double[] getTermCriteria_0(long nativeObj);
144 |
145 | // C++: bool getCalculateVarImportance()
146 | private static native boolean getCalculateVarImportance_0(long nativeObj);
147 |
148 | // C++: int getActiveVarCount()
149 | private static native int getActiveVarCount_0(long nativeObj);
150 |
151 | // C++: void setActiveVarCount(int val)
152 | private static native void setActiveVarCount_0(long nativeObj, int val);
153 |
154 | // C++: void setCalculateVarImportance(bool val)
155 | private static native void setCalculateVarImportance_0(long nativeObj, boolean val);
156 |
157 | // C++: void setTermCriteria(TermCriteria val)
158 | private static native void setTermCriteria_0(long nativeObj, int val_type, int val_maxCount, double val_epsilon);
159 |
160 | // native support for java finalize()
161 | private static native void delete(long nativeObj);
162 |
163 | }
164 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/ml/StatModel.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.ml;
6 |
7 | import org.opencv.core.Algorithm;
8 | import org.opencv.core.Mat;
9 |
10 | // C++: class StatModel
11 | //javadoc: StatModel
12 | public class StatModel extends Algorithm {
13 |
14 | protected StatModel(long addr) { super(addr); }
15 |
16 |
17 | public static final int
18 | UPDATE_MODEL = 1,
19 | RAW_OUTPUT = 1,
20 | COMPRESSED_INPUT = 2,
21 | PREPROCESSED_INPUT = 4;
22 |
23 |
24 | //
25 | // C++: bool empty()
26 | //
27 |
28 | //javadoc: StatModel::empty()
29 | public boolean empty()
30 | {
31 |
32 | boolean retVal = empty_0(nativeObj);
33 |
34 | return retVal;
35 | }
36 |
37 |
38 | //
39 | // C++: bool isClassifier()
40 | //
41 |
42 | //javadoc: StatModel::isClassifier()
43 | public boolean isClassifier()
44 | {
45 |
46 | boolean retVal = isClassifier_0(nativeObj);
47 |
48 | return retVal;
49 | }
50 |
51 |
52 | //
53 | // C++: bool isTrained()
54 | //
55 |
56 | //javadoc: StatModel::isTrained()
57 | public boolean isTrained()
58 | {
59 |
60 | boolean retVal = isTrained_0(nativeObj);
61 |
62 | return retVal;
63 | }
64 |
65 |
66 | //
67 | // C++: bool train(Mat samples, int layout, Mat responses)
68 | //
69 |
70 | //javadoc: StatModel::train(samples, layout, responses)
71 | public boolean train(Mat samples, int layout, Mat responses)
72 | {
73 |
74 | boolean retVal = train_0(nativeObj, samples.nativeObj, layout, responses.nativeObj);
75 |
76 | return retVal;
77 | }
78 |
79 |
80 | //
81 | // C++: bool train(Ptr_TrainData trainData, int flags = 0)
82 | //
83 |
84 | // Unknown type 'Ptr_TrainData' (I), skipping the function
85 |
86 |
87 | //
88 | // C++: float calcError(Ptr_TrainData data, bool test, Mat& resp)
89 | //
90 |
91 | // Unknown type 'Ptr_TrainData' (I), skipping the function
92 |
93 |
94 | //
95 | // C++: float predict(Mat samples, Mat& results = Mat(), int flags = 0)
96 | //
97 |
98 | //javadoc: StatModel::predict(samples, results, flags)
99 | public float predict(Mat samples, Mat results, int flags)
100 | {
101 |
102 | float retVal = predict_0(nativeObj, samples.nativeObj, results.nativeObj, flags);
103 |
104 | return retVal;
105 | }
106 |
107 | //javadoc: StatModel::predict(samples)
108 | public float predict(Mat samples)
109 | {
110 |
111 | float retVal = predict_1(nativeObj, samples.nativeObj);
112 |
113 | return retVal;
114 | }
115 |
116 |
117 | //
118 | // C++: int getVarCount()
119 | //
120 |
121 | //javadoc: StatModel::getVarCount()
122 | public int getVarCount()
123 | {
124 |
125 | int retVal = getVarCount_0(nativeObj);
126 |
127 | return retVal;
128 | }
129 |
130 |
131 | @Override
132 | protected void finalize() throws Throwable {
133 | delete(nativeObj);
134 | }
135 |
136 |
137 |
138 | // C++: bool empty()
139 | private static native boolean empty_0(long nativeObj);
140 |
141 | // C++: bool isClassifier()
142 | private static native boolean isClassifier_0(long nativeObj);
143 |
144 | // C++: bool isTrained()
145 | private static native boolean isTrained_0(long nativeObj);
146 |
147 | // C++: bool train(Mat samples, int layout, Mat responses)
148 | private static native boolean train_0(long nativeObj, long samples_nativeObj, int layout, long responses_nativeObj);
149 |
150 | // C++: float predict(Mat samples, Mat& results = Mat(), int flags = 0)
151 | private static native float predict_0(long nativeObj, long samples_nativeObj, long results_nativeObj, int flags);
152 | private static native float predict_1(long nativeObj, long samples_nativeObj);
153 |
154 | // C++: int getVarCount()
155 | private static native int getVarCount_0(long nativeObj);
156 |
157 | // native support for java finalize()
158 | private static native void delete(long nativeObj);
159 |
160 | }
161 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/objdetect/BaseCascadeClassifier.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.objdetect;
6 |
7 | import org.opencv.core.Algorithm;
8 |
9 | // C++: class BaseCascadeClassifier
10 | //javadoc: BaseCascadeClassifier
11 | public class BaseCascadeClassifier extends Algorithm {
12 |
13 | protected BaseCascadeClassifier(long addr) { super(addr); }
14 |
15 |
16 | @Override
17 | protected void finalize() throws Throwable {
18 | delete(nativeObj);
19 | }
20 |
21 |
22 |
23 | // native support for java finalize()
24 | private static native void delete(long nativeObj);
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/objdetect/Objdetect.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.objdetect;
6 |
7 | import java.util.ArrayList;
8 | import org.opencv.core.Mat;
9 | import org.opencv.core.MatOfInt;
10 | import org.opencv.core.MatOfRect;
11 |
12 | public class Objdetect {
13 |
14 | public static final int
15 | CASCADE_DO_CANNY_PRUNING = 1,
16 | CASCADE_SCALE_IMAGE = 2,
17 | CASCADE_FIND_BIGGEST_OBJECT = 4,
18 | CASCADE_DO_ROUGH_SEARCH = 8;
19 |
20 |
21 | //
22 | // C++: void groupRectangles(vector_Rect& rectList, vector_int& weights, int groupThreshold, double eps = 0.2)
23 | //
24 |
25 | //javadoc: groupRectangles(rectList, weights, groupThreshold, eps)
26 | public static void groupRectangles(MatOfRect rectList, MatOfInt weights, int groupThreshold, double eps)
27 | {
28 | Mat rectList_mat = rectList;
29 | Mat weights_mat = weights;
30 | groupRectangles_0(rectList_mat.nativeObj, weights_mat.nativeObj, groupThreshold, eps);
31 |
32 | return;
33 | }
34 |
35 | //javadoc: groupRectangles(rectList, weights, groupThreshold)
36 | public static void groupRectangles(MatOfRect rectList, MatOfInt weights, int groupThreshold)
37 | {
38 | Mat rectList_mat = rectList;
39 | Mat weights_mat = weights;
40 | groupRectangles_1(rectList_mat.nativeObj, weights_mat.nativeObj, groupThreshold);
41 |
42 | return;
43 | }
44 |
45 |
46 |
47 |
48 | // C++: void groupRectangles(vector_Rect& rectList, vector_int& weights, int groupThreshold, double eps = 0.2)
49 | private static native void groupRectangles_0(long rectList_mat_nativeObj, long weights_mat_nativeObj, int groupThreshold, double eps);
50 | private static native void groupRectangles_1(long rectList_mat_nativeObj, long weights_mat_nativeObj, int groupThreshold);
51 |
52 | }
53 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/photo/AlignExposures.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.photo;
6 |
7 | import java.util.ArrayList;
8 | import java.util.List;
9 | import org.opencv.core.Algorithm;
10 | import org.opencv.core.Mat;
11 | import org.opencv.utils.Converters;
12 |
13 | // C++: class AlignExposures
14 | //javadoc: AlignExposures
15 | public class AlignExposures extends Algorithm {
16 |
17 | protected AlignExposures(long addr) { super(addr); }
18 |
19 |
20 | //
21 | // C++: void process(vector_Mat src, vector_Mat dst, Mat times, Mat response)
22 | //
23 |
24 | //javadoc: AlignExposures::process(src, dst, times, response)
25 | public void process(List src, List dst, Mat times, Mat response)
26 | {
27 | Mat src_mat = Converters.vector_Mat_to_Mat(src);
28 | Mat dst_mat = Converters.vector_Mat_to_Mat(dst);
29 | process_0(nativeObj, src_mat.nativeObj, dst_mat.nativeObj, times.nativeObj, response.nativeObj);
30 |
31 | return;
32 | }
33 |
34 |
35 | @Override
36 | protected void finalize() throws Throwable {
37 | delete(nativeObj);
38 | }
39 |
40 |
41 |
42 | // C++: void process(vector_Mat src, vector_Mat dst, Mat times, Mat response)
43 | private static native void process_0(long nativeObj, long src_mat_nativeObj, long dst_mat_nativeObj, long times_nativeObj, long response_nativeObj);
44 |
45 | // native support for java finalize()
46 | private static native void delete(long nativeObj);
47 |
48 | }
49 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/photo/CalibrateCRF.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.photo;
6 |
7 | import java.util.ArrayList;
8 | import java.util.List;
9 | import org.opencv.core.Algorithm;
10 | import org.opencv.core.Mat;
11 | import org.opencv.utils.Converters;
12 |
13 | // C++: class CalibrateCRF
14 | //javadoc: CalibrateCRF
15 | public class CalibrateCRF extends Algorithm {
16 |
17 | protected CalibrateCRF(long addr) { super(addr); }
18 |
19 |
20 | //
21 | // C++: void process(vector_Mat src, Mat& dst, Mat times)
22 | //
23 |
24 | //javadoc: CalibrateCRF::process(src, dst, times)
25 | public void process(List src, Mat dst, Mat times)
26 | {
27 | Mat src_mat = Converters.vector_Mat_to_Mat(src);
28 | process_0(nativeObj, src_mat.nativeObj, dst.nativeObj, times.nativeObj);
29 |
30 | return;
31 | }
32 |
33 |
34 | @Override
35 | protected void finalize() throws Throwable {
36 | delete(nativeObj);
37 | }
38 |
39 |
40 |
41 | // C++: void process(vector_Mat src, Mat& dst, Mat times)
42 | private static native void process_0(long nativeObj, long src_mat_nativeObj, long dst_nativeObj, long times_nativeObj);
43 |
44 | // native support for java finalize()
45 | private static native void delete(long nativeObj);
46 |
47 | }
48 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/photo/CalibrateDebevec.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.photo;
6 |
7 |
8 |
9 | // C++: class CalibrateDebevec
10 | //javadoc: CalibrateDebevec
11 | public class CalibrateDebevec extends CalibrateCRF {
12 |
13 | protected CalibrateDebevec(long addr) { super(addr); }
14 |
15 |
16 | //
17 | // C++: bool getRandom()
18 | //
19 |
20 | //javadoc: CalibrateDebevec::getRandom()
21 | public boolean getRandom()
22 | {
23 |
24 | boolean retVal = getRandom_0(nativeObj);
25 |
26 | return retVal;
27 | }
28 |
29 |
30 | //
31 | // C++: float getLambda()
32 | //
33 |
34 | //javadoc: CalibrateDebevec::getLambda()
35 | public float getLambda()
36 | {
37 |
38 | float retVal = getLambda_0(nativeObj);
39 |
40 | return retVal;
41 | }
42 |
43 |
44 | //
45 | // C++: int getSamples()
46 | //
47 |
48 | //javadoc: CalibrateDebevec::getSamples()
49 | public int getSamples()
50 | {
51 |
52 | int retVal = getSamples_0(nativeObj);
53 |
54 | return retVal;
55 | }
56 |
57 |
58 | //
59 | // C++: void setLambda(float lambda)
60 | //
61 |
62 | //javadoc: CalibrateDebevec::setLambda(lambda)
63 | public void setLambda(float lambda)
64 | {
65 |
66 | setLambda_0(nativeObj, lambda);
67 |
68 | return;
69 | }
70 |
71 |
72 | //
73 | // C++: void setRandom(bool random)
74 | //
75 |
76 | //javadoc: CalibrateDebevec::setRandom(random)
77 | public void setRandom(boolean random)
78 | {
79 |
80 | setRandom_0(nativeObj, random);
81 |
82 | return;
83 | }
84 |
85 |
86 | //
87 | // C++: void setSamples(int samples)
88 | //
89 |
90 | //javadoc: CalibrateDebevec::setSamples(samples)
91 | public void setSamples(int samples)
92 | {
93 |
94 | setSamples_0(nativeObj, samples);
95 |
96 | return;
97 | }
98 |
99 |
100 | @Override
101 | protected void finalize() throws Throwable {
102 | delete(nativeObj);
103 | }
104 |
105 |
106 |
107 | // C++: bool getRandom()
108 | private static native boolean getRandom_0(long nativeObj);
109 |
110 | // C++: float getLambda()
111 | private static native float getLambda_0(long nativeObj);
112 |
113 | // C++: int getSamples()
114 | private static native int getSamples_0(long nativeObj);
115 |
116 | // C++: void setLambda(float lambda)
117 | private static native void setLambda_0(long nativeObj, float lambda);
118 |
119 | // C++: void setRandom(bool random)
120 | private static native void setRandom_0(long nativeObj, boolean random);
121 |
122 | // C++: void setSamples(int samples)
123 | private static native void setSamples_0(long nativeObj, int samples);
124 |
125 | // native support for java finalize()
126 | private static native void delete(long nativeObj);
127 |
128 | }
129 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/photo/CalibrateRobertson.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.photo;
6 |
7 | import org.opencv.core.Mat;
8 |
9 | // C++: class CalibrateRobertson
10 | //javadoc: CalibrateRobertson
11 | public class CalibrateRobertson extends CalibrateCRF {
12 |
13 | protected CalibrateRobertson(long addr) { super(addr); }
14 |
15 |
16 | //
17 | // C++: Mat getRadiance()
18 | //
19 |
20 | //javadoc: CalibrateRobertson::getRadiance()
21 | public Mat getRadiance()
22 | {
23 |
24 | Mat retVal = new Mat(getRadiance_0(nativeObj));
25 |
26 | return retVal;
27 | }
28 |
29 |
30 | //
31 | // C++: float getThreshold()
32 | //
33 |
34 | //javadoc: CalibrateRobertson::getThreshold()
35 | public float getThreshold()
36 | {
37 |
38 | float retVal = getThreshold_0(nativeObj);
39 |
40 | return retVal;
41 | }
42 |
43 |
44 | //
45 | // C++: int getMaxIter()
46 | //
47 |
48 | //javadoc: CalibrateRobertson::getMaxIter()
49 | public int getMaxIter()
50 | {
51 |
52 | int retVal = getMaxIter_0(nativeObj);
53 |
54 | return retVal;
55 | }
56 |
57 |
58 | //
59 | // C++: void setMaxIter(int max_iter)
60 | //
61 |
62 | //javadoc: CalibrateRobertson::setMaxIter(max_iter)
63 | public void setMaxIter(int max_iter)
64 | {
65 |
66 | setMaxIter_0(nativeObj, max_iter);
67 |
68 | return;
69 | }
70 |
71 |
72 | //
73 | // C++: void setThreshold(float threshold)
74 | //
75 |
76 | //javadoc: CalibrateRobertson::setThreshold(threshold)
77 | public void setThreshold(float threshold)
78 | {
79 |
80 | setThreshold_0(nativeObj, threshold);
81 |
82 | return;
83 | }
84 |
85 |
86 | @Override
87 | protected void finalize() throws Throwable {
88 | delete(nativeObj);
89 | }
90 |
91 |
92 |
93 | // C++: Mat getRadiance()
94 | private static native long getRadiance_0(long nativeObj);
95 |
96 | // C++: float getThreshold()
97 | private static native float getThreshold_0(long nativeObj);
98 |
99 | // C++: int getMaxIter()
100 | private static native int getMaxIter_0(long nativeObj);
101 |
102 | // C++: void setMaxIter(int max_iter)
103 | private static native void setMaxIter_0(long nativeObj, int max_iter);
104 |
105 | // C++: void setThreshold(float threshold)
106 | private static native void setThreshold_0(long nativeObj, float threshold);
107 |
108 | // native support for java finalize()
109 | private static native void delete(long nativeObj);
110 |
111 | }
112 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/photo/MergeDebevec.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.photo;
6 |
7 | import java.util.ArrayList;
8 | import java.util.List;
9 | import org.opencv.core.Mat;
10 | import org.opencv.utils.Converters;
11 |
12 | // C++: class MergeDebevec
13 | //javadoc: MergeDebevec
14 | public class MergeDebevec extends MergeExposures {
15 |
16 | protected MergeDebevec(long addr) { super(addr); }
17 |
18 |
19 | //
20 | // C++: void process(vector_Mat src, Mat& dst, Mat times, Mat response)
21 | //
22 |
23 | //javadoc: MergeDebevec::process(src, dst, times, response)
24 | public void process(List src, Mat dst, Mat times, Mat response)
25 | {
26 | Mat src_mat = Converters.vector_Mat_to_Mat(src);
27 | process_0(nativeObj, src_mat.nativeObj, dst.nativeObj, times.nativeObj, response.nativeObj);
28 |
29 | return;
30 | }
31 |
32 |
33 | //
34 | // C++: void process(vector_Mat src, Mat& dst, Mat times)
35 | //
36 |
37 | //javadoc: MergeDebevec::process(src, dst, times)
38 | public void process(List src, Mat dst, Mat times)
39 | {
40 | Mat src_mat = Converters.vector_Mat_to_Mat(src);
41 | process_1(nativeObj, src_mat.nativeObj, dst.nativeObj, times.nativeObj);
42 |
43 | return;
44 | }
45 |
46 |
47 | @Override
48 | protected void finalize() throws Throwable {
49 | delete(nativeObj);
50 | }
51 |
52 |
53 |
54 | // C++: void process(vector_Mat src, Mat& dst, Mat times, Mat response)
55 | private static native void process_0(long nativeObj, long src_mat_nativeObj, long dst_nativeObj, long times_nativeObj, long response_nativeObj);
56 |
57 | // C++: void process(vector_Mat src, Mat& dst, Mat times)
58 | private static native void process_1(long nativeObj, long src_mat_nativeObj, long dst_nativeObj, long times_nativeObj);
59 |
60 | // native support for java finalize()
61 | private static native void delete(long nativeObj);
62 |
63 | }
64 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/photo/MergeExposures.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.photo;
6 |
7 | import java.util.ArrayList;
8 | import java.util.List;
9 | import org.opencv.core.Algorithm;
10 | import org.opencv.core.Mat;
11 | import org.opencv.utils.Converters;
12 |
13 | // C++: class MergeExposures
14 | //javadoc: MergeExposures
15 | public class MergeExposures extends Algorithm {
16 |
17 | protected MergeExposures(long addr) { super(addr); }
18 |
19 |
20 | //
21 | // C++: void process(vector_Mat src, Mat& dst, Mat times, Mat response)
22 | //
23 |
24 | //javadoc: MergeExposures::process(src, dst, times, response)
25 | public void process(List src, Mat dst, Mat times, Mat response)
26 | {
27 | Mat src_mat = Converters.vector_Mat_to_Mat(src);
28 | process_0(nativeObj, src_mat.nativeObj, dst.nativeObj, times.nativeObj, response.nativeObj);
29 |
30 | return;
31 | }
32 |
33 |
34 | @Override
35 | protected void finalize() throws Throwable {
36 | delete(nativeObj);
37 | }
38 |
39 |
40 |
41 | // C++: void process(vector_Mat src, Mat& dst, Mat times, Mat response)
42 | private static native void process_0(long nativeObj, long src_mat_nativeObj, long dst_nativeObj, long times_nativeObj, long response_nativeObj);
43 |
44 | // native support for java finalize()
45 | private static native void delete(long nativeObj);
46 |
47 | }
48 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/photo/MergeRobertson.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.photo;
6 |
7 | import java.util.ArrayList;
8 | import java.util.List;
9 | import org.opencv.core.Mat;
10 | import org.opencv.utils.Converters;
11 |
12 | // C++: class MergeRobertson
13 | //javadoc: MergeRobertson
14 | public class MergeRobertson extends MergeExposures {
15 |
16 | protected MergeRobertson(long addr) { super(addr); }
17 |
18 |
19 | //
20 | // C++: void process(vector_Mat src, Mat& dst, Mat times, Mat response)
21 | //
22 |
23 | //javadoc: MergeRobertson::process(src, dst, times, response)
24 | public void process(List src, Mat dst, Mat times, Mat response)
25 | {
26 | Mat src_mat = Converters.vector_Mat_to_Mat(src);
27 | process_0(nativeObj, src_mat.nativeObj, dst.nativeObj, times.nativeObj, response.nativeObj);
28 |
29 | return;
30 | }
31 |
32 |
33 | //
34 | // C++: void process(vector_Mat src, Mat& dst, Mat times)
35 | //
36 |
37 | //javadoc: MergeRobertson::process(src, dst, times)
38 | public void process(List src, Mat dst, Mat times)
39 | {
40 | Mat src_mat = Converters.vector_Mat_to_Mat(src);
41 | process_1(nativeObj, src_mat.nativeObj, dst.nativeObj, times.nativeObj);
42 |
43 | return;
44 | }
45 |
46 |
47 | @Override
48 | protected void finalize() throws Throwable {
49 | delete(nativeObj);
50 | }
51 |
52 |
53 |
54 | // C++: void process(vector_Mat src, Mat& dst, Mat times, Mat response)
55 | private static native void process_0(long nativeObj, long src_mat_nativeObj, long dst_nativeObj, long times_nativeObj, long response_nativeObj);
56 |
57 | // C++: void process(vector_Mat src, Mat& dst, Mat times)
58 | private static native void process_1(long nativeObj, long src_mat_nativeObj, long dst_nativeObj, long times_nativeObj);
59 |
60 | // native support for java finalize()
61 | private static native void delete(long nativeObj);
62 |
63 | }
64 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/photo/Tonemap.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.photo;
6 |
7 | import org.opencv.core.Algorithm;
8 | import org.opencv.core.Mat;
9 |
10 | // C++: class Tonemap
11 | //javadoc: Tonemap
12 | public class Tonemap extends Algorithm {
13 |
14 | protected Tonemap(long addr) { super(addr); }
15 |
16 |
17 | //
18 | // C++: float getGamma()
19 | //
20 |
21 | //javadoc: Tonemap::getGamma()
22 | public float getGamma()
23 | {
24 |
25 | float retVal = getGamma_0(nativeObj);
26 |
27 | return retVal;
28 | }
29 |
30 |
31 | //
32 | // C++: void process(Mat src, Mat& dst)
33 | //
34 |
35 | //javadoc: Tonemap::process(src, dst)
36 | public void process(Mat src, Mat dst)
37 | {
38 |
39 | process_0(nativeObj, src.nativeObj, dst.nativeObj);
40 |
41 | return;
42 | }
43 |
44 |
45 | //
46 | // C++: void setGamma(float gamma)
47 | //
48 |
49 | //javadoc: Tonemap::setGamma(gamma)
50 | public void setGamma(float gamma)
51 | {
52 |
53 | setGamma_0(nativeObj, gamma);
54 |
55 | return;
56 | }
57 |
58 |
59 | @Override
60 | protected void finalize() throws Throwable {
61 | delete(nativeObj);
62 | }
63 |
64 |
65 |
66 | // C++: float getGamma()
67 | private static native float getGamma_0(long nativeObj);
68 |
69 | // C++: void process(Mat src, Mat& dst)
70 | private static native void process_0(long nativeObj, long src_nativeObj, long dst_nativeObj);
71 |
72 | // C++: void setGamma(float gamma)
73 | private static native void setGamma_0(long nativeObj, float gamma);
74 |
75 | // native support for java finalize()
76 | private static native void delete(long nativeObj);
77 |
78 | }
79 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/photo/TonemapDrago.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.photo;
6 |
7 |
8 |
9 | // C++: class TonemapDrago
10 | //javadoc: TonemapDrago
11 | public class TonemapDrago extends Tonemap {
12 |
13 | protected TonemapDrago(long addr) { super(addr); }
14 |
15 |
16 | //
17 | // C++: float getBias()
18 | //
19 |
20 | //javadoc: TonemapDrago::getBias()
21 | public float getBias()
22 | {
23 |
24 | float retVal = getBias_0(nativeObj);
25 |
26 | return retVal;
27 | }
28 |
29 |
30 | //
31 | // C++: float getSaturation()
32 | //
33 |
34 | //javadoc: TonemapDrago::getSaturation()
35 | public float getSaturation()
36 | {
37 |
38 | float retVal = getSaturation_0(nativeObj);
39 |
40 | return retVal;
41 | }
42 |
43 |
44 | //
45 | // C++: void setBias(float bias)
46 | //
47 |
48 | //javadoc: TonemapDrago::setBias(bias)
49 | public void setBias(float bias)
50 | {
51 |
52 | setBias_0(nativeObj, bias);
53 |
54 | return;
55 | }
56 |
57 |
58 | //
59 | // C++: void setSaturation(float saturation)
60 | //
61 |
62 | //javadoc: TonemapDrago::setSaturation(saturation)
63 | public void setSaturation(float saturation)
64 | {
65 |
66 | setSaturation_0(nativeObj, saturation);
67 |
68 | return;
69 | }
70 |
71 |
72 | @Override
73 | protected void finalize() throws Throwable {
74 | delete(nativeObj);
75 | }
76 |
77 |
78 |
79 | // C++: float getBias()
80 | private static native float getBias_0(long nativeObj);
81 |
82 | // C++: float getSaturation()
83 | private static native float getSaturation_0(long nativeObj);
84 |
85 | // C++: void setBias(float bias)
86 | private static native void setBias_0(long nativeObj, float bias);
87 |
88 | // C++: void setSaturation(float saturation)
89 | private static native void setSaturation_0(long nativeObj, float saturation);
90 |
91 | // native support for java finalize()
92 | private static native void delete(long nativeObj);
93 |
94 | }
95 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/photo/TonemapDurand.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.photo;
6 |
7 |
8 |
9 | // C++: class TonemapDurand
10 | //javadoc: TonemapDurand
11 | public class TonemapDurand extends Tonemap {
12 |
13 | protected TonemapDurand(long addr) { super(addr); }
14 |
15 |
16 | //
17 | // C++: float getContrast()
18 | //
19 |
20 | //javadoc: TonemapDurand::getContrast()
21 | public float getContrast()
22 | {
23 |
24 | float retVal = getContrast_0(nativeObj);
25 |
26 | return retVal;
27 | }
28 |
29 |
30 | //
31 | // C++: float getSaturation()
32 | //
33 |
34 | //javadoc: TonemapDurand::getSaturation()
35 | public float getSaturation()
36 | {
37 |
38 | float retVal = getSaturation_0(nativeObj);
39 |
40 | return retVal;
41 | }
42 |
43 |
44 | //
45 | // C++: float getSigmaColor()
46 | //
47 |
48 | //javadoc: TonemapDurand::getSigmaColor()
49 | public float getSigmaColor()
50 | {
51 |
52 | float retVal = getSigmaColor_0(nativeObj);
53 |
54 | return retVal;
55 | }
56 |
57 |
58 | //
59 | // C++: float getSigmaSpace()
60 | //
61 |
62 | //javadoc: TonemapDurand::getSigmaSpace()
63 | public float getSigmaSpace()
64 | {
65 |
66 | float retVal = getSigmaSpace_0(nativeObj);
67 |
68 | return retVal;
69 | }
70 |
71 |
72 | //
73 | // C++: void setContrast(float contrast)
74 | //
75 |
76 | //javadoc: TonemapDurand::setContrast(contrast)
77 | public void setContrast(float contrast)
78 | {
79 |
80 | setContrast_0(nativeObj, contrast);
81 |
82 | return;
83 | }
84 |
85 |
86 | //
87 | // C++: void setSaturation(float saturation)
88 | //
89 |
90 | //javadoc: TonemapDurand::setSaturation(saturation)
91 | public void setSaturation(float saturation)
92 | {
93 |
94 | setSaturation_0(nativeObj, saturation);
95 |
96 | return;
97 | }
98 |
99 |
100 | //
101 | // C++: void setSigmaColor(float sigma_color)
102 | //
103 |
104 | //javadoc: TonemapDurand::setSigmaColor(sigma_color)
105 | public void setSigmaColor(float sigma_color)
106 | {
107 |
108 | setSigmaColor_0(nativeObj, sigma_color);
109 |
110 | return;
111 | }
112 |
113 |
114 | //
115 | // C++: void setSigmaSpace(float sigma_space)
116 | //
117 |
118 | //javadoc: TonemapDurand::setSigmaSpace(sigma_space)
119 | public void setSigmaSpace(float sigma_space)
120 | {
121 |
122 | setSigmaSpace_0(nativeObj, sigma_space);
123 |
124 | return;
125 | }
126 |
127 |
128 | @Override
129 | protected void finalize() throws Throwable {
130 | delete(nativeObj);
131 | }
132 |
133 |
134 |
135 | // C++: float getContrast()
136 | private static native float getContrast_0(long nativeObj);
137 |
138 | // C++: float getSaturation()
139 | private static native float getSaturation_0(long nativeObj);
140 |
141 | // C++: float getSigmaColor()
142 | private static native float getSigmaColor_0(long nativeObj);
143 |
144 | // C++: float getSigmaSpace()
145 | private static native float getSigmaSpace_0(long nativeObj);
146 |
147 | // C++: void setContrast(float contrast)
148 | private static native void setContrast_0(long nativeObj, float contrast);
149 |
150 | // C++: void setSaturation(float saturation)
151 | private static native void setSaturation_0(long nativeObj, float saturation);
152 |
153 | // C++: void setSigmaColor(float sigma_color)
154 | private static native void setSigmaColor_0(long nativeObj, float sigma_color);
155 |
156 | // C++: void setSigmaSpace(float sigma_space)
157 | private static native void setSigmaSpace_0(long nativeObj, float sigma_space);
158 |
159 | // native support for java finalize()
160 | private static native void delete(long nativeObj);
161 |
162 | }
163 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/photo/TonemapMantiuk.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.photo;
6 |
7 |
8 |
9 | // C++: class TonemapMantiuk
10 | //javadoc: TonemapMantiuk
11 | public class TonemapMantiuk extends Tonemap {
12 |
13 | protected TonemapMantiuk(long addr) { super(addr); }
14 |
15 |
16 | //
17 | // C++: float getSaturation()
18 | //
19 |
20 | //javadoc: TonemapMantiuk::getSaturation()
21 | public float getSaturation()
22 | {
23 |
24 | float retVal = getSaturation_0(nativeObj);
25 |
26 | return retVal;
27 | }
28 |
29 |
30 | //
31 | // C++: float getScale()
32 | //
33 |
34 | //javadoc: TonemapMantiuk::getScale()
35 | public float getScale()
36 | {
37 |
38 | float retVal = getScale_0(nativeObj);
39 |
40 | return retVal;
41 | }
42 |
43 |
44 | //
45 | // C++: void setSaturation(float saturation)
46 | //
47 |
48 | //javadoc: TonemapMantiuk::setSaturation(saturation)
49 | public void setSaturation(float saturation)
50 | {
51 |
52 | setSaturation_0(nativeObj, saturation);
53 |
54 | return;
55 | }
56 |
57 |
58 | //
59 | // C++: void setScale(float scale)
60 | //
61 |
62 | //javadoc: TonemapMantiuk::setScale(scale)
63 | public void setScale(float scale)
64 | {
65 |
66 | setScale_0(nativeObj, scale);
67 |
68 | return;
69 | }
70 |
71 |
72 | @Override
73 | protected void finalize() throws Throwable {
74 | delete(nativeObj);
75 | }
76 |
77 |
78 |
79 | // C++: float getSaturation()
80 | private static native float getSaturation_0(long nativeObj);
81 |
82 | // C++: float getScale()
83 | private static native float getScale_0(long nativeObj);
84 |
85 | // C++: void setSaturation(float saturation)
86 | private static native void setSaturation_0(long nativeObj, float saturation);
87 |
88 | // C++: void setScale(float scale)
89 | private static native void setScale_0(long nativeObj, float scale);
90 |
91 | // native support for java finalize()
92 | private static native void delete(long nativeObj);
93 |
94 | }
95 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/photo/TonemapReinhard.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.photo;
6 |
7 |
8 |
9 | // C++: class TonemapReinhard
10 | //javadoc: TonemapReinhard
11 | public class TonemapReinhard extends Tonemap {
12 |
13 | protected TonemapReinhard(long addr) { super(addr); }
14 |
15 |
16 | //
17 | // C++: float getColorAdaptation()
18 | //
19 |
20 | //javadoc: TonemapReinhard::getColorAdaptation()
21 | public float getColorAdaptation()
22 | {
23 |
24 | float retVal = getColorAdaptation_0(nativeObj);
25 |
26 | return retVal;
27 | }
28 |
29 |
30 | //
31 | // C++: float getIntensity()
32 | //
33 |
34 | //javadoc: TonemapReinhard::getIntensity()
35 | public float getIntensity()
36 | {
37 |
38 | float retVal = getIntensity_0(nativeObj);
39 |
40 | return retVal;
41 | }
42 |
43 |
44 | //
45 | // C++: float getLightAdaptation()
46 | //
47 |
48 | //javadoc: TonemapReinhard::getLightAdaptation()
49 | public float getLightAdaptation()
50 | {
51 |
52 | float retVal = getLightAdaptation_0(nativeObj);
53 |
54 | return retVal;
55 | }
56 |
57 |
58 | //
59 | // C++: void setColorAdaptation(float color_adapt)
60 | //
61 |
62 | //javadoc: TonemapReinhard::setColorAdaptation(color_adapt)
63 | public void setColorAdaptation(float color_adapt)
64 | {
65 |
66 | setColorAdaptation_0(nativeObj, color_adapt);
67 |
68 | return;
69 | }
70 |
71 |
72 | //
73 | // C++: void setIntensity(float intensity)
74 | //
75 |
76 | //javadoc: TonemapReinhard::setIntensity(intensity)
77 | public void setIntensity(float intensity)
78 | {
79 |
80 | setIntensity_0(nativeObj, intensity);
81 |
82 | return;
83 | }
84 |
85 |
86 | //
87 | // C++: void setLightAdaptation(float light_adapt)
88 | //
89 |
90 | //javadoc: TonemapReinhard::setLightAdaptation(light_adapt)
91 | public void setLightAdaptation(float light_adapt)
92 | {
93 |
94 | setLightAdaptation_0(nativeObj, light_adapt);
95 |
96 | return;
97 | }
98 |
99 |
100 | @Override
101 | protected void finalize() throws Throwable {
102 | delete(nativeObj);
103 | }
104 |
105 |
106 |
107 | // C++: float getColorAdaptation()
108 | private static native float getColorAdaptation_0(long nativeObj);
109 |
110 | // C++: float getIntensity()
111 | private static native float getIntensity_0(long nativeObj);
112 |
113 | // C++: float getLightAdaptation()
114 | private static native float getLightAdaptation_0(long nativeObj);
115 |
116 | // C++: void setColorAdaptation(float color_adapt)
117 | private static native void setColorAdaptation_0(long nativeObj, float color_adapt);
118 |
119 | // C++: void setIntensity(float intensity)
120 | private static native void setIntensity_0(long nativeObj, float intensity);
121 |
122 | // C++: void setLightAdaptation(float light_adapt)
123 | private static native void setLightAdaptation_0(long nativeObj, float light_adapt);
124 |
125 | // native support for java finalize()
126 | private static native void delete(long nativeObj);
127 |
128 | }
129 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/video/BackgroundSubtractor.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.video;
6 |
7 | import org.opencv.core.Algorithm;
8 | import org.opencv.core.Mat;
9 |
10 | // C++: class BackgroundSubtractor
11 | //javadoc: BackgroundSubtractor
12 | public class BackgroundSubtractor extends Algorithm {
13 |
14 | protected BackgroundSubtractor(long addr) { super(addr); }
15 |
16 |
17 | //
18 | // C++: void apply(Mat image, Mat& fgmask, double learningRate = -1)
19 | //
20 |
21 | //javadoc: BackgroundSubtractor::apply(image, fgmask, learningRate)
22 | public void apply(Mat image, Mat fgmask, double learningRate)
23 | {
24 |
25 | apply_0(nativeObj, image.nativeObj, fgmask.nativeObj, learningRate);
26 |
27 | return;
28 | }
29 |
30 | //javadoc: BackgroundSubtractor::apply(image, fgmask)
31 | public void apply(Mat image, Mat fgmask)
32 | {
33 |
34 | apply_1(nativeObj, image.nativeObj, fgmask.nativeObj);
35 |
36 | return;
37 | }
38 |
39 |
40 | //
41 | // C++: void getBackgroundImage(Mat& backgroundImage)
42 | //
43 |
44 | //javadoc: BackgroundSubtractor::getBackgroundImage(backgroundImage)
45 | public void getBackgroundImage(Mat backgroundImage)
46 | {
47 |
48 | getBackgroundImage_0(nativeObj, backgroundImage.nativeObj);
49 |
50 | return;
51 | }
52 |
53 |
54 | @Override
55 | protected void finalize() throws Throwable {
56 | delete(nativeObj);
57 | }
58 |
59 |
60 |
61 | // C++: void apply(Mat image, Mat& fgmask, double learningRate = -1)
62 | private static native void apply_0(long nativeObj, long image_nativeObj, long fgmask_nativeObj, double learningRate);
63 | private static native void apply_1(long nativeObj, long image_nativeObj, long fgmask_nativeObj);
64 |
65 | // C++: void getBackgroundImage(Mat& backgroundImage)
66 | private static native void getBackgroundImage_0(long nativeObj, long backgroundImage_nativeObj);
67 |
68 | // native support for java finalize()
69 | private static native void delete(long nativeObj);
70 |
71 | }
72 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/video/DenseOpticalFlow.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.video;
6 |
7 | import org.opencv.core.Algorithm;
8 | import org.opencv.core.Mat;
9 |
10 | // C++: class DenseOpticalFlow
11 | //javadoc: DenseOpticalFlow
12 | public class DenseOpticalFlow extends Algorithm {
13 |
14 | protected DenseOpticalFlow(long addr) { super(addr); }
15 |
16 |
17 | //
18 | // C++: void calc(Mat I0, Mat I1, Mat& flow)
19 | //
20 |
21 | //javadoc: DenseOpticalFlow::calc(I0, I1, flow)
22 | public void calc(Mat I0, Mat I1, Mat flow)
23 | {
24 |
25 | calc_0(nativeObj, I0.nativeObj, I1.nativeObj, flow.nativeObj);
26 |
27 | return;
28 | }
29 |
30 |
31 | //
32 | // C++: void collectGarbage()
33 | //
34 |
35 | //javadoc: DenseOpticalFlow::collectGarbage()
36 | public void collectGarbage()
37 | {
38 |
39 | collectGarbage_0(nativeObj);
40 |
41 | return;
42 | }
43 |
44 |
45 | @Override
46 | protected void finalize() throws Throwable {
47 | delete(nativeObj);
48 | }
49 |
50 |
51 |
52 | // C++: void calc(Mat I0, Mat I1, Mat& flow)
53 | private static native void calc_0(long nativeObj, long I0_nativeObj, long I1_nativeObj, long flow_nativeObj);
54 |
55 | // C++: void collectGarbage()
56 | private static native void collectGarbage_0(long nativeObj);
57 |
58 | // native support for java finalize()
59 | private static native void delete(long nativeObj);
60 |
61 | }
62 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/java/org/opencv/video/DualTVL1OpticalFlow.java:
--------------------------------------------------------------------------------
1 |
2 | //
3 | // This file is auto-generated. Please don't modify it!
4 | //
5 | package org.opencv.video;
6 |
7 |
8 |
9 | // C++: class DualTVL1OpticalFlow
10 | //javadoc: DualTVL1OpticalFlow
11 | public class DualTVL1OpticalFlow extends DenseOpticalFlow {
12 |
13 | protected DualTVL1OpticalFlow(long addr) { super(addr); }
14 |
15 |
16 | @Override
17 | protected void finalize() throws Throwable {
18 | delete(nativeObj);
19 | }
20 |
21 |
22 |
23 | // native support for java finalize()
24 | private static native void delete(long nativeObj);
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/openCVLibrary310/src/main/res/values/attrs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 | include ':openCVLibrary310'
3 |
--------------------------------------------------------------------------------