Как удалить opencv windows

Обновлено: 06.07.2024

В прошлый раз мы познакомились с OpenCV под Linux. Теперь проделаем аналогичную процедуру по установке под Windows. А также создадим простое приложение, использующее модуль OpenCV для работы с веб-камерами:

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

  1. Устанавливаем Git;
  2. Устанавливаем MinGW. Я установил его вместе с пакетом Qt;
  3. Устанавливаем Cmake;
  4. Прописываем пути к bin -каталогам MinGW и Cmake в переменную окружения PATH . По умолчанию Git сам прописывает пути к своим исполняемым файлам, поэтому дополнительные манипуляции с PATH для него не требуются.

Шаг 1: Получаем исходные коды OpenCV из Git

Шаг 2: Подготавливаем OpenCV к сборке

В качестве каталога установки я использую C:\OpenCV\ .

Шаг 3: Собираем и устанавливаем OpenCV

Если все прошло без ошибок, то мы можем проверить работоспособность сборки на примере по распознаванию лиц из прошлой статьи ( скачать). Однако нам потребуется внести пару изменений в pro -файл. Они отражены в следующих строках:

Реклама

OpenCV: Реализация примера для работы с веб-камерой

Начинаем с pro -файла:

По сравнению с примером чуть выше мы отключили модуль objdetect , но подключили videoio .

Заголовочный файл mainwidget.h :

Обратите внимание, что мы заготовили класс задачи WebCamStreamTask . Именно здесь мы задействуем функции модуля VideoCapture . Главный поток управления с GUI будет всего лишь получать готовые изображения QImage и отображать их в QLabel .

Особый интерес для нас представляет следующий фрагмент:

Сначала мы пытаемся открыть веб-камеру по умолчанию. Если что-то пошло не так, то поток прерывает свое выполнение (это не слишком информативно, поэтому никогда не делайте так в настоящем приложении):

Далее мы запускаем бесконечный цикл (он остановится при выходе из приложения или при сбое в работе веб-камеры), в котором получаем кадры от веб-камеры:

Во второй части каждой итерации мы преобразуем полученный кадр (объект класса cv::Mat ) в QImage , копию которого затем отправляем с помощью сигнала frameAvailable() :

Следует заметить, что мы преобразуем исходный cv::Mat в определенный формат, из которого уже и формируется QImage . При этом мы отправляем именно копию QImage , потому что конструктор QImage не делает глубокую копию входного буфера с данными изображения.

В данной статье речь пойдет о сборке и установке OpenCV 4 для C/C++, Python 2 и Python 3 из исходных файлов с дополнительными модулями CUDA 10 на ОС Windows.


Я постарался включить сюда все тонкости и нюансы, с которыми можно столкнуться в ходе установки, и про которые не написано в официальном мануале.


Сборка тестировалась для:

  • Windows 8.1 + Visual Studio 2017 + Python 2/3 + CUDA 10.0 + GeForce 840m
  • Windows 10 + Visual Studio 2019 + Python 2/3 + CUDA 10.0 + GeForce GTX 1060

Что потребуется для установки

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

  1. CMake 3.15
  2. MS Visual Studio 2019 64-бит + средства CMake С++ для Windows
  3. Python 3.7.3 64-бит + NumPy 64-бит
  4. Python 2.7.16 64-бит + NumPy 64-бит
  5. CUDA 10.0
  6. CuDNN 7.6.2
  7. OpenCV 4.1.1 и OpenCV-contrib-4.1.1

Установка

Так как установка производится через консольные команды, то следует внимательно и аккуратно выполнять все шаги. Также, при необходимости, меняйте установочные пути на свои.
Для начала необходимо установить требуемое ПО, причем Visual Studio должна быть установлена до CUDA:

Далее загружаем архивы исходников opencv-4.1.1 и opencv-contrib-4.1.1 в желаемое место (в моем случае это C:\OpenCV\).



Создаем папку build/ внутри opencv-4.1.1.


Далее сгенерируем файлы сборки с помощью cmake. Мы будем использовать консольный вариант cmake, так как cmake-gui путает типы некоторых переменных (например, OPENCV_PYTHON3_VERSION) и, как следствие, неправильно генерирует файлы.

Открываем консоль по пути C:\OpenCV\ и прописываем переменные.


Примечание. Для Visual Studio 2017 генератор пишется как «Visual Studio 15 2017 Win64» и без флага -A.

Также можно явно указать питоновские библиотеки для python 2 и python 3 на случай, если сборщик не сможет найти их автоматически.


Примечание. Обратите внимание на то, что библиотека NumPy должна быть той же разрядности, что и OpenCV. Проверить это легко:

Выполняем генерацию файлов сборки с помощью длинной команды ниже. При неудачной генерации или наличии ошибок после выполнения команды, повторную генерацию следует производить вычистив все файлы в build/ и .cache/.

  • BUILD_opencv_world – необязательный модуль, содержащий копии всех выбранных в ходе установки библиотек. Удобен при разработке на C++, так как вместо подключения кучи зависимостей opencv можно подключить одну зависимость opencv_world411.lib в проект
  • INSTALL_EXAMPLES/INSTALL_TESTS – установка примеров/тестов кода opencv
  • CUDA_FAST_MATH, WITH_CUBLAS – дополнительные модули для CUDA, призванные ускорить вычисления
  • CUDA_ARCH_PTX – версия PTX инструкций для улучшения производительности вычислений
  • OPENCV_EXTRA_MODULES_PATH – путь до дополнительных модулей из opencv-contrib (обязательно для CUDA)
  • BUILD_PROTOBUF – для работы некоторых модулей opencv необходим Protobuf (сборщик opencv в любом случае поставит BUILD_PROTOBUF=ON)

Спустя примерно 10 минут в консоле должна появиться информация о сборке и завершающие строки «Configuring done» и «Generating done». Проверяем всю информацию, особенно разделы NVIDIA CUDA, Python 2, Python 3.


Далее собираем решение. На сборку может уйти несколько часов в зависимости от вашего процессора и версии Visual Studio.


После успешной установки создаем системную переменную OPENCV_DIR со значением C:\OpenCV\opencv-4.1.1\build\install\x64\vc15\bin и также добавляем ее в PATH.

Проверим работоспособность OpenCV с модулем CUDA на простом примере умножения матриц.

  1. Установить тип сборки Release/x64 (для Debug следует собрать OpenCV с флагом Debug)
  2. Project Properties → C/C++ → General → Добавить строку «C:\OpenCV\opencv-4.1.1\build\install\include» в Additional Include Directories
  3. Project Properties → Linker → General → Добавить строку « C:\OpenCV\opencv-4.1.1\build\install\x64\vc16\lib» в Additional Library Directories
  4. Project Properties → Linker → General → Добавить «;opencv_world411.lib» («;opencv_world411d.lib» для Debug) в конец Additional Dependencies

Пример на Python 3


Вывод в консоли


Пример на C++


Вывод в консоли

Удаление

Чтобы удалить OpenCV, нужно выполнить команду.


и удалить системную переменную OPENCV_DIR и убрать путь до OpenCV из PATH.

Заключение

В статье мы рассмотрели установку OpenCV 4 для ОС Windows 10. Данный алгоритм тестировался на Windows 8.1 и Windows 10, но, в теории, может собираться и на Windows 7. За дополнительной информацией можно обратиться к списку источников ниже.

Я хотел задать конкретный вопрос, прежде чем пробовать что-нибудь еще и, возможно, разрушить мой дистрибутив Anaconda.

Я установил opencv-python по инструкции здесь :

Я думал, что это сработало, потому что я мог запускать defs import cv2 в моей Spyder IDE, и conda list вернулся:

Однако я быстро столкнулся с проблемами при попытке использовать руководство . В частности, img = cv2.imread('messi5.jpg',0) вернет None объект. Я пробовал img = cv2.imread(r'C:\path_to_my_image.jpg',0) с локальной фотографией, и она правильно вернула массив объектов 2D в оттенках серого. Я уверен, что мне просто не удалось установить библиотеку фотографий, поставляемую с opencv.

Я ожидал большего количества проблем и немного покопался, где я нашел, что этот ответ показывает, что я, вероятно, установил неправильную версию cv. Я попытался удалить с помощью pip , но открыл текстовый файл из активного каталога и получил ошибку разрешения!

Я закрыл текстовый файл и попытался запустить pip uninstall opencv-python снова, но теперь получаю:

Я не знаю, верно ли это предупреждение, потому что по- conda list прежнему отображается opencv-python как доступный пакет:

Я наконец попробовал, conda remove opencv-python но он говорит, что пакеты не найдены ?!

Я хочу выполнить чистую opencv3 установку с помощью этого метода, но не знаю, будут ли конфликты библиотек или что-то в этом роде. Я очень сбит с толку тем, что здесь происходит, и хотел получить совет, прежде чем пытаться изменить свой дистрибутив. Если мне нужно полностью переустановить Anaconda, это еще не конец света, но я решил поделиться этими проблемами, если кто-то еще столкнется с ними!

Как я могу быть уверен, что все pip-файлы opencv полностью удалены, без чистой переустановки Anaconda?

Заранее спасибо за помощь!

Поскольку пакет был установлен пользователем pip , вы должны удалить его с помощью pip uninstall .

Проблема в том, что удаление было прервано из-за того, что некоторые файлы были приняты другим процессом.

Чтобы решить эту проблему, переустановите пакет. Затем удалите его.

Эта статья взята из Интернета, укажите источник при перепечатке.

Как удалить старую конфигурацию opencv недавно установленного VS2019 + opencv4.20

Как удалить старую конфигурацию opencv только что установленного VS2019 + opencv4.20

После новой установки vs2019 + opencv4.20 возникли некоторые проблемы.
После установки VS автоматически настроит путь, который вы ранее указали в каталоге include, даже если вы переустановите VS.
Решение
, вероятно, находится на этом пути
C:\Users\ имя пользователя \AppData\Local\Microsoft\MSBuild\v4.0
Найдите следующий файл:

Откройте и удалите исходную конфигурацию с помощью Блокнота

Будьте осторожны, чтобы не удалить или удалить меньше
После этого вы можете перенастроить opencv

Отображать изображения, всегда переполнять исключения, средние точки останова.

Удалить проблему с изображением



Это зависит от того, используете ли вы режим DEBUG или Release. Для отладки используйте вышеупомянутую библиотеку. Release delete d

Тестовый код


Просто запишите это.

Интеллектуальная рекомендация

совместный запрос mysql с тремя таблицами (таблица сотрудников, таблица отделов, таблица зарплат)

1. Краткое изложение проблемы: (внизу есть инструкция по созданию таблицы, копирование можно непосредственно практиковать с помощью (mysql)) Найдите отделы, в которых есть хотя бы один сотрудник. Отоб.


[Загрузчик классов обучения JVM] Третий день пользовательского контента, связанного с загрузчиком классов


IP, сеанс и cookie

Читайте также: