zedboard开发板上移植opencv代码(立体匹配)
前言
公司要做立体匹配相关的项目,已有matlab和c++版本,可是不能做到实时显示立体信息,想要硬件实现实时,无奈本渣也是个硬件的新手,先按照实验室lyq同学的思路在zedboard开发板的纯ARM核里跑代码,嵌入式的实现过程是:硬件平台是zedboard开发板,运行的是里面的ARM-A9硬核,在里面运行的是ramdisk系统它是基于Linux的,软件使用的就是在Linux上,移植opencv到zedboard上面,在虚拟机linux系统下编译代码,再zedboard上面运行就行了。其中,ramdisk是ARM-A9硬核的运行系统。在编译的过程中,需要先配置opencv环境,而且需要将opencv的配置环境的镜像文件移植到zedboard开发板(挂载opencv库)。
移植过程:
1.搭建VMware虚拟机系统,配置交叉编译环境,配置opencv库,制作opencv配置环境的镜像文件,镜像文件中是移植好的opencv库;
2.需要将整个算法过程进行编译(不一定要使用QT,也可以直接使用cmake),生成.o文件,注意:这个过程中由于LYQ移植库的时候没搞好,不能是彩色图,只能是单色bmp图像格式(画图工具另存为单色bmp图像);
将算法整个过程需要用到的文件copy到sd卡或者U盘,包括opencv库的镜像文件、输入图像、编译生成的.o文件;
3.下载串口调试工具
下载了很多串口调试工具,最后只有SecurtCRT管用,需要生成注册码,参考网站:http://download.csdn.net/detail/cwb417/8580615
非常好用,之前已经下载的有这个软件,试用期过后必须使用注册码,在网上试了好多方法都不行,把这个下载下来按照注册机文件夹的readme的步骤来做,一下子就好了;注意:patch之后生成注册信息,然后打开pc端SecureCRT 这个软件,按步骤很快就ok啦~~
4.在嵌入式板子上运行程序
首先将sd卡或者u盘挂载到开发板的系统上,创建/usr/local/lib,将库文件加载到/usr/local/lib文件夹下,运行.o文件,最后得到结果(得到的是代码运行的时间)。
整个过程中遇到的问题:
1.打开SecureCTR,选择正确的com口,串口参数设为波特率115200、数据位8、停止位1、校验无。
2.1)开发板的SD卡启动的引脚设置(Zedboard的连接和短路块设置)
2)SD卡的读写模式:lock表示sd卡被写保护;在代码的运行过程中,出现内存区域为只读模式,不能在sd卡上运行代码;sd卡的名称;
原因:sd卡是只读模式,运行代码的区域是冲突区域;之后改用u盘进行文件挂载;
3.代码使用的图像和.o文件在同一个文件夹下
4.mount时候出现device or resource busy的问题
解决方法:
LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
顺便说一句,如果目前的库是高版本的,xxx.so.5 但是程序报错是xxx.so.4 找不到,可以做一个软链接,因为一般都是可以向下兼容的
ln -s /usr/local/lib/xxx.so.5 /usr/local/lib/xxx.so.4
疑问:
1.cd /mnt; mount ./opencv_lib.img /usr/local/lib
完
zedboard开发板上移植opencv代码(立体匹配)的更多相关文章
- 在秉火STM32F429挑战者开发板上移植Huawei LiteOS指南
昨天在B站上突然看到了一个短视频,是在正点原子的战舰V3开发板上移植华为的Huawei LiteOS操作系统,就是这个视频:看完鸿蒙OS发布会,试用华为的物联网操作系统Lite OS(B站),于是呢, ...
- ZedBoard开发板学习记录(一)之开发环境的搭建(Ubuntu16.04)以及运行HelloWorld程序的测试
ZedBoard开发板由PL和PS两大部分组成, 对PS操作,一般有两个办法: (1).在Windows系统上面,使用SDK新建C Project SDK自带编译环境,编译后自动产生elf文件.使用U ...
- FS210开发板上Qt4.7.0移植过程
作者:冯老师,华清远见嵌入式学院讲师. 1. 搭建Qt开发环境平台 1.开发环境:ubuntu 12.04 2.交叉编译链:arm-cortex_a8-linux-gnueabi 3.开发板:FS21 ...
- 物联网操作系统HelloX已成功移植到MinnowBoard MAX开发板上
在HelloX开发团队的努力下,以及Winzent Tech公司(总部在瑞典斯德哥尔摩)的支持下,HelloX最新版本V1.78已成功移植到MinnowBoard MAX开发板上.相关源代码已经发布到 ...
- 【开发实录】在鸿蒙开发板上使用websocket(移植自librws库)
librws: Tiny, cross platform websocket client C library 相关代码可在下面下载,也可进入librws: 将librws移植到鸿蒙Hi_3861开发 ...
- zedboard上移植OPENCV库
zedboard上移植OPENCV库 之前做了很多移植OPENCV库的工作,但是需要包含的各种库,需要交叉编译,X264 ,JPGE ,FFMPGE等等 注意:在<嵌入式系统软硬件协同设计实战指 ...
- ARM开发板系统移植-----u-boot的编译
本文和另外两篇姊妹篇都是为了说明如何裁剪出适合在mini2440 开发板上运行的Linux系统,以记录自己的学习成果.其中本文先介绍了嵌入式系统的软件组成部分,然后介绍编译出适合在mini2440开发 ...
- 【分享】iTOP4412开发板-Bluetooth移植文档
[分享]iTOP4412开发板-Bluetooth移植文档 最近须要把Bluetooth移植到iTOP-4412 开发平台.查阅了相关资料,经过一段时间的研究.调试,最终成功的将蓝牙功能移植到了开发板 ...
- 使用Xilinx SDSoc在Xilinx zcu102开发板上编程HelloWorld
关于Xilinx SDSoc的介绍我就不再复述了,我理解的也不一定准确,可以阅读官方文档了解SDSoc,你可以把它理解为一个集成开发环境 (IDE),通过SDSoc我们能够简单快速的对Xilinx的开 ...
随机推荐
- 【转】JS常用函数整合库 lutils
lutils 此工具包是在 outils 的基础上,加上个人平时收集的代码片段进行的二次整合 outils的GitHub:https://github.com/proYang/outils/blob/ ...
- element-ui 表格翻页多选,数据回显
reserve-selection与row-key结合 <el-table :data="pageData" ref="goodsTable" size= ...
- SpringBoot 配置文件存放位置及读取顺序
SpringBoot配置文件可以使用yml格式和properties格式 分别的默认命名为:application.yml.application.properties 存放目录 SpringBoot ...
- EXCEL词典(xllex.dll)文件丢失或损坏解决方法
EXCEL词典(xllex.dll)文件丢失或损坏解决方法 1● 问题 2● 解决 fail 3● 方法2 regsvr32 xllex.dll 4● 方法3 启动server ...
- jformdesigner 开发
jformdesigner 开发 1● 破解jformadesigner 脑补 2● 建立jfd文件 3● 移动关联 <file leaf-file-name=" ...
- Jquery如何禁止鼠标右键菜单
jquery中使用contextmenu事件,如果返回true,则允许右键菜单:如果返回false,则禁止右键菜单 导入文件 <script type="text/javascript ...
- zabbix_server.conf、zabbix_agentd.conf配置文件详解
zabbix_server.conf配置文件详解 AlertScriptsPath 默认值:/usr/local/share/zabbix/alertscripts 说明:告警脚本目录 AllowRo ...
- learning ddr tRP and tRP tRTP CL tRAS
referce :https://blog.csdn.net/ghostyu/article/details/7728106 tRP(RAS Precharge Time): “内存行地址控制器预充电 ...
- Android开发 ---基本UI组件2:图像按钮、单选按钮监听、多选按钮监听、开关
Android开发 ---基本UI组件2 1.activity_main.xml 描述: 定义一个按钮 <?xml version="1.0" encoding=" ...
- tensorflow-LSTM-网络输出与多隐层节点
本文从tensorflow的代码层面理解LSTM. 看本文之前,需要先看我的这两篇博客 https://www.cnblogs.com/yanshw/p/10495745.html 谈到网络结构 ht ...