3

この SOF 投稿のユーザーは、WITH_OPENMP(一部の) マルチコア サポートを有効にするフラグを使用して OpenCV をビルドすることを提案しています。OpenMP で OpenCV-2.4.10 をビルドしようとしましたが、Python で cv2 をインポートできません。

注: Python で OpenCV-2.4.10 をビルドして使用できます。WITH_OPENMP問題は、フラグを使用して構築することです。

このブログ投稿でopencv-2.4.10/cmake/OpenCVFindLibsPerf.cmake提案されているように、 の49 ~ 58 行を次のように置き換えます。

# --- OpenMP ---
if(NOT HAVE_TBB AND NOT HAVE_CSTRIPES)
  include (FindOpenMP)      # --- since cmake version 2.6.3 
   if (OPENMP_FOUND)
      set (HAVE_OPENMP TRUE)
      set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
      set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
   else()
      set ( HAVE_OPENMP FALSE)
   endif()
else()
set(HAVE_OPENMP 0)
endif()

そして、ビルドする前に次のコマンドを実行します。

    cmake -D WITH_OPENMP=ON -D CMAKE_BUILD_TYPE=RELEASE \
    -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_NEW_PYTHON_SUPPORT=ON \
    -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON  \
    -D BUILD_EXAMPLES=ON ..

WITH_OPENMP=ONここで使用する正しいフラグはありますか? OpenCV-2.4.10 の使用に問題がありますか? (参照したブログ投稿は OpenCV-2.4.6.1 を使用していることに気付きました)

4

1 に答える 1

11

同様の質問がありました。-D WITH_OPENMP=ON を指定したcmakeは、私にとってはうまくいきました。

于 2015-06-03T12:05:21.550 に答える