Instale OpenCv en una raspberry pi 3 con c ++
He estado trabajando en un proyecto con OpenCV y Visual Studio pero quiero realizar algunas pruebas en una Raspberry Pi 3, no he encontrado información precisa sobre cómo puedo usar OpenCV en una Raspberry Pi con c ++ porque la mayor parte de la información se trata de usar OpenCV con python. Una de mis ideas fue instalar Windows en la Raspberry Pi y luego instalar la comunidad de Visual Studio (no el código de Visual Studio) como hice en mi computadora portátil, pero no estoy muy seguro de que sea posible hacerlo de esa manera. Mi otra idea es usar Raspbian y luego instalar OpenCV, pero quiero usar c ++ en lugar de python. Espero que alguien pueda ayudarme a resolver este problema.
Respuestas
Aquí está el BASH SCRIPT que usé para instalar OpenCV en RPi4B.
Dave
#!/usr/bin/env bash
# originally from Michael de Gans 2019
# changes by DK September 2020
### !!! Raspberry Pi 4 version !!!
set -e # exit script immediately upon any error
cd ~
echo "DK-INFO: Download OpenCV from Github archive"
wget -O opencv.zip https://github.com/opencv/opencv/archive/4.4.0.zip
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.4.0.zip
unzip opencv.zip
unzip opencv_contrib.zip
mv opencv-4.4.0 opencv
mv opencv_contrib-4.4.0 opencv_contrib
echo "DK-INFO: Install OpenCV build dependencies"
sudo apt update && sudo apt upgrade -y
sudo apt-get dist-upgrade -y --autoremove
sudo apt install -y \
build-essential \
cmake \
git \
pkg-config
sudo apt install -y \
gfortran \
libatlas-base-dev \
liblapacke-dev \
liblapack-dev \
libavcodec-dev \
libavformat-dev \
libswscale-dev \
libv4l-dev \
v4l-utils \
libxvidcore-dev \
libx264-dev \
libfontconfig1-dev \
libcairo2-dev \
libgdk-pixbuf2.0-dev \
libpango1.0-dev \
libgtk2.0-dev \
libgtk-3-dev \
libcanberra-gtk3* \
libhdf5-dev \
libhdf5-serial-dev \
libhdf5-103 \
libqtgui4 \
libqtwebkit4 \
libqt4-test \
python3-pyqt5 \
libgstreamer1.0-dev \
libgstreamer-plugins-base1.0-dev \
libjpeg-dev \
libtiff-dev \
libpng-dev \
libjasper-dev \
libtbb-dev \
libtbb2 \
python3-dev \
python3-pip \
python3-numpy
CMAKEFLAGS="
-D CMAKE_BUILD_TYPE=RELEASE
-D CMAKE_INSTALL_PREFIX=/usr/local
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules
-D BUILD_EXAMPLES=OFF
-D BUILD_TESTS=OFF
-D BUILD_PERF_TESTS=OFF
-D INSTALL_PYTHON_EXAMPLES=OFF
-D INSTALL_C_EXAMPLES=OFF
-D ENABLE_NEON=ON
-D ENABLE_VFPV3=ON
-D OPENCV_ENABLE_NONFREE=ON
-D CMAKE_SHARED_LINKER_FLAGS=-latomic
-D WITH_FFMPEG=ON
-D WITH_TBB=ON
-D BUILD_TBB=ON
-D WITH_GSTREAMER=ON
-D WITH_V4L=ON
-D WITH_LIBV4L=ON
-D BUILD_NEW_PYTHON_SUPPORT=ON
-D ENABLE_PRECOMPILED_HEADERS=ON
-D OPENCV_GENERATE_PKGCONFIG=ON"
echo "DK-INFO>cmake flags: ${CMAKEFLAGS}" cd ~/opencv mkdir build cd build cmake ${CMAKEFLAGS} ..
echo "DK-INFO>Make"
make -j4
echo "DK-INFO>Make Install"
sudo make install
echo "DK-INFO>Done! Now do this command to finish installion = sudo ldconfig"
Ciertamente no va a instalar Windows (al menos no en 'forma completa') en una Raspberry. Lo que hace es "conectar" su IDE de la comunidad de Visual Studio en la computadora con Windows a la frambuesa a través de GDB / SSH.
El proceso que he seguido es básicamente el siguiente . Sí, titula ".net core" pero también funciona para C ++. Curiosamente, la guía de C ++ no es relevante para Linux.
Tenga en cuenta que puede instalar apt-get una gran cantidad de cosas de open-cv. Yo solo corrí
apt buscar open-cv
Y sí, C ++ es la forma preferida de utilizar gran parte del material de open-cv para que esté por delante. No tengo idea de IDE en un pi (¡uso vim y terminales!)