Installing opencv for python3

15,963

Solution 1

At the moment OpenCV supports Python 2.x only. OpenCV (including OpenCV 2.4) does not compiles with Python 3.x.

Python3 support is already in wishlist for future versions of OpenCV. But currently there are no activities in this direction and you are welcome to create and contribute a patch resolving the compatibility issues.

Solution 2

Use the pip application.

On ubuntu:

sudo apt install python3-pip

and so, on command line:

pip3 install --upgrade pip

pip3 install opencv-python

Solution 3

I got the thing to at least build and install. It can load the cv2 module just fine. Haven't tested too much though.

Details: https://stackoverflow.com/a/21212023/3075814

Share:
15,963
Hernan
Author by

Hernan

Updated on June 27, 2022

Comments

  • Hernan
    Hernan almost 2 years

    Has anyone tried to install opencv for python3?. As stated here http://opencv.willowgarage.com/wiki/InstallGuide its support status is unknown. So I want to try it:

    I have downloaded the sources for OpenCV-2.3.1. But cmake reports.

    -- Python interpreter: /Library/Frameworks/Python.framework/Versions/3.2/bin/python3 -B (ver 3.2)

    -- Python numpy: NO (Python wrappers will not be generated)

    I do have numpy (version 1.6.0) installed in python3 but cmake does not find it. I am using Mac OSX 10.6 Any ideas?

    Update

    I just saw one more thing of the cmake output that might be helpful

    -- Found PythonInterp: /Library/Frameworks/Python.framework/Versions/3.2/bin/python3 (found version "3.2")

    -- Found PythonLibs: /usr/lib/libpython2.6.dylib File "", line 1

    from distutils.sysconfig import *; print get_python_lib()
    
                                                          ^
    

    SyntaxError: invalid syntax File "", line 1

    import os; os.environ['DISTUTILS_USE_SDK']='1'; import numpy.distutils; print
    

    numpy.distutils.misc_util.get_numpy_include_dirs()[0]

                                                                        ^ 
    

    SyntaxError: invalid syntax File "", line 1

    import sphinx; print sphinx.__version__
    
                              ^ SyntaxError: invalid syntax
    

    Notice that it found 3.2 but then libpython2.6 ??

    Any ideas?

  • Hernan
    Hernan about 12 years
    Actually, I changed some of the cmake files to make them python3 compatible (basically adding parenthesis to print). Now cmake goes through. make does not finish but it seems that there all small thing. The question is which minimum python version you want to support? Dropping support < 2.6 will be great in order to have a single codebase.
  • pshirishreddy
    pshirishreddy almost 9 years
    Python3 is supported now from open cv 3.0 onwards
  • waldol1
    waldol1 over 5 years
    Worked for me on Ubuntu 14