(电路与系统专业论文)基于fpga的视频图像处理系统的研究.pdf_第1页
(电路与系统专业论文)基于fpga的视频图像处理系统的研究.pdf_第2页
(电路与系统专业论文)基于fpga的视频图像处理系统的研究.pdf_第3页
(电路与系统专业论文)基于fpga的视频图像处理系统的研究.pdf_第4页
(电路与系统专业论文)基于fpga的视频图像处理系统的研究.pdf_第5页
已阅读5页,还剩62页未读 继续免费阅读

(电路与系统专业论文)基于fpga的视频图像处理系统的研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

t c h a n g s h au n i v e r s i t yo fs c i e n c e & t e c h n o l o g y s u p e r v i s o r p r o f e s s o rt a n gl i j u n a p r i l ,2 0 1 1 长沙理工大学 学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所 取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任 何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡 献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的 法律后果由本人承担。 作者签名:军匆p 日期:沪f f 年f 月弓le l 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意 学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文 被查阅和借阅。本人授权长沙理工大学可以将本学位论文的全部或部分内 容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存 和汇编本学位论文。 本学位论文属于 1 、保密口,在年解密后适用本授权书。 2 、不保密团。 ( 请在以上相应方框内打“ ) 作者签名:幂移彬日期:加,f 年厂月弓e l 导。为主罾吼圳年r 叫日 摘要 图像信息是人类获取的重要信息之一,随着数码技术的地推进和完善,视频 图像采集和处理的应用领域在不断地扩大。图像的数据量是非常大的,同时很多 常用数字图像处理算法都有计算简单但重复次数多的特点。f p g a ( 现场可编程门 阵列) 的特点使其非常适用于进行一些基于像素级的图像处理。 本文介绍了基于f p g a 的视频图像系统的设计,实现了图像的采集、存储、 v g a 显示以及几种常用的数字图像处理算法。图像采集模块使用的是c m o s 图 像传感器o v 7 6 2 0 ,由于o v 7 6 2 0 的a d 转换器等辅助电路都集成在芯片内,能 简化了系统的设计。o v 7 6 2 0 的初始化是通过s c c b 协议配置它内部的寄存器来 完成,本系统采集的图像数据为每秒2 5 帧、6 4 0 x 4 8 0 像素的灰度数字图像。图 像存储模块采用两块s r a m 进行乒乓操作,实现图像数据不间断的帧存。图像 显示模块用t h s 8 1 3 3 芯片进行a d 转换获得用于显示的r 、g 、b 模拟信号, 而v g a 显示所需的行同步和场同步信号由f p g a 控制产生,最后完成数字图像 v g a 显示。实时数字图像处理部分介绍了中值滤波算法、快速中值滤波算法和 卷积算法的合理性、适用性和具体的实现过程,同时用流水线设计方法实现了 f p g a 的快速中值滤波算法和卷积算法。 最后,对系统进行了仿真。经实验验证,系统达到了实时性要求,能正确和 可靠的工作。整个设计模块能够满足系统实时图像处理要求,占用系统资源很少, 用较少的时间完成了图像数据的采集和处理,提高了效率。 关键词:f p g a ,图像传感器,图像采集,v g a 显示,图像处理 a b s t r a c t w i t ht h ea d v a n c e m e n ta n di m p r o v e m e n to fd i g i t a lt e c h n i q u e s ,t h ea p p l i c a t i o n f i e l do fv i d e oi m a g ea c q u i s i t i o na n dp r o c e s s i n gi sc o n s t a n t l ye x p a n d i n g f p g ah a s t h ec h a r a c t e r i s t i c so fh i g hs p e e d ,l o wp o w e r , s h o r td e v e l o p m e n tc y c l e ,e t c a n dt h e s e c h a r a c t e r i s t i c sa r ev e r ys u i t a b l ef o rt h ec o m p u t i n go fa m o u n to fd a t ap r o c e s s i n g f p g ai sm o s ts u i t a b l ef o rr e a l - t i m ei m a g ep r o c e s s i n g t h i sp a p e rm a i n l yi n t r o d u c e st h ed e s i g no fv i d e oi m a g ep r o c e s s i n gs y s t e m b a s e do nf p g a ,i tr e a l i z e si m a g ea c q u i s i t i o n ,s t o r a g e ,v g ar e a l i t ya n ds o m e c o m m o n l yu s e dd i g i t a li m a g ep r o c e s s i n ga l g o r i t h m i m a g ea c q u i s i t i o nm o d u l eu s e c m o si m a g es e n s o ro v 7 6 2 0 ,t h eo v 7 6 2 0 sa dc o n v e r t e ra n do t h e ra u x i l i a r y c i r c u i t sa r ei n t e g r a t e do nt h ec h i p ,s ot h es y s t e md e s i g ni ss i m p l i f i e d ;i ti sa l s ov e r y e a s yt or e a di t si m a g ed a t a ,t h ei n i t i a lc o n f i g u r a t i o nc a nb ed o n et h r o u g ht h es c c b p r o t o c 0 1 i m a g es t o r a g em o d u l e u s e st w os r a mf o rt a b l et e n n i so p e r a t i o nt o c o m p l e t ef r a m e ss a v eo fi m a g ed a t a ,r e a l i z et h ei m a g ea c q u i s i t i o no f2 5f r a m e sp e r s e c o n d6 4 0 x4 8 0p i x e l s ,p r e p a r i n gf o rl a t e ri m a g ep r o c e s s i n g i m a g ed i s p l a ym o d u l e w i t ht h s 813 3c h i p sf o ra dc o n v e r s i o ng e t st h ea n a l o gs i g n a l su s e df o rd i s p l a y , a n d t h ef p g ap r o d u c e sh o r i z o n t a ls y n ca n df i e l ds y n c h r o n i z e ds i g n a lu s e df o rv g a d i s p l a y , t h e ni m a g ev g ad i s p l a yi sc o m p l e t e d r e a l - t i m ed i g i t a li m a g ep r o c e s s i n g s e c t i o nd e s c r i b e st h er a t i o n a l i t ya n da p p l i c a b i l i t yo ft h em e d i a nf i l t e ra l g o r i t h ma n d t h ec o n v o l u t i o na l g o r i t h m ,s i m u l t a n e o u s l yt h ef a s tm e d i a nf i l t e r i n ga l g o r i t h ma n d c o n v o l u t i o na l g o r i t h mh a v er e a l i z e dw i t ht h ea s s e m b l yl i n ed e s i g nm e t h o d t h e d i g i t a li m a g ea c q u i s i t i o na n dt h ed i g i t a li m a g ep r o c e s s i n gm o d u l ei nt h i sd e s i g na r e r e a l i z e do no n ef p g a t h u s ,t h es y s t e ms t r u c t u r ei ss i m p l i f i e d t h ee v a l u a t i o no ft h ei m a g ea c q u i s i t i o ns y s t e ms h o w st h a ti t sp e r f o r m a n c e r e a c h e st h er e q u i r e m e n t so ft h es y s t e m ,a n di tc a nw o r kr e l i a b l yw i t hl o wp o w e r c o n s u m p t i o n k e yw o r d s :f p g a ,i m a g es e n s o r , i m a g ea c q u i s i t i o n ,v g ad i s p l a y s ,i m a g e p r o c e s s i i 目录 摘i i l 巨i a b s t r a c t i i 第一章绪论 1 1 视频图像处理系统的发展及现状1 1 2 选题的意义2 1 3 论文的组织和结构3 第二章视频图像处理系统的f p g a 设计方法 2 1 硬件描述语言( h d l ) 4 2 1 1 硬件描述语言概述4 2 1 2v e r i l o gh d l 的简介4 2 2 本系统的f p g a 设计方法。5 2 2 1 乒乓操作5 2 2 2 流水线处理6 2 2 3 自项向下( t o p - * d o w n ) 设计方法7 2 3 本章小结8 第三章视频图像处理系统的设计与仿真 3 1 系统整体设计9 3 2 图像采集9 3 2 1c m o s 图像传感器9 3 2 2 图像传感器初始化控制1 2 3 2 3 图像采集控制1 5 3 3 图像帧存储控制1 7 3 4v g a 显示模块设计19 3 4 1v g a 显示方案1 9 3 4 2t h s 8 1 3 3 配置2 0 3 4 3v g a 显示模式2 1 3 4 4v g a 接口时序2 2 3 4 5v g a 显示控制2 3 3 5 本章小结一2 5 第四章图像处理算法的f p g a 实现 4 1 中值滤波算法2 6 4 1 1 中值滤波算法2 6 4 1 2 快速中值滤波2 7 4 2 快速中值滤波的f p g a 实现2 9 4 2 13 3 方形窗的设计一2 9 4 2 2 行列计数器模块3 2 4 2 3 快速中值滤波算法模块3 2 4 3 卷积运算。3 3 4 4 卷积运算的f p g a 实现3 4 4 5q u a r t u si i 与m a t l a b 的算法仿真一3 6 4 5 1m a t l a b 的图像数据的生产和导出3 6 4 5 2 中值滤波算法仿真3 7 4 6 本章小结。3 8 第五章实验结果与分析 5 1 系统资源消耗分析3 9 5 2v g a 显示4 0 5 3q u a r t u si i 与m a t l a b 的仿真对比4 0 5 4 本章小结一4 1 总结与展望4 2 参考文献4 3 致j 射4 5 附录4 6 第一章绪论 1 1 视频图像处理系统的发展及现状 数字图像处理技术源于上世纪2 0 年代,当时通过海底电缆将一副图片从英 国伦敦传送美国纽约,它采用了数字压缩技术。1 9 6 4 年美国的喷气推进实验室 处理了太空船“徘徊者七”号发回的月球照片,这标志着第三代计算机问世后数字 图像处理概念开始得到应用。其后,视频图像处理系统技术发展迅速,目前主要 应用于【l 卅:( 1 ) 航天领域,运用在太空成像和卫星遥感中;( 2 ) 通信工程领域, 用于文字、声音、数据和图像的多媒体通信:( 3 ) 生物医学领域,用于c t 技术 和显微图像处理分析;( 4 ) 公安交通领域,公安业务图像的判断分析、人脸识别、 指纹识别、以及交通监控和事故分析等等;( 5 ) 工业生产领域,用于纺织业中的 布匹疵点检测,邮政信件的自动分拣,还有一些自动装配线中零件的分类和零件 质量的检测等等。如今图像处理技术已给人类带来了巨大的经济和社会效益。不 久的将来它不仅在理论上会有更深入的发展,在应用上亦是科学研究、社会生产 乃至人类生活不可缺少的强有力的工具【4 7 】。 在视频图像处理几十年的发展历史中,随着集成电路和计算机等技术的飞速 发展,图像处理无论在算法、系统结构,还是在应用以及普及的程度上有快速的 发展。但图像处理系统依然面临着许多问题,图像的数据大和运算量大是图像处 理算法的最大特点,同时还具有三个特点:( 1 ) 均匀性:图像处理的低层算法 一般是对整个图像二维阵列的各各点做同一操作。( 2 ) 邻域性:大部分图像预 处理算法的处理对象通常是一个小邻域,如3 x 3 的方形邻域。( 3 ) 多级性:图 像处理高层算法的处理对象时图像其中的一部而不是整幅图像。由于图像的低层 预处理算法需要处理大量的数据,如一幅6 4 0 x 4 8 0 x 8 的动态图像,即1 s 内有2 5 帧,则需进行6 4 0 x 4 8 0 x 2 5 = 7 6 8 0 0 0 0 次操作秒。因此,运算速度要求相当高,从 而如何实现处理速度的高速化是最主要的问题,这个问题是一个长期困扰图像处 理界的问题【黏1 0 】。 视频图像处理系统的发展可以分为三个阶段【l 卜1 4 1 : 第一阶段是从上世纪6 0 年代末到8 0 年代中期,当时的代表产品是采用箱式 结构,体积较大的各种图像计算机以及图像分析系统。 第二阶段是从上世纪8 0 年代中期到9 0 年代初期,该阶段的特点是小型化, 外部结构由箱式变为插卡式,借助于微机进行的图像采集和处理。 第三阶段是从上世纪9 0 年代初开始,这阶段的产品出现两大类,一种是以 部存储器接1 :3 ( d d r d d r 2 ) ,高速l v d s ( 低电压差分信号传输) 接口等。显然f p g a 非常适合高性能低成本的视频图像处理系统的应用。 1 2 选题的意义 现在许多高端视频图像处理系统为提高系统性能增加d s p 模块,采用d s p 作为辅助处理器件。由于d s p 只是对部分算法提供硬件优化,其原理还仍是串 行指令执行系统,然而这部分固定优化运算并不能够满足所有算法的需要,使它 的使用受到限制。 采用f p g a 作为系统的处理器件,系统的速度可以达到6 0 帧秒,可以达到 目前市场上大部分视频源的速度,这个速度一般的c p u 是不能达到的。f p g a 2 的开发和使用已经不仅仅是体现在基本逻辑的设计方面,更加突出的是系统级的 设计。为了提高图像处理的速度,满足实时系统的要求,可以选用硬件来实现图 像的处理,f p g a 芯片便是最理想选择之一,同时f p g a 的应用也为提高图像处 理速度提供了新的思路和解决方法。 因此本课题在深入研究基于f p g a 的视频图像预处理的实现,一方面搭建了 基于f p g a 的视频处理系统,为以后的视频图像处理提供硬件逻辑电路;另一方 面,为视频图像处理的后期应用提供基础。 1 3 论文的组织和结构 本论文分为一下几个部分: 第一章为绪论。介绍视频图像处理的发展现状和选题的意义,以及文论的组 织和结构。 第二章介绍了f p g a 的开发流程和方法。介绍了硬件描述语言v e r i l o g ,以 及f p g a 开发常用的设计方法。 第三章说明了图像采集与显示系统的设计。完成系统的各个部分的设计,视 频采集部分通过s c c b 协议对图像传感器o v 7 6 2 0 的进行初始化配置得到分辨率 6 4 0 x 4 8 0 、8 位的灰度图像数据;存储部分用乒乓操作方法实现了图像数据在 s r a m 的帧存;显示部分用t h s 8 1 3 3a d 转换进行模数转换的到模拟的r 、g 、 b 信号,用f p g a 实现v g a 同步信号的控制,实现视频图像的v g a 显示。 第四章是图像处理算法的f p g a 实现。介绍了中值滤波和快速中值滤波算法 以及卷积算法,并实现了f p g a 的中值滤波算法和卷积算法;最后用q u a r t u si i 结合m a t l a b 对图像算法进行运算仿真。 第五章是实验结果的总结分析,分别f p g a 的资源消耗和v g a 的显示分析。 论文的最后一部分是整个设计的总结和展望。 3 第二章视频图像处理系统的f p g a 设计方法 2 1 硬件描述语言( h d l ) 2 1 1 硬件描述语言概述 硬件描述语言( h d l ) 是一种用形式化方法来描述数字电路和设计数字逻辑 系统的语言;它可以使数字逻辑电路设计者利用这种语言来描述自己的设计思 想,然后利用电子设计自动化( e d a ) 工具进行仿真,再自动综合到门级电路,最 后用a s i c 或f p g a 实现其功能;现在这种称之为高层次设计( h i g h l e v e l d e s i g n ) 的方法已被广泛采用;据统计在美国硅谷目前约有9 0 以上的a s i c 和f p g a 已 采用硬件描述语言方法进行设计【2 2 1 。 硬件描述语言从出现至今已有二十多年的历史,能成功地应用于设计的每个 阶段:仿真、验证、综合等。到8 0 年代,已出现了几十种硬件描述语言,它们 对设计自动化起着极大的促进和推动作用。但是不足的是,这些语言通常各自面 向特定的设计领域与层次,此时众多的语言使用户无所适从,所以急需一种面向 设计的能得到普遍认同的硬件描述语言标准。进入8 0 年代末,硬件描述语言趋 向标准化的方向发展。最终,v h d l 和v e r i l o gh d l 语言满足了这种趋势的要求, 先后成为i e e e 标准。最近这些年来,用综合工具把h d l 模块自动转换为电路 发展非常迅速,在有的国家已成为设计数字电路的主流。 2 1 2v e r i l o gh d l 的简介 v e r i l o gh d l 是硬件描述语言的一种,用于数字电子系统设计。设计者可以 用它来进行各种级别的逻辑设计,并进行数字逻辑系统的仿真、时序分析、逻辑 综合。它是目前应用最广泛的一种硬件描述语言。据有关文献报道,目前在美国 使用v e r i l o gh d l 进行设计的工程师大约有6 0 0 0 0 人,全美国有2 0 0 多所大学教 授用v e r i l o g 硬件描述语言的设计方法。在我国台湾地区几乎所有著名大学的电 子和计算机工程系都讲授v e r i l o g 有关的课程【2 3 ,2 4 1 。 v e r i l o gh d l 语言具有下述功能:设计的数据流特性、设计的行为特性、设 计的结构组成和设计验证方面的时延和波形产生机制。此外,v e r i l o gh d l 语言 还提供了编程语言接口,该接口可以在模拟、验证期间从设计外部访问设计,模 拟的具体控制和运行都可以访问。 几年以来,e d a 界一直对在数字逻辑设计中究竟采用哪一种硬件描述语言争 论不休,目前的情况是两者不相上下。在美国,在高层逻辑电路设计领域v e r i l o g h d l 和v h d l 的应用比率是6 0 和4 0 ,在台湾省各为5 0 ,在中国大陆目 4 元是双口r a m ( d p r a m ) 、f i f 0 、单口r a m ( s p r a m ) 等。在第1 个周期,将 输入的数据流缓存到“数据缓存模存1 。在第2 个周期,通过“输入数据选择 单元一的选择,将输入的数据缓存到“数据缓存模块2 ,同时,将第1 个周期 缓存在“数据缓存模块1 的数据通过“输出数据选择单元 的处理,送到“数 据运算处理模块 中运算处理。在第3 个周期,通过“输入数据选择单元 的再 次选择,将输入的数据缓存到“数据缓冲模块1 中,同时,将第2 个周期缓存 在“数据缓存模块2 一的数据通过“输出数据选择单元 的切换,送到“数据运 算处理模块 中方运算处理。如此循环,周而复始。 乒乓操作的特点是,通过“输入数据选择单元一和“输出数据选择单元 按 节拍切换,将缓冲的数据不停的送到“数据运算处理模块 中运算与处理。如果 把乒乓操作模块当作一个整体,在这个模块的两端看数据,输入数据和输出数据 都是连续不断的,没有任何停顿,因此十分适合对数据流进行流水线式地处理。 所以乒乓操作常常应用于流水线式算法,完成数据的无缝缓存与处理。 乒乓操作的还有一个优点就是可以节约缓冲区空间。例如在w c d m a 基带 5 应用中,1 帧数据由1 5 个时隙组成的,有时需要将1 整帧数据延时一个时隙后 进行处理,比较常用的办法是把这帧数据缓存起来,过了1 个时隙延时后进行处 理。这时缓冲区的长度是l 整帧数据长,假设数据速率是3 8 m b s ,1 帧长1 0 m s , 则此时缓冲区长度需要3 8 0 0 0 b i t 。如果采用乒乓操作,只需用两个能缓冲1 个时 隙数据的单口r a m 即可。具体过程为,向一块r a m 写数据的时候同时从另一 块r a m 读数据,然后送到处理单元处理。此时,每块r a m 的容量仅需2 5 6 0 b i t 即可。2 块r a m 加起来也只有5 1 2 0 b i t 的容量,比前面的方法节约了大量缓存 空间。 2 2 2 流水线处理 流水线处理是高速设计中的一个常用设计方法。如果某个设计的处理流程分 为若干个步骤,而且整个数据处理是“单流向 的,即没有反馈或者迭代运算, 前一个步骤的输出是下个步骤的输入则可以考虑采用流水线设计方法提高系 统的工作频率【2 引。 流水线处理的基本结构为:适当划分n 个操作步骤单流向然后将其串联起 来。流水线操作最典型的特点和要求是:数据流在各个步骤的运行过程中,从时 间上看都是连续的。如果将每个操作步骤假设为通过一个d 触发器,那么流水 线操作就类似于一个移位寄存器组,数据流依次经过d 触发器,完成每个步骤 的处理。流水线设计时序示意图如图2 2 所示。 t 2 2 流水线设计时序示意图 流水线设计最关键的一点在于整个设计时序的合理安排和前后级接口间数 据流速的匹配。这就要求每个操作步骤的划分必须合理,要统筹考虑各个操作步 骤间的数据流量。如果前级操作时间刚好等于后级的操作时间,设计就比较简单, 前级的输出直接汇入后级的输入就行。如果后级操作时间大于的前级操作时间, 则需要对前级的输出数据进行缓存,才能汇入后级,还必须控制数据速率的匹配, 以防后级数据的溢出。如果前级操作时间大于后级的操作时间,则要通过逻辑复 制、串并转换等手段将数据流分流,或者在前级对数据先存储、后处理方式,否 6 a b c d e 复制了 独立于 合功能 ,把功 行布局 ,提高 设计的成功率,因此这种方法在e d a 技术中得到广泛应用。自顶向下设计流程 分为三个阶段,如图2 3 所示,各个阶段之间并没有绝对的界限。 自顶向下设计方法的优越性是显而易见的【3 1 】:1 、由于功能描述可完全独立 于芯片结构,在设计的最初阶段,设计者可不受芯片结构的约束,集中精力进行 产品设计,缩短设计周期;2 、设计的再利用得到保证:电子产品正向模块化发展, 所谓模块化就是对以往设计成果进行修改,组合和再利用,产生全新的或派生设 计,而自顶向下设计方法的功能描述可与芯片结构无关,可以以一种i p ( i n t e l l e c t u a lp r o p e r t y ) 的方式进行存档,以便将来重新利用;3 、设计规模提高: 7 简单的语言描述即可完成复杂的功能,而不需要手工绘图;4 、芯片选择更加灵 活:设计者可在采用各种结构芯片来完成同一功能的描述,从而在设计规模、速 度、芯片价格及系统性能等方面进行平衡,选择最佳结果。 自底向上( d o w n - * t o p ) 的设计在某种意义上讲可以看做是自顶向下设计的 逆过程。自底向上设计也是从系统级开始,即从设计树的根开始进行逐层划分, 但划分首先是考虑单元的存在与否,即划分过程中是从存在的基本单元出发,设 计树末枝上的基本单元都是现有的,可以是其它项目已开发好的单元,也可以是 外购得到的单元。而在自顶向下的设计过程中,每一层的划分都要对某些目标进 行优化。自顶向下的设计属于理想的设计过程,它的缺点是得到的基本单元不标 准,制造成本也可能很高。自底向上的设计过程则全采用标准基本单元,通常成 本比较低,但有时一些特定指标要求可能不能得到满足。所以通常复杂数字逻辑 电路和系统的设计都采用这两种设计方法的结合。 2 3 本章小结 本章主要介绍了硬件描述语言v e r i l o gh d l 和几种f p g a 设计方法,并重点 叙述了视频图像处理系统中要用到的f p g a 设计方法。 8 第三章视频图像处理系统的设计与仿真 3 1 系统整体设计 整个f p g a 图像采集处理系统可以划分为以下几个模块:视频图像采集、视 频图像存储、视频图像的处理模块和视频图像的v g a 显示。f p g a 系统内部各 个模块的整体框图如图3 1 所示。系统上电后,f p g a 先从外部配置芯片中读取 配置数据,完成系统程序加载,然后进入工作模式。随后系统对o v 7 6 2 0 进行初 始化,o v 7 6 2 0 的初始化是通过s c c b 协议配置它内部的寄存器来完成。配置后 可以得到系统需要的视频图像数据,视频图像数据为每秒2 5 帧、6 4 0 x 4 8 0 像素 的灰度数字图像。初始化后f p g a 等待o v 7 6 2 0 发出的图像采集接受命令,f p g a 收到采集命令后就进入视频图像的存储模块,系统把视频图像存储到两个s r a m 中,利用乒乓操作存储的设计方法显示不问断的视频图像存储。之后f p g a 会发 生视频图像处理信号,把s r a m 中存储好的一帧图像传送到视频图像模块中, 并进行相应的图像处理。最后就是将处理好的视频图像进行v g a 的显示。整个 过程基本上就是按这样的流程运行工作,本章就是对各个功能模块的设计过程进 行介绍。 3 2 图像采集 图3 1系统整体设计框图 3 2 1c m o s 图像传感器 目前的图像传感器有c c d 和c m o s 两种,下面从几个方面对两种图像传感 器的特性进行比较。由于现代半导体大规模集成电路制造业的发展使得c m o s 光电转换效率更高,有比c c d 图像传感器更好的敏感度:又因为c m o s 采用有 源像素设计使得它的增益可直接在每个放大器上,所以c m o s 图像传感器可以 9 在消耗较少的功耗的情况下得到较的增益。通常大家都认为c c d 噪声水平较 低,因为它的集成度没有c m o s 高内部电路相对较少,且它的发展较早技术内 部有隔离层隔离噪声,c c d 的动态范围能在6 0 d b 以上,这也是c c d 图像传感 器的优势。由于c m o s 集成度高,内部电路多,使得相互之间的干扰较严重, 图像的噪声比较大,使c m o s 上世纪很长一段时间没有得到广泛的应用。近年 来随着半导体制造工艺的进步,集成晶体管尺寸也有了飞跃,加上电路消噪技术 不断完善,这些都是c m o s 图像传感器提高性能的必需条件,以至于目前的 c m o s 图像传感器的噪声水平已经接近c c d 图像窗前。c c d 图像传感器采 集的是电荷信号,而去读取比较复杂,要在时钟电路和三组不同的电源共同控制, 而且只能一位一位的读取电荷信息。由于c c d 的集成度低加上驱动和转换电路 较复杂,所以芯片驱动读取电路都只能设在芯片外部,使得读取速度非常的慢。 c m o s 图像传感器采集则电流或电压信号,信号的读取非常方便其速度快。 c m o s 可以一边采集信号读取电信号,而且还能同时处理几个单元的图像信息。 另外,c m o s 集成度高大部分电路在芯片上,这样不仅是电路比较简单而且处理 速度也更快。c m o s 图像传感器能把信号读取电路、a d 转换电路等集成到一 块芯片上,可以使整个系统更加简洁。由于c c d 和c m o s 工艺不兼容,所以 c c d 很难将这些集成在一块芯片上,使系统的更加发杂,不能满足系统微型化 的要求;同时c m o s 的耗电量也只是c c d 的1 8 。综上所述,本系统选用c m o s 图像传感器o v 7 6 2 0 作为图像采集芯片。 r g b 图3 2o v 7 6 2 0 功能组成模块图 表3 1o v 7 6 2 0 主要接口说明 o v 7 6 2 0 是o m n i v i s i o n 公司生产的一款大小为1 3 英寸数字式彩色黑白的 c m o s 图像传感器,他的功能组成模块如图3 1 所示。0 v 7 6 2 0 共有效像素单元 为6 6 4 ( 水平方向) 4 9 2 ( 垂直方向) 像素;内置1 0 位双通道a d 转换器,输 出支持8 位和1 6 位图像数据;具有自动增益和自动白平衡控制,可以进行亮度、 对比度、饱和度等多种调节功能;支持连续扫描和隔行扫描方式;有v g a 和 q v g a 两种图像格式,数据格式包括y u v 、y c r c b 、r g b 三种;最大输出分辨 率为6 4 0 4 8 0 3 2 j 。o v 7 6 2 0 主要接1 2 1 说明如表3 2 所示。o v 7 6 2 0 内部共有1 2 5 个可编程的功能的寄存器,系统可以通过改变配置寄存器的值,从而设置o v 7 6 2 0 1 l 的镜头开窗位置、分辨率大小以及输出帧频等。 3 2 2 图像传感器初始化控制 为满足系统对数字图像的要求,因此o v 7 6 2 0 必需工作在系统要求的模式 下,所以须对o v 7 6 2 0 进行初始化处理。图像传感器的默认功能可以在相应管脚 接上拉或下拉电阻来配置,然后图像传感器在上电后读取和锁存这些管脚的状 态,这样要得到常用的d e f a u t 配置是很容易的。但是在不同的系统中对图像的 要求不一样,这是就需要进行一部分寄存器的配置了。这些功能的细致配置必须 通过s c c b ( s e r i a lc a m e r ac o n t r o lb u s ) 配置来实现,如伽玛校正、背光控制、图 像输出格式、图像像素大小配置、数据输出频率、图像鲜明度、亮度微调、对比 度、镜像图像控制和低功耗待机模式等。 s c c b 是o m n i v i s i o n 公司定制的串行摄像头控制总线,它用于对摄像头内 寄存器的读写,以达到对摄像头输出图像类型的控制。s c c b 是1 2 c 协议简化版, 他们的工作原理是相同的,掌握了1 2 c 协议就可以很好的利用s c c b 对o v 7 6 2 0 进行初始化配置。s c c b 具有以下特点:l 、两条总线串行数据线s i o0 和串行 时钟线s i o1 ;2 、每个连接到总线的器件都可以通过惟一的地址和一直存在的 简单的主从节点关系软件设定地址,主节点可以发送数据或接收数据;3 、串行 的8 位双向数据传输位速率支持l o o k b i t s 和4 0 0 k b i t s ;4 、片上的滤波器可以滤 去总线数据上的毛刺波,保证数据的完整【3 3 】。 s c c b 的数据传输由主控制器( f p g a ) ,主控制器发出数据启动信号、时钟 信号以及结束时的停止信号。为了进行通讯,每个与s c c b 通讯的寄存器都有 唯一的地址( o v 7 6 2 0 的地址是0 x 4 2 ) 。s c c b 协议中定义启动、数据传输、停止 的时序如图3 3 所示。启动条件为:当s i o1 为高电平时,s i o0 出现一个下降 沿,则代表s c c b 开始进入传输数据状态;应答信号:在传送数据的第九位是应 答信号,数据线上拉底电平为应答否则是非应答信号;位传送信号:s c c b 开始 或者是应答信号之后的,时钟信号是高电平为数据传送,时钟信号是低电平为数 据准备并允许数据电平交换;停止条件:当s i o1 为高电平时,s i o0 出现一个 上升沿,则代表s c c b 进入停止传输数据状态。在数据传输期间,s i o0 上数据 的传输也受s i o1 的控制。只有s i o1 为低电平时,s i o0 上的数据才有效, s i o0 为稳定数据状态;s i o1 每出现1 个正脉冲,将传送1 位数据【3 4 】。 s c c b 数据传输的整个过程为:( 1 ) 首先主控制器件发送一个开始信号;( 2 ) 主控制器件发送从寄存器地址和读写方式,一共8 位,其中7 位从寄存器地址和 l 位读写方式;( 3 ) 从寄存器器件得到应答( 即a c k ) :( 4 ) 开始数据传输,传输 数据数量不限。每个字节( 8 位) 后面跟接收数据方的应答位,例如主控制器件读 取从节点数据,从寄存器发送数据,主控制器应答;主控制器写数据到从寄存器, 主控制器发送数据,从寄存器应答;( 5 ) 数据传输结束,主控制器件发送一个终 止信号结束整个过程p 副。 s c c b 协议有三相写操作和两相写操作两种写操作。三向写操作是将数 据写入寄存器中,整个过程分三个阶段:第一阶段发送从寄存器( 即o v 7 6 2 0 ) 的i d 地址和无关位;第二阶段发送从寄存器内部寄存器的地址和无关位; 第三阶段才是需要写入寄存器的数据和无关位。两相操作就是三相操作的前 两个阶段,他的主要目的是为了确定从寄存器的地址,因为两相操作没有提 供所需要的寄存器地址。两相操作还可用于读取寄存器中的数据。前一个阶 段写从寄存器的地址和无关位,后一阶段读取寄存器内的数据。但在进行这 个操作之前必须有一个写循环操作给他提供寄存器地址。 s c c b 数据的传输都是字节为单位的数据传输,根据系统控制将数据传 输到指定的寄存器中,并更具寄存器的配置把寄存器中数据传输到外部控制 器。 图3 4 是写操作的仿真结果图,i n d e x 节点控制标记信号,s i o1 是串行时 钟线,s i o0 是串行数据线。s i o0 在s i o1 为高电平时右高电平跳变为低电平 这个是数据传输的开始点,s i o0 对应s i ol 的签7 周期发送寄存器地址信号 ( 0 1 0 0 0 0 1 0 ) ,第8 个周期是写信号,第9 周期是应答信号:在紧接的8 个s i ol 周期是数据位1 0 1 0 1 1 1 0 ,第9 个s i o1 周期是应答信号;此时s i ol 是第电平, 之后s i o0 由低电平跳变为高电平,产生终止信号表示写过程已经完成。 s 工。一。一一厂 一一一j 二二葺二二j l _ 丁 s i u 斗疋nh 严 i数予保等 :数据准备 。i 图3 3s c c b 协议时序图 图3 4 写操作的仿真图 图3 5 是读操作的仿真结果图,i n d e x 节点控制标记信号,s i o - 1 是串行时 钟线,s i o0 是串行数据线。s i o0 在s i o1 为高电平时右高电平跳变为低电平 这个是数据传输的开始点,s i o0 对应s l o1 的签7 周期发送寄存器地址信号 ( 0 10 0 0 0 1 0 ) ,第8 个周期是读信号( 写信号时o 而读信号是1 ) ,第9 周期是应 答信号:在紧接的8 个s i o1 周期是数据位1 0 1 0 1 0 0 1 ,第9 个s i ol 周期是应答 信号;此时s i o1 是低电平,之后s i o0 由低电平跳变为高电平,产生终止信 号表示写过程已经完成 表3 2 重要寄存器的配置说明 地址寄存器名默认值配置后描述 1 3 1 4 2 8 1 2 c o m m o n0 1 c o n t r o lb 2 1 c o m m o n 0 4 0 4 c o n t r o lc c o m m o n0 0a 2 c o n t r o lh c l kr a t e0 04 l c o n t r o l c o m m o n 2 4 6 e c o n t r o la c o m b 5 为l 是选择8 位的输出 数据格式,数据从y 端输出;为0 是选择1 6 位的输出数据格式,输 出从y 和u y 端输出;因此 c o m b 5 应配置为1 c o m c 5 为1 输出分辨率为 3 2 0 x 2 4 0 的图像,为0 时输出 6 4 0 x 4 8 0 的图像,因此c o m c 5 应 为0 c o m h 7 为1 输出单行的r g b 原 始数据格式,为0 输出重复的 r g b 数据格式;c o m h 5 为l 是 选择逐行扫描,为0 是选择隔行 扫描。因此这两位都应配置为l c l k 5 :0 是系统时钟预设位,这个 寄存器定义像素时钟和时钟频率。 定义如下:1 6 位的p c l k 为, ( c l k _ i n p u t ) ( c l k 5 :0 + 1 ) 2 , 8 位的p c l k 为, ( c l k _ i n p u t ) ( c l k 5 :0 + i ) c o m a 3 为l 选择输出原始数据 信号作为输出,为0 选择y c r c b 数据信号作为输出。因此此位应配 置为1 图3 5 读操作的仿真图 系统工作模式为:分辨率6 4 0 x 4 8 0 、8 位的灰度图像数据。0 v 7 6 2 0 的寄存器 除0 x 2 f 0 x 5 f 是芯片保留地址外,其他均可配置。几个重要寄存器的配置说明如 表3 2 所示,本系统初始化配置如表3 3 所示。 表3 30 v

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论