Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/141.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在OpenCV C+中创建空白图像+;_C++_Image_Opencv_Opencv4 - Fatal编程技术网

C++ 在OpenCV C+中创建空白图像+;

C++ 在OpenCV C+中创建空白图像+;,c++,image,opencv,opencv4,C++,Image,Opencv,Opencv4,我试图使用OpenCV创建一个空白图像(稍后填充),但它必须与新图像的预定义图像大小相同。我尝试了以下代码: (图像将是成功显示的lena的图片) 但由于某种原因,它仍然显示“图像”而不是LeNa1(即预定义图像大小相同的空白图像)。 谢谢大家! 要创建空白图像(图像中填充了零),请使用cv::Mat::zeros()。它将创建一个矩阵,其中包含您选择的维度和类型,并用零填充 在您的情况下,使用以下代码 Mat lena1 = Mat::zeros(Size(image.cols,image.r

我试图使用OpenCV创建一个空白图像(稍后填充),但它必须与新图像的预定义图像大小相同。我尝试了以下代码:

(图像将是成功显示的lena的图片)

但由于某种原因,它仍然显示“图像”而不是LeNa1(即预定义图像大小相同的空白图像)。 谢谢大家!

要创建空白图像(图像中填充了零),请使用cv::Mat::zeros()。它将创建一个矩阵,其中包含您选择的维度和类型,并用零填充

在您的情况下,使用以下代码

Mat lena1 = Mat::zeros(Size(image.cols,image.rows),CV_8UC1);
要用预加载的图像填充它

image.copyTo(lena1);

你正确地创建了空白图片,但是我没有看到任何代码实际上用LeNa1像素填充你的矩阵,所以当然<代码> IMSID显示空白图片。这个<代码> Lea1(大小(图像,COLS,图像行),CVY8UC1);<代码>不是创建空白图像的正确方法。它使用随机值初始化图像,或者我们应该说它将图像保留为未初始化,您应该使用重载获取
Scalar
,将所有组件设置为0:
lena1(大小(image.cols,image.rows),CV_8UC1,CV::Scalar()谢谢!这正是,非常感谢,完全解决了!
image.copyTo(lena1);