Как узнать версию opencv
Find OpenCV Version Installed on Ubuntu [duplicate]
I am trying to run some code that i have already tested on another computer with OpenCV 2.3 installed and i get many errors.
5 Answers 5
The other methods here didn’t work for me, so here’s what does work in Ubuntu 12.04 ‘precise’.
On Ubuntu and other Debian-derived platforms, dpkg is the typical way to get software package versions. For more recent versions than the one that @Tio refers to, use
You can look at the headers or libs installed. pkg-config can tell you where they are:
Alternatively you can write a simple program and print the following defs:
A similar question has been also asked here:
1) Direct Answer: Try this:
To see the version, you can try:
«sudo make install» is your enemy, don’t do that when you need to compile/update the library often and possibly debug step through it’s internal functions. Notice how my config file is in a local build directory, not in /usr/something. You will avoid this confusion in the future, and can maintain several different versions even (debug and release, for example).
Edit: the reason this questions seems to arise often for OpenCV as opposed to other libraries is that it changes rather dramatically and fast between versions, and many of the operations are not so well-defined / well-constrained so you can’t just rely on it to be a black-box like you do for something like libpng or libjpeg. Thus, better to not install it at all really, but just compile and link to the build folder.
Найти версию OpenCV, установленную на Ubuntu [дубликат]
этот вопрос уже есть ответ здесь:
Я пытаюсь запустить некоторый код, который я уже тестировал на другом компьютере с установленным OpenCV 2.3, и я получаю много ошибок.
5 ответов
вы можете посмотреть на заголовки или установленные библиотеки. файл pkg-config может сказать вам, где они находятся:
кроме того, вы можете написать простую программу и распечатать следующие Def-ы:
аналогичный вопрос также был задан здесь:
другие методы здесь не работали для меня, так что вот что работает в Ubuntu 12.04 ‘precise’.
на Ubuntu и других платформах, производных от Debian, dpkg-это типичный способ получения версий пакетов программного обеспечения. Для более поздних версий, чем та, на которую ссылается @Tio, используйте
1) Прямой Ответ: Попробуйте это:
для меня, я получаю:
чтобы увидеть версию, вы можете попробовать:
Edit: причина, по которой эти вопросы, похоже, возникают часто для OpenCV в отличие от других библиотек, он меняется довольно резко и быстро между версиями, и многие операции не так четко определены / хорошо ограничены, поэтому вы не можете просто полагаться на него, чтобы быть черным ящиком, как вы делаете для чего-то вроде libpng или libjpeg. Таким образом, лучше вообще не устанавливать его, а просто компилировать и ссылаться на папку сборки.
существует также флаг CV_VERSION, который распечатает полную версию opencv
чтобы установить этот продукт, вы можете увидеть этот учебник:OpenCV на Ubuntu
там указаны пакеты, которые вам нужны. Итак, с:
и более перечисленные в url вы можете найти, какие пакеты установлены.
вы можете проверить, где установлен
этот оператор используется для всех пакетов debian.
OpenCV 3.0 was released recently, and you might be thinking of upgrading your code base. OpenCV 2 code will most likely not compile with OpenCV 3 because the new version is not backwardly compatible. So you need a mechanism to make sure your code is compatible with both OpenCV 3 and OpenCV 2. This post explains how to detect the version of OpenCV inside your code. Example C++ and Python code is shown below.
How to Detect OpenCV Version in Python
Everything is easy in Python. cv2.__version__ gives you the version string. You can extract major and minor version from it as shown in the example below.
How to Detect OpenCV Version in C++
In C++ several macros are defined to easily detect the version — CV_VERSION, CV_MAJOR_VERSION, CV_MINOR_VERSION, CV_SUBMINOR_VERSION. See the sample code below as an example.
You can see another example at my post about Blob Detector.
Subscribe & Download Code
If you liked this article and would like to download code (C++ and Python) and example images used in this post, please click here. Alternately, sign up to receive a free Computer Vision Resource Guide. In our newsletter, we share OpenCV tutorials and examples written in C++/Python, and Computer Vision and Machine Learning algorithms and news.
Comments
That is strange. What do you get when you do the following
ls /home/martin/lib/opencv-2.4.12/lib/
libopencv_calib3d.so libopencv_ml.so.2.4.12
libopencv_calib3d.so.2.4 libopencv_nonfree.so
libopencv_calib3d.so.2.4.12 libopencv_nonfree.so.2.4
libopencv_contrib.so libopencv_nonfree.so.2.4.12
libopencv_contrib.so.2.4 libopencv_objdetect.so
libopencv_contrib.so.2.4.12 libopencv_objdetect.so.2.4
libopencv_core.so libopencv_objdetect.so.2.4.12
libopencv_core.so.2.4 libopencv_ocl.so
libopencv_core.so.2.4.12 libopencv_ocl.so.2.4
libopencv_features2d.so libopencv_ocl.so.2.4.12
libopencv_features2d.so.2.4 libopencv_photo.so
libopencv_features2d.so.2.4.12 libopencv_photo.so.2.4
libopencv_flann.so libopencv_photo.so.2.4.12
libopencv_flann.so.2.4 libopencv_stitching.so
libopencv_flann.so.2.4.12 libopencv_stitching.so.2.4
libopencv_gpu.so libopencv_stitching.so.2.4.12
libopencv_gpu.so.2.4 libopencv_superres.so
libopencv_gpu.so.2.4.12 libopencv_superres.so.2.4
libopencv_highgui.so libopencv_superres.so.2.4.12
libopencv_highgui.so.2.4 libopencv_ts.a
libopencv_highgui.so.2.4.12 libopencv_video.so
libopencv_imgproc.so libopencv_video.so.2.4
libopencv_imgproc.so.2.4 libopencv_video.so.2.4.12
libopencv_imgproc.so.2.4.12 libopencv_videostab.so
libopencv_legacy.so libopencv_videostab.so.2.4
libopencv_legacy.so.2.4 libopencv_videostab.so.2.4.12
libopencv_legacy.so.2.4.12 pkgconfig
libopencv_ml.so python2.7
libopencv_ml.so.2.4
Actually, you have an old source code where they forgot to change the version number. Check this out.
Найти версию OpenCV, установленную на Ubuntu
Я хотел бы узнать, какая версия OpenCV установлена на моем компьютере (я запускаю Ubuntu 10.04). Есть ли простой способ проверить это, если? Если нет, то могу ли я узнать каталоги, где установлены файлы (образцы и т.д.)?
Я пытаюсь запустить некоторый код, который я уже тестировал на другом компьютере с установленным OpenCV 2.3, и я получаю много ошибок.
Для установки этого продукта вы можете увидеть этот учебник: OpenCV на Ubuntu
Здесь перечислены необходимые вам пакеты. Итак, с:
и более перечисленных в URL-адресе вы можете найти, какие пакеты установлены.
вы можете проверить, где установлены
Этот оператор используется для всех пакетов debian.
Другие методы здесь не сработали для меня, поэтому вот что работает в Ubuntu 12.04 «точный».
Вы можете посмотреть установленные заголовки или библиотеки. pkg-config может сообщить вам, где они находятся:
В качестве альтернативы вы можете написать простую программу и напечатать следующие параметры:
Аналогичный вопрос также задан здесь:
1) Прямой ответ:
Попробуйте следующее:
Для меня я получаю:
Чтобы увидеть версию, вы можете попробовать:
Изменить: причина, по которой этот вопрос часто возникает для OpenCV, в отличие от других библиотек, заключается в том, что он изменяется довольно резко и быстро между версиями, и многие из операций не так четко определены/так что вы не можете просто полагаться на него как на черный ящик, как вы делаете что-то вроде libpng или libjpeg. Таким образом, лучше не устанавливать его вообще, а просто компилировать и ссылаться на папку сборки.
Шпаргалка по OpenCV — Python
Что такое OpenCV?
Библиотека компьютерного зрения и машинного обучения с открытым исходным кодом. В неё входят более 2500 алгоритмов, в которых есть как классические, так и современные алгоритмы для компьютерного зрения и машинного обучения. Эта библиотека имеет интерфейсы на различных языках, среди которых есть Python (в этой статье используем его), Java, C++ и Matlab.
Содержание
Установка
Инструкцию по установке на Windows можно посмотреть здесь, а на Linux — здесь.
Импорт и просмотр изображения
Примечание При чтении способом выше изображение находится в цветовом пространстве не RGB (как все привыкли), а BGR. Возможно, в начале это не так важно, но как только вы начнёте работать с цветом — стоит знать об этой особенности. Есть 2 пути решения:
Примечание Чтобы закрыть окно, в котором отображается изображение, нажмите любую клавишу. Если использовать кнопку закрытия окна, можно наткнуться на подвисания.
На протяжении статьи для вывода изображений будет использоваться следующий код:
Кадрирование
Пёсик после кадрирования
Изменение размера
После изменения размера на 20 %
Эта функция учитывает соотношение сторон оригинального изображения. Другие функции изменения размера изображений можно увидеть здесь.
Поворот
Пёсик после поворота на 180 градусов
Перевод в градации серого и в чёрно-белое изображение по порогу
Пёсик в градациях серого
gray_image — это одноканальная версия изображения.
Функция threshold возвращает изображение, в котором все пиксели, которые темнее (меньше) 127 заменены на 0, а все, которые ярче (больше) 127, — на 255.
Для ясности другой пример:
Здесь всё, что темнее, чем 150, заменяется на 10, а всё, что ярче, — на 200.
Остальные threshold-функции описаны здесь.
Размытие/сглаживание
Функция GaussianBlur (размытие по Гауссу) принимает 3 параметра:
Больше про размытие здесь.
Рисование прямоугольников
Обводим прямоугольником мордочку пёсика
Эта функция принимает 5 параметров:
Рисование линий
2 пёсика, разделённые линией
Функция line принимает 5 параметров:
Текст на изображении
Изображение с текстом
Функция putText принимает 7 параметров:
Распознавание лиц
На этот раз без пёсиков.
detectMultiScale — общая функция для распознавания как лиц, так и объектов. Чтобы функция искала именно лица, мы передаём ей соответствующий каскад.
Функция detectMultiScale принимает 4 параметра:
Contours — распознавание объектов
В этой статье детально описано обнаружение объектов с помощью цветовой сегментации. Всё, что вам нужно для неё, находится там.
Сохранение изображения
Заключение
OpenCV — отличная библиотека с лёгкими алгоритмами, которые могут использоваться в 3D-рендере, продвинутом редактировании изображений и видео, отслеживании и идентификации объектов и людей на видео, поиске идентичных изображений из набора и для много-много чего ещё.
Эта библиотека очень важна для тех, кто разрабатывает проекты, связанные с машинным обучением в области изображений.