Установка OpenCV на CentOS 8
Кратко: пошаговое руководство по сборке и установке OpenCV на CentOS 8 из исходников. Описаны необходимые пакеты, последовательность команд, проверка установки и распространённые ошибки с решениями. Подойдёт для серверов и рабочих станций, где нужен 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 ..
Пояснения к ключевым опциям:
- 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
Important: если сборка завершилась с ошибками памяти или времени, попробуйте уменьшить число потоков (например, -j2) или собрать на машине с большим объёмом RAM.
Установка
После успешной сборки установите библиотеки в систему:
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.
Альтернативные подходы
Установка через готовые колёса Python (pip):
- pip install opencv-python
- Плюсы: быстро и просто, не требует сборки.
- Минусы: такие пакеты часто не содержат contrib-модулей, CUDA-поддержки или специфичных системных зависимостей.
Поиск RPM-пакетов в репозиториях EPEL или сторонних репозиториях:
- Плюсы: проще управлять через dnf.
- Минусы: версия может отличаться от требуемой, могут отсутствовать contrib-модули.
Сборка с поддержкой 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 и путей установки.
Похожие материалы
Троян Herodotus: как он работает и как защититься
Включить новое меню «Пуск» в Windows 11
Панель полей PivotTable в Excel — руководство
Включить новый Пуск в Windows 11 — инструкция
Как убрать дубликаты Диспетчера задач Windows 11