(1综述)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练
一、PI的综述
树莓派(Raspberry Pi)凭借高度定制化和可玩性,深受科技宅青睐,2012年推出以来全球销量已达1250万块。成世界第三大计算平台。树莓派今年已经进化到第三代,搭载64位A53处理器,支持更多连接,还有更小巧的Pi Zero版本(后面有图的)。大家可以上它的官网加深了解。
PI能够用来进行多种工作,因为它本身就是一个功能完善的系统,基于Linux的高度开源特性,通过程序员和工程师们的奇思妙想,能够自由组装成多种有趣的项目。比如(内容引自树莓派实验室):超级计算机
比如视频服务器:
以及加上一些外设:
等等。如果想进一步了解,推荐去“树莓派实验室 ”看一看。http://shumeipai.nxez.com/
二、PI用来做图像处理硬件平台的优势:
一直以来,我一直在为一些算法寻找嵌入式的平台。但凡有嵌入式需求的算法,大多是需要在现场(而不是流水线或实验室)、需要实时显示效果、能够较长时间稳定运行的。应该说以图像增强类的算法居多,比如非常典型的血管增强等。由于我有一定嵌入式系统的背景,所以尝试过ARM系列的机器,也在DPS上面做过一些实验,也考虑过基于安卓手机的硬件,包括PI2之前也是接触过的。但是在之前,问题还是比较集中的
1、性能问题。在PI2上,想实时显示640*480的摄像头拍摄内容都卡顿严重,更不要谈去做图像处理了.arm9一类的摄像机都有类似问题;
2、移植问题。通过JNI将目前以C++为基础的算法在安卓上移植是可行的,但是中间毕竟有一个语言转换的过程,如果改成DPS的程序,则算法几乎要重写。;
3、调试问题。正是因为工具链的不同,现有算法在移植中很难调试,再加上很慢的速度,让人难以接受。
所以一段时间,我在图像处理嵌入式这块没有很大的推动,直到PI3问世:
下面两图是它的参数和价格(我购买了包括触摸屏的套件,但是sd卡是自己的,不到500元):
这个硬件当然比PC还是要差的,但是也已经很强的。实时的640*480的视频在加上图像处理已经不成问题。
实际上,我们整个实验最终要完成一个“各种类型特征点实时匹配”项目,也是对PI3性能的一个评测。
安装好的样子(可以看到,为了方便,直接使用橡皮筋将摄像头进行了加固):
当然,前面说过的所谓PIzero就是更小的PI,它的盒子很酷:
三、PI的安装配置:
购买的时候,商家会给很多有用的资料,这个要仔细看。我这里简单罗列一下:
1、烧录到SD卡中
2、上电开机,第一件事是配置网络(无线有线都可以)
3、网络配置好后,首先要运行
sudo apt-mark hold raspberrypi-bootloader
因为目前还不知道这个rm的编译方式,所以内核不能改,否则会出现错误(常见的就是触摸屏失效)
然后执行
sudo apt-get update
sudo apt-get upgrade
4、在执行树莓派固件升级命令(这一步一定要谨慎,如果你使用的是专用rm,比如触摸屏专用的,这步最好不要进行)
sudo rpi-update
5、安装中文字体
sudo apt-get install fonts-arphic-gbsn00lp
输入法
sudo apt-get install scim-pinyin
解压缩软件
sudo apt-get install p7zip-full
调整国家、时区后重启,进入中文界面。
那么目前就有了一个基本的平台,下一步马上转入图像处理平台的构建。