├── LICENSE ├── README.md ├── OpenCV-4-5-5.sh ├── OpenCV-4-6-0.sh ├── OpenCV-4-7-0.sh ├── OpenCV-4-9-0.sh ├── OpenCV-4-8-0.sh ├── OpenCV-4-5-0.sh ├── OpenCV-4-10-0.sh ├── OpenCV-4-11-0.sh ├── OpenCV-4-13-0.sh └── OpenCV-4-12-0.sh /LICENSE: -------------------------------------------------------------------------------- 1 | BSD 3-Clause License 2 | 3 | Copyright (c) 2021, Q-engineering 4 | All rights reserved. 5 | 6 | Redistribution and use in source and binary forms, with or without 7 | modification, are permitted provided that the following conditions are met: 8 | 9 | 1. Redistributions of source code must retain the above copyright notice, this 10 | list of conditions and the following disclaimer. 11 | 12 | 2. Redistributions in binary form must reproduce the above copyright notice, 13 | this list of conditions and the following disclaimer in the documentation 14 | and/or other materials provided with the distribution. 15 | 16 | 3. Neither the name of the copyright holder nor the names of its 17 | contributors may be used to endorse or promote products derived from 18 | this software without specific prior written permission. 19 | 20 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 21 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 23 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 24 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 26 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 27 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 28 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 29 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Install-OpenCV-Raspberry-Pi-32-bits 2 | ![output image]( https://qengineering.eu/images/LogoOpenRaspberryGitHub.webp ) 3 | 4 | ## OpenCV installation script for a Raspberry Pi with 32-bits OS 5 | 6 | [![License](https://img.shields.io/badge/License-BSD%203--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)
7 | 8 | This is the full setup of OpenCV for the Raspberry Pi 32-bits.
9 | For more information see [Q-engineering - Install OpenCV Raspberry Pi](https://qengineering.eu/install-opencv-4.5-on-raspberry-pi-4.html) 10 | 11 | ------------ 12 | 13 | ## Installing OpenCV. 14 | You must have allocated enough memory, otherwise the compilation, unfortunately, crashes after 2 hours at 100% 15 | ``` 16 | # check your total memory (RAM + swap) first. You need at least a total of: 17 | # OpenCV 4.13.0 -> 6.5 GB! 18 | # OpenCV 4.12.0 -> 6.5 GB! 19 | # OpenCV 4.11.0 -> 6.5 GB! 20 | # OpenCV 4.10.0 -> 6.5 GB! 21 | # OpenCV 4.9.0 -> 6.5 GB! 22 | # OpenCV 4.8.0 -> 6.5 GB! 23 | # OpenCV 4.7.0 -> 6.5 GB! 24 | # OpenCV 4.6.0 -> 6.5 GB! 25 | # OpenCV 4.5.5 -> 6.5 GB! 26 | # OpenCV 4.5.0 -> 5.5 GB 27 | # if not, enlarge your swap space as explained in the guide 28 | $ free -m 29 | 30 | $ wget https://github.com/Qengineering/Install-OpenCV-Raspberry-Pi-32-bits/raw/main/OpenCV-4-10-0.sh 31 | $ sudo chmod 755 ./OpenCV-4-10-0.sh 32 | $ ./OpenCV-4-10-0.sh 33 | ``` 34 | :point_right: Don't forget to reset your swap memory afterwards. 35 | 36 | ------------ 37 | 38 | If you want to beautify OpenCV with the Qt5 GUI you need to 39 | ``` 40 | # Bookworm 41 | - $ sudo apt-get install qtbase5-dev 42 | # Other OS 43 | - $ sudo apt-get install qt5-default 44 | 45 | # in the cmake list 46 | - Set the -D WITH_QT=**ON** \ (± line 54) in the script 47 | ``` 48 | before running the script on your RPi 49 | 50 | ------------ 51 | 52 | OpenCV will be installed to the `/usr/local` directory, all files will be copied to following locations:
53 | 54 | - `/usr/local/bin` - executable files
55 | - `/usr/local/lib` - libraries (.so)
56 | - `/usr/local/lib/cmake/opencv4` - cmake package
57 | - `/usr/local/include/opencv4` - headers
58 | - `/usr/local/share/opencv4` - other files (e.g. trained cascades in XML format)
59 | 60 | ------------ 61 | 62 | [![paypal](https://qengineering.eu/images/TipJarSmall4.png)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=CPZTM5BB3FCYL) 63 | 64 | 65 | -------------------------------------------------------------------------------- /OpenCV-4-5-5.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | install_opencv () { 4 | echo "" 5 | case `cat /etc/debian_version` in 6 | 10*) echo "Detecting Debian 10, Buster. " 7 | ;; 8 | 11*) echo "Detecting Debian 11, Bullseye. " 9 | ;; 10 | 12*) echo "Detecting Debian 12, Bookworm. " 11 | ;; 12 | esac 13 | echo "" 14 | echo "Installing OpenCV 4.5.5" 15 | echo "It will take minimal 2.0 hour !" 16 | cd ~ 17 | # install the dependencies 18 | sudo apt-get install -y build-essential cmake git unzip pkg-config 19 | sudo apt-get install -y libjpeg-dev libtiff-dev libpng-dev 20 | sudo apt-get install -y libavcodec-dev libavformat-dev libswscale-dev 21 | sudo apt-get install -y libgtk2.0-dev libcanberra-gtk* libgtk-3-dev 22 | sudo apt-get install -y libgstreamer1.0-dev gstreamer1.0-gtk3 23 | sudo apt-get install -y libgstreamer-plugins-base1.0-dev gstreamer1.0-gl 24 | sudo apt-get install -y libxvidcore-dev libx264-dev 25 | #get python 26 | case `cat /etc/debian_version` in 27 | 10*) sudo apt-get install -y python-dev python-numpy python-pip 28 | ;; 29 | 11*) 30 | ;; 31 | 12*) 32 | ;; 33 | esac 34 | sudo apt-get install -y python3-dev python3-numpy python3-pip 35 | sudo apt-get install -y libtbb2 libtbb-dev libdc1394-22-dev 36 | sudo apt-get install -y libv4l-dev v4l-utils 37 | sudo apt-get install -y libopenblas-dev libatlas-base-dev libblas-dev 38 | sudo apt-get install -y liblapack-dev gfortran libhdf5-dev 39 | sudo apt-get install -y libprotobuf-dev libgoogle-glog-dev libgflags-dev 40 | sudo apt-get install -y protobuf-compiler 41 | 42 | # download the latest version 43 | cd ~ 44 | sudo rm -rf opencv* 45 | wget -O opencv.zip https://github.com/opencv/opencv/archive/4.5.5.zip 46 | wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.5.5.zip 47 | # unpack 48 | unzip opencv.zip 49 | unzip opencv_contrib.zip 50 | # some administration to make live easier later on 51 | mv opencv-4.5.5 opencv 52 | mv opencv_contrib-4.5.5 opencv_contrib 53 | # clean up the zip files 54 | rm opencv.zip 55 | rm opencv_contrib.zip 56 | 57 | # set install dir 58 | cd ~/opencv 59 | mkdir build 60 | cd build 61 | 62 | # run cmake 63 | cmake -D CMAKE_BUILD_TYPE=RELEASE \ 64 | -D CMAKE_INSTALL_PREFIX=/usr/local \ 65 | -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \ 66 | -D ENABLE_NEON=ON \ 67 | -D WITH_OPENMP=ON \ 68 | -D WITH_OPENCL=OFF \ 69 | -D BUILD_TIFF=ON \ 70 | -D WITH_FFMPEG=ON \ 71 | -D WITH_TBB=ON \ 72 | -D BUILD_TBB=ON \ 73 | -D WITH_GSTREAMER=ON \ 74 | -D BUILD_TESTS=OFF \ 75 | -D WITH_EIGEN=OFF \ 76 | -D WITH_V4L=ON \ 77 | -D WITH_LIBV4L=ON \ 78 | -D WITH_VTK=OFF \ 79 | -D WITH_QT=ON \ 80 | -D OPENCV_ENABLE_NONFREE=ON \ 81 | -D INSTALL_C_EXAMPLES=OFF \ 82 | -D INSTALL_PYTHON_EXAMPLES=OFF \ 83 | -D OPENCV_FORCE_LIBATOMIC_COMPILER_CHECK=1 \ 84 | -D PYTHON3_PACKAGES_PATH=/usr/lib/python3/dist-packages \ 85 | -D OPENCV_GENERATE_PKGCONFIG=ON \ 86 | -D BUILD_EXAMPLES=OFF .. 87 | 88 | # run make 89 | make -j4 90 | sudo make install 91 | sudo ldconfig 92 | 93 | # cleaning (frees 300 MB) 94 | make clean 95 | sudo apt-get update 96 | 97 | echo "Congratulations!" 98 | echo "You've successfully installed OpenCV 4.5.5 on your Raspberry Pi 32-bit OS" 99 | } 100 | 101 | cd ~ 102 | if [ -d ~/opencv/build ]; then 103 | echo " " 104 | echo "You have a directory ~/opencv/build on your disk." 105 | echo "Continuing the installation will replace this folder." 106 | echo " " 107 | 108 | printf "Do you wish to continue (Y/n)?" 109 | read answer 110 | 111 | if [ "$answer" != "${answer#[Nn]}" ] ;then 112 | echo "Leaving without installing OpenCV" 113 | else 114 | install_opencv 115 | fi 116 | else 117 | install_opencv 118 | fi 119 | 120 | -------------------------------------------------------------------------------- /OpenCV-4-6-0.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | install_opencv () { 4 | echo "" 5 | case `cat /etc/debian_version` in 6 | 10*) echo "Detecting Debian 10, Buster. " 7 | ;; 8 | 11*) echo "Detecting Debian 11, Bullseye. " 9 | ;; 10 | 12*) echo "Detecting Debian 12, Bookworm. " 11 | ;; 12 | esac 13 | echo "" 14 | echo "Installing OpenCV 4.6.0" 15 | echo "It will take minimal 2.0 hour !" 16 | cd ~ 17 | # install the dependencies 18 | sudo apt-get install -y build-essential cmake git unzip pkg-config 19 | sudo apt-get install -y libjpeg-dev libtiff-dev libpng-dev 20 | sudo apt-get install -y libavcodec-dev libavformat-dev libswscale-dev 21 | sudo apt-get install -y libgtk2.0-dev libcanberra-gtk* libgtk-3-dev 22 | sudo apt-get install -y libgstreamer1.0-dev gstreamer1.0-gtk3 23 | sudo apt-get install -y libgstreamer-plugins-base1.0-dev gstreamer1.0-gl 24 | sudo apt-get install -y libxvidcore-dev libx264-dev 25 | #get python 26 | case `cat /etc/debian_version` in 27 | 10*) sudo apt-get install -y python-dev python-numpy python-pip 28 | ;; 29 | 11*) 30 | ;; 31 | 12*) 32 | ;; 33 | esac 34 | sudo apt-get install -y python3-dev python3-numpy python3-pip 35 | sudo apt-get install -y libtbb2 libtbb-dev libdc1394-22-dev 36 | sudo apt-get install -y libv4l-dev v4l-utils 37 | sudo apt-get install -y libopenblas-dev libatlas-base-dev libblas-dev 38 | sudo apt-get install -y liblapack-dev gfortran libhdf5-dev 39 | sudo apt-get install -y libprotobuf-dev libgoogle-glog-dev libgflags-dev 40 | sudo apt-get install -y protobuf-compiler 41 | 42 | # download the latest version 43 | cd ~ 44 | sudo rm -rf opencv* 45 | wget -O opencv.zip https://github.com/opencv/opencv/archive/4.6.0.zip 46 | wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.6.0.zip 47 | # unpack 48 | unzip opencv.zip 49 | unzip opencv_contrib.zip 50 | # some administration to make live easier later on 51 | mv opencv-4.6.0 opencv 52 | mv opencv_contrib-4.6.0 opencv_contrib 53 | # clean up the zip files 54 | rm opencv.zip 55 | rm opencv_contrib.zip 56 | 57 | # set install dir 58 | cd ~/opencv 59 | mkdir build 60 | cd build 61 | 62 | # run cmake 63 | cmake -D CMAKE_BUILD_TYPE=RELEASE \ 64 | -D CMAKE_INSTALL_PREFIX=/usr/local \ 65 | -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \ 66 | -D ENABLE_NEON=ON \ 67 | -D WITH_OPENMP=ON \ 68 | -D WITH_OPENCL=OFF \ 69 | -D BUILD_TIFF=ON \ 70 | -D WITH_FFMPEG=ON \ 71 | -D WITH_TBB=ON \ 72 | -D BUILD_TBB=ON \ 73 | -D WITH_GSTREAMER=ON \ 74 | -D BUILD_TESTS=OFF \ 75 | -D WITH_EIGEN=OFF \ 76 | -D WITH_V4L=ON \ 77 | -D WITH_LIBV4L=ON \ 78 | -D WITH_VTK=OFF \ 79 | -D WITH_QT=ON \ 80 | -D OPENCV_ENABLE_NONFREE=ON \ 81 | -D INSTALL_C_EXAMPLES=OFF \ 82 | -D INSTALL_PYTHON_EXAMPLES=OFF \ 83 | -D OPENCV_FORCE_LIBATOMIC_COMPILER_CHECK=1 \ 84 | -D PYTHON3_PACKAGES_PATH=/usr/lib/python3/dist-packages \ 85 | -D OPENCV_GENERATE_PKGCONFIG=ON \ 86 | -D BUILD_EXAMPLES=OFF .. 87 | 88 | # run make 89 | make -j4 90 | sudo make install 91 | sudo ldconfig 92 | 93 | # cleaning (frees 300 MB) 94 | make clean 95 | sudo apt-get update 96 | 97 | echo "Congratulations!" 98 | echo "You've successfully installed OpenCV 4.6.0 on your Raspberry Pi 32-bit OS" 99 | } 100 | 101 | cd ~ 102 | if [ -d ~/opencv/build ]; then 103 | echo " " 104 | echo "You have a directory ~/opencv/build on your disk." 105 | echo "Continuing the installation will replace this folder." 106 | echo " " 107 | 108 | printf "Do you wish to continue (Y/n)?" 109 | read answer 110 | 111 | if [ "$answer" != "${answer#[Nn]}" ] ;then 112 | echo "Leaving without installing OpenCV" 113 | else 114 | install_opencv 115 | fi 116 | else 117 | install_opencv 118 | fi 119 | 120 | -------------------------------------------------------------------------------- /OpenCV-4-7-0.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | install_opencv () { 4 | echo "" 5 | case `cat /etc/debian_version` in 6 | 10*) echo "Detecting Debian 10, Buster. " 7 | ;; 8 | 11*) echo "Detecting Debian 11, Bullseye. " 9 | ;; 10 | 12*) echo "Detecting Debian 12, Bookworm. " 11 | ;; 12 | esac 13 | echo "" 14 | echo "Installing OpenCV 4.7.0 on your Raspberry Pi 32-bit OS" 15 | echo "It will take minimal 2.5 hour !" 16 | cd ~ 17 | # install the dependencies 18 | sudo apt-get install -y build-essential cmake git unzip pkg-config 19 | sudo apt-get install -y libjpeg-dev libtiff-dev libpng-dev 20 | sudo apt-get install -y libavcodec-dev libavformat-dev libswscale-dev 21 | sudo apt-get install -y libgtk2.0-dev libcanberra-gtk* libgtk-3-dev 22 | sudo apt-get install -y libgstreamer1.0-dev gstreamer1.0-gtk3 23 | sudo apt-get install -y libgstreamer-plugins-base1.0-dev gstreamer1.0-gl 24 | sudo apt-get install -y libxvidcore-dev libx264-dev 25 | #get python 26 | case `cat /etc/debian_version` in 27 | 10*) sudo apt-get install -y python-dev python-numpy python-pip 28 | ;; 29 | 11*) 30 | ;; 31 | 12*) 32 | ;; 33 | esac 34 | sudo apt-get install -y python3-dev python3-numpy python3-pip 35 | sudo apt-get install -y libtbb2 libtbb-dev libdc1394-22-dev 36 | sudo apt-get install -y libv4l-dev v4l-utils 37 | sudo apt-get install -y libopenblas-dev libatlas-base-dev libblas-dev 38 | sudo apt-get install -y liblapack-dev gfortran libhdf5-dev 39 | sudo apt-get install -y libprotobuf-dev libgoogle-glog-dev libgflags-dev 40 | sudo apt-get install -y protobuf-compiler 41 | 42 | # download the latest version 43 | cd ~ 44 | sudo rm -rf opencv* 45 | wget -O opencv.zip https://github.com/opencv/opencv/archive/4.7.0.zip 46 | wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.7.0.zip 47 | # unpack 48 | unzip opencv.zip 49 | unzip opencv_contrib.zip 50 | # Some administration to make life easier later on 51 | mv opencv-4.7.0 opencv 52 | mv opencv_contrib-4.7.0 opencv_contrib 53 | # clean up the zip files 54 | rm opencv.zip 55 | rm opencv_contrib.zip 56 | 57 | # set install dir 58 | cd ~/opencv 59 | mkdir build 60 | cd build 61 | 62 | # run cmake 63 | cmake -D CMAKE_BUILD_TYPE=RELEASE \ 64 | -D CMAKE_INSTALL_PREFIX=/usr/local \ 65 | -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \ 66 | -D ENABLE_NEON=ON \ 67 | -D WITH_OPENMP=ON \ 68 | -D WITH_OPENCL=OFF \ 69 | -D BUILD_TIFF=ON \ 70 | -D WITH_FFMPEG=ON \ 71 | -D WITH_TBB=ON \ 72 | -D BUILD_TBB=ON \ 73 | -D WITH_GSTREAMER=ON \ 74 | -D BUILD_TESTS=OFF \ 75 | -D WITH_EIGEN=OFF \ 76 | -D WITH_V4L=ON \ 77 | -D WITH_LIBV4L=ON \ 78 | -D WITH_VTK=OFF \ 79 | -D WITH_QT=ON \ 80 | -D OPENCV_ENABLE_NONFREE=ON \ 81 | -D INSTALL_C_EXAMPLES=OFF \ 82 | -D INSTALL_PYTHON_EXAMPLES=OFF \ 83 | -D OPENCV_FORCE_LIBATOMIC_COMPILER_CHECK=1 \ 84 | -D PYTHON3_PACKAGES_PATH=/usr/lib/python3/dist-packages \ 85 | -D OPENCV_GENERATE_PKGCONFIG=ON \ 86 | -D BUILD_EXAMPLES=OFF .. 87 | 88 | # run make 89 | make -j4 90 | sudo make install 91 | sudo ldconfig 92 | 93 | # cleaning (frees 320 MB) 94 | make clean 95 | sudo apt-get update 96 | 97 | echo "Congratulations!" 98 | echo "You've successfully installed OpenCV 4.7.0 on your Raspberry Pi 32-bit OS" 99 | } 100 | 101 | cd ~ 102 | 103 | if [ -d ~/opencv/build ]; then 104 | echo " " 105 | echo "You have a directory ~/opencv/build on your disk." 106 | echo "Continuing the installation will replace this folder." 107 | echo " " 108 | 109 | printf "Do you wish to continue (Y/n)?" 110 | read answer 111 | 112 | if [ "$answer" != "${answer#[Nn]}" ] ;then 113 | echo "Leaving without installing OpenCV" 114 | else 115 | install_opencv 116 | fi 117 | else 118 | install_opencv 119 | fi 120 | 121 | -------------------------------------------------------------------------------- /OpenCV-4-9-0.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | install_opencv () { 4 | echo "" 5 | case `cat /etc/debian_version` in 6 | 10*) echo "Detecting Debian 10, Buster. " 7 | ;; 8 | 11*) echo "Detecting Debian 11, Bullseye. " 9 | ;; 10 | 12*) echo "Detecting Debian 12, Bookworm. " 11 | ;; 12 | esac 13 | echo "" 14 | echo "Installing OpenCV 4.9.0 on your Raspberry Pi 32-bit OS" 15 | echo "It will take minimal 2.5 hour !" 16 | cd ~ 17 | # install the dependencies 18 | sudo apt-get install -y build-essential cmake git unzip pkg-config 19 | sudo apt-get install -y libjpeg-dev libtiff-dev libpng-dev 20 | sudo apt-get install -y libavcodec-dev libavformat-dev libswscale-dev 21 | sudo apt-get install -y libgtk2.0-dev libcanberra-gtk* libgtk-3-dev 22 | sudo apt-get install -y libgstreamer1.0-dev gstreamer1.0-gtk3 23 | sudo apt-get install -y libgstreamer-plugins-base1.0-dev gstreamer1.0-gl 24 | sudo apt-get install -y libxvidcore-dev libx264-dev 25 | #get python 26 | case `cat /etc/debian_version` in 27 | 10*) sudo apt-get install -y python-dev python-numpy python-pip 28 | ;; 29 | 11*) 30 | ;; 31 | 12*) 32 | ;; 33 | esac 34 | sudo apt-get install -y python3-dev python3-numpy python3-pip 35 | sudo apt-get install -y libtbb2 libtbb-dev libdc1394-22-dev 36 | sudo apt-get install -y libv4l-dev v4l-utils 37 | sudo apt-get install -y libopenblas-dev libatlas-base-dev libblas-dev 38 | sudo apt-get install -y liblapack-dev gfortran libhdf5-dev 39 | sudo apt-get install -y libprotobuf-dev libgoogle-glog-dev libgflags-dev 40 | sudo apt-get install -y protobuf-compiler 41 | 42 | # download the latest version 43 | cd ~ 44 | sudo rm -rf opencv* 45 | # download the 4.9.0 version 46 | wget -O opencv.zip https://github.com/opencv/opencv/archive/4.9.0.zip 47 | wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.9.0.zip 48 | # unpack 49 | unzip opencv.zip 50 | unzip opencv_contrib.zip 51 | # Some administration to make life easier later on 52 | mv opencv-4.9.0 opencv 53 | mv opencv_contrib-4.9.0 opencv_contrib 54 | # clean up the zip files 55 | rm opencv.zip 56 | rm opencv_contrib.zip 57 | 58 | # set install dir 59 | cd ~/opencv 60 | mkdir build 61 | cd build 62 | 63 | # run cmake 64 | cmake -D CMAKE_BUILD_TYPE=RELEASE \ 65 | -D CMAKE_INSTALL_PREFIX=/usr/local \ 66 | -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \ 67 | -D ENABLE_NEON=ON \ 68 | -D WITH_OPENMP=ON \ 69 | -D WITH_OPENCL=OFF \ 70 | -D BUILD_TIFF=ON \ 71 | -D WITH_FFMPEG=ON \ 72 | -D WITH_TBB=ON \ 73 | -D BUILD_TBB=ON \ 74 | -D WITH_GSTREAMER=ON \ 75 | -D BUILD_TESTS=OFF \ 76 | -D WITH_EIGEN=OFF \ 77 | -D WITH_V4L=ON \ 78 | -D WITH_LIBV4L=ON \ 79 | -D WITH_VTK=OFF \ 80 | -D WITH_QT=ON \ 81 | -D WITH_PROTOBUF=OFF \ 82 | -D OPENCV_ENABLE_NONFREE=ON \ 83 | -D INSTALL_C_EXAMPLES=OFF \ 84 | -D INSTALL_PYTHON_EXAMPLES=OFF \ 85 | -D OPENCV_FORCE_LIBATOMIC_COMPILER_CHECK=1 \ 86 | -D PYTHON3_PACKAGES_PATH=/usr/lib/python3/dist-packages \ 87 | -D OPENCV_GENERATE_PKGCONFIG=ON \ 88 | -D BUILD_EXAMPLES=OFF .. 89 | 90 | # run make 91 | make -j4 92 | sudo make install 93 | sudo ldconfig 94 | 95 | # cleaning (frees 320 MB) 96 | make clean 97 | sudo apt-get update 98 | 99 | echo "Congratulations!" 100 | echo "You've successfully installed OpenCV 4.9.0 on your Raspberry Pi 32-bit OS" 101 | } 102 | 103 | cd ~ 104 | if [ -d ~/opencv/build ]; then 105 | echo " " 106 | echo "You have a directory ~/opencv/build on your disk." 107 | echo "Continuing the installation will replace this folder." 108 | echo " " 109 | 110 | printf "Do you wish to continue (Y/n)?" 111 | read answer 112 | 113 | if [ "$answer" != "${answer#[Nn]}" ] ;then 114 | echo "Leaving without installing OpenCV" 115 | else 116 | install_opencv 117 | fi 118 | else 119 | install_opencv 120 | fi 121 | -------------------------------------------------------------------------------- /OpenCV-4-8-0.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | install_opencv () { 4 | echo "" 5 | case `cat /etc/debian_version` in 6 | 10*) echo "Detecting Debian 10, Buster. " 7 | ;; 8 | 11*) echo "Detecting Debian 11, Bullseye. " 9 | ;; 10 | 12*) echo "Detecting Debian 12, Bookworm. " 11 | ;; 12 | esac 13 | echo "" 14 | echo "Installing OpenCV 4.8.0 on your Raspberry Pi 32-bit OS" 15 | echo "It will take minimal 2.5 hour !" 16 | cd ~ 17 | # install the dependencies 18 | sudo apt-get install -y build-essential cmake git unzip pkg-config 19 | sudo apt-get install -y libjpeg-dev libtiff-dev libpng-dev 20 | sudo apt-get install -y libavcodec-dev libavformat-dev libswscale-dev 21 | sudo apt-get install -y libgtk2.0-dev libcanberra-gtk* libgtk-3-dev 22 | sudo apt-get install -y libgstreamer1.0-dev gstreamer1.0-gtk3 23 | sudo apt-get install -y libgstreamer-plugins-base1.0-dev gstreamer1.0-gl 24 | sudo apt-get install -y libxvidcore-dev libx264-dev 25 | #get python 26 | case `cat /etc/debian_version` in 27 | 10*) sudo apt-get install -y python-dev python-numpy python-pip 28 | ;; 29 | 11*) 30 | ;; 31 | 12*) 32 | ;; 33 | esac 34 | sudo apt-get install -y python3-dev python3-numpy python3-pip 35 | sudo apt-get install -y libtbb2 libtbb-dev libdc1394-22-dev 36 | sudo apt-get install -y libv4l-dev v4l-utils 37 | sudo apt-get install -y libopenblas-dev libatlas-base-dev libblas-dev 38 | sudo apt-get install -y liblapack-dev gfortran libhdf5-dev 39 | sudo apt-get install -y libprotobuf-dev libgoogle-glog-dev libgflags-dev 40 | sudo apt-get install -y protobuf-compiler 41 | 42 | # download the latest version 43 | cd ~ 44 | sudo rm -rf opencv* 45 | # download the 4.8.0 version 46 | wget -O opencv.zip https://github.com/opencv/opencv/archive/4.8.0.zip 47 | wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.8.0.zip 48 | # unpack 49 | unzip opencv.zip 50 | unzip opencv_contrib.zip 51 | # Some administration to make life easier later on 52 | mv opencv-4.8.0 opencv 53 | mv opencv_contrib-4.8.0 opencv_contrib 54 | # clean up the zip files 55 | rm opencv.zip 56 | rm opencv_contrib.zip 57 | 58 | # set install dir 59 | cd ~/opencv 60 | mkdir build 61 | cd build 62 | 63 | # run cmake 64 | cmake -D CMAKE_BUILD_TYPE=RELEASE \ 65 | -D CMAKE_INSTALL_PREFIX=/usr/local \ 66 | -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \ 67 | -D ENABLE_NEON=ON \ 68 | -D WITH_OPENMP=ON \ 69 | -D WITH_OPENCL=OFF \ 70 | -D BUILD_TIFF=ON \ 71 | -D WITH_FFMPEG=ON \ 72 | -D WITH_TBB=ON \ 73 | -D BUILD_TBB=ON \ 74 | -D WITH_GSTREAMER=ON \ 75 | -D BUILD_TESTS=OFF \ 76 | -D WITH_EIGEN=OFF \ 77 | -D WITH_V4L=ON \ 78 | -D WITH_LIBV4L=ON \ 79 | -D WITH_VTK=OFF \ 80 | -D WITH_QT=ON \ 81 | -D WITH_PROTOBUF=OFF \ 82 | -D OPENCV_ENABLE_NONFREE=ON \ 83 | -D INSTALL_C_EXAMPLES=OFF \ 84 | -D INSTALL_PYTHON_EXAMPLES=OFF \ 85 | -D OPENCV_FORCE_LIBATOMIC_COMPILER_CHECK=1 \ 86 | -D PYTHON3_PACKAGES_PATH=/usr/lib/python3/dist-packages \ 87 | -D OPENCV_GENERATE_PKGCONFIG=ON \ 88 | -D BUILD_EXAMPLES=OFF .. 89 | 90 | # run make 91 | make -j4 92 | sudo make install 93 | sudo ldconfig 94 | 95 | # cleaning (frees 320 MB) 96 | make clean 97 | sudo apt-get update 98 | 99 | echo "Congratulations!" 100 | echo "You've successfully installed OpenCV 4.8.0 on your Raspberry Pi 32-bit OS" 101 | } 102 | 103 | cd ~ 104 | if [ -d ~/opencv/build ]; then 105 | echo " " 106 | echo "You have a directory ~/opencv/build on your disk." 107 | echo "Continuing the installation will replace this folder." 108 | echo " " 109 | 110 | printf "Do you wish to continue (Y/n)?" 111 | read answer 112 | 113 | if [ "$answer" != "${answer#[Nn]}" ] ;then 114 | echo "Leaving without installing OpenCV" 115 | else 116 | install_opencv 117 | fi 118 | else 119 | install_opencv 120 | fi 121 | 122 | -------------------------------------------------------------------------------- /OpenCV-4-5-0.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | install_opencv () { 4 | echo "" 5 | case `cat /etc/debian_version` in 6 | 10*) echo "Detecting Debian 10, Buster. " 7 | ;; 8 | 11*) echo "Detecting Debian 11, Bullseye. " 9 | ;; 10 | 12*) echo "Detecting Debian 12, Bookworm. " 11 | ;; 12 | esac 13 | echo "" 14 | echo "Installing OpenCV 4.5.0" 15 | echo "It will take minimal 1.5 hour !" 16 | cd ~ 17 | # install the dependencies 18 | sudo apt-get install -y build-essential cmake git unzip pkg-config 19 | sudo apt-get install -y libjpeg-dev libtiff-dev libpng-dev 20 | sudo apt-get install -y libavcodec-dev libavformat-dev libswscale-dev 21 | sudo apt-get install -y libgtk2.0-dev libcanberra-gtk* libgtk-3-dev 22 | sudo apt-get install -y libgstreamer1.0-dev gstreamer1.0-gtk3 23 | sudo apt-get install -y libgstreamer-plugins-base1.0-dev gstreamer1.0-gl 24 | sudo apt-get install -y libxvidcore-dev libx264-dev 25 | #get python 26 | case `cat /etc/debian_version` in 27 | 10*) sudo apt-get install -y python-dev python-numpy python-pip 28 | ;; 29 | 11*) 30 | ;; 31 | 12*) 32 | ;; 33 | esac 34 | sudo apt-get install -y python3-dev python3-numpy python3-pip 35 | sudo apt-get install -y libtbb2 libtbb-dev libdc1394-22-dev 36 | sudo apt-get install -y libv4l-dev v4l-utils 37 | sudo apt-get install -y libopenblas-dev libatlas-base-dev libblas-dev 38 | sudo apt-get install -y liblapack-dev gfortran libhdf5-dev 39 | sudo apt-get install -y libprotobuf-dev libgoogle-glog-dev libgflags-dev 40 | sudo apt-get install -y protobuf-compiler 41 | 42 | # remove old versions 43 | cd ~ 44 | sudo rm -rf opencv* 45 | # download OpenCV 46 | wget -O opencv.zip https://github.com/opencv/opencv/archive/4.5.0.zip 47 | wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.5.0.zip 48 | # unpack 49 | unzip opencv.zip 50 | unzip opencv_contrib.zip 51 | # some administration to make live easier later on 52 | mv opencv-4.5.0 opencv 53 | mv opencv_contrib-4.5.0 opencv_contrib 54 | # clean up the zip files 55 | rm opencv.zip 56 | rm opencv_contrib.zip 57 | 58 | # set install dir 59 | cd ~/opencv 60 | mkdir build 61 | cd build 62 | 63 | # run cmake 64 | cmake -D CMAKE_BUILD_TYPE=RELEASE \ 65 | -D CMAKE_INSTALL_PREFIX=/usr/local \ 66 | -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \ 67 | -D ENABLE_NEON=ON \ 68 | -D ENABLE_VFPV3=ON \ 69 | -D WITH_OPENMP=ON \ 70 | -D BUILD_ZLIB=ON \ 71 | -D BUILD_TIFF=ON \ 72 | -D WITH_FFMPEG=ON \ 73 | -D WITH_TBB=ON \ 74 | -D BUILD_TBB=ON \ 75 | -D BUILD_TESTS=OFF \ 76 | -D WITH_EIGEN=OFF \ 77 | -D WITH_GSTREAMER=ON \ 78 | -D WITH_V4L=ON \ 79 | -D WITH_LIBV4L=ON \ 80 | -D WITH_VTK=OFF \ 81 | -D WITH_QT=OFF \ 82 | -D OPENCV_ENABLE_NONFREE=ON \ 83 | -D INSTALL_C_EXAMPLES=OFF \ 84 | -D INSTALL_PYTHON_EXAMPLES=OFF \ 85 | -D BUILD_NEW_PYTHON_SUPPORT=ON \ 86 | -D BUILD_opencv_python3=TRUE \ 87 | -D OPENCV_GENERATE_PKGCONFIG=ON \ 88 | -D OPENCV_FORCE_LIBATOMIC_COMPILER_CHECK=1 \ 89 | -D PYTHON3_PACKAGES_PATH=/usr/lib/python3/dist-packages \ 90 | -D BUILD_EXAMPLES=OFF .. 91 | 92 | # run make 93 | make -j4 94 | sudo make install 95 | sudo ldconfig 96 | 97 | # cleaning (frees 300 MB) 98 | make clean 99 | sudo apt-get update 100 | 101 | echo "Congratulations!" 102 | echo "You've successfully installed OpenCV 4.5.0 on your Raspberry Pi 32-bit OS" 103 | } 104 | 105 | cd ~ 106 | if [ -d ~/opencv/build ]; then 107 | echo " " 108 | echo "You have a directory ~/opencv/build on your disk." 109 | echo "Continuing the installation will replace this folder." 110 | echo " " 111 | 112 | printf "Do you wish to continue (Y/n)?" 113 | read answer 114 | 115 | if [ "$answer" != "${answer#[Nn]}" ] ;then 116 | echo "Leaving without installing OpenCV" 117 | else 118 | install_opencv 119 | fi 120 | else 121 | install_opencv 122 | fi 123 | 124 | 125 | -------------------------------------------------------------------------------- /OpenCV-4-10-0.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | install_opencv () { 4 | echo "" 5 | case `cat /etc/debian_version` in 6 | 10*) echo "Detecting Debian 10, Buster. " 7 | ;; 8 | 11*) echo "Detecting Debian 11, Bullseye. " 9 | ;; 10 | 12*) echo "Detecting Debian 12, Bookworm. " 11 | ;; 12 | esac 13 | echo "" 14 | echo "Installing OpenCV 4.10.0 on your Raspberry Pi 32-bit OS" 15 | echo "It will take minimal 2.5 hour !" 16 | cd ~ 17 | # install the dependencies 18 | sudo apt-get install -y build-essential cmake git unzip pkg-config 19 | sudo apt-get install -y libjpeg-dev libtiff-dev libpng-dev 20 | sudo apt-get install -y libavcodec-dev libavformat-dev libswscale-dev 21 | sudo apt-get install -y libgtk2.0-dev libcanberra-gtk* libgtk-3-dev 22 | sudo apt-get install -y libgstreamer1.0-dev gstreamer1.0-gtk3 23 | sudo apt-get install -y libgstreamer-plugins-base1.0-dev gstreamer1.0-gl 24 | sudo apt-get install -y libxvidcore-dev libx264-dev 25 | #get python 26 | case `cat /etc/debian_version` in 27 | 10*) sudo apt-get install -y python-dev python-numpy python-pip 28 | ;; 29 | 11*) 30 | ;; 31 | 12*) 32 | ;; 33 | esac 34 | sudo apt-get install -y python3-dev python3-numpy python3-pip 35 | sudo apt-get install -y libtbb2 libtbb-dev libdc1394-22-dev 36 | sudo apt-get install -y libv4l-dev v4l-utils 37 | sudo apt-get install -y libopenblas-dev libatlas-base-dev libblas-dev 38 | sudo apt-get install -y liblapack-dev gfortran libhdf5-dev 39 | sudo apt-get install -y libprotobuf-dev libgoogle-glog-dev libgflags-dev 40 | sudo apt-get install -y protobuf-compiler 41 | 42 | # remove old versions or previous builds 43 | cd ~ 44 | sudo rm -rf opencv* 45 | 46 | # download the 4.10.0 version 47 | wget -O opencv.zip https://github.com/opencv/opencv/archive/4.10.0.zip 48 | wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.10.0.zip 49 | 50 | # unpack 51 | unzip opencv.zip 52 | unzip opencv_contrib.zip 53 | 54 | # Some administration to make life easier later on 55 | mv opencv-4.10.0 opencv 56 | mv opencv_contrib-4.10.0 opencv_contrib 57 | 58 | # clean up the zip files 59 | rm opencv.zip 60 | rm opencv_contrib.zip 61 | 62 | # set install dir 63 | cd ~/opencv 64 | mkdir build 65 | cd build 66 | 67 | # run cmake 68 | cmake -D CMAKE_BUILD_TYPE=RELEASE \ 69 | -D CMAKE_INSTALL_PREFIX=/usr/local \ 70 | -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \ 71 | -D ENABLE_NEON=ON \ 72 | -D WITH_OPENMP=ON \ 73 | -D WITH_OPENCL=OFF \ 74 | -D BUILD_TIFF=ON \ 75 | -D WITH_FFMPEG=ON \ 76 | -D WITH_TBB=ON \ 77 | -D BUILD_TBB=ON \ 78 | -D WITH_GSTREAMER=ON \ 79 | -D BUILD_TESTS=OFF \ 80 | -D WITH_EIGEN=OFF \ 81 | -D WITH_V4L=ON \ 82 | -D WITH_LIBV4L=ON \ 83 | -D WITH_VTK=OFF \ 84 | -D WITH_QT=ON \ 85 | -D WITH_PROTOBUF=OFF \ 86 | -D OPENCV_ENABLE_NONFREE=ON \ 87 | -D INSTALL_C_EXAMPLES=OFF \ 88 | -D INSTALL_PYTHON_EXAMPLES=OFF \ 89 | -D OPENCV_FORCE_LIBATOMIC_COMPILER_CHECK=1 \ 90 | -D PYTHON3_PACKAGES_PATH=/usr/lib/python3/dist-packages \ 91 | -D OPENCV_GENERATE_PKGCONFIG=ON \ 92 | -D BUILD_EXAMPLES=OFF .. 93 | 94 | # run make 95 | make -j4 96 | sudo make install 97 | sudo ldconfig 98 | 99 | # cleaning (frees 320 MB) 100 | make clean 101 | sudo apt-get update 102 | 103 | echo "Congratulations!" 104 | echo "You've successfully installed OpenCV 4.10.0 on your Raspberry Pi 32-bit OS" 105 | } 106 | 107 | cd ~ 108 | if [ -d ~/opencv/build ]; then 109 | echo " " 110 | echo "You have a directory ~/opencv/build on your disk." 111 | echo "Continuing the installation will replace this folder." 112 | echo " " 113 | 114 | printf "Do you wish to continue (Y/n)?" 115 | read answer 116 | 117 | if [ "$answer" != "${answer#[Nn]}" ] ;then 118 | echo "Leaving without installing OpenCV" 119 | else 120 | install_opencv 121 | fi 122 | else 123 | install_opencv 124 | fi 125 | -------------------------------------------------------------------------------- /OpenCV-4-11-0.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | install_opencv () { 4 | echo "" 5 | case `cat /etc/debian_version` in 6 | 10*) echo "Detecting Debian 10, Buster. " 7 | ;; 8 | 11*) echo "Detecting Debian 11, Bullseye. " 9 | ;; 10 | 12*) echo "Detecting Debian 12, Bookworm. " 11 | ;; 12 | esac 13 | echo "" 14 | echo "Installing OpenCV 4.11.0 on your Raspberry Pi 32-bit OS" 15 | echo "It will take minimal 2.5 hour !" 16 | cd ~ 17 | # install the dependencies 18 | sudo apt-get install -y build-essential cmake git unzip pkg-config 19 | sudo apt-get install -y libjpeg-dev libtiff-dev libpng-dev 20 | sudo apt-get install -y libavcodec-dev libavformat-dev libswscale-dev 21 | sudo apt-get install -y libgtk2.0-dev libcanberra-gtk* libgtk-3-dev 22 | sudo apt-get install -y libgstreamer1.0-dev gstreamer1.0-gtk3 23 | sudo apt-get install -y libgstreamer-plugins-base1.0-dev gstreamer1.0-gl 24 | sudo apt-get install -y libxvidcore-dev libx264-dev 25 | #get python 26 | case `cat /etc/debian_version` in 27 | 10*) sudo apt-get install -y python-dev python-numpy python-pip 28 | ;; 29 | 11*) 30 | ;; 31 | 12*) 32 | ;; 33 | esac 34 | sudo apt-get install -y python3-dev python3-numpy python3-pip 35 | sudo apt-get install -y libtbb2 libtbb-dev libdc1394-22-dev 36 | sudo apt-get install -y libv4l-dev v4l-utils 37 | sudo apt-get install -y libopenblas-dev libatlas-base-dev libblas-dev 38 | sudo apt-get install -y liblapack-dev gfortran libhdf5-dev 39 | sudo apt-get install -y libprotobuf-dev libgoogle-glog-dev libgflags-dev 40 | sudo apt-get install -y protobuf-compiler 41 | 42 | # remove old versions or previous builds 43 | cd ~ 44 | sudo rm -rf opencv* 45 | 46 | # download the 4.11.0 version 47 | wget -O opencv.zip https://github.com/opencv/opencv/archive/4.11.0.zip 48 | wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.11.0.zip 49 | 50 | # unpack 51 | unzip opencv.zip 52 | unzip opencv_contrib.zip 53 | 54 | # Some administration to make life easier later on 55 | mv opencv-4.11.0 opencv 56 | mv opencv_contrib-4.11.0 opencv_contrib 57 | 58 | # clean up the zip files 59 | rm opencv.zip 60 | rm opencv_contrib.zip 61 | 62 | # set install dir 63 | cd ~/opencv 64 | mkdir build 65 | cd build 66 | 67 | # run cmake 68 | cmake -D CMAKE_BUILD_TYPE=RELEASE \ 69 | -D CMAKE_INSTALL_PREFIX=/usr/local \ 70 | -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \ 71 | -D ENABLE_NEON=ON \ 72 | -D WITH_OPENMP=ON \ 73 | -D WITH_OPENCL=OFF \ 74 | -D BUILD_TIFF=ON \ 75 | -D WITH_FFMPEG=ON \ 76 | -D WITH_TBB=ON \ 77 | -D BUILD_TBB=ON \ 78 | -D WITH_GSTREAMER=ON \ 79 | -D BUILD_TESTS=OFF \ 80 | -D WITH_EIGEN=OFF \ 81 | -D WITH_V4L=ON \ 82 | -D WITH_LIBV4L=ON \ 83 | -D WITH_VTK=OFF \ 84 | -D WITH_QT=ON \ 85 | -D WITH_PROTOBUF=OFF \ 86 | -D OPENCV_ENABLE_NONFREE=ON \ 87 | -D INSTALL_C_EXAMPLES=OFF \ 88 | -D INSTALL_PYTHON_EXAMPLES=OFF \ 89 | -D OPENCV_FORCE_LIBATOMIC_COMPILER_CHECK=1 \ 90 | -D PYTHON3_PACKAGES_PATH=/usr/lib/python3/dist-packages \ 91 | -D OPENCV_GENERATE_PKGCONFIG=ON \ 92 | -D BUILD_EXAMPLES=OFF .. 93 | 94 | # run make 95 | make -j4 96 | sudo make install 97 | sudo ldconfig 98 | 99 | # cleaning (frees 320 MB) 100 | make clean 101 | sudo apt-get update 102 | 103 | echo "Congratulations!" 104 | echo "You've successfully installed OpenCV 4.11.0 on your Raspberry Pi 32-bit OS" 105 | } 106 | 107 | cd ~ 108 | if [ -d ~/opencv/build ]; then 109 | echo " " 110 | echo "You have a directory ~/opencv/build on your disk." 111 | echo "Continuing the installation will replace this folder." 112 | echo " " 113 | 114 | printf "Do you wish to continue (Y/n)?" 115 | read answer 116 | 117 | if [ "$answer" != "${answer#[Nn]}" ] ;then 118 | echo "Leaving without installing OpenCV" 119 | else 120 | install_opencv 121 | fi 122 | else 123 | install_opencv 124 | fi 125 | -------------------------------------------------------------------------------- /OpenCV-4-13-0.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | install_opencv () { 4 | echo "" 5 | case `cat /etc/debian_version` in 6 | 10*) echo "Detecting Debian 10, Buster. " 7 | ;; 8 | 11*) echo "Detecting Debian 11, Bullseye. " 9 | ;; 10 | 12*) echo "Detecting Debian 12, Bookworm. " 11 | ;; 12 | 13*) echo "Detecting Debian 13, Trixie. " 13 | ;; 14 | esac 15 | echo "" 16 | echo "Installing OpenCV 4.13.0 on your Raspberry Pi 32-bit OS" 17 | echo "It will take minimal 2.5 hour !" 18 | cd ~ 19 | # install the dependencies 20 | sudo apt-get install -y build-essential cmake git unzip pkg-config 21 | sudo apt-get install -y libjpeg-dev libtiff-dev libpng-dev 22 | sudo apt-get install -y libavcodec-dev libavformat-dev libswscale-dev 23 | sudo apt-get install -y libgtk2.0-dev libcanberra-gtk* libgtk-3-dev 24 | sudo apt-get install -y libgstreamer1.0-dev gstreamer1.0-gtk3 25 | sudo apt-get install -y libgstreamer-plugins-base1.0-dev gstreamer1.0-gl 26 | sudo apt-get install -y libxvidcore-dev libx264-dev 27 | #get python 28 | case `cat /etc/debian_version` in 29 | 10*) sudo apt-get install -y python-dev python-numpy python-pip 30 | ;; 31 | 11*) 32 | ;; 33 | 12*) 34 | ;; 35 | 13*) 36 | ;; 37 | esac 38 | sudo apt-get install -y python3-dev python3-numpy python3-pip 39 | sudo apt-get install -y libtbb2 libtbb-dev libdc1394-22-dev 40 | sudo apt-get install -y libv4l-dev v4l-utils 41 | 42 | case `cat /etc/debian_version` in 43 | 13*) 44 | # Debian 13 Trixie: libatlas-base-dev removed, use openblas instead 45 | sudo apt-get install -y libopenblas-dev libblas-dev 46 | ;; 47 | *) 48 | # Older Debian versions can still install atlas package 49 | sudo apt-get install -y libopenblas-dev libatlas-base-dev libblas-dev 50 | ;; 51 | esac 52 | 53 | sudo apt-get install -y liblapack-dev gfortran libhdf5-dev 54 | sudo apt-get install -y libprotobuf-dev libgoogle-glog-dev libgflags-dev 55 | sudo apt-get install -y protobuf-compiler 56 | 57 | # download the latest version 58 | cd ~ 59 | sudo rm -rf opencv* 60 | git clone --depth=1 https://github.com/opencv/opencv.git 61 | git clone --depth=1 https://github.com/opencv/opencv_contrib.git 62 | 63 | # set install dir 64 | cd ~/opencv 65 | mkdir build 66 | cd build 67 | 68 | # run cmake 69 | cmake -D CMAKE_BUILD_TYPE=RELEASE \ 70 | -D CMAKE_INSTALL_PREFIX=/usr/local \ 71 | -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \ 72 | -D ENABLE_NEON=ON \ 73 | -D WITH_OPENMP=ON \ 74 | -D WITH_OPENCL=OFF \ 75 | -D BUILD_TIFF=ON \ 76 | -D WITH_FFMPEG=ON \ 77 | -D WITH_TBB=ON \ 78 | -D BUILD_TBB=ON \ 79 | -D WITH_GSTREAMER=ON \ 80 | -D BUILD_TESTS=OFF \ 81 | -D WITH_EIGEN=OFF \ 82 | -D WITH_V4L=ON \ 83 | -D WITH_LIBV4L=ON \ 84 | -D WITH_VTK=OFF \ 85 | -D WITH_QT=ON \ 86 | -D WITH_PROTOBUF=OFF \ 87 | -D OPENCV_ENABLE_NONFREE=ON \ 88 | -D INSTALL_C_EXAMPLES=OFF \ 89 | -D INSTALL_PYTHON_EXAMPLES=OFF \ 90 | -D OPENCV_FORCE_LIBATOMIC_COMPILER_CHECK=1 \ 91 | -D PYTHON3_PACKAGES_PATH=/usr/lib/python3/dist-packages \ 92 | -D OPENCV_GENERATE_PKGCONFIG=ON \ 93 | -D BUILD_EXAMPLES=OFF .. 94 | 95 | # run make 96 | make -j4 97 | sudo make install 98 | sudo ldconfig 99 | 100 | # cleaning (frees 320 MB) 101 | make clean 102 | sudo apt-get update 103 | 104 | echo "Congratulations!" 105 | echo "You've successfully installed OpenCV 4.13.0 on your Raspberry Pi 32-bit OS" 106 | } 107 | 108 | cd ~ 109 | if [ -d ~/opencv/build ]; then 110 | echo " " 111 | echo "You have a directory ~/opencv/build on your disk." 112 | echo "Continuing the installation will replace this folder." 113 | echo " " 114 | 115 | printf "Do you wish to continue (Y/n)?" 116 | read answer 117 | 118 | if [ "$answer" != "${answer#[Nn]}" ] ;then 119 | echo "Leaving without installing OpenCV" 120 | else 121 | install_opencv 122 | fi 123 | else 124 | install_opencv 125 | fi 126 | -------------------------------------------------------------------------------- /OpenCV-4-12-0.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | install_opencv () { 4 | echo "" 5 | case `cat /etc/debian_version` in 6 | 10*) echo "Detecting Debian 10, Buster. " 7 | ;; 8 | 11*) echo "Detecting Debian 11, Bullseye. " 9 | ;; 10 | 12*) echo "Detecting Debian 12, Bookworm. " 11 | ;; 12 | 13*) echo "Detecting Debian 13, Trixie. " 13 | ;; 14 | esac 15 | echo "" 16 | echo "Installing OpenCV 4.12.0 on your Raspberry Pi 32-bit OS" 17 | echo "It will take minimal 2.5 hour !" 18 | cd ~ 19 | # install the dependencies 20 | sudo apt-get install -y build-essential cmake git unzip pkg-config 21 | sudo apt-get install -y libjpeg-dev libtiff-dev libpng-dev 22 | sudo apt-get install -y libavcodec-dev libavformat-dev libswscale-dev 23 | sudo apt-get install -y libgtk2.0-dev libcanberra-gtk* libgtk-3-dev 24 | sudo apt-get install -y libgstreamer1.0-dev gstreamer1.0-gtk3 25 | sudo apt-get install -y libgstreamer-plugins-base1.0-dev gstreamer1.0-gl 26 | sudo apt-get install -y libxvidcore-dev libx264-dev 27 | #get python 28 | case `cat /etc/debian_version` in 29 | 10*) sudo apt-get install -y python-dev python-numpy python-pip 30 | ;; 31 | 11*) 32 | ;; 33 | 12*) 34 | ;; 35 | 13*) 36 | ;; 37 | esac 38 | sudo apt-get install -y python3-dev python3-numpy python3-pip 39 | sudo apt-get install -y libtbb2 libtbb-dev libdc1394-22-dev 40 | sudo apt-get install -y libv4l-dev v4l-utils 41 | 42 | case `cat /etc/debian_version` in 43 | 13*) 44 | # Debian 13 Trixie: libatlas-base-dev removed, use openblas instead 45 | sudo apt-get install -y libopenblas-dev libblas-dev 46 | ;; 47 | *) 48 | # Older Debian versions can still install atlas package 49 | sudo apt-get install -y libopenblas-dev libatlas-base-dev libblas-dev 50 | ;; 51 | esac 52 | 53 | sudo apt-get install -y liblapack-dev gfortran libhdf5-dev 54 | sudo apt-get install -y libprotobuf-dev libgoogle-glog-dev libgflags-dev 55 | sudo apt-get install -y protobuf-compiler 56 | 57 | # remove old versions or previous builds 58 | cd ~ 59 | sudo rm -rf opencv* 60 | 61 | # download the 4.12.0 version 62 | wget -O opencv.zip https://github.com/opencv/opencv/archive/4.12.0.zip 63 | wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.12.0.zip 64 | 65 | # unpack 66 | unzip opencv.zip 67 | unzip opencv_contrib.zip 68 | 69 | # Some administration to make life easier later on 70 | mv opencv-4.12.0 opencv 71 | mv opencv_contrib-4.12.0 opencv_contrib 72 | 73 | # clean up the zip files 74 | rm opencv.zip 75 | rm opencv_contrib.zip 76 | 77 | # set install dir 78 | cd ~/opencv 79 | mkdir build 80 | cd build 81 | 82 | # run cmake 83 | cmake -D CMAKE_BUILD_TYPE=RELEASE \ 84 | -D CMAKE_INSTALL_PREFIX=/usr/local \ 85 | -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \ 86 | -D ENABLE_NEON=ON \ 87 | -D WITH_OPENMP=ON \ 88 | -D WITH_OPENCL=OFF \ 89 | -D BUILD_TIFF=ON \ 90 | -D WITH_FFMPEG=ON \ 91 | -D WITH_TBB=ON \ 92 | -D BUILD_TBB=ON \ 93 | -D WITH_GSTREAMER=ON \ 94 | -D BUILD_TESTS=OFF \ 95 | -D WITH_EIGEN=OFF \ 96 | -D WITH_V4L=ON \ 97 | -D WITH_LIBV4L=ON \ 98 | -D WITH_VTK=OFF \ 99 | -D WITH_QT=ON \ 100 | -D WITH_PROTOBUF=OFF \ 101 | -D OPENCV_ENABLE_NONFREE=ON \ 102 | -D INSTALL_C_EXAMPLES=OFF \ 103 | -D INSTALL_PYTHON_EXAMPLES=OFF \ 104 | -D OPENCV_FORCE_LIBATOMIC_COMPILER_CHECK=1 \ 105 | -D PYTHON3_PACKAGES_PATH=/usr/lib/python3/dist-packages \ 106 | -D OPENCV_GENERATE_PKGCONFIG=ON \ 107 | -D BUILD_EXAMPLES=OFF .. 108 | 109 | # run make 110 | make -j4 111 | sudo make install 112 | sudo ldconfig 113 | 114 | # cleaning (frees 320 MB) 115 | make clean 116 | sudo apt-get update 117 | 118 | echo "Congratulations!" 119 | echo "You've successfully installed OpenCV 4.12.0 on your Raspberry Pi 32-bit OS" 120 | } 121 | 122 | cd ~ 123 | if [ -d ~/opencv/build ]; then 124 | echo " " 125 | echo "You have a directory ~/opencv/build on your disk." 126 | echo "Continuing the installation will replace this folder." 127 | echo " " 128 | 129 | printf "Do you wish to continue (Y/n)?" 130 | read answer 131 | 132 | if [ "$answer" != "${answer#[Nn]}" ] ;then 133 | echo "Leaving without installing OpenCV" 134 | else 135 | install_opencv 136 | fi 137 | else 138 | install_opencv 139 | fi 140 | --------------------------------------------------------------------------------