基于QT的嵌入式视频处理技术研究与实现

时间:2022-09-01 11:22:39

基于QT的嵌入式视频处理技术研究与实现

摘 要:目前嵌入式技术随着物联网行业的突飞猛进发展而得到了快速普及,嵌入式关键技术之一的GUI技术(Graphical User Interface图形用户界面)也得到了快速发展,而QT作为嵌入式GUI技术中主流的技术平台更是得到了广泛认可,而OpenCV技术的出现使得QT在视频处理方面更加专业。

关键词:嵌入式;GUI;QT;OpenCV

中图分类号:TP368.1

1 目前主流的嵌入式GUI

GUI技术是嵌入式的关键技术之一,其直接关系到产品的界面友好性程度,最终影响到产品的竞争力。

目前主流的嵌入式GUI主要有以下几种:

Microwindows的体系结构由上至下,分别为API层、图形引擎层、驱动层、硬件层,用户可以根据具体的应用需求来实现每一个层。

MiniGUI的实现主要依赖于标准C的库函数,它可以任意在支持标准C的环境上运行,MiniGUI很小巧但也很高效。MiniGUI主要应用在一些中低端设备中。

2 QT的搭建

由于QT具有跨平台的特性,所以一般开发可以在windows下开发,再移植到Linux中,本文重点介绍QT在Windows下的使用。

QT的开发环境包括以下几部分:QT的GUI库,QT creator,windows版本还包含编译器,可以是Microsoft visual stdio c++,还可以是MinGW,本文中使用的是MinGW。

搭建QT开发环境包括以下几部分:(1)下载安装MinGW编译器,该编译器支持Gcc和G++。(2)下载安装qt-creator-win-opensource。(3)为QT、MinGW、qmake添加环境变量。

3 OpenCV的安装配置

3.1 OpenCV简介。QT中本身也支持视频处理,但功能十分有限,如果需要更强大的视频处理功能,需要引入OpenCV(open source computer vision library),即开源计算机视觉库。

3.2 OpenCV的优点:(1)开源。OpenCV完全遵循BSD协议(五大开源许可协议之一),具有极高的开放性。(2)跨平台。OpenCV支持Windows、Linux,Mac,可以轻松实现平台之间的移植。(3)效率高,速度快。由于OpenCV采用C++实现,并且算法经过优化,效率有较大程度的提高,执行的速度也比较快。(4)涵盖面广、功能强大。OpenCV主要有13个模块构成,涵盖了计算机视觉的各个方面,在相关方面基本都应用。

3.3 OpenCV的安装配置:(1)前提是QT已经安装配置成功。(2)下载OpenCV。下载OpenCV后,解压即可,实际上并不需要安装,注意解压路径不能有空格,否则会出错。(3)下载安装CMake。OpenCV只是一个库,并不能直接拿来使用,需要借助CMake将其编译后才可以使用。(4)配置CMake参数,进行编译。使用CMake,主要是设定OpenCV的输入路径、输出路径、MinGW的位置等相关信息。运行CMake之后,需要在命令提示符下进入输出路径,然后执行mingw32-make命令,由MinGW对OpenCV进行编译,其间会耗费一定的时间。此步骤成功后,再执行mingw32-make install命令,会把编译好的所有文放到这个文件夹下,这个就是将来开发要用到的OpenCV全部文件。(5)将上一步骤得到的install目录bin文件夹,添加到系统的环境变量中,重新启动电脑。(6)在QT工程中,打开.pro工程属性文件,将OpenCV添加到INCLUDEPATH和LIBS中后,就可以在QT开发中使用OpenCV计算机视觉库了。

4 在QT中通过OpenCV实现视频处理

4.1 实现的基本原理。在视频处理中主要用到OpenCV的highgui模块,该模块,前面已说过,主要完成视频捕捉、编码,图片处理等相关功能。

highgui模块中已经封装了视频、图像、窗口的所有操作。

首先,利用OpenCV建立窗口,然后打开摄像头,获取摄像头中的帧,然后申请IplImage类型的指针,将帧放入指针指向的内存空间,此时的只是静止的图像而已,为了符合我们人眼的观看习惯,再通过循环,达到每秒钟显示30次左右的效果,与放电影的原理基本一样,最终显示到窗口,看到就是动态的视频效果,使用完之后释放内存,释放窗口即可。

5 总结

嵌入式技术在当前的大环境下得到了快速发展,随着硬件设备性能的不断提高,高性能的嵌入式程序会越来越广泛地被使用,而QT恰好与这个大环境相吻合,同时OpenCV的出现对QT也是一个促进,QT+OpenCV模式在未来嵌入式视频处理中会广泛地被使用。

参考文献:

[1]彭均键,史步海,刘洋.基于Qt的嵌入式GUI开发平台的搭建[J].微型电脑应用,2010,2.

[2]郭晖,陈光.基于OpenCV的视频图像处理应用研究[J].微型机与应用,2010,21.

[3]秦小文,温志芳,乔维维.基于OpenCV的图像处理[J].电子测试,2011-7.

[4]许生模,余敏.嵌入式QT的内核分析与优化[J].微计算机信息,2007-10.

[5]陈峰,郭爽,赵欣.基于QT和嵌入式的视频监控系统[J].通信技术,2011,10.

作者简介:徐广宇(1978-),男,呼伦贝尔人,软件工程硕士,计算机信息管理学院教师,研究方向:软件设计理论与应用开发。

作者单位:内蒙古财经大学,呼和浩特 010051

上一篇:火车钩头专用落砂抛丸清理机研究 下一篇:如何在艺术设计教学中培养学生的创造思维能力