USB 摄像头视频采集与Qt 界面显示 一. Qt 界面制作 1. 新建Qt 工程 启动Qt Creator,新建一个Qt Gui 应用。 单击 File 选择 New File or Project 出现以下界面: 选择 Qt Gui Application,之后选择好工程与路径名,其他默认,一直到设置 Class information(类信息)时,Class name 设为 Widget, Base name 选择 QWidget,其他默认。设置好这些后,其他默认,直到工程设置结束。如下图所示: 2. 修改ui 界面 打开Widget.ui,进入可视化设计界面。默认情况中间的主设计区下只有一个 Widget 的对象。由于 USB 摄像头采集到的图像需要显示到一个 QLabel 的部件上,从右侧的部件列表的“DisplayWidget”中选择“Label”部件拖动到中间;此外,我们需要两个按钮,一个用于启动和终止视频数据的保存,一个用于以后的视频文件的压缩。从右侧的”Buttons”中两次选择”Push Buttion”部件并拖动到 Widget 中。 从上图可以看出,对象 Widget 下已经添加了一个 label 部件,两个 push button 部件。右上角 Object 与 Class 的关系是:Object 对应的物体是属于 Class 对应的类,反映了 Qt 的继承关系。 接下来设置上面四种部件的属性,Widget 的属性按照下面图示设置,其中 geometry设置为[(0,0),650*550]说明界面左上角的坐标位于原点,大小为 650*550;在 window name 这一项设置的是你的界面的名字,我设置为 USB_YUV_Camera。 注:图片未提及的采用默认就行,其他三个部件见图示。这些部件的objectName 要特别注意,因为会在后面编写的程序中用到。 (Widget 设置图示) (label 设置图示1) (label 设置图示2) (Pu sh bu tton 1 设置图示) (Pu sh bu tton 1 设置图示) (Push button 2 设置图示) Push button 2 设置图示) 最后生成的界面: 点击Debug 会得到Debug 文档,里面有你设置的信息。 编译运行后,会在建立的工程文件夹下生成很多文件,重要的是 w idget.ui 文件,其他的文件要根据你具体的应用作出相应的修改。 Qt 界面最终的效果图为: 二. USB 摄像头视频采集与 Qt 界面显示源代码分析 源码包含:common.h VideoDevice.h w idget.h VideoDevice.cpp w idget.cpp main.cpp common.h 主要定义了 USB 采集到的图像的宽度,高度等信息; Videodevice.h定义了VideoDevice类,使它继承于Qt的基类QObject,...