OpenCV — это библиотека программного обеспечения с открытым исходным кодом для машинного обучения и компьютерного зрения. Она используется для обработки изображений и выполнения задач компьютерного зрения. С помощью OpenCV можно создавать приложения компьютерного зрения в реальном времени, включая отслеживание движущихся объектов, видеонаблюдение, анализ медицинских изображений и многое другое. Она является кроссплатформенной и поддерживает многие операционные системы, включая Linux, Windows, macOS, Android, OpenBSD, FreeBSD и многие другие.
Начало работы
Сначала обновите и модернизируйте все системные пакеты до последней версии с помощью следующей команды:
apt update -y apt upgrade -y
После обновления всех пакетов установите пакет Python с помощью следующей команды:
apt install python3
После установки Python проверьте версию Python с помощью следующей команды:
python3 --version
Вы должны увидеть следующий результат:
Python 3.10.6
Установите OpenCV из репозитория Debian
По умолчанию модуль OpenCV доступен в стандартном репозитории Ubuntu 22.04. Вы можете установить его с помощью следующей команды:
apt-get install python3-opencv -y
После успешной установки вы можете проверить установленную версию модуля с помощью следующей команды:
python3 -c "import cv2; print(cv2.__version__)"
Вы должны получить следующий результат:
4.5.4
После завершения можете перейти к следующему шагу.
Установите OpenCV из исходного кода
Рекомендуется устанавливать OpenCV из исходного кода. Так вы сможете оптимизировать его для конкретной системы.
Сначала установите все зависимости, необходимые для сборки OpenCV, с помощью следующей команды:
apt-get install build-essential cmake git pkg-config libgtk-3-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev libjpeg-dev libpng-dev libtiff-dev gfortran openexr libatlas-base-dev python3-dev python3-numpy libtbb2 libtbb-dev -y
После установки всех зависимостей загрузите последнюю версию OpenCV и OpenCV contrib с помощью следующей команды:
git clone https://github.com/opencv/opencv.git git clone https://github.com/opencv/opencv_contrib.git
Затем перейдите в каталог opencv с помощью следующей команды:
cd opencv
Затем создайте временный каталог сборки и перейдите в него:
mkdir build cd build
Затем настройте сборку OpenCV с помощью CMake:
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D OPENCV_GENERATE_PKGCONFIG=ON -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules -D BUILD_EXAMPLES=ON ..
После успешного завершения вы должны увидеть следующий вывод:
-- Other third-party libraries: -- Intel IPP: 2020.0.0 Gold [2020.0.0] -- at: /root/opencv/build/3rdparty/ippicv/ippicv_lnx/icv -- Intel IPP IW: sources (2020.0.0) -- at: /root/opencv/build/3rdparty/ippicv/ippicv_lnx/iw -- VA: NO -- Lapack: NO -- Eigen: NO -- Custom HAL: NO -- Protobuf: build (3.19.1) -- -- OpenCL: YES (no extra features) -- Include path: /root/opencv/3rdparty/include/opencl/1.2 -- Link libraries: Dynamic load -- -- Python 3: -- Interpreter: /usr/bin/python3 (ver 3.10.6) -- Libraries: /usr/lib/x86_64-linux-gnu/libpython3.10.so (ver 3.10.6) -- numpy: /usr/lib/python3/dist-packages/numpy/core/include (ver 1.21.5) -- install path: lib/python3.10/dist-packages/cv2/python-3.10 -- -- Python (for build): /usr/bin/python3 -- -- Java: -- ant: NO -- JNI: NO -- Java wrappers: NO -- Java tests: NO -- -- Install to: /usr/local -- ----------------------------------------------------------------- -- -- Configuring done -- Generating done -- Build files have been written to: /root/opencv/build
Затем скомпилируйте OpenCV с помощью следующей команды:
make -j2
Процесс сборки может занять некоторое время. После успешного завершения процесса вы можете установить OpenCV с помощью следующей команды:
make install
Затем проверьте установку OpenCV с помощью следующей команды:
pkg-config --modversion opencv4
Вы должны увидеть следующий вывод:
4.6.0
Вы также можете проверить версию модуля OpenCV с помощью следующей команды:
python3 -c "import cv2; print(cv2.__version__)"
Вы должны увидеть следующий результат:
4.2.0-dev