2017-06-29 36 views
1

私は3つの画像を持っていますが、同じサイズの寸法を持つ第1と第2の画像を差し引いてみました。次に、1番目と3番目のイメージを差し引いてみます。最初のイメージは次元(2000x1000)を持ち、3番目のイメージは次元(1200x1057)を持っています。opencvで2つの異なるサイズの画像とグレースケールの画像を差し引く方法

//! [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); 

グレイスケール画像を同じ大きさで表示しようとしましたが、エラーが発生しました。誰かが私に説明してもらえますか?

ありがとうございます。

+1

をあなたは不均等な大きさの行列に算術演算を適用することはできません。あなたは、サイズ変更または切り抜きのいずれかによって同じサイズのものを作る必要があります。 – ZdaR

+0

ありがとう、サイズを変更しようとすると、それは仕事です。 –

答えて

0

@ ZDAR(コメント内)のおかげで、画像のサイズを変更しようとしました。 、サイズ変更を定義するための

最初の必要性の画像のサイズを変更する:

#include <opencv2/imgproc/imgproc.hpp> 

Mat Image,Temp; 
resize(Image, Temp, cvSize(Image2.size().width, Image2.size().height)); 
//have same size with image2. 
関連する問題