Сегодня я опубликую шпаргалку действий по установке OpenCV на свою рабочую станцию под управлением Ubuntu 12.04.5 Desktop amd64 (Gnome Classic). Данный пакет opencv представляет из себя средство посредством которого возможно распознавание изображений, доступные средства (языки программирования) написания столь разнообразны что перечислять их здесь не вижу смысла. Лучше же приводить полезные и практические примеры чем заниматься флудом того что можно найти на официальном сайти так и википедии. Ниже буду указаны все шаги с которыми мне пришлось столкнуться по разворачиванию пакета opencv на моей системе. Если у кого-то они не заработают – то это уже если честно не моя проблема – главное что у меня все работает, а тонкостей других систем и Вашей кваллификации я не знаю, так что помочь ни чем не смогу.
ekzorchik@desktop:~$ sudo apt-get update && sudo apt-get upgrade -y
ekzorchik@desktop:~$ sudo apt-get remove ffmpeg x264 libx264-dev -qq
,Где -qq
→ тихий режим без вывода на консоль какой-либо информации.
ekzorchik@desktop:~$ sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev -y
ekzorchik@desktop:~$ wget https://github.com/Itseez/opencv/archive/2.4.13.zip
ekzorchik@desktop:~$ unzip 2.4.13.zip
ekzorchik@desktop:~$ cd opencv-2.4.13/
ekzorchik@desktop:~/opencv-2.4.13$ mkdir release
ekzorchik@desktop:~/opencv-2.4.13$ cd release/
Следующим шагом я установлю библиотеку для возможности запуска поставляемых примеров на языке программирования: си & python. Два символа точки в конце длиннющей команды обозначаю, что текущая директория является исходной.
ekzorchik@desktop:~/opencv-2.4.13/release$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_ZLIB=ON -D WITH_V4L=ON -D WITH_GSTREAMER=ON -D WITH_OPENEXR=ON -D WITH_UNICAP=ON -D BUILD_PYTHON_SUPPORT=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON ..
ekzorchik@desktop:~/opencv-2.4.13/release$ make
(процесс долгий)
ekzorchik@desktop:~/opencv-2.4.13/release$ sudo make install
(установка завершается без каких-либо ошибок, все хорошо)
ekzorchik@desktop:~/opencv-2.4.13/release$ cd ~/
ekzorchik@desktop:~$ sudo nano /etc/bash.bashrc
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
ekzorchik@desktop:~$ source /etc/bash.bashrc
Вроде как в самом пакете opencv который я скачал и установил в систему присутствуют пакеты показывающие что возможно сделать с помощью opencv, попробую собрать их:
ekzorchik@desktop:~$ cd opencv-2.4.13/samples/c
ekzorchik@desktop:~/opencv-2.4.13/samples/c$ ls -l build_all.sh
-rwxr-xr-x 1 ekzorchik ekzorchik 478 Apr 20 17:21 build_all.sh
ekzorchik@desktop:~/opencv-2.4.13/samples/c$ ./build_all.sh
(ожидаю)
(сборка завершается без каких-либо проблемм)
запускаю первый пример:
ekzorchik@desktop:~/opencv-2.4.13/samples/c$ ./delaunay
./delaunay: error while loading shared libraries: libopencv_core.so.2.4: cannot open shared object file: No such file or directory
ekzorchik@desktop:~/opencv-2.4.13/samples/c$ cd ~/
ekzorchik@desktop:~$ sudo nano /etc/ld.so.conf.d/opencv.conf
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
Теперь снова перехожу в каталог с примерами и запускаю тот на котором у меня вывалилась ошибка:
ekzorchik@desktop:~/opencv-2.4.13/samples/c$ ./delaunay
This program demostrates iterative construction of
delaunay triangulation and voronoi tesselation.
It draws a random set of points in an image and then delaunay triangulates them.
Usage:
./delaunay
This program builds the traingulation interactively, you may stop this process by
hitting any key.
Delaunay triangulation will be build now interactively.
To stop the process, press any key
и вот идут построения линий
Если что-то изменяется и нет вываливающихся ошибок на консоль, то значит все хорошо, opencv работает и пример на его основе также. Посмотрю что могут остальные примеры.
Теперь бы мне хотелось разобрать что нибудь интересное и конечно же попробовать написать своё пусть по началу долго и мучительно (на грани бросить все и заняться чем нибудь еще), но попробовать стоит. Интересно же. А пока собственно и все, в дальнейшем все свои шаги по использованию данного пакета opencv я обобщу ввиде пошаговых заметок на своем блоге, с уважением автор блога – ekzorchik.