Übergeben Sie ein Array von Mats an systemeigenen Code
Die native Funktion, die ich verwenden möchte, erfordert ein Array von 7Mat
s:
static int nativeCode(cv::Mat &inputImg, cv::Mat bufImgs[7]);
Imjni_part
Ich habe:
Mat& mRgba = *(Mat*)inRgba;
Mat& bufImgs[7] = *(Mat*)inBufImgs;
nativeCode(mRgba,bufImgs);
In meinem Java-Code deklariere ich meine Felder:
private Mat mRgba;
private Mat[] bufImgs = new Mat[7];
Ich kann anrufengetNativeObjAddr
aufmRgba
, aber wie mache ich das Äquivalent für das Array?
Einige Hintergrundinformationen:
Ich verwende OpenCV und arbeite mit der Kamera an der Livebildverarbeitung. Die Funktion, die ich für jeden Frame aufrufe, erfordert einige zusätzliche Objekte. Um zu verhindern, dass diese Objekte in jedem Frame erstellt und zerstört werden, möchte ich sie einmal erstellen und jedes Mal nur Referenzen übergeben.