• 締切済み

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

  • openCVの超解像処理

    openCVの超解像処理 ttp://opencv.jp/opencv2-x-samples/usage_of_sparsemat_2_superresolution をそのまま実行しようとしているのですが,処理に使う画像のファイル名はどのようにしたらいいのでしょうか? サンプルでは, Mat image = imread("lenna.png"); となっていますが,これだと,1枚しか読み込まないのではないですか? 解説では,16枚使用したと書いていますが,他の15枚の画像のファイルパスはどのように指定しているのでしょうか? 質問の内容がわかり難くてすみません.

  • openCVの超解像処理 その2

    前回,openCVの超解像処理を質問させてもらったものです. 今, http://opencv.jp/opencv2-x-samples/usage_of_sparsemat_2_superresolution の超解像処理をそのまま実行しています. 前回の質問(http://okwave.jp/qa/q6341130.html)で,1枚の画像を劣化させて複数の画像を作りだして,超解像処理をしていることはわかり,実行できるようになりました. しかし,実際に行いたいのは,自分が持っている複数の画像を使って超解像処理を実行してみたいのですが,その場合プログラムのどの部分をどのように変えたらいいのでしょうか? ヒントだけでもいいので,ご面倒かもしれませんが,ご教授お願いします.

  • OPENCVのサンプルプログラムについて

    OPENCVのサンプルプログラムに「peopledetect」というものがあり.exeファイルを実行してみたのですがすぐに消えてしまい。 あたらしく作ったファイルで実行してもUsage: peopledetect (<image_filename> | <image_list>.txt) と表示されるだけで人物認識をしません。 このサンプルプログラムの使い方を教えてもらえないでしょうか。 またどこかプログラムを変更する必要があるのならばそこを教えていただけないでしょうか・・・。 まず人物認識をするための画像を入れる場所もわかっていない状態です・・・。

  • VC++ 2010でOpenCVを使おうとしたら…

    こんばんは。 Win7のパソコンでOpenCVをVisual C++ 2010 Expressで使おうとしているものです。 パソコンについてあまり詳しくないため、質問させて頂きました。 OpenCVについて初心者なので、 「OpenCV プログラミングブック 第2版」という専門書を購入し、 書いてあるとおりにインストールや設定を行っていき、 この専門書のサポートHPに乗っているサンプルプログラムをコピーして、 「デバッグ開始」を選択して、さぁ実行してやろうという矢先に、 以下のメッセージが表示されて、進まなくなってしまいました。 「プログラム 'C:\Users\○○\documents\visual studio 2010\Projects\image\Debug\image.exe'を開始できません。 指定されたファイルが見つかりません。」(○○は私のユーザー名です。) 表示されたフォルダを確認してみたところ、確かにその場所にimage.exeなるものは 存在していませんでした。 これは、初期設定を行っている際に、この.exeが作成されないような 設定を行ってしまっているのでしょうか? 同じような症状、またはどうすれば改善できるか分かる方、 どうかご教授をお願い致します。 長文失礼致しました。

  • OpenCVを使いたいのですが

    Visual C++ 2010にOpenCV2.4.3の導入し、設定を終えたのでプログラムをビルドさせるとエラーが吐き出され動作しません。 どなたか原因がわかる方はいらっしゃらないでしょうか? 【プログラム】 #include<stdio.h> #include<openCV2/opencv.hpp> #ifdef _DEBUG #pragma comment(lib,"opencv_core243d.lib") #pragma comment(lib,"opencv_highgui243d.lib") #pragma comment(lib,"opencv_objdetect243d.lib") #else #pragma comment(lib,"opencv_core243d.lib") #pragma comment(lib,"opencv_highgui243d.lib") #pragma comment(lib,"opencv_objdetect243d.lib") #endif //-------------------------------------------------------- //main int main(int argc,char* argv[]) { const char* szWndName="画像"; if(argc<2) { fprintf(stderr,"入力ファイル名を指定してください。\n"); return -1; } IplImage *img=cvLoadImage(argv[1],CV_LOAD_IMAGE_COLOR); if(img==NULL) return -1; cvNamedWindow(szWndName); cvShowImage(szWndName, img); cvWaitKey(0); cvDestroyAllWindows(); cvReleaseImage(&img); return 0; } 【ビルド後にでるエラーメッセージ】 ------ すべてのリビルド開始: プロジェクト: OpenCV, 構成: Debug Win32 ------ TEST02.c C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(19): error C2054: 'using' の後に '(' が必要です。 C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(19): error C2061: 構文エラー : 識別子 'using' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(19): error C2054: 'using' の後に '(' が必要です。 C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(21): error C2061: 構文エラー : 識別子 'using' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(21): error C2061: 構文エラー : 識別子 'abs' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(21): error C2059: 構文エラー : ';' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(21): error C2061: 構文エラー : 識別子 'atexit' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(21): error C2059: 構文エラー : ';' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(22): error C2061: 構文エラー : 識別子 'atof' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(22): error C2059: 構文エラー : ';' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(22): error C2061: 構文エラー : 識別子 'atoi' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(22): error C2059: 構文エラー : ';' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(22): error C2061: 構文エラー : 識別子 'atol' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(22): error C2059: 構文エラー : ';' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(23): error C2061: 構文エラー : 識別子 'bsearch' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(23): error C2059: 構文エラー : ';' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(23): error C2061: 構文エラー : 識別子 'calloc' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(23): error C2059: 構文エラー : ';' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(23): error C2061: 構文エラー : 識別子 'div' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(23): error C2059: 構文エラー : ';' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(24): error C2061: 構文エラー : 識別子 'exit' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(24): error C2059: 構文エラー : ';' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(24): error C2061: 構文エラー : 識別子 'free' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(24): error C2059: 構文エラー : ';' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(24): error C2061: 構文エラー : 識別子 'getenv' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(24): error C2059: 構文エラー : ';' C:\Program Files\Microsoft Visual Studio 10.0\VC\include\cstdlib(25): error C2061: 構文エラー : 識別子 'labs' この後はエラー表記が続きます。

  • OpenCVを Borland C++ Builder で使いたいので

    OpenCVを Borland C++ Builder で使いたいのですが、やり方がわかりません。 実際にOpenCVをBorlend C++ Builderに結合出来た方の回答をお願い致します。 ネットを検索してみたのですが、OpenCV V1 V2.0 V2.1の記事がごっちゃに成っていて、かつVisual Studioの記事が多く、Borlandの記事が余り見つからず、見つかってもOpenCV V1のものです。 出来れば最新の物を使用したいので、OpenCV 2.1を結合しようと思っています。 http://opencv.jp/opencv2-x-tips/install-on-windowswindows32bit-64bit-visual-studio-opencv21に書かれている通りにOpenCV-2.1.0-win32-vs2008.exeをDLしてCMAKEをBuildMakefilesを選択して Use default native compilersのラジオボタン実行すると、指定フォルダーに色々ファイルが作成されますが、これらを更にどのように加工して行けばBorland C++ builder用のBin h 等のファイルが作成されるのでしょうか。 CMAKE実行後のBuildフォルダー内のbin、libフォルダー内は空でした。 マニュアルによるとVisual Studioの時はOpenCV.slnが作られる事に成っていますが、BuildMakefilesを選択して実行後、*.sinで検索して見ましたが何も見つかりませんでした。 やり方をご存知の方、お教え下さい。 よろしくお願い致します。む

  • 現在opencvについて勉強中の者です。

    現在opencvについて勉強中の者です。 OpenCV2.1¥samples¥cの中にあるstereo_match.exeというサンプルプログラムを実行すると距離画像が生成できると聞いたのですが実行方法がわかりません。 アイコンをダブルクリックするだけでは一瞬コマンドプロンプトのウィンドウが出てくるだけですぐ終了してしまいますし、直接コマンドをうったら Usage: stereo_match <left_image> <right_image> [--algorithm=bm|sgbm|hh] [--block size=<block_size>] [--max-disparity=<max_disparity>] [-i <intrinsic_filename>] [-e <extrinsic_filen ame>] [--no-display] [-o <disparity_image>] [-p <point_cloud_file>] という文章が出てくるだけで終わってしまいます。 同じフォルダの中にあるstereo_calibというサンプルプログラムを実行することでステレオキャリブレーションは実行済みです。 ちなみにOSはWindows Vistaです。

  • OpenCVで画像を読み込みたい

    OpenCVを勉強しようと思い先日始めました。 http://chihara.naist.jp/opencv/?FrontPage 上記のサイトに掲載されている通りにVC++ 2008 EEで ・環境変数PATH ・インクルードファイル ・ライブラリファイル ・リンカ の設定をしました。 これでいざプログラムをコンパイルして実行すると何故か画像が読み込んでくれません。 これらの設定以外の他にするべきことがあるのでしょうか? いきなり出鼻を挫かれたので困っています。よろしくお願いします。 OS:XP SP2 開発環境:VC++ 2008 EE 実行したプログラム ---------------------------------------------------------------- #include "cv.h" #include "highgui.h" int main( int argc, char** argv ) { IplImage* img; char* filename = "abc.bmp"; if( argc == 2 && (img = cvLoadImage( filename, 1)) != 0 ) { cvNamedWindow( "Image view", 1 ); cvShowImage( "Image view", img ); cvWaitKey(0); // イベント処理を含む場合には,これが重要. cvDestroyWindow( "Image view" ); cvReleaseImage( &img ); return 0; } return -1; } ----------------------------------------------------------------

  • openCVのエラー

    openCVの関数で cvCvtColor(frameImage, hsvImage, CV_BGR2HSV); というRGBからHSVへ変換する関数を openGLと組み合わせたプログラムで使用していたところ, コンパイルは通るのですが実行すると Bad number of channels (Incorrect number of channels for this conversion code) in function cvCvtColor. C:\User\VP\opencv\cv\src\cvcolor.cpp(2440) と表示されてエラーとなります. いったい何が原因なのでしょうか?? ちなみに上記関数はopenCVのみのプログラムでは正常に 動作したのを確認しました. また,エラーが出たプログラムでは, glutDisplayFunc(display); glutIdleFunc(idle); //idleの中身はglutPostRedisplay(); としており,このdisplay()関数内にて 上記関数を使用したところこのような現象が起こりました. 分かる方がいらっしゃいましたら,ご回答よろしくお願いいたします.

  • OpenCVを Borland C++ Builder で使いたいので

    OpenCVを Borland C++ Builder で使いたいのですが、やり方がわかりません。 当方の環境はW.XP Borland c++ Builder V5です。 ネットを検索してみたのですが、OpenCV V1 V2.0 V2.1の記事がごっちゃに成っていて、かつVisual Studioの記事が多く、Borlandの記事が余り見つからず、見つかってもOpenCV V1のものです。 出来れば最新の物を使用したいので、OpenCV 2.1を結合しようと思っています。 http://opencv.jp/opencv2-x-tips/install-on-windo … に書かれている通りにOpenCV-2.1.0-win32-vs2008.exeをDLしてCMAKEをBuildMakefilesを選択して Use default native compilersのラジオボタン実行すると、指定フォルダーに色々ファイルが作成されますが、これらを更にどのように加工して行けばBorland C++ builder用のBin h 等のファイルが作成されるのでしょうか。 マニュアルによるとVisual Studioの時はOpenCV.slnが作られる事に成っていますが、BuildMakefilesを選択して*.sinで検索して見ましたが何も見つかりませんでした。 やり方をご存知の方、お教え下さい。 ただ、申し訳ありませんが、私が混乱しておりますので、実際にBuilderで実行された方のご回答をお願い致します。 よろしくお願い致します。

このQ&Aのポイント
  • Lenovoデスクトップを利用している際に、仮想化を有効にする方法をご教示ください。
  • BIOS設定に進む手順や必要なセキュリティ項目について教えてください。
  • 仮想化の有効化操作がうまく行かず、VTT・VFdなどの項目が見つからない場合、解決策を教えてください。
回答を見る