229

I need to install cv2 for a script that has been written for me. I tried pip install cv2 and pip install open_cv and got the same problem - a warning message from dist.py and complains about zlib being not found. No cv2 installed. I also tried pyopenvc and pip install opencv-python.

So, I went to the opencv site and downloaded the relevant exe. Ran it - generated a heap of subdirectories and a make file and stuff.

What do I do now?

AMC
  • 2,642
  • 7
  • 13
  • 35
Ian Boag
  • 2,462
  • 2
  • 10
  • 6

24 Answers24

310

Install opencv-python (which is the official pre-built OpenCV package for Python) by issuing the following command:

pip install opencv-python
Christoph Rackwitz
  • 11,317
  • 4
  • 27
  • 36
Eiconic
  • 3,436
  • 1
  • 10
  • 19
  • 7
    Follow up question, what is the correct way to determine the PIP name of a library? – MrDysprosium Oct 04 '21 at 19:00
  • 1
    @MrDysprosium Refer to the library documentation. – Dustin Wyatt Nov 24 '21 at 19:30
  • 1
    The superior answer would be to pick opencv-contrib-python as the package of preference to install. – Sn3akyP3t3 Mar 25 '22 at 21:15
  • @MrDysprosium if you know the name used to import it but not the name to install it (which, stupidly, is often different) then you have to use PyPi's website or a search engine etc, because pip no longer supports search – Hack-R Sep 08 '22 at 20:26
67

run the following command by creating a virtual enviroment using python 3 and run

pip3 install opencv-python

to check it has installed correctly run

python3 -c "import cv2"
HamzaMushtaq
  • 1,660
  • 13
  • 13
49

In pip package management, there are 4 different OpenCV packages all using the same namespace, cv2. Although they are not officially supported by OpenCV.org, they are commonly used in developers' community. You could install any of them using the following command:

pip install PACKAGE_NAME

where PACKAGE_NAME can be

  • opencv-python (only contains main modules)
  • opencv-contrib-python (contains both main and contrib modules)
  • opencv-python-headless (same as opencv-python but without GUI functionality)
  • opencv-contrib-python-headless (same as opencv-contrib-python but without GUI functionality)

You should only install one of them depending on your needs. If you accidentally installed multiple of them in the same environment, you can remove them using pip uninstall before installing the correct one again.

For more details, you can refer to the project description of OpenCV on Wheels.

As of 2021, all of these 4 packages are official OpenCV projects. Source: OpenCV Website.

Jack Chan
  • 1,077
  • 1
  • 10
  • 15
13

To Install the Current Latest version of OpenCV then use the below commands:

Use this Command:

pip install --upgrade opencv-python

If you're facing problem in above command then try this :

pip install --upgrade opencv-contrib-python

To check the version of installed OpenCV:

import cv2
print(cv2.__version__)
Amar Kumar
  • 2,392
  • 2
  • 25
  • 33
10

Simply use this for the so far latest version 4.1.0.

pip install opencv-contrib-python==4.1.0.25

For the default version use this:

pip install opencv-contrib-python

If you have a new Raspberry Pi and want to install OpenCV then this tutorial would be a good choice.

For Ubuntu/Linux users:

sudo apt install python3-opencv
Trees
  • 1,245
  • 10
  • 20
8

As of 10/22/2019, I think the best answer is simply

conda install opencv

It appears opencv is now in the main Anaconda channel.

To see which packages (including opencv) are in the main Anaconda channel go to Anaconda Package Lists and follow the link corresponding to your python version and os version.

user3731622
  • 4,844
  • 8
  • 45
  • 84
6

Please follow the command:

pip install opencv-python

then if you want to use:

import cv2

If it's not worked due to any update, please follow the documentation

code_conundrum
  • 529
  • 6
  • 12
5

Everybody struggles initially while installing OpenCV. OpenCV requires a lot of dependencies in the backend. The best way to start with OpenCV is, install it in a virtual environment. I suggest that you use the Python Anaconda distribution and create a virtual environment using it. Then inside the virtual environment, you can install OpenCV using this command:

conda install -c conda-forge opencv
KetZoomer
  • 2,701
  • 3
  • 15
  • 43
Kamble Tanaji
  • 487
  • 6
  • 12
  • 3
    While I do agree with the suggestion to use Conda, that particular package has been unmaintained for **more than three years**! – AMC Apr 16 '20 at 01:39
3

Make a virtual enviroment using python3

virtualenv env_name --python="python3"

and run the following command

pip3 install opencv-python

to check it has installed correctly run

python3 -c "import cv2"
HamzaMushtaq
  • 1,660
  • 13
  • 13
3

You can install opencv the normal way:

pip install opencv-python

If you are getting errors, you can do this:

pip install opencv-python-headless
la39zz
  • 282
  • 3
  • 8
3

To install open_cv you can go to this website or do this,

pip install opencv-contrib-python --upgrade
pip install opencv-python 

You can test it by:

C:\> python
>>> import cv2
>>> print(cv2.__version__)
'4.5.1' # your version may be a newer one
Maryam
  • 41
  • 5
2
  1. Open anaconda command prompt and type in below command.

    conda install -c conda-forge opencv

  2. Once the 'Solving environment' is done. It will ask to download dependencies. Type 'y'.

  3. It will install all the dependencies and then you are ready to code.

Community
  • 1
  • 1
Raghav2580
  • 256
  • 2
  • 10
2

I recommend this for Python 3: Please install it this way with pip

pip3 install opencv-python

This will download and install the latest version of OpenCV.

colidyre
  • 4,170
  • 12
  • 37
  • 53
TMan
  • 39
  • 2
2

You could try using below command-

pip install opencv-contrib-python

It will basically download the compatible version. If this command fails, you could upgrade you pip using below command-

python -m pip install –upgrade pip

If you need a pictorial guide, head over to Simple Steps to Install OpenCV in Windows

You can also try installing OpenCV from prebuilt binaries from the official OpenCV site.

Shashiraj
  • 79
  • 4
2

->pip install opencv-python you can use this.

But if this code does not working then you can check python version on cmd and anaconda because they are different. So you type command in anaconda prompt and cmd, it will work. You can check this -> pip list

marc_s
  • 732,580
  • 175
  • 1,330
  • 1,459
1
  1. Open terminal
  2. Run the following command pip install --trusted-host=pypi.org --trusted-host=files.pythonhosted.org opencv-python.
  3. Hope it will work.
1

As a reference it might help someone... On Debian system I hard to do the following:

apt-get install -y libsm6 libxext6 libxrender-dev
pip3 install opencv-python
python3 -c "import cv2"
user3719458
  • 346
  • 3
  • 12
1

On Ubuntu you can install it for the system Python with

sudo apt install python3-opencv
Boris Verkhovskiy
  • 14,854
  • 11
  • 100
  • 103
1

Installing cv2 or opencv-python using pip is sometimes a problem. I was having the same problem of installing cv2 with pip. The installation wasn't a problem the problem was to import cv2 after installation. I was getting an Import Error so to fix this i import main from pip to install opencv-python. Try to run the following code in your python file then opencv-python will be installed

from pip._internal import main as install
try:
    import cv2
except ImportError as e:
    install(["install", "opencv-python"])
finally:
    pass

I hope this will help someone

crispengari
  • 7,901
  • 7
  • 45
  • 53
0

if you are using Pycharm navigate settings > Project:name > Project interpreter just search the module by name(in this case OpenCV-python) and install it. worked for me

  • How that actually installs the library depends on which package management tool you're using, and this can be done from the command line. – AMC Apr 16 '20 at 01:41
0

In case you use aarch64 platform with ARM64 cpu - and/or docker

On a development board on ARM64, no python-opencv version were found at all

version: NONE. I've had to build from source. This allowed to include CUDA support.

In my case it was already available on the board but it wasn't found on the development environment.

If compiling from source is out of reach, there are Dockers

Of course compiling will take some time (few hours on ARM core), but it is worthy process to know as most open source tools can be built this way in case of issues.

Alsushi
  • 373
  • 3
  • 14
0

Recent answer from Aug, 2023

https://pypi.org/project/opencv-contrib-python/#description

Note: The pip package is maintained by OpenCV

As mentioned in the official documentation:

a. Packages for standard desktop environments (Windows, macOS, almost any GNU/Linux distribution)

Option 1 - Main modules package: pip install opencv-python

Option 2 - Full package (contains both main modules and contrib/extra modules): pip install opencv-contrib-python (check contrib/extra modules listing from OpenCV documentation)

Do not install both since this might lead to conflicts!

el psy Congroo
  • 354
  • 1
  • 4
  • 19
-1

I've had this problem in Google Colab, It only worked with this specific package version.

!pip install "opencv-python-headless<4.3"
L3xpert
  • 1,109
  • 1
  • 10
  • 19
-5

There are two options-

pip install cv2 

or

pip install opencv-python

Hope it helps.