我正在编写一个 opencv 代码来将我的矩阵从通道重塑为具有 3 列的单通道矩阵。
uchar* ptrimage=(uchar*)image->imageData;
uchar* ptrZ=(uchar*)Z->imageData;
for (int i=0;i<image->height;i++)
{
for(int j=0;j<image->width;j++)
{
for(int k=0;k<image->nChannels;k++)
{
cout<<i<<" "<<j<<" "<<" "<<k<<endl;
(ptrZ+(j+i*image->width)*Z->widthStep)[k]=(ptrimage+i*image->widthStep)[3*j+k];
}
}
Z 是我想要得到的新矩阵,其高度为 image->width*imgae->height 且宽度为 3。这在 j 的 7-8 次迭代后中断。请你帮我找出错误。