| 基于FPGA的电子内窥镜CCD彩色图像采集与显示系统 |
|
| 2001-01-12 |
1 引 言
1983年,美国Welch Allyn公司研制成功了电子内窥镜,使内窥镜技术跨入电子时代[1]。电子内窥镜技术是目前最先进的内窥镜技术,该技术的发展使得医学成像技术向前迈进一大步。与CT、B超图像成像原理不同,它是用光学镜头成像于面阵CCD(电荷耦合器件),由CCD进行光电变换,将图像由光信号转换成视频电信号经电缆传送到监视器上显示[2]。因此电子内窥镜系统是一个超小型CCD的图像采集与显示系统。
与传统的分离器件和大规模集成芯片构成的电子内窥镜不同,系统采用FPGA(现场可编程门阵列)器件实现图像采集及显示系统控制。可编程器件综合了分离器件与大规模集成芯片的优点,具有用户可编程特性,极大缩短了设计周期,减少了设计费用,降低了设计风险。而且器件包含大量的门电路,具有高的速度,使设计的电子产品达到小型化,集成化和高可靠性[3]。
2 系统的构成
图1是CCD图像采集与显示系统的构成图,系统包括:时钟、图像采集、视频处理及A/D、显示缓存、计算机接口、视频输出(D/A及视频编码)等几个部分。本文主要论述系统的图像采集、显示缓存控制及系统时钟发生。
图1 系统的构成
2.1 CCD图像采集
CCD器件是一种多用途器件,可用作存储器、信号处理电路和图像采集器件等。作为图像采集器件,与摄像管相比,CCD 器件没有色的阴影效应,摄取的图像无灼伤现象,无余像。它的灵敏度高,工作稳定[4]。由于CCD 是放置在进入人体消化道的内窥镜镜头部分,其尺寸受到很大的限制,一般不超过Φ4mm,这也限制了超小型CCD彩色图像采集系统方案的选择。由于体积庞大,三色CCD方案首先被排除。同体积的CCD,彩色CCD比单色CCD的分辨率低,因此系统采用单片单色CCD(黑白CCD)方案。它是利用旋转三色滤色片分时顺序摄取图像的红、绿、兰信号,经过显示缓存控制同时输出到监视器显示真彩色图像。系统采用的是德克萨斯仪器公司于九十年代推出的TC221,这种全帧操作的面阵图像传感器是专门为适应应用环境恶劣或者需要小型化的医学及工业应用而设计的,其对角线长为2.4mm,满足内窥镜镜头部分对直径的限制,分辨率为190×190。对CCD的控制关键在于对它驱动信号的控制上,只有按给定的操作时序做出的驱动信号才能正确地得到CCD采集到的视频信号。TC221的时序如图2所示。IAG是行移时钟,SRG是串行移位时钟,ABG是防开花脉冲。从时序图中可看出IAG和SRG之间有严格的时序对应关系。
图2 TC221时序
2.2 视频显示缓存
系统的视频显示缓存是系统的核心。通过它对图像数据的接收、存储、发送,同时作为高速设备与低速设备的缓解环节,满足系统对图像数据在输出到监视器上正确显示所作的多方面的处理要求。系统的显示缓存在系统中主要完成以下几个功能:
.高速CCD与低速的监视器读写的矛盾;
.单色CCD图像的真彩色处理;
.全帧CCD逐行输出信号的奇偶场分离;
.通过实现大小双画面显示,画面冻结,冻结画面换帧。
可见视频显示缓存是系统控制中最关键、最复杂的部分,系统的显示缓存主要由FIFO、VRAM及由FPGA构成的控制电路组成。
TC221的行转移时钟的频率为32k,而监视器的行频为15.625k,这种行频的不一致性会导致显示的错误,FIFO作为场缓存可以缓解这种CCD快读与监视器慢写的矛盾。通过巧妙控制VRAM的分页,分区及写入地址实现单色CCD图像的真彩色处理,全帧CCD逐行输出信号的奇偶场分离及窗口控制等。
2.2.1 双端口存储器(VRAM) 是近年来新发展的一种图形图像存储芯片,系统采用了日立公司的TC528257,它采用了双存储体及双数据口(双端口)结构,可直接在10MHz以上的时钟下工作,它与普通的存储器最大的差别在于其内部含有两个不同类型的存储体,一个容量为256k×8bit的动态存储体(DRAM),另一个容量为512×8bit的高速串行存储体(SAM),并且各自都有自己的数据端口。两个存储体既可分别独立工作,又可相互之间传递数据。它解决了其它存储器不能同时读写的矛盾,与其它存储器比,所需的存储器数目最少,外围辅助器件最少,图像的彩色效果最好。
TC528257具有很强的功能,有多种工作方式,管理比较复杂。系统中主要应用了TC528257的三种工作方式:读传送、快速页模式写入、CBR自动刷新。读传送在行逆程从DRAM向SAM传送一行数据,在行正程以快速页模式写入方式一次向VRAM写入一行信号的同时从SAM串出一行数据给D/A转换。DRAM存储体与一般动态存储体一样需要刷新否则信号会丢失,系统采用CBR(CAS置前RAS)自动刷新方式在行逆程采用集中刷新,使每行完成对8行的刷新,总的刷新周期为:512行/8*64μs=4.096ms,可满足刷新周期要求。
系统采用六片TC528257构成三页存储体,分别以场为顺序存储单色CCD输出的R、G、B三个图像分量,三场一轮换,并同时输出实现实时真彩色显示。
2.2.2 奇偶场分离 是通过存储体的分区来实现的,存储体分区示于图3。
图3 存储体分区图
系统采用两块存储器存储一个颜色的信号,并将存储体进行分区,存储体1存入CCD输出的奇点信号,存储体2存入CCD输出的偶点信号,每个存储体按行划分为0~255行和256~511行的两个区,两个区只在地址最高位上有差别,0~255行这个区用于存储CCD输出的奇行信号,256~511行用于存储CCD输出的偶行信号。在奇场时读的是0~255行这个区的信号,即在奇场监视器上显示的是CCD输出的奇行信号,同理,偶场读出的是CCD偶行的信号。经过这样的奇偶场分离,一幅逐行输出的CCD图像,在隔行扫描的监视器上完整正确的显示出来。奇列和偶列的分离还使读出的速度降低一半,降低了对存储器芯片速度的要求,使芯片发挥最好的效能。
2.2.3 显示缓存窗口控制
1)双画面显示 系统显示大小两个画面,双画面显示示意如图4。小画面的分辨率为190×190,即CCD图像与监视器上图像的像素点一一对应。大画面的分辨率为380×380,它是将CCD串出的一个像素写到监视器上对应的4个位置形成一点到四点的映射,使得图像数据在水平和垂直方向上都展宽2倍。
图4 双画面显示示意图
2)画面冻结与换帧 系统中通过对屏幕图像对应的存储区不断地写入,可达到实时显示,即动态显示;如果对应的存储区只刷新和读出,则实现图像“冻结”,即静态显示。动态显示的画面可以转换为静态显示,反之亦然。冻结的画面可以捕捉当前某一瞬间图像,而动态显示的画面依然实时显示,这时电路的动作称为换帧,即把冻结画面对应的存储区内容用前三场信息更新,然后反复读出。系统总共有四个状态,简记为S1:大画面动,小画面静止;S2:大画面静止,小画面动;S3:大画面换帧;S4:小画面换帧。其状态流程图示于图5。系统设定了两个开关W1,W2,可在任何时候进行大小画面动静显示切换和换帧。
图5 状态转换图
2.3 系统时钟发生
系统时钟是系统正常工作必不可少的环节,它提供给系统同步信号和与行频锁相的高频主时钟。本文系统时钟是锁相理论与同步理论在电视系统中的典型应用。
2.3.1 同步信号发生电路 在电视系统中,为了能够正确地重现图像,要求收端与发端同步扫描,因此在图像信号中必须加入同步脉冲。由于CCD信号不包含同步信号,为了使CCD出来的信号成为真正的PAL制信号以便在监视器上正确显示,本文用日立公司的HD440072所提供的PAL制的同步信号完成CCD信号的同步。HD440072可用于PAL制、NTSC制及SECAM制的同步信号发生,本文采用了它的PAL制的信号[5]。它的行频和场频的频率精度小于PAL制要求的频率容差±0.001%,色副载频和行频之间基本上符合25Hz偏置的要求,因而同步信号基本符合标准PAL制要求。这种同步发生电路广泛地应用于工业电视摄像设备中,国外单管摄像机内的同步机也大量采用这种方案。
2.3.2 高频主时钟 与行频锁相的点像素时钟是显示的需要,同时稳定可靠的全局时钟是FPGA内部可靠工作的保证。因此用行频15.625kHz锁相产生高频主时钟44.3MHz作为FPGA内部的全局时钟,由它产生点像素时钟及图像采集和显示系统所有的驱动信号和控制信号是满足系统要求最优的方案。从行频锁到44.3MHz锁相倍数大,是锁相倍频的一个难题。选择摩托罗拉公司的MC44145构成锁相倍频电路,因为MC44145是集成的锁相倍频电路,集成度高,外围控制简单,并且它是专门针对行频锁相的。经过计算并经反复实验调整得到最佳的锁相参数,使得锁相稳定且达到锁相精度,压控振荡器输出频率Δf/f≈±10-6,满足其长期稳定性和短期稳定性的要求。
3 系统的FPGA实现
系统采用美国Altera公司FLEX10K系列的器件EPF10K50-4实现了系统所有的控制功能,包括CCD时序控制及复杂的显示缓存的控制。系统控制由FPGA芯片通过编程实现,硬件功能的描述可完全在“软件”上实现,在调试过程中不断更改“软件”就可达到硬件功能的改进,这种“软”硬件的全新的设计概念,使系统具有极强的灵活性和适应性。通过FPGA对TC221的开发,可以在不改变硬件电路的基础上,在“软件”上根据需要分别设计相应的程序以达到实现其它CCD器件的驱动,为将来其它CCD器件的开发和使用探索出一条方便快捷的途径。系统可作为CCD器件开发的通用系统。EPF10K50-4芯片典型门数为50000门,可用门从36000到11600,2880个逻辑单元,内部有2k的RAM,可充分满足复杂的显示缓存控制的要求,FPGA器件作为系统控制的核心,其灵活的现场可更改性,可再配置能力,对系统的各种改进非常方便,在不更改硬件电路的基础上还可以进一步提高系统的性能。FPGA器件包含大量的门电路使系统可靠性高,集成度高,精减了系统控制板的体积。
4 调试结果
经过系统的调试,图像采集和显示缓存控制系统控制板的功能已调试完成,工作稳定可靠,以下是用逻辑分析仪截取的部分调试结果。
图6所示为FPGA输出的CCD时序信号波形,它与图2所示的TC221所要求的操作信号一致,这里,t3=t4=800ns,t2=180ns,t1>1us,SRG串出时钟为7MHz,ABG时钟为3.5MHz,IAG周期为32kHz。
图6 CCD时序信号波形图
为了验证显示缓存控制的正确性,系统在FPGA内部作了一个彩条信号,作为自检信号,该信号代替前端CCD输出的信号输入显示缓存控制部分。图7是从显示缓存输出的彩条信号,图中截取的是大画面的信号。从中可看出彩条信号经过显示缓存窗口控制后整齐地显示在大画面对应的输出位置上,说明系统显示缓存窗口控制是正确的、成功的。
图7 显示缓存控制输出的彩条波形
5 结 论
系统基于锁相原理得到了标准的PAL制式的同步信号和稳定可靠的提供给FPGA的高频主时钟。系统采用目前最新的器件FIFO、VRAM构成了系统的核心部分系统的视频显示缓存。系统采用目前先进的FPGA技术实现系统全部逻辑功能,产生所有控制信号,包括CCD驱动信号,复杂的显示缓存中FIFO、VRAM的所有控制信号。FPGA技术的使用一方面极大缩短了调试的周期,提高了系统的可靠性;另一方面由于其包含大量的门电路使系统控制板集成度高,体积小。由于FPGA器件的使用,系统具有极强的灵活性、适应性和通用性,并可在不更改硬件电路的基础上,在短时间内实现对现有功能的修改和扩充。 |
|
|
|