Установка OpenCV (C++)

OpenCV (Open Source Computer Vision Library) — это библиотека программного обеспечения с открытым исходным кодом для компьютерного зрения и машинного обучения, содержащая сотни алгоритмов компьютерного зрения и широко используемая в таких областях, как обработка изображений, анализ видео, обнаружение объектов и распознавание лиц.

C++ — это оригинальный язык разработки OpenCV, подходящий для высокопроизводительных приложений.

Прежде чем использовать OpenCV в проекте на C++, сначала необходимо установить библиотеку OpenCV.

Скачать OpenCV

Посетите официальную страницу загрузки OpenCV:https://opencv.org/releases/。

Выберите версию, подходящую для вашей операционной системы (например, Windows, Linux, macOS), и скачайте её, например, готовый пакет OpenCV 4.x для Windows.

Установка OpenCV в Windows

  • Извлеките скачанный файл OpenCV:Распакуйте его в каталог, например C:\opencv.

  • Задайте переменные среды:Добавьте каталог bin OpenCVC:\opencv\build\x64\vc15\bin (выберите vc14 или vc15 в соответствии с вашей версией Visual Studio)в системную переменную среды PATH.

  • Настройте среду разработки:Если вы используете Visual Studio, необходимо настроить путь к заголовочным файлам и путь к библиотечным файлам OpenCV в проекте. Щёлкните правой кнопкой мыши Этот компьютер -> Свойства -> Дополнительные параметры системы -> Переменные среды -> Изменить,Pathи добавьте указанный выше путь.

Настройка Visual Studio

1. Откройте Visual Studio и создайте проект C++.

2. Настройте каталоги включения

Щёлкните правой кнопкой мыши по проекту -> Свойства -> Каталоги VC++ -> Каталоги включения, добавьте:

C:\opencv\build\include

3. Настройте каталоги библиотек

Щёлкните правой кнопкой мыши по проекту -> Свойства -> Каталоги VC++ -> Каталоги библиотек, добавьте:

C:\opencv\build\x64\vc15\lib

4. Настройка компоновщика

Щёлкните правой кнопкой мыши по проекту -> Свойства -> Компоновщик -> Ввод -> Дополнительные зависимости, добавьте:

opencv_world4xx.lib

4xx— это номер версии OpenCV, напримерopencv_world450.lib 。


Сборка и установка из исходного кода

Предварительные требования

Перед установкой OpenCV убедитесь, что в вашей системе установлены следующие инструменты:

  • CMake: используется для генерации файлов сборки.
  • Компилятор C++: например, GCC (Linux/macOS) или MSVC (Windows).
  • Git: используется для клонирования исходного кода OpenCV с GitHub.

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

Мы можем скачать исходный код изрепозитория OpenCV на GitHubили напрямую софициального сайта OpenCVскачать предварительно скомпилированную версию.

Клонирование исходного кода с помощью Git:

git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git  # 可选,包含额外的模块

Настройка OpenCV с помощью CMake

1. Создайте каталог сборки и перейдите в него:

mkdir build
cd build

2. Используйте CMake для создания файлов сборки:

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..

Если вам нужны дополнительные модули (такие какopencv_contrib), вы можете добавить следующие параметры:

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules ..

3. Соберите и установите OpenCV:

make -j4  # 使用 4 个线程进行编译
sudo make install

4. Настройте переменные среды (необязательно)

В Linux или macOS вам может потребоваться добавить путь к библиотекам OpenCV в переменные среды:

export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

В Windows вы можете добавить путь к библиотекам OpenCV через Свойства системы -> Дополнительные параметры системы -> Переменные среды.


Использование OpenCV в проекте C++

После установки вы можете использовать OpenCV в своем проекте C++.

Ниже приведен простой пример программы, демонстрирующий, как загрузить и отобразить изображение с помощью OpenCV.

1. Создайте проект C++

Создайте новый исходный файл C++, напримерmain.cpp。

Напишите следующий код:

Пример

#include <opencv2/opencv.hpp>
#include <iostream>

int main() {
    // Прочитать изображение
    cv::Mat image = cv::imread("example.jpg");

    // Проверьте, успешно ли загрузилось изображение
    if (image.empty()) {
        std::cout << "Не удалось загрузить изображение!" << std::endl;
        return -1;
    }

    // Отобразить изображение
    cv::imshow("Отобразить изображение", image);

    // Ожидание нажатия клавиши
    cv::waitKey(0);

    return 0;
}

2. Компиляция и запуск

Скомпилируйте код с помощью следующей команды:

g++ main.cpp -o main `pkg-config --cflags --libs opencv4`

3. Запуск

Запустите созданный исполняемый файл:

./main

Если всё работает нормально, вы должны увидеть изображение, отображаемое в окне.


Распространённые проблемы и решения

1. Не удаётся найти библиотеки OpenCV

Если при компиляции возникает ошибка об отсутствии библиотек OpenCV, убедитесь, что OpenCV установлен правильно и переменные среды настроены корректно.

Мы можем использоватьpkg-configчтобы проверить путь установки OpenCV:

pkg-config --cflags --libs opencv4

2. Изображение не загружается

Если изображение не загружается, проверьте, правильный ли путь к изображению и существует ли файл изображения. Можно использовать абсолютный путь, чтобы убедиться, что путь правильный.

3. Окно не отображается

Если окно не отображается, убедитесь, что ваша система поддерживает графический интерфейс и что модуль OpenCV GUI установлен правильно.

Другие расширения