このコンパイルでは Windows10+bazel5.2.0+mediapipe0.8.10.2+vs20191 を使用します。
- MSYS2のダウンロードインストールと環境設定:
MSYS2のダウンロード:
MSYS2公式サイト
デフォルトでインストールすることも、インストールをカスタマイズすることもできます。
MSYS2環境構成:
デフォルトのパスにインストールします。
注: ここではデフォルトの場所にインストールしました。
2. msys2 パッケージ データベースをアップグレードします。
msys2 を開く検索
入力:
pacman –Syu
Enter をクリックしてアップグレードを開始します。
アップグレードが完了するまで待ちます。
msys2 基本パッケージをアップグレードします。
また、検索して MSYS2 を開き、次のように入力します
pacman –Su
基本パッケージのアップグレードを実行します。次のように:
アップグレードが完了するまで待ちます。
3. 必要なインストール パッケージをダウンロードします: unzip
MSYS2 には解凍機能が組み込まれていないため、ここでは手動でインストールする必要があります。
Win+R 入力 cmd を開き、cmd.exe を開きます
入力:
pacman -S git patch unzip
インストールの成功:
4.Pythonのインストールと環境構築
Python をコンピュータにインストールし、環境を設定する必要があります。ここで使用するのはanaconda3の仮想環境(mmd26)上のpythonです。
5. VS2019 と WinSDK をダウンロードしてインストールします。
VS公式サイト:
https://visualstudio.microsoft.com/zh-hans/free-developer-offers/
2019 コミュニティ バージョンをダウンロードするだけで、ダウンロードとインストールのプロセス中に WinSDK が自動的にインストールされます。
6. Bazelダウンロードのインストールと環境設定:
mediapipe の GitHub 公式 Web サイトの情報によると、ここから bazel5.2.0 バージョンをダウンロードします。
バゼルをダウンロード:
https://github.com/bazelbuild/bazel/releases
公式 Web サイトに入り、必要なバージョン番号を直接検索します。
例: 今回はバージョン 5.2.0 が必要なので、直接検索するだけです。
必要な bazel5.2.0 はここにあります。左側の黒い三角をクリックして展開します。
直接クリックすると、ブラウザが自動的にダウンロードします。ダウンロードが完了すると、bazel-5.2.0-windows-x86_64.exe が得られます。使いやすいように、名前を bazel.exe に変更することをお勧めします。これにより、使用時に bazel を直接入力できるようになります。将来的には、 の後ろに元の文字列を入力することは避けてください。
私はそれを別の bazel フォルダーに入れました。
Bazel環境構成:
テスト環境が正常に構成されているかどうか:
cmd.exeを開きます。「bazel」と入力してEnterを押します。
構成は成功しました。
7. bazel 変数を設定します。
公式ドキュメントによると、bazel 変数を設定する必要があります。
の:
BAZEL_VS: VS2019 のインストール ディレクトリ (私のインストール ディレクトリなど) は次のとおりです。 D:\ProgramData\VS2019;
BAZEL_VC: VS2019 インストール ディレクトリの下にある C++ のメイン ディレクトリ (私の例:)
D:\プログラムデータ\VS2019\VC
BAZEL_VC_FULL_VERSION: VS2019 の VC のバージョン番号。バージョン番号は、VS2019 のインストール ディレクトリで確認できます。たとえば、次のようになります。
14.29.30133の写真
BAZEL_WINSDK_FULL_VERSION: WinSDK のバージョン番号。「コントロール パネル -> プログラムと機能」で確認できます。私の場合は次のとおりです。
コンピュータ上に複数のバージョンの VS がある場合、複数の SDK バージョン番号が存在します。一部のチュートリアルでは、いずれかを選択できると記載されています。不要なエラーを避けるために、VS に対応する SDK のバージョン番号を選択するようにしてください。
上記の情報を見つけたら、MSYS2 を検索して開き、bazel 設定を探します。
注: VS のインストール時にデフォルト パスの下にインストールすることを選択した場合、ここに落とし穴があります。これは回避する必要があります。Program Files (x86) のかっこはエスケープする必要があるため、Program Files \( x86\)
8. Opencv をダウンロードしてインストールします。
公式ドキュメントでは現在opencv3.4.10を使用していると記載されているので、3.4.10をダウンロードします。
OpenCVのダウンロードアドレス:
ダウンロードしてインストールするだけです。
注: 解凍インストール プロセス中に中国語のパスを表示しないでください。表示しないと、後でコンパイル エラーが発生します。
9. Mediapipe ウェアハウスのクローン作成と Bazel コンパイル ファイルの WORKSPACE の変更
Git を使用してメディアパイプの公式ウェアハウスを移行します。
cmd.exeを開き、次のように入力します
git clone https://github.com/google/mediapipe.git
移行を実行するだけです。
この方法はお勧めしません。メディアパイプの公式 GitHub に直接アクセスして、ソース コードを直接ダウンロードすることを検討してください。
ダウンロードURL:
https://github.com/google/mediapipe
ソース コードを複製またはダウンロードした後、ウェアハウスで WORKSPACE ファイルを開き、「windows_opencv」を検索し、opencv パスをローカルに保存されたパスに変更します。
変更後:
インターネット上のほとんどのチュートリアルはこれに加えて、変更が必要な場所がもう 1 つあります。
これは、ダウンロードされたウェアハウス内の opencv の関連コンテンツです。
保存したウェアハウスを見つけて、「third_party」フォルダーを開いて、その中にある opencv_windows.BUILD ファイルを見つけます。次のように:
opencv_windows.BUILD ファイルを開き、次の場所を見つけます。
修正する前に:
変更後:
ここでは opencv3.4.2 を使用しているので、その中の「OPENCV_VERSION」は「342」に変更され、次の「opt_build」と「dbg_build」は自分の opencv 内の dll ファイルに従って変更されます。私の場合は次のとおりです。
10. hello_world をコンパイルして実行します。
公式ドキュメントでは、Windows でメディアパイプをコンパイルする場合は、Python パスを追加する必要があると示唆しています。
--action_envPYTHON_BIN_PATH="C://path//to//python.exe"
コンパイル コマンド ラインの PYTHON_BIN_PATH は、上記の手順でインストールした Python パスです。これを設定するだけです。
hello_world をコンパイルします。
cmd.exe ディレクトリを使用して、メディアパイプのルート ディレクトリに切り替えます。
次に、次のコマンドを入力します。
bazel build -c opt --define MEDIAPIPE_DISABLE_GPU=1 --action_envPYTHON_BIN_PATH="D:\\ProgramData\\Anaconda3\\envs\\mmd26\python.exe"mediapipe/examples/desktop/hello_world:hello_world --verbose_failures
上記の PYTHON_BIN_PATH は独自の Python パスに変更する必要があり、一部のライブラリはコンパイル プロセス中に Github から取得する必要があるため、科学的にインターネットをサーフィンするのが最善です。そうしないと、取得できないエラーが発生します。
コンパイルが成功したことを示す次の情報が表示されます。
hello_world を実行します。
コンパイルが完了したら、引き続き cmd.exe に次のコマンドを入力します。
set GLOG_logtostderr=1
bazel-bin\mediapipe\examples\desktop\hello_world\hello_world.exe
正常に実行されました: