哪种方法检索 submat更快,或者?我想知道它,因为我正在使用 java并且我在许多大小为 1600 * 1200 的图像上循环。adjustROI()
submat()
提前致谢。
PS:对于注意到 OpenCV 问答论坛中存在相同帖子的任何人:由于没有人能够回答这个问题,我决定将它放在 Stackoverflow 上以增加有人回答它的机会。
最好的想法是按照@Ilya Kurnosov 的建议进行基准测试。但是,根据以下来源,我预测几乎没有区别。与实际发生的工作相比,Mat 创建和 JNI 调用开销似乎很大,但基准测试可能证明我错了。
这两种方法的一个大问题是,如果您逐个像素地滑动一个矩形,您将创建近 200 万个对象。(OTOH,您可以在 C++ 中执行此操作而无需创建任何新对象,所以如果它必须快......)
public Mat submat(int rowStart, int rowEnd, int colStart, int colEnd)
{
Mat retVal = new Mat(n_submat_rr(nativeObj, rowStart, rowEnd, colStart, colEnd));
return retVal;
}
public Mat adjustROI(int dtop, int dbottom, int dleft, int dright)
{
Mat retVal = new Mat(n_adjustROI(nativeObj, dtop, dbottom, dleft, dright));
return retVal;
}