为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 飞思卡尔摄像头[策划]

飞思卡尔摄像头[策划]

2018-08-21 5页 doc 18KB 5阅读

用户头像

is_337177

暂无简介

举报
飞思卡尔摄像头[策划]飞思卡尔摄像头[策划] 飞思卡尔智能车摄像头组入门指南 摄像头 摄像头的组成主要分为三部分:镜头、含传感器的处理芯片、外围电路板。 镜头主要就是一个凸透镜,透镜焦距越小越广角,同时桶形失真越严重;焦距越大,视角越窄,透镜越接近理想的“薄透镜”则可忽略桶形失真。 处理芯片将传感器上的电压信号按照已定义的协议输出。 外围电路主要提供电源、稳压、时钟等功能。 摄像头按照信号类型可分为模拟摄像头、数字摄像头两种。由于单片机普通IO口只能读取数字信号,故对于模拟摄像头要设计模数转换(ATD)。数字摄像头数据可以直接进单片机。用...
飞思卡尔摄像头[策划]
飞思卡尔摄像头[策划] 飞思卡尔智能车摄像头组入门指南 摄像头 摄像头的组成主要分为三部分:镜头、含传感器的处理芯片、外围电路板。 镜头主要就是一个凸透镜,透镜焦距越小越广角,同时桶形失真越严重;焦距越大,视角越窄,透镜越接近理想的“薄透镜”则可忽略桶形失真。 处理芯片将传感器上的电压信号按照已定义的协议输出。 外围电路主要提供电源、稳压、时钟等功能。 摄像头按照信号类型可分为模拟摄像头、数字摄像头两种。由于单片机普通IO口只能读取数字信号,故对于模拟摄像头要设计模数转换(ATD)。数字摄像头数据可以直接进单片机。用模拟摄像头的缺点是要自己设计模数转换电路,同步信号分离电路。优点是可以自行加入硬件二值化电路,即对某一个像素点只用1、0来示黑、白。 摄像头按照传感器,可分为CCD、CMOS。CCD成像质量好,贵。CMOS成像质量略差,便宜。 摄像头的选取 从尽快实现,缩短开发时间的方面考虑,应购买数字摄像头。典型的型号是OV7620(该型号是指处理芯片的型号)。OV7620是CMOS数字摄像头,采用PAL制式,默认隔行扫描,默认YUV颜色空间输出(详见后文)。 长远考虑,应选取CCD模拟摄像头。一来可以避免高速状态下的运动模糊,二来可以自行设计硬件二值化电路,FIFO电路等,大大降低CPU运 算压力。 摄像头信号协议介绍 每秒超过24帧的连续图片即可形成动态的视频。考虑到我国采用50Hz交流电,为了实现方便,摄像头被设计为每秒25帧,每帧耗时两个周期。还是为了实现方便,每一帧图片被分为两半,每半帧耗时一个周期。半帧的划分方式为:奇数行和偶数行各组成半帧。即通常的电视机,每20ms奇数行的信息刷新一次,接下来20ms偶数行刷新一次,再20ms奇数行刷新一次„„。欧美采用60Hz交流电,摄像头每16.6ms刷新一次,被称为PAL制式。 摄像头拍摄的一帧画面被称为“一场”(field),一场又分为“奇场”和“偶场”,各称“半场”,合称“全场”。像这样分奇偶场分别刷新的扫描方式被称作“隔行扫描”(interlace),某些摄像头支持“逐行扫描”(progressive),其意自见。 考虑到奇场和偶场的图像几乎没有多大区别,故不加区分,以下出现的“场”全部表示为“半场”。以下主要以OV7620为例说明其图像输出方式。 OV7620分辨率默认为640*480(VGA),在隔行扫描模式下,每半场“640*240”。也可设置成320*240(QVGA),设置成逐行扫描等,详见后文。 OV7620采用PAL制式,每秒60场,每场约16.6ms,每行约64us,每像素约100ns(秒、毫秒、微秒、纳秒、皮秒„„)。 由于摄像头与单片机的通信是异步通信,故在信号中需要添加同步信号。同步信号有三:像素同步信号、行同步信号、场同步信号。场同步信号在每一场的数据传输完成,而还没有开始传输下一场数据的时候发生,每两个场同步信号之间有240个行同步信号,在每两个行同步信号之间有640个像素同步信号。在每两个像素同步信号之间,是有效数据 信息。对于模拟摄像头,电平的高低对应于该点亮度的强弱,对于数字摄像头,输出的数字量(0-255)表示亮度的强弱。在场同步信号的前后一小段时间是场消隐区,在场消隐区内无有效数据,行同步信号前后也有消隐区,像素同步信号前后没有。 对于模拟摄像头,有效数据信号和同步信号是混杂的,故模拟摄像头总共只有三根线,一根电源线,一根地线,一根信号线,信号线就包括数据信号和同步信号。而数字摄像头总共13根线,一根电源线,一根地线,像素同步信号、行同步信号、场同步信号各一根线,8根数据线(8根数据线的电平高低工组成2^8==256种状态,对应0-255个不同的亮度)。一般摄像头不止13根线,例如还有通信接口,复位、睡眠接口等,一般不接出。 OV7620为彩色摄像头,一般表示彩色图片的方法是,每一个像素用RGB三维空间下的一个坐标表示颜色。(人眼所能感受到的颜色是三维的)其中RGB为该三维空间的一个基,常用的基有YUV、HSV、ESL等某个确定的颜色在每个基下都有一个坐标,可由坐标变换公式在各个基下变化。其中,YUV颜色空间中Y分量表示亮度。OV7620默认以YUV颜色空间输出,我们只需要其Y分量,故接出Y0-Y7这8根线(U、V公用另外8根线,OV7620共16根数据线,该16跟线也可配置为输出RGB)。 SCCB与I2C 上文说到,摄像头的分辨率、扫描方式、颜色空间、亮度平衡等都可以设置。设置这些东西的方法是更改摄像头芯片内部寄存器的值,这就涉及到单片机与摄像头芯片的通信。常用的通信协议有SCCB和I2C(两者比较相似,OV7620是用SCCB)。具体做法是,查阅摄像头芯片的datasheet,了解配置某些功能所需要修改哪些寄存器,记下这些寄存器的地址,将寄存器地址及其新值按照协议发送给芯片(通过特定的接口)。 图像采集程序 由于摄像头的数据是一个像素一个像素传的,如果程序一启动就开始接受数据,那就不知道接收到的第一个像素点位于真实图像的第几行第几列。故首先要等待一个场同步信号,这称为“初相位校准”。具体做法是,将场同步信号设置为外部中断,让场同步信号触发中断服务函数。在场中断函数中开启行中断。让行中断信号触发行中断函数,在行中断函数中反复执行 graph[i][j++]=GPIO。graph为图像数组,i为行号,在行中断函数中更新,在场中断函数中归零。j为列号,在行中断函数中归零。GPIO为某一普通输入输出口,接摄像头Y0-Y7。由于像素同步信号太快,单片机的输入捕获口无法捕捉,上述做法并没有利用像素同步信号。这样做使得每一行能娶到的像素点的个数取决于语句graph[i][j++]=GPIO的执行速度。在XS128主频160MHz下可以采集不到300个点,如果用汇编优化,可以采集500到600个点。 Ykl程序结构介绍 程序前后一共经历多个版本,最后一个版本是第五版,故工程名为My_Fifth。核心代码全部放在Source文件夹中。打开工程文件,代码主要分布在三个组内:Source、include、SD。Include中主要是对应.c文件的头文件,Sourece内是核心的.c文件,SD作为一个独立的模块自成一组。 主函数main()位于main.c中,主函数只做两件事:其一,初始化,其二,打开总中断开关。初始化调用init.c文件中的函数Init_All()。初始化共分七个模块,主要形式都是对寄存器赋值。寄存器的具体含义可查阅datasheet。其中初始化SD卡(实际上用的是TF卡)由一个宏控制是否开启。打开总中断就一句话。紧接着是一个死循环。此时程序相当于在等待外部中断(初始化时开启了场中断,关闭了行中断)。 整个程序完全是由外部中断驱动,即一个场中断,一个行中断。两个中断服务函数在camera.c中。对于场中断,主要做六件事。刷新相关变 量的值、速度决策、速度控制、方向决策、方向控制、写SD卡记录相关信息。行中断里的情况就比较复杂。 由于摄像头一直在向外传输数据,空闲的时间只有场消隐区与行消隐区,而这两部分时间是不用的,我采用了如下的策略。首先采集第0行的数据,用接下来的四行对其进行处理,再采集第5行,用6到9行对其进行处理,以此类推。相当于行的分辨率降了五倍。这样240行就只采集到48行。又考虑到远处的图像信息不可靠(前瞻大于两米),故200行以及以上的图像不采集。即前200行,每5行为一周期,称为一个“块”(Block),每个块的第一行采集图像,后四行对其进行处理。共40个块,共采集40行。 如此,在行中断函数中,首先刷新行号,判断当前是第几块中的第几行。如果在块中是首行,则采集行数据,若非首行,则每个对应的行都有具体的任务。即将对行的处理分成四个子任务,通过解析行号判断执行哪个子任务,具体形式就是一个 switch 语句。 当40个块结束后,还有40行的时间,主要用来将调试数据存入缓冲扇区,等待写入SD卡。 如果某一行执行时间过长,可能发生本行处理还未结束就发生了下一次行中断的情况。为了避免这样的中断优先级的问,在进入行中断后立即关闭行中断,等处理完后再开启。这样宁可丢失下一行也不要被打断。值得注意的是,当一场进入最后的40行垃圾数据后,就不再打开行中断了,一直等待场中断,在场中断中再打开行中断。 以上就是camero.c文件中的行场中断两个服务函数。由于程序是由行场同步信号驱动的,故此二函数即为程序主体结构。 程序决策部分的核心算法在Algorithm.c中,主要是速度决策与方向决策,被场中断函数调用。控制部分的核心代码在 servo.c 和 moto.c 中。图像处理的核心代码在 line.c 中,被行中断函数调用,主要是“找黑点”、“找边界”、“预测”三个函数。SD卡底层驱动在 SD_Driver.c 中。 算法部分可参见技术报告。
/
本文档为【飞思卡尔摄像头[策划]】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索