:への転載https://www.cnblogs.com/dapeng-bupt/p/7807679.html
Iプロテスト有効vs2012 + dlib18.16
DLIBライブラリは、非常に強力なオープンソースのデータベース、詳細なドキュメントおよびC ++でないコードはまた、いくつかとPythonインタフェースを提供しますが、トラブルの少しのインストールおよび構成のプロセスは、オンラインのいくつかのチュートリアルがありますが、ほとんどが散発包括的。私は個人的にあなたの参照のためのより包括的なチュートリアルを整理、再びすべてのピットを踏んでいます
1、インストールパッケージをダウンロードしてください
まずDLIBのウェブサイトで最新のライブラリをダウンロードしhttp://dlib.net/、DLIBの使用シナリオ、いくつかの、Pythonインタフェースのコンパイル変化を様々な詳細を含む左側のメニューバーを、それがあることがわかります包装、画像処理、線形代数、機械学習、ネットワークプログラミングや他のいくつかのシーンを含むライブラリAPIのアプリケーションシナリオは、各シーンがあり、分類の下で助けに小さいことができないですが、強力なDLIBライブラリをため息します。
私は、ファイルフォルダを抽出した後、ファイル解凍し、DLIB-19.7をダウンロードして、パス内の任意のフォルダの下に置かれ、中国が含まれていません
2、コンソールプロジェクトを確立
Visual Studioを開き2017(設定プロセスの他のバージョンが似ている)、コンソールプロジェクトを確立します。サンプルコードは、直接に直接コピーされた場合は、それがさまざまなエラーを報告しますすると、最初のエラーは、ライブラリファイルDLIBにヘッダファイルの様々を見つけることができません
DLIBを含むフォルダに対応3、
私たちは、解凍した良いlibパス上のプロジェクトのプロパティで追加する必要があり、ノートはそのDLIB-19.7の代わりにDLIB-19.7 / DLIB、前者は避けるの将来のトラブルに順にDLIBライブラリーに加えて、コンテンツの多くを、含まれているため、ここでは直接追加しますDLIB-19.7が含まれています
ソリューションエクスプローラの右には、プロジェクトの上でマウスを右クリック - >プロパティ - > VC ++ディレクトリ、参照されるディレクトリを含むディレクトリには、ライブラリカタログがDLIB-19.7フォルダパスに追加され、[OK]をクリックします
4、dlib.lib追加
そして、あなたは赤い赤い波線前にエラーを見つけることができなくなったが、コンパイル時に、次のエラーが発生しています、
おそらく原因不足のdlib.libファイルを決定することができ、エラーやエラーの種類の内容を読み取ります。次のコースのdlib.libを作成する必要があり、インターネットが持っているが、必ずしもそうではない時に自分自身を生成することをお勧め最新DLIB、ノートラブル
5、dlib.libを作ります
私たちは、cmakeのソフトウェアを使用する必要があり、cmakeのは、クロスプラットフォームのビルドツールが簡単に公式サイトに、ライブラリファイルを作成することができている(https://cmake.org/download/) ビットの数を一致させることができ、オペレーティングシステムの独自のバージョンをダウンロードしてください
ダウンロードが完了した後に示すように、フォルダ内の最初の行DLIB DLIB-19.7ファイルフォルダをインストールを開始し、第二行は、完成後のファイルを格納するための空のフォルダdlib_building2あります
生成をクリックし、バージョン番号、デフォルトのための次のオプション対対応を選択し、[完了]をクリックし、ライブラリを作り始めました
次のように言葉が完成し、表示されたら
vs2017との完全な、オープンdlib.vcxproj一度だけdlib_building2フォルダを探します
再構築を右クリックし、
LIBファイルを必要としているフォルダにだけデバッグフォルダの中の選択肢の一つになります
元のプロジェクトに、参加する前に、追加のリンカのライブラリディレクトリに[全般]タブの下で、変更に、二つの場所にプロパティページを入力するdubugパス生成を右クリックします。
入力コネクタタブで「追加の依存プロジェクト、」dlib.libを追加しました
6、ソースプロパティstadfxを追加および変更
最も基本的かつ完全にこの時点で、通常の操作では最高のものですが、間違いがある場合
エラーLNK2001: 无法解析的外部符号 USER_ERROR__missing_dlib_all_source_cpp_file__OR__inconsistent_use_of_DEBUG_or_ENABLE_ASSERTS_preprocessor_directives
それはsource.cppファイルを追加する必要性を示し、私たちは、ファイルが置かれているDLIB-19.7フォルダに参加するには、既存のエントリの方法に追加します
これは、このエラーを満たし著者であります:
このエラーは、簡単なようだが、あなたは「stdafx.hを」ヘッダファイルに追加したとき、私はすべての種類の情報に目を通す、トラブルを実行し、それを自分でしようと、最も簡単な方法を見つけ、他のプリコンパイルエラーが発生しますsource.cpp、「プロパティ」をクリックしているファイルを右クリックし、プリコンパイル済みヘッダーの設定は使用せずに変更することができます
あなたは、このような問題が発生した場合:
*** \ DLIB \すべて\ source.cpp: 致命的なエラーC1128: セクションの数が制限オブジェクトファイル形式を超えて: 使用 / bigobj コンパイル
次に、以下のように解決
7、成功した操作
直接サンプルプログラム(http://dlib.net/gui_api_ex.cpp.html)を実行し、グラフィカル・ユーザ・インタフェースを得ることができ、マウスのクリックとを行うクリックボタンごとにカウント手順で見ることができます、それは数プラス1になります
図7に示すように、グラフィックス処理コンフィグレーションクラス
非グラフィックス処理のニーズを満たすが、あなたは、このような顔認識などの画像、に対処するためのプログラムのアルゴリズムいないのであれば、またはあなたは商品がイメージを読み取る必要があるときを検出したい場合は、そう読むことを続けてくださいするには上記の構成
あなたは、コンパイル時にこのようなエラーが発生する可能性があります
あなたは、JPEGファイルを読むためのlibjpegにDLIB_JPEG_SUPPORTとのリンクを#defineしなければなりません。
で、手順に従ってください http://dlib.net/compile.html。
あなたはDLIB_JPEG_SUPPORTは、プロジェクト全体のために定義させなければならないことに注意してください。
だから、一つのファイルにそれを#defineしないでください。> Preprocessor->プリプロセッサ定義] -代わりに、C / C ++に追加し
、それはあなたのアプリケーション全体のために有効になりますので、Visual Studioの[プロパティページのウィンドウ内のフィールド。
次のように解決策は以下のとおりです。
アイテムのコメントの表現の欠如は、リストに追加することができます
次のエラーを報告した場合:
\ DLIB \ DLIB-19.4 \ DLIB \ image_loader \ jpeg_loader.cpp(17):致命的なエラーC1083: オープンできないファイルなどが"jpeglib.h":そのようなファイルやディレクトリを
私たちは、上記に記載の方法を追加する必要がありますDLIB_JPEG_STATIC へ