先上图,有图有真相,当课题重新回归到嵌入式搭载的老问题上时,我还一度各种担心,发现最新的A9板4412能用Android了,还想着偷懒买块现成的只做最顶层开发就好,结果找遍工业相机厂家没见到有提供Android驱动的,一了解才明白,Android驱动是基于linux驱动的貌似,于是乎,又尝试着回归到移植opencv到嵌入式linux的老路上来。
想当初,零linux基础的我对着借来的6410各种被蹂躏,历时1个月仅仅是搭建了能用板子自带的qt4.7.1库编写界面程序而已。那次各种编译错误,各种零基础被虐,各种兼容性出错,给我早期的嵌入式linux学习留下了极深的阴影,此处省略random(2^64,2^256)个字,此时,我又在被工业相机技术支持人员鄙视我linux底层开发近乎零基础后,终于又试图站起来,,来,来,,
opencv-2.4.9,qt-4.8.4,qtcreator-2.6.0,
板子ok6410,搭载自带3.0.1内核,Yaffs2系统(半),
编译器用的飞淩自带的4.3.2,看到说什么最新的opencv、qt会不支持还后怕来着,
一、QT移植:
此次成功要感谢几位博主,关于qt移植的两位:
http://www.cnblogs.com/emouse/archive/2013/01/29/2881311.html
http://blog.csdn.net/zjg555543/article/details/7755714
前者帮助较大,但细节有一点点笔误的地方,结合二者博文以及飞淩自带手册,完成了qt移植。
二、opencv移植:
这里要感谢这位博主的博文:
http://blog.csdn.net/jiebaoabcabc/article/details/22935185
这位博主写的详尽易懂,尽管我这个门外汉各种担惊受怕,可还是在这篇博文的指导下成功了,关键是最后要修改工程的lib应用路径,然后按博主的方法,执行文件跟着lib库就好。
ps1:关于nfs挂载昨晚忙了一晚上不成功,只能放弃,遗憾之;
ps2:关于自制Yaffs2系统镜像,尚无暇尝试;
ps3:关于编译器版本,没敢再尝试,老老实实用的自带的,
写在最后:
不管怎么说,opencv能移植确保了课题架构顶层的图像算法可以稳定实时,但实时性及工业相机兼容性还要之后一步步去尝试,在成功当日得知vs2015可以用C#编写Android和IOS的app,有种想再去补下上层开发的知识了,C#应该比学JAVA容易。此外,在读研忙到现在看来,早先的观点“软>硬>机”真的是太片面了,如果单纯只会上层开发,还是太浅了,底层开发是保证,环境打不起来,美好的顶层设想也只能是浮云,可,那些博士大都也是至关顶层,甚至算法层面吧,,搞不灵清了,起码,懂底层开发的上层开发人员,一定比单纯的上层开发人员牛逼就对了,,
2014/11/15
不是教程,仅仅小结