为棋盘格图像获取模板的系统和方法与流程

文档序号:22123327发布日期:2020-09-04 16:52阅读:310来源:国知局
为棋盘格图像获取模板的系统和方法与流程

本发明涉及数字成像,特别涉及用于获得模板图像以对应于棋盘格图像(tessellatedimage)图案单元的技术。



背景技术:

棋盘格图像(即具有多个重复的、不重叠的单元形成一个图案的图像)被广泛用于各种日常消费品和工业产品中。例如,通常在一个硅晶片的表面上(提供多单元聚合)以棋盘格图案制造集成电路芯片(即功能电路的各个块,其中将晶片切割成多个小块,以提供单独的集成电路。类似地,通过在大版印刷纸料的表面上(提供多单元聚集)印刷多个实例货品,以棋盘格图案的方式来生产印刷品(例如货币、邮票、书页等)。其中印刷品被切成多个块,以提供单独的印刷品。这种多单元集合的棋盘格图像(例如捕获包括棋盘格图案重复单元的全部或一部分多单元集合的数字图像)可用于此类物品各个方面的生产。

许多工业应用,例如电子组装和半导体制造工艺,要求将每个有相同图案的单元放置在棋盘格图像上以进行缺陷检查。例如,对于多单元集合的各个物品,棋盘格图像可以用于检测系统中的质量控制。另一个示例,棋盘格图像可用于进行切割以将单个物品从多单元集合中分离出来。

传统上,操作者手动在棋盘图像上标记每个图案单元。此过程非常耗时。此外,由不同操作者对图案单元的标记通常不一致,从而导致不良的质量控制结果,单元分离不一致等。因此,已经开发了自动识别棋盘图像中图案单元的位置的技术。

模板匹配技术已被用于数字图像处理中,用以在数字源图像场景(此处称为“源图像”)中找到一小部分与一个数字参考图像模板(本文称为“模板图像”)相对应。例如,这样的模板匹配技术可以用于上述棋盘图像(例如作为源图像),通过匹配模板图像(对应于重复单元中一个单元)和一部分源图像,来定位多单元集合中各个单元的位置。

模板匹配技术的传统方法需要手动识别和选择模板。因此,尽管在多单元集合中定位单个单元可以是自动化的,但是获得在自动模板匹配过程中使用的模板图像仍然是手动的,仍然有耗时且不一致的问题。通常,模板图像是一次性模板,一直使用到过程完成。因此,每次使用模板匹配过程时都重复手动识别和选择模板图像,从而传递了关于一致性和操作者时间的上述问题来识别模板。此外,当前的模板匹配技术没有动态更新模板图像。

最近有研究集中在模板匹配的算法速度和准确性提高上。但是迄今为止,关于模板匹配技术中使用的模板图像的识别和选择的研究很少。



技术实现要素:

本发明涉及使用模板单元边界识别技术以获得与棋盘格图像的图案单元相对应的模板图像的系统和方法,该棋盘格图像包括多单元集合的棋盘形图案单元。本发明实施例的模板单元边界识别技术使用来自棋盘格图像的样本区域图像来分析棋盘格图像,以确定模板图像的模板单元尺寸,使用确定的模板单元尺寸来确定像素分析线段,以在棋盘格图像中识别处模板单元边界,并基于使用像素分析线段识别出的模板单元边界来选择模板图像。这样的模板单元边界标识技术提供了推进自动模板图像识别、选择和获取的方法(在本文中被单独和统称为模板图像寻找)。根据本发明的模板单元边界识别技术实施的自动模板图像寻找不仅减少了获得模板图像的处理时间,而且比现有技术提供了更一致的结果。此外,实施例使得能够进行动态模板图像更新,例如提供适应性的模板图像,以适应多单元集合的棋盘格图像内的图案单元异常(例如模糊边界、失真等)。

根据本发明实施例,选择一个或多个样本区域图像,其包括源棋盘图像的一个子集,以用于确定模板单元尺寸。然后,使用一个或多个样本区域图像来分析源图像,以确定重复图案之间的最小距离,其中所确定的距离可以用于确定模板单元尺寸。例如,可以关于来自源图像和源棋盘图像的样本区域图像进行卷积,其中卷积结果的局部最大峰值可以用于确定模板单元尺寸。

本发明实施例使用像素分析线段配置来识别模板单元的边界,其中像素分析线段的配置可以基于模板单元尺寸,所述模板单元尺寸是通过分析棋盘图像的一个或多个样本(例如源图像样本)而确定的。例如,关于预定标准来分析与多个像素分析线段位置相对应的像素(例如沿着并列的像素分析线段的基本均匀的像素)。根据实施例识别的模板单元边界可以用于从棋盘格图像中找出(例如识别、选择和/或获取)模板图像。例如,这样的模板图像可以用于模板匹配技术,以在棋盘图像内找到多单元集合的各个图案单元的位置。

根据本发明实施例,模板单元边界识别技术有助于对各种配置的二维(2d)矩形棋盘图像自动找到模板图像。例如,实施例的模板单元边界识别技术对像素分析线段的使用,可以适应垂直和水平对齐的矩形棋盘格图像,可以适应垂直对齐和水平交错的矩形棋盘格图像以及垂直交错和水平对齐的矩形棋盘格图像。

前面已经相当广泛地概述了本发明的特征和技术优点,以便可以更好地理解随后的本发明的详细描述。下面将描述构成本发明权利要求的主题的本发明的附加特征和优点。本领域技术人员应该理解,所公开的概念和具体实施例可以容易地用作修改或设计用于实现本发明的相同目的的其他结构的基础。本领域技术人员还应该认识到,这样的等同构造不脱离如所附权利要求书中阐述的本发明的精神和范围。结合附图考虑以下描述,将更好地理解被认为是本发明的特征的新颖特征(无论是其组织和操作方法)以及其他目的和优点。然而,应该明确理解的是,每个附图仅仅是为了说明和描述的目的而提供的,并不意图作为本发明的限制的定义。

附图说明

为了更全面地理解本发明,现在结合附图参考以下描述,其中:

图1显示本发明实施例的模板单元边界识别的流程图,其使用确定的模板单元尺寸;

图2显示本发明实施例的使用像素分析线段来识别棋盘格图像中模板单元边界的流程图;

图3显示本发明实施例的配置用于模板单元边界识别的基于处理器的系统;

图4显示本发明实施例的可以在模板单元边界识别中使用的各种示例性形式的源图像;

图5显示本发明实施例的关于源图像选择的一个样本区域,用于确定模板单元尺寸;

图6显示本发明实施例的关于一个样本区域图像和相应的源图像的一个示例的卷积路径,可用于确定模板单元尺寸。

图7显示本发明实施例的一个示例性卷积图,其包括由样本区域图像和对应的源图像的卷积处理产生的峰值,可用于确定模板单元大小。

图8显示本发明实施例的一个示例峰值图,用于识别代表推定图案单元的中心的峰,以确定模板单元的尺寸。

图9显示本发明实施例的旋转校准,其可以应用以促进模板单元边界的识别。

图10a和10b显示本发明实施例的用于确定模板单元尺寸的向量统计方法的实施;

图11a-11c显示本发明实施例的使用多个像素分析线段的配置,用于识别模板单元的边界。

图12a-12c显示本发明实施例的在源图像上垂直滑动并列的水平像素分析线段,关于预定标准分析源图像的像素;

图13a-13c显示本发明实施例的在源图像上水平滑动并列的垂直像素分析线段,关于预定标准分析源图像的像素;

图14a-14d显示本发明实施例的示例性源图像,其中多单元集合的图案单元在棋盘图像内看起来不是完全均匀的;

图15显示本发明实施例的动态模板图像更新的流程图。

具体实施方式

图1和图2显示本发明的模板单元边界识别技术以获取与包括多单元集合的棋盘格图像的图案单元相对应的模板图像的流程图。特别地,如将在下面进一步详细描述的,图1的流程100提供了一个示例性实施例的模板单元边界识别,其中分析了棋盘格图像的一个或多个样本以确定模板图像的模板单元尺寸。然后,将确定的模板单元尺寸用于确定像素分析线段,以识别棋盘格图像中的模板单元边界,并且基于使用像素分析线段识别的模板单元边界来选择模板图像。同样如下面将进一步详细描述的,图2的流程200提供了一个示例性实施例的使用像素分析线段来识别棋盘格图像中模板单元边界的细节。

图1和图2所示的示例性实施例的模板单元边界识别技术提供了促进自动找出模板图像模板图像的方法。应当理解,当以软件实施时,提供本发明实施例的模板单元边界识别技术的流程100和200的功能可以包括代码段,以执行本文所述的任务。可以将代码段存储在处理器可读介质中,由基于处理器的系统的一个或多个处理器执行。处理器可读介质可以包括可以适当存储和传输信息的任何介质。处理器可读介质的示例包括电子电路、半导体存储设备、只读存储器(rom)、闪存、可擦除rom(erom)、光盘、硬盘等。代码段可以通过诸如局域网(lan)、广域网(wan)、互联网、企业内部网、蜂窝通信网络等计算机网络下载。

图3显示配置以实施本发明实施例的模板单元边界识别技术的基于处理器的系统300(例如服务器系统、个人计算机系统、笔记本计算机系统、平板电脑系统、智能手机系统等)。在所示实施例的基于处理器的系统300中,中央处理单元(cpu)301连接到系统总线302。cpu301可以包括通用cpu,例如英特尔公司的core系列处理器、advancedmicrodevices,inc.的athlon系列处理器、aimalliance的powerpc系列处理器等等。但是,本发明不受cpu301的体系结构的限制,只要cpu301支持本文所述的发明操作。例如,实施例的cpu301可以包括一个或多个专用处理器,诸如专用集成电路(asic)、图形处理单元(gpu)、现场可编程门阵列(fpga)等。总线302连接cpu301至随机存取存储器(ram)303(例如sram、dram、sdram等)和rom304(例如prom、eprom、eeprom等)。ram303和rom304保存用户和系统数据和程序,例如可以包括一些或全部上述程序代码,用于执行模板单元边界标识和与之相关的数据的功能。

所示实施例的基于处理器的系统300的总线302也连接到输入/输出(i/o)控制器305、通信适配器311、用户接口适配器308和显示适配器309。i/o控制器305连接到存储设备306(例如一个或多个硬盘驱动器、光盘驱动器、固态驱动器等),连接到cpu301和ram303,以便交换程序代码以执行模板单元边界标识和/或与之相关的数据功能。所示实施例的i/o适配器305还连接到打印机314(例如点矩阵打印机、激光打印机、喷墨打印机、热敏打印机等),这将允许系统打印诸如模板图像之类的信息、使用模板图像获得的匹配图案信息、和/或其他信息和文档的纸质副本。通信适配器311被配置以将基于处理器的系统300连接到网络312(例如蜂窝通信网络、lan、wan、因特网等)。所示实施例的用户接口适配器308将诸如键盘313、指示设备307和麦克风316之类的用户输入设备连接至基于处理器的系统300的其他组件。所示实施例的用户接口适配器308还将声音输出通过扬声器315提供给用户。显示适配器309由cpu301驱动以控制显示设备310(例如平板显示器、触摸屏、平视显示器、全息投影仪等)上的显示。

再次参考图1,其中示例性实施例的模板单元边界识别有助于从棋盘格图像内的多种多样且有时令人眼花缭乱的图案中自动找出与规则矩形网格的图案单元相对应的模板图像。例如,这样的模板单元边界识别技术用于光学检查系统(例如用于各种工业应用的缺陷检查),其中从整个重复图案中将每个单元分离出来,可以使检查更加可靠和有效。但是应当理解,在许多行业中,产品内的产品形状或特征可能经常(例如每天)改变,这使得模板选择和模板匹配具有挑战性。但是根据图1所示的模板单元边界识别技术提供的动态模板更新操作,可以提供完整的自动化解决方案来找出模板图像用于模板匹配操作。

在图1所示实施例的步骤101,获得源图像。实施例的源图像可以例如使用线扫描相机、面扫描相机等获得。源图像包括棋盘格图像,其有多个重复的、非重叠单元(在本文中称为图案单元),形成一个图案,从中获得一个模板图像。例如,根据本发明实施例获得的源图像(例如图4的源图像410)可以包括各种配置的二维(2d)矩形棋盘格图像。根据本发明实施例,棋盘格图像包括物品图像,诸如包括多个集成电路芯片的硅晶片、多个商品组合的印刷品等,诸如可以在物品处理期间(例如在制造、检查、包装等过程中)拍摄的图像。本发明实施例可以包含有清晰边缘将图案单元分开的棋盘格图像,和没有清晰边缘将图案单元分开的棋盘格图像。

根据本发明实施例的操作,源图像内的棋盘格图案大约处于正交位置。例如,源图像的多单元集合棋盘格图案内的图案单元的行和/或列是以几何法线位置(geometricnormalposition)分布(例如行基本上沿90°/270°轴向定向,和/或列基本上沿着0°/180°轴向定位),而不是随机旋转的位置。

在所示实施例的流程100的步骤102,对源图像进行归一化,以增强输入图像的对比度。例如,在归一化时,源图像410可以从彩色图像转换为灰度图像(例如图4的灰度源图像420),并且灰度值被归一化(例如提供归一化的源图像430)。作为一个示例,可以用最大灰度强度对灰度源图像420进行归一化(例如提供动态范围校正),以对归一化源图像430提供增强的对比度。根据示例性实施例,归一化可以包括标准化灰度源图像,将像素强度值转换为0分数(zero-score),从而形成标准化数据集,该数据集保留了原始像素的统计特征,但平均值为0,标准偏差为1。对于源图像灰度x,平均值为μ和标准差σ,值x的0分数为:

这种像素强度值的标准化提供了归一化,其中比例因子是处理的部分源图像的像素强度的标准偏差。

除了标准化之外或作为标准化的替代,对源图像的处理可以包括对源图像或其一部分的操作。例如,如果源图像很大(如超过800×600像素或1000×1000像素),则在步骤102的源图像处理可以包括通过裁剪源图像(如从源图像的左上角或其他位置开始,剪出800×600像素部分图像)来减小源图像的尺寸以进行标准化。由模板单元边界标识处理的这种源图像尺寸的减小可以加速计算和/或其他功能。

继续图1的流程100,在步骤103,选择源图像(或其部分)内的一个样本区域,用于模板单元边界识别处理。例如,如果归一化源图像430(或正在处理的那部分源图像)的尺寸为m×n个像素,可以选择尺寸为p×q个像素的样本区域530(例如从源图像的左上角或其他位置开始)进行分析,以确定模板图像的模板单元尺寸,如图5所示。根据本发明实施例,样本区域包括源图像的一个子集,p<m和q<n。优选选择的样本区域尺寸(以p×q表示)是p为m的1/9至1/2,而q为n的1/9至1/2。

根据实施例,样本区域的尺寸被选择为大于模板单元尺寸。然而,模板单元的尺寸是未知的,根据实施例其尺寸最终是使用样本区域来确定的。因此,在本发明实施例步骤103,在样本区域尺寸范围的较大端处初始选择样本区域的尺寸(例如p=m的1/2,q=n的1/2),步骤103随后进行的迭代会朝向样本区域尺寸范围的较小端(例如p<m的1/2直至p=m的1/9,q<n的1/2至q=n的1/9)进行选择。应当理解,尽管实施例选择足够大的样本区域以大于模板单元尺寸,但是所选择的样本区域尺寸最好是选择(或重新选择,如下所述)使其足够小以利于识别源图像内重复的图案单元。

根据本发明实施例,在分析以确定模板图像的模板单元尺寸时,与样本区域(例如样本区域530)相对应的一部分源图像(例如标准化源图像430)的可以用作卷积核心,以对源图像进行卷积处理。例如,样本区域图像(例如与样本区域530相对应的源图像部分)可以沿着卷积路径(例如图6的卷积路径601)移动,以执行逐像素卷积计算,遍历源图像(例如标准化的源图像430)范围。可以根据以下原理来应用这样的逐像素卷积计算,其中,尺寸为m×n的源图像表示为a,尺寸为p×q的采样区域图像表示为b。对于离散的二维变量a和b,以下等式定义了卷积:

其中c是卷积结果图,r和c是卷积结果图的坐标,其中0≤r<p+m-1和0≤c<q+n-1。关于本发明实施例使用的卷积计算的更多信息,在stevensmith的“thescientistandengineer'sguidetodigitalsignalprocessing”(加利福尼亚技术出版社,1997年(isbn10:0966017633))中有提供,该文献通过引用并入本文。

在实施例流程100的步骤104,分析关于样本区域图像和源图像的卷积处理的结果,以识别局部最大峰值。例如,上述遍历源图像范围的样本区域图像的逐像素卷积计算可以提供如图7的卷积图700所示的结果,其显示了样本区域图像和源图像的卷积处理产生的峰701。可以针对卷积图700的峰值701使用局部最大值方法,以识别与在卷积图像(即样本区域图像和源图像)之间具有最高相似度的块的中心(例如多单元集合的图案单元)所对应的峰值。根据本发明实施例,可以利用各种局部最大值方法来识别峰。例如,一种这样的局部最大值方法可以使用一个预定阈值(例如卷积图中最大值的80%),由此可以使用斑点分析(blobanalysis)来确定多少个斑点包含该图像中的局部峰,对于每个斑点,斑点内部最大值的位置可用于确定局部最大位置。不管使用任何特定局部最大值方法,所识别的局部最大值峰可用于创建一个峰值图,用于确定模板单元尺寸。

图8显示了一个示例的峰值图800,该峰值图包括卷积图700的峰,该卷积图700的峰被识别为与卷积图像之间相似的块的中心相对应的峰。因此,峰值图800的峰801对应于多单元集合的棋盘格源图像中的推定图案单元的中心。

在图1所示实施例的步骤105,确定关于从卷积处理中识别出的峰的数量是否满足一个峰阈值。例如,根据实施例,可以分析峰值图800以确定代表推定图案单元的中心的峰801的数量是否大于用于确定(或可靠地确定)模板单元尺寸的阈值数量。在实施例的模板单元边界识别技术中,阈值是相对于确定模板单元尺寸的最小峰数而预先确定的。作为一个示例,用于确定模板单元尺寸的最小峰数(例如峰值图800中峰801的阈值数)可以设置为4(即峰阈值=4,使得峰值图中的峰的数量≥峰阈值)。实施例使用的峰阈值可以包括除了单个最小值外的其他特性。例如,峰阈值可以包括次极小值(sub-minimums),例如水平的最小数量的峰值和/或垂直的最小数量的峰值(例如峰阈值=4,其中峰阈值包括水平峰阈值=2和垂直峰阈值=2,以提供2×2峰阈值配置)。

在步骤105,如果确定从卷积处理识别出的峰的数量不满足峰阈值,处理返回到步骤103,以在源图像内重新选择一个样本区域以执行卷积处理。例如,如果在从卷积处理中识别出的峰的数量小于一个预定为用于确定(或可靠地确定)模板单元尺寸的最小峰数量的峰阈值时,样本区域尺寸可能很大以至于在源图像中有识别足够的图案单元的重复。相应地,本发明实施例返回到步骤103,朝向样本区域尺寸范围的较小端,重新选择一个减小尺寸的样本区域(例如pn<pn-1,其中pn<m的1/2,直至pn=n的1/9,qn<qn-1,其中qn<n的1/2直至qn=n的1/9)。此后,关于重新选择样本区域尺寸的样本区域图像,执行上述卷积处理,以确定是否识别出满足峰阈值的峰数量。

但是,如果在步骤105确定从卷积处理识别出的峰的数量满足峰阈值,则处理进行到进一步处理以确定模板单元尺寸。例如,在从卷积处理中识别出的峰的数量大于或等于一个预定为确定(或可靠地确定)模板单元尺寸的最小峰数量的峰阈值时,样本区域尺寸可能足够大,从而大于模板单元尺寸,并且足够小以方便识别源图像内图案单元的足够重复。

在图1实施例的步骤106,分析峰的方位,所述峰被识别为对应于多单元集合的棋盘格源图像中的推定图案单元。例如,可以分析峰值图800的峰801的方位,以确定它们是否在几何法线位置上(例如,行基本上沿90°/270°轴向定位,和/或列基本上沿0°/180°轴向定位)。为了帮助理解前述内容,源图像(例如图9的归一化源图像910)内的棋盘格图案可以不在正交位置上(归一化的源图像830的多单元集合的棋盘格图案内的图案单元的行和列,都关于一个几何法线位置旋转了一个角度,其中,行大约沿85°/265°轴向定位,和/或列大约沿355°/175°轴向定位)。如图9的卷积图920所示,遍历该源图像范围的样本区域图像的上述逐像素卷积计算,提供了一个结果,其中卷积图的峰不在正交位置上。相应地,所得峰值图的峰(包含卷积图的峰,该卷积图的峰被识别为对应于卷积图像之间相似的块的中心)不在正交位置,如图9的峰值图930所示。特别地,峰值图930的峰的拟合直线(如水平拟合线931和垂直拟合线931)既不是水平的也不是垂直的。

在实施例的步骤106,如果被识别为与推定图案单元相对应的峰的方位被确定为没有适当地处于几何法线位置上(例如拟合线从水平和/或垂直方向旋转的角度大于一个预定角度,如±1°),可以根据主拟合线的方位进行旋转校准,以方便模板单元边界的识别。例如,可以确定水平拟合线931关于水平轴(例如90°/270°轴)旋转一个量,垂直拟合线932关于垂直轴(例如0°/180°轴)旋转一个量,旋转峰值图930,使水平拟合线931和垂直拟合线932的方位处于一个预定旋转阈值量(例如±1°)内,如图9的峰值图940所示。

如果旋转后拟合线不垂直,则可以对峰值图的峰执行仿射变换(affinetransformation),以使拟合线垂直。标准仿射变换可以提供反射、缩放、旋转、剪切和平移图像,同时确保平行线保持平行。本发明实施例利用仿射变换仅提供旋转,因此实施例的仿射矩阵将变为:

其中θ是逆时针的旋转角度。

在步骤107,基于被识别为与多单元集合棋盘格源图像的推定图案单元的中心相对应的峰的间隔,来确定模板单元的尺寸。例如,可以对于峰值图800的峰801,进行确定一个或多个峰的间隔,以确定模板单元的宽度(w)和高度(h)。根据实施例,可以使用向量统计方法来确定水平和垂直方向上的峰间隔,其中水平和垂直峰间隔可以用于提供单个模板单元的尺寸(例如,水平峰间隔=w,垂直峰间隔=h)。

图10a和10b显示了本发明实施例的向量统计方法的实施。如图10a所示,可以相对于峰值图800的峰确定峰间隔。特别地,图10a显示了水平峰间隔的确定。应当理解,可以类似地确定垂直峰间隔。图10b显示了峰间隔的统计分析,以确定代表模板单元的水平和垂直尺寸的峰间隔。在图示示例中,选择具有最高统计位移(displacement)次数的水平峰间隔位移和垂直峰间隔位移的峰间隔,被选择为模板单元的宽度(w)和高度(h)。例如,如行差异图1010的直方图所示,选择具有高统计频率的数据(鉴于模板单位宽度为非零,忽略0附近的数据),这些数据的平均值可用作行间隔(即模板单元的宽度w)。类似地,如列差异图1020的直方图所示,选择具有高统计频率的数据(鉴于模板单元高度为非零而忽略0附近的数据),这些数据的平均值可用作列间隔(即模板的高度h)。根据实施例,所确定的宽度和高度提供了模板单元尺寸,用于本发明实施例的模板单元边界的识别。

在图1所示流程100的步骤108,确定模板在源图像内的位置。例如,可以使用所确定的模板单元尺寸来识别棋盘格源图像中的模板单元边界,其中可以依靠模板单元边界来确定模板在源图像内的位置。再次参考图2,流程200显示了示例性实施例的步骤108,使用所确定的模板单元尺寸来确定像素分析线段,以用于识别棋盘格图像中的模板单元边界。

实施例的模板单元边界识别技术被配置以适应各种配置的2d矩形棋盘形图像。例如,根据本发明概念的模板单元边界识别技术可以适应具有垂直和水平对齐的图案单元(如图11a所示的源图像)的棋盘图像、具有垂直交错和水平对齐的图案单元(如图11b所示的源图像)的棋盘图像、和/或具有垂直对齐和水平交错的图案单元(如图11c所示的源图像)的棋盘图像。从下面的讨论中将更好地理解,图2所示实施例的流程200被配置以适应上述每个棋盘图像配置。

在图2所示流程200的步骤201,根据第一配置来确定水平像素分析线段,其中第一配置可以至少部分地基于模板单元的尺寸。例如,可以将多个水平像素分析线段确定为其垂直间隔等于所确定的模板单元尺寸的模板单元高度(h)。另外或者,可以将多个水平像素分析线段确定为其长度是基于所确定的模板单元尺寸的模板单元宽度(w)的。根据本发明实施例,第一配置的水平像素分析线段长度大于模板单元宽度(w)(例如2w),以便提供源图像内的像素采样用于获得可靠的边界分析。根据第一配置确定的水平像素分析线段的示例在图11a和11b中显示为水平像素分析线段1111a和1111b。在图11a和11b的示例中,多个水平像素分析线段包括2个水平像素分析线段,并且水平像素分析线段的长度是2w。

根据实施例,关于预定标准,分析对应于多个水平像素分析线段的位置的像素,以识别模板的水平(如顶部和底部)边界。因此,在所示实施例的步骤202,当水平像素分析线段在源图像上垂直滑动时,分析与水平像素分析线段相对应的源图像(例如,归一化源图像430)的像素。例如,如图12a至图12c所示,并列的水平像素分析线段1111a和1111b可以在归一化的源图像430上垂直向下滑动,以预定标准分析对应于水平像素分析线段的各个位置的源图像像素。滑动水平像素分析线段的起始位置可以是源图像内的任何期望位置。例如,实施例可以选择源图像顶部附近的一个位置(例如源图像的左上角),以适应水平像素分析线段垂直向下滑动。另外或者,实施例可以选择源图像的一个中心位置(例如源图像上边缘的中心,源图像的中心等)以避免源图像里的边缘效应(例如翘曲、变形等)。

根据实施例的用于识别模板单元边界的预定标准可以包括像素的一个或多个属性。例如,实施例可以分析与水平像素分析线段相对应的像素,以确定水平像素分析线段的一个位置,在该位置处与并列的水平像素分析线段相对应的像素基本上是均匀的(例如,对应于每个水平像素分析线段的像素灰度值基本上是均匀的)。另外或者,根据本发明实施例,可以使用诸如标准偏差之类的其他统计工具来分析像素以识别模板单元边界。图12a-12c的灰度直方图1201a-1201c显示了与每个水平像素分析线段相对应的像素的灰度值的分布。从图12a至图12c的示例可以看出,灰度直方图1201a和1201b的灰度值是分布的,而灰度直方图1201c的灰度值是均匀的,对应于水平像素分析线段1111a和1111b已经滑到对齐图案单元之间的接合处。

确定与多个水平像素分析线段位置相对应的像素满足预定标准(例如,在前述示例中为基本均匀的像素),该位置可用于确定源图像中模板水平边界(例如顶部和底部)的y坐标。因此,在所示实施例的流程200的步骤203,确定是否已经识别了模板的水平边界的y坐标。

如果所示实施例的步骤203的确定指示已经识别出模板的水平边界的y坐标,则处理进行到步骤204,用于进一步处理以识别模板的垂直边界的x坐标。在所示实施例的步骤204,根据第二配置来确定垂直像素分析线段,其中第二配置可以至少部分地基于模板单元的尺寸。例如,可以将多个垂直像素分析线段确定为其水平间隔等于所确定的模板单元尺寸的模板单元宽度(w)。另外或者,可以将多个垂直像素分析线段确定为其长度是基于所确定的模板单元尺寸的模板单元高度(h)的。根据本发明实施例,第二配置的垂直像素分析线段长度等于模板单元高度(h),因为模板的水平边界的y坐标可以用于垂直定位源图像中的垂直像素分析线,以对应于一行图案单元。根据第二配置确定的垂直像素分析线段的示例在图11a和11b中显示为垂直像素分析线段1112a和1112b。在图11a和11b的示例中,多个垂直像素分析线段包括2个垂直像素分析线段,并且垂直像素分析线段的长度为h。

根据实施例,关于预定标准,分析与多个垂直像素分析线段的位置相对应的像素,以识别模板的垂直(例如左和右)边界。因此,在所示实施例的步骤205,当垂直像素分析线段在源图像上水平滑动时,分析与垂直像素分析线段相对应的源图像(例如归一化源图像430)的像素。例如,如图13a-13c所示,并列的垂直像素分析线段1112a和1112b可以在归一化源图像430上水平向右滑动,并且以预定标准分析与垂直像素分析线段各个位置相对应的源图像像素。滑动垂直像素分析线段的起始位置可以是上面识别的水平模板单元边界之间的源图像内任何期望位置。例如实施例可以选择靠近源图像的左边缘(例如源图像的左边缘)的位置,以适应垂直像素分析线段向右水平滑动。另外或者,实施例可以选择源图像的一个中心位置(例如源图像的图案单元行的中心),以避免源图像中的边缘效应(例如翘曲、变形等)。

继续以上示例,其中在识别模板单元边界中使用的预定标准包括基本均匀的像素,实施例可以分析与垂直像素分析线段相对应的像素,以确定垂直像素分析线段的一个位置,在该位置处的、对应于并列的垂直像素分析线段的像素值基本上是均匀的(例如,与每个垂直像素分析线段相对应的像素的灰度值是基本上均匀的)。图13a-13c的灰度直方图1301a-1301c显示了与每个水平像素分析线段相对应的像素的灰度值的分布。从图13a-13c的示例中可以看出,灰度直方图1301b和1301c的灰度值是分布的,而灰度直方图1301a的灰度值是均匀的,对应于垂直像素分析线段1112a和1112b对齐图案单元列之间接合处。

确定与多个垂直像素分析线段位置相对应的像素满足预定标准(例如,在前述示例中为基本均匀的像素),该位置可用于确定源图像中模板垂直边界(例如右和左)的x坐标。因此,在所示实施例的流程200的步骤206,确定是否已经识别了模板的水平边界的x坐标。

如果所示实施例的步骤206的确定指示已经识别出模板的垂直边界的x坐标,则处理进行到步骤213,以进行处理以确定模板单元的边界框。例如,根据实施例,上面识别的x和y坐标可以用于识别模板的边界框(例如,包围一部分归一化源图像430的边界框1301,提供了模板图像1302,如图13a所示)。

再次返回到确定是否已经识别出y坐标,如果所示实施例的步骤203的确定指示尚未识别出模板的水平边界的y坐标,则处理进行到步骤207,替代处理以识别模板的垂直边界的x坐标。作为一个示例,棋盘格源图像可以包括垂直对齐但水平交错的图案单元(如图11c所示),由此以预定标准分析对应于多个水平像素分析线段位置的像素以识别出模板的水平边界会失败(例如,分析未识别出一个位置上有基本均匀的像素)。在所示实施例的步骤207,根据第三配置来确定垂直像素分析线段,其中第三配置可以至少部分地基于模板单元的尺寸。例如,可以将多个垂直像素分析线段确定为其水平间隔等于所确定的模板单元尺寸的模板单元宽度(w)。另外地或可替代地,可以将多个垂直像素分析线段确定为其长度是基于所确定的模板单元尺寸的模板单元高度(h)的。根据本发明实施例,第三配置的垂直像素分析线段的长度大于模板单元高度(h)(例如2h),以便提供源图像内的像素采样用于获得可靠的边界分析。根据第三配置确定的垂直像素分析线段的示例在图11c中显示为垂直像素分析线段1112c和1112d。在图11c的示例中,多个垂直像素分析线段包括2个垂直像素分析线段,并且垂直像素分析线段的长度是2h。

根据实施例,以预定标准来分析与多个垂直像素分析线段位置相对应的像素,以识别处模板的垂直(例如左和右)边界。因此,在所示实施例的步骤208,当垂直像素分析线段在源图像上水平滑动时,分析与垂直像素分析线段相对应的源图像(例如归一化源图像430)的像素。例如,类似于图13a-13c的图示,并列的垂直像素分析线段1112c和1112d可以在归一化的源图像430上水平向右滑动,并且以预定标准分析对应于垂直像素分析线段的各个位置的源图像像素。滑动垂直像素分析线段的起始位置可以是源图像内的任何期望位置。例如实施例可以选择靠近源图像的左边缘的一个位置(例如源图像的左上角),以适应垂直像素分析线段向右水平滑动。另外或替代地,实施例可以选择源图像的中心位置(例如源图像的左边缘的中心、源图像的中心等)以避免源图像的边缘效应(例如翘曲、变形等)。

继续以上示例,其中在识别模板单元边界中使用的预定标准包括基本均匀的像素,实施例可以分析与垂直像素分析线段相对应的像素,以确定垂直像素分析线段的一个位置,在该位置上,与并列的垂直像素分析线段相对应的像素基本上是均匀的(例如,与每个垂直像素分析线段相对应的像素的灰度值是基本上均匀的)。例如,如果垂直像素分析线段1112c和1112d对齐图案单元的列之间的接合处,可以确定像素的灰度值是均匀的。

确定与多个垂直像素分析线段位置相对应的像素满足预定标准(例如,在前述示例中为基本均匀的像素),该位置可用于确定源图像中模板垂直边界(例如右和左)的x坐标。因此,在所示实施例的流程200的步骤209,确定是否已经识别出模板的水平边界的x坐标。

如果所示实施例的步骤209的确定指示已经识别出模板的垂直边界的x坐标,则处理进行到步骤210,进行进一步的处理以识别模板的水平边界的y坐标。在所示实施例的步骤210,根据第四配置来确定水平像素分析线段,其中第四配置可以至少部分地基于模板单元的尺寸。例如,可以将多个水平像素分析线段确定其垂直间隔等于所确定的模板单元尺寸的模板单元高度(h)。另外或替代地,可以将多个水平像素分析线段确定为其长度是基于所确定的模板单元尺寸的模板单元宽度(w)的。根据本发明实施例,第一配置的水平像素分析线段长度等于模板单元宽度(w),因为模板的垂直边界的x坐标可以用于水平定位源图像中的水平像素分析线段,以对应一列图案单元。根据第四配置确定的水平像素分析线段的一个示例在图11c中显示为水平像素分析线段1111c和1111d。在图11c的示例中,多个水平像素分析线段包括2个水平像素分析线段,并且水平像素分析线段的长度是w。

根据实施例,以预定标准分析对应于多个水平像素分析线段位置的像素,以识别模板的水平(例如顶部和底部)边界。因此,在所示实施例的步骤211,当水平像素分析线段在源图像上垂直滑动时,分析与水平像素分析线段相对应的源图像(例如归一化源图像430)的像素。例如,类似于图12a-12c的图示,并列的水平像素分析线段1111c和1111d可以在归一化的源图像430上垂直向下滑动,以预定标准分析对应于水平像素分析线段的各个位置的源图像像素。滑动水平像素分析线段的起始位置可以是上面识别的垂直模板单元边界之间的源图像内任何期望位置。例如,实施例可以选择靠近源图像的顶部(例如源图像的顶部边缘)的位置,以适应水平像素分析线段垂直向下滑动。另外或替代地,实施例可以选择源图像的中心位置(例如,源图像的图案单元列的中心),以避免源图像中的边缘效应(例如翘曲、变形等)。

继续以上示例,其中在识别模板单元边界中使用的预定标准包括基本均匀的像素,实施例可以分析与水平像素分析线段相对应的像素,以确定水平像素分析线段的一个位置,在该位置上,与并列的水平像素分析线段相对应的像素基本上是均匀的(例如,与每个垂直像素分析线段相对应的像素的灰度值是基本上均匀的)。例如,如果水平像素分析线段1111c和1111d对齐图案单元的行之间的接合处,可以确定像素的灰度值是均匀的。

确定与多个水平像素分析线段位置相对应的像素满足预定标准(例如,在前述示例中为基本均匀的像素),该位置可用于确定源图像中模板水平边界(例如顶部和底部)的y坐标。因此,在所示实施例的流程200的步骤212,确定是否已经识别出模板的水平边界的y坐标。

如果所示实施例的步骤212的确定指示已经识别出模板的水平边界的y坐标,则处理进行到步骤213,以确定模板单元的边界框。例如,根据实施例,以上识别的x和y坐标可以用于识别模板的边界框。

再次返回到在步骤206和209,关于确定尚未识别出x坐标,以及在步骤212,关于确定尚未识别出y坐标,处理进行到步骤214,模板坐标识别失败。例如,如果所示实施例的步骤206的确定指示尚未识别出模板的垂直边界的x坐标,则根据流程200的处理已经识别出了y坐标,但是未能识别出边界框的x坐标。因此尚未确定模板在源图像中的完整位置。类似地,如果所示实施例的步骤212的确定指示尚未识别出模板的水平边界的y坐标,则根据流程200的处理已经识别出了x坐标,但是未能识别出模板边界框的y坐标。因此尚未确定模板在源图像中的完整位置。如果所示实施例的步骤209的确定指示尚未识别出模板的垂直边界的x坐标,则根据流程200的处理未能识别出模板的边界框的y坐标和x坐标。因此,尚未确定模板在源图像中的位置。因此,在步骤214的处理可以提供一个错误状态以终止关于源图像的模板单元边界识别处理。或者,步骤214的处理可以提供尝试进行故障恢复的处理。在故障恢复处理的示例中,确定是通过垂直滑动水平像素分析线段来分析源图像的像素(例如步骤202)还是通过水平滑动垂直像素分析线段来分析源图像的像素(例如步骤208),以指示图像内的更均匀的位置。如果通过垂直滑动水平像素分析线段来分析源图像的像素(例如步骤202)以指示图像内的位置更均匀,则故障恢复处理可以使用这些结果,并通过在源图像上水平滑动垂直像素分析线段来分析源图像的像素(例如步骤204和205)。但是,如果通过水平滑动垂直像素分析线段来分析源图像的像素(例如步骤208)指示图像内的位置更均匀,则故障恢复可以使用那些结果并通过在源图像上垂直滑动水平像素分析线段来分析源图像像素(例如步骤210和211)。

从前述内容可以理解,根据所示实施例流程200的处理首先进行尝试确定源图像内模板的水平(例如顶部和底部)边界的y坐标(步骤201-203),此后进行尝试确定模板的垂直(例如左和右)边界的x坐标(步骤204-206)。但是,如果尝试确定模板的水平边界的y坐标(步骤201-203)不成功,则流程200的处理进行替代地尝试确定模板的垂直边界的x坐标(步骤207-209)。然后,进行确定模板的垂直边界的y坐标(步骤210-212)。该x/y坐标确定过程被配置以适应每个上述棋盘图像配置(例如通过步骤201-206识别垂直和水平对齐的图案单元以及垂直交错和水平对齐的图案单元的模板单元边界,通过步骤207-212识别垂直对齐和水平交错的图案单元的模板单元边界)。但是应当理解,水平和垂直边界确定的顺序可以不同于图2所示的流程200的顺序(例如,交换水平像素分析线段分析及y坐标识别,与垂直像素分析线段分析及x坐标识别)。

根据实施例识别的模板单元边界可被用来从棋盘格源图像中找出(例如,识别、选择和/或捕获)模板图像。因此,再次参考图1,在步骤108确定模板在源图像内的位置之后(例如根据图2的流程200,使用所识别的x和y坐标来识别模板的边界框),流程100进行到步骤109,进行处理以从源图像获得模板图像。例如,模板单元边界框(例如,具有上面确定的模板单元尺寸以及模板单元水平和垂直边界位置)可以用于识别包含模板图像的归一化源图像430的区域,从而那部分归一化源图像430可以用作为模板图像。

例如,根据本发明实施例获得的模板图像可以用于模板匹配技术中,以在棋盘格图像中找到多单元集合中的各个图案单元的位置。因此,在所示实施例的步骤110,模板图像用于在源图像内找到一个或多个图案单元。例如,可以关于模板图像1302和归一化源图像430使用模板匹配技术以找到棋盘格图像的各个图案单元。

尽管在以上示例中描述了归一化源图像的使用,但是本文中模板单元边界识别技术和/或模板匹配技术可以使用其他形式的源图像。例如,尽管可以通过参考归一化源图像来确定模板图像的边界框,但是本发明实施例仍然可以关于原始源图像(例如源图像410)和/或中间处理的源图像(例如灰度源图像420)使用模板单元边界框,以从另一种或替代形式的源图像获得模板图像。

应当理解,多单元集合的图案单元在棋盘格图像内可能看起来不完全均匀。例如,不良的图像拍摄技术可能导致源图像有边缘效应(例如,朝着源图像的一个或多个边缘布置的图案单元具有一个或多个非均匀属性,如图14a的“模糊边界”示例所示)、翘曲(例如弯曲或扭曲的图案单元变形,如图14b的翘曲示例所示)、透镜效应(例如扭曲的图案单元,如图14c的桶形畸变或图14d的枕形畸变所示)等。相应地,实施例使动态模板图像更新能够提供以使模板图像适应以适应棋盘图像的多单元集合内的图案单元异常(例如模糊边界、失真等)。

图15显示了本发明实施例的提供动态模板图像更新的流程1500。例如,流程1500提供的动态模板图像更新可以和模板匹配技术一起来实施,用于找到棋盘图像的各个图案单元。例如,可以在上述流程100的步骤110处实施流程1500,以提供动态模板图像更新,以提供适应模板图像以适应棋盘图像的多单元集合中的图案单元异常(例如模糊边界、失真等)。

应当理解,当以软件实施时,流程1500提供动态模板图像更新的功能可以包括代码段,以执行本文所述的任务。可以将代码段存储在处理器可读介质(例如电子电路、半导体存储设备、rom、闪存、erom、光盘、硬盘等)中,由基于处理器的系统(如图3的基于处理器的系统300)的一个或多个处理器执行。代码段可以经由如lan、wan、因特网、内联网、蜂窝通信网络等的计算机网络来下载。

在图15所示实施例的步骤1501,使用模板图像来找到源图像内的一个或多个图案单元。例如,如关于图1的步骤110所讨论的,可以关于模板图像1302和归一化源图像430使用模板匹配技术来找到棋盘格图像的各个图案单元。

在步骤1502,对模板图像与一部分源图像的每次匹配,计算模板图像匹配分数。例如,当通过使用上述模板匹配技术而识别出源图像内基本对应于模板图像的位置时,可以计算一个模板度量分数以指示一个匹配分数(例如匹配百分比计算)。例如,匹配分数可以通过归一化交叉校正(normalizedcrosscorrection)方法来计算:

其中r是归一化交叉校正结果图,t是模板图像,i是源图像,x和y是归一化交叉校正结果图r的坐标,x′和y′是模板图像t的坐标。

在步骤1503,确定匹配分数是否满足一个匹配阈值。例如,可以提供一个预定的匹配阈值(例如80%的匹配百分比阈值),以确定源图像内的模板图像匹配是否具有足够的质量以继续使用该模板图像,或者具有较低的质量,从而要动态更新一个新的或更改的模板图像(例如,对一些或全部剩余部分源图像进行更新,对一个或多个后续处理的源图像使用更新等)。

如果在步骤1503确定匹配分数达到或超过匹配阈值,则处理进行到步骤1506,确定在多单元集合内是否找到所有图案单元。例如,如果在多单元集合的棋盘格源图像内已经找到所有图案单元,则流程1500的动态模板图像更新操作可以结束(例如,对后续源图像进行模板匹配处理)。但是,如果在多单元集合内尚未找到所有图案单元,则流程1500返回到步骤1501,继续在源图像内定位一个或多个图案单元。

但是,如果在步骤1503确定匹配分数不满足匹配阈值,则处理进行到步骤1504,进行动态更新模板图像的操作。例如,在所示实施例的步骤1504,被识别为与模板图像匹配的、匹配分数小于匹配阈值(例如,由于原始图像内图案单元的失真等)的那部分源图像部分,被分析以找到局部图案单元内的特征点。例如,这样的特征点可以包括在局部图案单元内以及相应地在模板图像中可以识别的角和/或其他特征。作为一个特定示例,根据本发明的实施例,可以利用哈里斯角点检测(harriscornerdetection)来找到拐角特征。在所示实施例的步骤1505,将在局部图案单元中识别的一个或多个特征点与模板图像内可识别的对应特征点进行匹配,并且对模板图像进行变换(例如扭曲、缩放、倾斜、阴影等),以更紧密地匹配(即更新)局部图案单元。根据实施例,由于模板图像的尺寸小,所以可以用透视变换模型来表示模板变换的模型。在步骤1505的模板变换之后,处理进行到步骤1506,如上所述,确定在多单元集合内是否已经找到所有图案单元。

从前述内容可以理解,本发明的模板单元边界识别技术可以用于实施自动寻找模板图像,由此可以减少用于获得模板图像的处理时间和/或可以提供比先前技术更一致的结果。此外,实施例使得能够进行动态模板图像更新,以提供适应性的模板图像,以适应多单元集合棋盘图像内的图案单元异常。

尽管已经详细描述了本发明及其优点,但应该理解的是,在不脱离由所附权利要求限定的本发明的思想和范围的情况下,可以在此做出各种改变、替换和更改。此外,本申请的范围并非限于说明书中所描述的过程、机器、制造、物质组成、手段、方法和步骤的特定实施例。如本领域普通技术人员,若将容易地从本发明的公开内容中理解的,目前存在或将来开发的执行基本上相同功能的过程、机器、制造、物质组成、手段、方法或步骤,根据本发明可以实现与本文所述的对应实施例基本相同的结果,则相应地,所附权利要求意在其范围内将包括这样的过程、机器、制造、物质组成、手段、方法或步骤。

另外,本申请范围不旨在限于说明书中描述的特定实施例的过程、机器、制造、物质组成、手段、方法和步骤。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1