0

我在 Android Studio 中有一个用于应用程序的 OpenCV 项目,它使用 C++ 作为 OpenCV 处理部分,我想将它与 Tesseract (C++) 结合起来进行文本识别。

我一直在搜索信息,但我不知道从哪里开始或正确的方法是什么,很抱歉不知道如何解释得很好,我在 Android Studio 中使用 C++ 进行移动开发有点新。

这是我想要的:

#include <jni.h>
#include "opencv2/core.hpp"
#include <opencv2/imgproc.hpp>
#include <fstream>
//need Tesseract and Leptonica libraries
using namespace cv;
using namespace std;

extern "C"
JNIEXPORT void JNICALL Java_com_example_opencv_NativeClass_detect_1letters(JNIEnv *env, jclass clazz, jlong frame) {
    //TODO: OpenCV and Tesseract code
}

如果需要,这是我的 CMakeLists.txt:

cmake_minimum_required(VERSION 3.4.1)

set(CMAKE_VERBOSE_MAKEFILE on)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11")
include_directories(${CMAKE_SOURCE_DIR}/src/main/jniIncludes)

add_library(native-lib
            SHARED
            src/main/cpp/native-lib.cpp)

add_library(lib_opencv SHARED IMPORTED)

set_target_properties(lib_opencv PROPERTIES IMPORTED_LOCATION ${CMAKE_SOURCE_DIR}/src/main/jniLibs/${ANDROID_ABI}/libopencv_java3.so)

find_library(log-lib
            log)

target_link_libraries(native-lib ${log-lib} lib_opencv)
4

0 回答 0