Python 如何用OpenMP编译OpenCV

Python 如何用OpenMP编译OpenCV,python,c++,opencv,raspberry-pi,raspberry-pi2,Python,C++,Opencv,Raspberry Pi,Raspberry Pi2,中的一位用户建议使用带有_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

中的一位用户建议使用带有_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 ..

在这里使用的
和_OPENMP=ON是否正确?使用OpenCV-2.4.10是否存在问题?(我注意到我引用的博客文章是OpenCV-2.4.6.1)

我有一个类似的问题。带有-D和_OPENMP=ON的cmake对我来说很好

根据您提供的信息,我认为这不是OpenMP的问题。您是否正确安装了OpenCV的构建以便Python可以找到它?是的,我应该更明确一些。我可以构建和使用OpenCV没有问题,只是当我尝试使用
flag上的_OPENMP=ON构建OpenCV时,问题不在于使用OPENMP构建OpenCV,而是在Python中导入它(如果使用OPENMP构建)。如果您在没有openmp的情况下构建OpenCV,那么您可以在Python中毫无问题地导入它。正确吗?是的,当我使用OpenMP构建OpenCV时,我无法导入Python,但我想说的是,问题在于使用OpenMP构建