对移动设备捕获的数字图像中的对象进行分类的系统和方法_2

文档序号:9553549阅读:来源:国知局
文档的图像不显示真正的矩形,并且图像中的文档的相对边不具有相同的长度。 第二,即使最好的镜头都具有一些非线性,其导致对象中的直线,例如,实质上矩形文档的 直边,在对象的捕获图像中会显现轻微弯曲。第三,用照相机捕获的图像不可避免地趋向于 引入不均匀的照明效果。照明的这种不均匀性甚至使得与文档放置位置相对的表面的完美 均一背景在图像中显现出变化的亮度,并且经常有阴影,尤其是在页面没有完全放平时围 绕页面边缘。
[0065] 在示例性的方法中,为了避免搞错页面边缘背景中的变化,当前的算法使用一个 或多个下列功能。
[0066] 在许多实施例中,图像帧包括具有周围背景边缘的文档的数字表示。在优选的实 现方式中,对单个页面边缘的搜索可以执行彻底地分析图像的行和列的跨步方法。在一个 实施例中,跨步方法可以限定多个数字图像中的分析窗口,例如此处的理解,分析窗口可以 包括一个或多个"背景窗口",即仅涵盖描绘数字图像的背景的像素的窗口,以及一个或多 个"测试窗口",即涵盖描绘数字图像背景像素、文档的数字表现或二者的窗口。
[0067] 在优选的实施例中,,文档的数字表现可以通过在对应于文档放置表面的背景的 图像边缘中限定第一分析窗口(即背景分析窗口)在数字图像中检测到。在第一分析窗口 中,多个小分析窗口(例如测试窗口)可以限定于第一分析窗口中。利用多个测试窗口,可 以估计一个或多个描述背景的统计特性的一个或多个分布。
[0068] 继续参照紧接上面讨论的优选实施例,检测文档的数字表现的边界的下一步可以 包括限定数字图像中的多个测试窗口,并且分析数字图像的对应区域。对每个数字测试窗 口,可以计算出一个或多个描述图像的对应区域的统计值。进一步地,这些统计值可以与对 应的描述背景的统计分布相比较。
[0069] 在优选的方法中,多个测试窗口可以沿路径限定,尤其是沿线性路径。在具体的优 选方法中,可以在水平方向和/或垂直方向限定多个测试窗口,例如沿数字图像的行和列。 而且,可以采取逐步进行的方式来沿着路径和/或在行和/或列之间限定测试窗口。在一 些实施例中,如本领域技术人员在阅读本说明书时将领会到的,利用逐步进行可以有利地 增加文档检测处理的计算效率。
[0070] 而且,在一些实施例中,可以基于图像的分辨率或像素大小预估开始步的幅度,但 是如果文档侧的可靠检测是有利的,此步可以减小,如下面的进一步讨论。
[0071 ] 在更多的实施例中,算法估计处于文档周围背景中的大分析窗口中发现的描述了 图像性质的若干统计分布。在一种方法中,在大分析窗口中可以限定多个小窗口,并且可以 估计描述了小测试窗口的统计分布。在一个实施例中,大分析窗口限定于数字图像的背景 区域,例如图像的左上角。
[0072] 如本领域技术人员在阅读本说明书时可以理解的,描述了背景像素的统计数字可 以包括任何由数字图像数据生成的统计值,例如最小值、最大值、中间值、平均值、值的跨度 或范围、方差、标准偏差等。如本领域技术人员在阅读本说明书时可以理解的,值可以从 任何描述了数字图像的数据中取样,例如一个或多个颜色通道中的亮度值,例如红绿蓝或 RGB、青-品红、黄、黑或四分色(CMYK)、色彩饱和值或HSV等。
[0073] 在一种方法中,每个小分析窗口可以包括大分析窗口中的多个像素的子集。而且, 小分析窗口可以具有能够适合大分析窗口的边界以内的任何大小和/或形状。在优选的 实施例中,小分析窗口的特点在于矩形形状,并且更加优选的是,特点为在第一方向上(如 高)为3个像素长以及在第二方向上(如宽)为7个像素长的矩形。当然,其他小分析窗 口的大小、形状和维度也适于在目前公开的处理算法中实现。
[0074] 在一个实施例中,可以利用测试窗口来分析图像以及检测图像中描绘的文档的数 字表示的边界。背景窗口用于估计背景的原始统计特性和/或重新估计背景的局部统计特 性。为了处理伪像(例如不均匀的照明和/或背景纹理变化),重新估计是必须的和/或有 利的。
[0075] 优选地,在一些方法中,可以对文档页面边缘外的范围内的大分析窗口中的一些 或所有的多个小分析窗口执行统计估计。这样的估计可以利用大分析窗口中的小分析窗口 的逐步移动完成,并且逐步移动可以适当递增以便改变对给定像素取样的数目。例如,为了 提高计算效率,分析过程可以限定大分析窗口中的多个小分析窗口,以足够保证每个像素 被取样一次。因此,限定在这个计算效率方法中的多个小分析窗口将共享公共边界而并不 重叠。
[0076] 在另一种设计为提高统计估计的鲁棒性的方法中,分析处理可以限定大分析窗口 中的多个小分析窗口,以足够保证对每个像素取样最多次数,例如通过减小步长,从而在限 定的小分析窗口间进行仅单个像素在给定方向上的位移。当然,如本领域技术人员在阅读 本说明书时可以理解的,在目前公开的处理算法的多个实施例中可以使用任何步长递增。
[0077] 技术人员会领会到,用于重新估计数字图像中局部背景的统计数字的大分析窗口 以及测试窗口可以以任何想要的方式置于数字图像中。
[0078] 例如,根据一个实施例,对给定行i左侧边缘的搜索从与围绕给定行i为中心的的 图像左侧帧边线的大分析窗口中上述统计的计算开始。
[0079] 仍然在更多的实施例中,当遇到可能的非背景测试窗口(例如估计统计结果不同 于最后已知局部背景的统计特征分布的测试窗口),在一些实施例中,因为算法从图像的外 部区域朝向其一个或多个内部区域前进,该算法可回溯至之前确定的背景区域,形成了新 的大分析窗口,并且为了重新评估在小分析窗口内选定的统计和大分析窗口内对应的统计 的局部分布间的不同之处的有效性,重新估计背景统计分布。
[0080] 如本领域技术人员在阅读本说明书时可以领会的,算法可以以多种方式从图像的 外部区域至到图像的内部区域。例如,在一种方法中,算法以大致螺旋的模式来限定测试窗 口。在其他方法中,模式可以大致沿着垂直或水平方向蜿蜒。仍然在更多的方法中,模式可 以是大致重叠模式。如本领域技术人员在阅读本说明书时可以理解的,模式也可以由覆盖 部分或全部数字图像的"顺序掩膜"限定,例如棋盘形模式,垂直、水平或对角线斜条模式, 同轴形状等。在其他实施例中,如本领域技术人员在阅读本说明书时可以理解的,根据一些 限定的流程,分析窗口(例如大分析窗口和/或小分析窗口)可以以随机方式、伪随机方 式、任意地等遍布数字图像而被限定。算法可以以任何想要的方式进行一系列测试窗口,只 要路径允许回溯至已知背景,并且路径以想要的粒度覆盖整个图像。
[0081] 有利地,如此重新计算统计数字可以帮助容纳数字图像和/或背景内部的任何照 明漂移,否则其会导致图像中非背景点(例如离群候选边缘点)的错误识别。
[0082] 仍然在更多的实施例中,如本领域技术人员在阅读本说明书时可以理解的,当不 同之处在统计上有效时,为了重新核查,算法可以沿着它的路径跳跃一定距离,并且因此绕 过背景纹理的小变化,例如木材纹理、表面的刮痕、表面的图案、小阴影等。
[0083] 在附加的和/或可替换的实施例中,在发现潜在的非背景点以后,算法确定该点 是否位于阴影的边缘(尤其是如果页面边缘被提至背景表面上方则具有可能性)并且试着 到达实际页面边缘。这个过程依靠如下观察:接近真实边缘处阴影通常会变暗,真实边缘处 通常伴随图像的突然亮度。
[0084] 由于若干原因,因为标准边缘检测器的使用是不必要的甚至不受欢迎的,上面描 述的页面边缘测试方法得到了利用。首先,大多数标准边缘检测器包括耗时操作,第二,目 前的算法不考虑附加要求,像监测边缘有多薄、它们沿着什么方向等。更加重要的是,查找 页面边缘不必包含页面监测本身,即根据本公开的页面边缘检测可以以一种方式执行,这 种方式不搜索文档边界(如页面边缘),相反地,搜索与从背景到文档的转变相关联的图像 特征。例如,转变的特点是光面纸内米白色亮度(off-whitebrightness)水平的平滑,即 纹理的变化,而不是平均灰度或颜色水平的变化。
[0085] 结果是,可能获得候选边缘点(例如,候选边缘点),其本质上是网格的每个行和 列中第一和最后的非背景像素。为了估计随机离群值(例如候选边缘点)以及确定哪些候 选边缘点对应页面的每个边,在一个方法中,分析邻近的候选边缘点是有益的。
[0086] 在一个实施例中,如本领域技术人员在阅读本说明书时可以理解的,"点"可以认 为是数字图像中的任何区域,例如像素、像素间的位置(例如,具有分数坐标的点,例如2个 像素乘2像素的正方形中心)、像素的小窗口等。在优选的实施例中,候选边缘点与测试窗 口的中心相关联(3像素X7像素窗口),已发现其特点为统计,其被确定为不同于描述的局 部背景的统计分布。
[0087] 如此处理解的,"邻近的"候选边缘点或"邻近的"像素被认为是分别邻近或紧邻感 兴趣(例如像素)的点或像素的点或像素,例如点或像素至少部分位于感兴趣的点或像素 的边界,点或像素位于感兴趣的点或像素的阈值距离之内(例如位于2、10、64像素以内等, 在给定的方向,在感兴趣的点或像素的一行之内,在感兴趣的点或像素的一列之内)等,如 本领域技术人员在阅读本说明书时可以理解的。在优选的方法中,"邻近的"点或像素可以 是沿特定方向(例如,水平方向和/或垂直方向)最靠近感兴趣点的候选边缘点。
[0088] 每个"好"边缘点理想地至少具有两个最接近的邻近点(每侧有一个),并且没有 偏离连接这些邻近点和"好"边缘点的直线段很远,例如,候选边缘点和至少两个最接近邻 近点可以适应于线性回归,结果的特点是计算系数(R2)不少于0.95。这条线段关于数字图 像的一个或多个边界的角,和它的相对位置一起,确定边缘点是否分配给页面的上、左、右 或底边。在优选的实施例中,候选边缘点以及两个邻近边缘点可以分配给三角形的各个角。 如果在候选边缘点的三角形的角接近180度,则候选边缘点可以认为是"好"候选边缘点。 如果在候选边缘点的三角形的角偏离180度多于阈值(例如20度或更多),则候选边缘点 可以从"好"候选边缘点集合中除去。这种启发式背后的基本理论是基于希望去除行和列 内第一和最后非背景像素的确定中的随机错误。这些像素不大可能存在于连续线条内,所 以,在一些方法中,根据距离和方向核查邻近点是特别有利的。
[0089] 针对速度,此网格的步长可以从大数目开始,例如32,但可以减小为2的因子,并 且搜索边缘点将不断重复,直到有足够的边缘点来基于页面边缘方程式(如下)确定最小 均方值(LMS)。即使在利用图像中的所有行和列后,这个过程还不能可靠确定面,则放弃并 且整个图像被看作为页面。
[0090] 在一个实施例中,页面各边的方程式确定如下。首先,算法使最好的LMS直线适于 每个边,其利用了去除最差离群值直到余下的所有支持边缘都位于LXS线的小距离内的策 略。例如,离本质上的直线最大距离的点可以指定为"最差"离群值,该直线沿文档的特定 边界连接多个候选边缘点。这个过程可迭代地重复,以指定和/或从多个候选边缘点中移 除一个或多个"最差"离群值。在一些方法中,候选边缘点偏离连接多个候选边缘点的直线 的距离至少部分基于数字图像的大小和/或分辨率。
[0091] 如果这条线沿它的延伸都不能很好地得到支持,算法会尝试使最佳二级多项式 (抛物线)适于相同的原始候选点。找到最佳抛物线vs.最佳直线间的算法差异是较小的: 代替两个确定线的方向和偏移的未知系数,有三个确定曲率、方向和抛物线偏移的系数;然 而,在一个实施例中,在其他方面,处理本质上相同。
[0092] 如果抛物线的支持强于直线的支持,尤其是更加接近候选边缘跨度的末端,算法 更加青睐于抛物线作为图像中页面边的更好的模型。否则,在多种方法中利用线性模型。
[0093] 为了找到(可能轻微弯曲)四边形(下面将进一步详细讨论的四边形)页面的角, 可以计算出找到的文档的四条边的交叉点。在优选的实现方式中,为了这么做,必须考虑三 种情况:计算两条直线的交叉点,计算直线和抛物线的交叉点,以及计算两条抛物线的交叉 点。
[0094] 第一种情况中,有单个解决方案(因为页面的上边缘和下边缘大多水平延伸,而 页面的左边缘和右边缘大多垂直延伸,对应的LMS线不能平行)并且这个解决方案确定对 应页面角的坐标。
[0095] 第二种情况,计算直线和抛物线的交叉点,稍微更复杂一些:二次方程的结果可以 是0、1或2个答案。如果没有交叉点,可指示页面监测出现致命问题,并且结果会遭到拒绝。 唯一答案有点不可能,但不会呈现更多问题。两个交叉点会呈现选择,这种情况离对应帧角 更近的交叉点是更好的候选点一一在实践中,方程的其他解离图像帧的坐标范围非常远。
[0096] 第三种情况,计算两条抛物线的交叉点,导致出现四阶多项式方程,(原则上)可 以利用分析法求解。然而,实践中,得到结果所必须的计算的数量比也可以保证想要的子像 素精度的近似的迭代算法要大得多。
[0097] 根据一种方法,用于这个目的的、关于文档的数字表示的矩形化的一个示例性程 序在下面详细描述。
[0098] 作为结果的对象四边形的有效性有若干限制(例如,下面将进一步讨论的四边 形)。也就是,优选地,四边形不要太小(例如,低于任何期望值的预定阈值,例如图像的总 区域的25% ),四边形的角优选地不要位于离图像帧外面太远(例如,不要远于100像素), 并且角本身可判断为左上、右上、左下和右下,其对角线在四边形内部相交等。如果这些限 制没有满足,在一些实施例中,给定的页面检测结果可以被拒绝。
[0099] 在一个说明性实施例中,检测出的文档的数字表示的四边形有效,算法可以确定 目标矩形。目标矩形的宽和高可以分别设置为四边形的上下边的平均值和左右边的平均 值。
[0100] 在一个实施例中,如果执行歪斜校正,目标矩形的歪斜角度可以设置为0,以便页 面边将变成水平和垂直的。否则,歪斜角度可以设置为上下边相对水平轴的角度和左右边 相对垂直轴的角度的平均值。
[0101 ] 在一个附加的实施例中,在类似的方法中,如果未执行裁剪校正,可以指定目标矩 形的中心,以便和四边形的四个角的坐标平均值相匹配;否则可以计算出中心,以便目标矩 形结束于图像帧的左上方。
[0102] 在一些方法中,如果页面检测结果由于任何原因被拒绝,为了得到更多的候选边 缘点并且有利地取得更合理的结果,在此描述的过程的一些或全部步骤可以以较小的步长 递增重复。在最坏的情景中,即使用最少允许的步长,问题也持续,检测出的页面设置为整 个图像帧并且原始图像可原样未动。
[0103] 现在,特别参照在此描述的有创造性的页面检测的示例性实现方式,在一种方法 中,如本领域技术人员通过阅读本说明书可以领会的,页面检测包括执行这样的方法,该方 法可以在任何环境中执行,包括本公开中在此描述的以及图中表现的环境。
[0104] 在一个实施例中,限定了多个对应于数字图像背景到文档的数字表示的转换的候 选边缘点。
[0105] 在多个实施例中,限定在操作中的多个候选边缘点可以包括一个或多个附加操 作,例如下面描述的操作。
[0106] 根据一个实施例,大分析窗口(例如,大分析窗口)限定于数字图像中。优选地, 为了得到数字图像背景的信息特征,以与非背景(例如,文档的数字表示,例如,下面将进 一步详细讨论的背景统计)信息特征进行比较和对比,第一大分析窗口限定在描绘了多个 数字图像背景像素但未描绘非背景(例如,文档的数字表示)的区域。例如,第一大分析窗 口可以限定在数字图像的角(例如左上角)处。当然,第一大分析窗口可以限定在数字图 像的任何部分而不脱离本公开的范围。
[0107] 而且,如本领域技术人员通过阅读本说明书可以理解的,大分析窗口可以具有任 何大小和/或特点为任何合适的尺寸,但在优选的实施例中,大分析窗口大约40像素高并 且大约40像素宽。
[0108] 特别地,在优选的方法中,大分析窗口限定在数字图像的角区域。例如,数字图像 包括具有多个边和背景的文档的数字表现。如上描述的,大分析窗口可以限定在包括多个 背景像素以及不包括对应于文档的数字表现的像素的区域。而且在一些方法中,大分析窗 口可以限定在数字图像的角处。
[0109] 根据一个实施例,多个小分析窗口可以限定在数字图像中,例如在大分析窗口中。 小分析窗口可以与一个或多个其他小分析窗口至少部分重叠,例如特征为包括一个或多个 重叠区域。在优选的方法中,所有可能的小分析窗口都限定在大分析窗口中。当然,小分析 窗口可以限定在数字图像的任何部分,例如,优选地,小分析窗口可以被限定,以便每个小 分析窗口以单一中心像素为特征。
[oho] 在操作中,根据一个实施例,针对一个或多个小分析窗口(例如,大分析窗口中的 一个或多个小分析窗口),计算出一个或多个统计数字,并且估计出一个或多个对应的统计 分布(例如,根据多个小分析窗口估计出统计分布)。在另一个实施例中,统计分布可以根 据一个或多个大分析窗口以及其可选合并估计出。
[0111] 而且,如本领域技术人员通过阅读本说明书可以理解的,值可以描述与数字图像 的背景相关联的任何特征,例如背景亮度值、背景颜色通道值、背景纹理值、背景色彩值、背 景对比值、背景锐度值等。而且,统计数字可以包括通过大分析窗口中的多个小分析窗口描 绘了数字图像背景的多个像素的一个或多个颜色通道中的亮度值的最小值、最大值和/或 范围。
[0112] 在操作中,根据一个实施例,估计出一个或多个背景统计分布。通过估计一个或多 个统计分布,可以获得描述例如大分析窗口中数字图像背景的特性的一个或多个描述性分 布。
[0113] 如本领域技术人员通过阅读本说明书可以领会的,优选地,一个或多个分布与对 每个小分析窗口计算出的背景统计结果对应,并且可以包括,例如亮度最小值分布、亮度最 大值分布等,由此可以得到分布统计描述符,例如最小亮度值的最小值和/或最大值、最大 亮度值的最小值和/或最大值、亮度值的最小和/或最大扩展、最小颜色通道值的最小值和 /或最大值、最大颜色通道值的最小值和/或最大值、颜色通道值的最小和/或最大扩展等。 当然,计算出的任何背景统计结果(例如,对亮度值、颜色通道值、对比值、纹理值、色彩值、 锐度值等)可以集合成分布,并且描述分布的任何值都可以利用而不脱离本公开的范围。
[0114] 在操作中,根据一个实施例,大分析窗口(例如分析窗口)被限定在数字图像中。
[0115] 而且,窗口形状可以通过主动地将窗口的边界设置为数字图像一部分来进行限 定,可以通过例如对数字图像应用掩膜以及通过限定未进行掩膜的数字图像区域作为分析 窗口进行被动限定。而且,可以根据模式限定窗口,尤其是在通过对图像应用掩膜从而被动 限定窗口的实施例中。当然,可以运用其他限定窗口的方式而不脱离本公开的范围。
[0116] 如本领域技术人员通过阅读本说明书可以理解的,在操作中,根据一个实施例,针 对分析窗口计算出一个或多个统计结果。而且,在优选的实施例中,每个分析窗口统计结果 与估计出的大分析窗口的背景统计分布相对应。例如,在一个实施例中,最大亮度与背景亮 度最大值分布相对应,最小亮度与背景亮度最小值分布相对应,亮度扩展与背景亮度扩展 分布相对应等。
[0117] 如本领域技术人员通过阅读本说明书可以领会的,在操作中,根据一个实施例,统 计上的显著差异是否存在于至少一个分析窗口统计数据和对应的背景统计分布之间是确 定的。如本领域技术人员通过阅读本说明书可以领会的,确定是否存在统计上的显著差异 可以利用任何已知的统计显著性评估方法或标准执行,例如,P值方法(p-value)、z-拣选 (z_test)、X方形相关(chi-squaredcorrelation)等。
[0118] 在操作中,根据一个实施例,分析窗口中的一个或多个点(例如,正中心像素或 点)被指定为候选边缘点,对此分析窗口,统计上的显著差异存在于描述像素的值和对应 的背景统计分布之间。该指定可以由本领域中已知的任何合适的方法完成,例如,设置对应 于像素的标志、存储像素的坐标、制作像素坐标阵列、修改描述像素(例如亮度、色调、对比 度等)的一个或多个值,或任何其他合适的方法。
[0119] 如本领域技术人员通过阅读本说明书可以理解的,根据一个实施例,一个或多个 操作可以重复一次或多次。在优选的实施例中,可以执行多次这样的重复,其中每次重复
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1