Skip to content

Instantly share code, notes, and snippets.

@vatsan
Last active December 16, 2015 19:11
Show Gist options
  • Save vatsan/dacd940fb9c46b6afb1e to your computer and use it in GitHub Desktop.
Save vatsan/dacd940fb9c46b6afb1e to your computer and use it in GitHub Desktop.
Installing OpenCV with Python support on a Mac
0) Get Anaconda Python
1) Download CMake for Mac and ensure you add the command line binaries to your PATH (sudo "/Applications/CMake.app/Contents/bin/cmake-gui" --install)
2) Download OpenCV
3) cd into the OpenCV director and run `mkdir build`
4) cd into the `build` director you just created and run the following:
Make sure you update the path to your own installation of Anaconda (i.e. replace "sramanujam" in the following with your user name).
cmake ../ -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_EXAMPLES=ON -DBUILD_NEW_PYTHON_SUPPORT=ON -DINSTALL_PYTHON_EXAMPLES=ON -DPYTHON_EXECUTABLE=/Users/sramanujam/anaconda/bin/python -DPYTHON_INCLUDE_DIR=/Users/sramanujam/anaconda/include/python2.7/ -DPYTHON_LIBRARY=/Users/sramanujam/anaconda/lib/libpython2.7.dylib -DPYTHON_NUMPY_INCLUDE_DIR=/Users/sramanujam/anaconda/lib/python2.7/site-packages/numpy/core/include/ -DPYTHON_PACKAGES_PATH=/Users/sramanujam/anaconda/lib/python2.7/site-packages/ -DBUILD_PYTHON_SUPPORT=ON
You should see the following in the console log which confirms that Python module will be build:
-- To be built: hal core flann imgproc ml photo video imgcodecs shape videoio highgui objdetect superres ts features2d calib3d stitching videostab python2
5) Run: make; sudo make install
6) Switch to the Python directory (OPENCV_HOME/build/modules/python2) and run:
make
sudo make install
This will install cv2.so in your Python's site-packages directory
7) Open up your Python REPL and import cv2, it should work
Here's a sample log (of the last couple of steps):
sramanujam@srivatsan-ramanujams-macbook-pro:~/Downloads/opencv-3.0.0/build|
⇒ cd modules
sramanujam@srivatsan-ramanujams-macbook-pro:~/Downloads/opencv-3.0.0/build/modules|
⇒ ls
CMakeFiles cudacodec cudastereo imgcodecs python2 videostab
Makefile cudafeatures2d cudawarping imgproc shape viz
calib3d cudafilters cudev java stitching world
cmake_install.cmake cudaimgproc features2d ml superres
core cudalegacy flann objdetect ts
cudaarithm cudaobjdetect hal photo video
cudabgsegm cudaoptflow highgui python videoio
sramanujam@srivatsan-ramanujams-macbook-pro:~/Downloads/opencv-3.0.0/build/modules|
⇒ cd python2
sramanujam@srivatsan-ramanujams-macbook-pro:~/Downloads/opencv-3.0.0/build/modules/python2|
⇒ ls
CMakeFiles headers.txt pyopencv_generated_ns_reg.h
Makefile pyopencv_generated_funcs.h pyopencv_generated_type_reg.h
cmake_install.cmake pyopencv_generated_include.h pyopencv_generated_types.h
sramanujam@srivatsan-ramanujams-macbook-pro:~/Downloads/opencv-3.0.0/build/modules/python2|
⇒ make
[ 2%] Built target opencv_hal
[ 7%] Built target zlib
[ 15%] Built target opencv_core
[ 23%] Built target opencv_imgproc
[ 25%] Built target opencv_video
[ 28%] Built target opencv_ml
[ 35%] Built target libtiff
[ 46%] Built target libjpeg
[ 53%] Built target libwebp
[ 58%] Built target libjasper
[ 61%] Built target libpng
[ 74%] Built target IlmImf
[ 76%] Built target opencv_imgcodecs
[ 79%] Built target opencv_videoio
[ 79%] Built target opencv_highgui
[ 79%] Built target opencv_objdetect
[ 79%] Built target opencv_flann
[ 84%] Built target opencv_features2d
[ 89%] Built target opencv_calib3d
[ 92%] Built target opencv_stitching
[ 92%] Built target opencv_superres
[ 92%] Built target opencv_shape
[ 97%] Built target opencv_photo
[100%] Built target opencv_videostab
[100%] Built target opencv_python2
sramanujam@srivatsan-ramanujams-macbook-pro:~/Downloads/opencv-3.0.0/build/modules/python2|
⇒ sudo make install
[ 2%] Built target opencv_hal
[ 7%] Built target zlib
[ 15%] Built target opencv_core
[ 23%] Built target opencv_imgproc
[ 25%] Built target opencv_video
[ 28%] Built target opencv_ml
[ 35%] Built target libtiff
[ 46%] Built target libjpeg
[ 53%] Built target libwebp
[ 58%] Built target libjasper
[ 61%] Built target libpng
[ 74%] Built target IlmImf
[ 76%] Built target opencv_imgcodecs
[ 79%] Built target opencv_videoio
[ 79%] Built target opencv_highgui
[ 79%] Built target opencv_objdetect
[ 79%] Built target opencv_flann
[ 84%] Built target opencv_features2d
[ 89%] Built target opencv_calib3d
[ 92%] Built target opencv_stitching
[ 92%] Built target opencv_superres
[ 92%] Built target opencv_shape
[ 97%] Built target opencv_photo
[100%] Built target opencv_videostab
[100%] Built target opencv_python2
Install the project...
-- Install configuration: "RELEASE"
-- Installing: /usr/local/lib/python2.7/site-packages/cv2.so
sramanujam@srivatsan-ramanujams-macbook-pro:~/Downloads/opencv-3.0.0/build/modules/python2|
⇒ python
Python 2.7.11 |Anaconda 2.2.0 (x86_64)| (default, Dec 6 2015, 18:57:58)
[GCC 4.2.1 (Apple Inc. build 5577)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://anaconda.org
>>> import cv2
>>>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment