• 締切済み

OpenCVを使った超解像について

はじめまして。 初投稿です。 OpenCVで http://opencv.jp/opencv2-x-samples/usage_of_sparsemat_2_superresolution 上記プログラムをそのままVisual Studioでコンパイル・実行をしています。 「Invalid Image name」と表示され、実行できません。 どなたか解決方法を教えていただけないでしょうか。 よろしくお願いします。

みんなの回答

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.2

それなら lenna.png を C:\にコピーして Mat image = imread("C:\\lenna.png"); とフルパスで指定するとか。 これでうまくいくようなら、ファイルの置き場所がわるいだけですし これでも上手くいかないなら、lenna.png自体が壊れているかなんかで読み込めないのではないでしょうか

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

サンプルの該当箇所を見ます > Mat image = imread("lenna.png");//input image > if(image.empty()) > { > cout<<"invalid image name"<<endl; > return -1; その表示があるのは、 image.empty()が真の時です。 imageはMatクラスのインスタンスで、リファレンスマニュアルから、emptyはデータが空だということを表わすことがわかります。 そのimageは imreadの戻り値です。imreadのリファレンスマニュアルを読むと、画像読み込みに失敗すると、空のMatを返すことがわかります。 以上から、imreadが失敗していることがわかります。 imreadで指定してるファイル「lenna.png」が無いか、実行時ディレクトリ(VisualStudioで特に設定してなければ、コンパイルしてできたexeファイルと同じになってるはず)に置いていないか、だと思われます。

y-pom
質問者

お礼

回答ありがとうございます。 しかし、どちらも条件を満たしているみたいです。 結果は、変わりませんでした。

関連するQ&A