Как установить 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-devlibavcodec-dev libavformat-dev libswscale-dev libv4l-devlibxvidcore-dev libx264-dev libjpeg-dev libpng-dev libtiff-devgfortran openexr libatlas-base-dev python3-dev python3-numpylibtbb2 libtbb-dev libdc1394-22-dev libopenexr-devlibgstreamer-plugins-base1.0-dev libgstreamer1.0-dev
mkdir ~/opencv_build && cd ~/opencv_buildgit clone https://github.com/opencv/opencv.gitgit clone https://github.com/opencv/opencv_contrib.git
cd ~/opencv_build/opencvmkdir -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.
