
OpenCV (Open Source Computer Vision Library) — это библиотека компьютерного зрения с открытым исходным кодом, имеющая привязки к C++, Python и Java и поддерживающая все основные операционные системы. Она может использовать преимущества многоядерной обработки и поддерживает ускорение графических процессоров для работы в реальном времени.
OpenCV используется для очень широкого спектра приложений, включая анализ медицинских изображений, сшивку изображений уличного вида, видеонаблюдение, обнаружение и распознавание лиц, отслеживание движущихся объектов, извлечение 3D-моделей и многое другое.
В этом уроке мы покажем, как установить OpenCV на CentOS 7.
Установить OpenCV из репозитория CentOS
Пакет OpenCV доступен в стандартных репозиториях CentOS 7, но он довольно устарел. Если вы хотите установить последнюю стабильную версию OpenCV из исходного кода, прокрутите вниз до раздела «Установка OpenCV из исходного кода» этого руководства.
На момент написания статьи в репозиториях находится версия 2.4.5.
Установите пакеты OpenCV, введя:
sudo yum install opencv opencv-devel opencv-python
После завершения установки вы можете проверить ее, выполнив:
pkg-config --modversion opencv
2.4.5
Или импортируйте модуль Python cv2 и распечатайте версию OpenCV:
python -c "import cv2; print(cv2.__version__)"
2.4.5
Установка OpenCV из исходного
Сборка библиотеки OpenCV из исходного кода позволит вам получить последнюю доступную версию. Она будет оптимизирована для вашей системы, и вы получите полный контроль над параметрами сборки.
Чтобы установить последнюю версию OpenCV из источника, выполните следующие действия:
-
Установите обязательные и необязательные зависимости:
sudo yum install epel-release git gcc gcc-c++ cmake3 qt5-qtbase-develpython python-devel python-pip cmake python-devel python34-numpygtk2-devel libpng-devel jasper-devel openexr-devel libwebp-devellibjpeg-turbo-devel libtiff-devel libdc1394-devel tbb-devel numpyeigen3-devel gstreamer-plugins-base-devel freeglut-devel mesa-libGLmesa-libGL-devel boost boost-thread boost-devel libv4l-devel -
Клонируйте репозитории OpenCV и OpenCV contrib:
mkdir ~/opencv_build && cd ~/opencv_buildgit clone https://github.com/opencv/opencv.gitgit clone https://github.com/opencv/opencv_contrib.gitНа момент написания статьи в репозиториях GitHub по умолчанию установлена версия 4.2.0. Если вы хотите установить более старую версию OpenCV, перейдите в каталоги
opencvиopencv_contribи выполните командуgit checkout -
После завершения загрузки создайте временный каталог сборки и перейдите в него:
cd ~/opencv_build/opencv && mkdir build && cd buildНастройте сборку OpenCV с помощью следующей команды CMake:
cmake3 -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_build/opencv_contrib/modules-D BUILD_EXAMPLES=ON ..После завершения сборки системы CMake вы увидите что-то вроде следующего:
-- Configuring done -- Generating done -- Build files have been written to: /home/linuxize/opencv_build/opencv/build -
Запустите процесс компиляции, выполнив следующую команду:
make -j8Измените флаг
-jв соответствии с типом вашего процессора. Если вы не знаете количество ядер вашего процессора, вы можете узнать его, введя командуnproc.Компиляция может занять несколько минут или больше, в зависимости от конфигурации вашей системы. После завершения вы увидите что-то вроде этого:
[100%] Built target example_tutorial_Threshold_inRange [100%] Linking CXX shared module ../../lib/cv2.so [100%] Built target opencv_python2 -
Установите OpenCV с помощью:
sudo make install -
Создайте символическую ссылку на файл
opencv4.pcв каталоге/usr/share/pkgconfigи запуститеldconfigдля перестройки кэша библиотек.sudo ln -s /usr/local/lib64/pkgconfig/opencv4.pc /usr/share/pkgconfig/sudo ldconfigПроверьте версию OpenCV, введя:
pkg-config --modversion opencv44.2.0 -
Чтобы включить модуль Python
cv2, выполните:sudo ln -s /usr/local/lib/python2.7/site-packages/cv2 /usr/lib/python2.7/site-packages/Импортируйте модуль и проверьте установку, распечатав версию OpenCV:
python -c "import cv2; print(cv2.__version__)"4.2.0-dev
Заключение
Мы показали вам два разных способа установки OpenCV на сервер CentOS 7. Выбор метода зависит от ваших требований и предпочтений. Хотя установка готовой версии из репозитория CentOS проще, сборка OpenCV из исходного кода даёт большую гибкость, и этот вариант следует выбрать первым при установке OpenCV.
Если у вас есть вопросы или пожелания, не стесняйтесь оставлять комментарии ниже.
opencv python centos Не используете CentOS 7?
Выберите другую ОС: центос 8 дебиан 10 убунту 18.04 убунту 20.04
Связанные руководства