繁体   English   中英

如何在opencv中减去两个不同大小的图像和灰度图像

[英]How to subtract two different size image and grayscale image in opencv

我有3个图像,我尝试减去具有相同尺寸尺寸的第一和第二图像并得到结果。 接下来,我尝试减去第一和第三个图像,第一个图像有尺寸(2000x1000),第三个图像有尺寸(1200x1057),我得到一个错误。

//! [window]
namedWindow("min", WINDOW_NORMAL);
resizeWindow("min", 1000, 500);
namedWindow("plus", WINDOW_NORMAL); 
resizeWindow("plus", 1000, 500); 
namedWindow("adf", WINDOW_NORMAL); 
resizeWindow("adf", 1000, 500);

Mat min,plus,adf;

subtract(im, im2, min);  //error 
add(im, im2, plus);
absdiff(im, im2, adf);

imshow("min", min); 
imshow("plus", plus);
imshow("adf", adf);

我尝试使用相同的尺寸替换灰度图像,我也得到了一个错误。 有人可以向我解释为什么我得到一个错误。

谢谢。

感谢@ZdaR(在评论中),我尝试调整图像大小。 调整图像大小

首先需要定义resize:

#include <opencv2/imgproc/imgproc.hpp>

 Mat Image,Temp;
 resize(Image, Temp, cvSize(Image2.size().width, Image2.size().height));
 //have same size with image2.

暂无
暂无

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

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