OpenCV 4.13.0
Open Source Computer Vision
読み込み中...
検索中...
見つかりません
🤖 AIによる機械翻訳(非公式) — これは OpenCV 4.13.0 公式リファレンス(英語)を AI (Claude) で自動翻訳したものです。訳に誤りを含む場合があります。正確な情報は 公式英語版(原文) を参照してください。
How to enable Halide backend for improve efficiency

前のチュートリアル: Caffeフレームワークのモデルを読み込む
次のチュートリアル: Halideバックエンド向けにネットワークをスケジューリングする方法

原著者Dmitry Kurtaev
互換性OpenCV >= 3.3

はじめに

このチュートリアルでは、OpenCVのディープラーニングモジュールでHalide言語バックエンドを使ってモデルを実行する方法を説明する。Halideは、画像処理アルゴリズムを読みやすい形式で記述し、特定のデバイスに応じて計算をスケジューリングし、かなり良好な効率で評価できるオープンソースプロジェクトである。

Halideプロジェクトの公式ウェブサイト: http://halide-lang.org/

最新の効率比較: https://github.com/opencv/opencv/wiki/DNN-Efficiency

必要要件

LLVMコンパイラ

覚え書き
LLVMのコンパイルには長い時間がかかる場合がある。
  • LLVMのソースコードを http://releases.llvm.org/4.0.0/llvm-4.0.0.src.tar.xz からダウンロードする。展開する。llvm_root をソースコードのルートディレクトリとする。
  • ディレクトリ llvm_root/tools/clang を作成する。
  • LLVMと同じバージョンのClangをダウンロードする。この場合は http://releases.llvm.org/4.0.0/cfe-4.0.0.src.tar.xz から取得する。それを llvm_root/tools/clang に展開する。これがClangのソースコードのルートになるようにすること。
  • LinuxでLLVMをビルドする
    cd llvm_root
    mkdir build && cd build
    cmake -DLLVM_ENABLE_TERMINFO=OFF -DLLVM_TARGETS_TO_BUILD="X86" -DLLVM_ENABLE_ASSERTIONS=ON -DCMAKE_BUILD_TYPE=Release ..
    make -j4
  • WindowsでLLVMをビルドする(Developer Command Prompt)
    mkdir \\path-to-llvm-build\\ && cd \\path-to-llvm-build\\
    cmake.exe -DLLVM_ENABLE_TERMINFO=OFF -DLLVM_TARGETS_TO_BUILD=X86 -DLLVM_ENABLE_ASSERTIONS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=\\path-to-llvm-install\\ -G "Visual Studio 14 Win64" \\path-to-llvm-src\\
    MSBuild.exe /m:4 /t:Build /p:Configuration=Release .\\INSTALL.vcxproj
覚え書き
\\path-to-llvm-build\\\\path-to-llvm-install\\ は別のディレクトリである。

Halide言語

  • GitHubリポジトリ https://github.com/halide/Halide から、またはgitを使ってソースコードをダウンロードする。ルートディレクトリは halide_root になる。
    git clone https://github.com/halide/Halide.git
  • LinuxでHalideをビルドする
    cd halide_root
    mkdir build && cd build
    cmake -DLLVM_DIR=llvm_root/build/lib/cmake/llvm -DCMAKE_BUILD_TYPE=Release -DLLVM_VERSION=40 -DWITH_TESTS=OFF -DWITH_APPS=OFF -DWITH_TUTORIALS=OFF ..
    make -j4
  • WindowsでHalideをビルドする(Developer Command Prompt)
    cd halide_root
    mkdir build && cd build
    cmake.exe -DLLVM_DIR=\\path-to-llvm-install\\lib\\cmake\\llvm -DLLVM_VERSION=40 -DWITH_TESTS=OFF -DWITH_APPS=OFF -DWITH_TUTORIALS=OFF -DCMAKE_BUILD_TYPE=Release -G "Visual Studio 14 Win64" ..
    MSBuild.exe /m:4 /t:Build /p:Configuration=Release .\\ALL_BUILD.vcxproj

Halideバックエンド付きでOpenCVをビルドする

OpenCVをビルドする際に、以下の設定フラグを追加する。

  • WITH_HALIDE - Halideのリンクを有効にする
  • HALIDE_ROOT_DIR - Halideのビルドディレクトリへのパス

Halideを優先バックエンドに設定する

net.setPreferableBackend(DNN_BACKEND_HALIDE);