1、OpenCV程序(环境:CPU i5-9500+VS2017+OpenCV4.5.0)
方法1:利用“ Mat.at<存储类型>(行,列) ”访问Mat矩阵元素并赋值
int main()
{
int n = 10000;
Mat img = Mat::zeros(Size(n, n), CV_64FC1);
DWORD startTime = GetTickCount();
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
img.at<double>(i, j) = 6.66;
}
}
DWORD endTime = GetTickCount();
cout << "The run time is : " << endTime - startTime << " ms" << endl;
system("pause");
return 0;
}
方法2-1:利用“ Mat.data ”访问Mat矩阵元素并赋值
int main()
{

本文对比了不同方法在OpenCV中访问与修改10000x10000大小单通道Mat矩阵元素的效率。实验结果显示,使用Mat.ptr结合指针操作的方法最快,仅需140ms。

2846

被折叠的 条评论
为什么被折叠?



