0

シンプルな「hello world」vc++/opencv プロジェクトを作成しています。

私のコードでは、「opencv.png」という画像を読み取って表示したいと考えています。

int _tmain(int argc, _TCHAR* argv[])
{
    namedWindow( "show_image", WINDOW_AUTOSIZE );
    Mat src = imread( "opencv.png" );
    imshow( "show_image", src );
    char c = waitKey(0);
    return 0;
}

次に、プロジェクトのルート パスの下に「opencv.png」を配置します。しかし、プロジェクトをコンパイルすると、「opencv.png」が表示されないことがわかりました。

「helloworld/Debug」ディレクトリには、次の 3 つのファイルしかありません。

helloworld.exe
helloworld.ilk
helloworld.pdb

「opencv.png」を手動で「Debug」にコピーする必要があります。コンパイル時に「opencv.png」を出力ディレクトリにコピーできるようにプロジェクトを構成するにはどうすればよいですか?


ジェームズの答えによると、少し複雑だと思います。「opencv.png」を最終的なexeファイルに埋め込むなど、より簡単な方法はありますか?

4

1 に答える 1

1

コピーを実行するカスタム ビルド ステップを作成できます。

または、イメージをコピーする必要がないように既知の場所 (TestData ディレクトリなど) に配置するか、コマンド ラインを介してイメージへのパスを渡すことを検討してください (デバッグ ウィンドウでコマンド ラインに引数を追加できます)。プロジェクト プロパティのページ)。

于 2012-08-04T16:47:08.390 に答える