CN105830091A - 使用移动视频数据生成长文档的合成图像的系统和方法 - Google Patents
使用移动视频数据生成长文档的合成图像的系统和方法 Download PDFInfo
- Publication number
- CN105830091A CN105830091A CN201480061296.6A CN201480061296A CN105830091A CN 105830091 A CN105830091 A CN 105830091A CN 201480061296 A CN201480061296 A CN 201480061296A CN 105830091 A CN105830091 A CN 105830091A
- Authority
- CN
- China
- Prior art keywords
- document
- mobile device
- image
- instruction
- rectangle part
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title abstract description 120
- 239000002131 composite material Substances 0.000 title abstract description 4
- 230000033001 locomotion Effects 0.000 claims abstract description 67
- 238000004590 computer program Methods 0.000 claims abstract description 42
- 239000013598 vector Substances 0.000 claims abstract description 36
- 230000000712 assembly Effects 0.000 claims description 61
- 238000000429 assembly Methods 0.000 claims description 61
- 238000012360 testing method Methods 0.000 claims description 45
- 238000006073 displacement reaction Methods 0.000 claims description 23
- 238000001514 detection method Methods 0.000 claims description 22
- 230000004044 response Effects 0.000 claims description 13
- 238000005070 sampling Methods 0.000 claims description 8
- 238000012015 optical character recognition Methods 0.000 claims description 4
- 230000000977 initiatory effect Effects 0.000 abstract 1
- 230000000875 corresponding effect Effects 0.000 description 57
- 230000008569 process Effects 0.000 description 25
- 238000005516 engineering process Methods 0.000 description 22
- 230000008878 coupling Effects 0.000 description 16
- 238000010168 coupling process Methods 0.000 description 16
- 238000005859 coupling reaction Methods 0.000 description 16
- 238000012545 processing Methods 0.000 description 16
- 238000004422 calculation algorithm Methods 0.000 description 14
- 239000011159 matrix material Substances 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000002372 labelling Methods 0.000 description 9
- 230000009466 transformation Effects 0.000 description 9
- 238000000605 extraction Methods 0.000 description 8
- 238000009826 distribution Methods 0.000 description 7
- 238000005286 illumination Methods 0.000 description 7
- 238000003860 storage Methods 0.000 description 7
- 238000004088 simulation Methods 0.000 description 6
- 230000000007 visual effect Effects 0.000 description 6
- 241001269238 Data Species 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000003384 imaging method Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 238000005520 cutting process Methods 0.000 description 3
- 238000013075 data extraction Methods 0.000 description 3
- 238000001035 drying Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 239000013307 optical fiber Substances 0.000 description 3
- 238000003908 quality control method Methods 0.000 description 3
- 239000000700 radioactive tracer Substances 0.000 description 3
- 241000222065 Lycoperdon Species 0.000 description 2
- 241000768494 Polymorphum Species 0.000 description 2
- 239000000654 additive Substances 0.000 description 2
- 230000000996 additive effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004040 coloring Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 230000013011 mating Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000000275 quality assurance Methods 0.000 description 2
- 230000007306 turnover Effects 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000009958 sewing Methods 0.000 description 1
- 238000004513 sizing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/222—Studio circuitry; Studio devices; Studio equipment
- H04N5/262—Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
- H04N5/265—Mixing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
- G06V20/47—Detecting features for summarising video content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/387—Composing, repositioning or otherwise geometrically modifying originals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/387—Composing, repositioning or otherwise geometrically modifying originals
- H04N1/3876—Recombination of partial images to recreate the original image
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Character Input (AREA)
- Image Processing (AREA)
Abstract
公开了系统、方法和计算机程序产品,包括:使用所述移动设备的图像捕获组件发起捕获操作,所述捕获操作包括:捕获视频数据;以及估计与所述图像捕获组件在所述捕获操作期间的运动相对应的多个运动矢量。所述系统、方法和计算机程序产品还包括检测所述视频数据中所描绘的文档;在所有所述视频数据中追踪所检测的文档的位置;使用所述移动设备的所述图像捕获组件选择多个图像,其中所述选择至少部分地基于:所检测的文档的所追踪的位置;以及所估计的运动矢量;以及基于所选择的多个图像中的至少一些生成合成图像。
Description
技术领域
本发明涉及数字视频捕获和数字视频数据处理,具体地涉及使用移动设备捕获和处理数字视频数据,并且更具体地涉及捕获每帧描绘“长”文档的至少一部分的视频数据,以及处理所捕获的视频数据,以生成描绘整个“长”文档的单个合成图像。
背景技术
现代移动设备很好地适于捕获各种物体的图像,包括文档、人、汽车等。移动设备图像捕获组件能力和/或处理能力的提升使得用于使用移动设备捕获和/或处理数字图像数据的应用在移动设备驱动越来越多的经济中越来越有吸引力。
然而,移动设备硬件的限制以及使用移动设备捕获图像的实际限制使得高效和有效的数字处理面临巨大挑战。例如,根据在许多商务环境中普遍采用电子文档作为信息传递的主要媒介,连同移动技术作为捕获高质量图像数据的得力手段,许多商家转向面向移动设备的文档捕获和处理途径。在特定的环境中,某些文档可能太大而不能被捕获在具有足够分辨率的单个图像中以实现用于后期的必要处理的目的。
使用传统的图像捕获和处理算法,特别是那些配置为与充当捕获设备移动设备一起使用的算法,一直阻碍在将另外从更现代的自动化途径中大大受益的情况下的非常有用的技术的实现。
因此,提供能够以如下方式捕获和/或处理图像数据的系统、方法和/或计算机程序产品将是有益的,所述方式为克服以上所呈现的挑战、并提升用户捕获和处理“长”文档上表示的数据的能力,特别是使用移动设备的。
发明内容
公开了用于采用移动设备所捕获的图像缝合长文档的系统和方法。
在一个方法中,方法包括:使用所述移动设备的图像捕获组件发起捕获操作,所述捕获操作包括:捕获视频数据;以及估计与所述图像捕获组件在所述捕获操作期间的运动相对应的多个运动矢量;检测所述视频数据中所描绘的文档;在所有所述视频数据中追踪所检测的文档的位置;使用所述移动设备的所述图像捕获组件选择多个图像,其中所述选择至少部分地基于:所检测的文档的所追踪的位置;以及所估计的运动矢量;以及基于所选择的多个图像中的至少一些生成合成图像。
在另一个实施例中,系统包括移动设备,所述移动设备配置为执行逻辑,所述逻辑配置为一旦执行则使移动设备进行下述操作:使用所述移动设备的图像捕获组件发起捕获操作,所述捕获操作包括:捕获视频数据;以及估计与所述图像捕获组件在所述捕获操作期间的运动相对应的多个运动矢量;检测所述视频数据中所描绘的文档;在所有所述视频数据中追踪所检测的文档的位置;使用所述移动设备的所述图像捕获组件选择多个图像,其中所述选择至少部分地基于:所检测的文档的所追踪的位置;以及所估计的运动矢量;以及基于所选择的多个图像中的至少一些生成合成图像。
在又一个实施例中,一种计算机程序产品,包括计算机可读介质,所述计算机可读介质具有存储在其上的能够由移动设备执行的指令,所述指令配置为一旦执行则使所述移动设备进行下述操作:使用所述移动设备的图像捕获组件发起捕获操作,所述捕获操作包括:捕获视频数据;以及估计与所述图像捕获组件在所述捕获操作期间的运动相对应的多个运动矢量;检测所述视频数据中所描绘的文档;在所有所述视频数据中追踪所检测的文档的位置;使用所述移动设备的所述图像捕获组件选择多个图像,其中所述选择至少部分地基于:所检测的文档的所追踪的位置;以及所估计的运动矢量;以及基于所选择的多个图像中的至少一些生成合成图像。
当然,前述概要将被理解为仅是本公开的发明构思和实施例的示例,并且不应被认为以任何方式限制本描述的范围。
附图说明
图1描绘根据一个实施例的网络计算环境的简化示意图。
图2描绘根据一个实施例的与网络通信的计算机工作站的示意图。
图3描绘根据一个实施例的长文档的示例性示意图。
图4A-4C描绘根据若干实施例的、在长文档捕获和处理算法的各阶段、图3中所描绘的长文档的部分。
图5是根据一个实施例的方法的流程图。
图6是根据一个实施例的方法的流程图。
图7是根据一个实施例的方法的流程图。
具体实施方式
下面的描述用于对本发明的一般原理进行示例说明的目的,并且不意在限制本文所主张的发明构思。进一步地,本文所描述的特定特征能够以各种可能的组合和排列与其他所描述的特征结合使用。
除非本文另外特别限定,否则所有术语将按照其广义的解释而被给出,包括从说明书中所隐含的意思以及本领域普通技术人员所理解和/或词典、论文中所定义的意思。
还必须注意,如说明书和附随的权利要求中所使用的,单数形式“一”、“一个”和“该”包括复数的指示对象,除非特别指定。
本申请涉及图像处理。
图像(例如图片、图形、图解示意图、电影的单个帧、视频、胶片、剪辑等)通常是由图像捕获组件特别是移动设备的图像捕获组件所捕获的数字图像。如本文所理解的,移动设备是能够在没有电源的情况下经由物理连接(例如有线的、绳索的、电缆的等)接收数据和能够在没有物理数据连接(例如有线的、绳索的、电缆的等)的情况下接收数据的任何设备。本公开范围内的移动设备包括示例性的设备,诸如移动电话、智能电话、平板电脑、个人数字助理、设备等。
然而,如从各功能的描述中将变得显而易见的,可将本公开的移动图像处理算法(有时带一些修改)应用到来自扫描仪和多功能外围设备(MFP)的图像。类似地,在一些方法中,使用本公开的处理算法所处理的图像可使用常规扫描仪处理算法进一步以某种方式处理。
当然,本文此处所给出的各实施例可利用硬件、软件或其任何期望的组合而实现。对于该方式,可利用能够实现本文此处所给出的各功能的任何类型的逻辑。
使用移动设备的一个益处是,采用数据计划,基于所捕获图像的图像处理和信息处理与依赖扫描仪存在的先前方法相比,可以以更便利的、流线型的和集成化的方式完成。然而,移动设备用作一个或多个文档捕获和/或处理设备迄今为止因为各种原因一直被认为是不可行的。
在一个方法中,可通过移动设备的图像捕获组件来捕获图像。术语“图像捕获组件”应被广义地解释为包括能够捕获设备外部物理对象的图像的任何类型的设备,诸如一张纸。术语“图像捕获组件”不涵盖外围扫描仪或多功能设备。可以使用任何类型的图像捕获组件。优选的实施例可使用具有较高分辨率例如8MP或更多、理想地12MP或更多的图像捕获组件。图像可被捕获为彩色的、灰度的、黑白的或具有任何其他已知的光学效果。如本文所引用的术语“图像”意在涵盖与图像捕获组件的输出相对应的任何类型的数据,包括原始数据、经处理的数据等。
如本文所述,术语“长文档”应被理解为包括不能被捕获在具有足够的分辨率以实现文档和/或文档内容的后期处理的单一静态图像中的任何类型的文档,例如足够的分辨率以识别单个字符的位置和标识,足够的分辨率以识别文档特征的位置和标识,所述文档特征诸如线、图像、诸如条形码或登记号(例如大体上表示“+”符号)的参考对象,和/或足够的分辨率以区分文档本身和描绘文档的图像数据中也描绘的背景文理。在优选的方法中,“足够的分辨率”将被理解为不小于与每英寸大约200点(DPI)或每英寸200像素(PPI)相对应的分辨率。
如下面更详细讨论的,“长文档”的示例性形式可被理解为包括收据、法律文档(例如大约8.5英寸宽、14英寸长的文档大小)、本票、抵押文档、字幕、契约、海报、横幅、印刷品、表单、信封等,如本领域普通技术人员在阅读本描述后将理解的。
换言之,在各实施例中,每当文档沿其最长尺寸超过大约11英寸的长度、和/或每当文档展现至少大约2.5:1的长宽比时,文档可被认为是“长”的。
在正被成像的文档为“长”的实施例中,面向图像捕获组件和宽文档可能是尤为有益的,这样在捕获操作期间其纵轴是垂直的。这增大了所捕获图像的有效分辨率,因为与文档的纵轴和摄像机平行排列时相比,在自文档的给定距离处文档的大部分可包含在取景器内。
此外,如本文所引用的术语“文本信息”应被理解为包括可包含在文本中、可由文本表示、或可由文本导出的任何和所有类型的信息。例如,文本信息可被理解为包括文本在文档上的位置、文档上所描绘的一个或多个字符(例如字母、数字、符号等)的标识、文档上所描绘的字符串(即一“串”文本)的标识、文档上所描绘的一个或多个字符的部分或完整形状、一个或多个字符的大小(在不同的方法中,绝对的或相对的)、一个或多个字符的颜色、与一个或多个字符相对应的字体等,如本领域普通技术人员在阅读本描述后将理解的。
至于与字符标识不同的,在优选方法中,字符形状指代当前在文档上的标记的外观,不一定包括整个标记,或者,在标记与字符相对应的情况下,不一定包括该标记所表示的字符的标识。
如本文所述,术语“文档特征”应被理解为包括文档的不同于“文本信息”的任何和所有识别特征。例如,在各方法中,文档特征可包括文档本身的大小或形状。文档特征还可包括文档上表示的任何数目的标记的有无、大小、形状和/或位置,诸如线、图像、商标、签名、全息图、水印等,如本领域普通技术人员在阅读本描述后将理解的。文档特征可进一步包括与文档的部分或全部相对应的颜色信息,例如文档背景的颜色、文档内与兴趣区域(诸如描绘图像、商标、全息图、签名等的区域)相对应的颜色分布、和/或文档是否根本没有描绘颜色信息的确定。
在一个方法中,应用图像捕获组件运动追踪器以追踪图像捕获组件相对于正被成像的长文档的运动。为了加速追踪进程并减少智能电话的功耗,应用快速并高效的图像捕获组件追踪算法。在图像捕获组件追踪算法中,减小原始捕获图像的分辨率,并对低分辨率图像中的像素进行下采样。在参照帧和文本帧之间应用那些经采样的像素的直接图像匹配。当具有最小匹配误差时,找到最佳匹配。
对于对视频的帧序列操作的实施例,估计累计的图像捕获组件运动轨迹。当累计的图像捕获组件运动位移达到预定义的阈值时,拍摄图片。经捕获的图片来自录像模式或图片模式。追踪系统可告知用户图像捕获组件不应在拍摄图片期间移动,以避免图像模糊。
例如,在若干方法中,关于长文档拍摄一系列图片,它们中的每个是长文档的部分图像。经捕获的相邻图片之间的追踪重叠区域为减少随后的详细重叠匹配或文本块匹配中的歧义提供约束。对于详细重叠匹配,应用文本信息以识别图像的重叠区域中的文本,所述文本信息包括但不限于:字符形状、字符位置、字符标识、字符大小、字符颜色、字符字体等。
详细重叠匹配可基于文本块匹配技术。为了进行文本块匹配,将稳健文本行检测器应用到所识别的具有其相关联的边界框的字符。稳健文本行检测器基于所识别的字符的位置聚集字符并将它们分组在不同的文本行中。在文本行检测后,应用文本块匹配算法以找到最佳文本行匹配。文本块匹配算法通过采用不同的对准假设比较两个文本块之间的关联以搜索最佳匹配的文本行。在找到最佳文本行后,采用两个文本行边界框估计从连续图像到当前图像的变换矩阵。连续图像被映射至当前图像平面,并且应用图像扭曲(warping)和混合程序。
以该方式,生成单个合成长文档图像,其具有足够的分辨率以使能长文档在许多有用的环境和应用中的下游处理。
例如,在一个一般的实施例中,方法包括使用移动设备的图像捕获组件发起捕获操作,捕获操作包括:捕获视频数据;以及估计捕获操作期间与图像捕获组件的运动相对应的多个运动向量;检测视频数据中所描绘的文档;追踪所检测的文档在整个视频数据中的位置;使用移动设备的图像捕获组件选择多个图像,其中所述选择至少部分基于:所追踪的所检测文档的位置;以及所估计的运动矢量;以及基于所选择的多个图像中的至少一些生成合成图像。
在另一个一般的实施例中,系统包括配置为执行逻辑的移动设备,所述逻辑配置为一旦执行则致使移动设备:使用移动设备的图像捕获组件发起捕获操作,捕获操作包括:捕获视频数据;以及估计捕获操作期间与图像捕获组件的运动相对应的多个运动向量;检测视频数据中所描绘的文档;追踪所检测的文档在整个视频数据中的位置;使用移动设备的图像捕获组件选择多个图像,其中所述选择至少部分基于:所追踪的所检测文档的位置;以及所估计的运动矢量;以及基于所选择的多个图像中的至少一些生成合成图像。
在又一个一般的实施例中,计算机程序产品包括计算机可读介质,所述计算机可读介质具有存储在其上的可由移动设备执行的指令,指令配置为一旦执行则致使移动设备:使用移动设备的图像捕获组件发起捕获操作,捕获操作包括:捕获视频数据;以及估计捕获操作期间与图像捕获组件的运动相对应的多个运动向量;检测视频数据中所描绘的文档;追踪所检测的文档在整个视频数据中的位置;使用移动设备的图像捕获组件选择多个图像,其中所述选择至少部分基于:所追踪的所检测文档的位置;以及所估计的运动矢量;以及基于所选择的多个图像中的至少一些生成合成图像。
呈现本文的描述以使本领域任何技术人员能够制造和使用本发明,并且在本发明的特定应用及其需求的环境中提供本文的描述。对所公开的实施例的各种修改对本领域技术人员将是容易地显而易见的,在不脱离本发明的精神和范围的情况下,本文所定义的一般原理可应用到其他实施例和应用。因此,本发明不意在被限制于所示的实施例,而是符合与本文所公开的原理和特征相一致的最宽的范围。
特别地,使用互联网作为多个计算机系统之间通信的手段来实现本文所讨论的发明的各实施例。本领域技术人员将意识到本发明不限于使用互联网作为通信介质,并且发明的替代方法可包括使用私人内部网、局域网(LAN)、广域网(WAN)或其他通信手段。此外,可利用有线、无线(例如射频)和光通信链接的各种组合。
本发明的一个实施例可在其中执行的程序环境示例性地包括一个或多个通用计算机或专用设备,诸如手持计算机。这类设备的细节(例如处理器、存储器、数据存储、输入和输出设备)众所周知,为了清楚起见省略不述。
还应理解,可使用各种技术来实现本发明的技术。例如,本文所描述的方法可以实现在计算机上运行的软件中、或利用一个或多个处理器以及用于实施方法的操作的逻辑(硬件和/或软件)实现在硬件、专用集成电路、可编程逻辑器件诸如现场可编程门阵列(FPGA)、和/或其各种组合中。在一个示例性方法中,本文所描述的方法可通过一系列计算机可执行指令实现,所述计算机可执行指令驻留在诸如物理(非暂时性)计算机可读介质的存储介质上。此外,虽然本发明的具体实施例可采用面向对象的软件编程概念,但是本发明并非限制于此,并且其容易适于采用其他形式的指导计算机的操作。
本发明还可以以计算机程序产品的形式加以提供,所述计算机程序产品包括在其上具有计算机代码的计算机可读存储或信号介质,所述计算机代码可由计算设备(例如处理器)和/或系统执行。计算机可读存储介质可包括任何能够在其上存储计算机代码用于由计算设备或系统使用的介质,包括光学介质诸如只读和可写CD和DVD、磁存储器或介质(例如硬盘驱动、磁带)、半导体存储器(例如闪存和其他便携存储卡等)、编码在芯片中的固件等。
计算器可读信号介质是不适合在前述存储介质类内的介质。例如,示例性计算机可读信号介质在系统之间例如经由物理或虚拟网络等传达或传递系统内的暂时信号。
图1示出根据一个实施例的架构100。如图1中所示,提供多个远程网络102,包括第一远程网络104和第一远程网络106。网关101可耦连在远程网络102和邻近网络108之间。在所呈现的网络架构100的环境中,网络104、106每个可采用任何形式,包括但不限于LAN、WAN诸如互联网、公共交换电话网(PSTN)、内部电话网等。
在使用中,网关101充当从远程网络102到邻近网络108的入口点。这样,网关101可起路由器的作用,其能够引导到达网关101的给定数据包,并且起开关的作用,其为给定包提供进出网关101的实际路径。
进一步包括的是至少一个数据服务器114,其耦连到邻近网络108,并且可经由网关101从远程网络102访问。应该注意,一个或多个数据服务器114可包括任何类型的计算设备/群件。各自耦连到数据服务器114的是多个用户设备116。这类用户设备116可包括台式计算机、膝上型计算机、手持计算机、打印机或任何类型的逻辑。应该注意,在一个实施例中,用户设备111还可直接耦连到网络中的任何一个。
外围设备120或外围设备系列120例如传真机、打印机、网络存储单元等,可耦连到网络104、106、108中的一个或多个。应该注意,数据库、服务器和/或附加的组件可以与耦连到网络104、106、108的任何类型的网络元件一起使用,或集成在耦连到网络104、106、108的任何类型的网络元件内。在本描述的环境中,网络元件可指代网络的任何组件。
根据本文所描述的一些方式、方法和系统可采用虚拟系统和/或采用模拟一个或多个其他系统的系统实现,和/或在虚拟系统和/或在模拟一个或多个其他系统的系统上实现,诸如模拟MACOS环境的UNIX系统、虚拟主MICROSOFTWINDOW环境的UNIX系统、模拟MACOS环境的MICROSOFTWINDOW系统等。在一些实施例中,该虚拟化和/或模拟可通过使用VMWARE软件来增强。
在更多的方法中,一个或多个网络104、106、108可以表示通常称为“云”的系统的集群。在云计算中,共享资源诸如处理能力、外围设备、软件、数据处理和/或存储、服务器等被提供给云中的任何系统,优选以按需关系,从而允许跨许多计算系统访问和分配服务。云计算典型地涉及在云中操作的系统之间的互联网或其他高速连接(例如4GLTE、光纤等),但是也可使用其他连接系统的技术。
图1示出根据一个实施例的架构100。如图1中所示,提供多个远程网络102,包括第一远程网络104和第一远程网络106。网关101可耦连在远程网络102和邻近网络108之间。在所呈现的架构100的环境中,网络104、106每个可采用任何形式,包括但不限于LAN、WAN诸如互联网、公共交换电话网(PSTN)、内部电话网等。
在使用中,网关101充当从远程网络102到邻近网络108的入口点。这样,网关101可起路由器的作用,其能够引导到达网关101的给定数据包,并且起开关的作用,其为给定包提供进出网关101的实际路径。
进一步包括的是至少一个数据服务器114,其耦连到邻近网络108,并且可经由网关101从远程网络102访问。应该注意,一个或多个数据服务器114可包括任何类型的计算设备/群件。各自耦连到数据服务器114的是多个用户设备116。这类用户设备116可包括台式计算机、膝上型计算机、手持计算机、打印机或任何类型的逻辑。应该注意,在一个实施例中,用户设备111还可直接耦连到网络中的任何一个。
外围设备120或外围设备系列120例如传真机、打印机、网络和/或本地存储单元或系统等,可耦连到网络104、106、108中的一个或多个。应该注意,数据库和/或附加的组件可以与耦连到网络104、106、108的任何类型的网络元件一起使用,或集成在耦连到网络104、106、108的任何类型的网络元件内。在本描述的环境中,网络元件可指代网络的任何组件。
根据本文所描述的一些方式、方法和系统可采用虚拟系统和/或采用模拟一个或多个其他系统的系统实现,和/或在虚拟系统和/或在模拟一个或多个其他系统的系统上实现,诸如模拟MACOS环境的UNIX系统、虚拟主MICROSOFTWINDOW环境的UNIX系统、模拟MACOS环境的MICROSOFTWINDOW系统等。在一些实施例中,该虚拟化和/或模拟可通过使用VMWARE软件来增强。
在更多的方法中,一个或多个网络104、106、108可以表示通常称为“云”的系统的集群。在云计算中,共享资源诸如处理能力、外围设备、软件、数据处理和/或存储、服务器等被提供给云中的任何系统,优选以按需关系,从而允许跨许多计算系统访问和分配服务。云计算典型地涉及在云中操作的系统之间的互联网或其他高速连接(例如4GLTE、光纤等),但是也可使用其他连接系统的技术。
图2示出根据一个实施例的、与图1的用户设备116和/或服务器114相关联的代表性硬件环境。该图示出工作站的典型硬件配置,所述工作站具有中央处理单元210诸如微处理器,以及经由系统总线212互连的若干其他单元。
图2中所示出的工作站包括随机存取存储器(RAM)214、只读存储器(ROM)216、用于将诸如磁盘存储单元220的外围设备连接到总线212的I/O适配器218、用于将键盘224、鼠标226、扬声器228、麦克风232连接到总线212的用户接口设备222、和/或将诸如触摸屏和图像捕获组件(未示出)连接到总线212的其他用户接口设备、用于将工作站连接到通信网络235(例如数据处理网络)的通信适配器234、以及用于将总线212连接到显示设备238的显示适配器236。
工作站可具有驻留在其上的操作系统,诸如微软视窗(Microsoft)操作系统(OS)、MACOS、UNIXOS等。将理解,优选实施例也可在不是那些所提及的平台和操作系统上实现。优选的实施例可使用JAVA、XML、C和/或C++语言、或其他编程语言连同面向对象的编程方法来写。可使用面向对象的编程(OOP),其已变得越来越多地用于开发复杂的应用。
应用可被安装在移动设备上,例如存储在设备的非易失性存储器中。在一个方法中,应用包括在移动设备上实施图像处理的指令。在另一个方法中,应用包括将图像发送到远程服务器诸如网络服务器的指令。在又一个方法中,应用可包括决定是否在移动设备上实施一些或全部处理和/或将图像发送到远程站点的指令。
在各实施例中,本公开的方法、系统和/或计算机程序产品可利用和/或包括图像处理操作,诸如页面检测、矩形化、光照不均匀检测、光照归一化、分辨率估计、模糊检测等。
在各实施例中,本公开的方法、系统和/或计算机程序产品可利用和/或包括任何分类和/或数据提取操作,包括例如至少部分基于数字图像中所描绘的对象的特性根据类型对数字图像中所描绘的对象进行分类、使用关于图像特性和/或图像类别的信息实施定制图像处理、创建和/或使用特征向量实施分类、创建和/或使用特征向量开发用于对象和/或一个或多个对象类别的数据提取模型、使用数据提取模型从数字图像提取数据等。
长文档捕获
图3描绘根据一个实施例的示例性“长文档”图像300的示意图。长文档图像300本质上代表收据,但是本领域普通技术人员将理解,长文档可包括任意数目或类型的如本文所定义的并且进一步在阅读本描述后将理解的“长文档”。如图3中所示的图像300明显地包括图像背景304和图像前景302。图像前景302优选地与长文档相对应。
如图3中进一步示出的,长文档包括多个特征,诸如文本信息306、306a、多个边框或分隔线308、参考对象诸如条形码310、以及图像或商标312。特征可在所有文档中以任何方式排列,并且甚至可展示部分或完全重叠,例如在一些实施例中,如通过重叠文本信息306和306a所示的。
图4A-4C描绘如本文所公开的长文档捕获过程在各完成阶段的若干实施例。图4A-4C中的每一个分别与有选择地捕获的图像400、410和420相对应,图像400、410和420将用于生成描绘整个文档(如图3所示)的合成单个图像。
在一个示例性实施例中,“自动长文档缝合”指代能够将从相机所捕获的部分重叠的文档图像缝合在一个视频或单独图片中的自动过程。例如,移动设备中常用的相机(例如具有大约八百万像素分辨率的相机)可能不具备足够高的分辨率以将长文档捕获在单一图片中。为了采用同一个设备得到充分高分辨率的长收据的图像,可捕获若干个部分重叠的长收据的图像并缝合在一起。在图4A-4C中,捕获三个具有重叠的图像,其可被缝合为一个图像,大体上表示如图3中所示的长文档。
在一些方法中,自动长文档缝合问题类似于全息图像缝合。这两个问题之间的主要区别在于,对于长文档缝合,相机可靠近文档,结果,相机的小移动可导致图像模糊。因此,长文档缝合更具挑战性。针对全息图像缝合所开发的一些技术可应用到长文档缝合中。然而,在缝合文档的缝合处存在微影。因为移动设备有限的处理能力,将这些技术直接应用到长文档缝合需要使用额外的处理资源,诸如一个或多个GPU加速器和/或多核CPU支持。考虑到移动设备的硬件限制,对长文档缝合提供高效的方法。该方法涉及文档追踪、文本块匹配以及图像合成,如下面将进一步讨论的。
关于具体的文档捕获,在优选实施例中,用户将长文档放置在具有平坦表面的桌子上,并发起捕获操作,例如在移动应用中。用户沿如图3所示的文档的纵轴方向优选地连续直线移动移动设备。运动应尽可能地直,以避免文档离开相机视野之外的情况。
优选地,用户还保持相机和文档之间的垂直距离大体恒定,以避免文档大小在所捕获的图像之间有明显改变。
此外,相机移动的速度优选地大体保持恒定以使文档追踪成为可能(即在移动设备硬件的限制之内)。在一些方法中,可监控运动的恒定度,并且如果运动偏离期望的参数,例如可使用如上所述的运动位移阈值来实现,则可终止或中止捕获操作。如本领域技术人员在阅读本描述后将理解的,在特定环境中可容忍的运动位移量可以部分取决于诸如相机分辨率、快门速度等因素。
类似地,可基于从附加移动设备组件诸如加速器获得的信息检测并限制纵向的相机移动。因为长文档的大小不必预先知道,所以不希望利用图像数据追踪纵向运动。相反,如下操作是有益的:查询设备加速器,并且响应于确定设备已在预定义时间范围内在预定义方向(例如纵向)移动预定量(例如一秒一厘米),可终止或中止捕获操作。
上述与终止或中止捕获操作的参考应被理解为质量控制措施,而不是放弃本公开的长文档缝合技术的标准。在优选实施例中,在终止或中止捕获操作之后,发起(恢复)新的(同一个)捕获操作以完成必要的捕获操作用于后续的处理和缝合。
关于追踪和文档检测,在优选的方法中,相机运动追踪的主要目标是追踪相机在录像中相对于文档的运动。使用相机运动信息,有利于估计两个相邻捕获的图像之间是如何重叠的。
可应用各种运动追踪和图像配准(imageresigration)技术。例如,追踪方法可以是基于像素的或基于特征的。在优选的方法中,将直接的像素图像方法应用到相机运动追踪中。以高捕获速率,在一个实施例中例如高于24帧/秒,在另一个实施例中例如高于30帧/秒,在又一个实施例中例如高于59帧/秒。更可取的忽略相机在空间旋转中的移动,以及垂直运动(即将致使相机和文档之间距离改变的相机运动)。相反,可取的是仅追踪两个维度的位移运动,即沿文档纵轴的上/下运动和左右运动(如图3和图4A至图4C中所示)。
优选地,使用相机运动追踪模块来确定应该何时拍摄文档的图片,以及应该自动还是手动捕获图片。例如,在一个方法中,当文档检测模块一旦检测到图片中存在文档,则捕获文档的第一帧。对于文档图像的后面的帧,何时应该拍摄文档的图像优选地通过如图4A至图4C中所示的文档的相邻两帧之间的指定重叠长度而确定。图像的相邻两帧之间的指定重叠(图4A至图4C中表示为Ω)可转换为像素的数目。如果累计的相机运动/位移接近所指定的值(本文也称为“重叠阈值”),则系统优选地捕获文档的图像。
在附加和/或替代方法中,本公开的文档追踪技术包括:对所捕获的图像数据下采样以减小原始图像分辨率;对经下采样的图像中的图像像素进行采样;以及估计运动矢量。
例如,在一个实施例中,估计运动矢量可包括如下情节:捕获相邻两帧图像,第一帧定义为参考帧,而第二帧指定为测试帧。针对假定不同的实际运动矢量,计算测试帧和参考帧中像素亮度(intensity)之间的残差。依照具有最小残差来选择最佳的假定运动矢量。优选地,残差被累计参考帧和测试帧之间所有像素的亮度误差。在一个示例性方法中,假设存在十个假定运动矢量(x1,y1)、(x2,y2)、…(x10,y10)。文档追踪技术可将(例如测试帧中的)那十个像素的图像亮度与(例如参考帧中的)参考像素的相比较。具有最小匹配误差的像素将是最佳匹配。
文档追踪还可包括生成边缘标记;靠近参考帧的四个边缘的像素在测试帧中可能离开相机视野之外;可针对那些像素生成标记,以在图像匹配中配出它们。如图4C所示,可生成一个或多个边缘标记以具有宽度Δ,其中Δ优选地是从如在追踪过程开始时所检测到的整个文档长度的大约5%到大约10%的范围中的值。
运动矢量估计和边缘标记可迭代反复进行,直到整个文档被捕获和处理。
当累计的相机运动位移已经达到预定义的阈值,追踪系统将自动捕获部分文档的图像,和/或通知用户将拍摄部分文档的图片。例如,在图4B中,当相机运动追踪系统已检测到第一排中所示的第一图片和将拍摄的第二图片之间的重叠大约等于预定义的重叠阈值(例如40%)时,拍摄图像。
对于图4C,作为在目前所公开技术的过程中所捕获的任意图像序列中的“最后”部分图像的一般关注点,第二图像和它本身之间的重叠可能不必等于预定义的值,因此一旦文档的右边部分一旦在相机视野内则拍摄图像。
在优选的方法中,拍摄如图4A-4C所示的三个图像。一旦系统检测到存在文档并且其顶边在相机视野中(如图4A中左侧所示)则拍摄第一个(图4A)。当相机追踪系统已经检测到相机位移已经刚刚达到预定义的阈值时则拍摄第二图像(图4B)。当文档的底部在相机视野中时(右侧所示)则拍摄第三图像。
现在参考文本块匹配,上文所述的捕获和追踪技术的优选实施例生成长文档的一系列部分重叠图像。这些图像在相邻两帧之间具有重叠。重叠的长度通过相机运动追踪系统估计。这些重叠长度不必等于但是代表性地等于相邻两帧图像之间的准确的重叠长度。换言之,重叠长度为随后找到相邻两帧图像之间的详细匹配提供了约束。这些约束在找到详细匹配中减少歧义性。
然而,最优选的,可以使用文本信息诸如文档中的字符来找到详细匹配。
在其他实施例中,可应用光学字符识别(OCR)。例如,OCR模块将识别在所有各图像的文本信息中所描绘的字符的位置和标识。条形码、参考对象、商标、图片等可在这些图像中,但优选被忽略。
在一个实施例中,利用OCR模块处理输入图像。输出图像可与输入图像不同,因为可对输入图像应用纠偏(de-skew)过程,以生成经纠偏的图像作为输出。OCR模块还识别输入图像并输出所识别的字符及其相关联的边界框的文本信息。
在附加的实施例中,为了从所识别的字符及其相关联的边界框找到文本“行”,针对它们应用强健文本行查找算法是有益的。强健文本行算法可采用聚类技术,其使用字符边界框作为输入。该算法将把一行内的字符分组为一个文本行,例如通过定位相邻字符对,然后定位字符对的相邻对以形成三字符组(charactertriplet),随后定位相邻三字符组以形成相邻四字符组(characterquadruplet)等等,如技术人员在阅读本描述后将理解的。随后,在图像预定区域内的文本行优选地被组织为文本块,其可用作用于文本块匹配的比较的基本单元,如上文所述的。
在一个实施例中,文本块匹配方法为如下:针对相邻两个图像的重叠区域中的两个文本块,计算至少两个文本块之间的关联;基于该关联找到最佳匹配对准假定;基于两个文本块中匹配(例如展示大体上相同的字符标志和字符位置)的字符的数目,针对特定的对准假定生成文本块匹配分数;以及合计文本块匹配分数以生成文本行匹配分数。
现在参考图像合成和缝合,也称为“生成合成图像”,在各实施例中,目前所公开的发明构思包括下述特征中的一些或全部。
在一个实施例中,基于如上所述的文本块匹配的结果,使用在最佳匹配中的文本行的边界框来估计仿射或同形变换矩阵,本文也称为“第一变换矩阵”。第一变换矩阵被应用到第二图像(测试帧)中的每个像素以将第二图像变换到第一图像(参考帧)中的坐标系统。以该方式,将第二图像调到第一图像平面,并且导出包括两个图像中所描绘信息的合成图像。
在更多实施例中,例如针对与第二图像有重叠的第三图像,可应用所述的针对前两个图像的相同过程以得到第二变换矩阵,以将第三图像映射到第二图像平面。第一变换矩阵和第二变换矩阵相乘是将第三图像映射到第一图像平面的累计变换矩阵。以该方式,对于任意数目的将被合成的图像,可导出累计变换矩阵并应用到图像。
图5描绘根据本公开一个实施例的用于完成长文档捕获的方法500的示例性流程图。如本领域普通技术人员在阅读这些描述后将理解的,在各实施例中,可在任何环境中实施方法500,包括图1至图4C中所描绘的那些。
如图5所示,方法500包括操作502,在该操作使用移动设备的捕获组件发起捕获操作。捕获操作优选地包括捕获视频数据,以及估计与图像捕获组件在捕获操作期间的运动相对应的多个运动矢量。
方法500还包括操作504,在该操作捕获视频数据中所描绘的文档。优选地,文档是如本文所定义的“长文档”。
方法500进一步包括操作506:在所有视频数据中追踪所检测到的文档的位置。如上所述,“所有”应被理解为包括时间上的和基于数据的测量。换言之,在“所有”视频数据中追踪文档可包括在整个视频数据的每部分追踪文档(即使在若干不连续的时间范围内实施)和/或在捕获视频数据期间的整个持续时间内追踪文档。
方法500还进一步包括操作508,在该操作使用图像捕获组件选择多个图像,每个图像描绘文档的一部分。该选择全部或部分基于所追踪的文档位置和所估计的运动矢量。
方法500还包括操作510,在该操作基于所选择图像中的至少一些生成合成图像。
在各实施例中,可仅使用移动设备实施方法500,或可使用移动设备实施方法的部分,并且可使用其他资源诸如工作站或网络服务器来实施其他部分。优选地,跨多个设备实施方法时,至少捕获、检测、追踪。
在各方法中,本公开的长文档捕获和处理技术可具体化为计算机程序产品,其可具有所公开的特征中的任何一个或所有。
例如,在一个实施例中,计算机程序产品可包括计算机可读介质,其具有存储在其上的计算机可读指令,该计算机可读指令一旦执行,则有效地致使计算设备实施方法,例如如图5所示和上文讨论的方法500。优选地,计算设备是移动设备,但是在替代方法中,计算设备可包括诸如移动设备、计算机工作站、网络服务器等设备的任何组合,如本领域普通技术人员在阅读本描述后将理解的。然而,还将理解,本文所公开的发明实施例特别配置为使能在长文档捕获技术环境中移动设备的操作,其另外使用常规移动设备和图形处理方法是不可能的。
计算机程序产品可进一步包括配置为使移动设备响应于对图像的选择将所选择图像中的至少一些存储到移动设备的存储器的指令。
关于追踪,在优选实施例中,追踪功能仅基于所估计的多个运动矢量。在附加方法中,追踪功能可反而基于或除多个运动矢量以外还基于文本信息和/或文档特征。
计算机程序产品可附加地和/或替代地包括指令,其配置为使移动设备进行下述操作:基于所估计的多个运动矢量中的一些或全部确定至少一个运动位移,每个运动位移与图像捕获组件在捕获操作期间相对应;以及响应于确定表征一个或多个运动位移之一的值超过预定义的运动位移阈值而终止捕获操作。
在各方法中,预定义的运动位移阈值可具有从大约25微米到大约50微米、从大约30微米到大约45微米、从大约35微米到大约40微米的范围中的值,或大约37.5微米的值。在其他方法中,运动位移阈值可具有以像素来量度的值,并且为在从大约5像素到大约25像素、从大约10像素到大约20像素、从大约5像素到大约10像素的范围中、5像素,或在这些范围中的任意值。
在更多的方法中,配置为使移动设备检测文档的指令可附加地和/或替代地包括指令,其配置为使移动设备识别所捕获视频数据中所描绘的文档的至少一个边缘。
优选地,所选择的多个图像中的每个描绘文档的一部分,并且合成图像描绘文档的全部。然而,在附加实施例中,合成图像可仅描绘文档的一部分,例如与后期处理操作相关的部分,或与文档相关的特定事物。类似地,在甚至更多的方法中,文档的满足质量控制标准或其他首要标准(例如图像格式、图像分辨率、图像大小等)的部分可表示在合成图像中,而其他不满足一个或多个质量控制(或其他首要)标准的部分可从合成图像中省略。
合成图像还可表征为以下中的至少一个:图像分辨率大于图像分辨率;以及图像大小大于所选择的多个图像中的任何一个的图像大小。例如,合成图像可具有近似等于多个图像的长度之和的长度,合成图像从所述多个图像中生成。
在其他实施例中,合成图像可具有近似等于多个图像的长度之和的长度,合成图像从所述多个图像生成,但是在合成图像从其生成的多个图像之间的重叠量打了折扣。例如,如果近似一半(50%)的重叠被用作阈值重叠,则合成图像的长度可近似等于合成图像从其生成的多个图像的长度之和的三分之二。类似地,如果重叠阈值近似为三分之一(33%),则合成图像的长度可近似等于合成图像从其生成的多个图像的长度之和的五分之四。
更优选地,每个所选择的图像描绘文档的一部分,并且合成图像仅描绘与由文档所记录的商业事件(例如金融交易、合同信息)相对应的文档部分。
在附加实施例中,计算机程序产品可进一步包括指令,所述指令配置为使移动设备进行下述操作:基于合成图像识别文档描绘文本信息的一个或多个部分;基于其中所描绘的文本信息对文档每个所识别的部分进行分类;确定每个经分类的部分与金融交易相关或与金融交易无关,所述确定基于部分的类别;以及从合成图像中移除经确定与金融交易无关的每个部分。
计算机程序产品可进一步包括指令,其配置为使移动设备进行下述操作:对准经确定与金融交易相关的部分;生成第二合成图像,其中第二合成图像通过下述进行表征:与合成图像的图像大小近似相同的图像大小;与合成图像的图像分辨率近似相同的图像分辨率;不包括与金融交易无关的文本信息;以及包括与金融交易相关的文本信息。
优选地,将包括与金融交易相关的文本信息的多个字符相互对准,这样,合成图像中所描绘的所有文本信息大体上沿单个方向或角度对准,如单个文档图像的情况那样(假设所有文本信息在物理文档本身内类似地对准)。
在若干方法中,配置为使移动设备选择多个图像的指令可包括配置为使移动设备定义多个帧对的指令。每个帧对可包括参考帧和测试帧,同时每个参考帧和每个测试帧从视频数据中选择。
配置为使移动设备选择多个图像的指令可附加地和/或替代地包括配置为使移动设备进行下述操作的指令:确定每个帧对的参考帧和测试帧之间的重叠量;以及选择与参考帧和测试帧之间的重叠量大于预定重叠阈值的每个帧对相对应的图像。
优选地,重叠量与文档相对应,与测试帧和/或参考帧中所描绘的背景纹理相对照。如本领域普通技术人员将理解的,基于背景纹理(或甚至包括背景纹理,但不一定基于其)的对准有关于文档(或事实上,图像中所描绘的任何其他对象)生成假正值的对准结果的不良趋势。
更优选地,在各实施例中,预定重叠阈值与参考帧的长度的至少50%、至少40%、至少33%、或至少25%的距离相对应。在其他方法中,重叠阈值可关于文档的长度而被定义,与在特定参考帧或多个参考帧中所描绘的文档的部分的长度相对照。
在多个实施例中,配置为使移动设备生成合成图像的指令进一步包括使移动设备进行下述操作的指令:检测至少一个帧对的参考帧和测试帧中的每一个中的文本信息。该文本信息被描绘文档中,与可出现在图像背景中的文本信息相对照。
在附加的方法中,配置为使移动设备检测一个或多个参考帧和一个或多个测试帧中的文本信息的指令包括配置为使移动设备进行下述操作的指令:在参考帧中,定义描绘一些或所有文本信息的文档的至少一个矩形部分;在测试帧中,定义描绘一些或所有文本信息的文档的至少一个相对应矩形部分;以及将测试帧中所描绘的文档与参考帧中所描绘的文档对准。换言之,对准操作使测试帧对准参考帧,使用文档(与此对照的,例如帧边缘或背景纹理)作为用于对准的参考点。
在各实施例中,对准可基于下述中的一个或多个:文本信息、文档特征、文档边缘等,如本领域普通技术人员在阅读本描述后将理解的。
在优选的方法中,文本信息包括下述中的至少一个:矩形部分中所表示的一个或多个字符的标识;相对应矩形部分中所表示的一个或多个字符的标识;矩形部分中所表示的字符序列;相对应矩形部分中所表示的字符序列;矩形部分中所表示的一个或多个字符的位置;相对应矩形部分中所表示的一个或多个字符的位置;矩形部分中所表示的一个或多个字符的绝对大小;相对应矩形部分中所表示的一个或多个字符的绝对大小;相对于相对应矩形部分中所表示的一个或多个字符的大小的矩形部分中所表示的一个或多个字符的大小;相对于矩形部分中所表示的一个或多个字符的大小的相对应矩形部分中所表示的一个或多个字符的大小;矩形部分中所表示的一个或多个字符的颜色;相对应矩形部分中所表示的一个或多个字符的颜色;矩形部分中所表示的一个或多个字符的形状;以及相对应矩形部分中所表示的一个或多个字符的形状。
在更多的方法中,配置为使移动设备将测试帧中所描绘的文档与参考帧中所描绘的文档对准的指令包括配置为实施下述操作的指令:对至少矩形部分和相对应矩形部分实施光学字符识别(OCR)。在这些方法中,优选地,可利用字符位置和字符标识作为主要参考点来实施对准。
此外,配置为使移动设备生成合成图像的指令可进一步包括配置为使移动设备进行下述操作的指令:检测至少一个帧对的参考帧和测试帧中的一个或多个的倾斜角(例如图4A至图4C中所描绘的θ),该倾斜角与文档相对应,并且具有大于0.0度的量值;以及纠正参考帧和测试帧中的至少一个的倾斜角。合成图像中所描绘的文档通过近似0.0度的倾斜角(例如如图3中描绘的)来表征。
计算机程序产品可进一步包括配置为使移动设备例如通过因数5对视频数据下采样的指令,并且配置为使移动设备检测文档、追踪文档位置、选择多个图像的指令配置为使用经下采样的视频数据实施检测、追踪和选择。
先前的描绘详细地针对本公开的长文档捕获和处理技术中所涉及的若干特征进行了阐述。如本领域普通技术人员在阅读本描绘后将理解的,附加的细节应被理解为能够以任何合适的方式加以组合。在不脱离本公开的范围的情况下,本文所公开的特征的任何综合、组合、排列均可包括在或不包括在各实施例中。
分类和提取实现
在一个方法中,例如,可以以与图6中所示的流程示意图600本质上类似的方式实施稳健分类。当然,仅以示例的方法示出流程示意图以辅助理解本文所公开的发明概念,并且不意在限制本申请的范围。
在一个方法中,文档分类可进行如下。在操作602,接收经矫正的图像,优选地,在移动设备处。
在操作604,图像处理引擎例如移动设备的处理器或服务器同步分类知识库。优选地,分类知识库可包括多个预定义的文档类别,根据其独有的特征定义,例如经由特征向量和/或多个参考特征矩阵。
在操作606,使用分类知识库对经矫正的图像实施分类。
在操作608,确定分类操作的结果,例如成功或失败。
在操作610,响应于确定分类成功,自动给经矫正的图像指派文档类型。自动指派的文档类型是基于成功的分类结果的。
在操作612,另一方面,响应于确定分类操作结果失败,手动给经矫正的图像指派分件类型。此外,优选地,基于手动指派的文档类型对分类知识库进行更新,以使未来类似文档存在于经矫正的图像中的情况下,将可能自动基于经扩展的分类知识库自动指派相对应的文档类型,例如类似于上述参考操作610。
在操作614,向用户报告是自动指派文档类型还是手动指派文档类型,优选地,经由移动设备的显示器显示。
在附加的方法中,利用图像分类技术是有益的,其呈现了长文档捕获和处理环境中独有的挑战,因为许多长文档(例如收据)不是给定大小的标准形式,特定长文档中所显示的特征可关于长文档的其他类型而改变位置。在这类场景中,将收据分为若干部分(例如类似于上述关于测试和参考帧,并且尤其关于文本块匹配)并对每个部分分类是有用的。基于针对每个部分所确定的类别,可确定整体的文档类别,例如,在优选方法中,确定每个部分属于相同的特定类别,因此确定其为整个文档的类别。当然,在实际应用中,鲜有100%的一致,所以在各部分类别中最频繁确定的类别可用作文档类别。
类似地,可以以与图7中所示的流程示意图700大体类似的方式实施提取。再次地,流程示意图不被视为以任何方式加以限制,而仅是本描述的发明构思的一个实施例的示例性示例。
在操作702,接收(优选地在移动设备处)描绘文档并且具有与其相关联的与文档对应的文档类型的图像。
在操作704,基于文档类型确定提取分类。
在操作706,确定提取分类是否与提取知识库相对应。
在操作708a,如果提取分类不与提取知识库相对应,(例如使用OCR)识别文档内的内容。所识别的内容包括元数据。
在操作710a,基于所识别的内容训练新的提取模型。如果提取分类不与提取知识库相对应,方法700行进到操作714。
另一方面,在操作708b,如果提取分类与提取知识库相对应,提取知识库与文档类型相关联。
在操作710b,识别文档内的内容,所述识别至少部分基于提取知识库,并且所识别的内容包括元数据。
在操作712b,基于提取知识库有选择地提取元数据。
在操作714,基于相关联的验证数据库中相关联的验证信息以及预定义的商业规则中的一个或多个对元数据进行验证。
在操作716,基于经验证的元数据以及提取知识库、预定义的商业规则和文档类型中的一个或多个生成智能文档(优选地为PDF)。
在更多的方法中,本公开的方法、系统和/或计算机程序产品可与一个或多个用户接口一起利用、实现在一个或多个用户接口中、和/或包括一个或多个用户接口,所述用户接口配置为促进实施本文和/或前述相关专利申请所公开的任何功能,在多个实施例中,诸如图像处理移动应用、案例管理应用、和/或分类应用。
在更多方法中,本公开的系统、方法和/或计算机程序产品可有利地应用到前述相关专利申请中所公开的使用方法和/或场景,以及本领域普通技术人员在阅读这些描述后将理解的其他的等等。
将进一步理解,本文所呈现的实施例可以以为用户所部署的服务的形式加以提供,以按需提供服务。
示例性用例
账单支付
账单支付场景(以及用于其他涉及移动捕获的应用)中的一个主要挑战是拍摄源文档的高质量图片,所述源文档例如发票、装箱单、汇款凭单等。优选地,文档应在很大程度上填满取景器,没有弄缺的角或边缘。优选地,文档还应被充分照亮、聚焦并以偏离常态相对小的角度拍摄(例如成像设备被定向到大体与文档平行的平面)以使失真最小化。还应该具有良好的背景分离,以及关于纹理、颜色和/或亮度等统一的背景。下面描述的使用案例和开发领域概述有用的应用用于能够辅助用户实现这些目标的技术。
主动捕获质量辅助
当用户提交文档诸如用于支付的账单时,自动捕获应优选地仅在文档真正在取景器中时拍摄图片,该情况可使用各技术通过成像设备来核实。
例如,在一个实施例中,成像设备(例如移动电话)可预处理视频以检测视频帧中的单个文档。在一个示例性方法中,预处理涉及找到文档页面的特征(例如类似颜色的边缘或区域)以及一些推出何种特征集合构成文档。在本技术的各实现方案中,使用函数是可能的,诸如“开源计算机视觉(opencv)函数”,以找到区域,在该区域内已使用诸如拉普拉斯(Laplacian)滤波器或如本领域普通技术人员在阅读本描述后将理解的其他类似的滤波器对图像进行了预处理。
使用这类滤波器,可能就文档何时完全处在取景器内向应用软件提供指示。另外,在优选实施例中,可能测量设备的稳定性(例如使用集成设备组件诸如加速器),以及设备例如相对于文档被放置的水平面的角度(例如使用集成设备组件诸如回转仪)。因此,优选实施例能够发起捕获过程用于仅在一个或多个以及优选地所有三个质量测量满足时拍摄图片。
检测中的稳定性
在一些方法中,所检测文档的指示符可能是不稳定的,例如来回移动太多而不能捕获期望的清楚的图像或验证视频预览中所定位的文档。结果,期望在视频预览中有更稳定的文档检测。
在一个方法中,可通过利用如下过程增强稳定性:取代检测单个视频帧中的单个文档,多帧方法将把在时间窗口内检测的边缘进行平均,从而避免文档的快速移动。
复杂的背景
在各实例中,在相对暗的背景前将具有显著浅色背景的文档(例如白色背景上印刷有黑色文本)成像是有益的。可惜,在许多情况下,用户可能不方便获取暗的统一颜色的表面。因此,使用户能够在具有较多不均匀纹理的表面上拍摄文档图片是有利的。
评估光照条件
理想地,捕获设备图像捕获组件应自动评估环境光照条件并优化捕获设置以确保足够的曝光。然而,在一些设备中不可直接获取光传感器。在一些方法中,可通过使用背面和前面的图像捕获部分作为非直接光传感器以克服该限制。
在一个实施例中,可仅使用背面图像捕获组件(即最终拍摄图片的那个)来评估光照。设备可评估视频帧的亮度分布,并且仅在该分布匹配先前发现的情形或其他已知的导致良好曝光的情形时拍摄图片。
在另一个实施例中,可通过自动拍摄两个图片一个带闪光并且一个不带闪光、并分析哪一个给出更好的曝光来评估光照条件。还可将两个图像(带闪光和不带闪光)混合,尤其是当接连捕获时(例如在不到一秒内,可利用诸如“突发模式”捕获和HDR成像的特征来实现)。
在更多实施例中,可使用移动设备光,例如LED诸如视频灯(手电筒、闪光灯等)以找到最佳可捕获条件。可调整光的光照水平,这样设备加强光、沿途拍摄帧、分析哪个给出最佳曝光,并拍摄具有该设置的高质量曝光。可通过上述示例性质量度量的任何一个来指示良好曝光。
在更多的实施例中,设备可从两个图像捕获组件(背面和前面)拍摄图片,并针对这两个分析亮度分布。该方法优选地揭示主要光源在图像捕获组件之后的情况,例如在该情况中图像捕获组件在文档上投射阴影等,用户可被引导以移动到新的位置,并重新评估亮度分布用于更多的捕获条件。
例如,可通过设备的常驻操作系统(OS)应用编程接口来进入设备屏幕的亮度设置。在这种情况下,亮度设置应优选地与打在设备上的光量相关联(例如可根据进入移动设备的一个或多个图像捕获组件的光量进行测量),但是不一定是打在文档表面的光量。该关联允许设备和/或软件应用感测到当前的环境光。
避免强光
如技术人员在阅读示例公开后将理解的,将本技术应用到强光呈现附加挑战的情形下是有利的,该情形例如,用户想要拍摄光滑的文档的图片,诸如驾驶证、礼品卡、信用卡等。然而,当用户尝试拍摄图片时,由于反射而存在强光,和/或任何嵌入的全息图可通过文档表面显示强光。本公开技术的优选实施例和产品传达在光滑文档中避免强光的能力。
例如,在一个方法中,如果以微小角度拍摄具有反射面或嵌入全息图的文档的图片是可取的。本公开技术可因此利用样本帧,例如以检测潜在的强光。在一些方法中,使用帧内所检测的文档来估计图像捕获组件当前对文档的角度也是有利的(即,不依赖可通过移动设备的其他组件提供的信息来确定移动设备方向,诸如加速器、指南针、回转仪等,如本领域普通技术人员在阅读本描述之后将理解的)。在该实施例中,向用户提供指示以引导用户在对文档的微小角度处拍摄图片,例如关于文档的主面方向偏离常态大约5度、10度或15度的角度。
详细显示文档
在若干方法中,当用户将移动设备的图像捕获组件对准文档时,用户可能希望详细查阅被捕获的文档。为了实现该结果,本技术可利用组合的纠偏和裁剪方法,其中(可选地响应于检测到在图像捕获组件的视野领域内存在描绘的完整文档),捕获帧,并裁剪和摆正帧,结果文档将在取景器内以完整大小而显示。
指示文档种类
当用户建造文档图像时,在一些实例中,指示文档是何种类是有益的,从而使得更加确定捕获和/或后期处理将成功。
当发现文档时,本公开技术可包括如上所述的裁剪和摆正文档,随后实施分类操作。可在视觉上指示分类操作的成功,例如在文档上采用绿色覆盖,并潜在地将种类输出到设备显示器、存储器、后期处理应用、库函数、调用等。
捕获多个文档,一次一个
在一些实例中,能够捕获摆在面上诸如桌子上的两个(或更多个)文档是有益的。用户可能想要在文档之上缓慢移动图像捕获组件,使图像捕获组件自动检测每个,并捕获每个的图像,均不必对相同文档拍摄两次图片。
除了找到帧中的文档,该使用情况由于追踪文档的能力而显著受益。追踪允许系统拍摄第一文档的图像、保持追踪它,但不对它拍摄另一图片。一旦第二文档进入视野,系统切换到那个文档并开始追踪它。当它处在整个视野内时,拍摄图片。在优选实施例中,关于长文档捕获可大体上如上所述地实施文档追踪。
同时捕获多个文档
在更多复杂的情形下,用户可能需要捕获两个(或更多个)摆在面上诸如桌子上的文档,并且有时文档可能位于相互靠近的位置,这呈现了在两个文档之间进行区分的附加挑战。为了解决这种挑战,本描述技术可指导用户在文档上缓慢移动图像捕获组件,这样图像捕获组件自动检测每个文档并捕获文档的图像,而不对同一个文档拍摄两次图片。例如,移动设备可给用户提供听觉指令,指示优选的运动方向。
优选地,技术追踪单个帧中的多个文档。然而,追踪多帧中多个文档的移动也在本公开的范围内。在一些实现方案中,拍摄多个图像并且仅保留多个所捕获图像中所选择的部分例如用于追踪。从所选择的部分,多文档捕获算法将所显示的各文档(其可能是所有文档或仅是文档中的一些)分开,并确定每个文档的哪个图像是最好的一个。在优选实施例中,关于长文档捕获可大体上如上所述地实施文档追踪。
捕获和追踪多个文档
附加的应用包括捕获多个文档并实时或接近实时地追踪那些文档。在这类方法中,当用户使捕获设备在文档上方悬停时,优选地,向用户提供指示,指示每个文档是什么(例如文档类别),并进一步指示哪些文档已如上所述地被捕获到图像中。
例如,在取景器内,可采用覆盖(黄色用于所检测的和想要的类别,绿色用于所捕获的文档,并且灰色用于不想要的类别)对已处理的每个文档进行标记。
在另一个示例中,想象用户从高度概览其桌子开始的场景。系统检测五个文档并能够对它们进行分类。它们中的四个与用户对文档的特定使用相关(例如与特定交易相关,或适于后续处理等),并被着色为黄色。无关的文档被着色为灰色。
进一步地,假设所捕获(或将被从图像捕获组件处于的当前位置捕获的图像)并描绘四个相关文档的图像的分辨率没有高到允许所有四个想要文档的高质量图像。例如,用户(以及相关地,移动设备的图像捕获组件)可能离四个文档中的三个很远,这样仅一个文档足够靠近以允许足够高的分辨率。系统拍摄图片、将该文档隔开、并实施一个或多个质量保证检查(例如针对图像清晰度、亮度等),并响应于确定质量保证检查通过而采用绿色覆盖标记该文档。用户随后移动图像捕获组件以使另一个文档更大地出现在取景器中。系统追踪所有文档、快拍现在处于更好视野下的文档的另一图片。将该文档的图像隔开和检查,并采用绿色覆盖进行标记。类似地,捕获其他文档。
在该过程期间,文档中已被检测和处理的一些可从视野中消失(用户聚焦于一个特定文档,其他的不在视野中)。当用户回到较大的图片,系统需将那些文档识别为已被处理。因此,在至少一些实例中,实施其中记录并分析文档相对于彼此的位置的“场景分析”将是有益的。
一种计算机程序产品,包括计算机可读介质,所述计算机可读介质具有存储在其上的能够由移动设备执行的指令,所述指令配置为一旦执行则使所述移动设备进行下述操作:使用所述移动设备的图像捕获组件发起捕获操作。所述捕获操作包括:捕获视频数据;以及估计与所述图像捕获组件在所述捕获操作期间的运动相对应的多个运动矢量。所述指令还配置为使移动设备检测所述视频数据中所描绘的文档;在所有所述视频数据中追踪所检测的文档的位置;使用所述移动设备的所述图像捕获组件选择多个图像,以及基于所选择的多个图像中的至少一些生成合成图像。所述选择至少部分地基于:所检测的文档的所追踪的位置;以及所估计的运动矢量。所述文档是长文档。所述追踪仅基于所估计的多个运动矢量。所述指令进一步配置为所述使移动设备进行下述操作:基于所估计的多个运动矢量中的一些或全部确定至少一个运动位移,每个运动位移与在所述捕获操作期间的所述图像捕获组件相对应;响应于确定所述一个或多个运动位移中的一个被表征为超过预定义的运动位移阈值的值,终止或中止所述捕获操作;以及响应于终止所述捕获操作,发起新的捕获操作;或者响应于中止所述捕获操作,恢复所述捕获操作。所述预定义的运动位移阈值具有从大约5像素到大约25像素的范围中的值。配置为使所述移动设备检测文档的指令进一步配置为使所述移动设备识别所捕获的视频数据中所描绘的文档的至少一个边缘。所述所选择的多个图像中的每一个描绘所述文档的一部分,并且其中所述合成图像描绘所述文档的全部。此外,所述合成图像被表征为以下中的至少一个:大于所述所选择的多个图像中的任何一个的图像分辨率的图像分辨率;以及大于所述所选择的多个图像中的任何一个的图像大小的图像大小。每个所选择的图像描绘所述文档的一部分,以及其中所述合成图像仅描绘所述文档的与由所述文档所记录的金融交易相对应的部分。指令还配置为使所述移动设备进行下述操作:基于所述合成图像识别所述文档描绘文本信息的一个或多个部分;基于其中所描绘的文本信息将所述文档的每个所识别的部分分类;确定每个经分类的部分与所述金融交易有关还是与所述金融交易无关,所述确定基于所述部分的类别;以及从所述合成图像中移除经确定与所述金融交易无关的每个部分。计算机程序产品还包括配置为使所述移动设备进行下述操作的指令:对准经确定与所述金融交易有关的部分;以及生成第二合成图像,其中所述第二合成图像被表征为:与所述合成图像的图像大小近似相同的图像大小;与所述合成图像的图像分辨率近似相同的图像分辨率;不包括与所述金融交易无关的文本信息;以及包括与所述金融交易有关的文本信息,其中对准包括与所述金融交易有关的所述文本信息的多个字符。指令配置为使所述移动设备选择所述多个图像的指令包括配置为使所述移动设备定义多个帧对的指令。每个帧对包括参考帧和测试帧,同时每个参考帧和每个测试帧选择自所述视频数据。指令配置为使所述移动设备选择所述多个图像的指令进一步包括配置为使所述移动设备进行如下操作的指令:确定每个帧对的参考帧和测试帧之间的重叠量;以及选择与参考帧和测试帧之间的重叠量大于预定重叠阈值的每个帧对相对应的图像。所述重叠量与所述文档相对应,不与所述参考帧中所描绘的背景相对应,不与所述测试帧中所描绘的背景相对应。所述预定重叠阈值与所述参考帧的长度的至少40%的距离相对应。配置为使所述移动设备生成合成图像的指令包括配置为使所述移动设备进行下述操作的指令:检测至少一个帧对的参考帧和测试帧中的每个的文本信息,所述文本信息描绘在所述文档中。配置为使所述移动设备检测至少一个帧对的参考帧和测试帧中的每个的文本信息包括配置为使所述移动设备进行下述操作的指令:在所述参考帧中定义所述文档描绘所述文本信息中的一些或全部的至少一个矩形部分;在所述测试帧中定义所述文档描绘所述文本信息中的一些或全部的至少一个相对应矩形部分;以及将所述测试帧中所描绘的文档与所述参考帧中所描绘的文档对准。所述对准基于:在所述矩形部分的至少一个中所描绘的文本信息;以及在所述相对应矩形部分的至少一个中所描绘的文本信息。所述文本信息包括以下中的至少一个:所述矩形部分中所表示的一个或多个字符的标识;所述相对应矩形部分中所表示的一个或多个字符的标识;所述矩形部分中所表示的字符序列;所述相对应矩形部分中所表示的字符序列;所述矩形部分中所表示的一个或多个字符的位置;所述相对应矩形部分中所表示的一个或多个字符的位置;所述矩形部分中所表示的一个或多个字符的绝对大小;所述相对应矩形部分中所表示的一个或多个字符的绝对大小;相对于所述相对应矩形部分中所表示的一个或多个字符的大小,所述矩形部分中所表示的一个或多个字符的大小;相对于所述矩形部分中所表示的一个或多个字符的大小,所述相对应矩形部分中所表示的一个或多个字符的大小;所述矩形部分中所表示的一个或多个字符的颜色;所述相对应矩形部分中所表示的一个或多个字符的颜色;所述矩形部分中所表示的一个或多个字符的形状;以及所述相对应矩形部分中所表示的一个或多个字符的形状。配置为使所述移动设备将所述测试帧中所描绘的文档与所述参考帧中所描绘的文档对准的指令包括配置为使所述移动设备对至少所述矩形部分和所述相对应矩形部分实施光学字符识别(OCR)。配置为使所述移动设备生成合成图像的指令进一步包括配置为使所述移动设备进行下述操作的指令:检测至少一个帧对的参考帧和测试帧中的一个或多个的倾斜角。所述倾斜角与所述文档相对应并且具有>0.0度的量值;以及纠正所述参考帧和所述测试帧的至少一个中的倾斜角。所述合成图像中所描绘的文档被近似0.0度的倾斜角所表征。计算机程序产品还包括配置为使所述移动设备对所述视频数据下采样的指令,以及其中配置为使所述移动设备检测文档、追踪所述文档的位置、以及选择多个图像的指令配置为使用经下采样的视频数据实施所述检测、所述追踪和所述选择。
虽然上文已描述各实施例,但是应该理解仅以示例而非限制的方式呈现它们。因此,本发明的实施例的宽度和范围不应受限于上述示例性实施例中的任何一个,而应仅根据下面的权利要求及其等同物来限定。
Claims (21)
1.一种计算机程序产品,包括计算机可读介质,所述计算机可读介质具有存储在其上的能够由移动设备执行的指令,所述指令配置为一旦执行则使所述移动设备进行下述操作:
使用所述移动设备的图像捕获组件发起捕获操作,所述捕获操作包括:
捕获视频数据;以及
估计与所述图像捕获组件在所述捕获操作期间的运动相对应的多个运动矢量;
检测所述视频数据中所描绘的文档;
在所述视频数据中追踪所检测的文档的位置;
使用所述移动设备的所述图像捕获组件选择多个图像,其中所述选择至少部分地基于:
所检测的文档的所追踪的位置;以及
所估计的运动矢量;以及
基于所选择的多个图像中的至少一些生成合成图像。
2.根据权利要求1所述的计算机程序产品,其中所述文档是长文档。
3.根据权利要求1所述的计算机程序产品,其中所述追踪仅基于所估计的多个运动矢量。
4.根据权利要求1所述的计算机程序产品,进一步包括配置为所述使移动设备进行下述操作的指令:
基于所估计的多个运动矢量中的一些或全部确定至少一个运动位移,每个运动位移与在所述捕获操作期间的所述图像捕获组件相对应;以及
响应于确定一个或多个所述运动位移中的一个被表征为超过预定义的运动位移阈值的值,终止或中止所述捕获操作;以及
响应于终止所述捕获操作,发起新的捕获操作;或者
响应于中止所述捕获操作,恢复所述捕获操作。
5.根据权利要求4所述的计算机程序产品,其中所述预定义的运动位移阈值具有从大约5像素到大约25像素的范围中的值。
6.根据权利要求1所述的计算机程序产品,配置为使所述移动设备检测文档的指令进一步包括配置为使所述移动设备识别所捕获的视频数据中所描绘的文档的至少一个边缘的指令。
7.根据权利要求1所述的计算机程序产品,其中所述所选择的多个图像中的每一个描绘所述文档的一部分,并且其中所述合成图像描绘所述文档的全部。
8.根据权利要求1所述的计算机程序产品,其中所述合成图像被表征为以下中的至少一个:
大于所述所选择的多个图像中的任何一个的图像分辨率的图像分辨率;以及
大于所述所选择的多个图像中的任何一个的图像大小的图像大小。
9.根据权利要求1所述的计算机程序产品,其中每个所选择的图像描绘所述文档的一部分,以及其中所述合成图像仅描绘所述文档的与由所述文档所记录的金融交易相对应的部分。
10.根据权利要求9所述的计算机程序产品,进一步包括配置为使所述移动设备进行下述操作的指令:
基于所述合成图像识别所述文档描绘文本信息的一个或多个部分;
基于其中所描绘的文本信息将所述文档的每个所识别的部分分类;
确定每个经分类的部分与所述金融交易有关还是与所述金融交易无关,所述确定基于所述部分的类别;以及
从所述合成图像中移除经确定与所述金融交易无关的每个部分。
11.根据权利要求10所述的计算机程序产品,进一步包括配置为使所述移动设备进行下述操作的指令:
对准经确定与所述金融交易有关的部分;以及
生成第二合成图像,其中所述第二合成图像被表征为:
与所述合成图像的图像大小近似相同的图像大小;
与所述合成图像的图像分辨率近似相同的图像分辨率;
不包括与所述金融交易无关的文本信息;以及
包括与所述金融交易有关的文本信息,其中对准包括与所述金融交易有关的所述文本信息的多个字符。
12.根据权利要求1所述的计算机程序产品,配置为使所述移动设备选择所述多个图像的指令进一步包括配置为使所述移动设备定义多个帧对的指令,
其中每个帧对包括参考帧和测试帧,以及
其中每个参考帧和每个测试帧选自所述视频数据。
13.根据权利要求12所述的计算机程序产品,配置为使所述移动设备选择所述多个图像的指令进一步包括配置为使所述移动设备进行如下操作的指令:
确定每个帧对的参考帧和测试帧之间的重叠量;以及
选择与参考帧和测试帧之间的重叠量大于预定重叠阈值的每个帧对相对应的图像。
14.根据权利要求13所述的计算机程序产品,其中所述重叠量与所述文档相对应,
其中所述重叠量不与所述参考帧中所描绘的背景相对应,以及
其中所述重叠量不与所述测试帧中所描绘的背景相对应。
15.根据权利要求13所述的计算机程序产品,其中所述预定重叠阈值与所述参考帧的长度的至少40%的距离相对应。
16.根据权利要求12所述的计算机程序产品,配置为使所述移动设备生成合成图像的指令进一步包括配置为使所述移动设备进行下述操作的指令:
检测至少一个帧对的参考帧和测试帧中的每个的文本信息,所述文本信息描绘在所述文档中。
17.根据权利要求16所述的计算机程序产品,配置为使所述移动设备检测至少一个帧对的参考帧和测试帧中的每个的文本信息的指令进一步包括配置为使所述移动设备进行下述操作的指令:
在所述参考帧中定义所述文档描绘所述文本信息中的一些或全部的至少一个矩形部分;
在所述测试帧中定义所述文档描绘所述文本信息中的一些或全部的至少一个相对应矩形部分;以及
将所述测试帧中所描绘的文档与所述参考帧中所描绘的文档对准,所述对准基于:
在所述一个或多个矩形部分的至少一个中所描绘的文本信息;以及
在所述一个或多个相对应矩形部分的至少一个中所描绘的文本信息。
18.根据权利要求17所述的计算机程序产品,其中所述文本信息包括以下中的至少一个:
所述矩形部分中所表示的一个或多个字符的标识;
所述相对应矩形部分中所表示的一个或多个字符的标识;
所述矩形部分中所表示的字符序列;
所述相对应矩形部分中所表示的字符序列;
所述矩形部分中所表示的一个或多个字符的位置;
所述相对应矩形部分中所表示的一个或多个字符的位置;
所述矩形部分中所表示的一个或多个字符的绝对大小;
所述相对应矩形部分中所表示的一个或多个字符的绝对大小;
相对于所述相对应矩形部分中所表示的一个或多个字符的大小,所述矩形部分中所表示的一个或多个字符的大小;
相对于所述矩形部分中所表示的一个或多个字符的大小,所述相对应矩形部分中所表示的一个或多个字符的大小;
所述矩形部分中所表示的一个或多个字符的颜色;
所述相对应矩形部分中所表示的一个或多个字符的颜色;
所述矩形部分中所表示的一个或多个字符的形状;以及
所述相对应矩形部分中所表示的一个或多个字符的形状。
19.根据权利要求17所述的计算机程序产品,配置为使所述移动设备将所述测试帧中所描绘的文档与所述参考帧中所描绘的文档对准的指令进一步包括配置为使所述移动设备对至少所述矩形部分和所述相对应矩形部分实施光学字符识别(OCR)的指令。
20.根据权利要求12所述的计算机程序产品,配置为使所述移动设备生成合成图像的指令进一步包括配置为使所述移动设备进行下述操作的指令:
检测至少一个帧对的参考帧和测试帧中的一个或多个的倾斜角,所述倾斜角与所述文档相对应并且具有>0.0度的量值;以及
纠正所述参考帧和所述测试帧的至少一个中的倾斜角,
其中所述合成图像中所描绘的文档被近似0.0度的倾斜角所表征。
21.根据权利要求1所述的计算机程序产品,进一步包括配置为使所述移动设备对所述视频数据下采样的指令,以及
其中配置为使所述移动设备检测文档、追踪所述文档的位置、以及选择多个图像的指令配置为使用经下采样的视频数据实施所述检测、所述追踪和所述选择。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361905063P | 2013-11-15 | 2013-11-15 | |
US61/905,063 | 2013-11-15 | ||
PCT/US2014/065831 WO2015073920A1 (en) | 2013-11-15 | 2014-11-14 | Systems and methods for generating composite images of long documents using mobile video data |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105830091A true CN105830091A (zh) | 2016-08-03 |
Family
ID=56682305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480061296.6A Withdrawn CN105830091A (zh) | 2013-11-15 | 2014-11-14 | 使用移动视频数据生成长文档的合成图像的系统和方法 |
Country Status (2)
Country | Link |
---|---|
EP (1) | EP3069298A4 (zh) |
CN (1) | CN105830091A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106897983A (zh) * | 2016-12-30 | 2017-06-27 | 青岛海信电器股份有限公司 | 一种多帧图像集合的处理方法和图像处理装置 |
CN109961063A (zh) * | 2017-12-26 | 2019-07-02 | 杭州海康机器人技术有限公司 | 文本检测方法及装置、计算机设备和存储介质 |
CN109992754A (zh) * | 2017-12-29 | 2019-07-09 | 上海全土豆文化传播有限公司 | 文档处理方法及装置 |
CN110100251A (zh) * | 2016-12-30 | 2019-08-06 | 华为技术有限公司 | 用于处理文档的设备、方法和图形用户界面 |
CN110809770A (zh) * | 2017-06-16 | 2020-02-18 | 惠普发展公司,有限责任合伙企业 | 小矢量图像生成 |
CN111213156A (zh) * | 2017-07-25 | 2020-05-29 | 惠普发展公司,有限责任合伙企业 | 字符识别锐度确定 |
CN113079342A (zh) * | 2020-01-03 | 2021-07-06 | 深圳市春盛海科技有限公司 | 基于高分辨率影像装置的目标追踪方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060257048A1 (en) * | 2005-05-12 | 2006-11-16 | Xiaofan Lin | System and method for producing a page using frames of a video stream |
US20070002375A1 (en) * | 2005-06-30 | 2007-01-04 | Lexmark International, Inc. | Segmenting and aligning a plurality of cards in a multi-card image |
US20100014769A1 (en) * | 2008-07-17 | 2010-01-21 | Lundgren Mark A | Methods and systems for improving resolution of a digitally stabilized image |
US20120092329A1 (en) * | 2010-10-13 | 2012-04-19 | Qualcomm Incorporated | Text-based 3d augmented reality |
US20130057703A1 (en) * | 2011-09-02 | 2013-03-07 | Cuong Vu | Methods, Systems and Apparatus for Automatic Video Quality Assessment |
WO2013100791A1 (en) * | 2011-12-30 | 2013-07-04 | Intel Corporation | Method of and apparatus for scalable frame rate up-conversion |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0723247B1 (en) * | 1995-01-17 | 1998-07-29 | Eastman Kodak Company | Document image assessment system and method |
US6512848B2 (en) * | 1996-11-18 | 2003-01-28 | Canon Kabushiki Kaisha | Page analysis system |
US7812860B2 (en) * | 2004-04-01 | 2010-10-12 | Exbiblio B.V. | Handheld device for capturing text from both a document printed on paper and a document displayed on a dynamic display device |
US8189965B2 (en) * | 2008-11-17 | 2012-05-29 | Image Trends, Inc. | Image processing handheld scanner system, method, and computer readable medium |
JP2012191486A (ja) * | 2011-03-11 | 2012-10-04 | Sony Corp | 画像合成装置と画像合成方法およびプログラム |
-
2014
- 2014-11-14 EP EP14861942.2A patent/EP3069298A4/en active Pending
- 2014-11-14 CN CN201480061296.6A patent/CN105830091A/zh not_active Withdrawn
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060257048A1 (en) * | 2005-05-12 | 2006-11-16 | Xiaofan Lin | System and method for producing a page using frames of a video stream |
US20070002375A1 (en) * | 2005-06-30 | 2007-01-04 | Lexmark International, Inc. | Segmenting and aligning a plurality of cards in a multi-card image |
US20100014769A1 (en) * | 2008-07-17 | 2010-01-21 | Lundgren Mark A | Methods and systems for improving resolution of a digitally stabilized image |
US20120092329A1 (en) * | 2010-10-13 | 2012-04-19 | Qualcomm Incorporated | Text-based 3d augmented reality |
US20130057703A1 (en) * | 2011-09-02 | 2013-03-07 | Cuong Vu | Methods, Systems and Apparatus for Automatic Video Quality Assessment |
WO2013100791A1 (en) * | 2011-12-30 | 2013-07-04 | Intel Corporation | Method of and apparatus for scalable frame rate up-conversion |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106897983A (zh) * | 2016-12-30 | 2017-06-27 | 青岛海信电器股份有限公司 | 一种多帧图像集合的处理方法和图像处理装置 |
CN110100251A (zh) * | 2016-12-30 | 2019-08-06 | 华为技术有限公司 | 用于处理文档的设备、方法和图形用户界面 |
CN110100251B (zh) * | 2016-12-30 | 2021-08-20 | 华为技术有限公司 | 用于处理文档的设备、方法和计算机可读存储介质 |
US11158057B2 (en) | 2016-12-30 | 2021-10-26 | Huawei Technologies Co., Ltd. | Device, method, and graphical user interface for processing document |
CN106897983B (zh) * | 2016-12-30 | 2023-12-26 | 海信视像科技股份有限公司 | 一种多帧图像集合的处理方法和图像处理装置 |
CN110809770A (zh) * | 2017-06-16 | 2020-02-18 | 惠普发展公司,有限责任合伙企业 | 小矢量图像生成 |
CN111213156A (zh) * | 2017-07-25 | 2020-05-29 | 惠普发展公司,有限责任合伙企业 | 字符识别锐度确定 |
CN111213156B (zh) * | 2017-07-25 | 2024-05-10 | 惠普发展公司,有限责任合伙企业 | 字符识别锐度确定 |
CN109961063A (zh) * | 2017-12-26 | 2019-07-02 | 杭州海康机器人技术有限公司 | 文本检测方法及装置、计算机设备和存储介质 |
CN109992754A (zh) * | 2017-12-29 | 2019-07-09 | 上海全土豆文化传播有限公司 | 文档处理方法及装置 |
CN109992754B (zh) * | 2017-12-29 | 2023-06-16 | 阿里巴巴(中国)有限公司 | 文档处理方法及装置 |
CN113079342A (zh) * | 2020-01-03 | 2021-07-06 | 深圳市春盛海科技有限公司 | 基于高分辨率影像装置的目标追踪方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
EP3069298A4 (en) | 2016-11-30 |
EP3069298A1 (en) | 2016-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10108860B2 (en) | Systems and methods for generating composite images of long documents using mobile video data | |
CN105830091A (zh) | 使用移动视频数据生成长文档的合成图像的系统和方法 | |
US9819825B2 (en) | Systems and methods for detecting and classifying objects in video captured using mobile devices | |
JP6250014B2 (ja) | モバイル画像キャプチャおよび処理のためのシステムならびに方法 | |
US9754164B2 (en) | Systems and methods for classifying objects in digital images captured using mobile devices | |
US9137417B2 (en) | Systems and methods for processing video data | |
US9247136B2 (en) | Automatic mobile photo capture using video analysis | |
US11544916B2 (en) | Automated gauge reading and related systems, methods, and devices | |
RU2631765C1 (ru) | Способ и система исправления перспективных искажений в изображениях, занимающих двухстраничный разворот | |
JP2019109624A (ja) | 情報処理装置、プログラム及び情報処理方法 | |
Baggio et al. | Mastering OpenCV 3 | |
JP5864936B2 (ja) | 画像処理装置、画像処理方法およびプログラム | |
WO2022111461A1 (zh) | 识别方法、装置及电子设备 | |
US20240144711A1 (en) | Reliable determination of field values in documents with removal of static field elements | |
Liang et al. | Mosaicing of camera-captured document images | |
JP2018128927A (ja) | 画像情報合成システム | |
US10652472B2 (en) | Enhanced automatic perspective and horizon correction | |
Chand et al. | Implementation of Panoramic Image Stitching using Python | |
Safonov et al. | Piecewise Scanning and Stitching of Large Originals | |
LI | A unified framework for document image restoration | |
Zimmermann et al. | DR 2.1: Basic vision-based situation awareness capabilities | |
Cristin et al. | Exposing Photo Manipulation with Reflection and Shadows |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20160803 |