Mugichoko's blog

Mugichoko’s blog

プログラミングを中心としたメモ書き.

vcpkgでOpenCV + Contribをインストール

vcpkgでOpenCV + Contribをインストールする際にrgbdモジュールを入れるのに少し苦労したので,今後のために覚書き.

インストール方法

以下,VCPKG_PATHにvcpkgがあるとします.

  1. VCPKG_PATH/ports/opencv4/vcpkg.jsonに以下を追加
  2.     "viz": {
          "description": "viz module",
          "dependencies": [
            "vtk"
          ]
        },
        "rgbd": {
          "description": "rgbd module"
        },
    
  3. portfile.cmakeに以下を追加
  4. vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
    
    (...)
    
     "rgbd"     BUILD_opencv_rgbd
     "world"    BUILD_opencv_world
    
    (...)
    
    -DBUILD_opencv_rgbd=ON #-DBUILD_opencv_rgbd=OFF
    
  5. 以下のコマンドでOpenCVをインストール
  6. vcpkg install opengl-registry:x64-windows
    vcpkg install vtk:x64-windows
    vcpkg install opencv4[nonfree,contrib,vtk,rgbd,viz,openmp]:x64-windows
    

ちなみに

VCPKG_PATH/ports/opencv4/portfile.cmakeの中に以下の様に書いてある.

        ###### The following module is disabled because it's broken #https://github.com/opencv/opencv_contrib/issues/2307
        -DBUILD_opencv_rgbd=OFF

うーん.怖い.実際にIssuesを見るに,以下の通り,問題なさそうという結論.

  • OpenGLを含めると(つまり,vcpkg install opencv4[opengl]を含めると)問題が出る様子
  • でも,2020年9月の時点でIssues/2679で解決されmasterにマージされている
  • 今回インストールしたOpenCV 4.5.1は2020年12月にリリースされているので,既にこの問題はフィックスされている様子
  • ただし,Issues/2679によるとWindowsだけらしい
  • 私はWindows利用者だし,OpenGLOpenCVを介して使わないので,問題なさそう