2017-03-09 4 views
-3

OpenCVでOpenCVでresize関数を使用しようとしましたが、イメージは変更されません。両方の画像がロードされますが、何を設定してもfx, fyは何の違いもありません。どうすれば解決できますか?私は2番目の行に以下の行を変更したが、それは私に与えOpenCV C++サイズ変更の問題

#include "opencv2\opencv.hpp" 
#include <stdint.h> 

using namespace cv; 
using namespace std; 

int main(int argv, char** argc) 
{ 
    Mat OriginalImage = imread("cornrow1.jpg", CV_LOAD_IMAGE_UNCHANGED); 
    Mat ModifiedImage = imread("cornrow1.jpg", CV_LOAD_IMAGE_UNCHANGED); 
    void resize(InputArray OriginalImage, OutputArray ModifiedImage, Size (*), double fx = .2, double fy = .2, int = INTER_LANCZOS4); 
    imshow("color", ModifiedImage); 
    imshow("color2", OriginalImage); 
} 

ノート「メモリ位置での未処理の例外が...」あなたのコード内

Mat ModifiedImage = imread("cornrow1.jpg", CV_LOAD_IMAGE_UNCHANGED); 
Mat ModifiedImage; 
+0

トライCV ::サイズを変更します。 – Micka

+0

コードが不完全です。特に、少なくとも1つの '#include 'が欠けているようです。コードを問題の[mcve]にするようにコードを編集してください。そうすれば、それを再現して解決することができます。 [ask]も読んでください。 –

+0

ありがとう、これは働いた。私も先に進み、自分のコードを編集し、Toby Speightの記事を見ました。 –

答えて

0

void resize(...)は、関数宣言であります関数呼び出しではありません。私はあなたの代わりにこのような何かをしたいと思います:(0.2,0.2、OriginalImage、ModifiedImage、CV ::サイズ())

resize(OriginalImage, ModifiedImage, ModifiedImage.size()); 
+0

一般的には正しいですが、3番目のパラメータModifiedImage.size()の代わりにターゲットサイズまたはcv :: Size()と4番目の+ 5番目の相対寸法サイズを設定する必要があります。 – Micka

関連する問題