OpenCV在Ubuntu和Linux系统下的移植

Posted Cessi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OpenCV在Ubuntu和Linux系统下的移植相关的知识,希望对你有一定的参考价值。

1安装cmake-qt-gui:sodo apt-get install cmake-qt-gui

2. 配置cmake:

进入存放opencv2.4.10的文件夹,输入cmake-gui。进入如下界面,点击configure,选择最后一个,下一步

技术分享

技术分享

Finish之后勾选   如下两个:

技术分享

技术分享

技术分享

去掉如下两个:

技术分享

技术分享

再次点击configure,然后generate

进入/arm-opencv/  文件夹运行以下命令

make

成功之后运行

make install

 

3.配置opencv环境:

打开安装目录../arm-opencv/CmakeCache.txt。修改如下


技术分享

 

把arm-opencv/lib下所有文件复制到usr/local/lib下,arm-opencv/include下所有文件拷贝到usr/local/include下。如果没有权限,执行sudochown –R niostar /usr/local

 

注意/usr/local/lib/pkgconfig文件夹。在里面新建一个文件arm-opencv.pc

内容与arm-opencv/unix-install/opencv.pc一致。但注意复制后改为arm-opencv.pc这个名字

技术分享

4.更改变量

 

将文件/etc/ld.so.conf中添加一行代码/usr/local/lib

 


sudo gedit /etc/bash.bashrc 最后一行添加

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

export PKG_CONFIG_PATH

 

5.编译。

测试程序如文件夹中test.cpp

 

编译命令如下

技术分享

arm-linux-g++ `pkg-config --cflags arm-opencv` `pkg-config--libs arm-opencv` test2.cpp -lpthread -lrt -ldl

 

6.ARM板测试运行

arm-opencv/整个文件夹拷贝到arm板的文件系统下,但是要求在ARM板下的路径与虚拟机路径一致。

 

 

运行测试程序,可以成功

#include <cv.h>  
#include <cxcore.h>  
#include <highgui.h>  
      
      
int main(int argc,char **argv)  
{  
    CvCapture* capture = NULL;  
    IplImage* pImg = NULL; 
    IplImage* pImg1 = NULL; 
    fprintf(stderr, "123");   
    pImg = cvLoadImage("lena.jpg",1);
     fprintf(stderr, "456");  
    pImg1 = cvCreateImage(cvSize(pImg->width,pImg->height),IPL_DEPTH_8U,1);
   fprintf(stderr, "456");  
    cvCvtColor(pImg,pImg1,CV_RGB2GRAY);
     fprintf(stderr, "789");   

   cvSaveImage("1_1.jpg",pImg1);

    fprintf(stderr, "109");  
    

    

    cvReleaseImage( &pImg );   
    cvReleaseImage( &pImg1 );   
    return 0;  
}

技术分享


技术分享




















以上是关于OpenCV在Ubuntu和Linux系统下的移植的主要内容,如果未能解决你的问题,请参考以下文章

嵌入式linux开发,opencv移植,opencv-2.4.9移植,cmake-gui

OpenCV在Ubuntu下的安装

ubuntu 14.04 下利用apt-get方式安装opencv

ubuntu下如何安装两个版本OpenCV?

OpenCV入门笔记 Linux下的安装

如何把51程序移植到arm?