当前位置:首页 期刊杂志

基于CCD与FPGA的全自动电脑验光仪图像系统设计

时间:2024-08-31

崔亮飞

中北大学光电仪器厂 山西太原 030051)

0 引言

验光所用的仪器称为验光仪,采用主观法验光的仪器称为主观验光仪,采用客观法验光的仪器称为客观式验光仪[2]。随着现代技术的发展,验光仪中应用了偏振光、空间频率滤光、双目光学、红外成像转换等技术,以及用微机控制、打印,用电视荧光屏显示等,制成各种主观、客观、主客观结合的自动、半自动验光仪,使验光仪在验光工作中得到广泛的应用。目前国内以客观式验光仪居多。

本文介绍的是全自动客观电脑验光仪,国内生产的全自动电脑验光仪在测量精度和准确度方面和日本的仪器相比还是存在一定的差距,因此本文设计了一种全新的验光仪图像处理系统,在测量精度和准确度方面都有了较大的提高。

1 全自动电脑验光仪的测量原理

全自动电脑验光仪是把一个确定的含有数学模型的图形投影至被验光者眼底,再用CCD检测从眼底反射回来的图形,从而确定人眼的屈光度、散光度和散光轴角[2]。验光师只需按一下测量键就可完成全部测量过程,实现了测量过程的自动化。验光测量原理如图1所示。

图1 全自动验光仪测量原理示意图

当人眼是正视眼(即屈光正常)时,由放置于准直物镜焦面上的分划板T发射平行光,经过由L2 及L3 组成的发射望远镜系统,形成清晰的像于人眼眼底。然后由眼底反射经L4 及L5 组成的接收望远镜,再经会聚透镜L6形成清晰图像于CCD上。当人眼是非正视眼 (即屈光不正常) 时,移动L2 并移动L5 ,按上述原理使分划板T形成清晰的像于CCD上。

2 全自动电脑验光仪图像采集与处理系统的工作原理

本系统主要由图像采集和图像处理两大部分组成,其结构如图2所示。首先,由DSP启动对数据的采样,通过扩展的I/O口,发送控制信号到FPGA,控制信号主要由开始采集、采集出错、采集完成等几个状态组成。FPGA一旦接收到开始采集信号,就立刻向A/D转换器发送采集控制信号,启动A/D转换;为了实现SRAM中数据地址的同步,将A/D转换的数字信号送往FPGA进行缓冲,然后送SRAM供DSP读取;DSP通过查询和中断方式,监控FPGA发出的中断信号,一旦接收到CPLD发出的中断信号,DSP读取某路的数值并与初始数据比较,根据比较结果继续向CPLD发送控制信号。如果此时的控制信号为采集完成信号,则DSP在通知FPGA停止采集的同时,延时一段时间后再读取SRAM,然后在内部进行数据处理,将处理结果放在存储器中。

图2 图像采集与处理系统基本结构框图

2.1 图像采集系统的工作原理[4]

设计中的图像采集系统工作原理如图3所示,通过CCD把采集到的人眼底图像的光信号转换为标准的视频电信号,视频信号经过放大,进入视频分离器。视频信号经过视频分离器后,分别得到行同步信号、帧同步信号、奇偶同步信号和消隐同步信号。行同步信号和奇偶同步信号进入FPGA器件。FPGA利用接收到的奇偶同步信号作为起始触发信号,当这个信号到来后,FPGA内部切换到采样状态。行同步信号作为FPGA内部行计数器的CLK信号。FPGA内部还有列计数器,它的CLK信号来自有源晶振。这两个计数器的输出分别作为SRAM的地址的高七位和低十位的输入。行地址决定了一帧图像采集的行数,列地址决定每行采样的数据点个数。

2.2 图像的二值化处理[7]

由于图像采集设备CCD采用PAL制,所以系统要求DSP处理一场图像的时间不超过20ms。图像二值化算法的选择标准为简单有效,易于实现。故本系统采用迭代式阈分割算法[5]。首先选择一个近似阈值作为估计值的初始值,然后连续不断地改进这一估计值。比如,使用初始阈值生成子图像,并根据子图像的特性来选取新的阈值,再用新阈值分割图像。

图3 图像采集系统原理图

(1)设图像的最大灰度值为Tmax,最小灰度值为Tmin ,阈值的估计值为T。

(2)利用阈值T把图像分割成2个区域,Fl和F2。

(3)分别计算区域Fl和F2的灰度均值ul和u2。

(4)选择新的阈值T:

重复(2)一(4)步,直到ul和u2的均值不再变化。

将图像信号进行二值化转换后,按8个像素一个字节将一帧有效的图像信号储存在SRAM。当FPGA的行计数器计数计满时,FPGA自动切换到图像的数据处理通道,停止写过程;DSP控制FPGA处于图像的数据处理状态时,FPGA使AD转为高阻态,AD停止工作,并让SRAM写无效。然后DSP通过向FPGA发送控制信号和读脉冲来读取SRAM中的数据,DSP对这些数据的分析处理后,就可以得到我们想要的测量结果。

3 图像采集结果及测量结果[8]

采集到的CCD眼底图像信号如图4所示。经采集系统处理后的二值化图像如图5所示。

图4 CCD采集到的图像信号

图5 经过二值化处理后的图像

对于图5中的信号,首先将眼底图像进行坐标转换,将像素的位置转换成直角坐标,便于进行图像处理。然后采用重心法求出每一圆点的中心,其中计算公式如下:

将各点的中心坐标带入式(10)和(11),求出整个图形的中心(x0,y0)。以(x0,y0)为原点重新建立直角坐标系。利用六个圆点的中心坐标求出图像的椭圆方程如下:

设椭圆的长轴、短轴及轴角分别为RL、RS和θ,它们与椭圆方程参数方程之间的关系[6]如下:

求出RL、RS和θ即可算出人眼屈光度的相关参数。

模拟眼的测量结果符合国家有关屈光度检测标准,如表1所示。因国家没有散光眼的计量检测方法,故这里没有进行说明。

表1 中国计量院标准模拟眼测量球镜的结果(单位:D)

本文介绍的图像采集与处理系统能相对准确测量人眼屈光度,技术指标达到国家相关检验标准,性能接近国外水平。

[1]国家技术监督局计量司. 眼镜基础知识[M]. 北京,中国计量出版社,1997:134-140.

[2]国家质量技术监督局计量司.眼镜经营法规手册[M].北京:中国计量出版社,2000:136-146.

[3]欧玫华,欧凌.全自动电脑验光仪的研究[J]. 中国眼镜科技杂志,2005(09):99-101.

[4]寥日坤.CPLD/FPGA嵌入式应用开发技术白金手册[M].北京:中国电力出版社,2005:15-33.

[5]陆宗骐.C/C++图像处理编程[M].北京:清华大学出版社,2005:229-240.

[6]徐士良.C常用算法程序集[M].2版. 北京:清华大学出版社,1996:438-443.

[7]王庆有. 图像传感器应用技术[M]. 北京:电子工业出版社,2003:148-187, 391-394.

[8]程佩青.数字信号处理教程[M].2版.北京:清华大学出版社, 2001:197-207.

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!