prevPts = new MatOfPoint2f(prev);
prev
是一个Mat;
第一行prevPts = new MatOfPoint2f(prev);
引发和异常不兼容的 MAT。我不明白它为什么这样做。API 说 MatOfPoint2f 可以接受 MAT。
你可以使用:
MatOfPoint matOfPoint = ...code to receive ...
MatOfPoint2f mat2f = new MatOfPoint2f();
matOfPoint.convertTo(mat2f, CvType.CV_32FC2);
新 MatofPoint2f(MAT) 的构造函数:
public MatOfPoint2f(Mat m) {
super(m, Range.all());
if( !empty() && checkVector(_channels, _depth) < 0 )
throw new IllegalArgumentException("Incompatible Mat");
//FIXME: do we need release() here?
}
检查你的 MAT 对象