【问题标题】:Pass and return OpenCv Mat object with JNI使用 JNI 传递和返回 OpenCv Mat 对象
【发布时间】:2014-03-31 02:43:06
【问题描述】:

我想在 JNI 中写一个这样的函数:

JNIEXPORT jobject JNICALL Java_com_datumdroid_android_ocr_simple_HoughLine_nativeDetectLine

(JNIEnv * jenv, jclass, jstring fileInput, jobject mat)

Java 接口是:

nativeDetectLine( String fileInput, Mat mat);

现在我想将 Mat 传递给 JNI 并更改它的值。

谁能给我一个教程或指南? 具体如何处理作业。

【问题讨论】:

    标签: android opencv java-native-interface mat


    【解决方案1】:

    http://answers.opencv.org/question/12271/can-the-java-interface-pass-a-mat-to-opencvs-c/

    JNIEXPORT void JNICALL Java_org_opencv_samples_tutorial2_Tutorial2Activity_FindFeatures(JNIEnv*, jobject, jlong  addrGray, jlong addrRgba)
    {
        Mat& mGr  = *(Mat*)addrGray;
        Mat& mRgb = *(Mat*)addrRgba;
        ... do stuff with the Mat objects ...
    }
    

    【讨论】:

    • 首先将 jlong​​ 转换为 Mat* ,然后取消引用它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-04
    • 1970-01-01
    • 1970-01-01
    • 2019-05-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多