一、目前遇到的问题: 最终opencv是要在板子上跑的,但是opencv的源码编译会有以些问题,之前直接
编译安装在了目标板,编译了几次总算编译成功了,但运行时一直出错,原因可能是
Debain缺少一些程序运行时的必要的库,这些库要下载或者通过apt-get来安装,因为
没有显示屏,要通过VNC显示,现在还没法将是一个热点的NanoPi2联接网(可以试
一下能不能联网的同时分配热点)。
二、现在做的事情:
现在按照相同的配置,编译安装了
ARM版和x86_64版,仅仅改变了编译器,前者是
arm-linux-gcc和arm-linux-g++,后者是本地编译器,熟悉cmake后将ARM版的参数
细调了一遍,目前和x86_64版支持的功能一样,但还没拷贝到板子上,下面仅仅对
x86_64版进行了相应的测试:(图片不全,忘了放哪了)
1、进入cmake设置的源文件输出目录执行make,这个过程比较长,我的笔记本大约
15-20分钟左右,中间出现的一些警告可以仔细看一下,也可以忽略,这些警告一般
是因为在对源文件配置时,一些自己觉得不必要的support没有被包含里面,只要你不用
这些功能和函数,就可以不用理会,控制台会打印出详细的功能和函数信息。
2、在同样的目录执行sudo make install ,这个命令会根据产生的makefile文件将编译后
的库,头文件等安装到指定的地方,比如,我的是/usr/local/opencv-pc,在这里面会生成四个
文件,/lib、/include、/share、/bin。其中/lib、/include是你编译程序是要用到的,所以,要
先将这两个加入路径,方法都一样。这里说一下编译:如果文件比较少,可以用gcc/g++通过终
端来编译,命令:g++ main.c -o main `pkg-config --cflags --libs opencv`,或者通过Eclipse
来构建复杂的工程,和一般情况一样,将/lib、/include的绝对位置告诉Eclipse即可。
运行测试:图一:显示图片,图二:高斯滤波,图三:人脸检测,图四:素描处理,
图五:卡通处理。
可以看出,成功运行,终端比较麻烦,后面就用Eclipse开发了。
还有对摄像头测试的,包括ARM版的以前编译一直出错和编译成功运行出错的图,但是图找不到了,这个月
过去在从新整理一遍吧,
对于裸机开发,前一段控制LED的图也找不到了,截了好多,以后再截一遍,过段
时间发出来。对于理解嵌入式的启动和引导过程还是很有用的。