Гид по технологиям

Установка OpenCV на CentOS 8

4 min read Компьютерное зрение Обновлено 08 Nov 2025
Установка OpenCV на CentOS 8 — пошагово
Установка OpenCV на CentOS 8 — пошагово

Кратко: пошаговое руководство по сборке и установке OpenCV на CentOS 8 из исходников. Описаны необходимые пакеты, последовательность команд, проверка установки и распространённые ошибки с решениями. Подойдёт для серверов и рабочих станций, где нужен OpenCV с дополнительными модулями.

Иллюстрация OpenCV

OpenCV — это библиотека для компьютерного зрения с открытым исходным кодом, ориентированная на производительные вычисления на многоядерных CPU и GPU. Её используют для распознавания лиц, жестов, отслеживания движения и других задач визуальной обработки.

Короткое определение: OpenCV — набор оптимизированных алгоритмов и интерфейсов для обработки изображений и видео.

Требования

  • Сервер или машина с CentOS 8.
  • Доступ под пользователем с правами root или sudo.
  • Свободное место на диске (рекомендуется несколько гигабайт для сборки).

Установка необходимых пакетов

OpenCV обычно отсутствует в стандартном репозитории CentOS 8 в требуемой версии, поэтому мы будем собирать её из исходников. Сначала установите зависимости:

dnf install epel-release make git gcc gcc-c++ cmake3 qt5-qtbase-devel python3 python3-devel python3-pip cmake python3-devel python3-numpy gtk2-devel libpng-devel libwebp-devel libjpeg-turbo-devel libtiff-devel tbb-devel freeglut-devel mesa-libGL mesa-libGL-devel boost boost-thread boost-devel gstreamer1-plugins-base -y

Примечание: команда содержит и cmake3, и cmake — если ваша система использует cmake3 по умолчанию, используйте его при конфигурации.

Скачивание исходников

Создайте каталог для сборки и загрузите репозитории OpenCV и opencv_contrib:

mkdir -p ~/opencv_build
cd ~/opencv_build
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git

Этот шаг даёт вам последнюю версию исходников из главной ветки. Если нужна конкретная версия, переключитесь на нужный тег с помощью git checkout .

Конфигурация сборки

Перейдите в каталог с исходниками и подготовьте временную папку для сборки:

cd opencv
mkdir build
cd build

Запустите cmake с нужными опциями. В примере мы включаем примеры и указываем путь к дополнительным модулям из opencv_contrib:

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_build/opencv_contrib/modules -D BUILD_EXAMPLES=ON ..

Конфигурация сборки OpenCV (вывод cmake)

Пояснения к ключевым опциям:

  • CMAKE_INSTALL_PREFIX=/usr/local — каталoг установки.
  • OPENCV_EXTRA_MODULES_PATH — путь к дополнительным модулям contrib.
  • INSTALL_PYTHON_EXAMPLES — установка примеров Python.
  • OPENCV_GENERATE_PKGCONFIG=ON — генерация pkg-config файла для opencv4.

Если вы используете cmake3 как исполняемый файл, замените cmake на cmake3.

Сборка

Запустите сборку. Флаг -jN определяет количество параллельных потоков сборки. Рекомендуется указывать число ядер CPU или (ядер × 2) для ускорения.

make -j4

Запуск make (вывод процесса сборки)

Important: если сборка завершилась с ошибками памяти или времени, попробуйте уменьшить число потоков (например, -j2) или собрать на машине с большим объёмом RAM.

Установка

После успешной сборки установите библиотеки в систему:

make install

Установка OpenCV (вывод make install)

Затем создайте символическую ссылку для pkg-config и обновите кэш библиотек:

ln -s /usr/local/lib64/pkgconfig/opencv4.pc /usr/share/pkgconfig/
ldconfig

Проверка установки

Проверьте версию через pkg-config:

pkg-config --modversion opencv4

Ожидаемый вывод (пример):

4.3.0

Проверьте Python-модуль cv2. Если в коде используется команда для проверки, выполните:

python3 -c "import cv2; print(cv2.__version__)"

Ожидаемый вывод (пример):

4.3.0-dev

Если импорт не работает, проверьте путь установки модуля Python и соответствие версии Python, под которой был собран OpenCV.

Частые ошибки и решения

  • Ошибка: cmake не находит пакеты GUI (GTK, Qt).

    • Решение: установите соответствующие -devel пакеты, например gtk2-devel или qt5-qtbase-devel.
  • Ошибка: недостаточно памяти при make.

    • Решение: снизьте число потоков (-j2) или используйте swap во время сборки.
  • Ошибка: Python не видит модуль cv2.

    • Решение: найдите, куда установился файл cv2.so (обычно /usr/local/lib/python3.x/site-packages) и добавьте путь в PYTHONPATH или установите совместимую версию Python.
  • Ошибка: opencv4.pc не найден.

    • Решение: убедитесь, что OPENCV_GENERATE_PKGCONFIG=ON при запуске cmake и создайте символическую ссылку в /usr/share/pkgconfig.

Альтернативные подходы

  1. Установка через готовые колёса Python (pip):

    • pip install opencv-python
    • Плюсы: быстро и просто, не требует сборки.
    • Минусы: такие пакеты часто не содержат contrib-модулей, CUDA-поддержки или специфичных системных зависимостей.
  2. Поиск RPM-пакетов в репозиториях EPEL или сторонних репозиториях:

    • Плюсы: проще управлять через dnf.
    • Минусы: версия может отличаться от требуемой, могут отсутствовать contrib-модули.
  3. Сборка с поддержкой CUDA (на машинах с NVIDIA):

    • Требует дополнительных зависимостей: CUDA Toolkit, cuDNN.
    • Значительно ускоряет вычисления на GPU, но сложнее в настройке.

Выбор подхода зависит от требований: нужны ли contrib-модули, нужна ли GPU-ускорение, важен ли контроль над флагами сборки.

Критерии приёмки

  • pkg-config –modversion opencv4 возвращает корректную версию.
  • Python: import cv2 выполняется без ошибок и печатает версию.
  • Библиотеки установлены в /usr/local/lib* и доступны через ldconfig.
  • (Опционально) Примеры OpenCV из каталога examples запускаются.

Контрольный список для администратора

  • Есть резервная копия системы или снимок виртуальной машины.
  • Установлены все -devel пакеты и зависимости.
  • Проверено свободное место и память для сборки.
  • Собраны и установлены opencv и opencv_contrib (если нужны дополнительные модули).
  • Проверена совместимость Python и пути установки модулей.

Справочник терминов

  • OpenCV — библиотека компьютерного зрения с широко используемыми алгоритмами.
  • cmake — инструмент для генерации файлов сборки из кроссплатформенных сценариев.
  • pkg-config — утилита для получения информации о библиотеках, установленных в системе.

Факт-бокс

  • Пример проверенной версии в данном руководстве: 4.3.0 / 4.3.0-dev.
  • Типичный набор зависимостей: компилятор GCC, cmake, пакеты -devel для графических форматов и GUI.

Резюме

Вы успешно собрали и установили OpenCV на CentOS 8. Если нужен быстрый способ — используйте pip для установки бинарных колёс, но для полного контроля и дополнительных модулей рекомендуется сборка из исходников. При возникновении ошибок следуйте секции “Частые ошибки и решения” и проверьте соответствие версий Python и путей установки.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Троян Herodotus: как он работает и как защититься
Кибербезопасность

Троян Herodotus: как он работает и как защититься

Включить новое меню «Пуск» в Windows 11
Windows 11

Включить новое меню «Пуск» в Windows 11

Панель полей PivotTable в Excel — руководство
Excel

Панель полей PivotTable в Excel — руководство

Включить новый Пуск в Windows 11 — инструкция
Windows

Включить новый Пуск в Windows 11 — инструкция

Как убрать дубликаты Диспетчера задач Windows 11
Windows

Как убрать дубликаты Диспетчера задач Windows 11

Как просмотреть историю просмотров Reels в Instagram
Социальные сети

Как просмотреть историю просмотров Reels в Instagram