当前位置:   article > 正文

Ubuntu Opencv 3.4.11 / 4.4.0 python3.8 编译问题解决方法收集_opencv 3.8 ubuntu 编译

opencv 3.8 ubuntu 编译

1、问题:opencv-4.4.0/modules/python/src2/cv2.cpp:17:10: fatal error: Python.h: 没有那个文件或目录
   17 | #include <Python.h>

原因:cmake 默认指定python头文件搜索路径不对

解决:手动指定路径

  1. cmake .. \
  2. -D WITH_CUDA=OFF \
  3. -D WITH_VTK=OFF \
  4. -D WITH_MATLAB=OFF \
  5. -D BUILD_DOCS=ON \
  6. -D CMAKE_BUILD_TYPE=RELEASE \
  7. -D CMAKE_INSTALL_PREFIX=/usr/local \
  8. -D OPENCV_PYTHON3_VERSION=3.8 \
  9. -D PYTHON3_INCLUDE_PATH=/usr/include/python3.8 \
  10. -D PYTHON3_LIBRARIES=/usr/lib/python3.8/config-3.8-x86_64-linux-gnu/libpython3.8.so \
  11. -D PYTHON3_EXECUTABLE=/usr/bin/python3.8 \
  12. -D PYTHON3_NUMPY_INCLUDE_DIRS=/usr/lib/python3.8/dist-packages/numpy/core/include/ \
  13. -D OPENCV_EXTRA_MODULES_PATH=/home/cyrus/AI/opencv_contrib-4.4.0/modules

说明:OPENCV_PYTHON3_VERSION=3.8 (必须指定)

           CMAKE_INSTALL_PREFIX 是 make install 编译安装路径(可修改)

           OPENCV_EXTRA_MODULES_PATH 是  opencv_contrib 的modules目录(根据实际修改) ,为了全功能所以一起编译了。

           python3.8 的位置如果不一样请自行修改。

2、问题:error: recursion is detected during loading of "cv2" binary extensions

解决:进入opencv编译目录下的python_loader目录,执行python setup.py develop

  1. cd /home/cyrus/AI/opencv-4.4.0/release/python_loader
  2. python setup.py develop

3、编译3.4.11 版本出错:python/src2/cv2.cpp:68:94: error: ‘to’ is not a member of ‘PyOpenCV_Converter<cv::line_descriptor::KeyLine, void>’

 解决方式:-D BUILD_opencv_python2=OFF -D BUILD_opencv_python3=OFF 

  1. cmake .. \
  2. -D WITH_CUDA=OFF \
  3. -D WITH_VTK=OFF \
  4. -D WITH_MATLAB=OFF \
  5. -D BUILD_DOCS=ON \
  6. -D CMAKE_BUILD_TYPE=RELEASE \
  7. -D CMAKE_INSTALL_PREFIX=/usr/local \
  8. -D OPENCV_PYTHON3_VERSION=3.8 \
  9. -D PYTHON3_INCLUDE_PATH=/usr/include/python3.8 \
  10. -D PYTHON3_LIBRARIES=/usr/lib/python3.8/config-3.8-x86_64-linux-gnu/libpython3.8.so \
  11. -D PYTHON3_EXECUTABLE=/usr/bin/python3.8 \
  12. -D PYTHON3_NUMPY_INCLUDE_DIRS=/usr/lib/python3.8/dist-packages/numpy/core/include/ \
  13. -D OPENCV_EXTRA_MODULES_PATH=/home/cyrus/AI/opencv_contrib-3.4.11/modules \
  14. -D BUILD_opencv_python2=OFF -D BUILD_opencv_python3=OFF 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/434340
推荐阅读
相关标签
  

闽ICP备14008679号