android - 使用 JNI 传递和返回 OpenCv Mat 对象

标签 android opencv java-native-interface mat

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

JNIEXPORT jobject JNICALL Java_com_datumdroid_android_ocr_simple_HoughLine_nativeDetectLine

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

Java接口(interface)将是:
nativeDetectLine( String fileInput, Mat mat);

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

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

最佳答案

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 ...
}

关于android - 使用 JNI 传递和返回 OpenCv Mat 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22752820/

相关文章:

android - OrmLite - 在表升级之前保存数据

debugging - OpenCV 中 CV_32FC3 和 CV_64FC3 的区别?

c++ - _GLOBAL__I_ 的目的是什么?

android - SMS Retriever API android系统无法向广播接收器发送消息

安卓文件夹监控

python - 将 kivy 纹理转换为 opencv 图像

opencv - 裁剪瓶子的液体区域以进行处理

android - 如何使 "ndk-build clean"继续出错

java - 将数组从 JNI 函数传回而不复制它

android - 点击应用链接不会直接打开免安装应用