1

Visual Studio 2013でDlib(C++ライブラリ)の画像処理パッケージを使いたいです。

空のプロジェクトを作成し、ソリューション エクスプローラーのソース ファイルに「dlib-18.16\dlib\all\source.cpp」を追加しました。次に、dlib-18.16 へのパスを VC++ ディレクトリのインクルード ディレクトリに追加し、dlib-18.16\dlib へのパスを Visual Studio の C/C++ 全般の追加のインクルード ディレクトリに追加しました。

Dlibの例の1つであるmatrix_ex.cppファイルは実行できますが、face_detection_ex.cppファイルは「 Cannot open include file:'type_safe_union/type_safe_union_kernel.h' 」というエラーが発生して実行できません。行によって#include <dlib/image_processing/frontal_face_detector.h>

この問題を解決するにはどうすればよいですか? プログラムがいくつかのヘッダー ファイルを見つけても、他のファイルはすべて同じフォルダーにあるのに見つけられないのはなぜですか?

4

1 に答える 1

1

dlib フォルダー自体を VC++ ディレクトリのインクルード ディレクトリに追加する必要があります。代わりに、その上にフォルダーを追加しました。

つまり、インクルード ディレクティブは である必要があります#include <image_processing/frontal_face_detector.h>

よりよく説明するために、仮説的な例を挙げてみましょう。にダウンロードdlib-18.16.tar.bz2して解凍しましたc:\projects。という名前のフォルダが作成されますc:\projects\dlib-18.16c:\projects\dlib-18.16インクルード ディレクトリに追加した VC++ ディレクトリ内。

ただし、これは正しくありません。そのディレクトリを削除し、代わりにc:\projects\dlib-18.16\dlibプロジェクトのインクルード ディレクトリとして追加する必要があります。

これにより、ファイル間の同様の内部リンクが#include <type_safe_union/type_safe_union_kernel.h>読み込まれます。C:\projects\dlib-18.16\dlib\type_safe_union\type_safe_union_kernel.h

于 2015-08-14T18:01:57.327 に答える