diff --git a/CMakeLists.txt b/CMakeLists.txt
index 19b6e39..e765e2b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -41,10 +41,10 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/cpp/platform)
# must use mnn
add_definitions("-DINFERENCE_HELPER_ENABLE_MNN")
-set(LINK_THIRD_LIBS pthread MNN)
+set(LINK_THIRD_LIBS pthread MNN m)
if (ANDROID)
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 ")
set(CMAKE_C_FLAGS "${CMAKE_CXX_FLAGS}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
file(GLOB_RECURSE NATIVE_CPP_FILES ${CMAKE_CURRENT_SOURCE_DIR}/cpp/platform/jni/android/*.cpp)
@@ -85,8 +85,8 @@ else ()
set(PLAT linux)
endif ()
# MNN Third party dependence
- set(MNN_INCLUDE_DIRS ${PATH_3RDPARTY}/MNN-2.2.0/${PLAT}-static/include)
- set(MNN_LIBS ${PATH_3RDPARTY}/MNN-2.2.0/${PLAT}-static/lib)
+ set(MNN_INCLUDE_DIRS ${PATH_3RDPARTY}/MNN-2.2.0/${PLAT}/include)
+ set(MNN_LIBS ${PATH_3RDPARTY}/MNN-2.2.0/${PLAT}/lib)
# OpenCV Third party dependence
set(OpenCV_DIR ${PATH_3RDPARTY}/opencv-4.5.1/${PLAT}/lib/cmake/opencv4)
set(OpenCV_STATIC_INCLUDE_DIR ${PATH_3RDPARTY}/opencv-4.5.1/${PLAT}/include/opencv4)
@@ -147,6 +147,12 @@ endif()
set(CMAKE_INSTALL_PREFIX ${PROJECT_BINARY_DIR}/install/hyperlpr3)
message(CMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX})
install(DIRECTORY resource DESTINATION ./)
+if (APPLE)
+ install(FILES ${MNN_LIBS}/libMNN.dylib DESTINATION ./lib)
+else()
+ install(FILES ${MNN_LIBS}/libMNN.so DESTINATION ./lib)
+endif ()
+
if (BUILD_SAMPLES)
install(TARGETS ContextSample DESTINATION ./bin)
install(TARGETS CAPISample DESTINATION ./bin)
diff --git a/Prj-Android/app/build.gradle b/Prj-Android/app/build.gradle
index 0fb31ae..33546a7 100644
--- a/Prj-Android/app/build.gradle
+++ b/Prj-Android/app/build.gradle
@@ -3,12 +3,12 @@ plugins {
}
android {
- compileSdk 28
+ compileSdk 31
defaultConfig {
- applicationId "com.hyperai.hyperlpr_sdk_demo"
- minSdk 22
- targetSdk 28
+ applicationId "com.hyperai.example.lpr3_demo"
+ minSdk 21
+ targetSdk 31
versionCode 1
versionName "1.0"
@@ -29,17 +29,17 @@ android {
dependencies {
+ // Tools
implementation 'org.greenrobot:eventbus:3.0.0'
- implementation 'com.android.support:appcompat-v7:28.0.0'
- implementation 'com.android.support.constraint:constraint-layout:2.0.4'
+ implementation 'com.github.smuyyh:ImageSelector:3.0'
+ implementation 'com.github.bumptech.glide:glide:3.7.0'
+ // HyperLPR3 sdk
+ implementation 'com.github.HyperInspire:hyperlpr3-android-sdk:1.0.2'
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'com.google.android.material:material:1.3.0'
- implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
- implementation project(path: ':hyperlpr3')
+ implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
testImplementation 'junit:junit:4.+'
- androidTestImplementation 'androidx.test.ext:junit:1.1.2'
- androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
- implementation 'com.github.smuyyh:ImageSelector:3.0'
- implementation 'com.github.bumptech.glide:glide:3.7.0'
+ androidTestImplementation 'androidx.test.ext:junit:1.1.5'
+ androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
}
\ No newline at end of file
diff --git a/Prj-Android/app/release/hyperlpr3-demo.apk b/Prj-Android/app/release/hyperlpr3-demo.apk
deleted file mode 100644
index 514457c..0000000
Binary files a/Prj-Android/app/release/hyperlpr3-demo.apk and /dev/null differ
diff --git a/Prj-Android/app/release/output-metadata.json b/Prj-Android/app/release/output-metadata.json
deleted file mode 100644
index 71d9496..0000000
--- a/Prj-Android/app/release/output-metadata.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "version": 3,
- "artifactType": {
- "type": "APK",
- "kind": "Directory"
- },
- "applicationId": "com.hyperai.hyperlpr_sdk_demo",
- "variantName": "release",
- "elements": [
- {
- "type": "SINGLE",
- "filters": [],
- "attributes": [],
- "versionCode": 1,
- "versionName": "1.0",
- "outputFile": "app-release.apk"
- }
- ],
- "elementType": "File"
-}
\ No newline at end of file
diff --git a/Prj-Android/app/src/androidTest/java/com/hyperai/hyperlpr_sdk_demo/ExampleInstrumentedTest.java b/Prj-Android/app/src/androidTest/java/com/hyperai/example/lpr3_demo/ExampleInstrumentedTest.java
similarity index 86%
rename from Prj-Android/app/src/androidTest/java/com/hyperai/hyperlpr_sdk_demo/ExampleInstrumentedTest.java
rename to Prj-Android/app/src/androidTest/java/com/hyperai/example/lpr3_demo/ExampleInstrumentedTest.java
index 08c1862..6da3da3 100644
--- a/Prj-Android/app/src/androidTest/java/com/hyperai/hyperlpr_sdk_demo/ExampleInstrumentedTest.java
+++ b/Prj-Android/app/src/androidTest/java/com/hyperai/example/lpr3_demo/ExampleInstrumentedTest.java
@@ -1,4 +1,4 @@
-package com.hyperai.hyperlpr_sdk_demo;
+package com.hyperai.example.lpr3_demo;
import android.content.Context;
@@ -21,6 +21,6 @@ public class ExampleInstrumentedTest {
public void useAppContext() {
// Context of the app under test.
Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
- assertEquals("com.hyperai.hyperlpr_sdk_demo", appContext.getPackageName());
+ assertEquals("com.hyperai.example.lpr3_demo", appContext.getPackageName());
}
}
\ No newline at end of file
diff --git a/Prj-Android/app/src/main/AndroidManifest.xml b/Prj-Android/app/src/main/AndroidManifest.xml
index 46656f3..df59871 100644
--- a/Prj-Android/app/src/main/AndroidManifest.xml
+++ b/Prj-Android/app/src/main/AndroidManifest.xml
@@ -1,7 +1,7 @@
+ package="com.hyperai.example.lpr3_demo">
@@ -38,7 +38,7 @@
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
- android:theme="@style/Theme.HyperLPR_SDK_Demo">
+ android:theme="@style/Theme.HyperLPR3Example">
@@ -49,11 +49,6 @@
-
-
-
-
-
\ No newline at end of file
diff --git a/Prj-Android/app/src/main/java/com/hyperai/hyperlpr_sdk_demo/CameraActivity.java b/Prj-Android/app/src/main/java/com/hyperai/example/lpr3_demo/CameraActivity.java
similarity index 91%
rename from Prj-Android/app/src/main/java/com/hyperai/hyperlpr_sdk_demo/CameraActivity.java
rename to Prj-Android/app/src/main/java/com/hyperai/example/lpr3_demo/CameraActivity.java
index 3c4ee58..fac748e 100755
--- a/Prj-Android/app/src/main/java/com/hyperai/hyperlpr_sdk_demo/CameraActivity.java
+++ b/Prj-Android/app/src/main/java/com/hyperai/example/lpr3_demo/CameraActivity.java
@@ -1,18 +1,14 @@
-package com.hyperai.hyperlpr_sdk_demo;
+package com.hyperai.example.lpr3_demo;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.os.Bundle;
-import android.view.View;
import android.view.Window;
import android.view.WindowManager;
-import android.widget.ArrayAdapter;
import android.widget.FrameLayout;
import android.widget.ImageView;
-import android.widget.ListView;
import android.widget.TextView;
-
import com.hyperai.hyperlpr3.HyperLPR3;
import com.hyperai.hyperlpr3.bean.Plate;
@@ -20,9 +16,6 @@ import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;
-import java.util.ArrayList;
-import java.util.List;
-
/**
* @author by hs-johnny
@@ -33,7 +26,6 @@ public class CameraActivity extends Activity {
FrameLayout previewFl;
CameraPreviews cameraPreview;
TextView plateTv;
-// TextView regTv;
ImageView image;
@Override
@@ -98,7 +90,6 @@ public class CameraActivity extends Activity {
plateTv.setText(showText);
}
-
-// stopPreview();
}
+
}
diff --git a/Prj-Android/app/src/main/java/com/hyperai/hyperlpr_sdk_demo/CameraPreviews.java b/Prj-Android/app/src/main/java/com/hyperai/example/lpr3_demo/CameraPreviews.java
similarity index 95%
rename from Prj-Android/app/src/main/java/com/hyperai/hyperlpr_sdk_demo/CameraPreviews.java
rename to Prj-Android/app/src/main/java/com/hyperai/example/lpr3_demo/CameraPreviews.java
index 13d4883..e8f0c59 100755
--- a/Prj-Android/app/src/main/java/com/hyperai/hyperlpr_sdk_demo/CameraPreviews.java
+++ b/Prj-Android/app/src/main/java/com/hyperai/example/lpr3_demo/CameraPreviews.java
@@ -1,11 +1,10 @@
-package com.hyperai.hyperlpr_sdk_demo;
+package com.hyperai.example.lpr3_demo;
import android.content.Context;
import android.graphics.Paint;
import android.hardware.Camera;
import android.os.Handler;
import android.os.HandlerThread;
-//import android.support.v4.content.ContextCompat;
import android.util.Log;
import android.view.Display;
import android.view.MotionEvent;
@@ -14,16 +13,15 @@ import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.view.WindowManager;
+import com.hyperai.hyperlpr3.HyperLPR3;
+import com.hyperai.hyperlpr3.bean.HyperLPRParameter;
+import com.hyperai.hyperlpr3.bean.Plate;
import org.greenrobot.eventbus.EventBus;
import java.io.IOException;
import java.util.List;
-import com.hyperai.hyperlpr3.HyperLPR3;
-import com.hyperai.hyperlpr3.bean.HyperLPRParameter;
-import com.hyperai.hyperlpr3.bean.Plate;
-
/**
* @author by hs-johnny
* Created on 2019/6/17
@@ -50,11 +48,7 @@ public class CameraPreviews extends SurfaceView implements SurfaceHolder.Callbac
mPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
mPaint.setStrokeWidth(2);
mPaint.setStyle(Paint.Style.STROKE);
-// mPaint.setColor(ContextCompat.getColor(context, R.color.colorAccent));
- HyperLPRParameter parameter = new HyperLPRParameter();
-// hyperLPR3 = new HyperLPR3();
-// hyperLPR3.init(mContext, parameter);
}
public Camera getCameraInstance(){
if (mCamera == null){
@@ -137,7 +131,6 @@ public class CameraPreviews extends SurfaceView implements SurfaceHolder.Callbac
}
if(!isStopReg && plates.length > 0) {
-// isStopReg = true;
sendPlate(plates);
}
diff --git a/Prj-Android/app/src/main/java/com/hyperai/hyperlpr_sdk_demo/MainActivity.java b/Prj-Android/app/src/main/java/com/hyperai/example/lpr3_demo/MainActivity.java
similarity index 98%
rename from Prj-Android/app/src/main/java/com/hyperai/hyperlpr_sdk_demo/MainActivity.java
rename to Prj-Android/app/src/main/java/com/hyperai/example/lpr3_demo/MainActivity.java
index e99bffb..e01d137 100644
--- a/Prj-Android/app/src/main/java/com/hyperai/hyperlpr_sdk_demo/MainActivity.java
+++ b/Prj-Android/app/src/main/java/com/hyperai/example/lpr3_demo/MainActivity.java
@@ -1,4 +1,4 @@
-package com.hyperai.hyperlpr_sdk_demo;
+package com.hyperai.example.lpr3_demo;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.ActivityCompat;
@@ -27,7 +27,6 @@ import com.yuyh.library.imgsel.config.ISListConfig;
import java.util.List;
-
public class MainActivity extends AppCompatActivity {
private Button cameraBtn;
@@ -78,7 +77,6 @@ public class MainActivity extends AppCompatActivity {
verifyStoragePermissions(this);
-
// 车牌识别算法配置参数
HyperLPRParameter parameter = new HyperLPRParameter()
.setDetLevel(HyperLPR3.DETECT_LEVEL_LOW)
@@ -161,6 +159,7 @@ public class MainActivity extends AppCompatActivity {
if (bitmap != null) {
imageView.setImageBitmap(bitmap);
+ // 调用车牌识别
Plate[] plates = HyperLPR3.getInstance().plateRecognition(bitmap, HyperLPR3.CAMERA_ROTATION_0, HyperLPR3.STREAM_BGRA);
for (Plate plate: plates) {
String type = "未知车牌";
diff --git a/Prj-Android/app/src/main/res/mipmap-xxhdpi/logo.png b/Prj-Android/app/src/main/res/mipmap-xxxhdpi/logo.png
similarity index 100%
rename from Prj-Android/app/src/main/res/mipmap-xxhdpi/logo.png
rename to Prj-Android/app/src/main/res/mipmap-xxxhdpi/logo.png
diff --git a/Prj-Android/app/src/main/res/values/strings.xml b/Prj-Android/app/src/main/res/values/strings.xml
index 44ee984..979c379 100644
--- a/Prj-Android/app/src/main/res/values/strings.xml
+++ b/Prj-Android/app/src/main/res/values/strings.xml
@@ -1,3 +1,3 @@
- HyperLPR3-App
+ HyperLPR3-Example
\ No newline at end of file
diff --git a/Prj-Android/app/src/main/res/values/themes.xml b/Prj-Android/app/src/main/res/values/themes.xml
index 179ae6b..4449385 100644
--- a/Prj-Android/app/src/main/res/values/themes.xml
+++ b/Prj-Android/app/src/main/res/values/themes.xml
@@ -1,6 +1,6 @@
-