###前提・実現したいこと
openCVによる画像中の輝点位置座標検出
そのためのガウシアンブラーの使用
###発生している問題・エラーメッセージ
openCVのコマンドに対してエラーが生じてしまっています。
C2059 構文エラー:'定数'
のエラーメッセージの解決法がわかりません。
###該当のソースコード
C++
1#ifdef _DEBUG 2#define CV_EXT "d.lib" 3#else 4#define CV_EXT ".lib" 5#endif 6#pragma comment(lib, "opencv_core320" CV_EXT) 7#pragma comment(lib, "opencv_highgui320" CV_EXT) 8#pragma comment(lib, "opencv_imgproc320" CV_EXT) 9#pragma comment(lib, "opencv_imgcodecs320" CV_EXT) 10 11#include "opencv2/core/core.hpp" 12#include <opencv2/highgui/highgui.hpp> 13 14#include <iostream> 15#include <opencv2/opencv.hpp> 16using namespace std; 17using namespace cv; 18 19int main(int argc, char *argv[]) 20{ 21 Mat im = imread("Image.png", 0); 22 23 Mat disc = getStructuringElement(MORPH_ELLIPSE, Size(2, 2)); 24 Mat fil; 25 Mat thre; 26 Mat er; 27 28 void GaussianBlur(Mat im, Mat fil, Size(3,3), 0, 0); 29 void adaptiveThreshold(Mat fil, Mat thre, 1, int 47, double -0.41 ); 30 void Erode(Mat thre, Mat er, Mat disc); 31 imshow("Show image", fil); 32 waitKey(0); 33 return 0; 34}
###試したこと
void adaptiveThreshold(Mat fil, Mat thre, 1, int 47, double -0.41 ); void Erode(Mat thre, Mat er, Mat disc); imshow("Show image", fil); waitKey(0); return 0;
の部分をコメントアウトしてGaussianBlurのみで試してみましたが通りませんでした。
C2059 構文エラー:'定数'
のエラーが発生します。
試しに引数をMat im, Mat filのみにして
void GaussianBlur(Mat im, Mat fil);
ビルドは通りましたがimshowでfilがちゃんと表示されませんでした。
また, imやfilはすでに宣言しているので引数のMatはいらないかと思って消去すると
C2182 'GaussianBlur': 'void'型が不適切に使用されています。 C2440 '初期化中': 'initializer list'から'int'に変換できません。
というエラーメッセージが生じます。
ちなみにGaussianBlurもコメントアウトしてimshowでimを表示させると問題なく表示されます。
GaussianBlurなどのopenCVのコマンドの使い方がよくわかっておらず、自分の力で解決が難しそうなのでよければ解決策をご教示いただければ幸いです。
###補足情報(言語/FW/ツール等のバージョンなど)
OS:Windows 10 Home 64 bit operating system
Visual Studio 2017 community
openCV3.2.0
回答1件
あなたの回答
tips
プレビュー