Open CV Installation in Linux with ffmpeg Function Enabled



Open CV (Open Source Computer Vision) is a open source computer vision library developed by Intel. Many people have encountered problems installing Open CV in a way that it works properly with videos. The primary reason for it is missing header files. Generally, people install ffmpeg but do not have header files in their system. There can be various issues for problems of Open CV with videos.

This article tells every step from start to install Open CV so that it works with ffmpeg.

NOTE : It has been assumed that, none ffmpeg, nor open CV is installed in Linux

STEPS :

To install open CV with ffmpeg in linux, follow these steps

1. Install ffmpeg.

Go to Synaptic package manager and search for ffmpeg. Mark it for installation and apply. On many different sites, I have found them telling about the way to install ffmpeg from terminal, which is tedious. However, the configuration of ffmpeg when you install it from synaptic package manager is :
--enable-gpl --enable-postproc --enable-swscale --enable-x11grab --extra-version=svn17737+3:0.svn20090303-1ubuntu6 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --disable-stripping --disable-vhook --enable-libdc1394 --disable-armv5te --disable-armv6 --disable-armv6t2 --disable-armvfp --disable-neon --disable-altivec --disable-vis --enable-shared --disable-static
This configuration is required, so that ffmpeg can be used with open cv.

2. Download Header Files

In the Synaptic package manager, search for the following packages and install all of them
libswscale-dev
libavcodec-dev
libavformat-dev
libavutil-dev
After doing so, go to /usr/include and check for separate directory for each of the libs and all the directories contain some header files.

3. Install gtk+2.0

From the Synaptic Package Manager, search for gtk+2.0 or gtk2.0 . Install it.

Till now, all the pre-requisites to install open cv has been met.

4. Run OpenCV
After navigating to OpenCV folder, in terminal write :
./configure
During the configure process, it checks the presence of several header files. After it has completed configuration, check that use ffmpeg is marked as yes (see figure below). It will be visible in the terminal itself. In case it is marked no, scroll up and check if the presence of above directories are found or not.

In case the use ffmpeg is yes, everything is fine. Now write the following commands on terminal. Once they are done, openCV is successfully installed and can be used with videos.
make
sudo make install
In case use ffmpeg is no, there is some problem with ffmpeg. Check for the directories as previously told. Also look out if gtk+2.0 is installed.

YOU ARE DONE, IF YOU ARE READING THIS STATEMENT.

To run a program from terminal the command is :
g++ -I/usr/local/include/opencv -lcxcore -lhighgui -lm fileName.cpp
However you can also use
alias gcv="g++ -I/usr/local/include/opencv -lcxcore -lhighgui -lm"
and then compile file as
gcv fileName.cpp
Hope this helps, if you face any problem, drop in as a comment.




Get Tech Updates via eMail :

0 comments:

Post a Comment

 

About Tech Guru

TechQuark
TechGuru is a leading technology site, dedicated to software, gadgets, tech news and reviews. The site offers articles, tutorials and how-to guides on all things related to personal technology, desktop applications, productive online tools, social networking sites, windows, office etc.

Founded in 2007, TechGuru features audience who have the passion for Software and Technology and seeks to promote awareness about the internet and computing.

Get News on the Go

Mobile TechQuarkTech Guru is a mobile-friendly website. Simply bookmark m.techquark.com in your mobile browser for free access anytime, anywhere.

Contact Us / Send a Tip

Use Contact Form, if you have Comments, Problems, Suggestions, Praise, Complains about the site. Your suggestions and articles are valuable to us.

Copyright © 2007- Tech Guru - All rights reserved. No part of this blog be republished or written without prior permission of the author


Privacy Policy | Disclaimer | Contact | Advertise With Us


Designed and Maintained by Shubham Gupta