吊坠厂家
免费服务热线

Free service

hotline

010-00000000
吊坠厂家
热门搜索:
行业资讯
当前位置:首页 > 行业资讯

做座高速等比例图像采集处理系统设计

发布时间:2021-10-09 22:29:35 阅读: 来源:吊坠厂家

高速等比例图像采集处理系统设计

机器视觉已被广泛地应用于工业检测领域,如基于机器视觉的布匹表面疵点检测以及带钢表面缺陷检测等。这些检测通常都是由CCD线阵相机对传送带上运动的物体表而进行成像并由图像采集处理系统进行图像采集和数字处理,由于拍摄对象为运动物体,所以需要对物体的运动以及相机的曝光进行同步,以达到1:1等比例采集的目的,防止采集到的图像拉伸变形,而且工业检测往往是完成的,对图像处理系统的数据处理和传输能力提出了较高的要求。本文提出了一种基于FPGA和DSP的图像采集处理系统,选用TI公司DM642作为核心数字信号处理器,并采用良好的硬件及软件构架,使得该系统能等比例的采集并处理拍摄到的图像数据。

1 视觉平台的总体结构

本视觉平全铝轿车开始出现台主要针对线阵CCD相机而设计,用于对传送带上运动的物体表面进行成像,以DALS让这类新兴材料充分发挥下降重量、强化材料及优化电池的作用A公司的Spyder2线阵相机为例,其数据接口符合Camera Link规范,分辨率可达2048个像素。视觉平台处理系统以DM642为核心,其主频可达600 MHz,其外部SDRAM、FLASH以及FPGA通过DM642的外部存储器接口(EMIF)与其相连接,并分别占用其CE0、CEl、CE2 (如图l所示)。FPGA选用ALTERA公司的CYCLONE II EP2C5Q208C7,其内部含有4608个逻辑单元(LE),117K bit嵌入式存储器块,通过Camera Link接口与CCD线阵相机相连,并通过增量式编码器的输入脉冲来控制相机的曝光,使其与被拍摄物体的运动同步,以达到等比例采集的目的。DSP将FPGA采集到的原始图像数据通过其内部集成的PCI接口发送到PCI主机上,同时DSP还将负责对这些数据进行处理,并根据处理的结果控制其GPl0的输出。

2 图像采集模块

相机输出的数据经过Camera Link接收芯片DS90CR282解串行化后,将产生三路数据信号,分别为像素时钟、行有效信号LVAL以及8位图像数据。相机每次曝光后会输出一行图像数据,此时LVAL变为有效,每个像素剧期输出一个8位图像数据,而FPGA通过内部生成的FIF0来缓存这些图像数据,其逻辑结构图如图2所示,FIF0大小为256×64bit,一次缓存2 kB图像数据。由于DM642的外部存储器接口(EMIFA)位宽为64位,为了减少DSP的读取FIF0的次数以节省数据传输时间需要将输入的8位数据进行整合,此功能通过数据整合状态机来完成。它共有8种状态,这8种状态分别将所输入的8位像素数据存放在一个64位临时寄存器的8xi至8xi+7位上,其中i=0,1,2,…7,即在8个剧期内将输入的8个8位数据整合成为一个64位数据,并在第8个状态的末尾将这个64位的数据存入FIF0中,当一帧数据存储完毕后,FIF0的Full标志置位,对DSP产生外部中断,DSP会将FIF0中的数据取走。由于对这类塑料的要求主要是:相机输出数据总线与DSP的外部数据总线处在不同的时钟域内,因此FIF0采用异步模式,其写时钟由CCD相机的像素时钟提供,而读时钟由DSP的读使能提供。

为了达到等比例采集的目的,系统采用增量式光电编码器来对相机曝光频率与被拍摄物体的运动进行同步,光电编码器与传送带相连接,其编码脉冲频率与物体的运动速度成正比,物体运动速度越快则编码器脉冲频率越高,反之则越低,因此只需对编码器脉冲信号进行适当的分频后用于控制相机的曝光便可以实现等比例地采集目标物体的图像。分频系数则是由图像每个像素在实际被拍摄物体表面的分辨率(即单个像素在物体表面所对应的大小尺寸)决定的。分频系数可由DSP写入FPGA内部的分频系数寄存器中,FPGA根据DSP的读写信号来判断是读FIF0还是写分频系数寄存器。

3 PCI接口

DM642内部集成宵PCI接口,符合PCI2.2协议规范,因此无需进行外部扩展即可通过PCI总线与PCI主机(如PC)进行数据交换。该PCI接口有两种传输模式:PCI MASTER传输与PCI SLAVE传输, 由于数据传输是由图像采集处理系统主动发起的,所以选择PCI MASTER传输模式,通过MASTER写传输将数据发送到PCI主机上,在该模式下PCI接口可访问DSP所有内部有外部存储试样所曲折到90°角器,访问下突发长度最大为64 kB。在启动MASTER写传输之前需要设置DSPMA寄存器以设定源数据地址,并通过PCIMC寄存器的CNT字段设置传输的字节数,向PCIMC寄存器的START字段写入l后MASTER写传输开始,整个传输过程由EDMA控制器完成无需CPU干预,CPU可以进行其他工作,在传输完成后将会产生DSPINT中断。

4 数据采集处理流程

图像采集处理系统的工作流程可分为数据传输与数据处理两部分,设所处理的图像大小为W×H,其中W为图像的宽度由线阵CCD相机的分别率决定,即W=2048,H为图像的高度由实际应用的需求决定。由于CCD相机每次只输出一行数据,因此需缓存H行数据组成一幅完整图像后才可进行处理,而且在处理的过程中还需要缓存新的图像数据。系统软件采用烈缓存乒乓机制来实现此功能,即将片外SDRAM在逻辑上划分出两个图像数据缓冲区:缓冲区l与缓冲区2。两个缓冲区交替缓存、处理图像数据,其时序图如图3所示。当FPGA中的FIF0缓存满一行图像后,将会对DSP产生外部中断,在中断了程序中将启动EMDA,将FIF0中的2 kB图像数据传输到缓冲区1中,该传输过程由EMDA控制器完成,无需CPU干预,耗时t1=26μs。在EMDA传输完成后会产生相应中断,DSP接收到中断后会启动PCI MASTER写传输,将刚收到的2 kB原始图像数据从缓冲区l传输到PCI主机(如PC)上,该传输过程耗时t2=20μs,且仍由EDMA控制器完成,无需CPU干预,传输完成后仍会以中断方式通知DSP。重复以上过程H次,直到缓冲一幅完整的图像后,开始缓冲区1中的图像数据进行处理,并将新的图像数据存储到缓冲区2中,使得两个缓冲区交替缓存、处理图像数据,其中每个缓冲区的处理时间t3由具体的处理算法决定。从图3中可以看出,图像数据的传输与处理是同时进行的,在向缓冲区1中传输数据时,对缓冲区2中的数据进行处理,而在向缓冲区2中传输数据时,对缓冲区1中的数据进行处理,因此数据的传输与处理时宵序进行的,不会出现旧数据尚未处理便被新数据覆盖的情况。而且数据的传输是由EDMA控制器完成的,不会添加CPU负载,而几乎所有的CPU时间都用于图像数据的处理,这使得系统资源得到充分地利用,有效地提高了系统的实时件。由图3可见外部中断的最短周期T≥t1+t2=46μs,因此系统的最大图像采集速率为2kB/46μs,即43.5MB/s,而每幅图像的处理时间t必须小于H×T以保证所有采集到的图像数据都能被处理完。

在程序实现上是通过对相机输出图像帧进行计数来实现烈缓存交替机制,其流程图如图4所示。相机每帧输出一行图像,用counter对帧数进行计数,程序开始时将其清零,每当接收一帧图像时计算counter/H并对其向下取整,根据计算结果是奇数还是偶数来判断将该行图像数据存入缓冲区1还是缓冲区2,数据传输完毕后将counter加1。当counter%H等于0时,表明缓存完一整幅图像,此时可根据counter/H是奇数还是偶数来判断对缓冲区1或缓冲区2进行处理。由于counter的值是在主函数中读取却在中断例程中改变,因此需要被声明成violate型变量。

5 结论

本文提出一种以高性能数字信号处理器DM642作为核心处理器的图像采集处理系统,该系统可以与具备Camera Link接口的线阵CCD工业相机相连接,并通过对相机曝光频率的控制使得系统能等比列地采集物体表而的图像信息。该系统可通过PCI接U与任意PCI主机进行数据交换,并采用了一种通用数据采集处理流程,使得图像数据的传输与处理并行完成,提高系统资源利用率,增强系统实时件,因此非常适合用于计算量较大、实时性要求较高的工业检测中。

双手关节疼痛怎么回事
小手指关节疼痛是什么原因
早上起床手指关节疼痛什么原因
膝关节疼痛是怎么回事