8

Is it possible to install OpenCV 3.0, opencv python on Raspberry pi b+? How to install and are there any precompiled binaries available ?

2 Answers 2

12

Last night I've just built version 3.0.0-beta on the B version. It should be the same in a B+.

Below are the steps that I've done to build it from the source (adapted from: http://robertcastle.com/2014/02/installing-opencv-on-a-raspberry-pi/). Hope it helps.

Make sure your system is up-to-date. Run:

sudo apt-get update
sudo apt-get upgrade
sudo rpi-update

Next install required dependencies:

sudo apt-get install build-essential cmake cmake-curses-gui \
                               pkg-config libpng12-0 libpng12-dev libpng++-dev \
                               libpng3 libpnglite-dev zlib1g-dbg zlib1g zlib1g-dev \
                               pngtools libtiff4-dev libtiff4 libtiffxx0c2 libtiff-tools libeigen3-dev
sudo apt-get install libjpeg8 libjpeg8-dev libjpeg8-dbg libjpeg-progs \
                               ffmpeg libavcodec-dev libavcodec53 libavformat53 \
                               libavformat-dev libxine1-ffmpeg libxine-dev libxine1-bin \
                               libunicap2 libunicap2-dev swig libv4l-0 libv4l-dev \
                               python-numpy libpython2.6 python-dev python2.6-dev libgtk2.0-dev

Now the interesting part, change to a directory to put the sources and compile OpenCV.

cd /home/pi/builds/
git clone https://github.com/Itseez/opencv.git
cd opencv/
git checkout tags/3.0.0-beta
mkdir release
cd release/
ccmake ../

Press c to start the configuration process. You may toggle some options if you like, my final options are below. If you change any option press c again to configure. Now press g to generate the Makefile. Now continue the build process, notice that the make command will take several hours (it took 7h on my raspberry pi B model).

make
sudo make install
sudo ldconfig

Here are the options settings used in the configuration step:

 ANT_EXECUTABLE                   ANT_EXECUTABLE-NOTFOUND                                       
 BUILD_CUDA_STUBS                 OFF                                                           
 BUILD_DOCS                       ON                                                            
 BUILD_EXAMPLES                   OFF                                                           
 BUILD_JASPER                     OFF                                                           
 BUILD_JPEG                       OFF                                                           
 BUILD_OPENEXR                    OFF                                                           
 BUILD_PACKAGE                    ON                                                            
 BUILD_PERF_TESTS                 ON                                                            
 BUILD_PNG                        OFF                                                           
 BUILD_SHARED_LIBS                ON                                                            
 BUILD_TBB                        OFF                                                           
 BUILD_TESTS                      ON                                                            
 BUILD_TIFF                       OFF                                                           
 BUILD_WITH_DEBUG_INFO            ON                                                            
 BUILD_ZLIB                       OFF                                                           
 BUILD_opencv_apps                ON                                                            
 BUILD_opencv_calib3d             ON                                                            
 BUILD_opencv_core                ON                                                            
 BUILD_opencv_features2d          ON                                                            
 BUILD_opencv_flann               ON                                                            
 BUILD_opencv_highgui             ON                                                            
 BUILD_opencv_imgcodecs           ON                                                            
 BUILD_opencv_imgproc             ON                                                            
 BUILD_opencv_ml                  ON                                                            
 BUILD_opencv_objdetect           ON                                                            
 BUILD_opencv_photo               ON                                                            
 BUILD_opencv_shape               ON                                                            
 BUILD_opencv_stitching           ON                                                            
 BUILD_opencv_superres            ON                                                            
 BUILD_opencv_ts                  ON                                                            
 BUILD_opencv_video               ON                                                            
 BUILD_opencv_videoio             ON                                                            
 BUILD_opencv_videostab           ON                                                            
 BUILD_opencv_world               OFF                                                           
 BZIP2_LIBRARIES                  /usr/lib/arm-linux-gnueabihf/libbz2.so                        
 CLAMDBLAS_INCLUDE_DIR            CLAMDBLAS_INCLUDE_DIR-NOTFOUND                                
 CLAMDBLAS_ROOT_DIR               CLAMDBLAS_ROOT_DIR-NOTFOUND                                   
 CLAMDFFT_INCLUDE_DIR             CLAMDFFT_INCLUDE_DIR-NOTFOUND                                 
 CLAMDFFT_ROOT_DIR                CLAMDFFT_ROOT_DIR-NOTFOUND                                    
 CMAKE_BUILD_TYPE                                                                               
 CMAKE_CONFIGURATION_TYPES        Debug;Release                                                 
 CMAKE_INSTALL_PREFIX             /usr/local                                                    
 CUDA_BUILD_CUBIN                 OFF                                                           
 CUDA_BUILD_EMULATION             OFF                                                           
 CUDA_HOST_COMPILER               /usr/bin/gcc                                                  
 CUDA_SDK_ROOT_DIR                CUDA_SDK_ROOT_DIR-NOTFOUND                                    
 CUDA_SEPARABLE_COMPILATION       OFF                                                           
 CUDA_TOOLKIT_ROOT_DIR            CUDA_TOOLKIT_ROOT_DIR-NOTFOUND                                
 CUDA_VERBOSE_BUILD               OFF                                                           
 DOXYGEN_BUILD                    DOXYGEN_BUILD-NOTFOUND                                        
 EIGEN_INCLUDE_PATH               /usr/include/eigen3                                           
 ENABLE_COVERAGE                  OFF                                                           
 ENABLE_IMPL_COLLECTION           OFF                                                           
 ENABLE_NEON                      OFF                                                           
 ENABLE_NOISY_WARNINGS            OFF                                                           
 ENABLE_OMIT_FRAME_POINTER        ON                                                            
 ENABLE_PRECOMPILED_HEADERS       ON                                                            
 ENABLE_PROFILING                 OFF                                                           
 ENABLE_SOLUTION_FOLDERS          OFF                                                           
 ENABLE_VFPV3                     OFF                                                           
 EXECUTABLE_OUTPUT_PATH           /home/pi/builds/opencv/release/bin                            
 GIGEAPI_INCLUDE_PATH             GIGEAPI_INCLUDE_PATH-NOTFOUND                                 
 GIGEAPI_LIBRARIES                GIGEAPI_LIBRARIES-NOTFOUND                                    
 INSTALL_CREATE_DISTRIB           OFF                                                           
 INSTALL_C_EXAMPLES               OFF                                                           
 INSTALL_PYTHON_EXAMPLES          OFF                                                           
 INSTALL_TESTS                    OFF                                                           
 INSTALL_TO_MANGLED_PATHS         OFF                                                           
 OPENCV_CONFIG_FILE_INCLUDE_DIR   /home/pi/builds/opencv/release                                
 OPENCV_EXTRA_MODULES_PATH                                                                      
 OPENCV_WARNINGS_ARE_ERRORS       OFF                                                           
 OPENEXR_INCLUDE_PATH             /usr/include/OpenEXR                                          
 PLANTUML                         PLANTUML-NOTFOUND                                             
 PVAPI_INCLUDE_PATH               PVAPI_INCLUDE_PATH-NOTFOUND                                   
 PYTHON2_EXECUTABLE               /usr/bin/python2.7                                            
 PYTHON2_INCLUDE_DIR                                                                            
 PYTHON2_INCLUDE_DIR2                                                                           
 PYTHON2_LIBRARY                                                                                
 PYTHON2_LIBRARY_DEBUG                                                                          
 PYTHON2_NUMPY_INCLUDE_DIRS       /usr/lib/pymodules/python2.7/numpy/core/include               
 PYTHON2_PACKAGES_PATH            lib/python2.7/dist-packages                                   
 PYTHON3_EXECUTABLE               /usr/bin/python3                                              
 PYTHON3_INCLUDE_DIR                                                                            
 PYTHON3_INCLUDE_DIR2                                                                           
 PYTHON3_LIBRARY                                                                                
 PYTHON3_LIBRARY_DEBUG                                                                          
 PYTHON3_NUMPY_INCLUDE_DIRS       /usr/lib/python3/dist-packages/numpy/core/include             
 PYTHON3_PACKAGES_PATH            lib/python3.2/dist-packages                                   
 SPHINX_BUILD                     SPHINX_BUILD-NOTFOUND                                         
 VTK_DIR                          VTK_DIR-NOTFOUND                                              
 WEBP_INCLUDE_DIR                 WEBP_INCLUDE_DIR-NOTFOUND                                     
 WITH_1394                        ON                                                            
 WITH_CLP                         OFF                                                           
 WITH_CUBLAS                      OFF                                                           
 WITH_CUDA                        ON                                                            
 WITH_CUFFT                       ON                                                            
 WITH_EIGEN                       ON                                                            
 WITH_FFMPEG                      ON                                                            
 WITH_GDAL                        OFF                                                           
 WITH_GIGEAPI                     ON                                                            
 WITH_GSTREAMER                   ON                                                            
 WITH_GSTREAMER_0_10              OFF                                                           
 WITH_GTK                         ON                                                            
 WITH_GTK_2_X                     OFF                                                           
 WITH_JASPER                      ON                                                            
 WITH_JPEG                        ON                                                            
 WITH_LIBV4L                      ON                                                            
 WITH_NVCUVID                     OFF                                                           
 WITH_OPENCL                      ON                                                            
 WITH_OPENCLAMDBLAS               ON                                                            
 WITH_OPENCLAMDFFT                ON                                                            
 WITH_OPENEXR                     ON                                                            
 WITH_OPENGL                      ON                                                            
 WITH_OPENMP                      OFF                                                           
 WITH_OPENNI                      OFF                                                           
 WITH_OPENNI2                     OFF                                                           
 WITH_PNG                         ON                                                            
 WITH_PVAPI                       ON                                                            
 WITH_QT                          OFF                                                           
 WITH_TBB                         OFF                                                           
 WITH_TIFF                        ON                                                            
 WITH_UNICAP                      OFF                                                           
 WITH_V4L                         ON                                                            
 WITH_VTK                         ON                                                            
 WITH_WEBP                        ON                                                            
 WITH_XIMEA                       OFF                                                           
 WITH_XINE                        OFF                                                           
2
  • Can you share the cv2.so I couldn't install opencv and I don't know why
    – user27348
    Commented Feb 23, 2015 at 14:37
  • Unfortunately I've uninstalled version 3. I wanted to use it together with GStreamer, but GStreamer does not yet support v3. Sorry :\ Commented Feb 24, 2015 at 21:22
10

When compiling according to Miguel's answer, do it with a

    >> make -j4

On the raspberry pi 2-B / B-2 model this may speed up the compilation significantly as use of all cores is made.

NOTE: If you get an error while compiling with this option, just use

make

to fix it.

Not the answer you're looking for? Browse other questions tagged or ask your own question.