检验眼用透镜的方法

文档序号:6091246阅读:304来源:国知局
专利名称:检验眼用透镜的方法
本申请与下列同时提出的审查未决的序列申请有关申请号为的“自动检验眼镜片的方法和系统”;申请号为的“镜片检验系统用的照明及成象子系统”;申请号为的“一种镜片检验系统”,以及申请号为的“用于承载眼镜片的装置”。
本申请的发明总的说来涉及检验眼用透镜,诸如接触透镜等的检验系统,更确切地说是涉及使照明光束直接通过透镜从而产生图像的透镜检验系统。
典型的接触透镜总是以高的准确度和精确度制造出来的。但是,偶尔个别的透镜可能包含某种不规则性;出于这个原因,接触透镜在销售给用户之前要进行检验,以使用户确信该透镜对于用户的使用说来是可接受的。
在已有技术的一种透镜检验系统中,众多的透镜被放在一个透镜运载器中,运载器携带每个透镜移动,依次通过透镜检验位置,在那里使照明光束透过每一透镜。然后,将该照明光束聚焦在一屏幕上以在屏幕上产生透镜的像,而操作者观察该图像以确定该透镜是否含有任何不规则的部分。如果发现有任何不规则或缺陷使该透镜不适合用户的使用,就将该透镜从检验系统拿走或打上标记,使之不在其后销售给用户。
在这个已有技术的系统中,照明光束实际上固定不变地透过透镜检验位置,而透镜运载器则通过一系列不连续的步骤移动使每一透镜定位在透镜检验位置上。具体地说,当照明光束透过第一透镜的同时,透镜运载器就保持在一个实际上固定的第一位置处,而后透镜运载器移动并保持在一个固定的第二位置时,使照明光束透过第二个透镜。多次重复这种步骤,直到运载器中所有透镜都被检验完为止。
这种已有技术的检验系统是十分有效且可靠的;但是,系统检验速度较慢而且也较为昂贵。这是因为人工的操作者必须集中精力注视屏幕上的所产生的透镜图像,并要检查整个图像以发现任何不规则。因此,该已有技术是能够得到改进的;尤其是通过采用图像处理设备对所产生的图像进行分析,以确定透镜是否包含有任何不规则,这可降低透镜检验费用而又能提高检验速度。
本发明的目的在于改进检验眼用透镜的方法。
本发明的另一目的是产生透镜的图像,并使用图像处理设备对该图像进行分析以确定透镜是否包含有任何不规则。
本发明的又一个目的在于使大量的透镜沿一预定路径连续地移动,将每个透镜一次一个地移入透镜检验位置;而每当透镜之一移入透镜检验位置时就相应地产生一个光脉冲,并使该光脉冲透过处在透镜检验位置中的透镜以产生该透镜的像。
本发明的上述以及其它的目的用一种检验眼用透镜的方法来得到实现,这种方法包括使大量透镜沿一预定路径连续移动,将每个透镜一次一个地移入透镜检验位置的步骤。每次透镜之一移入透镜检验位置时,光源受到激发而产生单个的光脉冲,该单个光脉冲直接通过一个透镜而照在一象素阵列上,这些象素就产生各自的一组代表入射在该阵列上的光强度的信号,而按照预定的程序对该组信号进行处理以至少确定透镜的一种状态。
最好是将这些透镜的每一个定位在透镜运载器的一个位置上,然后沿着预定路径连续移动透镜运载器使大批透镜的每一个移动通过透镜检验位置。
以下参照限定并表示本发明最佳实施例的附图所给出的详细说明,将使得本发明的好处和优点更为明了。


图1简要说明了用于自动检验眼用透镜的系统。
图2是一种可由图1系统检验的眼用透镜的平面图。
图3是图2所示透镜的侧视图。
图3A是示于图2和3中透镜的边缘部分的放大图。
图4是用于图1的透镜检验系统中的输送子系统的更详细的平视图。
图5是用于图1系统中的透镜运载器的平视图。
图6是示于图1中的透镜运载器侧视图。
图7是概要说明称为暗视场照明的照明技术原理的简图。
图8是图1所示的透镜检验系统的照明和成像子系统的详图。
图9表示成像子系统的像素阵列的一部分。
图10表示当图2和图3所示的眼用透镜正在图1所示的透镜检验系统中受检验时,在象素阵列上所形成的图象。
图11A,11B,11C表示可用于照明和成象子系统的三种不同的光路结构。
图12A说明透镜检验系统的控制子系统的工作。
图12B是说明在输送,照明、和成象子系统工作时各种事件发生次序的时序图。
图13图解说明透镜检验系统的数据处理子系统。
图14是和透镜检验系统一起采用的特定的数据处理程序主要部分的一般说明,图15表示在透镜检验系统的象素阵列上所形成的一个眼用透镜的图像。
图16A和16B是根据不共心试验的透镜检验程序的流程图。
图17A是与图15相同的表示在象素阵列上所形成的眼用透镜的图象。
图17B是图12A中的环形部分放大图。
图17C是在穿过图17B的线段上的某些象素受照明强度的曲线图。
图17D-17I图解说明为了得到有助于识别图17A所示的环状物边缘的处理值而对那些一定的图素的照明强度值进行各种处理的结果。
图17J表示在这些处理的照度值中受照明象素阵列的象素。
图18是说明为处理象素阵列的象素所确定的初始照明强度值的最佳程序的流程图。
图19A-19C说明对象素阵列的象素数值进行掩模处理的结果。
图20说明一优选校正程序的流程图。
图21A和21B说明称为胶带运算的另一个处理程序。
图22表示用来识别行式映象边缘上第一象素的子程序。
图23是对胶带运算的第一主要部分进行更详细说明的流程图。
图24是当透镜象的外缘发现间隙时所产生的子程序流程图。
图25A-25E表示透镜图象外边缘的部分并指出每该边缘有关的各个象素。
图26是当在透镜象外边缘发现附加碎片时引用的子程序流程图。
图27表示图23提出的程序完成之后引用的程序。
图27表示图23提出的程序完成之后引用的程序。
图28是更详细的表示胶带运算的第二主要部分的流程图。
图29表示透镜图象一部分的外缘,并示出用于胶带运算第二部分中的数个矢量。
图30是更详细表示胶带运算的第三主要部分的流程图。
图31和32图示说明图30所示程序的两个步骤的结果。
图33表示环形物外缘的一部分,有一些线段附加在该边缘上。
图34A-34E总地说明根据MAX,PMAX,MIN,和PMIN的各种计算的结果。
图35是为了强调或突出透镜边缘中可能有的缺陷而应用于象素数据值的优选程序。
图36说明图35所示程序所得结果。
图37是在象素数据处理中所采用第二校准程序的流程图。
图38A-38C图解说明该第二校正程序及其结果。
图39是为了强调检验中的透镜的其它任何缺陷而适用于象素数据的另一程序的流程图。
图40A-40D图解说明示于图39中程序的计算和结果。
图41A和41B表示用来识别中透镜的任何毛病或缺陷的程序流程图。
图42表示透镜中可能存在缺陷的各种类型。
图1是说明透镜检验系统10的框图;整个系统10包括输送子系统12,照明系统14,成象子系统16,和图象处理子系统20。按照系统10的最佳实施例,输送子系统12包括透镜运载器22和支撑装置24(示于图4中);而照明子系统14包括外罩26,光源30,反射镜32和34。还有,根据本优选系统10,成象子系统16包括摄象机36,光阑40和透镜组件42。更具体地说,参见图8,摄象机包括外罩44,象素阵列46和快门50;而透镜组件包括罩52,一对透镜54和56,以及许多挡光板60。如图1所示,图象处理子系统20包括前置处理机62,主处理机64,以及输入装置,例如键盘66;而最好,子系统20进一步包括存储单元70,影象监控器72,键盘终端74,以及打印机76。
通常,输送子系统12使大量眼用透镜沿预定路径移动,将这些透镜的每一个依次移入透镜检验位置,而图1中表示了一个这样的透镜80处在这个透镜检验位置中。照明子系统14用来产生一系列光脉冲并使单个光脉冲引入光路82并通过那些移动通过透镜检验位置的各个眼用透镜。子系统16产生一组代表透过眼用透镜的光脉冲的选定部分的信号,而后将这些信号传输给处理子系统20。图象处理子系统16来的那些信号并根据预定程序处理那些信号以使至少识别每个被检验透镜的一种状态;而在下面要详细说明的子系统20的最佳实施例中,该子系统确定每个受检验透镜是否可为顾客所接受。
可用系统10来检验各种类型和尺寸的眼用透镜。该系统特别适宜用来检验接触透镜,例如1图2和图3说明的可以由系统10检验的接触透镜84。透镜84通常有半球形状,包括前后表在86和90;而该透镜形成一中心光学区842和外区84b。该透镜具有均匀的厚度;但是,如在图3A详细表示的,靠透镜外边缘处透镜的厚度经环形84c逐渐减少。
图4更详细地说明输送子系统12;而如上所述,该子系统最好包括透镜运载器22和支撑装置24。更具体地说,这个支撑装置包括输送台92和第一与第二步进马达94与96,而输送台依次包括基座组件100和框架102与104。
通常,透镜运载器22用来装载多个眼用透镜,而图5和图6更详细地表示透镜运载器。如图中所示,透镜运载器包括一长方形基座组件106和一系列与基座组件连接的透镜检验槽110。最好,各个槽由一截头锥状侧壁110a和与槽的侧壁边成一体并从侧壁朝下延伸的半球形底部110b构成。另外,每个槽底部最好具有恒定曲率半径,比放在槽中眼用透镜84的曲率半径约大10%,而底部110b的直径比眼用透镜大。而各个槽的侧壁以相对于槽的轴倾斜约20°延伸,各侧壁的厚度最好小于约0.010英寸。
对于图5和6所示的特定透镜运载器22,每个槽110的顶部直径约22毫米;而每个槽的深度最好比要检验的透镜直径大,对于接触透镜说来,其直径通常为20毫米。如图5和6所示,透镜运载器包括3×4个检验槽。正如可由普通技术人员所理解的,检验槽可以排成其它图案;如,可以排成3×3阵列,3×8阵列,4×8阵列,3×10阵列,或4×10阵列。
槽110及基座组件106最好是由透明的材料,例如聚氯乙烯塑料制成的。而且,槽110和基座组件最好是组合浇注成一体并且作得相当薄,这样可降低造价,而运载器经一次使用之后就可进行处理。一次使用之后运载器的处理实际上减少或消除了槽中形成的擦伤,当透镜检验槽重新使用时经常会有这样的情况。因为,如下面描述的,槽上的擦痕可能被看成槽中透镜的缺陷或毛病,可迅速处理的透镜运载器的应用改善了透镜检验过程的精确度。
使用时,每个槽110部分充填一种液态溶液,例如盐水溶液,而各个眼用透镜放在每个槽的底部,完全浸没在该溶液之中。因为槽有上述的形状和尺寸,当透镜放在槽中时,槽就使透镜自动地朝槽底部的中心移动。
再参见图4,支撑装置24用来支撑透镜运载器并移动透镜运载器以便使其中的每个透镜依次地移动进入透镜检验位置。最好,支撑装置24沿着预定的路径连续地移动透镜运载器22,以使透镜84平滑地移动进入并通过该透镜检验位置。例如,可将支撑装置设计成这样,使透镜运载器移动,以便使该运载器的槽110移动,以每次一排通过透镜检验位置,而在该排槽经过检验位置后,支撑装置24使运载器22的另一排槽与透镜检验位置对准。
按照优选的示于图4的支撑装置24,输送台92的框架102由基座100支撑着,以便如图4向右或向左在其上作横向移动;框架104由框架102支撑着以便在其上作如图4的朝上和朝下的移动;而透镜运载器22被支撑在框架104上以便随其移动。步进马达94安装在基座100上并与框架102连接以使该框架移动横过基座组件,而步进马达96装在框架102上并与框架104连接以驱动该后一框架。
支撑装置24中可以采用任何合适的框架102和104以及步进马达94和96。但是,本领域的普通技术人员应该清楚,其它合适的支撑装置也是已知的,而且可以按所要求方式来移动透镜运载器24。
再参见图1,子系统14和16一起产生并而后利用所谓暗视场照明的效果来检验移动通过透镜检验位置的眼用透镜。在这个过程中,象素阵列26上形成了以透过眼用透镜的散射或反射光表征的透镜图象。为了检测出眼用透镜中的缺陷或不规则性可以采用暗视场照明,而且它确实是一种高效的方法,因为实际上眼用透镜的所有缺陷,尤其是某些正常的特征都散射光;而通过使用暗视场照明方法,对于表面缺陷,诸如称为凹坑的,都能迅速,极敏感的检测出来。
暗场照明的原理可以参照照7来理解,图7示出了一个眼用透镜114,准直光束116,一对透镜120和122,一个不透光的光阑124,和象素阵列126。光束116透过眼用透镜114而后入射于成象透镜120。如果照明光束116在入射于透镜114时被理想的准直,则光束将在透镜120的后焦点聚焦。纵使照明光束116完全不受眼用透镜114的影响,该光束在入射于透镜120时也不是完全准直的,而是在透镜120后焦点附近形成一小圆圈,称为最小弥散圆。光阑124位于成象透镜120的另一边,在其后焦点2处,而选定光阑尺寸比由照明光束116在透镜120后焦点上所形成的圆点图象稍大。
因此,在照明光束116没有受到透镜114的任何散射或折射时,就不会有光通过光阑124,而象素阵列126就完全黑暗。但是,透镜114的任何使光偏折而足以绕过光阑124的特征将使一些光入射到象素阵列上。眼用透镜114是位于与象素阵列126的位置在光学上共轭的位置上;因此,如果有任何光越过光阑124,则该光将在象素阵列上形成散射光的眼用透镜的实体图象。
图8表示出在图10中所用的,为了产生而后利用这种暗视场照明效应的优选装置;具体地说,该图较详细的表示优选的照明子系统和成象子系统。如图中所示的,子系统14包括外罩或箱体26,光源30,反射镜32和34,光圈130,电源132,控制回路134,第一与第二可调的支撑装置136和140,以及出射窗142。而子系统16包括摄象机36,光阑40和透镜组件42。更具体地说,摄象机36包括罩44,象素阵列46,和快门50;而透镜组件42包括外罩52,透镜54和56,以及挡光屏60。
子系统14的外罩26为这个子系统的其它元件提供防护包封;而光源30,反射镜32和34,以及光圈130都紧固装在该外罩中。更详细地说,外罩26包括一主要的垂直部分26a和顶部与底部水平部分26b和26c,而光源30定位在该罩的主要部分内部。反射镜32紧固在部分26a和26c的交界处,反射镜34则安置在部分26c中靠近端头处,光圈130安置在部分26c内部,处在反射镜32和34之间。外置26在反射镜34的正上方还形成一开口26d,窗1428就紧固在该开口中。使用时,光源30产生大量的光闪烁或脉冲,并将那些脉冲的每一个投入光路82。反射镜32处在该光路中而使光脉冲通过光圈130投入反射镜34,反射镜34接着使光脉冲朝上,通过窗142,通过透镜检验位置,在图8中标注为144处,而朝向或进入成象子系统16。
最好是将光源30安装在可调节的支撑装置136上以便使由该光源所发射的光的特定方向可以调节,而将反射镜34安装在另一可调节的支撑装置140上以使得从该反射镜反射的光的具体方向和位置都可以调节。具体地说,按照图8所示的子系统14的优选实施例,支撑装置136包括一倾斜的镜台,该镜台紧固在外罩26上并可绕两个相互正交的水平轴转动。另外,按照这个子系统14的实施例,反射镜支撑装置140包括倾斜镜台140a和平动台140b;反射镜34安装在前面的台上、该台依次安装在后面提到的台上。台140b可横向移动,按图8看可朝右或朝左移动,以便使反射镜34的横向位置得到调节;而台140a可绕两个互相垂直的水平轴转动,而使反射镜34的朝向角度得到调整。
成象子系统16接收透过位于透镜检验位置144处的眼用透镜的光脉冲,并产生一系列的代表透过那些眼用透镜的光和选定部分的信号。更具体地说,象素阵列46安放在摄象机罩44之内,快门50的正后方;而象素阵列最好包含许多光传感器,每个传感器能产生独立地一个光电流,各个电流的大小正比于或代表着入射在该传感器上的光的强度。
图9是象素阵列46的一小部分的放大图,具体地显示出象素阵列的许多单个的光传感器。参照该图,这些光传感器或象素,排成具有给定的行和列数目的均匀格栅,例如,该格栅可以由排成一千行和一千列的一百万个象素组成。格栅中,最好是将象素形成大量均匀间隔的行和大量的均匀间格的列;而且,除了沿阵列的每个边缘的那些象素外,每一象素有8个紧靠着的近邻。例如,象素46a就有8个近邻其中,象素146b位于正上方,象素146c位于正下方,象素146d和146e分别位于正在和正右,而象素146f,146g,146H和146i分别位于上偏右,上偏左,下偏右和下偏左。
再参见图8,光阑40和透镜54与56位于快门50前方,而且它们相互之间以及与象素阵列和摄象机快门共轴对准。光阑40位于透镜54和透镜56之间,且实际是在透镜54的后焦面上,而透镜56被定位以使用象素阵列是处在该透镜56的后焦面上。最好将透镜54和56以及光阑40装在罩52之内,然后再将该罩装到摄象机36的前端。另外,最好沿罩体52的长度分隔开地装上一系列挡光屏,这些挡光屏可以是一系列的环状部件,以有助于通过罩体传播的光的准直。
由于透镜54和56以及光阑40的特定位置,使大多数或全部透过要检验的眼用透镜的光束由透镜54聚焦在光阑40上,而因此没有入射到象素阵列46上。但是,透过不规则的眼用透镜部件的一些光,以及透过某些规则的眼用透镜部件的一些光可能产生足够的偏折,从而这部分光由透镜54聚焦而不会落在光阑40上,而绕过光阑而入射到象素阵列46上。另外,透镜检验位置是如在与象素阵列46的位置在光学上共轭的位置上,因此,绕过光阑40传播的任何光就会将对该光散射的眼用透镜的实体成象成在象素阵列上。
这样的暗视场照明技术是对眼用透镜的不规则性进行照明的十分有效的方法;图10显示出透过眼用透镜,具体地说图2和图3所示的接触透镜的光束在象素阵列26上所形成的图象。通过透镜传送的大部分光由于光阑40的阻断而不射到象素阵列上。但是,由于透镜的环状部分84c的不均匀厚度,透过透镜这一部分的光就产生偏折而绕过光阑40并投射到象素阵列26上,在该阵列上就形成了该圆环的图象。透镜84中的其它不规则也在象素阵列上产生被照明的区域。例如,均匀度的细微变化,表在缺陷,诸如凹陷等都可以在象素阵列中看出来。特别是,如果在透镜内部出现小坑,则这些小坑将在暗视场中成亮的轮廓迅速地呈现在象素阵列上;而如果小坑出现在透镜的边缘区域,则该小坑就迅速地以在亮场上的暗线呈现在象素阵列上。而且,由于接触透镜的边缘区带有劈形断面,该边缘区带就使足量的光偏折绕过光阑40,使整个带有暗视场上成一亮的白色园环150呈现在象素阵列46上。
如本领域技术人员可理解的,任何合适的光源,透镜和摄象机都可用于子系统14和16之中。例如,光源30可以是Hamamatsu公司出品的短弧氙闪光灯。这种特殊的闪光灯具有独特的弧光稳定性与寿命和配合,而这种闪光灯的输出在额定值加减2%,寿命达109次的闪烁。
而且,按照实际上已附诸实践的子系统16的实施例,第一成象透镜54是焦距100毫米的消色差透镜,相对于目标,其衍射被限制在透镜的光轴的2.5度角之内,而该透镜54被安装在一经阳极发黑处理的铝管中,管中带有挡光屏60,以消除由管的内壁反射光引起的对比度的降低。第二透镜56是一个标准的50毫米焦距的F-1.8尼康(Nikon)透镜。用于第一透镜54的筒体端头粘贴有一紫外雾
滤光片,该滤光片插入50毫米透镜的外罩中。
不透光的光阑40是一直径0.100英寸的小的塑料园片,并且包括有一粘贴背板以将该光阑固定到适当位置上。合适的光阑可在市面买到,它是用作印刷电路的人造设计图案的粘贴垫片的框板,而这些光阑可以有很多的尺寸。光阑40的优选尺寸随系统10的其它参量而变,而所选定的光阑的大小最好应选得兼顾到对比度,易于对准,和对振动的灵敏的各方面的特点。
用于实际上已构成的子系统16中的摄象机,是一种Videk销售的高分辨率摄象机,而且安装有一标准的尼康镜头。首先将F-1.850毫米尼康镜头56安装到摄象机36上,然后将透镜54的罩插到透镜56上。这种videk摄象机的有效视场是13.8X13.8毫米,因此,比最大的接触透镜的尺寸约大10~15%。为了获得最佳的检验精度,使受检验的眼用透镜尽可能大的占有摄象机36的视场是较好的。因此,通过对要检验的透镜、透镜运载器22的检验槽110进行自动调准中心,可使摄象机的有效析象能力得到最大的利用。
子系统14和16的优选构成有一系列的优点,首先,因为在光路82是弯折的,可使闪光灯30放在距处于透镜检验位置144的眼用透镜有较大距离处,而这样就可在该眼用透镜上产生高度准直的光束。其次,在光阑40上的灯弧的图象大小实际上等于该弧的物理尺寸,乘以(ⅰ)灯30到透镜54的距离与(ⅱ)透镜54到光阑40的距离的比率。示于图8的这种优选的构成也使弧光图象尺寸减小,而容许使用较小的光阑从而也能产生更大的灵敏度。第三,可变光阑130限定了光束82的断面面积,而因此该面积也就是由该光束照明的面积。最好,采用光阑130来调节光束82的断面面积或尺寸,以使得仅仅照射一个约比要检验的眼用透镜的直径在10至15%的园的面积。对照明光束82的大小进行限制,改善了在象素阵列上产生的图象与阵列的其它部分之间对比;而特别是,对光束82的尺寸进行限制的散射光量。这种散射光可能呈现成在象素阵列46上的背景光,从而降低了象素阵列上有用的图象与象素阵列的其它部分之间的对比。
另外,按照子系统14和16的这种优选构成,系统的放大系数(即眼用透镜在象素阵列46上成象的大小与眼用透镜实际大小之间的比率)近似等于第二透镜56的焦距与第一透镜54的焦距之比。实际放大率也与透镜54和56之间的距离,以及要检验的眼用透镜与第一成象透镜54的距离有关。另外,倾斜台140a和平动台140b可以调节以使得反射离开反射镜34的输出光束的中心与成象光学子系统16的光轴重合。
如上所述,成象子系统包含两个透镜54和56,分开的距离近似为第一透镜54的距离。采用两个透镜并不是必须的;但这是有好处的,因为使用两个透镜对子系统14和16的各种参量提供了较大的控制,例如,它消除了该子系统的放大率与后焦面和象平面之间距离的相互影响。
图11A、11B和11C说明另外的光路构成,分别标以总的标号为152、154和156,它们可分别在系统10中采用,以便使光束通过透镜检验位置和处在该位置上的眼用透镜,而落在光阑40和象素阵列46上。
光路152只包含一个透镜160,它同时使成象光束82落在光阑40上并将被检验透镜成象在象素阵列46上。更详细地说,示于图11A的光路包括反射镜162,成象透镜160和光阑40;图中还示出一个透镜支座,表示成164,一个要检验的透镜166和象素阵列46。按照这个光路,光束82或脉冲从光源30射向反射镜162,反射镜162接着使光线通过透镜166并射向成象透镜160。射向透镜160的大部分光由透镜160聚焦落在光阑40上;但是,透镜166的某些特征将使光充分偏折,从而这些受偏折的光绕过光阑40而聚焦在象素阵列46上,在象素阵列上就产生了那些使光绕过光阑40的透镜166的特征的图象。如果摄象机36的CCD屏幕比上面提到的高分辨率Videk摄象机的CCD屏幕更大,则图11A的光路构成可以是较好的光路构成。
按图11B的光路构成154,使光源在光阑40上成象与使要检验的眼用透镜在象素阵列46上成象的功能是彼此独立的。该光路包括反射镜170、透镜172和174以及光阑40;而且图11B也示出透镜支座164、眼用透镜166和象素阵列46。在该光路中,光源30产生的光束82射向反射镜170,而该反射镜使光束82射向透镜172。透镜172使光通过眼用透镜166,而透过透镜166的光的大部分被聚焦在光阑40上。但是,透镜166的某些特征使光偏离光阑40;而这些偏折的光入射到透镜174,透镜174将这些光聚焦在象素阵列46上,在其上产生透镜166特征的图象,这些特征使光线偏斜绕过光阑40。图11B的透镜安排的优点在于,两个透镜172和174的作用是完全独立的。
示于图11C的光路结构156与示于图8的光路的构成十分相象;但是光路156没有包含反射镜32或光阑130。具体说来,光路156包含反射镜176、透镜180和182以及光阑40;而且图11C也显示出透镜支座164,眼用透镜166和象素阵列46。按照图11C的光路布置,光源30产生的光束82射到反射镜176,反射镜使光通过透镜166并射向第一透镜180。射向透镜180的绝大部分光聚焦在光阑40上;但是透镜166的某些特征使光充分偏斜从而这些光绕过光阑40而射在第二透镜182上,而这个透镜182就将这些光聚焦在象素阵列46上。在这个光路中,透镜182将光源成象在光阑上,所成的象与透镜182无关。但是,透镜180和182都与光线在透镜166的任何偏斜而在象素阵列46上的成象有关。
除前述以外,系统10最好包括一个控制子系统,以使照明子系统14和成象子系统16的运转,以及输送子系统12的运转同步;具体说来,使当透镜如在透镜检验位置144中时,激发光源30产生光脉冲,同时打开摄象机快门50。最佳的控制子系统示于图12A中。按照这个优选的控制子系统,每次,透镜检验槽之一处在透镜检验位置时,输送子系统12就产生一电信号。这个信号可以诸如由步进马达94,或由平动台92的另一个驱动装置,或者由一个每次与到达透镜检验位置的透镜检验槽之一啮合的限位开关产生。最好,将这个信号传送到摄象机快门50以打开该快门,而且也传送到一延时电路184以使该电信号延迟一个短的时间,使摄象机快门完全打开,经短时延迟之后,使该电信号然后传送到灯驱动器134,而后驱动器激发点亮光源30。
例如,按照已经形成的系统10的实施例,参照附图12B,当一个眼用透镜处在透镜检验位置时,输送子系统就产生并分别对摄象机36和延时回路184传送一个24伏的脉冲。摄象机快门就相应于该脉冲的前缘而打开,而经过9毫秒时间完全打开。延迟电路使传送给灯驱动器134的信号延迟约15毫秒。经这段延迟之后,该触发脉冲才被传送给灯驱动器。该触发脉冲的前缘激励-SCR,它点燃了闪光灯30。在这上点燃时刻,灯变成导电性的,而一个超前充电电容就通过灯被充电。电容和对电容器充电的电压确定了灯所发射的总光能和光脉冲的持续时间。同时,一个接口电路使摄象机快门保持打开约30毫秒然后关闭快门。
摄象机快门以上述方法使用避免或实际上减少了透镜检验之间环境光在象素阵列46中的集积。另外,最好将高压电源,灯驱动器电子设备和储能电容安装在包含照明光路的外罩结构之中。
灯30发出的光足以容许在这样一个短的时间周期中在象素阵列上进行图象拍摄,因此不必使受检验的眼用透镜停下来。因而,最好将输送子系统12设计成使一系列眼用透镜连续地在成象子系统16之内移动。眼用透镜阵列的这种连续而平滑的移动是有利的,因为它减少或消除了槽110中溶液112顶部的波纹或其它扰动的出现,而波纹或其它扰动是可能妨碍成象过程的。
本领域普通技术人员应该清楚,输送子系统12、照明子系统114和成象子系统16之间的理想的同步或协调关系可以用其它方法来实现。例如,可以在预定的时间间隔使光源30受激了并使快门50打开,而这个时间间隔又选得与透镜在透镜检验位置144中的定位相一致。
可将照明,成象,和输送子系统封装在一个外罩(未示出)之内,以消除环境空气尘埃等对照明和成象过程的影响。这个外罩可以装透明的前开门或带有透明窗口的前开门,以提供以外罩内部的通道并可以对内部进行观察,而前开门的那些透明部分可以涂上颜色以消除室内环境光对照明和成象过程的影响。
图13是说明图象处理子系统20的框图。在这个子系统中,从象素阵列来的电信号,以串联和并联结合方式送至一前置处理器62。这些要传送到前置处理器62的电信号可以用任何合适方法,随产生该信号的特殊象素一起被识别。例如,可以将摄象机36的象素产生的信号以一给定时间顺序传送给前置处理器62,而同时也可以由摄象机向前置处理器传送时钟信号以识别该顺序的起动或选择时间间隔。另外,每个传送到处理器62的信号可以通过对产生该信号的特殊象元进行识别的磁头或另一数据卡来提供。
单元62将阵列46的每个象素产生的每一电流信号转换成相应的一个数据值I0,并且将该数据数值贮存在一个具有与产生该电子信号的象素的地址相对应地址的储存区域中。这些数据值对于处理器64是通用的而可以通过总线186传送给处理器。如在下面要详细说明的,最好是形成许多附加的数据数值给I1……In,每个数据组具有与阵列46的各个象素相应的各自的一个数据值,而前置处理器62可以包括多个储存区,或储存盘。每一个被用来分别储存这些数值的各自的一组。
处理器64通过总线186与前置处理器62相连接,以从该前置处理器获得数据数值和向其传送数据值。如以下要作详细说明的,处理器64被编程以处理和分析存储在前置处理器中的数值,从而至少识别出每个由系统10检验的透镜的一种状态或参量,并指出每一透镜是否可为顾客使用所接受。
储存盘70连接到处理器64以接收或将数据保持在永久性或半永久性的数据库中。例如,储存盘70可带有处理器64所用的各种查询表,而储存盘可以用来贮存在透镜检验过程中有关的或获得的数据。例如,可用储存磁盘70来记录在给定日期或时间周期之间检验的透镜的总数目,并记录在任何给定样品或透镜组中发现的任何缺陷的总数目、类型和尺寸等。
键盘66连接到处理器64以让操作者用来向处理器进行输入,而键盘终端74用来直观地显示输入到处理机的数据或信息。监控器72与前置处理机62连接而用来提供由储存在前置处理机的数值形成的视频图象。例如,可将I0数据值传送给监控器72以在其上产生在象素阵列46上产生的真实图象的图象。这组数据的其它数值I1……In可以传输到监控器72上以产生该真实图象的经修改或处理过的图象,打印机76连接到处理机构64,通过串-并行转换器190,提供由处理机64传输给打印机的选择数据值可见的永久性记录。正如本领域普通技术人员所能理解的,可以对子系统20装置其它的或附加的输入和输出装置,以便操作者或分析者可与处理机64,前置处理机62,和储存盘70相互联系。
子系统20的各个部件是普通的而且为本领域普通技术人员所了解的。最好,处理机64为一高速数字计算机,监控器72为一高分辨率的彩色监控器。而且,前置处理机62可以是一套Datacube信号处理盘的组合,而处理机64可以是一台Sun3/140工作站。
如上所述,每次一只眼用透镜通过摄象机36正下方,光就被传送通过眼用透镜并聚焦在象素阵列46上,而阵列46的每个象素就产生一个独立的电输出电流,该电流的大小代表入射在该象素上的光强度。每个象素的这个输出电流被转换成贮存在前置处理机储存器中与该象素相应的一个地址中的数字数值。对这些数字数据,即I0数值进行处理,如下所述,确定通过摄象机36正下方的透镜是否包含一或多个选定的特征组;具体地说,就是确定该透镜是否包含有任何可以看作毛病或缺陷,而使该透镜不适合为顾客应用的特征。
图14表示用于识别图2和图3所示的那种类型的透镜84的任何缺陷的一个最佳的图象处理程序的主要部分。在取得象素阵列上的透镜图象之后,对该图象进行检验,在考虑不共心性的步骤中,确定该透镜的圆环84c的内外周缘是否彼此适当地共心,而这种不共心性检验包括第一和第二圆与象素阵列上产生的圆环的内外边缘的拟合。之后,找出或推断出该圆环的实际边缘。然后,采用第一掩蔽步骤以降低或消除与由透镜检验槽周边的折射或偏斜的光有关的数据,而通过一种称为胶带算法步骤使任何边缘的缺陷都变得明显。其次,通过称为充填和净化的步骤并通过消除与某些靠近圆形图象中心的象素有关的数据使任何缺陷得以进一步强调。
在任何可能的缺陷得到强调或突出之后,进行一次搜索以确定事实上是否存在任何缺陷。尤其是,对阵列46的象素进行搜索,或者更确切地说对与那些象素有关的数值进行检索以辨别可能是缺陷部分的象素的线段或扫描长度,然后对那些扫描长度进行分类以辩认出可能的缺陷。然后,对这些可能的缺陷进行分析,以确定它们是否是实际上使透镜不适合顾客应用的缺陷。
如上所述,不共心性检验是用来确定通过摄象机下方的透镜的圆环84c的内外圆边是否同心。通常,参见图15,这种检验是通过越过象素阵列46的大量扫描202来进行的,或许,更确切地说,是通过对那些与阵列46上的选定线段中象素的地址相应的,前置处理机储存器中的地址中的数值进行分析,以便确定圆环150的外缘和内缘150a与150b是否共心。
图16a和16b说明不共心性检验或程序R1。该程序中的第一步204称为寻阈子程序;而这一步程序的目的是将每个象素与一新的强度值I1联系起来,I1是等于最大的还是等于最小的照度值,即Tmax还是Tmin随该象素的初始照度值I0是分别大于或小于一个给定的阈值Tt而定。因而,对于初始照度值I0照度值I0比127大的各个象素可以赋给一个255的新照度值,而对于初始照度值等于或小于127的各个象素可以赋给一个数值为零的新的照度值。
在不同心性检验中的下一步骤206是设定用于这个检验的扫描202的数目,位置,如大小,而这是通过对处理机64指定每个扫描的起始象素地址和扫描长度及方向来实现的。如果透镜不是严重的不共心,则选定这些参量以便越过圆环150的两个边缘之间进行多次扫描。处理机64或储存盘70最好存储有这些起始地址,方向和扫描长度的半永久性记录。当对一种给定标准类型或大小的透镜进行检验的就可用这个记录,而当对不同于标准类型或尺寸的透镜进行检验时则可以改变这种半永久性的记录。
接着,顺步骤210,横过象素阵列或显示器46进行选定扫描。如果该冰是严重地不共心,则这些扫描的绝大多数将跨越该显示器的受照亮部分。当一个扫描跨越显示器的受照亮部分时,跨越该受照明部分的线段的第一和最后一个象素的地址和该线段的长度,称为扫描长度,就被记录在一个文件f1中。检出在扫描长度中的第一和最后象素,获取这些象素的地址,并确定每扫描的长度的子程序,对于本领域扣技术人员是熟知的,因此,任何这样的合适程序都可在不共心试验中被采用。
然后,在步骤212,将这些扫描距离的每一长度与一预定值作比较,而若相应于各个扫描长度的数值(即,在扫描距离中的第一和最末象素的地址和该扫描距离的长度)小于该预定值,则将该数值舍弃。作出这种丢弃是为了消除、或至少减少由象素阵列46上噪声所产生的数据的数量(即,入射在象素阵列止的不合适的光所产生的数据)。详细地说,噪声可以是由于背景光或由尘埃或其它颗粒使之偏离所要求光路的光在象素阵列上可能产生的被照亮区域。在绝大多数情况下,每个这样的受照亮区域仅仅是由一个或少量的相都象素组成的。如果在步骤210中所做的一个上述的扫描跨越了这样一个被照亮的区域,则处理机就记录下跨过该照亮区域的第一和最后的象素以及扫描间隔的长度。但是,该受照亮区域及其相应数据与圆环162或其边缘无关,因此,利用步骤212来消除这个数据。
不共心检验的下一步骤214是辩认出每个当作是处在该圆环外边缘或内边缘上的剩下的象素的地址,而任何合适的子程序都可以被用来做这一步工作。例如,可以对各个扫描距离的第一和最末的象素地址进行相互比较;而靠近整个象素阵列46中心的象素可以看作是处在圆环162的内缘,而远离该象素阵列中心的象素可以看作是处在圆环的外缘。另外,可将扫描分成两组,这样,对于第一组中的每个扫描,若在扫描期间找到了一个被照亮的扫描距离,则在扫描间距中的第一和最末的象素就分别处在圆环的外和内边缘;而对于第二组中的扫描,若在扫描时找到了一个被照亮的距离,则在该扫描距离中的第一和最末的象素就分别是处在圆环的内和外边缘上。
在处于圆环162的内或外边缘上的每个象素确定之后,则在步骤216计算在各个边缘上已被发现的象素的数目。如果这些数目都少于3,则在步骤220,该透镜因严重不同心而被抛弃。但是,如果在每一边缘上至少已发现在三个象素,则在步骤222引入一子程序,首先,将第一个圆拟合在圆环外缘发现的象素上,第二,将第二个圆拟合到在圆环内缘发现的象素上,而后第三,确定这两个圆的圆心和半径。将一圆拟合在三个或更多的点上并计算出该圆的圆心和半径的许多子程序是已知的,而任何这样的子程序都可以应用于步骤222的不共心试验中。
在计算出这两个经拟合的圆的圆心之后,在步骤224确定这两个圆心的距离。然后在步骤226,将这个距离与第一个数d1进行比较;若距离大于d1,则在步骤230,该透镜因严重不同心而被抛弃。若该距离小于d1,那末,在步骤232,该距离d与d2进行比较,d2虽圆环150内外边缘的中心之间的最小可接受的距离。若经过拟合的圆的中心之间距离大于d2,那末透镜因不同心,在步骤234被抛弃;但是,若距离d等于或小于d2,则如步骤236指出的,该透镜通过了不同心检验。
如果一个透镜通过了不同心检验,则处理机64起动一个程序R2,称为边缘检测器,以产生一组照度值,该照亮值依次可以用来识别圆环150边缘上的象素。通过,这些边缘不是理想的圆而因此是不同于同心检验中计算出来的拟合圆的。这种新的照度值组是通过对赋与或相应于阵列46的每个象素的初始强度值作出一系列的形态操作或变更而获得的。这些形态上的改变在图17a至17i中作出形象的说明,并流程图形式表示在图18中。详细地说,图17a表示象素阵列46上圆环150的图象;而图17b表示该圆环的部分放大图,而且也表示出一短的线段240,或扫描,跨越该象素阵列的圆环部分和靠近区域。图17c说明该扫描240中象素的强度值I1;而如其中表示的图17b暗区中的象素具有较低的或零I1值,而图17b亮区中的象素具有较高的I1值,诸如Tmax。
参见图18和图17c以及17d,在边缘检测器程序的第一步242中,对每个象素计算出一个新数值I2;特别是,设每个象素的I2值等于该象素及其8个直接邻接的近邻象素的I1值的平均值。阵列46中象素的I1和I2值之间的不同在于后者在具有最低I2值的象素(它通常是那些处在象素阵列暗区中的象素)和具有最高I2值的象素(通常是那些处于阵列46亮区中的象素)之间变化更为缓慢。这种不同可以通过图17c和17d的比较而很好的理解。
然后,步骤244,对每个象素确定另一数值I3;具体说来,设定每个象素的I3值为等于该象素及其8个直接紧埃着的相邻象素的最小的I2值。参见图17d和17e,I3值可能台某种方法改变跨越该扫描240,所说的方法与I2值改变跨越该象素扫描的方法极相似。其中,跨越象素阵列的象素的I2和I3值的变化方式之间的本质差异在于具有最高I3值的象素的区带稍为比具有最高I2值的象素区带狭窄。
边缘检测器程序的下一步骤246是按照等式I4=I2-I3来确定各个象素的另一个值I4。具体参见图17f,在扫描240中大多数象素的I4值为0;但是,在圆环162的两个边缘上和沿半径紧靠边缘内侧的象素具有正的I4值。接着,在步骤250,对每个象素确定I5值;具体说来,设定每个象素的I5值等于该象素及其周围直接邻接的8个象素的最大I2值。对象素阵列46上的大多数象素说来,象素的I5值与象素的I2值相同。但是,对于在圆环150边缘的给定距离之内的象素,象素的I5值比象素的I2值大,而具有最高I5值的象素区带比具有最高I2值的象素区带稍宽。
在边缘检测器程序中的下一个步骤252是根据等式I5=I5-I2确定每个象素的又一个值I6。具体参见图17h,在象素阵列上的大多数象素有等于零的I6值;但是,在圆环150的两边缘上及沿半径紧挨两边缘的外侧的象素有正的I6值。接着,在步骤254,将I7值赋与每个象素;具体地说设定每个象素的I7值等于每个象素的I4和I5值的较小者。参见图17i,象素阵列上的大多数象素的I7值是零;但是,直接在圆环150上和紧挨圆环150的两个边缘处的象素有正的I7值。以这样的方法,用象素的I7值来辩认出处在圆环边缘上的象素。
然后,在步骤256可以张一个定阈值的子程序以加重在圆环150边缘上的象素与显示器46中其它象素之间的区别。尤其是,每个象素可以被赋与另一个值I8,该值I8等于最大照明强度值Tmax或是等于最小的照明强度值Tmin,这要分别取决于象素的I7值是高或低于给定的阈值,例如Tt。因而,若每个象素具有比32大的I7值则可提供一个等于255的I8,而若每个象素有一32或小于32的I7值则可提供一等于零的I8值。
图17j表示受照明的阵列46在强度等于其I8值时的各个象素。
在I1-I8数值计算如处理期间,最好将象素的每组数值贮存在前置处理机62中的各自的贮存器中,即,将I0值全部贮存在第一个贮存器中,I1值全部储存在第二个贮存器中,而将I2值全部储存在第三个贮存器中。但是,在对每一个透镜进行全部处理期间并不需要贮存I1-I8的所有数值;例如,在每个处理过程中,I3值在I4值计算出来之后可以被丢弃,而在I6值被决定,之后I5值可以被丢弃。
另外,并不需要计算出阵列46中所有象素的I2-I8数值。对任一给定类型的眼用透镜说来,透镜的圆环会在象素阵列46上呈现出相当良好的确定范围或区域,因此,仅仅需要确定处在该区域或范围中的象素的I2-I8值。但是事实上,比起要添加另外一些处理步骤以辩认出那些处在有关给定区域的象素说来,计算出阵列46中所有象素的I2-I8数值来,通常反而显得更为容易而简单。
完成边缘检测器程序之后,透镜检验系统就引入了一个掩模程序以产生一套不受到用来装盛该透镜的透镜检测槽的边缘影响的象素的照度值。详细地说,当眼用透镜受到闪光灯30的一次闪光照明时,光也透过装盛着透镜的槽,该槽的边缘可能使这样的一部分光绕射而足以使期传播而绕过光阑40并落在象素阵列46上,在这里产生槽边缘的图象或部分图象,如图19A中260所示的。这个边缘图象与透镜本身无关,而因此,任何与该槽边缘图象有关扣数据对于透镜图象本身有关的数据的处理说来是不需要而且不希望有的;而掩模程序的引入就消除了象素阵列46产生的槽边缘图象,或者更确切地说,产生了一套与涉及到上述槽边缘图象260的象素数据无关的象素照度值。
图20说明一个优选的掩模程序R3的流程图。该程序中第一步262用来确定在不同心性试验的步骤216或226中,是否已经在圆环162的外边缘上发现有至少三个象素,或是否已发现该眼用透镜是严重不同心的。如果在非同心性试验的该两步骤都发现该透镜是严重非同心的,则掩模程序R3本身在步骤262结束。
若程序R3并不在步骤262结束,则程序继续进行而进入步骤264,这一程序用来获得在不同心性试验期间已经拟合成圆环150的外缘150a的圆的圆心的座标。这些座标已经在非同心性试验期间被确定并然后储存在储存器中,既储存在处理机64的储存器中也储存在储存盘70中,因此,这些座标可以简单地将它们从储存器和重新调出而获得。一旦获得了这些圆心的座标,就在步骤266引入一掩模子程序。现在参见图19b,实际上,这个子程序,是在象素46上叠盖一个圆形的、按上述圆心座标定心的、直径稍为比拟合成圆环150外缘的圆的直径稍大的掩模270。掩模子程序然后根据该象素是在这个掩模的内部还是外部而对每个象素赋上I9值。具体说,对掩模外的各个象素,掩模子程序对象素赋以零的I9值;而对掩模内的各个象素,掩模子程序对象素赋以零的I9值;而对掩模内的各个象素,掩模子程序对象素赋以等于I8值的I9值。
更确切地说,在步骤266,上述中心点的座标(X0,Y0)和半径r1被传送给掩模子程序,该r1值被选得比拟合成圆环150外边缘的圆半径稍大。然后,该子程序形成了一个在阵列中与中心点(X0,Y0)在距离r1之内的所有象素的地址文件f2。接着,在步骤272,对阵列47中各象素地址进行校对以确定它是否处在该文件中。如果该象素地址是在该文件中,则在步骤274设定该象素的I9值等于该象素的I8值;但是,若该象素地址不在该文件中,则在步骤276设定该象素的I9值为零。
许多具体的掩模子程序是熟知的,可以在程序R3的步骤266中采用。
图19c表示受到强度分别等于它们各区的I9值的照明的阵列46的象素。
在示于图20的掩模程序完成之后,处理机2中就起动另一程序,称为胶带运算。这个运算,通常涉及对在圆环外缘150a或直接紧靠该圆环边缘150a的有关象素的数据值进行分析和处理,图21a和21b表示对胶带运算作一般说明的流程。参见这些图,该运算的第一步280定为了获得在不共心性试验中拟合成外缘150a的圆的圆心座标和半径。如上所述,这些数值在不共心性检验中已经确定并储存在存储器中,而这些值可从储存器中将他们调出而获得。
胶带运算的下步282是通过从象素阵列左边缘朝中心进行检索以确定象素在圆环150外缘150a上的位置,直至找到一个受照明的象素为止。在给定检索期间发现的第一个受照明的象素可能不是处在该透镜象的边缘,而可能是在另外的某些地方并因为受背景噪声所照明的。因此,最好在步骤282进行大量扫描或检索以找出许多被照明的象素,而后对这些象素的位置进行分析或互相进行比较,以有助于保证找到处在透镜图象边缘的象素。
一旦在该透镜象的边缘找到第一个象素,胶带运算程序就进行步骤284;而在该运算的这一步中,事实上,从该第一象素开始并围绕透镜象边缘沿所有路径扫描,最终回到该第一象素处。在该第一次扫描期间,该运算过程将透镜图象的外边缘上的大部分或全部象素的地址记录器文件f3中;而该运算也辩别出透镜边缘的较大的裂隙,那些裂隙的长度,以及透镜边缘上的较大的额外碎片。在步骤286中,运算过程将选定线段的端头上的象素地址记录在文件f4中,在面将作更详细讨论,事实上,选定的线段是跨过透镜边缘较大裂隙和跨过该边缘上任一较大的额外碎片的两边划出的。
在这第一次绕透镜的扫描完成之后,然后在步骤290,胶带运算过程确定,可能被发现的任何裂隙是否大到足以使透镜必须被抛弃掉。如果发现了这样的裂隙,就将透镜丢弃,而在步骤292,打印机76就打印出透镜有坏的边缘的信息。
如果该透镜通过了步骤290的这种裂隙检验,则胶带运算过程就进行环绕透镜图象边缘的第二次扫描。在第二次扫描中,如图21b的294指出的,运算过程就识别出沿透镜外缘延伸的沿径向朝内或朝外的表面特征,例如小的裂隙和小的额外碎片,同时这一运算检验每个这样检测的特征以确定该透镜是否应该因此而被丢弃。通常,这是通过至少对每个在透镜外缘选定的象素计算称为径向矢量和边缘矢量的通过该象素的两个矢量的点乘积而完成的。通过象素的径向矢量也是通过拟合成圆环150外缘150a的圆的圆心延伸的矢量。通过一个象素的边缘矢量是通过该象素如圆环150外缘上的第二个象素延伸的矢量,该第二个象素是沿圆环150的外缘150a从前面的象素朝后或逆时针的一些象素。
对于不含有任何缺陷(裂隙或额外裂片)的正常的透镜边缘的圆环部分的任一象素说来两个上述矢量的点积实际上为零,因为通过该象素的径向和边缘矢量实际上是正交的。但是,对于透镜边缘上的裂隙或额外裂片处的边缘上的大部或所有象素说来,通过该象素的边缘和径向矢量的点积并不为零,因为这两个矢量不是正交的。如果所计算出来的任何点积比一给定值大,则认为该透镜不适合顾客使用而可以丢弃。
如果该透镜通过了绕透镜边缘作第二次扫描时所进行的检验,则胶带运算就沿透镜象外缘进行第三次扫描,如图21B步骤296所指出的。该第三次扫描并不包括任何为了确定透镜是否应该丢弃的检验,不是继续执行处理程序而是为下一个检验准备数据。具体说,进行第三次扫描以产生一组数据,这组数据与圆环150的外缘150a内部扣透镜中的任何缺陷定无关的。这组数据是相继扣除了包含着与那些缺陷有关的数据的一组数值,而由此产生一组只是与那些疵点等小主病有关的数值。
通常,在围绕透镜边缘的第三次扫描中,胶带运算确定圆环150的外缘150a的平均径向厚度;而后该运算设圆环外缘的正内侧上所有象素的I9值为零。例如,如果圆环外侧边缘有六个象素的平均厚度,那末,胶带运算可以设定圆环外缘沿径向朝里的7和27象素之间的所有象素的I9值为零。
图22~32中更详细的说明胶带算法,具体地说,图22说明一个适合用于找出第一象素,p(x,y),在圆环150的外缘150a上位置的子程序。在步骤300,设定(X0,Y0)等于在不共心性检验中拟合成圆环外缘的圆的圆心的座标;而在步骤302设r0等于该外拟合园的半径。然后,如步骤304描述的,从阵列左边缘中心或其附近开始,跨过象素阵列46作多次水平扫描。更确切地说,处理机64对与象素阵列上选定的水平线段中的象素的地址相应的前置处理机储存器中地址上的数据数值I9进行分析。当进行这些描述的每一个时,处理机64检查在一给定的水平象素排中每个象素的I9值,并辨认出在该具有一高于给定值的I9值的排中的第一个象素;最好,进行多次这样的扫描,产生多个经辨认过的象素。
通常,所有这些经辩认的象素应该是处在圆环150的外缘150a上。但是,由于在透镜检验过程中背景噪声或杂散光入射在象素上使得阵列上某处以至于该边缘左边的某个象素具有高的I9值是可能的,而这样一个象素在上述扫描中可能作为一个被照明的象素被辨认出来,为了防止将这样一种象素作为边缘象素被辨认出来,子程序S,在步骤306将任何这样的象素的地址辨认并加以抛弃。具体说,该子程序首先确认扫描中被识别的每个象素和在不共心检验时拟合成透镜图象外缘的外园的园心(X0、Y0)之间的距离;然后,将每个经确定的距离与已被设定等于该拟合的外圆的半径r0进行比较。如果某一特别的象素与该拟合圆的园心的距离比r0超出部分大于给定距离D3,则认为该象素不处在或者紧邻圆环150的边缘,从而将该象素的地址抛弃掉。在对搜索时所发现的所有象素的地址进行检查以确定它们是否处在或直接靠近透镜边缘(和它们中某一个是否应丢弃)之后,如步骤310所示,可以选定任一余下的象素的地址为象素P(x,y),而后开始围绕透镜图象的边缘的第一次扫描。
图23更详细说明如何进行这第一次扫描,并具体表示进行这一扫描的程序R4。在步骤312,从象素P(x,y)开始,沿圆环150外边缘向前或顺时针进行检索以找出边缘中的大裂隙或边缘上大的额外碎片,如步骤314和320指出的。任何合适的子程序或程序都可用来沿边缘进行检索。例如,从该边缘上各个给定象素,由象素P(x,y)开始,处理机可以按照该给定象素所在的显示器46的象限或区域,对给定象素上方或下方的横排中或给定象素左右方的竖列中最靠近的3或5个象素进行检查,以辨认出透镜边缘上的下一个象素。从该下一个象素,处理机可以用这种同样的程序接着再辨认出透镜边缘上的再下一个象素。
而且,对每个在透镜边缘找到的象素说来,处理机可能确定该象元和拟合成透镜外缘的圆的园心(X0,Y0)之间的距离r。而且,处理机可能推断出已经发现的大裂隙,此时在透镜边缘上每一给定数目的相邻象素说来,r比r0小出比给定量dg大的距离(即,r0-r>dg)。相反,处理机可能推断出发现大额外碎片,此时,对于在透镜边缘上每一给定的相邻象素说来,r比r0大出比给定量dep大的量(即,r-r0>dep)。
如果发现裂隙或额外的碎片,则在下面将要进一步详细讨论的子程序S2和S3就分别进入步骤316和322。如果既没发现裂隙又没发现额外碎片,则程序R4进入步骤324。
在步骤324,程序R4进行判断以确定绕圆环150边缘的第一次扫描是否完成,而任何合适的专门程序或子程序都可用来进行这一工作。例如,如上面提到的,当绕透镜边缘的图象进行扫描时,作出已经该边缘发现的象素地址的文件f3。在步骤324,可以对该文件进行检查以确定现在所考虑的边缘象素的地址是否已经在文件中。如果象素地址已经在该文件中,则认为绕透镜边缘图象的第一次扫描完成,而如果现行的象素地下还没出现在文件f3上则认为该扫描未完成。若第一次扫描完成,则胶带运算转入程序R5;但如果绕透镜的第一次扫描没有完成,则该运算转至步骤326,而将现行考虑的边缘象素的地址添加到文件f3。然后在步骤330,找出透镜边缘上的下一外象素并设定P(x,y)等于该下一个象素的地址,而后程序R4转回到步聚312。
图24简略说明子程序S2的流程,该子程序是每次在圆环150外缘发现一个裂隙时引入的。该子程序的第一步332是为了对裂隙的开始和结束处的象素地址和这两个端头象素之间的距离进行辨认并记录在一文件f4中。这两个象素分别在图25A中表示成P1和P2。一旦发现裂隙(即,对于每个在透镜边缘上的一定数目的连续相邻的象素,r比ro小现比dg大的量),则在该给定数目的连续相邻象素前的透镜边缘上的象素可以看作在该裂隙开头处的象素。
还有,一旦已经发现裂隙,则裂隙的末端可以通过越过裂隙,沿着在不同心性检验中拟合成透镜外缘的圆上的象素进行检索找到,而检索对于给定数目的象素从拟合的园的该部分沿径向朝里和朝外进行,直至发现透镜边缘,即,直接被照亮的象素,或更确切地说,具有高的I9值的象素被找到。在找到透镜边缘之后,一旦发现了一系列的相连的完全处在该拟合圆的一定距离之内的象素,则可认为裂隙已有出现;尤其是,当对于在该系列中的每一个象素,r0-r比dg小时。在透镜边缘上,该系列连续象素之前的最后的象素,可以被看作裂隙端头上的象素。
在子程序S2的步骤340,象素P1和P2之间连线(图25b中的线段L1)上的象素的I9值被设定等于最大照明强度值,而后子程序转回到程序R4。
图26说明子程序S3的流程,它是当圆环150边缘上发现额外碎片350时在程序R4的步骤322中引入的。实际上,进行程序S3的开头几步是为了划出各种跨过有关额外碎片的连线。尤其在步骤352,子程序辨认出P3和P4,示于图25b中,是在圆环150的边缘上的额外碎片350的起点与末端;而后,在步骤354,设定象素P3和P4之间的,示于图25c的线段L2上的每个象素上的I9值为Tmax。接着,在步骤356,子程序辨认出处在圆环150上的,在额外碎片350的起点朝后或逆时针的一定数目的象素处的一个象素P5的地址;而在步骤360,找出与象素P5有一给定距离d4的额外碎片边缘上的象素P6。然后,在步骤362,再参照图25d,设定P5和P6之间的连线L3上的每个象素的I9值为Tmax。
接着,在步骤364,子程序辨认出另一象素P7的地址,该象素P7是处在圆环150的边缘上,在额外碎片的末端朝前或顺时针一定数目的象素;而后,在步骤366,子程序辨认出与象素P7有一定距离d5的额外碎片的边缘上的象素P8。在步骤370,也设定P2和P8之间(示于图25e中)的连线L4上的I9值为Tmax。划出适当的跨接线之后,子程序转回程序R4。
在围绕透镜边缘象的第一次扫描完成之后,引入子程序R5。这个程序,在图27中说明,是用来确定在围绕透镜边缘象的第一次扫描中可能已发现的任何裂隙是否足够宽而使得该透镜不宜为用户戴用。程序R5的第一步376是为了确定在围绕透镜边缘的第一次扫描是否在事实上已发现任何裂隙。如果没有发现裂隙,则程序R5本身结束而胶带运算进入程序R6。但是,如果在回绕透镜边缘的第一次扫描中发现有任何裂隙,则程序R5继续进入步骤380。在这一步,将各个裂隙的宽度依次与一给定值d5进行比较,而若任何裂隙宽度比该值d5大,则认为该透镜不适宜用户使用,而在步骤382抛弃该透镜。而若所有的裂隙宽度均比d5小,则程序R5结束,胶带运算转入程序R6,该程序执行环绕透镜边缘象的第二次检验或扫描。
程序R6在图28中说明。如前所述,这个程序主要对在程序R4中围绕透镜边缘的第一次扫描中没被作为裂隙或额外碎片识别出来的透镜边缘的浅部表面间隙和透镜边缘上的小的额外碎片进行搜索。尤其,在步骤384,设定象素P(x,y)的地址等于文件f3中的第一象素的地址。然后,在步骤386、390和392,两个分别称为边缘矢量和径向矢量的矢量V1和V2,被识别出来并计算出该两个矢量的点积。具体地说,第一矢量是通过透镜边缘上的象素P(x,y)和第二个象素的矢量,第二象素是象素P(x,y)沿该透镜边缘向后或逆时针一定数目的象素,而第二矢量V2是通过P(x,y)延伸的圆环150的径向矢量。这两个矢量的斜率和它们的点积可以由该矢量延伸的象素的地址容易地确定。
参见图29,如果象素P(x,y)是沿着透镜边缘的一个规则的园的部分,那未通过该象素的边缘矢量V1实际上与透镜边缘相切,如图29中394所示。而且,这个矢量V1实际上垂直于通过该象素的径向矢量V2,因而这两个矢量V1和V2的点积为零。但是,若象素P(x,y)是在透镜边缘的不规则部分上,诸如在透镜上的裂隙或额外碎片的边缘上,如图29中396和400所示的,则通过象素P(x,y)的边缘矢量V1和径向矢量V2通常不正交,而这两个矢量的点积通常不为零。
在步骤402,将这两个矢量V1和V2的点积与一给定值d7进行比较。如果该点积等于或大于给定值(它指出有一个可意识到的裂隙或额外碎片出现在象素P(x,y)的区域中),则认为该透镜不能为用户所接受而在步骤404被抛弃掉,然后整个程序R6结束。如果在步骤402,计算出的点积比d6小(这指出在象素P(x,y)区域中透镜边缘对理想园的偏离是在可接受的限度之内),则程序R6进入步骤406。在这一步骤中,程序进行分析以确定这围绕透镜边缘象的第二次检查或扫描是否完成。具体地说,这是通过分析试验以确定象素P(x,y)是否是文件f3上的最后的象素。如果是,则第二次扫描完成,而胶带运算进入程序R7。但是,如果在步骤406,确认围绕透镜边缘象的这个第二次扫描未完成,则在步骤408,设定象素P(x,y)的地址等于文件f3上下一个象素的地址,而后程序转回步骤386。重复步骤386至408,直至透镜被丢弃,或者对于每个在文件f3上的象素,通过该象素的两个矢量V1和V2的点积被计算出来并发现是比d7小,此时胶带运算就进入程序R7,该程序围绕透镜边缘执行第三次检查或扫描。
最好,不用对处在透镜边缘上的所有象素的上述点积进行计算,尤其是,不用计算出在绕透镜边缘的第一次扫描时已发现的处在裂隙或额外碎片的边缘上的象素的那些点积。由于已经知道那些象素是处在裂隙或额外的碎片上,而对于那些裂隙或额外碎片的象素说来,其点积是不必计算出来的,而由于不需要确定通过这些象素的V1和V2矢量和这两个矢量的点积而可能节省可观的处理时间。
程序R6完成之后,胶带运算进入程序R7,它执行绕透镜边缘的第二次检查或扫描。如前所述,事实上,这第三次扫描的目的是为了产生新的一组数据I10这组数据与透镜外侧边缘以内的透镜中的任何毛病相关的任何数值无关。图30详细地表示出程序R7;而这个程序通常包括三部分。在第一部分,设定每个象素的I10值等于该象素的I9值;在第二部分,计算出圆环162的外侧边缘164的平均边缘厚度值N;而在第三部分,设定在该平均边缘厚度更内侧的给定范围中的象素的I10值为零。
更具体地说,在程序R7的步骤410,设定每个象素的I10值等于该象素的I9值。接着,参见图30和31,在步骤412,选定圆环150的最外侧边缘150a上给定数目的象素,示于图31中的414a-e。然后,在步骤416,程序R7计算出通过象素414a-e的透镜象的各条半径上的受照亮象素的数目,示于图31中的420a-e。例如,该程序可以将在圆环最外侧边缘上的象素算作第一个象素,然后由该象素沿径向朝里搜索,而对于在该半径上的每个受照亮的象素逐一增加计数值。在步骤422,计算出每个半径的受照亮的象素的平均数目;而这可以简单地进行,例如,用受照亮的象素的总计数目除以作过扫描的半径数目。通常,这个平均值不是一个整数,而因此最好将该平均值提高成下一个最大的整数。
在程序R7的下一部分,环绕圆环150的外侧边缘150a进行第三次扫描。为了开始这个扫描,如图30步骤424指出的,将任一处在该边缘上的象素选作起始象素P(x,y)。然后,如步骤426和430指出的,设定平均边缘厚度的径向朝里的选定象素I10值为零。具体地说,在圆环162的外侧边缘上的每一象素,程序沿透镜半径径向朝里计算出N个数目的象素。然后,再对沿该半径径向朝里的给定数目象素的每一个,对象素的I10赋值为零。参照图32,事实上,该程序的这些步骤,是设定划阴影线区域432中的象素的I10值为零。
在的步骤434,进行检查以确定这个绕透镜边缘象的第三次扫描是否完成,而任一种合适的程序都可以被引入来完成这种工作。例如,如果被选作这个扫描起始象素的象素是文件f3的顶端象素,则在程序已经对该文件的底端象素执行步骤426和430之后,就可认为该扫描完成。另外,可以造出用于程序R7的步骤426和430中的一个独立的象素地址的表格;而每次将一个象素地址添加到该表中,就可对该表进行检查以看出将要添加的新地址是否已经是在表中。如果该要被添加到表中的地址数值已经出现在该表中,则认为,围绕透镜边缘象的第三次扫描已完成。
如果,在步骤434,围绕透镜象的这个第三次扫描未完成,则在步骤436,设定象素P(x,y)的地址等于沿圆环150的外侧边缘150a的顺时针紧挨着现在象素P(x,y)的象素的地址。例如,这个地址可以从文件f3取到;而在步骤436,可以简单地设定象素P(x,y)的地址等于在该文件上紧跟着现在象素地址的地址。然后程序R7回到步骤426,而对新的象素地址P(x,y)重复步骤426、430和434。
这种绕透镜边缘象的第三次扫描完成后,处理机64退出程序R7而胶带运算结束。
在胶带运算完成之后,执行一系列的进一步运算,总的目的是为了加重强调在分析或检验情况下的透镜中的任何不规则性,由此使之对那些随后的不规则性的识别更加容易。
这些程序的第一个,称为填充程序,是为了对阵列46中的象素建立另一组数据值I11,而这组数据可用来识别圆环150的外侧边缘中或其表面或邻近处的使用不规则中的象素。更具体说来,参见图33,这些数据值用来识别(ⅰ)如436所示的透镜边缘中任何裂隙,(ⅱ)如440所示的透镜边缘内侧的任何不规则,(ⅲ)如442所示的透镜边缘上的任何额外碎片中的象素,以及(ⅳ)任何额外碎片和在子程序S3的步骤362和370所形成的邻接线段L3和L4之间的象素。
这个填充程序包括一系列的称为MAX、PMAX、MIN,和PMIN的具体计算,它们涉及一组与象素有关的基本数据值的处理,在MAX计算中,对一指定的象素确立一个新的数据值,这个数据值等于该象素的8个直接邻接象素的最大基本数据值;而在PMAX运算中,对指定象素确定一个新的数据值,它等于直接处在指定象素的上、下、左、右的四个象素的最大基本数据值。在MIN运算中,对指定象素确定一个新数据值,它等于该象素的8个直接邻接的最小基本数据值;而在PMIN运算中,为指定象素确定一个新数据值,它等于该给定象素的直接正上、下、左、右的四个象素的最小基本数据值。
图34a至34e说明MAX、PMAX、MIN和PMIN的运算。具体地说,图34a表示一个7×7数字阵列;而按照阵列中的数字位置对应于有关的象素地址,每个数字代表一个相应的象素的数据值。因此,例如,地址(1,1)上象素的数据值是7;地址(4,1)上象素的数据值为0;而地址(4,2)、(4,7)和(5,2)上象素数据值分别为7、0和0。
图34b表示在示于图34a的整个数字阵列中完成MAX运算之后产生的数值。因而在图34b中,地址(2,6)上的数据值为7,因为在图34a中,与该象素地址毗邻的8个象素之一有7的数值。同样,图34b中地址(6,2)上的值也是7,因为图34a的数据组中,与该象素邻接的8个象素之一也有7的值。图34c说明对图34a的整个数据组进行PMAX运算的结果;例如,图34c中地址(6,3)和(6,4)上的数据为7,因为在图34a中,这两个象素地址的每一个的地址直接与有数值7的右边象素连接。
图34d和34e分别表示对示于图34a中数值阵列完成MIN和PMIN运算之后产生的数值。例如,在图34d中,地址(4,3)的数值是零,因为在图34a中,邻近地址(4,3)的8个象素之一有零值;而在图34e,地址(4,2)的值是零,因为在图34a中,靠该象素地址右边的象素有零的数值。
图35说明优选的填充程序R8。参见该图,该程序包括在象素阵列46的数据值上进行的14个独立运算;而这些运算的每一个是在整个象素阵列上依次执行的。这些运算依顺序是MAX、PMAX、PMAX、MAX、MAX、PMAX、PMAX、MIN、PMIN、PMIN、MIN、MIN、PMIN和PMIN。这些运算由象素的I9值开始,而完成所有14个运算之后产生的数据称为I11数值。
这些运算的结果实际上是用来充入圆环150外侧边缘之中,上而或邻近的裂隙436,额外碎片442和不规则440的。具体地说,图33和36表示出圆环150的相同部分,前面的图表示由它们的I9值照亮的象素,而后面的图表示由它们的I11值照亮的象素。尤其是,对于裂隙436中,额外碎片442中,不规则440中以及在额外碎片和线段L3与L4之间区域中的象素,这种差别是这些象素I11值是Tmax,而这些象素的I9值为零。
如本领域技术人员所理解的,已知的其它的具体程序可用来产生上述象素的需要的I11数值。
填充运算R8完成之后,处理机64引入第二个掩模程序R9以产生一组象素照度值I12,该I12是与不共心性检验时拟合成圆环150的内侧边缘150b的园的中心点的给定半径之内向象素阵列46上入射的任何光的影响无关的。如下面的详细讨论的,这组象素照度值I12接着被用来帮助对透镜内部,即圆环150内侧边缘的径向内侧区域中的缺陷进行识别。
在透镜检验过程的这一阶段所采用的掩模程序R9与示于图19a-19c和20中的掩模程序R3是十分相似的。这两个掩模程序原则上差别是,用于程序R9中所用掩模的半径比拟合成圆环150的内侧边缘的园的半径稍小,而用于程序R3的掩模半径比拟合成圆环150外侧边缘的园的半径稍大。
图37说明一优选掩模程序R9的流程。该程序第一步446是为了确认不共心检验的步骤216或226上,在圆环150内侧边缘上是否至少找到三个象素,或者发现透镜是否严重不同心。如果已经发现在不同心试验的这两步骤都是严重的不同心,则掩模程序R9本身在步骤450结束。
如果程序R9不在步骤450结束,程序进入步骤452,该步骤用来获得在不同心检验中已经被拟合成圆环150的内侧边缘150b的园的园心座标。这些座标在不同心检验时已经被确定而后贮存在处理机储存器中,而这些座标可以通过从处理机储存器中简单地提取来得到。一旦获得了这些园心的座标,就在步骤454引入一掩模子程序。现在参见附图38a-38c,这个子程序实际上是,将一个定心在上述园心座标上的并具有直径略小于拟合圆环150的内侧边缘150b的园的直径的园形掩模叠合在象素阵列46上,而后,掩模子程序对每个象素赋值I12。特别是,对该掩模外侧的每个象素,掩模子程序赋给象素一个等于该象素I8值的I12数值;而对掩模内侧的各个象素,掩模子程序赋给象素一个等于零的I12数值。
更确切地说,在步骤452,将上述中心点的座标(Xi,Yi)和选得比拟合成圆环150内侧边缘的半径略小的半径数值r2传送给掩模子程序。然后,在步骤454,该子程序形成了在阵列46中的与中心点(Xi,Yi)距离在r2之内的所有象素的地址文件f5。然后,在步骤460,检查阵列46的各象素的地址以确认它是否处在该文件中。如果象素地址是在该文件中,则在步骤462,设该象素的I12值为零;但是,若该象素地址不在文件中,则在步骤464,设定该象素的I12值等于该象素的I8值。
为达到上述目的的许多具体的掩模子程序是本领域中熟知的,而任何合适的子程序可以在程序R9的步骤454上被采用。
图38c表示受到强度等于它们各自的I12值照亮的象素阵列46。
在这第二掩模程序完成之后,执行另一个程序R10,以提供一组明显地识别处在被检验透镜中的任何不规则或缺陷中象素的照度值,程序R10包括一系列的计算。具体地说,这些进一步计算的目的是为了提供一组象素照度值,它是与由背景的噪声或光产生的任何影响,以及由正常或规则的环状150的边缘150a和150b产生的任何影响无关的。这些进一步的计算示于图39的流程中。
在步骤466,获得每个象素的另一个I13值;而具体说来,每个象素的I13值是通过由该象素的I10值减去该象素I12值获得的。图40a、40b和40c表示分别受到强度等于它们的I10、I12和I13值照亮的一部分圆环162中的象素;而正如可看到的,步骤466的实际结果是图40a的象减去图40b的象以产生图40c的象。
然后,在步骤470,执行一个称为净化的运算,结果,有助于消除虚假的照亮象素。具体是,由象素I13值开始,在整个象素阵列46上依次进行MAX、MIN、PMIN和PMAX运算,产生另一组称为I14值的象素数值。图40d表示在强度等于它们各自的I14值照亮的圆环46的象素;而与图40c和40d比较可看到,净化运算的结果是简单地消除掉由于某一原因在图40c中受照亮的孤立象素。
系统10根据上述程序R1和R10处理完数据之后,对毛病或缺陷进行分析,而图41a和41b示出了说明一优化的缺陷检测或分析程序R11的流程图。这种分析可参照附图42得到最好的理解,该图表示出受到强度等于它们各自的I14值照明的圆环150一部分的象素。
参照图41a、41b和42,在这种缺陷分析的第一部分中,图41a的步骤472和474,制出一个各种连贯的受照亮象素的水平系列,称为扫描长度的起点和终点上的象素地址的表。具体说,处理机64,实际上跨过阵列46中的各水平排的象素扫描;而在每次扫描中,每次遭遇一系列的受照亮的象素,将该系列中第一和最后一个象素的地址记录在文件f6中。在只有单个孤立的受照亮象素的情况下,即该受照亮的象素的左和右边的象素本身是不被照亮的,该受照亮象素的地址,既作为受照亮象素形成的扫描长度中的第一个象素的地址,又作为最后一个象素地址记录下来。
确切地说,处理机事实上并不跨过象素阵列的任一图象扫描,而代之以检查阵列46中的象素储存在处理机储存器中I14值来完成上述的地址列表。
文件f6完成之后,程序R11在步骤476引入一群集子程序以对每一相邻的受照亮象素的群或区域,或者更确切地说,对每个具有高I14值的相邻象素的区域或群产生独立的文件f6a……f6n。任何合适的群集子程序都可用来完成这种群集。在这些独立文件f6a……f6n产生出来之后,在步骤480将那些互相接近的受照亮面积的文件,如示于图42的482和484上的那些文件合并起来。这可以通过检查,例如辨别出一个照亮区中的任何象素是否有一定数目的象素,例如二或三个象素,处在另一个照亮区之中来实现。这些靠近的照亮区被认为事实上是形成一个受照亮的区域。
步骤480完成之后,在步骤486引入子程序以计算出每个受照亮区域的面积和质心及边界中包含的象素的数量。进行这种计算的许多子程序是本领域熟知的。任何合适的子程序可以在程序R11中采用,从而不需要对这些子程序作详细说明。
接着,程序R11确定各个受照亮区域的总位置。具体说,在步骤490,获得拟合成圆环150的外和内边缘150a和150b的两个圆的园心和半径的地址。这些数据是在不同心检验时被确定或计算出来而后储存在处理机储存器中的,而这些数据可以简单地通过从该处理机储存器重新调用来获得。接着,在步骤492,处理机64确定各个受照亮区域的质心是否处在(ⅰ)透镜中心区之内(拟合成圆环1内边缘的园沿径向内侧区域),还是在(ⅱ)透镜的周边区(拟合成圆环1内外边缘的两个园之间的透镜区)。
确定一面积的质心是在第一个园的内部区域中还是在两个同心园之间的许多子程序是熟知的,在这里不必对这些子程序作详细说明。
在其最广泛的概念上,步骤490和492对系统10的计算是不必要的。不过,为了分析目的,最好是完成这些步骤并收集有关的数据,而特别是,这样做有助于对透镜中可能发生的不规则或缺陷进行识别。这些数据在对于制作透镜的方法或材料的调整或改进可能是有帮助的。
在步骤490和492完成之后,处理机接着确定每一个受照亮的象素面积的尺寸是否足够大,以致于有理由认为这样的毛病和缺点足以使透镜可以被抛弃。具体地说,在步骤494,将每个受照亮的象素面积与一个预先选定面积进行比较。如果该受照亮面积比预定尺寸面积小,则受照亮面积不足以使透镜被丢弃。但是,如果受照亮的象素面积比预定尺寸大,则受照亮面积就作为使透镜不能适合顾客应用的毛病或缺陷的证明条件。这个预先选定的尺寸可以被贮存起来,例如贮存在储存单元70中。
另外,最好在步骤496将在每个透镜发现的缺陷的数目的计数保存起来。这个计数对用来制造透镜的方法和材料的分析可能也是有用的。
在步骤500,监控器72产生一个显示以显示出受照亮象素的区域,将那些比上述阈值尺寸大的面积加以边框显示出来。然后在步骤502,处理机64进行检查以确定在透镜中是否在事实上发现任何缺陷。如果已发现缺陷,则在步骤504产生一丢弃透镜信号并将该信号传输到监控器72和打印机76,从而可将透镜从系统10中移出。但是如果没有在透镜中发现缺陷,则程序R11完全结束。接着,系统10运转以将另一个透镜移动通过照明子系统14而另一个光脉冲传输通过该另一透镜。这个被传送的光聚焦在象素阵列46上而重复上述的处理程序以确定这另一个透镜是否可为顾客所接受。
很明显,这里所公开的发明对于实现前述目的是很合适的,它也适合由本领域技术人员可能作出的许多改进与实施例,而可以预见,复盖所有这些改进和实施例的从属权利要求是落在本发明的真正精神和范围中的。
权利要求
1.一种检验眼用透镜的方法,包括连续地沿一预定路径移动许多透镜,以便一次一个地移动每个透镜,使之进入透镜检验位置;每次当这些透镜之一移入透镜检验位置时,就i)激发一个光源以产生一个光脉冲,ii)使该光脉冲对准通过所说的一个透镜并落在一个象素阵列上,iii)产生一组代表入射在所说阵列上的光的强度的信号,iv)根据预先确定的程序对所说信号组进行处理以确定所说一个透镜的至少一种状态,和v)产生代表所说的至少一种状态的输出信号。
2.按照权利要求1的方法,其中,移动步骤还包括将多个透镜的每一个定位在一个透镜运载器中的一个位置上的步骤,和沿一预定路径连续地移动透镜运载器的步骤。
3.按照权利要求2的方法,其中透镜运载器包含一种液态溶液;定位步骤包括将透镜定位在所说溶液中的步骤;而连续地移动透镜运载器的步骤包括在连续移动步骤中实际上保持溶液水平的步骤。
4.按照权利要求1的方法,其中,移动步骤包括使透镜以均匀的速率移动进入检验位置的步骤。
5.按照权利要求4的方法,其中对准步骤包括使象素阵列暴露一个预定的时间周期以使光源激发,而当光源受激发之后再暴露第二个预定的时间以确保阵列上的所有象素都可接收到所说光脉冲的步骤。
6.按照权利要求1的方法,其中光源包括一个控制器,而激发步骤包括每次透镜之一移动进入透镜检验位置时产生一起动信号的步骤;和将所说起动信号输送到所说控制器以激发光源的步骤。
7.根据权利要求6的方法,其中象素阵列被安装在包含有一个具有常关状态的快门的外罩内部,而其中产生步骤包括将所说起动信号传送给快门以打开快门使象素阵列暴露于光脉冲的步骤。
8.一种用于检验眼用透镜的系统,包括沿一预定路径连续地移动许多透镜,以便一次一个地移动每个透镜使之进入透镜检验位置的装置;每次当透镜之一移动进入透镜检验位置时产生一个光脉冲的照明装置;一个象素阵列用来产生代表入射在所说阵列上的各个光脉冲强度的一组信号;使光脉冲对准通过透镜并射在象素阵列上的装置;和处理装置,连接到象素阵列以从阵列接收所说的信号组,根据预定程序处理所说信号,并产生至少代表每个透镜的一种状态的一个输出信号。
9.根据权利要求8的检测眼用透镜的系统,其中,用于连续地移动许多透镜的装置包括将透镜以均匀的速度移动进入检验位置的装置。
10.按照权利要求8的系统,还包括一个有快门的外罩,而其中象素阵列安装在外罩的内部;快门有一个常关位置,以防止光传至象素阵列;而照明装置包括一个闪光灯以产生光脉冲。
11.按照权利要求10的系统,还包括控制装置以便有选择地激发闪光灯产生光脉冲,而有选择地将快门移动至打开位置以使象素阵列对光脉冲曝光。
12.按照权利要求11的系统,其中控制装置包括在激发闪光灯之前将快门移动至开启位置,而在闪光灯激发之后的一个预定时间周期内使快门保持开启位置的装置。
13.按照权利要求9的检验眼用透镜的系统,其中用来连续地移动大量透镜的装置还包括将大量透镜之一定位在一个透镜运载器中的一个位置中的装置,沿预定路径连续地移动透镜运载器的装置。
14.按照权利要求13的检验眼用透镜的系统,其中透镜运载器包括一种液态溶液而连续地移动透镜运载器的装置包括当透镜运载器沿预定路径移动时使溶液实际保持水平的机构。
15.按照权利要求8的系统,其中连续地移动透镜的装置包括在透镜之一每次移入透镜检验位置时产生启动信号的机构;和将启动信号传输给照明装置以产生一个光脉冲的机构。
全文摘要
一种连续并自动地检验透镜的方法。透镜沿一预定路径被连续地移动,以便一次一个地移动每个透镜,使之进入透镜检验位置。每当透镜之一进入透镜检验位置时,光源便受激发以产生一个光脉冲,该光脉冲通过一个透镜并射在一个象元阵列上而产生代表入射在象元阵列上的光强度的一组信号。根据预定程序对这组信号进行处理以确定透镜的至少一种状态,并产生代表该状态的一个输出信号。
文档编号G01M11/02GK1092168SQ9311989
公开日1994年9月14日 申请日期1993年12月21日 优先权日1992年12月21日
发明者T·G·戴维斯 申请人:庄臣及庄臣视力产品有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1