0

Windows8でOpenCV2.3.1を使用しています。関数を呼び出すとcvShowImage、プログラムがクラッシュします。私はコードブロックを使用していますが、なぜこれが発生するのかわかりません。

私がその行にコメントすると、プログラムはうまく動作します。

コードは次のようになります。

    IplImage *img1=NULL;
    img1=cvLoadImage("LenaComFormas.pgm",CV_LOAD_IMAGE_GRAYSCALE);
    cvShowImage("Original", img1);
    cvWaitKey(0);
4

2 に答える 2

1

画像が読み込まれなかったため(cvLoadImage返されましたNULL)。デバッガーを使用して確認できます。ファイルへのパスをもう一度確認してください。

于 2012-12-16T20:42:32.273 に答える
1

あなたのコードはWindows7のQtとopencv2.4.3で正常に動作しています...あなたができる可能性のあるチェック...

  1. ライブラリへのリンクを確認してください...opencv_core231、opencv_highgui231、opencv_imgproc231...チェックにはopencv2/ opencv / core.hpp opencv2 / opencv/highgui.hppが含まれています。
  2. IplImageポインタimg1を確認してください

IplImage *img1 = cvLoadImage("",0);

if(img1==NULL)

return -1;

3。* .pgmイメージのサポートを確認してください...または、最新のopencvを入手して試してください...

編集..4 。チェックのために、以下を試してください。

#include <opencv/opencv2/core.hpp>
#include <opencv/opencv2/highgui.hpp>

using namespace cv;

int main()
{
  Mat image;
  image = imread("",0);
  imshow("TEST",image);
  waitKey(0);
  return 0;
}
于 2012-12-16T20:51:30.797 に答える