Перейти к содержимому

Как установить opencv python

  • автор:

Как установить opencv python

Рассмотрены различные способы установки бибилотеки OpenCV. Поддержка как Linux (Mac), так и Windows. Показано взаимодействие с QT.

1 Установка и настройка системы

Программы можно писать как на Си (Си++), так и на python. Материал данной заметки скорее ориентирован на разработку программ с использованием языков Си и Си++. Для написания программ на python нужно частично выполнить указания данной заметки, а потом установить соответствующий пакет для python.

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

В первом подразделе рассмотрена система Linux, а во втором Windows.

1.1 Linux

В данном подразделе рассматривается операционная система Linux.

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

Установка из репозитория Многие дистрибутивы Linux уже имеют пакет с OpenCV. Поэтому можно его установить от туда. Для этого нужна указать системе управления пакетами, что нужно установить пакеты относящиеся к OpenCV. Желательно все. Такие пакеты обычно имеет имя начинающиеся с libopencv. Например, в семействе Debian такими пакетами будут: libopencv-core. libopencv-imgproc. libopencv-highgui. и тому подобное. Где к вместо троеточия идет номер версии библиотеки. В частности, может начинаться с 2.4. Детали точного названия не важны.

Более того, ввиду того, что библиотека нам нужна не только для запуска программ написанных с применением OpenCV, но и для разработки собственных программ, понадобятся пакеты отвечающие за сборку.

Для сборки программ в случае если все было сделано правильно:

1 g++ prog.cpp − std=c++11 ‘pkg − config opencv − − cflags \
2 > − − libs‘ − o prog

Символы \и > обозначает то, что это продолжение строки. На самом деле достаточно все указать на одной строке (без этих символов).

prog.cpp это входной файл с кодом программы, а prog это выходной исполняемый файл.

Сборка Иногда бывает, что все-таки собрать библиотеку. Для этого могут быть разные причины: от отсутствия нужной версии библиотеки в репозитории, до необходимости детального изучения самого кода библиотеки.

Делается достаточно просто.

Сначало нужно скачать исходный код библиотеки. Для этого существуют как минимум два варианта. Либо готовый архив со страничке официального сайта либо с глобального места хранения исходных кодов (github).

На странице официального сайта ( http://opencv.org/releases.html ) нужно выбрать нужную версию библиотеки и выбрать для скачивания ссылку sources. Будет скачен архив. Далее его нужно будет разархивировать на диске с достаточным свободным местом.

Другой вариант это скачать сайт непосредственно из

Такой подход позволяет скачать максимально актуальную версию библиотеки. Актуальонсть определяется не только наличием самых последних плюшек, но и наличием новых ошибок. Для скачивания из такого хранилища можно либо непосредственно скачать сам архив с исходным кодом (чего будет достаточно) либо выудить данные используя специальную программу git, которую необходимо установить в систему в случае её отсутствия. Для сачивания данных с git нужно выбрать место куда скачать, например, папка ~ /Downloads/opencv/ и далее вызвать git clone https://github.com/opencv/opencv.git Данная команда выудит исходный код в подпапку opencv. В данном случае код будет скачан в папку: ~ /Downloads/opencv/opencv Чтобы в дальнейшем не путаться (например, если необходимо работать с разными версиями библиотеки opencv) можно переименовать папку например в ~ /Downloads/opencv/opencv-3.3.0/

Далее как и в предыдущем пункте переходим к процессу самой сборки библиотеки.

Пусть была скачена библиотека и размещена в папку

Далее следует решить в какой папке будет создаваться код. Данная папка является временной, на время создания бинарников. Расположение этой папки не так важно так как скопировать бинарники всегда можно будет потом. Более того, установка бинарников в системную папку делается отдельно и не зависит от положения этой временной папки. Обычно её создают как подпапку и называют build.

Таким образом нужной перейти в папку ~ /Downloads/opencv/opencv-3.3.0, создать подпапку build и перейти в неё.

После этих шагов в нужно сконфигурировать сборку. Можно выбрать например с форматом каких картинок будет уметь работать библиотека, какое будет ускорение и тому подобное.

Конфигурацию можно выполнить в текстовом режиме, но это скучно. Лучше использовать оконный конфигуратор. Для этого нужно в консоли вызвать cmake-gui .. из папки build. Далее нужно нажать кнопку конфигурировать (Configure), согласившись (Finish) с параметрами по умолчанию. Будет показан список параметров (кирпичный цвет ни очем плохом не говорит, просто разработчики любят такую цветовую гамму) Список параметров большой. Обычно можно делать сборку с параметрами по умолчанию. Но следует обратить внимания на параметры связанные с оконной системой QT и примеры программ (BUILD_EXAMPLES, INSTALL_C_EXAMPLES, INSTALL_PYTHON_EXAMPLES). После выбора параметров следует заново выполнить конфигурирование (нажать кнопку). После этого могут появится новый возможности. Например,при включении with_qt после повторного конфигурирования появятся параметры связанные непосредственно с qt.

Потом следует нажать кнопку сформировать (Generate), которая и создаст необходимые Makefileы для сборки библиотеки.

Далее следует выйти из данной программы и в консоли вызвать make. После чего можно пойти перекусить, процесс сборки достаточно продолжительный. Для ускорения можно указать make чтобы он выполнял работу в параллель: make -j 8, например укажет на использование 8 потоков для сборки.

Для сборки и запуска программ этого будет достаточно. Так, при компиляции нужно будет указывать компилятору расположение файлов заголовков, при сборки расположение бинарных библиотек.

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

1.2 Windows

Установка из бинарников Windows в отличие от Linux разрабатывается централизовано, т.е. понятно, что за него отвечает фирма Microsoft. Поэтому программы под Windows бинарно совместимы. Последнее означает, что нет необходимости собирать библиотеку OpenCV под каждую версию Windows. Последнее влечет, что её достаточно собрать единожды и она будет работать “везде”. Именно поэтому в случае Windows можно скачать нужные архив с официального сайта библиотеки: http://opencv.org/releases.html По крайней мере будет указана необходимая ссылка.

Этот архив скачивается и разархивируется в выбранном месте на диске. Программы установщика нету. поэтому нужно самостоятельно выбрать удобное расположение корневой папки библиотеки.

Самое сложное является настройка программы, которая используется для компиляции программ.

Для настройки проекта нужно указать пути к папка содержащем заголовочные файлы библиотеки. .. Тоже для библиотечных. Есть два типа бинарников: для отладки и для “выпускные”. Их не следует путать, иначе программа может выдавать странные ошибки. и будет создаваться впечатление, что не работает программа, хотя на самом деле не правильно настроен компилятор/сборщик.

1.3 Программы

Запуск простейшей программы.

1 # include
2 # include
3
4 # include
5
6 int main( int argc, char ∗∗ argv )
7 <
8 if ( argc < 3 )
9 <
10 std::cout 11 «image file names!» 12 return − 1;
13 >
14
15 cv::Mat I = cv::imread( argv[1],
16 cv::IMREAD_GRAYSCALE );
17 cv::imwrite( argv[2], I );
18 return 0;
19 >

Строчки в кавычках можно так не разбивать! Это сделано для размещения текста на странице!

Курс рассчитан на текущую версию библиотеки. Поэтому, если будут ошибки относительно cv::IMREAD_GRAYSCALE, то замени его на

Запуск с окном из OpenCV

1 # include
2 # include
3
4 # include
5
6 int main( int argc, char ∗∗ argv )
7 <
8 if ( argc < 2 )
9 <
10 std::cout 11 «to show!» 12 return − 1;
13 >
14
15 cv::Mat I = cv::imread( argv[1], cv::IMREAD_COLOR );
16 cv::namedWindow( «My Window», cv::WINDOW_AUTOSIZE );
17 cv::imshow( «My Window», I );
18 cv::waitKey( 0 );
19 return 0;
20 >

Кросс-платформенность есть, но оконная система очень примитивная.

Полноценная оконная система и кросс-платформенность.

Как установить OpenCV в Ubuntu 20.04

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

OpenCV используется для широкого спектра приложений, включая анализ медицинских изображений, сшивание изображений улиц, видеонаблюдение, обнаружение и распознавание лиц, отслеживание движущихся объектов, извлечение 3D-моделей и многое другое.

В этой статье описывается, как установить OpenCV в Ubuntu 20.04. Чтобы установить последнюю стабильную версию OpenCV из исходного кода, прокрутите вниз до раздела « Установка OpenCV из исходного кода » этого руководства. Выберите наиболее удобный для вас способ установки.

Установка OpenCV из репозитория Ubuntu

OpenCV доступен для установки из репозиториев Ubuntu 20.04 по умолчанию. Для его установки выполните:

sudo apt updatesudo apt install libopencv-dev python3-opencv

Приведенная выше команда установит все пакеты, необходимые для запуска OpenCV.

Проверьте установку, импортировав модуль cv2 и распечатав версию OpenCV:

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

На момент написания в репозиториях стоит версия 4.2:

Установка OpenCV из исходного кода

Сборка библиотеки OpenCV из исходного кода позволяет получить самую последнюю доступную версию. Он будет оптимизирован для вашей конкретной системы, и вы получите полный контроль над параметрами сборки. Это рекомендуемый способ установки OpenCV.

Выполните следующие шаги, чтобы установить последнюю версию OpenCV из источника:

sudo apt 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 libdc1394-22-dev libopenexr-dev libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev
mkdir ~/opencv_build && cd ~/opencv_build git clone https://github.com/opencv/opencv.git git clone https://github.com/opencv/opencv_contrib.git
cd ~/opencv_build/opencv mkdir -p 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_build/opencv_contrib/modules -D BUILD_EXAMPLES=ON ..

Результат будет выглядеть примерно так:

-- Configuring done -- Generating done -- Build files have been written to: /home/vagrant/opencv_build/opencv/build
make -j8
sudo make install
pkg-config --modversion opencv4

Привязки Python:

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

Выводы

Мы показали вам два разных способа установки OpenCV на ваш компьютер с Ubuntu 20.04. Выбор метода зависит от ваших требований и предпочтений. Несмотря на то, что установить упакованную версию из репозитория Ubuntu проще, сборка OpenCV из исходного кода дает вам больше гибкости, и это должно быть вашим первым вариантом при установке OpenCV.

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии ниже.

Как установить OpenCV на Raspberry Pi 3

OpenCV (библиотека компьютерного зрения с открытым исходным кодом) — это библиотека компьютерного зрения с открытым исходным кодом, имеющая привязки для C ++, Python и Java. Он используется для очень широкого круга приложений, включая анализ медицинских изображений, сшивание изображений улиц, видео наблюдения, обнаружение и распознавание лиц, отслеживание движущихся объектов, извлечение 3D-моделей и многое другое.

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

В этом руководстве мы объясним, как установить OpenCV на Raspberry Pi.

Подготовка

Установка OpenCV из репозиториев Raspbian

Модуль OpenCV Python доступен из стандартного репозитория Raspbian. На момент написания в репозиториях стоит версия 3.2, которая не является последней версией.

Чтобы установить модуль OpenCV Python, выполните следующие команды:

sudo apt updatesudo apt install python3-opencv

Приведенная выше команда установит все пакеты, необходимые для запуска OpenCV.

Чтобы проверить установку, импортируйте модуль cv2 и распечатайте версию OpenCV:

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

Если вы хотите установить OpenCV с привязками Python 2, установите пакет python-opencv .

Установить OpenCV из исходного кода

Рекомендуемый способ установки OpenCV — собрать библиотеку из исходного кода. Таким образом, у вас будет полный контроль над параметрами сборки, а OpenCV будет оптимизирован для вашей системы.

Начните с увеличения пространства подкачки, чтобы избежать зависаний компиляции из-за проблем с памятью:

sudo nano /etc/dphys-swapfile

Измените значение CONF_SWAPSIZE со 100 по умолчанию на 1024 :

/etc/dphys-swapfile

CONF_SWAPSIZE=1024 

Сохраните файл и выполните следующую команду, чтобы изменения вступили в силу:

sudo /etc/init.d/dphys-swapfile restart

Теперь мы можем начать сборку OpenCV. Сначала обновите индекс пакетов и установите инструменты сборки и необходимые зависимости:

sudo apt update
sudo apt install build-essential cmake git pkg-config libgtk-3-dev "libcanberra-gtk*"
sudo apt install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev
sudo apt install libjpeg-dev libpng-dev libtiff-dev gfortran openexr libatlas-base-dev opencl-headers
sudo apt install python3-dev python3-numpy libtbb2 libtbb-dev libdc1394-22-dev

Создайте каталог сборки , перейдите к нему и клонируйте репозитории OpenCV и OpenCV contrib из Github:

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

На момент написания версия по умолчанию в репозиториях GitHub — 4.1.1. Если вы хотите установить старую версию OpenCV, перейдите в opencv_contrib opencv и opencv_contrib и запустите git checkout .

После клонирования репозиториев создайте временный каталог сборки и перейдите в него:

mkdir -p ~/opencv_build/opencv/build && cd ~/opencv_build/opencv/build

Настройте конфигурацию сборки OpenCV с помощью cmake :

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_C_EXAMPLES=OFF -D INSTALL_PYTHON_EXAMPLES=OFF -D OPENCV_GENERATE_PKGCONFIG=ON -D ENABLE_NEON=ON -D OPENCV_EXTRA_EXE_LINKER_FLAGS=-latomic -D ENABLE_VFPV3=ON -D BUILD_TESTS=OFF -D OPENCV_ENABLE_NONFREE=ON -D OPENCV_EXTRA_MODULES_PATH=~/opencv_build/opencv_contrib/modules -D BUILD_EXAMPLES=OFF .. 

Результат будет выглядеть примерно так:

. -- Configuring done -- Generating done -- Build files have been written to: /home/pi/opencv_build/opencv/build 

Запустите make чтобы начать процесс компиляции:

make -j4

Процесс займет некоторое время, около 1-2 часов, в зависимости от модели Raspberry Pi. Если компиляция в какой-то момент не удалась из-за недоступности ресурсов, запустите команду make раз, и процесс продолжится с того места, где он остановился.

По завершении вы увидите что-то вроде ниже:

. [100%] Linking CXX shared module ../../lib/python3/cv2.cpython-35m-arm-linux-gnueabihf.so [100%] Built target opencv_python3 

Последний шаг — установка скомпилированных файлов OpenCV:

sudo make install
. -- Installing: /usr/local/bin/opencv_version -- Set runtime path of "/usr/local/bin/opencv_version" to "/usr/local/lib" 

Чтобы проверить, успешно ли установлен OpenCV, введите следующие команды, и вы должны увидеть версию OpenCV:

Библиотека C ++:

pkg-config --modversion opencv4

Библиотека Python:

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

Очистить

Если у вас мало свободного места на SD-карте, удалите исходные файлы:

rm -rf ~/opencv_build

Использование частой замены может повредить вашу SD-карту. Верните пространство подкачки к исходному размеру:

sudo nano /etc/dphys-swapfile

Измените значение CONF_SWAPSIZE на 100 :

/etc/dphys-swapfile

CONF_SWAPSIZE=100 

Сохраните файл и активируйте изменения:

sudo /etc/init.d/dphys-swapfile restart

Выводы

Мы показали вам, как установить OpenCV на вашу плату Raspberry Pi. Сборка OpenCV из исходного кода дает вам больше гибкости, и это должно быть вашим первым вариантом при установке OpenCV.

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии ниже.

Установка OpenCV

ошибка кода

Я пытаюсь установить библиотеку OpenCV, которая уже была в Anaconda3, но при работе пишет, что такого модуля не существует.

Отслеживать
задан 8 мар 2021 в 7:59
chelovek165 chelovek165
3 2 2 бронзовых знака

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

Я решил проблему, она была связана с тем, что на MacOS предустановлен python2.7, и OpenCV установился туда. Надо было зайти в настройки PyCharm и в настройках данного проекта вручную установить opencv-python.

Отслеживать
ответ дан 8 мар 2021 в 8:18
chelovek165 chelovek165
3 2 2 бронзовых знака

  • opencv
  • anaconda
    Важное на Мете
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.11.15.1019

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *