1

Windows 7 64 ビット、AMD プロセッサに OpenCV 2.4.5 をインストールし、Eclipse CDT Juno と MinGW をすべて最新のアップデートにしました。以前は eclipse CDT と MinGW で 100 以上のソース ファイルを問題なくコンパイルできました。彼らは、この小さな OpenCV ソース ファイルをコンパイルします。

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

using namespace std;

int main()
{
    IplImage* img1 = cvLoadImage("lenna.png");
    cvShowImage("MyWindow1", img1);

    cv::Mat img2;
    img2 = cv::imread("lenna.png", CV_LOAD_IMAGE_COLOR);

    cv::namedWindow("MyWindow2", CV_WINDOW_AUTOSIZE);
    cv::imshow("MyWindow2", img2);

    cvWaitKey(0);
    return 0;
}

しかし、実行しようとすると、悪名高い

「アプリケーションを正しく開始できませんでした (0xc0000005)。[OK] をクリックしてアプリケーションを閉じてください。」

何が間違っている可能性があり、この問題の解決策は何ですか?

  1. OpenCV (PreCompiled) は「C:\OpenCV245PC\」に解凍されます (README、index.rst、および CMakeLists.txt はすべてのサブフォルダーにあります)。
  2. Windows システム PATH は C:\OpenCV245PC\build\x86\mingw\bin に設定されています
  3. Eclipse GCC C++ コンパイラ、インクルード パス (-I) が「C:\OpenCV245PC\build\include」に設定されている
  4. Eclipse MinGW C++ リンカ、ライブラリ検索パス (-L) は次のように設定されています: "C:\OpenCV245PC\build\x86\mingw\lib"
  5. Eclipse MinGW C++ リンカ、ライブラリ (-l) は次のように設定されています。

opencv_calib3d245 opencv_contrib245 opencv_core245 opencv_features2d245 opencv_flann245 opencv_gpu245 opencv_highgui245 opencv_imgproc245 opencv_legacy245 opencv_ml245 opencv_nonfree245 opencv_objdetect245 opencv_photo245 opencv_stitching245 opencv_video245 opencv_videostab245

4

2 に答える 2

6

多くの試行錯誤の後、私はこのチュートリアルに従い、独自のバイナリをコンパイルすることにしました。プリコンパイルされたバイナリが機能しないと不平を言う人が多すぎるようです。Eclipse CDT Juno は既にインストールされています。

私の手順は次のとおりです。

  1. MinGW をダウンロードしてインストールし、c:/mingw/bin でシステム PATH に追加します。
  2. http://www.cmake.orgから cmake をダウンロードしてインストールします。
  3. OpenCV2.4.5 Windows版をダウンロード
  4. Opencv を C:\OpenCV245PC\ にインストール/解凍します (README、index.rst、および CMakeLists.txt はすべてのサブフォルダーにあります)。
  5. CMake GUI ツールを実行してから、
  6. ソースとして C:\OpenCV245PC\ を選択します
  7. バイナリをビルドする宛先 C:\OpenCV245MinGW\x86 を選択します
  8. Configure ボタンを押して、ジェネレーターとして MinGW Makefiles を選択します。ウィンドウには赤いハイライトがいくつかあります。必要に応じてオプションを選択してください。
  9. [構成] ボタンをもう一度押します。これで設定は完了です。
  10. 生成ボタンを押します。
  11. 生成が完了したら、プログラムを終了します。
  12. Cmake プログラムを終了します。
  13. コマンド ライン モード (cmd.exe) を実行し、宛先ディレクトリ C:\OpenCV245MinGW\x86 に移動します。
  14. 「mingw32-make」と入力します。バイナリのビルドの進行状況が表示されます。コマンドが見つからない場合は、システム PATH が c:/mingw/bin で追加されていることを確認する必要があります。ビルドは、選択したオプションに従って完了まで続行されます。
  15. Windows システム パス ([マイ コンピューター] > [右クリック] > [プロパティ] > [詳細設定] > [環境変数] > [パス]) で、宛先の bin ディレクトリ C:\OpenCV245MinGW\x86\bin を追加します。
  16. コンピューターを再起動
  17. Eclipse CDT IDE に移動し、サンプルの OpenCV コードを使用して C++ プログラムを作成します (このトピックの冒頭のコードを使用できます)。
  18. [プロジェクト] > [プロパティ] > [C/C++ ビルド] > [設定] > [GCC C++ コンパイラ] > [インクルード] に移動し、ソース OpenCV フォルダー「C:\OpenCV245PC\build\include」を追加します。
  19. [プロジェクト] > [プロパティ] > [C/C++ ビルド] > [設定] > [MinGW C++ リンカー] > [ライブラリ] に移動し、ライブラリ (-l)に 1 つずつ追加します (これはプロジェクトごとに異なる場合があります。必要に応じてすべてを追加するか、 some of them just the ones that you need for your project): opencv_calib3d245 opencv_contrib245 opencv_core245 opencv_features2d245 opencv_flann245 opencv_gpu245 opencv_highgui245 opencv_imgproc245 opencv_legacy245 opencv_ml245 opencv_nonfree245 opencv_objdetect245 opencv_photo245 opencv_stitching245 opencv_video245 opencv_videostab245
  20. ビルドした OpenCV ライブラリ フォルダ「C:\OpenCV245MinGW\x86\lib」をライブラリ検索パス (-L)に追加します。

このコードを使用して、セットアップをテストできます。

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

using namespace std;
using namespace cv;

int main()
{

Mat img = imread("c:/lenna.png", CV_LOAD_IMAGE_COLOR);

namedWindow("MyWindow", CV_WINDOW_AUTOSIZE);
imshow("MyWindow", img);

waitKey(0);
return 0;
}

イメージを C:/ に配置することを忘れないでください (または、適切と思われる場所ならどこでも、Eclipse に読み取りアクセスがあることを確認してください。

于 2013-07-01T10:36:03.913 に答える