Zeros Mat对象具有除零之外的一些值

时间:2015-01-28 08:46:39

标签: c++ opencv

我声明了一个Mat对象D4,其初始值为零,给定的维度和数据类型。 然后以较小的尺寸显示它,我写了这个

Mat D4=Mat::zeros(7168,7424,CV_32FC1);
Mat res6;
for (i=0; i<7168; i++)
    for(j=0; j<7424; j++)
    {
        DC_.at<uchar>(i, j) = (unsigned char)D4.at<float>(i, j);
    }
resize(DC_, res6, Size(512, 512));
imshow("Test", res6);

我期待一个完整的黑色图像。但是我在右下方得到一块灰色值(该补丁类似于我在那个确切位置的输入图像)为什么会发生这种情况?出了什么问题?请尽快回答。

1 个答案:

答案 0 :(得分:0)

如果您使用此代码段,请尝试是否仍然会出现问题?

 Mat D4=Mat::zeros(DC_.rows,DC_.cols,CV_32FC1);
 Mat res6;
 for (i=0; i<DC_.rows; i++)
     for(j=0; j<DC_.cols; j++)
     {
         DC_.at<uchar>(i,j) = (unsigned char)D4.at<float>(i,j);
     }
 resize(DC_,res6,Size(512,512));
 imshow("Test",res6);