繁体   English   中英

OpenCV:我超过了矩阵大小吗?

[英]OpenCV: am I exceeding the matrix size ?

我有以下代码:

cv::Mat data ( HEIGHT,WIDTH, CV_32SC1 );
cv::Mat means = cv::Mat::zeros (HEIGHT, WIDTH, CV_64FC1 );
int *dPtr = new int [HEIGHT*WIDTH];
dPtr =  data.ptr<int>();
double *mPtr = new double [HEIGHT*WIDTH];
mPtr =  means.ptr < double>();

for ( int i = 0; i < N; i ++)
{
    for ( int j = 0; j < M; j ++ ) 
    {
         mPtr[ WIDTH * (i-1) + j ] += dPtr[ WIDTH * (i-1) + j ];
    }
}

但程序在for循环内崩溃,我怀疑我是否超出了矩阵大小。 但我无法弄明白。 有人能帮助我吗? 先感谢您。

由于你的索引i,j从0开始,你应该在数组表达式(i-1)中省略-1。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM