- 締切済み
opencvプログラミング エラー
C++ opencv2.3.1 visual studio 2008 の環境でプログラミングをしているのですが、 以下のようなエラーが出て解決出来ずに困っています。 ------------------------------------------------------------------ 【エラーが出る箇所のソースコード】 if ((tmp_img = cvLoadImage(jpg_name, CV_LOAD_IMAGE_COLOR)) == 0){ free(jpg_name); return -1; } 「jpg_name」には、パスを含むjpgファイル名が記述されたtxtファイルを引数とし、 そのtxtファイルから読み込んだjpgファイル名を格納してあります。 ------------------------------------------------------------------ 【エラー内容】 「jpg_name」にパスも含めて正しくjpgファイル名が格納されているのに tmp_imgに画像が読み込まれず、 if文内のfree、return -1 が実行され、 プログラムが終了してしまいます。 デバッガのウォッチ上では、 「tmp_img」は<未定義の値>、 「cvLoadImage(jpg_name, CV_LOAD_IMAGE_COLOR)」は 「エラー:マネージEEは式の構文を理解しません」と表示されています。 ------------------------------------------------------------------ 解決方法をご存知の方がおられましたら よろしくお願い致します。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- Wr5
- ベストアンサー率53% (2173/4061)
opencvは使ったコトがないので細かいところは不明ですが…… >「jpg_name」にパスも含めて正しくjpgファイル名が格納されているのに >tmp_imgに画像が読み込まれず、 >if文内のfree、return -1 が実行され、 >プログラムが終了してしまいます。 cvLoadImage()の戻り値がNULLだった…ということでいいんですかね? http://www.usinezumi.com/blog/2009/12/05/225/ なんて話があるようですが…… # OSなんです?
補足
回答ありがとうございます。 >OSなんです? windows7(64bit)です。 >cvLoadImage()の戻り値がNULLだった…ということでいいんですかね? そうです。 (tmp_img = cvLoadImage(jpg_name, CV_LOAD_IMAGE_COLOR)の直後で 「tmp_img」は<未定義の値>となっていました。 URLのページを参考に 管理者権限で実行、 Visual Studioを介さず、コマンドプロンプトからの実行 を試しましたが、結果は変わりませんでした・・・。