OpenCV を使用する c++ プログラムを開発しました。現在、C# で Windows フォーム ベースのアプリケーションを開発したいと考えています。C# はマネージ コードしか処理できないため、OpenCV を C# アプリケーションで直接実行することはほとんど不可能です。OpenCV を使用して C# アプリケーションを作成するさまざまな方法を検索しました。そのうちの 1 つは EmguCV であり、C# アプリケーションに c++ .dll ファイルをインポートし、この方法でアンマネージ関数を呼び出す方法にもっと関心があります。
私はC++で単純な関数を作成することから始めました.dllをインポートすることで、C#アプリケーションでcout
使用できました。cin
この問題は、C++ アプリケーションに OpenCV ヘッダー ファイルをインクルードしようとすると発生し、コンパイルするとこのエラーが発生します。
エラー LNK1104: ファイル 'tbb_debug.lib' を開けません
以前にこれを行った人もいますが、ピクチャボックスに cv::Mat 形式でウェブカメラフィードを表示するで、彼が c++ と C# をどのようにインターフェースするかわかりません
質問は、cv::Mat 変数を受け取り、それに画像処理を実行し、処理された行列を返す関数があることです。C# アプリケーションで C++ で記述された関数を使用したいと考えています。しかし問題は、C++ に OpenCV ライブラリを含めると dll を作成できないことです。
したがって、EmguCV やその他の .NET ラッパーを OpenCV に使用するように勧めないでください。
プロジェクトに Visual Studio 2010 を使用しています。