专利名称:眼用透镜的检验方法和设备的利记博彩app
技术领域:
本发明涉及一种用于自动检验眼用透镜,特别是其结构由一部分实质性为水的水凝胶隐型眼镜,的方法和设备,这种方法也适用于检验其它小型高精度眼用透镜,例如眼内透镜。
由于对眼镜的要求极严格的特性所致(用于人眼矫正视力的透镜),在眼镜工业中,占据极端重要地位并需优先考虑的是对这些眼镜进行检验,以确定它们是否满足需要的条件。这些条件不仅涉及光学性质如放大率,同时也涉及物理性质,例如,尺寸、曲率、边缘完整性和有无气泡,有无杂质和其它缺陷。
以前检验此类透镜的最可靠的方法是由一个观察者观察放大的镜片,以检验镜片是否满足要求的每一特性。然而,随着眼镜工业的发展,这种检验方法对该工业来说是一个很大的人力和财力上的负担,并且要求检验员完成乏味的工作。特别是考虑到周期性频繁更换的隐型眼镜,需要制造和检验的镜片的数量会急剧增加。与检验眼镜相关的一个问题是,镜片本身是光透明的,因此不能显示出检验常规物体时所能发现的明暗特征。
现行的由人工进行的检验方法采用的是本领域熟知的暗场照明纹影(Schlieren)法,特别是用于研究透明的液体流动和光学元件的检验,在该方法中,由点光源发出的光被一个透镜准直,再穿过介质(即,镜片)。然后该光线通过共二个透镜被直接焦聚在一个刀刃上。由于镜片的折射不均匀所造成的反射光线(虽然透明)都未聚集在刀刃上。被刀刃遮断的反射光线接下来通过一个物镜投射到一个屏幕上,然后在本来应该全黑的投影屏上对应于非均匀性产生一个光点。
对于检验眼镜来说特有的另一个问题是,尽管镜片的尺寸允许在标称尺寸的基础上有所变化,但是一些可允许的缺陷的尺寸,例如边缘的裂痕和中心的水泡的尺寸使比允许的标称尺寸的变化值小两个数量级也是不能接受的。自动检验的通常方法,是将花纹或模板放置在待检的象上然后与象进行对比,但不适用于检验眼镜,因为检验所要找寻的缺陷往往比透镜的标称尺寸允许的变化值的百分之一还要小。
因此,本发明的目的之一是提供一种高速自动检验眼镜的方法和设备,其精度与人工在放大检验情况下的精度在同一水平。
本发明的另一目的是采用现成的视象设备、电子元件和计算机系统完成上述检验。
本发明的另一目的是,当一个透镜在生产线上丢失哩,能够被发现。
本发明的另一目的是将图象分析集中在透镜上产生缺陷的最可疑的部位。
本发明的又一目的是在确定透镜边缘之前分析透镜的特征,并确定该特征是不是导致透镜成为废品的一个裂纹。
本发明的又一目的是将在透镜边缘发现的间断点搭接,从而微小的透镜缺陷和图象处理遗失信息不致导致检验步骤对于某一特别的透镜没有作用,进而导致好的透镜被当作废品。
本发明的又一目的是根据类别对特征的偏差进行归类,以把透镜中发现的缺陷类型列成表,为生产工艺提供信息。
本发明的这些和其他目的通过一个电子摄象和摄取被一个点光源照亮的一个眼镜象来达到。象被投射到摄象机的接收部位;该接收器由一组象素组成。每个象素的位置和投射到其上的光强被转换成一个电信号然后转移储存在一个存储器中。与存储器相接的计算机能够取出存入的位置和光强值。计算机中装有指令,对各象素的光强和位置数值进行比较。
在优选实施例中,上述比较过程包括从位于接收器中心附近的一个象素开始,朝着象素场边缘的方向继续下去,直至出现强度差值。通过计算围绕中心象素的那些含有强度差值的象素,找出与中心象素最接近的匹配,然后重复上述过程,就得到了特征的概况。如果这些特征的特性并非与透镜的边缘相对应,就判断该特征,以便确定该透镜是否应予废弃。如果该特征对应于透镜的边缘,就要判断边缘的特性,以便决定该边缘亦即该镜片是否能够被接受。
在优选实施例中,是这样实现的沿边缘位置探测,直至找到相隔12°的30个数据点。求解三个联立方程式(3点一组共十组)以发现透镜的平均中心和平均半径。据此,使用上述中心和半径数据,产生一个环。这个环的边界包围真正的透镜边缘。在该环内,所有的象素从绝对光强值转换成一个梯度值,使得透镜边缘可以被两个转换边缘代表,一个从接触透镜边缘的内面,一个从其外面转换而来。然后削薄这两个边缘使得只剩下沿边缘的光强最大的象素。然后这些边缘被从XY坐标系转移到极坐标系,保持半径值、角度和强度梯度不变。然后在这两种数据阵中进行提取特征。提取特征包括搜索半径偏差,定域内的梯度偏差、空间偏差,DIP定域内的梯度偏差,单向定域内梯度偏差和不连续性。在判断了这些象素的电平之后,每个缺陷象素被视为是一个缺陷组的成员。在对内外透镜边缘轮廓分别分组之后,那些在透镜边缘两面的同一区域相互重叠的组落入复合缺陷组。当所有的组被确定之后,根据放入该组中的象素的数量、类型和严重程度,每个组被打一个分数。据此,根据这些分数赋予整个透镜一个加权的分数,确定透镜合格或不合格。
图1是与本发明的物理元器件的方框图,以及它们之间的连接关系、光源、待检验的透镜。
图2是本发明的设备对透镜成象并对这个图象进行处理以检验透镜是否合格时的处理步骤流程图。
图3是本发明的算法在图象上对透镜进行定位时采用的技术手段。
图4是一种在透镜边缘上每三个为一组采集数据点的代表方法。
图5是一种从事先收集的数据点确定要探查的透镜边缘的中心和半径的方法实施例。
图6表示出在已获得的理论上的接触透镜边缘周围所建立的处理环。
图7表示边缘加强操作的结果,该操作产生两个转换边缘,一个为内边缘,一个为外边缘。
图8表示为了使用不同方向的边缘操作透镜被划分成的不同区域。
图9是一个示意图,表示本发明的算法所采用的方程式在对不同的象素位置进行表示时所使用的标志法。
图10是一个示意图,表示对透镜图象的角度标记的惯用方式。
图11是表示在处理环内部使用搜索矢量确定透镜的结果。
图12表示加强的透镜图象中出现的不连续点以及探测一个不连续点时进行的象素处理,其中,图12a是在直角坐标系中,图12b是在极坐标系中。
图13表示对透镜的断裂部分的搭接,其中图13a是在直角坐标系中,图13b是在极坐标系中。开始的搭接使用的是外推法技术,最后的搭接使用的是跳跃技术。
图14表示使用象素处理法对透镜边缘的径向偏差进行的判断,其中图14a是在直角坐标系中,图14b是在极坐标系中。
图15表示被关注的象素与其相邻象素在梯度上的关系。
图16表示由象素处理所得到的梯度提取,其中图16a是在直角坐标系中,图16b是在极坐标系中。
图17表示从透镜边缘提取空间偏差特性的方法,图17a是在直角坐标系中,图17b是在极坐标系中。
本发明的实现不局限于一种特定的硬件系统,实际上可采用许多种软件系统来完成。但是,下面所给出的实施例,是一种特别好的模式。
参见图1,本发明系统包括一个支托着一个接触式透镜包装盒10的结构(未画出),该包装盒中装着放置于去离子水之中的接触式透镜,位于光源14之上摄相机16之下。
摄象机16是一种高分辨率固态摄象机,例如Kodak公司生产的VidekMegaplus牌。
这种摄象机包括一个镜头18,在本实例中该镜头被固定在14.5mm的视场上。该摄象机配备了一个Nikkor55mm标准镜头。该镜头设置在f/2.8,然后连接到一个与摄象机镜头的终端相连的中心波长550nm、具有10nm全波半高(FMHH)的Andover带通滤波器上。该滤波器能够消除色差从而提高总体空间分辨率并且使得检验透镜时的光响应保持在与人工检验员的视觉响应相似的水平。该滤波器还能消除CCD探测器的红外光,该红外光会降低整体系统的调制传输功能(MTF)。
在装有盛放在去离子水中的透镜的包装盒之下,有一个由薄板状乳白玻璃做成的光漫射器13,在它之下是一个频闪灯14之类的光源。该频闪灯由图象处理系统激励,能够产生5焦耳、10毫秒的光脉冲。通常,在频闪灯每次发光之间,需要一个450毫秒的恢复时间用以充电。
摄象机16的调焦是通过一个精密的导杆驱动机构完成的,该驱动杆推动摄象机沿着它所固定的框架上、下移动。一旦摄象机聚焦,它就保持在静止状态,完成检验程序。
摄象机还包括一个电荷偶合器件传感器(CCD)。它起到光接收器的作用。该CCD接收器由一个矩形阵列(1,320×1,035)的象素阵列构成。
摄象机的接收器电荷偶合器件传感器将光强转换成一个电信号。这个模拟电信号接着又被电路24通过一个8位模/数(A/D)转换器转换成含有256个灰度电平的数字视频输出信号。
摄象机工作在非同步方式,它利用透镜产生的信号和移动到适当位置的包装盒激发频闪灯的发光以及后续的图象转移。
通过摄象机中的电路24,图象被传输到图象处理系统的输入模块26。图象处理系统由三个部分构成,输入模块26,CPU模块28,和图象母板30。
对输入模块26中的数字信号进行处理,以保证每条都有相应的视频同步信号。修正后的信号然后被输送给一个视频复用器34,它将数字化的信号转输给CPU模块28。
这组代表一个视帧(或者特别描述为摄象机1,048,476个象素)的数据被送入视频主线36,它能够把信号传输到其它处理硬件。同时还使用视频RAMDAC38显示图象,它通过转换器40被转换成一个伪彩色输出,并通过RGB输出42传输到一个视频监视器44上,在这里图象能够显示出来。RGB伪视频彩色输出由三个查阅表(LUTS)提供。
CPU模板28的输入在第三种情况下被传输到约为1兆字节的图象存储器46中。储存在图象存储器46中的数据通过一个图象时间控制器,以通常的方式传输到处理单元48。
数据的处理是由Motorda68040CPU完成的。
所需的图象处理编码存储在可擦除、可编程、只读存储器EPROM52。图象处理后的结果被送给图象母板30,以进行适当的输出控制。输出即可通过16位数字并行输入/输出端口60,也可通过RS232或RS422串行口62。
处理器所做出的接受/否定决定被送到传输机构66,它决定透镜12是否进一步进行包装和消毒处理,或被做为废品消毁。
现在参见图2,由图1所示装置实现的检验程序以框图的方式给出,并且详细示出了CPU模块28进行的检验算法。
在第一步骤,由摄象机捕捉到原始图像,并送入图象传输系统。这个图象被转换成一列数字数据,它包含有校正摄象机中已知缺陷象素的算法规则。
高分辨率摄象机的价格取决于CCD传感器接收器20上所能允许的缺陷象素的数目。这首先包括这样一些象素单元,它对相邻象素和五个或更少象素单元集簇有10%或更多的光响应。
由于缺陷象素的数目即使在不十分贵的摄象机上也是有限的,而且这种聚集在一起的象素数目也是有限的,所以价格不贵的摄象机仍然能够用于透镜的检验。
VidekMegaplus摄象机的CCD传感器包含数个柱形缺陷。这些缺陷通常限于一个单独的柱形,可以是几个象素长或50或更多个象素长。这些缺陷区域导致象素灰色电平在不考虑图象本身的情况下高于或低于相邻的象素。如果这些缺陷位于透镜边缘,它们能够错误引起软件将其当成透镜的不连续或将其当作透镜的缺陷。
探测缺陷区域可以通过人眼观察一个均匀的目标的图象,找出灰色电平值出现异常偏差的区域。由于缺陷局限于一个单独的柱形,在相邻的柱之间插入修改是一种适合的修正。柱形缺陷的插入值恰好是缺陷两侧的柱的灰色电平值的平均值。所用摄象机的传感器也有可能具有聚集型的缺陷,它们的形状为园形的斑点。这种类型缺陷的调节也可以是将它们保持在一个不影响图象处理的区域或者是使用上述同样的内插技术。
当上述对已知有缺陷的摄象机象素做出修正之后,通过辨认透镜的边缘透镜被安置在图象视场中。当进行了找寻透镜边缘的尝试之后,可确定透镜确实在容器中或者透镜从容器中遗失。如果容器中丢失了透镜,它将被视为一个废品透镜,从而空的包装盒不进行处理而被送到消毁装置处。
当确立了镜头的边缘存在的情况下,将根据围绕透镜边缘的点的位置采集数据。这些数据用于建立多个边缘数据组(三个一组)每组限定一个园和一个园心点。距离平均中心最远的中心被丢弃,以去除特别数据。
在这时特殊的边缘信息还未被采集,仅采集了三个一组的边缘数据组以定位边缘和透镜中心。
为了实际检验边缘,计算出来的中心点被用于建立一个其内包含有实际的接触透镜边缘的处理环。这保证了进一步的详细的数据处理仅仅被集中在包含有所感兴趣边缘部分的环之中。
为了从背景中区分出透镜边缘,在处理环的象素中加入了边缘增强处理操作。这个边缘增强带来两个透镜转换边缘。一个是从透镜的内部到边缘,一个是从透镜的外面到边缘。
虽然这时只有边缘信息留下,两个边缘(实际上是边缘转换)仍多多少少被朝着边缘和背向边缘的光强梯度所模糊。为了更清晰地限定这些转换边缘,对处理环包含的边缘数据进行修正轮廓操作。框架运算保留了灰度电平信息,因为它包含了对于特征提取有用的信息。
算法要进行的下一个步骤是阈值计算的使用,从而消除那些对提取特征来讲多余的那些灰度电平信息。
算法操作的下一步骤是搜索内,外边缘以提取透镜边缘特征。这个搜索过程的开始方式类似于开始定位透镜边缘的方式;但是还有不同之处在从处理环的内界面出发向外搜索的过程中采用灰度电平临界值定位透镜边缘。当遇到一个符合灰度电平临界值的象素时,要检查与其相邻的一系列象素,以确定它是否是透镜的边缘。如果是,在整个边缘的附近继续找寻,并且位置和相应的象素光强梯度被储存下来。
然后直角坐标系的信息被转换成极坐标系中的半径和角度代替值,同时还有相应的光强梯度值。为了恰当地处理这些数据,不错误地否定好的透镜,小于某量的象素不连续将被搭接。
采用现在的极坐标系中的信息,将进行五种类型的特征提取。第一种是探测与理想的内和外边缘的径向偏差(RD)。接下来一种是定域内的梯度偏差(LGD),它考虑的是每个象素相对于其相邻象素的光强度的梯度。然后进行空间偏差(SD)特征的提取。空间偏差要测量半径相于角度位移的改变。与径向偏差提取相反,空间偏差提取着重的首先是边缘半径相对角度位移改变的急剧程度或突然改变。
进行三种最终的特征提取。不连续性缺陷是这样一种情况无论在透镜的内和外边缘的不连续性如此之大以致于算法规则不能将其视为可以搭接修正的。
相似于定域内梯度偏差特征,下落定域梯度偏差(DLGD)着眼点是感兴趣的象素的梯度值与其相邻的定域内的平均值之间的偏差量。区别是所采用的相邻象素数量更多,而且在感兴趣的象素周围的未采用的象素的区间更大。DLGD被设计成仅仅对小于其相邻象素的梯度偏差敏感,因此得名“下落”。
DLGD特征特别能够辨别出其它特征无法辨别的微小边缘缺口。一个根据DLGD被归为有缺陷的象素具有包含着剧烈程度的偏差量。
单向定域内梯度偏差(ALGD)采用感兴趣的象素某单独一边的邻边象素来计算偏差。在感兴趣的象素的前方取20个相邻象素(除掉4个与感兴趣的象素直接相邻的象素),然后计算平均值。ALGD所着重的是即有负的也有正的梯度偏差。
当上述特征提取处理步骤进行的同时,与构成缺陷的剧烈程度成比例地,对所获得的已分辨出来的特征标记出不同的分值。此外,通过检查内、外边缘的异常象素将缺陷归为不同的小组,以确定它们是否属于应归于同一缺陷组的一个较大的缺陷。然后判断这些组,看它们是否应当互相结合成为较大的组,以及当结合之后,内和外边缘缺陷组是否应当被认为是单独一个缺陷。
最后,根据剧烈程度给每个缺陷和缺陷组打分数,并且根据它对于透镜质量的影响,对每种类型的缺陷进行加权。
对所有这些缺陷的这些结果进行相加,以得一个单独的数字,该数字确定该透镜应当被接受或者必须被否定。
此外,可以以表格的形式列出或显示出加权和打分程序获得的多个数字信息,从而为正在生产的透镜给出一个统计的质量分析,从而引导生产工艺的控制者发现工艺参数的异常变化,以及评价变化对生产工艺产生的影响。
上述算法程序进行的步骤将在下面详细描述。
参照图3,所示是一个由一系列象素(未示出)构成的接收场70。在场内是一个接触透镜72的象。在这个特定的象中,透镜由边缘74和缺陷或噪声76构成。在这个特定的透镜象中还可发现边缘78处有一个缺口。
透镜边缘的设定首先从视场的中央开始,使用成45°角的搜索矢量80。搜索矢量从视场的中心径向向外逐个象素地移动直至遇到预期中的透镜边缘。算法程序检查沿搜索矢量的每个象素,直至边缘临界值得到满足;将每个象素与一个灰度电平和一个预置的标定临界值进行比较。如果正处在矢量中的某象素的灰度电平低于“trk-thers”参数规定的值,则假定边缘上的一个象素为已经被碰到过。
为了验定所碰到的物体就是透镜的边缘,矢量接下来搜索该目标的轮廓线。在存在搜索矢量80和82的情形,运算程序发现该目标不是透镜边缘的一部分,因为其路径的曲率与预计的透镜边缘的曲率或周边不相符合。这个确认技术只需探测轮廓线轨迹在返回时是否在规定数目的象素之内就穿过起始点的象素,这个目标被确认为足够小从而是噪声或一个透镜缺陷。如果遇到一个噪声目标,接着建立一个大约11°的顺时针方向的搜索矢量,进行与原矢量相同的搜索。
图中还示出了另一个搜索矢量84,它沿着一条穿过透镜边缘78的缺口的路径前行。这个搜索矢量将继续搜索直至到达接收视场70的边界,在这一点搜索中止,而另一个距离原搜索矢量顺时针方向11°的搜索矢量开始搜索。在每一种情形下,逐个象素的搜索都是对紧挨着的象素进行的,或水平方向,垂直方向或以阶梯形式进行的对角线方向。对于上述已遇到的两种透镜缺陷的任一种,位于透镜体76缺陷或者位于透镜边缘78处的裂缝,可以使用适当的临界值,使透镜被否定。
矢量86的情形,搜索是成功的,发现了透镜边缘74。确认所发现的特征确实是透镜边缘的验证在图4中画出。
由先前发现的好的数据点开始,软件沿着透镜的轮廓线运行,使用48联通性追踪,追踪大约90个象素。根据透镜的实际半径r,跟踪距离根据以下公式将随不同的图象而不同追踪距离≡Y=(1024/F)×(2“π”r/30)其中,F=14.5mm(视场)因此,对于处在去离子水中的12.2mm透镜来说,T一般为90个象素。如果沿着透镜边缘距离T被成功地经过,一个数据点被记录下来。
因此,透镜边缘的位置被验证了。当间隔12°的30个数据点被发现以后,对3个点一组的10组进行三方程联之求解,以求出透镜的平均中心和半径。
在图4中,方块,三角和园形符号代表已收集了数据的点。具有相同内部图案的符合被采集到同一数据组。
然后用10个数据组来计算10个不同园的方程,其中,每个园代表透镜边缘的一个模型。计算出一个平均列象素和一个平均列象素园心。然后计算出10个园中的每一个的园心到平均园心的距离。任何一园心,当它与园心分布的统计最频园心之间达到预置的偏差时,将被排除。进行这种排除是为了排除掉那些由于采集了偏离正常透镜边缘的缺陷处的数据而导致的虚假透镜边缘。这被表示在图5中,其中,由于透镜边缘87的偏差,园心88偏离了其它九个园心的集中区域,因此被排除。
然后计算其它行和列园心的标准偏差,并与一个规定阈值相比较。如果行和列标准偏差满足阈值临界值,则认为透镜已被发现。在最终模型中采用的半径是所剩的9个半径的平均值。如果两个标准偏差中有一个不满足阈值临界值,则建立一个新的搜索因子。新的矢量的起始角度从原来的矢量处以这样的方式确定使得数据不在沿透镜边缘的相同点处采集。这种嵌套的反复的找寻边缘和采集数据点的程序最多将连续两个循环。如果在这段时间内不能成功地找到透镜,该透镜被认为丢失了,被自动否定。
见图6,一个处理环90被建立并重叠在透镜边缘72周围。因为建立该环时采用先前得到中心和半径值和处理环宽度的内部参数,处理环的边界必然将透镜边缘包括在其中。所有对图象进行的进一步处理都将仅仅在该环内进行,目的是通过限制所要评价的象素的数量提高速度,减少处理时间。对处理环大小的要求(确实需要使用一个限制性的处理环)取决于能获得的计算机处理能力和有关的花费。环形园环的园心是运算程序的先前步骤建立的园。环的象素宽度取决于参数“ank-width”。
见图7,画出了运算程序的下一步骤,但前一附图中的处理环未被画出。在接收器视场70上再次显示的是平均中心92。由于灰度电平信息本身不足以敏感得保证将正常的透镜边缘和其缺陷区域区分开来,因此在原始透镜图象上进行了边缘加强操作。因此,该操作被用于引起包含在透镜边缘图象的内、外两侧的信息的区分。所使用的操作手段是一个改型的3×3运算符,它利用透镜边缘附近的不同区域。前一附图中的接触透镜边缘72在实行边缘加强操作之后已经被消除。边缘加强操作将2至4个象素宽的原始透镜边缘图象处理成为一个单独的内边缘94和外边缘96,如图6所示。
为了实现边缘加强操作的处理,必须将透镜划分成不同的区域。
区域的准确起始和结束取决于图象中透镜的大小以及透镜在图象中的位置。图8表示出透镜采用的五个区之间的关系。建立这些区的目的主要是区分透镜的水平方向、垂直方向和对角线方向的区域。
图8中的每个区使用一个不同方向的边缘操作。对于1、3、5区,使用了一个对角线操作。对于2、4区,使用了水平/垂直操作。使用不同的方向操作是为补偿透镜的曲率并且无衡透镜上的梯度值。即,在近乎垂直的透镜部分的对角线操作,基本上等同于水平/垂直操作在基本上斜交叉的透镜部分的情况。
为了消除不希望的画象抖动,边缘操作被设计为相对于被处理的边缘是交叉的。正常的原始透镜的边缘的厚度在一定区域内是轻微波动的。在平行于或垂直于原始透镜图象的方向上进行的操作因此有可能拾取上述波动信息,从而错误地保留着边缘的小偏差。特征提取软件视这些小偏差为边缘的缺损。
参见图9,所示为在边缘加强操作的实现过程中采用的象素标志。如本领域的普通技术人员所能理解的那样,这个标志符号是用于表示矩阵或阵列中元素的标准标记法。
下面的方式程1-6表示两种边缘处理所用的算法规则。所得的每个象素的梯度值被换算成为落入0至258范围内的8位数字。
水平/垂直操作=abs(khdif)+abs(vdif)其中hdif=Pi-l.j+l+2*Pi.j+l+Pi+l.j+l-(Pi+l.j+l+2*Pi.j-l+Pi+l.j-l)vdif=Pi+l.j+l+2*Pi+l.j+Pi+l.j-l-(Pi-l.j+l+2*Pi-l.j+Pi-l.j-l)对角线操作=abs(dldif)+abs(d2dif)其中dldif=Pi-l.j+2*Pi-l.j-l+Pi.j-l-(Pi.j+l+2*Pi+l.j+l+Pi+l.j)d2dif=Pi-l.j+2*Pi-l.j-l+Pi.j+l-(Pi.j-l+2*Pi+l.j-l+Pi+l.j)当在1、3、5区内进行了对角线式边缘加强操作,在2、4区进行了水平/垂直边缘加强操作之后,对所获得的最终内、外边缘进行轮廓操作。所获得的边缘典型地为1个象素宽,并包含仅仅来自从边缘的剖面处看,边缘最强部分的信息。在这个步骤中,无论如何,包含在这些象素中的灰度电平信号仍被保留。这种方式的边缘加强是沿着与用于多个环区的梯度操作方向相匹配的方向进行的。该操作仅仅在以前的步骤中得到的梯度信息的基础上进行,它从感兴趣的象素出发沿四个方向搜索峰值。如果它发现一个峰值,就用这个值取代感兴趣的象素。如果未发现则该象素变成0,最终出现如图7所示的图象。
算法运算的下一步骤是使用阈值机理对刚刚被加强的和进行了轮廓处理的透镜内、外边缘进行定位和追踪。当边缘被搜索时,阈值仅仅沿着透镜轮廓线发挥作用。
算法运算的下一步骤是对超过规定的象素光强值的选定象素施加阈值限定。施加阈值操作的目的在于消除环区内所有不再是感兴趣的边缘部分而成为噪声的象素。用于阈值限定的灰度电平值对于内、外边缘分别是参数“inner-thr”和“outer-thr”。这些是用于追踪外轮廓线的算法中的阈值。阈值操作的实施如下面所示如果(Pi,j>=阈值并且是被处理的透镜边缘上的象素)则Pi,j=轮廓线象素图9所示为用于对在传感器视场70中透镜图象的角度标示法。为了找到透镜边以开始追踪,使用了一种与开始用于定位透镜所使用的相类似的搜索矢量。在这种情况下,搜索矢量仅仅使用灰度电平值作为搜索下一个象素的判断依据。
参照图10,矢量在零度处从处理环内开始搜索,并且沿着象素的行进行处理,直至遇到透镜边缘或者到达处理环的另一边。
参照图11,该图表示了用于搜索内边缘的一种可能情况。
该图示出了一部分放大了的加强透镜边缘,其中有内边缘94,外边缘96和外边界100。
以上作为实施例描述的是第一搜索矢量102。在第一搜索矢量的这一实施例中,它遇到了一个小缺陷104,因为这个噪声或缺陷104具有特异的灰度电平值。搜索矢量追踪了它的边界,但是根据遇到开始那个象素之前追踪的象素的数目,判断出它的曲率与透镜边缘不相符合,因此算法程序否定了该目标。
在定位边缘的此次尝试失败之后,在距离第一个搜索矢量20行象素的地方又建立起第二搜索矢量。作为一种例子,第二搜索矢量从处理环98的内边界开始向外边界环100前进以试图找到透镜内边缘94。在该例子中,搜索矢量106没有遇到特异于透镜边缘的象素,并且通过一个缺口108以及内边缘94和外边缘96。一旦搜索矢量到达处理环100的外边界,搜索即中止。
然后,在距离第二搜索矢量20行象素的地方又建立起第三个搜索矢量110。在该第三搜索矢量110的实施例中,发现内透镜边缘94的努力成功了,接着算法程序将追探查集中在内和外透镜边缘94和96。
只要前一矢量由于遇到小缺陷或遇到透镜边缘上的缺口没有能够成功,就重复建立新搜索矢量的过程,直至的找到透镜边缘,但该过程最多只重复十五次。这个过程对于透镜内边缘94和透镜外边缘96是分别进行的。
一旦一个边缘的位置被探测到,就进行8联缀轮廓程序。矢量以零度角开始,用8联缀法追踪透镜边缘的内、外轮廓线。8联缀法可以保证任何属于边缘的象素将被包括在最终的轮廓线中。为了确定某一象素是否属于边缘的一部分,使用一个灰度阈值,对于内边缘,采用“inner-thr”参数,对于外边缘,采用“outer-thr”参数。
如果刚刚进入的象素是一个边缘象素,运算程序采取右手转弯,如果刚刚进入象素不是一个边缘,运算程序采取左手转弯。当遇到特别的周边时,检查对角线的象素。由于追踪内、外边缘所用的编码是同一个,因此在内边缘追踪时采用顺时针方向,对于外边缘追踪采用逆时针方向。
当完成之后,透镜边缘由大约6000个象素构成,3000个在内边缘,3000个在外边缘。如果象素的数目不在限定的范围之内,算法程序就决定,某透镜未被发现,然后或者重复先前的过程,或者否定该包装。
对于边缘上的每一个象素,其一组信息被存储在一个阵列结构中。这些信息包括其径向和角度位置,梯度灰度水平,缺陷类型和严重程度。这时在算法程序中不是包括了所有的透镜阵列信息,但是为了将来的使用存储工作要配合进来。如果一个象素被发现是边缘的一部分,对其进行从直角坐标到极坐标系的转换。直角坐标系和极坐标系的原点是开始定位透镜的园心。下面的方程式表示出完成转换的方式,其中的θ是角度,r是半径。
θ=arctan[(透镜园心行数-象素行数)/(象素列数-透镜园心列数)]R=[(象素列数-透镜中心列数)2+(透镜中心行数-象素行数)2]+2
θ从位于0.0到360.0度的一个浮动带小数点的值被转换成位于0到8191范围内的一个整数,可用13比特表示,213。R在开始也被计算成一个浮动小数点的值,被舍位成为一个整数。然后,每个象素的半径和角度位移被存入一个大的阵列结构。更经济起见,进一步的处理将仅仅针对在这个大阵列中发现的6000个左右的象素。
在下面的附图中,透镜的边缘是以图画方式表示的,然后运算是由算法程序在数字域中进行的。
见图12,所示为加强的透镜边缘的图象,图12a是在直角坐标系中,图12b是在极坐标系中。由于边缘已经被发现并且被追踪,该图中删去了处理环。图12a和图12b给出了透镜内边缘94和透镜外边缘96。在图12画出的操作中,边缘的不连续性由边缘的缺陷、薄边缘或者边缘加强操作引起的变异而导致。不考虑引起的原因是什么,需要探测和修补这些不连续,以便能够处理边缘剩下的部分。
探测不连续性是这样进行的保持已经被追踪的象素中最远的那个象素的角度位移,将它与正在被处理的象素的角度位移进行比较,如图12b所示,如果最远的象素112和本象素之间产生的角度与追踪的方向反方向,而且它大于“bktrk-degs”参数规定的角度,则探测到了一个不连续处。这一点如图12b的114点所示。
当探测到一个不连续之后,算法程序利用最远的那个象素作为参照物进行搭接。进行不连续性搭接的开始步骤是使用外推法技术,它能够搭接1到3个象素的缺口。外推法采用到达不连续处之前正在运行的方向。
在某些情况下,边缘上的缺口大于3个象素,因此不能用外推法搭接。参见图13,在这种情况下,对外推法不能够闭合如11b这样的断开之处,可使用跳跃技术。跳跃技术取不连续处的角度位置,沿着搜索的方向旋转“gap-angle”参数规定的度数,并且建立一个搜索矢量,以寻找不连续处的另一侧。
搜索矢量从处理环的内部开始搜索,并根据不连续处的角度位置,分别沿行或列搜索。搜索一直进行下去,直至遇到一个边缘象素,或者到达处理环的外边缘。如果在搜索过程中没有发现边缘象素,该透镜将被认为严重扭曲变形而被否定。一个不连续处无法用外推法进行搭接的事实指示出一个缺陷的存在,一个“跳跃搭接”被识别为一个特征。从最远的象素开始被处理直至发现不连续处的所有象素都被从轮廓线阵列中被消除,因为它们在边缘追踪时代表退回。
有时透镜边缘的某一部分断裂成这样的片断以至于对某一不连续点的搭接点使得整个追踪处理程序被置于边缘的某一独立的片段上进行,如图13a中的118。在这种情况下,一般探查不连续性的方法不再有效,因为追踪程序不可能掉头折回所需要的量。为了克服这种异常,使用了一种特殊的探查技术。这种技术将不连续处被搭接后马上把插入的象素的行和列数保持下来。如果进一步的追踪四次经过该插入象素,就探查到一个小的、分离的边缘部分。在这个断裂段上发现的最远的象素,被用来作为进行另一次搭接的位置。在图13b中表示出一种情形,其涉及复合搭接120和接着进行的如前面所讨论的“跳跃搭接”116。
对复合的分离的各段进行搭接是一项重复过程,需要多少次,就进行多少次,以便使断裂的各段连结上。每次重复首先尝试外推法搭接然后是跳跃搭接。
当边缘已经被追踪之后,并且所有的缺口被搭接之后,算法程序从每个边缘轮廓线上所发现的象素中提取六个不同的特征。这些特征是这样的径向偏差(RD)定域内梯度偏差(LGD)空间偏差(SD)不连续性(D)下降定域内梯度偏差(DLGD)单向定域内梯度偏差(ALGD)最后两个特征与定域内梯度偏差有关,增加它们是为了辨别一些非此无法探测到的特定类型的缺陷。
对每一个特征计算出的数值与阈值进行比较。所有的阈值作为用户参数都是可得到的。如果某一个特征值符合阈值标准,则该象素根据该特征被归为有缺陷的。有可能同一象素根据多项特征被归为有缺陷的。
参见图14,所示为一种加强的边缘,图14a是位于平面坐标系,图14b位于极坐标系,该边缘具有可归入径向偏差一类的特征。径向偏差是指感兴趣象素的半径偏离开标称半径的距离。如果偏差等于或大于参数“rad-dev-thr”规定的值,则该象素被认为有缺陷。标称半径被定义为感兴趣的象素之前的250个和之后的250个轮廓线象素的平均半径值。如果某一象素因为径向偏差被归为有缺陷,则该偏差值被保留下来作为严重程度的指标。图14a和图14b给出了透镜内边缘94和透镜外边缘96。此外图14b还示出了按上述方法计算出来的内、外边缘的理想半径。图14b还示出了三个径向异常特征的例子,124、126和128。用于完成径向偏差特征提取的方程式如下所述
R=半径值,i、n、m=外轮廓线索引数。
如果(RD>=阈值或RD<=-阈值)则感兴趣的象素是有缺陷的。
下一个要提取的特征是定域内梯度偏差。LGD所看的是感兴趣的象素的梯度值与其定域内相邻象素的平均值的偏离值。相邻象素是指那些在边缘轮廓线上的并最靠近感兴趣的象素的那些象素。参见图15,感兴趣的象素用i代表。根据LGD判断一个象素是否有缺陷的阈值是参数“grd-dev-thr”。下面的方程表示该特征实现的实际形式
其中,G=梯度值i、n、m=外轮廓线索引数。
如果(LGD>=阈值)则感兴趣的象素为有缺陷的。
这个提取定域内梯度偏差的过程由图1.6示出。图16a是示意性示出加强的透镜边缘,图16b是极坐标系中的梯度信息。如同图16a所示定域内梯度偏差134仅仅发生在加强的透镜边缘图象的边缘,当被追踪并在极坐标系中显示时,它呈现为不成对的不规则性136。如果某一象素被根据LGD归为有缺陷的,则偏差量被保持下来作为严重程度的指标。
特征提取的下一特征是不连续性。如前面所讨论的,不连续性缺陷是由利用跳跃搭接法搭接边缘引起的。在特征提取中它的识别是通过看一个象素与其下一个象素之间的角度位移差。不连续性不包含任何严重程度的指标信息,仅仅指出发现了一个跳跃。不连续点两端的起始象素都被认为是有缺陷的。
下一个要提取的特征是下降定域内梯度偏差。下降定域内梯度偏差类似于已提取的定域内梯度偏差特征。类似于LGD、DLGD看的是感兴趣的象素的光强梯度值与其定域内的相邻象素的平均值之间的偏离量。其区别是,所采用的相邻象素数更多,而且在感兴趣的象素周围的一个较大距离内的象素不被采用。DLGD被设计使得只对光强梯度小于其相邻象素的偏差值敏感,因此被称为“下降”定域内梯度偏差。
用于测定某一象素是否因为DLGD而有缺陷的阈值取自参数“dip-lgd-thr”。下面的方程式表示这个特征的实际实现方式
其中,G=梯度值i、n、m=外轮廓线索引值。
如果(DLGD<=阈值)则感兴趣的象素为有缺陷的。
DLGD特征被特别用于识别其它特性无法识别的边缘小裂口。如果某一象素根据DLGD被归入有缺陷的一类,则其偏差值被储存下来作为严重程度的指标。
另一个要被提取的特性是单向定域内梯度偏差(ALGD)。在提取该特征时,用于计算偏差的相邻象素取自感兴趣象素的同一边。感兴趣象素之前的20个象素被用于算出相邻象素的平均值。但是前面四个紧挨着感兴趣象素的象素不予采用。ALGD看的不仅有正的梯度偏差也有负的梯度偏差。
用于进行比较的存储在参数“aux-lgd-low”和“aux-lgd-up”中。下列方程式表示出ALGD特征完成DLGD=Gi-1+Gi+Gi+13-(Σn=i-25i-5Gn)/20]]>其中,G=梯度值i、n、m=外轮廓线索引值。
如果ALGD=上阈值或下阈值ALGD<=阈值则感兴趣的象素是有缺陷的。
最后一个提取的特性是空间偏差(SD)。空间偏差所测量的是半径相对于角度位移的变化。如果在一个小的角度范围内半径发生急剧变化,则有可能出现了一个缺陷。图17a表示出一个平面坐标系中的加强的透镜边缘,图17b被转换成了极坐标,表示出内透镜边缘94和外透镜边缘96的理想半径122。
图17b中画出了空间偏差特性136,以及它的半径138相对于角度140的变化。
空间偏差的完成由下列方程给出△R=(轮廓象素i+2的半径-轮廓象素i-2的半径)其中,△R=半径的变化i=感兴趣的象素的索引△θ=(轮廓象素i-2的角度位移值-轮廓象素i+2的角度位移)其中△θ=角度位移的改变i=感兴趣的象素的轮廓线索引SD=△R/△θ如果(SD>=正阈值或SD<0)则感兴趣的象素是有缺陷的。
如果某一象素根据以上方程的结果被归为有缺陷的,不保留任何严重程度指标信息。算法程序的进一步处理仅根据这样的事实即象素已根据SD被视为有缺陷。
将缺陷分组包括三个步骤。前两个步骤分别单独在内或外边缘上进行,最后一个步骤将来自内外边缘的信息结合起来。在内外边缘的分组处理完成以后,对所得的相近组进行比较,以便观察来自内边缘的组中间是否应与来自外边缘的组相结合。如果出现这样的合并,就形成了一个混合缺陷组。
开始步骤是逐个象素地观测每个缺陷象素,并判断它是否属于一个较大缺陷的一部分。如果一个象素被确认是一个较大缺陷的一部分,则它将被放入一个叫作缺陷组的结构中。
第二步确认这些缺陷组中是否有一些应当被相互结合以形成较大的组。最后一个步骤是将内外缺陷组互相比较,以判断它们是否应当相结合。其结果是,可能出现的最大的那个缺陷组代表透镜的可能缺陷。这一点又能够最精确代表真正的缺陷程度。更清楚地说,复合缺陷比单个的缺陷更为严重,并且仅仅出现在较严重的边缘缺陷中。
如前所述,该过程的开始是逐个象素的分组。第一个遇到缺陷象素被自动放在一个单独的象素缺陷组以开始该过程。后续的缺陷象素的角度位移与目前正进行处理的缺陷中最远的象素进行比较。如果象素处于参数“prox-zone”规定的角度位移之内,它被放在该组之内,该组的最远角被加以修正。如果缺陷象素未落入该正在被处理的组中,则认为遇到了一个新的缺陷。结果是,一个新的仅仅包含有现行缺陷象素的缺陷组被建立起来,并成为目前进行处理的组。该过程一直持续下去,直到所有的边缘上的缺陷象素被检查出来为止。
如果轮廓线上的非缺陷象素被发现处于被放入同一个缺陷组的缺陷象素之间,它们也要被包括该缺陷组之中,并且被归入分组类型的缺陷象素而不再是非缺陷的象素。
分组过程的第二个步骤是如下所述。同一个缺陷有可能被二个以上的缺陷组表示。为了排除这种混乱状况,为所有边缘上发现的缺陷组制订了一个处理数据体的循环。进行两个比较。一个比较针对一组的起始角度位移和另一组的结束角度位移进行比较检验。第二个比较将同一组的结束角度位移与另一组的起始角度位移进行比较检验。如果两个比较中有一个的结果即角度位移的改变小于“prox-angle”规定的数量,这两组被合并。一组的起始角度如果与另一组的结束角度相当接近,则前一组被包括在该组之内。被包括的组将其信息进行转换然后被无效掉。
最后,在角度上与内外边缘缺陷相对应的缺陷组被组合在一起。这个分组与单独在内外边缘上进行的分组是类似的。对各组的起始和结束位置进行对比。再额外进行一个对比来确定某一组是否完全被另一组所包围。如果任何这些比较导致一个合并,则建立一个包含被合并的两个缺陷组的信息的单独结构,这两个原来的组被无效掉。
在缺陷象素被识别出来并且上述分组操作已完成以后,对每个缺陷组赋以严重程度指标分数。严重程度指标分数是对该组内所有象素所赋以的分数的总和。当同一个象素被两个以上的缺陷类型归入有缺陷的一类时,其结果是那个特别的象素具有几倍的分数。
每一种缺陷被赋予一个权重,它可以允许不同的缺陷相对而言具有不同的严重程度。所有权重的数值可以由用户手中的参数进行控制。RD、LGD、SD、D、DLGD和ALGD的权重可以分别在下列参数中找到“rd-weight”,“lgd-weight”,“SD-weight”,“disc-weight”,“dip-lgd-wgt”和“aux-lgd-wgt”。
与其它三种缺陷不同,RD、LGD、和DLGD对每个给定的象素保留了严重程度的信息。对这些严重程度信息进行规范处理,并乘以被赋给缺陷象素的缺陷类型权重。进行规范化处理是因为不同特性的数值的范围各不相同因而是不可相比的。在规范化处理之后,每个权重后的分数将落在1.0到2.0的范围之内。规范化的范围是通过所使用的阈值的数值和该特性所能获得的最小或最大理论值求得的。
作为一种实施例例子,如果某个象素的特征与标称值相同,它的权重后的分数为1.0。相反,如果某个象素的特征与可能的极小值或极大值相同,则权重后的严重程度分数为2.0。径向偏差和定域内梯度偏差的最大理论值分别由“max-rd”和“max-lgd”中发现的参数值确定。下降(Dip)定域内梯度的最小理论值可在参数“min-dip-lgd”中找到。
SD、ALGD、组和D类型缺陷不进任何形式的规范化。“不连续性”和“组”是布尔型缺陷,其数值为1或0。空间偏差和ALGD不包含值得保存的足够的严重程度信息。
对六种缺陷类型的每一种,下面给出了象素缺陷严重程度方程式,以及任何适当的规范化处理和权重。
RD分数=(1.0+(象素RD的绝对值-RD阈值)/(RD的最大理论值-RD阈值)))*rd-weight其中,RD分数-RD分类赋于某一象素的全部分数,象素RD值=感兴趣象素的RD特性值,RD阀值=用于是否存在一个RD缺陷的阈值RD最大理论值=RD特征的最大可能值
rd-weight=与RD缺陷类型相关的权重。
LGD分数=(1.0+(象素的LGD值-LGD阈值)(LGD的最大理论值-LGD阈值))*lgd-weight其中,LGD分数=LGD分类赋予某一象素的全部分数,象素LGD值=感兴趣象素的LGD特征值,LGD阈值=用于判断是否存在一个LGD缺陷的阈值,LGD最大理论值=LGD特征的最大可能值,lgd-weight=与LGD缺陷类型有关的权重。
DLGD分数=(1.0+(象素DLGD值-DLGD阈值)/(DLGD最大理论值-DLGD阈值))*dip-lgd-weight其中,DLGD分数=DLGD分类赋予一个象素的全部分数,象素DLGD值=感兴趣的DLGD特征值,DLGD阈值=用于判断是否存在DLGD缺陷的阈值,DLGD最大理论值=DLGD特征的最大可能值,dip-lgd-weight=与DLGD缺陷类型相关的权重。
SD分数=Sd-weight其中,SD分数=SD分类赋予一个象素的全部分数,Sd-weight=与SD缺陷类型相关的权重。
组分数=grp-weight其中,组分数=组分类赋于一个象素的全部分数,grp-weight=与组缺陷相关的权重,
Disc分数=disc-weight其中,disc分数=不连续性分类赋予一个象素的全部分数disc-weight=与Disc缺陷有关的权重。
ALGD分数=aux-lgd-wgt其中,组分数=组分类赋予一个象素的全部分数,aux-lgd-wgt=与ALGD缺陷有关的权重。
如上所述,当象素电平判断已完成以及有缺陷的象素被放入缺陷组中之后(这包括合并重叠的缺陷,将相近的缺陷分组,对内外边缘上的位于同一角度位移的缺陷分组),一个缺陷组严重程度分数被计算出来。这个缺陷组严重程度分数表现出所有缺陷类型所赋于的全部严重程度分数,并且是通过以下方程计算的“缺陷组”严重程度分数=∑RD分数+∑LGD分数+∑DLGD分数+∑SD分数+ΩΩΩΩ∑Disc分数+∑组分数+∑ALGD分数ΩΩΩ其中“缺陷组”严重程度分数=所有在该组内的缺陷象素赋予“缺陷组”的所有分数,Ω=包括在一个给定“缺陷组”之中的所有象素的总和当上述计算做完之后,通过一个可由操作者进行定义的抛物线函数对每一个缺陷组进行加权。抛物线函数对于较大的缺陷给予一个相应大的严重程度分数。例如,一个比两个较小缺陷大两倍的缺陷其最终的严重程度大于两个较小缺陷之和。
加权函数记载在以下方程式中加权的“缺陷组”严重程度分数=a_系数*(“缺陷组”严重程度分数)+b_系数*(“缺陷组”严重程度分数)其中,a_系数=定义抛物线加权函数所用的计算参数b_系数=定义抛物线加权函数所用的计算参数,所得的加权后的分数随后被换算,以便它落入0到999的范围。换算系数是由下列方程求得的换算系数=999.0/最大加权分数其中,最大加权分数=a_系数*(最大_分数)2+b_系数(最大_分数)其中,最大_分数=可由操作者根据经验定义的参数值缺陷组的分数大于999的部分被舍掉。所有缺陷组分数的总和是一个给定透镜的最后得分。如果该分数大于或等于阈值(作为运算参数可得到)则该透镜被废弃。否则,透镜是合格的。
虽然透镜分数的最终结果是透镜通过检验或通不过检验,但是所有的中间数据、计算值和分数都是可得到的,以便为考虑透镜的质量和在透镜上观察到的特性的类型提供信息。
对于一个本领域普通技术人员来说很清楚,该信息可以作为按透镜数的统计信息随透镜给出,或者作为可视输出在计算机监视器上给出。
上述算法是在上述设备上完成的,并且眼用透镜得以检验。这些透镜包含58%的水,是Johnson & Johnson Vision Products AcuvueTM的软质水凝胶隐形眼镜。在第一次检验中涉及128只透镜。
首先,由熟练的生产线透镜检查员使用图象放大系统对这些置于去离子水中的透镜进行检验。检查员把每只透镜分成合格和不合格,并且对每个缺陷辩别出其缺陷种类。
当使用本文描述的自动检验系统对透镜进行检验时,每个透镜被人工放置在检验包装盒的中央,以避免出现照明问题。
当自动检验系统摄取了全部128个透镜的图象之后,与人检验员相比发现有25分的偏差。机器检验和人检验透镜之间的比较结果在表Ⅰ中给出。
表Ⅰ机器/人工检验汇总1数量百分比透镜的总数128100.0一致10380.4不一致2519.5机器过于否定:
由于光照75.5人眼不曾发现53.9机器过于否定的总数129.4机器过于肯定:
由于光照64.7被冲洗掉的缺陷43.1未被机器发现的小缺陷32.3机器过于肯定的总数1310.1虽然结果暗示,机器检验的不正确率为19.5%,其时有12例(9.4%)机器过于严格而且否定了检验员已通过的透镜。即机器拒绝了。还有13例(10.1%)机器过于肯定,而通过了检验员已经认为是坏透镜的透镜(即,机器认可了。)在机器过于肯定的情形,可以看出机器检验系统的透镜光照没有充分调节,但能够被调整。在机器过于否定的情形,可以看出机器参数的设定过于敏感,需要调整。然而,没有一个大缺陷逃脱探测,而且大多数漏掉的缺陷的尺寸都是位于边缘的,小于50微米。没有一个半拉透镜或缺少的透镜逃脱检查。
在十二个机器过于否定的情形中,由于光照的问题,造成七个图象边缘的薄弱,有五种情形是缺陷真实存在,但没有被检验人员看到,但是被机器也被第二个检验人员看到了。在十三种机器过于肯定的情形,四个透镜不再有缺陷,或者是由于外来的因素将其冲洗掉了。六个图象由于照明的问题具有弱的边缘,三个透镜上具有的缺陷太小,以至检验人员看不见。
因此,在被检查的128个透镜中,大约20%与人工检验不相符合。在这些错误中,56%属于照明引起,36%属于检验人员的错误或者在处理过程中透镜情况的改变引起,12%是不正确的判断。这12%相当于仅有2.3%的总体不正确判断。
由于不一致判断的大多数是由于照明问题引起,故进行了一个调查,发现光源的不均匀,特别是过度光照,导致透镜边缘被冲淡缺陷不可见。
导致人和机器检验之间不一致结果的另一原因是透镜在人工检验和机器检验过程中都没有被搅动,从而水中的颗粒和透镜上的缺陷之间的区别不容易很明显。
通过采用一个更均匀和漫射的照明光源可以改进透镜的照明。当照明改进之后,机器检验了128个另外的透镜。在这个检验方案中,
表2机器/人工检验汇总2数量百分比透镜总数128100.0正确9876.6不正确3023.4机器过于否定未聚焦的图象107.8由于照明53.9透镜上污物32.3污染的透镜10.8不连续性10.8未知的21.6错误不否定总数目2217.2不包括未聚焦情况的总数129.4机器过于肯定:
由于照明00小缺陷75.5冲洗掉的缺陷10.8错误肯定的总数86.3
每个透镜有两个图象被机器摄取,并与检验人员的检验报告进行对比。机器检验结果和人工检验的结果在表Ⅱ中给出。
如同可从表2中给出的数据是所看到,一个否定的新种类,“未聚焦的图象”被发现。这是由于透镜不适当地放置在照相机下,导致其一部分处于焦距之外。作为系统性能的测试,未聚焦的图象不是可靠性的指标,而是一种操作失误,那些数据点可以适当地去除去。
不考虑错误放置透镜引起的焦距问题,检验人员和机器不符合的透镜百分率只有15.6%。这相对于第一次的128个透镜来说是一个3.9%的提高。
在第三次对比实验中,192只透镜先由人工检验,然后用机器检验再次。其结果与前面的实验相似。在总共384个图象中,317只,82.6%与人工检验相一致。作为对处理算法和所得结果分数一致性的测定,机器摄取的两个图象都被机器处理,其中有84%的情形,第二次运算操作的分数与第一次的相同。
虽然检验被设计成首先用于检验透镜的边缘,但因为用于定位透镜边缘的搜索矢量,缺失的透镜也能够被发现。因为透镜边缘搜索程序进行数次,有孔洞的透镜能被探测到,多余的碎片能被发现,有边缘裂口的透镜也能被发现。
在下面的表3中,给出了第三次检验的结果,其中分成了“机器过于否定”、“机器过于肯定”和正确的数目。机器检验中仅有8.1%的错误否定和9.4%的错误肯定。
前两个托盘的结果比后面四个的要坏,这是因为水中发现已经有尘埃污染。因此,这不是系统性能的表现。
总之,检验人员和机器相符合317次,不符合67次。考虑到从检验的观点来看,一致性和机器的否定判断是可以接受的,透镜处理具有90.6%的精度。
权利要求
1.一种检验眼用透镜的方法,包括用至少一电磁频率,获取一幅透镜的图象,该图象分成多个象素组,每个象素代表透镜的一部分;将象素的强度值转换成相应的电信号;给每个象素分配一个位置值和一个图象强度值;在象素之间比较位置值和图象值,以建立象素关系;从象素关系识别对应透镜特征的象素组;将所说组中的象素关系与预先建立的关系进行比较,以确认透镜是否可接受。
2.按照权利要求1的方法,其中象素之间比较是沿着透镜边缘的轮廓这样一条路径进行的。
3.按照权利要求1的方法,其中特征的识别包括采集具有形成象素组特性的象素。
4.按照权利要求1的方法,其中比较是在包括有透镜边缘的象素组之中进行的。
5.按照权利要求1的方法,其中比较是在包括有透镜内部部分的象素组之中进行的。
6.按照权利要求2的方法,其中透镜边缘首先被如此定位,即从接近象素组中心的点起动延伸到象素组的边缘,直到发现一个具有透镜边缘强度值特征的象素。
7.按照权利要求6的方法,其中靠近具有透镜边缘强度值特征象素的其他象素跟随着具有透镜边缘强度值特征的相连象素组的轮廓,以确定该轮廓是否为透镜的边缘,
8.按照权利要求4的方法,其中处理环被设置在透镜边缘附近,以限制要处理的那些靠近透镜边缘的象素数目。
9.按照权利要求4的方法,其中包括透镜边缘的象素组进一步被分成两个子象素组,以完成所说的比较,一个子象素组包括从透镜内部到透镜边缘不转移,而另一个子象素组包括从透镜外部区域到透镜边缘的转移。
10.按照权利要求9不方法,其中所说比较是在包括从透镜内部到透镜边缘转移的子象素组的象素之间进行的。
11.按照权利要求9的方法,其中所说的比较是在包括从透镜外部区域到透镜边缘转移的子象素组中的象素之间进行的。
12.按照权利要求9的方法,其中所说的比较是在两个子象素组之间进行的,一个子象素组包括从透镜内部到透镜边缘的转移,另一个子象素组包括从透镜外部区域到透镜边缘不转移。
13.按照权利要求4的方法,其中所说被比较的关系比较在形成透镜边缘的象素处之间断的。
14.按照权利要求4的方法,其中所说的被比较的关系在形成透镜边缘的象素的强度上具有梯度偏差。
15.按照权利要求4的方法,其中所说的被比较的关系在形成透镜边缘的象素的位置上具有放射状的偏差。
16.按照权利要求4的方法,其中所说的被比较的关系在形成透镜边缘的象素的位置方法具有螺旋状的偏差。
17.一种检验眼用透镜的方法,包括至少在一个电磁频率上摄取一幅眼用透镜图象,所说图象包括象素,将图象转移成每个象素的一组电学值,在图象中选择一个启动象素作为感兴趣的象素,A)确定该感兴趣的象素是否具有特定的特征,B)对于没有特定特征的感兴趣的象素1)沿着横跨透镜边缘的路线,将该感兴趣象素改换为另一个象素,以及2)重复步骤A)C)对于具有特定特征的感兴趣象素3)将该感兴趣象素的电学值与邻近象素的电学值进行比较,4)将该感兴趣象素改换为对特定特征具有最佳校正的邻近象素,5)重复步骤3)和4),直到感兴趣象素完全代表该特性。6)确定由步骤C)所聚集的象素组是否代表了透镜的边缘,D)对于那些不代表透镜边缘的象素组,重复步骤B),以及E)对于那些代表透镜边缘的象素组,将象素组之间的关系与预定的关系进行比较,以确定透镜是否可接受。
18.按照权利要求17的方法,其中电学值包括位置和图象强度。
19.按照权利要求17的方法,其中启始象素定位地透镜的中心附近,而横过透镜边缘的路线是从透镜中心延伸出来的一条射线。
20.按照权利要求19的方法,在步骤D)中进一步包括将不代表透镜边缘的象素组与预定关系进行比较的步骤,以确定该透镜是否可接受。
21.按照权利要求18的方法,其中特定的特征在图象强度方面有变化。
22.按照权利要求19的方法,其中透镜的大概中心是如此确定的,即在具有边缘特征的至少三个点的组中至少取一个组。
23.按照权利要求17的方法,其中电学值包括位置和图象强度值。
24.按照权利要求23的方法,其中特定的特征是图象强度梯度的绝对值。
25.一种用于检验与评价眼用透镜的装置,包括一个用于照亮透镜的光源;一个摄象机,用于摄取一幅被光源照射的透镜的图象,该摄象机包括一个接收器,其中的图象由许多象素组成。转换装置,用于将在每个象素处投在接收器上的光转换成相应于投在象素上的光强度的电学值。存储装置,用于将与每个象素相关的电学强度值以及与这象素在接收器场上的位置相关的值一起存储到存储器中。一个数字计算机,与存储电学值和位置值的存储器联接,并能恢复这些值,该计算机包括用于在象素之间比较强度和位置值的指令,以识别包括一组象素的透镜的特征,该计算机进一步还包含有关反映透镜是不可接受的特征的指令。
全文摘要
一种眼用透镜的检验方法和包括摄像机的设备,每个像素光强和位置转换成电量存于存储器。计算机从接收器视场中心至边缘进行光强和位置比较,直至有强度偏差。评价强度变异的像素,获得透镜边缘的轮廓线。建立包围透镜边缘的环形区。所有的像素从绝对光强值变为梯度值,由两个转换边缘所体现。进行特性提取,定位有缺陷的像素、分组。根据其中缺陷像素的数量、性质打分。据此对透镜加权打分,判断合格与否。
文档编号G01M11/02GK1092166SQ9311989
公开日1994年9月14日 申请日期1993年12月21日 优先权日1992年12月21日
发明者J·A·伊贝尔, P·赛斯 申请人:庄臣及庄臣视力产品有限公司