关键词不能为空

当前您在: 主页 > 英语 >

基于OV2640视频数据压缩与储存的实现

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-10 20:26
tags:

-

2021年2月10日发(作者:mscd)



毕业设计(论文)任务书



毕业设计(论文)题目:




基于


OV2640


摄像头视频数据压缩与存储的 实现




原始资料:



(如此处空间不够,可附页)





JPEG



Joint Photographic Experts Group


)是联合图像专家小组的英文 缩写。


它由国际电话与电报咨询委员会



CCITT



The International Telegraph and Telephone Consultative Committee


)与


国际标准化组织


ISO



1986


年联合

< p>


成立的一个小组,负责制定静态数字图像的编码标准。



小组一直致力于标准化工作,开发研制出连续色调、多级灰度、静止图像的数字


图像压缩编码方法,即


JPEG


算法。


JPEG


算法被确定为国际通用标准,其适用范围广泛,除用于静态图像编码 外,


还推广到电视图像序列的帧。



OV2640



OmniVisio n


公司生产的一颗


1/4


寸的


CMOS UXGA



1632*1232


)图


像传感器。该


传感器体积小、工作电压低,提供单片


UXGA


摄像头和影像处理器的所有功



能。通过


SCCB


总线

< p>
控制,


可以输出整帧、


子采样、

< br>缩放和取窗口等方式的各种分辨率


8/10


位影像数据。


该产品


UXGA


图像最高达到


15



/


秒(


SVGA


可达


30


帧,


CIF


可达


60


帧)。



用户可以完全控制图像质量、


数据格式和传输方式。所有图像处理功能过程包括伽玛曲线、



白平衡、对比度、色度等都可以通



SCCB


接口编程。


OmmiVision


图像传感器应用独有的



传感器技术,


通过减少或消除光学或电子


{6}


缺陷 如固定图案噪声、拖尾、浮散等,提高图像质量,得到清晰的稳定的彩色图像




[1]



PCB


设计与制作



任枫轩




机械工业出版社


2010



9



1




[2]



OV2640 Software Application Notes v1.6 omnivision


[3]



STM32


中文参考手册



意法半导体


(


中国

)


投资有限公司


2010


年< /p>


1



10




[4]



ATK-OV2640


模块使用说明



正点原子




毕业设计(论文)主要内容:



1.



综述


O V2640


及视频压缩及储存的应用,了解视频压缩的相关技术,熟悉

< br>MCU



序开发的开发环境



2.



基于


C


语言设计单片机的控制程序



3.



深入分析基于

< br>ov2640


的视频压缩流程



4.



熟练掌握基于

< br>OV2640


及微控制器的视频压缩及储存技术



- I -




5.



设计实现视频压缩及储存,以及图像传输








主要参考文献:



[1] JPEG


编解码过程详解


/


[2]


串口通信


(词条)


/link?url=


[3]


数据压缩(词条)


/


[4]



The Definitive Guide tu the ARM Cortex-M3



Joseph Yiu


[5]



STM32


中文参考手册》



意法半导体


(


中国


)


投资有限公 司


2010



1

< br>月


10




[6] OV2640 Software Application Notes v1.6 omnivision


[7]



ATK- OV2640


模块使用说明》



正点原子



[8] JPEG


(词条)


/


[9]



Introduction to Data Compression





Third Edition



[



]Khalid


Sayood


[10]



MicroC/OS-



The Real-time Kernel



(Second Edition) [



]Jean J.


Labrosse


[11]



ARM MCU

< p>
开发工具


MDK


使用入门》



李宁



北京航空航天大学出版社



[12]


《基于


μ


C


Π


OS2II


的视频压缩系统的设计》



靳玉杰、许昌如、胡昌桂


(



汉理工大学


,


湖北省武汉市


430063)


电子工程师第三十卷第一期



20 04



1




[13]



PCB

< br>设计与制作》



任枫轩




机械工业出版社


2010



9



1




[14]




The art of designing embedded systems



(Second Edition) [



]jack


ganssle 2009-03-01


[15]



Digital


Image


Processing


Using


MATLAB


》(


Second


Edition



[



]


Rafael


ez Richard Steven [



]


阮秋琦





电子工业


出版社




2014-01-01




- II -





学生须提交的文件:





开题报告一份、中期检查一份、任务书


+


论文正文(含翻译)合并装订一份,光盘一张





进度安排:






1-3


周 :在网上查阅


OV2640


相关资料;




4


周:根据设计要求选型;




5-6


周:熟悉所 选设备的使用方法;




7

< p>
周:去洛阳实习;




8


周:熟悉所选设备的各个引脚功能;




9-13


周:设计完整电路图


PCB


电路板



14-15


周:设计系统驱动程序




16-17


周:撰写毕业论文,准备毕业答辩。

< p>







专业班级



电子信息工程


12-4


学生



设计(论文)工作起止日期


2016.3.1



2016.6.20


指导教师签字



日期



专业(系)主任签字



日期



- III -





基于


OV2640

< br>视频数据压缩与储存的实现









随着近年来信息技术的快速发展,信息的传播速度、方式的提高,人


们对图像信息的依赖越来越大,到目前为止,图像处理的应用已经非常广


泛,工业、医疗 、教育、安防、等等,图像处理已经渗透在我们的生活中。


此设计是基于


OV2640


图像传感器模块与意法半导体(


ST


)生产的


STM32


系列微控制器进行图像 的采集、压缩、传输以及储存。



此次设计基于


STM32F103ZET6



OV2640


建立嵌入式图像处理系统,


主要设计内容有:硬件电路,主程序、驱动程 序的编写,采集后图像的压


缩以及


STM32

< br>上


DMA


传输的应用。主程序主要负责各个硬件的初始化 ,


以及系统的运行等。驱动程序主要有


OV2640

< p>
图像传感器驱动,控制其采


集图像的方式,数据格式,采集速度,等等。< /p>


TFT-LCD


驱动,主要控制其


显示, 以及初始化序列等。




【关键词】:


STM32



OV2640

< p>
,嵌入式,图像处理



- IV -






COMPRESSION AND STORAGE OF VIDEO DATA BASED


ON OV2640



ABSTRACT



As in recent years the rapid development of information technology, improve the speed


of information dissemination, way, people depend on the image information more and more,


so


far,


the


application


of


image


processing


has


been


very


widely,


industrial,


medical,


education,


security,


and


so


on,


image


processing


has


penetrated


in


our


life.


This


design


is


based on the OV2640 image sensor module and the


Italian method


of


semiconductor (ST)


production


of


STM32


series


microcontroller


for


image


acquisition,


compression,


transmission and storage.


The


design


based


on


stm32f103zet6


and


ov2640


establishment


of


embedded


image


processing system, the main content of the design: hardware circuit and the main program,


driver program preparation, after the collection of image compression and the application of


the STM32 DMA transfers. The main program is mainly responsible for the initialization of


the hardware, as well as the operation of the system, etc.. The main driver of the OV2640


image sensor driver, control the way the image acquisition, data format, acquisition speed,


and so on. TFT-LCD driver, mainly control the display, and the initialization sequence.



KEY WORDS:




STM32,OV2640 ,embedded system ,image



processing




- V -













.. .................................................. .................................................. .................................


I


V



ABSTRACT .............................. .................................................. ............................................. V




1








.......................... .................................................. ............................................. 1



1.1


课题研究的目的及其意义


................ .................................................. ...................... 1



1.2


视频采集、压缩与存储国内外研究现状


.......... .................................................. .... 2



1.2.1


图像传感器发展历程


.................. .................................................. ................. 2



1.2.2


图像压缩技术发展


................... .................................................. .................... 3



1.2.3


图像压缩技术现阶段应用


................ .................................................. ........... 5



1.3


本文的主要内容


.................... .................................................. .................................. 5




2




OV2640


工作原理及内部结构


. .................................................. ............................... 6



2.1 OV2640


简介


.... .................................................. .................................................. ...... 6



2.2 OV2640


工作原理


................. .................................................. ................................... 6



2.2.1 OV2640


传感器功能模块。


................... .................................................. ..... 7



2.2.2 OV2640


时序


................... .................................................. .............................. 9



2.3


本章小结


........ .................................................. .................................................. ...... 10




3




视频压缩存储系统硬件设计


............... .................................................. .................. 11



3.1


系统结构设计


..................... .................................................. ................................... 11



3.2


图像采集模块电路


.... .................................................. ............................................ 11



3.3


微控制器相关电路


................... .................................................. ............................. 12



3.4


本章小结


........ .................................................. .................................................. ...... 14




4




视频压缩存储系统软件设计


............... .................................................. .................. 15



4.1


系统流程图


...................... .................................................. ...................................... 15



4.2


系统硬件初始化


.................... .................................................. ................................ 16



4.2.1 LED


初始化


.... .................................................. ............................................. 16



4.2.2


串口初始化


...................... .................................................. ........................... 16



4.2.3


按键初始化


..... .................................................. ............................................ 16



4.2.4 LCD


初始化


..................... .................................................. ............................ 16



4.2.5 OV2640


初始化


. .................................................. .......................................... 16



4.3


系统主程序设计


.................... .................................................. ................................ 17



4.3.1 OV2640


图像采集程序


............... .................................................. ................ 17



4.3.2


直接存储器访问(


DMA




.


...................... .................................................. . 19



- VI -



4.3.3


主函数设计


..... .................................................. ............................................ 20




5




功能测试结果


..................... .................................................. .................................... 22




6




结论


......................... .................................................. ................................................ 24



参考文献


......... .................................................. .................................................. .................... 25






.. .................................................. .................................................. ................................. 27






- VII -




1









1.1



课题研究的目的及其意义



计算机处理 视频的前提是进行图像压缩。


图像信号数字化以后数据带宽比较高,


般会达到


20MB/


秒,所以计 算机将会很难对其进行保存、传输和处理。采用数据压缩


后数据带宽可以下降到


1-10MB/


秒,便于计算机将图像信号储存并且容易做相应的处


理。


IOS


制订了常用的算法,即


JPEG



MPEG


算 法。


JPEG


是静态图像压缩标准,适


用于连续色调彩色或灰度图像,它包括两部分:一是基于


DPCM


(空间线性预测)技


术的无失真编码,一是基于


DCT


(离散余弦变换)和哈夫曼编码的有失真算法,前者


压缩比很小,主要 应用的是后一种算法


[1]




OV2640



OmniVisio n


公司生产的一颗



1/4


寸的



CMOS UXGA

< p>


1632*1232


)图



像传感器。


该传感器工作电压要求低、

传感器尺寸小,


在很小的体积上集成了单片


UXGA


摄像头以及图像处理器的所有功能。


可以通过


SCCB


对其进行各方面参数的控制,


可以

输出整帧、子采样、缩放和取窗口等方式的各种分辨率



8/10


位影像数据。该产品



UXGA


图像最高达到



15



/


秒 (


SVGA


可达



30


帧,


CIF


可达



60


帧)。



使用者可

以根据需要控制采集图像质量、


数据输出格式和传输方式。


片上图像处理功能主要包括


伽玛曲线、



白平衡、对比度、色度等。都可以通过


SCCB


对其进行控制 。


OmmiVision


公司生产的图像传感器使用了独有的 传感器制造技术,通过减少光学或电子缺陷如拖


尾、固定图案噪声、浮散等,以提高图像 的最终质量,最终得到清晰稳定的图像。



目前需要设计一种低 成本,


低功耗的视频采集及输出的设备,


可以将图像数据采集< /p>


并且传输到计算机并且储存。在此次设计中,需要掌握有关视频图像压缩的相关知识,


ARM


微控制器的应用、编程相关知识,通过研究现有的视频采集、 传输设备帮助自己


完成自己的设计。



信息如何被高效存储和传递的问题一直是计算机研究的一个重要课题


,


而解决这


一问题的最常用的就是数据压缩技术。


计算机 为什么需要数据压缩技术呢


?


一是因为容


量的限制


,


促使各程序员开始开发各种压缩软件对软件进行压缩。


二是信息通讯量的限< /p>



,


人们希望在网上下载的软件越小越 好。


随着数码技术的发展


,


压缩技术也 在不断发展


,


因为硬盘和光盘的空间毕竟是有限的


,


而游戏、音频、视频、图片在计算机中应用中越


来越普遍


,


但它们又非常占据空间


,


所以压缩技 术前景非常广阔并且不断在发展。与压


缩相关的有两个步骤


:


第一个步骤是压缩


,


第二个步骤则是解压缩。




1





在计算机中所有信息都是以二进制代码形式存在的


,


这些信息具体形式可以是声


音、图像、软件


,


因此我们把只用二进制编码的像片、音频等可以称为数码像片或数码

音频。以数码图片为例


,


压缩就是要把的图像的二进制代 码中冗长的、重复的代码遵循


一定的算法用简短的代码来代替。


如果把软件中的冗长的、


重复的代码如果都按一定的


算法用简短 的代码来替换的话


,


最后重新生成的软件一定会小得多。这个过程


,


就叫做


压缩。



一般而言


,


被压缩的文件是不能直接运行的


,


那 是因为它的代码都被简化了。被压


缩了的文件只是变小了空间而已


,


是不能直接使用的。要想再使用这些压缩过的文件


, < /p>


就必须解压缩。


解压缩文件要用到对应的压缩软件。


解压缩的过程正好和压缩的过程相



,


即通过算法将简短的压缩代码还原为程序的真正代码。



在多媒体应用中,数字化信息的数据量相当庞大,对存储器的存储器的存储容量、


网络带宽以及计算机的处理速度都有较高的要求,


完全通过增加硬件设施来满 足现实需


求是不可能的,


必须采用有效的压缩技术。

< p>
多媒体数据之所以能够进行压缩时因为原始


数据存在以下三种形式的冗余: (


1


)编码冗余。如频率相差很大的像素用相同长度的


代码进行编码;(


2


)像素间冗余。如相邻像素 间具有时域或空域相关性;(


3


)视觉信


息冗余。


即人的视觉图像边缘急剧变化不敏感,


对色彩的分辨 能力弱,


只对图像的亮度


敏感,


对经压 缩和解压缩后的图像失真难以察觉或影响甚微。


这些数据本身的冗余和人


的感官特性构成了多媒体数据压缩的基础,同时也确定了数据压缩的研究方向。



1.2



视频采集、压缩与存储国内外研究现状



1.2.1



图像传感器发展历程



上世纪五十年代 左右,


宾·


克罗司比实验室率先发明了录像机,


该设备可以将电视


转播中的电流脉冲信号记录到当时使用的磁带上。

< p>
20


世纪


60


年代美国国 家航空航天局



NASA


)在探月工程 中由于探测器传送回来的模拟信号质量较差,导致地面站无法将


接收到的图像还原,此后 其工程师开始向新的技术研究,数字图像技术开始飞速发展,


其次冷战时期的科技竞争也 加快了其发展,多数间谍卫星上都使用了数字图像技术


[2]



关于传感器,


20


世纪


60


年代就开始了“


CCD


芯 片”的研究与开发。


1969


年,贝尔实


验室将科室电话和半导体泡存储技术结合,发明了


CCD


器件 的原型。当时


CCD


的目


的是改进存储 技术,随后人们意识到可以利用其光电效应来拍摄并且存储图像。


1972


年,喷气推进实验室研制出尺寸


100*100


像素 阵列的


CCD


传感器阵列。


1975< /p>


年,柯达


实验室创造出世界上第一台数码相机,

< br>同时拍摄了世界上第一张数码照片,


至此,


CCD



2





感光阵列开始飞速发展,由最初的


1


万像素发展到今天的主流


1300


万像 素,以至于目


前的


4K



4096x2160


像素单元


)图像采集系统。



1.2.2



图像压缩技术发展




20


世纪


80


年代开始,


世界上已有几十家公司纷纷投入到多媒体计算机系统的研


制和开发工 作。


20


世纪


90

年代已有不少精彩的多媒体产品问世,诸如荷兰菲利浦和日


本索尼联合推出的


CD-I



苹果公司


Macintosh


为基础的多媒体功能的计算机系统,


Int el



IBM


公司联合推出的


DVI


。此外,还有


Microsoft


公司的


MPC


及苹果的


Quick Time


等,这些多媒体计算机系统各具特色,丰富多彩,竞争异常激烈 。



具有人机交互特色的多媒体技术,


使计算机进入普通家庭,


进入人们的生活、


学习、


娱乐及人们的精神生活领域。


人们像使用家用电器一样地使用计算机。


计算机能听懂人


的话语;计算机成为能讲话的实用型产品进入市场,也 为时不远了。



Internet


技术 的迅猛发展与普及,推动了世界范围的信息传输和信息交流。在色彩


缤纷、变幻无穷的多 媒体世界中,用户如何选择产品,如何自由地组合、装配来自不同


厂家的产品部件,


构成自己满意的系统,


这就涉及一个不同厂家产品的兼容性问题,< /p>



此需要一个全球性的统一的国际技术标准。


国际标准化协会(


International Standardization Organization



ISO


)、国际电子学委





International


Electronics


Committee



IEC










Internationa l


Telecommunication Union



ITU


)等国际组织及


CCITT


,于


20


世纪


90


年代领导制定了


多个重要的多媒体国际标准。如

H.261



H.263



JPEG



MPEG


等标准。



H.261


是被可视电话、 电视会议中采用的视频、图像压缩编码标准,由


CCITT


制< /p>


定,


1990



12


月正式批准通过;


JPEG


是由< /p>


ISO



CCITT

成立的


“联合图片专家组



Joi nt


Photographic Experts Group



JPEG


)”制定的,用于灰度图、彩色图的连续变化的静 止


图像编码标准,于


1992


年正式通 过;


MPEG


是以


H.261


标准为基础发展而来的。它是



IEC



ISO


成立的“运动图像专家组(

< p>
Moving Picture Experts Group



MPEG


)”制


定的,



1992


年通过了


MPEG-1



并在后来的几年中,


陆续推出了


MPEG-2



MPEG-4

< br>、


MPEG-7


等标准。







数字时代来临后,


同时也带来了数据压缩,


传统的模拟信号与数字信号相比虽然可


以原模原样的保留原始数据,

但是在有些场合下会导致数据量庞大,


不以存储和传输等


缺 点,所以人们便将数据转化成数字信号进行压缩,在可以恢复到原始数据的条件下,


最大 化的减小数据的体积,以便进行存储以及高速传输。




3





国际标准化组织于


1986


年、


1998


年先后成立了联合图片专家组


JPEG


和运动图像


压缩编码组

< p>


MPEG



JPEG< /p>


专家组主要致力于静态图像的帧


内压缩编码标准

< br>ISO/IEC10918


的制定;


MPEG

< p>
专家组主要致力于运动图像压缩编码标准的制定。经过


专家组不懈的努力, 基于第一代压缩编码方法(如预测编码、变换编码、熵编码及运动


补偿等)的三种压缩编 码国际标


[3]



< br>众所周知,人类通过视觉获取的信息量约占总信息量的


70%

,而且视频信息具有


直观性、可信性等一系列优点。所以,视讯技术中的关键技术就 是视频技术。



视频技术的应用范围很广,如网上可视会议、网 上可视电子商务、网上政务、网上


购物、网上学校、远程医疗、网上研讨会、网上展示厅 、个人网上聊天、可视咨询等业


务。但是,以上所有的应用都必须压缩。传输的数据量之 大,单纯用扩大存储器容量、


增加通信干线的传输速率的办法是不现实的,数据压缩技术 是个行之有效的解决办法,


通过数据压缩,


可以把信息数据量压 下来,


以压缩形式存储、


传输,


既节约 了存储空间,


又提高了通信干线的传输效率,


同时也可使计算机 实时处理音频、


视频信息,


以保证播


放 出高质量的视频、


音频节目。


可见,


多 媒体数据压缩是非常必要的。


由于多媒体声音、


数据、


视像等信源数据有极强的相关性,


也就是说有大量的冗余信息。


数据压缩可以将


庞大数据中的冗余信息去掉(去除数据之间的相关性), 保留相互独立的信息分量,因


此,多媒体数据压缩是完全可以实现的。

< br>


图像编码方法可分为两代:


第一代是基于数据统计,< /p>


去掉的是数据冗余,


称为低层


压缩编码方 法;


第二代是基于内容,


去掉的是内容冗余,

< br>其中基于对象



Object



Based



方法称为中层压缩编码方 法,其中基于语义(


Syntax



B ased


)方法称为高层压缩编码


方法。图像压缩编码技术可以 追溯到


1948


年提出的电视信号数字化,到今天已经有


50


多年的历史了。在此期间出现了很多种图像压缩编码方法,特别是 到了


80


年代后期以


后,由于小波变换 理论,分形理论,人工神经网络理论,视觉仿真理论的建立,图像压


缩技术得到了前所未 有的发展


[4]


,其中分形图像压缩和小波图像压缩是当前研究 的热


点。



1990

< br>年,


ISO


制订了


H.261< /p>


标准,用于可视电话和电视会议。



19 91


年制定


JPEG


静态图像编码标准 。同年制定


MPEG-1


标准,用于数字电视图像


存储。



1993


年为动态 图象及其伴音音频压缩制定


MPEG-2


标准

< br>


1996



ITU-T


制定


H.263


,用于低码率视频编码。



1998


年拟定


MPEG-4


,首次在编码中提出了视频对象和基于内容编码的概念。

< br>



4





1.2.3



图像压缩技术现阶段应用



图像编码技 术的出现及发展,


其意义之大已到可以促使现有信息产业的结构发生巨

< br>变的程度,从而使通信,广播,计算机产业的界限变得更加模糊了。目前,国外的些有

线电视公司和通信、


计算机公司之间的相互合作,


如:


美国最大的有线电视公司和软件


公司合作开发交互电视等都充分体现 了其意义之重大。


如今很多国家都在大力推广数字


电视技术。< /p>


因为数字电视具有图像质量高、


频谱利用率高、

< br>可以实现多种业务的动态组


合和统计复用、易于加密、具有可扩展性、可分组性和 互操作性、可以灵活组成交互武


电视系统等优点,而这些优点是模拟电视所无法比拟的< /p>


[5]


。在我国,像安徽合肥地区基


本上 完成了数字电视的转换,


模拟电视信号己切断。


数字电视在视频 质量以及与用户的


交互性等诸多方面,


都是模拟电视所无法相比 的。


但是数字电视受到数据量庞大的约束,


因而要保证数字电视 传输质量及数量的要求,


视频压缩的技术解决就显得极为重要。



以,


最近几年图像编码研究主要集中在视频压缩上,


以改进数字电视的性能,


促使各等


级的数字电视 的成功实现,


扩大其应用领域。


这也表明图像编码技术对数字电 视的发展


起着至关重要的作用。



1.3



本文的主要内容



第一章主要讲述了本 课题的研究意义,


视频采集、


压缩的发展历史、


图像传感器发


展历史以及现阶段图像压缩技术的应用。



第二章主要详细介绍了


OV2640


图 像传感器的内部结构,


工作原理,


以及图像采集


的输出格式,输出方式,以及图像传感器其他参数的控制。


< br>第三章详细讲解了本文设计的硬件方面的结构设计,


连接原理,

< br>包括采集电路,



控制器相关电路以及通信电路等。



第四章介绍了本文的软件方面的设计。


讲 解了采集控制程序、


各个硬件初始化程序、


系统主程序以及几个 关键函数的编写、运行原理等。



最后第五章展示了本文的设计 最终结果,采集到的图像,测试平台等。




5






2




OV2640


工作原理及内部结构




2.1



OV2640


简介



OV2640



< br>OV



OmniVision











1/4





CMOS


UXGA



1632*1232


)图像传感器。该传感器体积小、工作电压低,提供单片< /p>


UXGA


摄像头和


影像处理器的所有功能 。


通过


SCCB


总线控制,

< p>
可以输出整帧、子采样、缩放和取窗口


等方式的各种分辨率


8/10


位影像数据。


该产品



UXGA


图像最高达到



15



/




SVGA


可达

30


帧,


CIF


可达



60


帧)。用户可以完全控制图像质量、数据格式和传输方式。


所有图像处理功能过程包括伽 玛曲线、


白平衡、


对比度、


色度等都可 以通过


SCCB


接口


编程。

< p>
OmmiVision


图像传感器应用独有的


< /p>


传感器技术,


通过减少或消除光学或电子缺


陷如固定图案噪声、拖尾、浮散等,提高图像质



量,得到清 晰的稳定的彩色图像


[6]




OV2640


的特点有:




高灵敏度、低电压适合嵌入式应用





标准的



SCCB


接口,兼容



IIC


接口





支持



RawRGB



RGB(RGB565 /RGB555)



GRB422


、< /p>


YUV(422/420)




YCbCr



422




输出格式





支持



U XGA



SXGA


< br>SVGA


以及按比例缩小到从



SXGA




40*30


的任何尺






支持自动曝光控制、自动增益控制、自动白平衡、自动消除 灯光条纹、自动黑


电平



校准等自动控 制功能。同时支持色饱和度、色相、伽马、锐度等设置。





支持图像缩放、平移和窗口设置、支持闪光灯




支持图像压缩,即可输出



JPEG


图像数据





自带嵌入式微处理器



2.2



OV2640


工作原理



图像通过


CCD


感光阵列扫描得到原始信号,接下来 原始通过模拟信号处理、


A/D


转换、


数字信号处理、


若需要输出


JPEG


图 像,


可以直接通过


OV2640


内部的 压缩引擎,


最终通过数据输出端口输出。




6





2.2.1



OV2640


传感器功能模块。



1.


感光阵列(


Image Array





OV2640


总共有



1632*1232


个像素,最大输出尺寸为



UXGA< /p>



1600*1200


),即

< p>


200W




素。




2.


模拟信号处理(


Analog Processing





模拟信号处理所有模拟功能,并包括:模拟放大(


AMP


)、增益控制、通道平衡


和平衡



控制等。





2-1 OV2640


功能框图



3. 10



A/D


转换(


A/D





原始的信号经过模拟放大后,分



G




BR


两路进入一个



10


位的



A/D


转换器,


A/D




换器工作频率高达



20M

< p>
,与像素频率完全同步(转换的频率和帧率有关)。



A/D


转换器外,



该模块还有黑电平校正(


BLC)


功能。




4.


数字信号处 理器(


DSP





这个部分控制由原始信号插值到



RGB


信号的过程,并控制一些图像质量:





边缘锐化(二维高通滤波器)





颜色空间转换(原始信号到



RGB


或者



YUV/YCbYCr)



● RGB


色彩矩阵以消除串扰





色相和饱和度的控制






/


白点补偿





7






降噪





镜头补偿





可编程的伽玛





十位到八位数据转换




5.


输出格式模块(


Output Formatter





该模块按设定优先级控制图像的所有输出数据及其格式。



6.


压缩引擎(


Compression Engine





压缩引擎框图如图



2-2


所示:




2-2


压缩引擎框图



从图可以看出 ,压缩引擎主要包括三部分:


DCT



QZ




entropy encoder


(熵编码


器),



将原始的数据流,压缩成



jpeg


数据输出。



7.

微处理器(


Microcontroller


< p>



OV2640


自带了 一个


8


位微处理器,该处理器有


512


字节


SRAM



4KB



ROM


< br>它提供一个灵活的主机到控制系统的指令接口,同时也具有细调图像质量的功能。




接口(


SCCB Interface





SCCB


接口控制图像传感器芯片的运行。




9.


数字视频接口(


Digital Video Port




OV2640


拥有一个


10


位数字视频接口


(


支持



8


位接法


)


,其


MSB



LSB

< br>可以程序


设置先后顺序




8





2.2.2



OV2640


时序



OV2640


的图像数据输出(通过



Y[9:0]


)就是在


PCLK



VSYNC



HR EF/HSYNC


的控制下进行的。首先看看行输出时序,如图


2-3


所示:





2-3 OV2640


行输出时序



从上图可以看出,图像数 据在


HREF


为高的时候输出,当


HR EF


变高后,每一个


PCLK


时钟, 输出一个


8



/10

< br>位数据。我们采用


8


位接口,所以每个

< br>PCLK


输出


1



字节,且在


RGB/YUV


输出格式下,每个


tp=2



Tpclk


如果是


Raw


格式,则一个


tp=1



Tpclk


。比如我们采用


UXGA


时序,


RGB565

< br>格式输出,每


2


个字节组成一个像素的

< br>颜色


(高低字节顺序可通过


0XDA

寄存器设置)



这样每行输出总共有


1600*2



PCLK


周期,输出



1600*2




字节。



帧时序(


UXGA


模式),如图


2-4


所示:





2-4 OV2640


帧时序




9





对于


OV2640

< br>的图像数据格式,一般用


2


种输出方式:


RGB565



JPEG


。当 输出


RGB565


格式数据的时候,时序完全就是上面两幅图介 绍的关系。以满足不同需要。而


当输出数据是


JPEG


数据的时候,


同样也是这种方式输出


(所以数据 读取方法一模一样)



不过


PCLK< /p>


数目大大减少了,


且不连续,


输出的数据 是压缩后的


JPEG


数据,


输出的


JPEG


数据以:


0XFF,0XD8


开头,



0XFF,0XD9


结尾,


且在


0XFF,0XD8

之前,


或者


0XFF,0XD9


之后,会有不定数量的其他数据存在(一般是



0


),这些数据我们直接忽略即可,将得


到的


0XFF,0XD8~0XFF,0XD9


之间的数据,保存为


.jpg/.jpeg


文件。可直接在终端设备


上查看。



2.3



本章小结



本章接招了


OV2640


的工作原理以及一些主要的内部结构。



OV2640


采集图像时


的原理,


图像在内部做初步处理的工作方式,


以及对最终输出的图像数据格式 、


输出时


序做了详细的介绍。






















10






3




视频压缩存储系统硬件设计



3.1



系统结构设计



本文研究的基于


OV2640


的图像处理系统结构如图


3-1


所示,


主要是由


OV2640



感器、


STM32F103

< br>微控制器、以及上位机组成。





3-1


本文研究的图像处理系统结构框图



O V2640


传感器模块上设有供电单元以及提供时序的晶振,


通 过


8


位数据接口输出


采集到的图像数据 ,


同时


STM32F103


通过


OV2640


上的


SCCB

< br>总线对其状态进行控制,


其次


STM32F103



OV2640


提供行参考信号(

< p>
HREF


)、复位信号(


RESET


)、像素


时钟



PCLK< /p>




掉电模式控制信号

< br>(


PWDN



以及帧同步信号< /p>



VSYNC




STM32F103


与上位机通过串口通信传输要保存的图像 数据。



3.2



图像采集模块电路



系统采用


OV2640 CMOS


图像 传感器采集图像,


所以需要设计传感器相关的工作环


境,以供其 长时间稳定的运行。模块电路如图


3-2





3-2 OV2640


模块电路




11





图中


U1



U2


为降压


IC


,将


3.3V


电压降低至


1.3V< /p>



2.8V


传感器芯片提供稳定的工作< /p>


电压。图中


3.3V


电压将由微控制器电 路提供。


Y1



12MHZ

< p>
有源晶振为


OV2640


传感

器芯片提供工作时序,


P1



18 Pin


接口通过排线与微控制器连接。


P1

口的接口定义如



3-1




表格


3-1 P1


口的接口定义




图中


SCL



SDA



SCCB


通信总线,微控制器可以通过


SCCB


来控制


OV2640



感器芯片的伽马值、对比度、亮度、锐度、色相、图像尺寸、数据格式、传输 方式等。



3.3



微控制器相关电路



本文设计的图像处 理系统的控制模块采用


STM32F103ZET6


微控制器,


该芯片是意


法半导体(


ST

< p>
)公司基于


Cortex-M3


内核设计一款增强 型微控制器,目前被广泛用于


电机驱动、


应用控制、

< p>
医疗和手持设备、


PC


外设和

GPS


平台、


可编程控制器、


变频 器、





















< br>通














STM32F103ZET6


基本型号如下:



●基于


ARM Cortex-M3


核心的


32


位微控制器


,LQFP- 144


封装。



512K


片内


FLASH


(相当于 硬盘)


,64K


片内


RAM

< p>
(相当于内存)


,


片内


F LASH


支持


在线编程


(IAP)




●高达


72M


的频率


,


数据


,


指令分别走不同的流水线


,


以确保< /p>


CPU


运行速度达到最大


化。

< p>


●通过片内


BOOT



,


可实现串口下载程序


(ISP)




●片内双


RC


晶振


,


提供


8 M



32K


的频率。

< br>


●支持片外高速晶振


(8M),


和片外低速晶振


(32K).


其中片外低速晶振可用于


CPU



实时时钟


,


带后备电源引脚


,


用于掉电后的时钟行 走。




42



16


位的后备寄存器


(


可以理解为电池保存的


RAM),


利用外置的纽扣电 池


,



实现掉电数据保存功能。




12





●支持


JTAG,SWD

< p>
调试


.


配合廉价的


J-L INK,


实现高速低成本的开发调试方案。


< br>●多达


80



IO(

< p>
大部分兼容


5V


逻辑


), 4


个通用定时器


,2


个高级定时器


,2


个基本定


时器


,3



SPI


接口

,2



I2S


接口


,2



I2C


接口

< p>
,5



USART,


一个


USB


从设备接


,


一个


CAN


接口


,SDIO


接口


,


可兼容


SRAM,NOR



NAND Flash


接口的


16


位总线

-FSMC





3


路共


16


通道的

< p>
12



AD


输入


,2


路共


2


通道的


12



DA


输出< /p>


.


支持片外独立电压


基准。




CPU


操作电压范围< /p>


:2.0-3.6V




STM32F103ZET6


硬件系统基本构成如图


3 -3






3-3 STM32F103ZET6


硬件系统构成图




硬件电路由


STM32F103


为主要核心,


图中


Flash


主要为


TFT-LCD


提供字库,

< br>供电


模块为整个系统提供


3.3V


稳定电压,电压输入为


5V


可由


US B


供电,同时可采用锂电


池作为备用电源。

串口转


USB


模块可将系统直接通过


USB


线连接至电脑,


将图像数据


以 及系统信息传输至计算机(上位机)。同时


SD


卡可保存图像数 据。


TFT-LCD



2.8



16



RGB


显示屏,


屏幕驱动单元为


ILI9325


主要显示系统的初始化信息,


当前运行


状态 等主要信息。此外,实验过程中还使用了


LED


指示灯,可以指 示当前运行状态,


也可以编程使其显示当前帧速率。蜂鸣器,可以提示系统初始化情况。 用户按键,可以


控制系统保存图像。




13





由于微控制器


I/O


口功能通过程序定义,


所以各个模块的连接方式将由微控制器的


程序代码决定。




3-4 OV2640


系统


PCB


< p>


本文设计将整个系统设计在一张


PCB


中大致结构如图


3-4


3.4



本章小结




本章主要介绍了基于


OV2640


图像处理系统的硬件电路设计 ,


包括


OV2640


传感器

< p>
工作电路、


STM32F103ZET6


微控制器 电路,上位机通信电路以及图像存储的硬件实现


方式。提出了一套以

OV2640+STM32F103ZET6


的数字图像处理系统。












14








4




视频压缩存储系统软件设计



4.1



系统流程图




4-1


为系统的主程序流程图,图中


while(1)


为一个死循环。



开始



初始化系统硬



While



1






开始扫描按键



按键是否按下





执行


jp eg


采集函数



执行

< br>RGB


图像采集函数



执行一次


DMA


传输



执行


RGB


图像采集函数


< p>
执行一次


DMA


传输



结束






4-1


系统流程图




15






4.2



系统硬件初始化



< br>STM32F103


上电后,


要对各个外设进行初始化,


LED



串口、


按键、


LCD



W25Q128


(内装字库)


以及初始化


OV2640,< /p>



以便在后续工作中可以使用各个硬件,


随后要为一


些变量申请内存,最后挂载


SD

卡与


FLASH


。系统初始化工作完成,继续执行后续工< /p>


作。



4.2.1



LED


初始化



本文设计的系统采用两颗红光


LED


,用于显示帧速率以及图 像保存,帧速率设计


每次亮暗交替为一帧图像采集及传输完成。


LED


初始化主要是初始化其对应的


I/O

口,


对应的


I/O


口时钟等等。< /p>



4.2.2



串口初始化



串口采用


STM32F103



USMART1


,由于传输图像时数据量较大所以串口采用波


特率


92 1600


,利用


STM32


库函数


uart_init



921600


)可将其波特率设置为


921600


。初


始化完成后可采用


USART_SendData

< br>(


USART1


,帧缓冲)函数配合循环发送图像。



4.2.3



按键初始化



按键采用了两个按键,< /p>


用来保存图像,


两个按键可分别保存成不同格式的图像,


按键主


要采用扫描方式监测是否按下按键,


此外 按键一般分为支持连按和不支持连按,


这里初


始化采用不支持连 按设置。



4.2.4



LCD


初始化



LCD


初始化与


OV2640


初始化 代码量是整个程序中最多的两个驱动程序,也是最


复杂的两个模块。

LCD


初始化首先要初始化


I/O


口寄存器,配置输出模式、时钟。由



LCD

< br>采用


FSMC



可变静态存储控 制器)作为缓存,所以要对


FSMC


进行配置,主


要有数据宽度、读写时序等,随后读取


LCD


器件< /p>


ID


并且通过串口打印


ID


。最后执行


初始化序列,配置


LCD


各方面设置。最后清屏,初始化完成。



4.2.5



OV2640


初始化



OV2640


初始化与


LCD


类似,先初始化


I/O


寄存器,随后读取器件

< br>ID


并且串口打


印,最后执行初始化序列配置传感器各个 工作状态,这里初始化序列通过


SCCB


写入

< br>–


16





OV2640


,以对其传感器模块完 成配置,最后配置图像输出大小(分辨率),此外关于


一些输出格式的控制等等采用函数 的方式打包,方便后续调用。



4.3



系统主程序设计



4.3.1



OV2640


图像采集程序



在本文设计的程序中我们将设置



VSYNC


为高电平有效,




VSYNC


低电平的时


候,


输出图像数据,


高电平的时候,


做帧同步信号。


设置



HREF


为高电平有效,




HREF


为高的时候,数据有效,


H REF


为低的时候,数据无效。配置



PCLK


的下降沿更新数


据,




PCLK


下降 沿的时候,


OV2640


更新数据到



OV_D0~D7



所以,

< p>
MCU




PCLK


的上升沿读取数据。



OV2640


的数据输出,是很有规律的,我们以行为单位,每输出一行数据,即一个



HREF


周期。


OV2640


输出一行


RGB565


数据的读取过程如下:



1.


等待



VSYNC


为低电平



2.


等待



HREF


为高电平



3.


等待第



1



PCLK


的上升沿



4.


读取第



1


个像素的低字节



5.


等待第



2




PCLK


的上升沿



6.


读取第



1


个像素的高字节



7.


等待第



3




PCLK


的上升沿



8.


读取低



2


个像素的低字节



9.


等待第



4




PCLK


的上升沿……



10.


读取



1


行数据最后



1


个像素的高字节



11.


完成



1


行数据读取



12.


等待



HREF


为高电平……


< p>
上面


2-10


步骤循环



N


次,就可以读取



N


行的数据,直到读取完整个一帧图像的

输出,最后



VSYNC


变成高电平,完成一帧图像数据的读取。当



VSYNC


再次变低的


时候,开始下 一帧数据输出循环。一次数据输出多少行,每一行多少个像素,则是根据


我们设定的图像 输出大小


(分辨率)


来确定的,


假定我 们设定图像输出大小为:


320*480


那么每一行就有



640




PCLK


上升沿,每一帧图像就有



480


行图像数据。



OV2640


输出


JPEG


数据的读取过程如下:

< p>



17





1.


等待


V SYNC


为高电平



2.


等待


HREF


为高电平


< /p>


3.


等待


PCLK


的上升沿



4.


读取


JPEG


数据



5.


等待


HREF


为高电平



6.


等待


PCLK

的上升沿



7.


读取


JPEG


数据



8.


等待


HREF


为高电平……

< br>



为低电平


< br>10.


完成一帧


JPEG


数据读 取。



从上面的流程可以看出,


读取< /p>


JPEG


数据,


相对读取


RGB565


数据来说,


简单不少,

< br>只需要在


HREF


为高时,


在< /p>


PCLK


的上升沿读取数据即可,


直到< /p>


VSYNC


为低电平,



成一帧


JPEG


数据采集。不过,需要注意的是:


HREF


在一帧


JPEG

< br>数据输出的时候,


并不是持续的高电平,所以任何时候,都要先判断



HREF


为高电平,再去读取数据。



JPEG


采集图像算法如图


4-2


< p>



4-2 JPEG


图像采集算法



< p>
图中


ov2640_framebuf[]


为帧缓 冲,图像被临时保存在帧缓冲里,以便进行后续的


串口传输,保存等操作。




18





4.3.2



直接存储器访问(


DMA




DMA


传输将数据从一个地址空间复制到另外一个地址空间。当


CPU


初始化这个传


输动作,传输动作本身是由


DMA


控制器来实行和完成。典型的例子就是移动一个外部


内存的区块到芯片内部更快的内存区。


像是这样的操作并没有让处理器工作拖延,


反而


可以被重新排程去处理其他的工作。


D MA


传输对于高效能嵌入式系统算法和网络是很重


要的。在实 现


DMA


传输时,是由


DMA


控制器直接掌管总线,因此,存在着一个总线控制


权转移问题。即


DMA


传输前,


CPU


要把总线控制权交给


DMA


控制器,而在结束


DMA


传输


后,


DMA


控制器应立即把总线控制权再交回给


CPU


。 一个完整的


DMA


传输过程必须经过


D MA


请求、


DMA


响应、


DMA


传输、


DMA


结束< /p>


4


个步骤。



D MA


传输方式无需


CPU


直接控制传输 ,


也没有中断处理方式那样保留现场和恢复现


场过程,通过硬件 为


RAM



IO


设备开辟一条直接传输数据的通道,使得


CPU


的效率大


大提高。在应用中可以为


CPU


节省很多资 源


[7]




STM32


最多有


2



DMA


控制器(


DMA2


仅存 在大容量产品中),


DMA1



7


个通道。


DMA2



5


个通道。


每个通道专门用来管理来自于一个或多个外设对存 储器访问的请求。


还有一个仲裁起来协调各个


DMA

< p>
请求的优先权。图


4-3



STM32F103 DMA


原理框图。





4-3 STM32

< p>


DMA


原理框图




4-4


为本设计中的

DMA


相关配置,


DMA


主要被用 于串口的图像传输。




19



-


-


-


-


-


-


-


-



本文更新与2021-02-10 20:26,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/631549.html

基于OV2640视频数据压缩与储存的实现的相关文章