ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:194.18KB ,
资源ID:768718      下载积分:2 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/768718.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于ARM嵌入式图像处理系统设计与实现论文.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于ARM嵌入式图像处理系统设计与实现论文.docx

1、基于ARM嵌入式图像处理系统设计与实现论文目 录摘 要 21 引言 11.1 课程设计的意义 11.2 课程设计的目的 12 系统设计原理 22.1图像处理技术原理和成像原理 22.2 BMP文件格式简介 22.3 图像显示原理 33 开发环境简介及搭建 53.1 硬件平台 53.2 系统软件平台构建 53.3 LCD显示模块 54 系统设计的与具体实现 74.1 BMP文件的读入 74.2 图像增强算法设计 74.3 图像分割算法设计 84.4 图像平滑 84.5 图像缩放(平移以及转置) 105 程序主要源代码分析 125.1 图像数据存储的主程序如下: 125.3 图像平移主要代码 15

2、5.4 图像缩放主要代码 185.5 转置图像主要代码 216 运行测试结果 236.1图像平移效果 236.2图像转置效果 246.3图像的缩放效果 247 总结 25参考文献 26基于ARM嵌入式图像处理系统设计与实现学生姓名:王涛 指导老师:蔡烁摘 要 针对现在的过程检测的实时需求,设计出一种成本低,功能始终的图像处理采集系统。该系统以ARM7(S3C44BOX)为核心并配上外围电路实现图像处理功能,在加上多种通讯接口设计的图像传输通道,然后加入SD卡接口用于提取图像数据。最后基于uC/OS-嵌入式操作系统设计了一种图像处理方法,在系统中实现了图像增强、图像分割和目标定个位。实验表明,该

3、系统能够很好地解决在线处理功能的实时问题,图像处理的准确率也满足了过程检测系统的要求,而且实现简单,成本比较低,特别适合对于功耗、体积要求较严格的过程检测系统。关键词 ARM;图像处理系统;图像增强;目标定位1 引言1.1 课程设计的意义图像处理技术在工业自动化、仪表检测安全、以及安全、消费电子、医学中被越来越广泛的应用。在现代战争中,利用图像进行精确制导、火控、无人飞机的电视导航等,在国防中也受到了高度的重视。图像处理算法中常有大量的运算,特别是在实时图像处理方面,因此通常采用DSP1或FPGA3来实现。但随着微处理器技术的突飞猛进,现代MPU1也可以完成高速的数字图像处理。作为嵌入式图像处

4、理技术,其主要技术包括两个方面,一个是图像处理技术,另一个则是嵌入式系统4应用技术。本文主要研究图像处理技术在嵌入式系统中的应用。1.2 课程设计的目的本课程设计的目的旨在研究一种能够进行高速图像处理5的嵌入式系统架构的设计与实现方法。针对嵌入式系统本身的特点,设计出具有较强通用性的嵌入式图像处理平台。利用嵌入式系统进行图像处理是对传统的图像处理硬件实现方法的挑战.它的完成将为图像处理的开辟新的实现途径,并且为嵌入式系统的应用再次打开一片新的领域,同时,由于图像处理的应用十分广泛,其本身也有广泛的应用前景。图像数据是一种重要的信息资源,随着以计算机和计算机技术为核心的信息科学的发展,图像处理在

5、通讯、管理、医学、地震、气象、航空航天以及教育等领域,发挥着愈来愈重要的作用。但传统的图像处理技术主要依赖于大批量的电子计算设备,它们带来巨大的保养、增加行业成本。嵌入式平台拥有小巧、价格低廉、功耗小及维护成本低等优点。因此基于嵌入式平台构建图像处理系统可以降低其生产维护成本,提高其可靠性和可控件,具有较高的市场价值。本文主要针对采集到的图像(bmp格式)实现平移、转置、缩放、平滑等处理。2 系统设计原理2.1图像处理技术原理和成像原理图像处理技术又称“机器视觉”5,乃是将被测对象的图像作为信息的载体,从中提取有用的信息来达到测量的目的,具有非接触、高速、获得信息丰富等优点。系统一般通过摄像头

6、采集对象的图像信息,然后通过处理系统对采集到的图像进行数字化的处理和分析,根据检测要求可得到对象的特征信息,随后进一步对此进行判断并输出结果。如图2.1 所示,连杆的表面缺陷通过一个方形LED漫反射光源均匀照亮待检测的破口区域,光线照射到对象表面后,通过光学镜头成像在摄像头内的光电耦合CCD 元件3上并转化成相应的数字图像信号,CCD 元件可理解为一个由感光像素组成的点阵,每一个像素都一一对应了被测对象的二维图像特征。数字图像信号经过图像处理系统对图像特征信息的提取和计算得到所需的测量值,随后通过RS232 通讯接口把数据传输给PLC 进行逻辑判断,判断的结果直接通过设备前面板上的指示灯输出。

7、 CCD 透镜 LED 光源 对象 CCD 摄像机图2.1 摄像头采集对象的图像信息2.2 BMP文件格式简介一个BMP文件包括以下四部分:文件头,信息头,调色板数据和图像数据。文件头长度为14个字节。分别为:bffype:指定文件结构,必须是Ox424D,即字符串“BM ; bfSize:指定文件大小,包括这14个字节;bfReservedl,bfReserved2:分别为2个字节,为保留字,不用考虑:bfOffBits:从文件头到实际的图像数据的偏移字节数。信息 头 长 度为40个字节,分别为:biSize:指定这个结构的长度,为40,单位字节:biWidth, biHeight:指定图像

8、的宽度和高度,单位为像素;biPlanes:必须为1; biBitCount:指定表示颜色时要用到的位数;biCompression:指定是否压缩:biSizelmage:指定实际图像数据占用的字节数,注意,计算时图像宽度取大于等于biWidth的最小的4的整数倍数;biXPelsPerMeter, biYPelsPerMeter:指定目标设备的水平和垂直分辨率;biClrUsed:指定本图像实际用到的颜色数,如果该值为零,则用到的颜色数为2的biBitCount次方:biCIrImportant:指定本图像中重要的颜色数,如果该值为零,则所有的颜色都是重要的。第三部分为调色板,当然,这是对那

9、些需要调色板的文件而言的。在这里,所采集的图像数据是真彩色624位)的,故不需要调色板。调色 板 实 际上是一个数组,共有biClrUsed个元素。数组中每个元素占用4个字节,依次是一字节的蓝色分量,一字节的绿色分量,一字节的红色分量,以及一字节的保留值。第四部分就是实际的图像数据了。对于用到调色板的文件,图像数据是该像素值在调色板中的索引值。这里需要注意的是:每一行的字节数必须是4的整倍数,如果不是,则需要补齐,这在biSizelmage中有介绍。一般来说 ,BMP文件的数据是从下到上,从左到右。也就是说,从文件中最先读到的是图像最下面一行的左边第一个像素,然后是左边第二个像素一接下来是倒数

10、第二行左边第一个像素,以此类推,最后得到的是最上面一行的最右一个像素,这与采集出的图像数据顺序是不同的。每像素的顺序为BGR6.2.3 图像显示原理本课程设计设计采用的是一个240X320分辨率的16位液晶屏幕,可以通过操作S3C2410内部的相关寄存器来直接控制显示,由于采用了ARMLinux作为操作系统,可以直接操作“nux下的Framebuffer设备来完成图像的显示,帧缓冲(Framebuffer)是Linux为显示设备提供的一个接口,把显存抽象后的一种设备,他允许上层应用程序在图形模式下直接对显示缓冲区进行读写操作。这种操作是抽象的、统一的。用户不必关心物理显存的位置、换页机制等等具

11、体细节。这些都是由Framebuffer设备驱动来完成的。在应用程序中首先要打开Framebuffer设备,在Linux系统中Framebuffer设备一般映射为/dev/fb,可以有多个设备。然后调用ioctl提供的借口获取设备信息,主要是获得当Framebuffer设备的分辨率、色深、每一行数据占的字节数。关键的一步是将屏幕缓冲区映射到用户空间,Framebuffer设备可以看成是显存的映像,但是Linux所有的设备驱动均在内核态工作,所以无法在当前进程空间中直接访问,通过映射机制可以直接把显存的起始地址映射到当前进程的地址空间,从而可以快速方便的实现显存,建立映射的方法如下:Pfd=mm

12、ap(0,FBDraw_finfo,smem_len,PROT_READ|PROT_WRFTE,MAP_SHARED,df,0);/以read、write和share方式映射屏幕上左边为(x,y)的点在显存中的位置是:Pfd+x*(fb_vinfo.bits_pixel)3)+y*fb_finfo.line_length,对这个位置赋相应的颜色值就可以再屏幕上显示出来。需要注意的是当色深(fb_vinfo.bits_per_pixel)不同时,颜色值的格式也不一样。把经过图像处理后的图像数据或者采集到的原始图像数据转化成Framebuffer设备的颜色数据格式(RGB565、RGB888等)后

13、,将数据复制到从地址pfb开始的内存中,就可以事先图像的显示。3 开发环境简介及搭建3.1 硬件平台数字图像处理系统是执行处理图像、分析理解图像信息任务的计算机系统.尽管图像处理技术应用广泛,图像处理系统种类很多,但他们的基本组成是相近的口它们主要含有:图像输入设备、执行处理分析与控制的计算机图像处理机、输出设备、存储系统中的图像数据库、图像处理程序库与模型库。其中,负责执行图像处理与分析的图像处理机是整个系统的核心部分,它关系着图像的处理效果,及系统的整体性能。本系统选用的是韩国三星电子公司推出的一款基于ARM920T内核的S3C2410嵌入式微处理器。S3C2410把外部复位信号作为一个中

14、断处理,在系统复位时,程序指针(PC)被设置为0,程序跳转到0x00000000开始运行。此空间对应BankO,系统的2MB的NORFIash和处理器的Bank0相连接。在NORFlash中存储的是BootLoader,它负责配置处理器的结构、工作模式以及自动检测系统的各个硬件是否工作正常。系统经过初始化和自检后,BootLoader负责把16MBNANDFlash的zlmage(即软件系统的镜像文件)复制到0xc0008000地址(此地址是系统64MB SDRAM的首地址)。然后,引导程序把PC指向0xc0008000地址,系统开始运行。3.2 系统软件平台构建结合S3C2410处理器的特点

15、基于该芯片构建嵌入式图像处理系统,设计者必须考虑其通用性、响应速度及对于硬件的可操控性。正是基于这样的考虑,分三层构建嵌入式图像处理系统的软件体系:ARM Linux的建立;图形用户界面(MiniGui)的移植;图像处理软件的设计编码。其中ARM Linux的建立是构建嵌入式Linux系统的通用步骤 3.3 LCD显示模块从S3C24 10的LCD控制器出来的信号线包括24根数据线和若干根控制线。这些信号线是经过74HC245隔离后接到LCD模块的,对于256色LCD只需要其中低8位数据线即可(如图所示)。LCD模块除了需要控制信号和数据信号外,还需要一个22V左右的工作电压和上千伏的背光电压

16、。前者MAX629升压后得到,后者由一个逆变器模块提供。图3.3 S3C24 104 系统设计的与具体实现基于上文的阐述,本软件系统的具体实现丁作主要包括:图像文件的读入、图像处理的具体实现等。下文将具体介绍实现工作。4.1 BMP文件的读入在嵌入式平台上,并没有现成的BMP文件的库函数可以使用。因此,如何把一个BMP文件读人到内存中进行图像处理算法移植的根本前提。本系统中,主要处理的图像有两大块:真彩图和256色的图像(包括256级厌度图),因此对应设计了两个BMP文件的读入函数,并将这两个函数放在Graphich和Graphicc中,以备后续的开发使用。两个函数为:GetTruePixel

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1