나중에 Android에서 실행해야 하는 데스크탑용 OpenCV 애플리케이션 개발 및 테스트 (Developing and testing an OpenCV application on desktop which should later run on Android)


문제 설명

나중에 Android에서 실행해야 하는 데스크탑용 OpenCV 애플리케이션 개발 및 테스트 (Developing and testing an OpenCV application on desktop which should later run on Android)

openCV와 tesseract를 사용하여 Android 애플리케이션을 빌드하고 싶습니다. 이를 위해 openCV4android 및 tesseract를 라이브러리로 사용하여 Android 프로젝트를 설정하고 Android 기기에서 실행할 수 있습니다.

애플리케이션이 더욱 강력해짐에 따라 빌드 및 배포 시간이 크게 증가했습니다(약 5분). 대안을 테스트하고 가장 적합한 매개변수를 선택하고 다른 접근 방식을 평가하는 등의 작업을 하고 싶기 때문에 적절한 개발을 하기에는 너무 긴 시간입니다.

그래서 내 컴퓨터에서 전체 이력서 부분을 개발하고 테스트하는 것이 좋을 것입니다. 더 빠르게 빌드하고 더 나은 디버깅 가능성을 갖기 위해 전화로 캡처한 이미지가 있는 데스크톱. 어떻게 이것을 달성할 수 있습니까?

지금까지 찾은 옵션:

  1. C++로 개발, 마지막에 Android NDK를 사용하여 애플리케이션에 이식합니다.

    장점: 오버헤드가 적어서 더 빠릅니다.

    단점: 먼저 openCV4android 코드를 C++로 이식해야 합니다.

  2. OpenCV Java 구현 사용

    예: http://docs.opencv.org/2.4.4‑beta/doc/tutorials/introduction/desktop_java/java_dev_intro.html 또는 JavaCV.

    하지만 이러한 자바 래퍼가 openCV4Android와 쉽게 호환되는지 모르겠습니다.

다른 접근 방식이 있습니까? 무엇을 추천하시겠습니까?

미리 감사합니다

장점: 오버헤드가 적어 더 빠릅니다.

단점: 먼저 openCV4android 코드를 C++로 이식해야 합니다.

  • OpenCV Java 구현 사용

    예: http://docs. opencv.org/2.4.4‑beta/doc/tutorials/introduction/desktop_java/java_dev_intro.html 또는 JavaCV.

    하지만 이 자바 래퍼가 openCV4Android와 쉽게 호환되는지 모르겠습니다

  • 다른 접근 방식이 있습니까? 무엇을 추천하시겠습니까?

    미리 감사합니다

    장점: 오버헤드가 적어 더 빠릅니다.

    단점: 먼저 openCV4android 코드를 C++로 이식해야 합니다.

  • OpenCV Java 구현 사용

    예: http://docs. opencv.org/2.4.4‑beta/doc/tutorials/introduction/desktop_java/java_dev_intro.html 또는 JavaCV.

    하지만 이 자바 래퍼가 openCV4Android와 쉽게 호환되는지 모르겠습니다

  • 다른 접근 방식이 있습니까? 무엇을 추천하시겠습니까?

    미리 감사합니다

    먼저 내 openCV4android 코드를 C++로 이식해야 합니다.

  • OpenCV Java 구현 사용

    예: http://docs.opencv.org/2.4.4‑beta/doc/tutorials/introduction/desktop_java /java_dev_intro.html 또는 JavaCV.

    하지만 이 자바 래퍼가 openCV4Android와 쉽게 호환되는지는 모르겠습니다.

  • 다른 것이 있습니까? 구혼? 무엇을 추천하시겠습니까?

    미리 감사합니다

    먼저 내 openCV4android 코드를 C++로 이식해야 합니다.

  • OpenCV Java 구현 사용

    예: http://docs.opencv.org/2.4.4‑beta/doc/tutorials/introduction/desktop_java /java_dev_intro.html 또는 JavaCV.

    하지만 이 자바 래퍼가 openCV4Android와 쉽게 호환되는지는 모르겠습니다.

  • 다른 것이 있습니까? 구혼? 무엇을 추천하시겠습니까?

    미리 감사합니다


    참조 솔루션

    방법 1:

    I think you miss some point in your reflexion about C++ and NDK.

    Did you want to build a library based on OpenCV that you will use for an android app but also for other platform ? If so, you should write your library in C++ and add some java wrapper for android use. Then if one day you decide to use your library to do an iOS app, you will have a less painfull job to do.

    I don't know about OpenCV Java implementation, so i can not add anything to what you said.

    방법 2:

    In case someone else is interested:

    I decided to use C++ and the Android NDK. It took me a while to get to know the Android NDK, but since I am able to run my C++ code on Android I am happy with that decision.

    (by HeribertsonicHeribert)

    참조 문서

    1. Developing and testing an OpenCV application on desktop which should later run on Android (CC BY‑SA 2.5/3.0/4.0)

    #android-ndk #opencv4android #OpenCV #Android #java






    관련 질문

    FFmpeg 1.0 < 오디오 재생 문제 유발 (FFmpeg 1.0 < causing audio playback issues)

    Android ImageView가 업데이트되지 않습니다. (Android ImageView is not being updated)

    나중에 Android에서 실행해야 하는 데스크탑용 OpenCV 애플리케이션 개발 및 테스트 (Developing and testing an OpenCV application on desktop which should later run on Android)

    Android 스튜디오 NDK 해결 방법 (Android Studio NDK workaround)

    64비트 Android 장치에서 .so 파일을 찾을 수 없습니다. (Can not find .so file on 64 bit android device)

    RUBYMOTION_ANDROID_SDK가 잘못되었습니다. (RUBYMOTION_ANDROID_SDK is incorrect)

    NDK: 자바 클래스에서 .c 상수를 사용하는 방법 (NDK: How to use .c constants in java class)

    Android ndk(cmake): '두 번째 jni 라이브러리에서 로그 API를 사용할 때 '__android_log_write'에 대한 정의되지 않은 참조 (Android ndk(cmake): 'undefined reference to `__android_log_write' when using log api in the second jni library)

    ~SkSpriteBlitter()를 반환할 때 스키어 네이티브 충돌이 발생했습니다. (I got skia native crash when return ~SkSpriteBlitter())

    JNI를 사용하는 JAR에 Android 라이브러리 패키징 (Packing an android library on a JAR that uses JNI)

    CMake가 서버에 통신 오류가 발생했습니다. (CMake communicate to server error occurred)

    armv7-linux-androideabi 대상에서 Rust 라이브러리 충돌 (Rust library crashing on target armv7-linux-androideabi)







    코멘트