Opencv JavaCV通过@StdVector将Java数组传递给函数

Opencv JavaCV通过@StdVector将Java数组传递给函数,opencv,javacv,javacpp,Opencv,Javacv,Javacpp,我试图调用JavaCV的group矩形函数。这是方法签名 @Namespace("cv") public static native void groupRectangles(@StdVector("CvRect,cv::Rect") CvRect rectList, @StdVector IntPointer weights, int groupThreshold, double eps/*=0.2*/); 从OpenCV文档中,参数1和2应该是std::vector。我假设

我试图调用JavaCV的group矩形函数。这是方法签名

@Namespace("cv") public static native void groupRectangles(@StdVector("CvRect,cv::Rect") CvRect rectList,
        @StdVector IntPointer weights, int groupThreshold, double eps/*=0.2*/);
从OpenCV文档中,参数1和2应该是std::vector。我假设应该传入某种形式的Java数组(本机数组、列表等),但是,该方法只有@StdVector的注释,并且只接受单个对象


有人能提供一个非常小的代码片段,说明如何通过传入两个Java列表或数组或其他任何东西来正确调用此方法。

我通过邮件列表找到了答案。我所做的唯一修改如下:

final CvRect rectsPointer = new CvRect(faces.size());
for (int i=0; i<faces.size(); ++i)
    rectsPointer.position(i).put(faces.get(i));
final-CvRect-rectsPointer=new-CvRect(faces.size());
对于(int i=0;i