液位监测系统数据采集模块
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
图像数据采集技术在嵌入式中的应用
本设计采用linux嵌入式环境。Linux操作系统是Unix的克隆,是一个支持多用户, 多进程,多线程,实时性较好的功能强大而稳定的操作系统,它可以运行x86 PC,Sun Sparc,Digital Alpha,680x0,PowerPC, MIPS等平台上,在本设计中,它运行在arm9平台上。
嵌入式系统被定义为:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
嵌入式系统是面向用户、面向产品、面向应用的,如果独立于应用自行发展,则会失去市场。嵌入式处理器的功耗、体积、成本、可靠性、速度、处理能力、电磁兼容性等方面均受到应用要求的制约,这些也是各个半导体厂商之间竞争的热点。嵌入式处理器的应用软件是实现嵌入式系统功能的关键。软件要求固化存储,软件代码要求高质量、高可靠性,系统软件(OS)的高实时性是基本要求。
本设计采用linux嵌入式环境是因为linux操作系统稳定可靠,arm9平台功能强大而设备精简,所占体积小,效率非常高。Linux内核版本为2.0.35,内自带了USB驱动,摄像头采用zc301摄像头,驱动需要自己载入。
本设计的系统流程是这样的,首先将u-boot引导程序烧入嵌入式开发板中,然后运行u-boot,把linux核引导进开发板中,整个过程通过PC机的超级终端minicom控制,PC机与开发板用一条并口线相连,linux 先引导完成,然后就启动linux,当操作系统把控制权交组用户后,用insmod命令动态加载设像头驱动程序,然后编写代码打开摄像头,拍摄图片数据,运行远程服务,对PC机的客户数据请求,服务端把图片数据输给PC机上的客户端,然后在PC机上对图片数据解码保存,需要时在LCD上显示出来。当需要观看动态效果,就要连续的播放图片到LCD显示器上。后面第3章着重讲述了数据采集的实现原理。附录中介绍了video for Linux(video 4 Linux)的接口,以及它的使用。 [资料来源:www.THINK58.com]
数据采集的设计实现
3.1 JPEG图像压缩过程分析
程序包中有四个重要源文件,start.c为主程序入口,capture.h定义了程序中要用到的各种类,capture.c 是拍摄图片和图片压缩的核心代码。下面将代码涉及的实现进行详细说明。
JPEG标准中规定了4种压缩模式:顺序编码(Sequential encoding),渐进编码(Progressive encoding),等级编码(Hierarchical encoding),无损编码(Lossless encoding)[7]。应用最为广泛的为基于DCT变换的顺序编码,也称之为基准模式(Baseline mode),其它几种模式都以此为基础。
哈夫曼编码
哈夫曼编码要分成3步来完成,1)按之字型的顺序(Zig-zag sequence)调整量化后的系数[24];2)将按之字型顺序排列的系数转化为中间符号(Intermediate symbol)序列[25];3)将中间符号中的一部分进行变长码字编码(Variable-lengths code coding)也就是哈夫曼编码,另一部分进行变长整数编码(Variable-lengths integer code),最终输出数据流。
先看第一步,由前面的叙述可以看出,经过FDCT和量化两个环节后,较高空间频率(对应较大的和)的系数很小,大部分为零,因此,按之字型的顺序调整系数的用意就是使为零的高空间频率系数能够连在一起,以利于游程编码(Run-length coding)。根据这一点,应使u和较小的系数排列在前面,之字形顺序如图3-2,图中ACij表示坐标为(i,j)的交流系数。
think58.com [版权所有:http://think58.com]
试验图像数据的获取
进行压缩前,必须要有源图像,这里,选择了BMP图像作来获取图像数据,之所以选择BMP图像,一是它比较常见,图像格式较为简单;二是一般情况下不对存储的图像数据进行压缩(尽管BMP图像支持一定的图像压缩,但不常见)。整个步骤如下:
1)一幅BMP图像转成灰度图像。由于需要的是灰度图,因此,首先依据色彩空间转换公式把彩色图像转成灰度图像。
2)将图像进行翻转。前面提到,BMP图像存储图像数据时从下到上,从左到右,JPEG中是从上到下,从左到右的,故要对图像数据进行翻转,否则压缩后的图像在显示时是倒立的。
3)将图像存成一个简化的文件。由于只注重压缩方法的研究,因此为了编程的方便,再把把图像数据存储成结构较为简单的文件,文件中仅保留图像的宽度和高度及具体的图像数据。
4)以简化的图像文件作为输入,对图像进行压缩。压缩后的图像存成标准的JPEG文件格式。
5)选择不同的量化表对压缩效果进行比较,评价。
从BMP图像获取图像数据,了解BMP图像的格式是其关键。下面先对BMP图像的格式进行分析。 内容来自think58
[资料来源:http://think58.com]
3.2.1 BMP图像的格式
BMP图像采用RGB(Red Green Blue)色彩模型,将各种颜色视为为红,绿,蓝(R,G,B)三个部分的组合。由于一幅图像中许多像素对应的颜色是相同的,BMP图像中采用了一个表:表中的每一行记录一种颜色的R,G,B值。这样,当表示一个象素的颜色时,只需要指出该颜色是在第几行,即该颜色在表中的索引值,这个表在BMP图像中称为调色板。有一种图,它的颜色数高达256×256×256种,也就是说包含上述提到的R,G,B颜色表示方法中所有的颜色,这种图叫做真彩色图(True Color)。真彩色图并不是说一幅图包含了所有的颜色,而是说它具有显示所有颜色的能力,即最多可以包含所有的颜色。表示真彩色图时,每个象素直接用R,G,B三个分量字节表示,而不采用调色板技术。
内容来自think58