最近在学习opencv ,本人对Linux比较感兴趣,就在ubuntu下安装了opencv,下面是相关代码
首先去opencv官网:http://opencv.org/ 下载相应的版本,最新的是opencv2.4.9,由于本人安装时opencv2.4.9还未发布,就下了opencv2.4.8的版本,如果你是个追新一族,可以下载最新版本。
下面是安装步骤:
1 将OpenCV2.4.8.zip拷贝到用户主目录并解压,
unzip OpenCV2.4.8.zip
2 进入解压后的文件
cd opencv2.4.8
3 建立一个build的临时文件
mkdir build
4 进入build目录
cd build
5 接下来我们就可以进行编译安装了
CMAKE_INSTALL_PREFIX=/usr/local D WITH_TBB=ON D
BUILD_NEW_PYTHON_SUPPORT=ON D WITH_V4L=ON D
INSTALL_C_EXAMPLES=ON D INSTALL_PYTHON_EXAMPLES=ON D
BUILD_EXAMPLES=ON D WITH_QT=ON D WITH_OPENGL=ON ..
make
sudo make install
6 我们用ldconfig来配置OPencv,到此opencv就安装完成了
sudo ldconfig
当然,我们可以写一个.sh文件运行安装,我将其命名为installOpencv.sh ,一下是相应.sh文件代码,
arch=$(uname -m)
if [ "$arch" == "i686" -o "$arch" == "i386" -o "$arch" == "i486" -o "$arch" == "i586" ]; then
flag=1
else
flag=0
fi
echo "Installing OpenCV 2.4.8"
mkdir OpenCV
cd OpenCV
echo "Removing any pre-installed ffmpeg and x264"
sudo apt-get -y remove ffmpeg x264 libx264-dev
echo "Installing Dependenices"
sudo apt-get -y install libopencv-dev
sudo apt-get -y install build-essential checkinstall cmake pkg-config yasm
sudo apt-get -y install libtiff4-dev libjpeg-dev libjasper-dev
sudo apt-get -y install libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev libxine-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev
sudo apt-get -y install python-dev python-numpy
sudo apt-get -y install libtbb-dev
sudo apt-get -y install libqt4-dev libgtk2.0-dev
sudo apt-get -y install libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev
sudo apt-get -y install x264 v4l-utils ffmpeg
sudo apt-get -y install libgtk2.0-dev
echo "Downloading OpenCV 2.4.8"
wget -O OpenCV-2.4.8.zip http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.4.8/opencv-2.4.8.zip/download
echo "Installing OpenCV 2.4.8"
unzip OpenCV-2.4.8.zip
cd opencv-2.4.8
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON ..
make -j4
sudo make install
sudo sh -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig
echo "OpenCV 2.4.8 ready to be used"
这里我们还要更改installOpencv.sh的权限,这里追加一个可执行 sudo chmod 744 ,在运行.installOpencv.sh,你就等着电脑自动安装完成吧
我们可以试着写个程序验证我们的安装 ,一下是一个简单的打开摄像头并显示的程序代码
#include <iostream>
#include <highgui.h>
#include <cv.h>
using namespace cv;
int main(int argc, char **argv)
{
VideoCapture cap(0);
if(!cap.isOpened())
{
cout << "init capture failure!"<< std::endl;
return -1;
}
Mat frame,edges;
namedWindow("edges",1);
while(1)
{
cap >> frame;
cvtColor(frame,edges,CV_BGR2GRAY);
GaussianBlur(edges,edges,Size(7,7),1.5,1.5,4);
int thresh = OSTU_Region(edges);
cout << "thresh =" << thresh <<endl;
Canny(edges,edges,0,thresh,3);
imshow("edges",edges);
if(waitKey(30) > 0)
{
break;
}
}
destroyAllWindows();
return 0;
}
感觉不错吧,现在你可以折腾opencv了