关闭

opencv (centos and ubuntu)

495人阅读 评论(0) 收藏 举报
分类:

//安装cmake

$ cd ~/software

$ sudo wget http://www.cmake.org/files/v2.6/cmake-2.8.6.tar.gz

$ tar -zxvf cmake-2.8.6.tar.gz

$ cd cmake-2.8.6

$ ./bootstrap

$ make

 

$ sudo make install

 

$ export PATH=/bin:$PATH

$ cmake --version

 

 //下载opencv,解压缩

cd ~/software

sudo wget http://www.opencv.org.cn/download/OpenCV-2.2.0.tar.bz2

sudo tar -xjf OpenCV-2.2.0.tar.bz2

 

 //编译

sudo mkdir ~/software/openCV_build

cd ~/software/openCV_build

$ sudo cmake -D CMAKE_BUILD_TYPE=RELEASE -D

CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_NEW_PYTHON_SUPPORT=NO -D BUILD_EXAMPLES=ON ~/software/OpenCV-2.2.0/

 

 

$ sudo yum install gtk2-devel.x86_64

$ sudo yum install libtiff-devel.x86_64

 

 //安装

$ cd ~/software/openCV_build

$ sudo make

$ sudo make install

 

 //环境设置,也有说不用设置的

$ sudo vi /etc/ld.so.conf.d/opencv.conf

追加内容 /usr/local/lib

$ sudo ldconfig

$ sudo vi /etc/environment

追加以下内容

PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH



为了熟悉一下linux下C++,准备通过将以前所写项目由windows移植到linux下,首先配置环境,这个还挺繁琐,出错挺多的,现在记录一下。 
系统:Centos 6.5 
最后版本 OpenCV: 2.4.3 
1、安装依赖包(很重要) 
yum install cmake gcc gcc-c++ gtk+-devel gimp-devel gimp-devel-tools gimp-help-browser zlib-devel libtiff-devel libjpeg-devel libpng-devel gstreamer-devel libavc1394-devel libraw1394-devel libdc1394-devel jasper-devel jasper-utils swig python libtool nasm 
如果不安装上述依赖包,到最后调用opencv时会出错,如下: 
OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script) in cvNamedWindow,................... 
此时只能将编译好的opencv删除再重新编译,即将/usr/local/lib和/usr/local/include/中的有关的删除 
mv /usr/local/lib/libopencv* 
mv -fr /usr/local/include/opencv  
mv -fr /usr/local/include/opencv2  
然后再重新编译opencv. 
2、安装/更新CMake 
为什么要安装或者更新cmake呢,下面说明所chǔ问题: 
(1)下载 
   在OpenCV官网http://sourceforge.net/projects/opencvlibrary/files/ 下载所需版本 
   拷贝到/usr/local/路径之下 
(2)tar -xvf OpenCV-2.4.8.tar.bz2 解压 
(3)cd  OpenCV-2.4.8  进入目录 
(4)yum install cmake      直接从网上安装cmake

(5) cmake CMakeLists.txt   
如果你此步没有出错opencv就已经安装了; 
此步出错 
需要安装新版的cmake 
下载最新版本cmake文件进行编译 
http://www.cmake.org/cmake/resources/software.html

将其复制到/usr/local/路径下 
解压: 
r -zxv -f cmake-2.8.10.2.tar.gz       // 解压压缩包 
rm -rf cmake-2.8.10.2.tar.gz   // 删除压缩包

cd cmake-2.8.10.2

./configure

make

make install 
// 修改文件夹名

mv cmake-2.8.10.2 cmake  

修改环境变量: 
vim /etc/profile 
在尾部添加: 

[html] view plaincopy在CODE上查看代码片派生到我的代码片
  1. PATH=/usr/local/cmake/bin:$PATH  
  2. export PATH  
这里注意,不要讲冒号写成分号,要不然各种命令行都不能用,重启后进入不了系统等。 
//使修改生效

source /etc/profile   
//查看PATH值有没有添加刚刚的路径  

echo $PATH   

//检验版本 
cmake --version

安装成功了cmake再继续安装opencv 
3、安装Opencv 
继续上一步的cmake CMakeLists.txt   
出错: 

System is unknown to cmake, create: 
opencv 版本不对 
重新下载Opencv,这次选择了下载opencv-2.4.3,放于/usr/local/目录下 
重复上一步中安装opencv步骤 
tar -xvf OpenCV-2.4.3.tar.bz2 解压 
cd  OpenCV-2.4.3. 进入目录 
yum install cmake      直接从网上安装cmake

cmake CMakeLists.txt   
make  
make install
成功 
4、添加路径 
如果不添加路径到环境变量当运行测试程序时会出错如下: 
./drawing: error while loading shared libraries: libopencv_calib3d.so.2.4: cannot open shared object file: No such file or directory

解决方法: 
(1)用ln将需要的so文件链接到/usr/lib或者/lib这两个默认的目录下边 
ln -s /where/you/install/lib/*.so /usr/lib

sudo ldconfig

(2)修改LD_LIBRARY_PATH 
export LD_LIBRARY_PATH=/where/you/install/lib:$LD_LIBRARY_PATH

sudo ldconfig

(3)修改/etc/ld.so.conf  (我采用了此种方法) 
vim /etc/ld.so.conf 
add /where/you/install/lib

sudo ldconfig

输入ldconfig时出错:libstdc++.so.6.0.18-gdb.py不是ELF文件-它起始的魔数错误。 
解决方法,这里直接暴力删除了,rm libstdc++.so.6.0.18-gdb.py 
再重新ldconfig,没有错 
5、测试: 
测试代码显示一张图片: 

  1.  1 #include "cv.h"  
  2.  2 #include "highgui.h"  
  3.  3   
  4.  4 int main()  
  5.  5 {  
  6.  6          IplImage* pImg = NULL;  
  7.  7   
  8.  8           if((pImg = cvLoadImage("1.jpg",1)))  
  9.  9           {  
  10. 10                   cvNamedWindow( "Image", 1 );//创建窗口  
  11. 11                   cvShowImage( "Image", pImg );//显示图像  
  12. 12                   cvWaitKey(0); //等待按键  
  13. 13                   cvDestroyWindow( "Image");//销毁窗口  
  14. 14                   cvReleaseImage( &pImg ); //释放图像  
  15. 15                   return 0;  
  16. 16           }  
  17. 17            return -1;  
  18. 18 }  

可以用下面的命令编译
g++ `pkg-config --cflags --libs opencv` code.cpp -o drawing 
注意上面是~键的符号而不是引号要不然会出错:--libs opencv:没有那个文件或目录   fatal error: cv.h:没有那个文件或目录 
此chǔ我采用写makefile方式:
编写makefile 如下: 



make 
./drawing 
显示成功 
如果出现第一步里面提到的错误,那就装完依赖库重新来编译一遍opencv. 




STEP 1 :-

To install the dependencies required from OpenCV, just run the following commands:

sudo apt-get -y install libopencv-dev build-essential cmake git libgtk2.0-dev pkg-config python-dev python-numpy libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff4-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev libtbb-dev libqt4-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils unzip

STEP 2 :-

Download the latest version of OpenCV

wget https://github.com/Itseez/opencv/archive/3.0.0-alpha.zip
unzip opencv-3.0.0-alpha.zip

STEP 3:-

Install Open CV

cd opencv-3.0.0-alpha
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 WITH_QT=ON -D WITH_OPENGL=ON ..

Note : If you get the hash mismatch error, then download the file ippicv_linux_20140513.tgz manually from sourceforget

After downloading the file extract the contents to the ippicv folder in the opencv-3.0.0-alpha folder.

Now add the option -D WITH_IPP=OFF to the before cmake command.

Then execute the following commands :

make -j $(nproc)
sudo make install

STEP 4:-

Finishing installation

Now some final touches :

sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig

After the complete process execute

sudo apt-get update

and then reboot your system.

Now you have a working installation of OpenCV.

0
0

猜你在找
【直播】计算机视觉原理及实战—屈教授
【套餐】深度学习入门视频课程—唐宇迪
【套餐】Hadoop生态系统零基础入门--侯勇蛟
【套餐】嵌入式Linux C编程基础--朱有鹏
【套餐】2017软考系统集成项目——任铄
【套餐】Android 5.x顶级视频课程——李宁
【直播】广义线性模型及其应用——李科
【直播】从0到1 区块链的概念到实践
【直播】机器学习之凸优化——马博士
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:275608次
    • 积分:6206
    • 等级:
    • 排名:第3979名
    • 原创:332篇
    • 转载:144篇
    • 译文:1篇
    • 评论:63条
    腾腾的奋斗史
    最新评论