【Z-turn Board试用体验】+ 基于Z-turn的图像边缘检测系统(四) - 问答 - 电子技术论坛 - 最好最受欢迎电子论坛!

【Z-turn Board试用体验】+ 基于Z-turn的图像边缘检测系统(四)

由于前段时间考科目二去了,一直没时间发帖,争取在这几天弥补回来。

前面的两三篇把理论部分介绍了,接下来就直接上板子操作了。这里我将介绍两种移植opencv到板子上的方法。
方法一:主机上交叉编译好opencv然后移植到板子上
1.去opencv的官网下载opencv,这里用的是opencv2.3.1版本,下载后在home目录下新建一个名字为opencv的文件夹给opencv解压用,在命令行里输入
  1. tar -xvjf Opencv-2.3.1.tar.bz2 -C/home/opencv
复制代码
在源码包的路径下创建一个名字为toolchain.cmake的文件,并在其中输入一下信息。这个文件中的内容将告诉cmake我们将要采用的交叉编译器以及目标平台等信息。
  1. set(CMAKE_SYSTEM_NAME,Linux)
  2. set(CMAKE_SYSTEM_PROCESSOR arm)
  3. set(CMAKE_C_COMPILER arm-xilinx-linux-gnueabi-gcc)
  4. set(CMAKE_CXX_COMPILER arm-xilinx-linux-gnueabi-g++)
复制代码
接下来用cmake生成makefile文件。运行
ccmake ./ 进行配置,配置的内容是所有的以WITH开头的选项全部选成OFF,(除了WITH_V4L 选为ON)因为这些需要第三方库支持的,要是选择这些的话就需要安装第三方库了。按c配置,按g生成并保存。(当中用到的交叉编译可以见我之前发的帖子【Z-turn Board使用体验】+ 建立交叉编译环境  https://bbs.elecfans.com/jishu_484599_1_3.html)。接着将编译后的opencv库文件复制到SD卡中的/usr/lib目录下就可以了。

方法二:直接在板子上下载opencv,然后配置(此方法较方便)
1.
  1. apt-get install libopencv-dev
复制代码
如果不行的话先
  1. apt-get update

    apt-get upgrade

复制代码
2.紧接着是对opencv参数配置
在/etc/ld.so.conf.d/opencv.conf文件中加入一行:/usr/lib ,(这里很重要,配置错误后果很严重)
也有可能会没有opencv.conf这个文件,那我们就自己创建一个:
  1. sudo gedit/etc/ld.so.conf.d/opencv.conf
复制代码
然后使用下面这条命令:
  1. sudo ldconfig
复制代码
在 /etc/ bash.bashrc(sudo gedit/etc /bash.bashrc以root进入才能修改)中加入:

  1. PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/lib/pkgconfig

    export PKG_CONFIG_PATH

复制代码
接着就完事大吉了。

以上是opencv的安装过程,方法一是参考陆佳华老师的书本来的,挺繁琐的。方法二是我自己根据以前的经验试出来的,全网找不到第二家,哈哈。

接着在板子上测试编译opencv程序。
gcc Test.c -o Test `pkg-config --cflags --libs opencv`
解释: 有了这个工具之后我们的编译就很方便了(不过在此之前你要确保你安装的OpenCV的安装链接库文件的目录下有一个pkgconfig文件夹,在该文件夹里面有个opencv.pc的文件,其实这就是pkg-configOpenCV的配置文件)。
使用pkg-config时,选项--cflags 它是用来指定程序在编译时所需要头文件所在的目录,选项 --libs则是指定程序在链接时所需要的动态链接库的目录。




2个回复

胡毕伟 发表于 2015-8-3 18:15:14
opencv移植这方面的资料一直没找到好的,感谢楼主发的这篇精华帖,测试了下方法二非常好
blackroot 发表于 2015-8-7 09:36:54
认真学习了一下
回复

举报 使用道具

您需要登录后才可以回帖 登录 | 注册

本版积分规则


关闭

站长推荐上一条 /6 下一条

小黑屋|手机版|Archiver|电子发烧友 ( 湘ICP备2023018690号 )

GMT+8, 2024-11-22 14:48 , Processed in 0.421735 second(s), Total 40, Slave 31 queries .

Powered by 电子发烧友网

© 2015 bbs.elecfans.com

微信扫描
快速回复 返回顶部 返回列表