我的代码有许多“ for”循环,如下所示:
for (size_t img = 0; img!=m_nbofImage; img++)
{
for (size_t i = 0; i!=image_size; i++)
{
dataImg[img* image_size+i]=data_matImg[i];
}
为了提高代码的性能,我想使用Opencv,但我不这样做。
您认为,如何优化此循环以提高性能? 任何帮助将不胜感激。
答案 0 :(得分:1)
您应该使用memcpy()复制整个块,而不是逐像素复制图像。是否有效取决于您的变量类型。
也就是说,如果要使用OpenCV,它具有优化的复制功能copyTo()。通过将其与蒙版和/或ROI结合使用,您应该能够更快地复制图像。