我在android中用opencv开发Cam-shift我有C++代码想要在android ndk中实现它,但是我做了相当多的工作,首先我将三个Mat对象发送给像这样的本地方从JNI返回三个Mat框架
OpencvClass.humanDetection(mRgba.getNativeObjAddr(),frame.getNativeObjAddr(),hsv.getNativeObjAddr());
上机端我读这样的
JNIEXPORT void JNICALL Java_com_example_abr_mypl5_OpencvClass_humanDetection
(JNIEnv *, jclass, jlong addrRgba,addrFrame,addrHsv){
Mat& rgba = *(Mat*)addrRgba;
Mat& frame = *(Mat*)addrFrame;
Mat& HSV = *(Mat*)addrHsv;
// here i have implement my code
//now i want to return back this three frames in java side
}
末我的框架,我想我的三帧返回到Java端如何将我做我有搜索了很多,但没有找到一个好的解决方案,有没有人可以ñ帮我解决这个问题?
我看不出有任何需要返回'Mat's,因为你的地址通过他们。对本地代码中的“Mat”进行的任何更改都应该反映在Java端(只要不在修改之前在某处进行复制)。 – Michael