2

度々の質問で申し訳ありません。32 ビット Windows 7 で Qt 5.0.2 または Microsoft VC++ Express Edition を使用して openCV をセットアップしようとして 1 週間経ちましたが、成功しませんでした。QT の場合: -QT 5.0.2 MinGW です。-opencv を使用しないプログラムを正常に実行します。

さて、私の .pro ファイルの opencv 行は次のようになります。

INCLUDEPATH += "C:\opencv\build\include"
LIBS += "C:\opencv\bin\bin\libopencv_core243.dll"
LIBS += "C:\opencv\bin\bin\libopencv_highgui243.dll"

これは、次のようなコードで「core.hpp が見つかりません」というエラーが発生するためです。

LIBS += -LC:\\opencv\\build\\x86\\vc10\\lib\
libopencv_core243 \
libopencv_highgui243 \

これで、opencv 関数のオートコンプリートが実行され、次のように記述した場合:

cv::Mat im = cv::imread("D:\\Tulips.jpg");

エラーはありません。しかし、この後に次のように書くと:

cv::imshow("im",im);

例外コードでプログラムを閉じます:c0000005 例外ハンドラの「キャッチ」にも該当しません。

奇妙なことは、VC++ Express がまったく同じことを行っていることです。私は自分で MinGW 用に opencv をコンパイルしましたが、Code::Blocks で動作するため、ビルドは問題ありませんでした。VC++ 10 でビルド済みの opencv を使用しましたが、それも機能しません。助けてください!どうもありがとうございました!

4

2 に答える 2

1

im.dataが null でないかどうかを確認します。c0000005 はアクセス違反であるため、無効なポインターを使用していることを意味します。さらにコードを表示するか、デバッガーを使用してコードをステップスルーすることをお勧めします。

于 2013-06-26T10:04:14.390 に答える