前提・実現したいこと
OpenCVを今勉強中の初心者なのですが、画像に膨張、収縮フィルタを使用するとエラーが起こります。
キー入力で、dを入力すると膨張、eを押すと収縮するようにしたいのですがどうしたら良いでしょうか?
発生している問題・エラーメッセージ
OpenCV: terminate handler is called! The last OpenCV error is: OpenCV(4.1.0) Error: Assertion failed (size.width>0 && size.height>0) in cv::imshow, file C:\build\master_winpack-build-win64-vc14\opencv\modules\highgui\src\window.cpp, line 352
該当のソースコード
C++
1while (true) 2 { 3 4 switch (cv::waitKey(33)) 5 { 6 case 'd': 7 cv::dilate(clone, cstring, cv::Mat()); 8 cout << "膨張" << endl; 9 break; 10 case 'e': 11 cv::erode(clone, cstring, cv::Mat()); 12 cout << "収縮" << endl; 13 break; 14 case 's': 15 cv::imwrite("cstring.jpg",cstring); 16 case 'q': 17 return; 18 } 19 cv::imshow("Input", clone); 20 cv::imshow("Cstring", cstring); 21 }
試したこと
正直、フィルタの使い方がわからないので、いろいろな書き方を試してみましたが、どれも同じエラーになりました。
buildはできるのですが、コマンドプロンプトで起動するとエラーになります。
補足情報(FW/ツールのバージョンなど)
OpenCVは1.40.1を使用しています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/11/25 07:51