OpenCV Mat阵列访问,最快的方法是哪种?为什么?

5 c++ opencv image image-processing mat

我想知道OpenCV中Mat中访问数据的方式。如您所知,我们可以通过多种方式获取数据。我想在Mat中存储图像(宽x高x 1深度)并循环访问图像中的每个像素。最好的方法是使用ptr <>(irow)获取行像素,然后访问行中的每一列。或使用at <>(irow,jcol)最好?还是使用index = irow * Width + jrow直接计算索引是最好的?任何人都知道原因。

提前致谢

use*_*016 3

at<T>在每次调用时都会进行范围检查,从而使其比 慢ptr<T>,但更安全。

因此,如果您确信您的范围计算是正确的并且您想要尽可能最佳的速度,请使用ptr<T>