CN108345883B - 用于确定文本的旋转角度的装置、方法和计算机可读存储介质 - Google Patents
用于确定文本的旋转角度的装置、方法和计算机可读存储介质 Download PDFInfo
- Publication number
- CN108345883B CN108345883B CN201710137157.2A CN201710137157A CN108345883B CN 108345883 B CN108345883 B CN 108345883B CN 201710137157 A CN201710137157 A CN 201710137157A CN 108345883 B CN108345883 B CN 108345883B
- Authority
- CN
- China
- Prior art keywords
- text
- distance
- determining
- average
- objects
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000012015 optical character recognition Methods 0.000 claims description 19
- 230000004044 response Effects 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 description 23
- 238000004891 communication Methods 0.000 description 15
- 238000012545 processing Methods 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 8
- 238000011144 upstream manufacturing Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 101100521334 Mus musculus Prom1 gene Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/146—Aligning or centring of the image pick-up or image-field
- G06V30/1475—Inclination or skew detection or correction of characters or of image to be recognised
- G06V30/1478—Inclination or skew detection or correction of characters or of image to be recognised of characters or characters lines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Character Input (AREA)
Abstract
本发明涉及用于确定文本的旋转角度的装置、方法和计算机可读存储介质。一种用于确定文本的旋转角度的装置、方法和计算机可读存储介质。该方法包括:针对包括在图像内的文本中的多个对象中的每个对象计算到最近的相邻对象的距离;计算到最近的相邻对象的距离的平均距离;确定平均距离与平均字体笔画宽度之间的比率,该平均字体笔画宽度是多个对象中的每一个的字体笔画宽度的平均;以及通过比较比率与阈值来确定文本的旋转角度。
Description
技术领域
本公开一般涉及文本定向的领域。
背景技术
典型地,使用光学字符识别(OCR)过程来执行估计绘制字符的角度。该过程是慢的,并且不适合于实时OCR应用。现有的解决方案忽略这样的角度,或者请求用户手动地指定该角度,这对于用户可能是难于负担的,尤其是对于需要被处理的大量的文本。
发明内容
用于确定文本的旋转角度的装置、方法和计算机可读存储介质。该方法包括:针对包括在图像内的文本中的多个对象中的每个对象计算到最近的相邻对象的距离;计算到最近的相邻对象的距离的平均距离;确定平均距离与平均字体笔画宽度之间的比率,平均字体笔画宽度是多个对象中的每一个的字体笔画宽度的平均;以及通过比较比率和阈值来确定文本的旋转角度。
附图说明
将从阅读随后的描述中以及从审查附图中更好地理解本公开。这些图被单独提供为实施例的非限制性示例。在附图中:
图1(图1A、1B、1C和1D)图示根据一个实施例的四个不同的旋转角度;
图2(图2A、2B、2C和2D)图示根据一个实施例的垂直文本的示例;
图3图示根据一个实施例的确定文本块是垂直还是水平的过程的流程图;
图4图示根据一个实施例的确定(一个或多个)垂直块的旋转角度的过程的流程图;
图5图示根据一个实施例的对象;
图6图示根据一个实施例的文本块;
图7图示根据一个实施例执行的过程的示例;以及
图8图示可在其上实现本公开的(一个或多个)实施例的计算机系统。
具体实施方式
一个实施例被描绘成用于确定图像内的文本的旋转角度的装置,该装置包括:电路系统,该电路系统被配置成:针对包括在文本中的多个对象中的每个对象计算到最近的相邻对象的距离;计算到最近的相邻对象的距离的平均距离;确定平均距离与平均字体笔画宽度之间的比率,该平均字体笔画宽度是多个对象中的每一个的字体笔画宽度的平均;以及通过比较比率与阈值来确定文本的旋转角度。
在一个实施例中,该电路系统被进一步配置成确定针对每个对象的边界矩形,该边界矩形围绕相应的对象并接触相应的对象的最外面的部分,并且该电路系统通过计算相应的边界矩形到最近的相邻边界矩形的距离来计算到最近的相邻对象的距离。
在一个实施例中,该电路系统被进一步配置成:针对每个对象确定对应于图像内的相应的对象的整体打印面积的对象面积;针对每个对象确定对应于相应的对象的周长的对象周长;以及通过将对象面积除以对象周长并乘以2,计算针对每个对象的字体笔画宽度。
在一个实施例中,该电路系统被进一步配置成:通过将多个对象的字体笔画宽度的总和除以多个对象的总数,计算平均字体笔画宽度。
在一个实施例中,该电路系统被进一步配置成:在针对每个对象计算到最近的相邻对象的距离之前,确定图像内的文本的一个或多个文本块,每个文本块包括多个对象;针对每个文本块确定文本块是具有垂直定向还是具有水平定向;以及响应于确定文本块具有垂直定向,针对文本块中的每个对象计算到最近的相邻对象的距离。
一个实施例被描绘成一种方法,该方法包括:针对包括在图像内的文本中的多个对象中的每个对象计算到最近的相邻对象的距离;计算到最近的相邻对象的距离的平均距离;确定平均距离与平均字体笔画宽度之间的比率,该平均字体笔画宽度是多个对象中的每一个的字体笔画宽度的平均;以及通过比较比率与阈值来确定文本的旋转角度。
在一个实施例中,该方法进一步包括:确定针对每个对象的边界矩形,该边界矩形围绕相应的对象并接触相应的对象的最外面的部分,其中通过计算相应的边界矩形到最近的相邻边界矩形的距离来执行到最近的相邻对象的距离的计算。
在一个实施例中,该方法进一步包括:针对每个对象确定对应于图像内的相应的对象的整体打印面积的对象面积;针对每个对象确定对应于相应的对象的周长的对象周长;以及通过将对象面积除以对象周长并乘以2,计算针对每个对象的字体笔画宽度。
在一个实施例中,该方法进一步包括:通过将多个对象的字体笔画宽度的总和除以多个对象的总数,计算平均字体笔画宽度。
在一个实施例中,该方法进一步包括:在针对每个对象计算到最近的相邻对象的距离之前,确定图像内的文本的一个或多个文本块,每个文本块包括多个对象;针对每个文本块确定文本块是具有垂直定向还是具有水平定向;以及响应于确定文本块具有垂直定向,针对文本块中的每个对象计算到最近的相邻对象的距离。
在一个实施例中,该方法进一步包括:在确定文本的旋转角度之后,对文本执行OCR。
一个实施例被描绘成包括计算机可执行指令的非暂时性计算机可读存储介质,其中该指令在由计算机执行时使得计算机执行一种方法,该方法包括:针对包括在图像内的文本中的多个对象中的每个对象计算到最近的相邻对象的距离;计算到最近的相邻对象的距离的平均距离;确定平均距离与平均字体笔画宽度之间的比率,平均字体笔画宽度是多个对象中的每一个的字体笔画宽度的平均;以及通过比较比率与阈值来确定文本的旋转角度。
在一个实施例中,非暂时性计算机可读存储介质进一步包括:确定针对每个对象的边界矩形,该边界矩形围绕相应的对象并接触相应的对象的最外面的部分,其中通过计算相应的边界矩形到最近的相邻边界矩形的距离来执行到最近的相邻对象的距离的计算。
在一个实施例中,非暂时性计算机可读存储介质进一步包括:针对每个对象确定对应于图像内的相应的对象的整体打印面积的对象面积;针对每个对象确定对应于相应的对象的周长的对象周长;以及通过将对象面积除以对象周长并乘以2,计算针对每个对象的字体笔画宽度。
在一个实施例中,非暂时性计算机可读存储介质进一步包括:通过将多个对象的字体笔画宽度的总和除以多个对象的总数,计算平均字体笔画宽度。
在一个实施例中,非暂时性计算机可读存储介质进一步包括:针对每个对象计算到最近的相邻对象的距离,在该计算之前,确定图像内的文本的一个或多个文本块,每个文本块包括多个对象;针对每个文本块确定文本块是具有垂直定向还是具有水平定向;以及响应于确定文本块具有垂直定向,针对文本块中的每个对象计算到最近的相邻对象的距离。
在一个实施例中,非暂时性计算机可读存储介质进一步包括:在确定文本的旋转角度之后,对文本执行OCR。
本公开被描绘成一种用于估计或确定角度的快速方法,在针对在垂直线上方流动(flow)的文本块的图像内以该角度绘制字符(例如,字母)。该绘制角度被称为旋转角度。注意的是:遍及本公开,可互换地使用旋转和定向。
如图1中所图示的,在一个实施例中,可能有四个不同的旋转方向。图1A图示具有0度旋转角度的字符;图1B图示具有90度旋转角度的字符;图1C图示具有180度旋转角度的字符;以及图1D图示具有270度旋转角度的字符。
在垂直线而不是水平线上方流动的文本被称为垂直文本。图2图示垂直文本的四个示例。图2A图示旋转90度的拉丁文本的示例;图2B图示旋转270度的拉丁文本的示例;图2C图示在字母未旋转(0度旋转)时垂直绘制的拉丁文本的示例;以及图2D图示在字母未旋转时垂直绘制的日语文本的示例。
注意的是,文本被视为相对于图像的水平轴(在图像上从左到右)水平,并且文本被视为相对于图像的垂直轴(在图像上从上到下)垂直。在图1和2中图示水平和垂直文本的定向。在图像中的平行于图像的垂直轴的列(从上到下)中排序垂直文本,而在图像中的平行于图像的水平轴的行(从左到右)中排序水平文本。
本公开被描绘成基于字符间间隔的大小以及绘制的字符的属性来执行确定。
对每个单个字符执行OCR以确定旋转存在某些缺点。例如,该过程是慢的,并且不适合于实时OCR应用。如上所指出的,现有的解决方案忽略针对这样的文本的旋转角度,或者请求用户手动地指定旋转角度。
如先前指出的,本文中的实施例描述估计垂直文本旋转角度的快速、自动的方法。本公开的实施例可用于帮助OCR过程,并且其它文档应用实时地改善其准确度。例如,本文讨论的实施例可被首先使用,并且然后OCR可将结果应用于正确地识别(一个或多个)字符。换句话说,可首先如下参照图3和4所讨论地确定文本的旋转角度,并且然后可将OCR应用于该文本。
图3图示根据一个实施例确定文本块是垂直还是水平的过程。注意的是,给定的图像(例如扫描的文档的图像)例如可具有垂直绘制出(写)的文本和水平绘制出(写)的文本。这样的图像可表示广告页、报纸页、传单页等,或者任何其它类型的页/文档。
因而,在一个实施例中,在步骤100中,首先在图像内检测对象(例如,字符或字母)。注意的是,在本公开中,可互换地使用对象、字符和字母。接下来,在步骤110中,对象被划分成块。块例如可以是字符的任何分组(例如,句子、段落等)。可基于块和另一个块之间的距离是否大于预定距离来区分块与另一个块。例如,两个段落之间的距离可能比词语中的两个字符之间的距离大得多。相应地,在确定块的大小中使用这样的距离。在一个实施例中,注意的是,每个块可以是不同大小。在一个实施例中,注意的是,一些块(多个)可以是相同的大小,而其它块(多个)可以是不同的大小(多个)。
注意的是,在一个实施例中,块之间的最小距离可以是字符的大小的2倍,而字符之间的距离小于或等于字符的大小的0.2倍。注意的是,这些距离以像素为单位。
接下来,在步骤120中,针对每个块,确定定向角度(例如,0度、90度、180度或者270度)。在一个实施例中,定向角度可使用2010年1月16日在Springer-Verlag中出版的Beusekom等人的“Combined orientation and skew detection using geometric text-line modeling”中讨论的方法来确定,其整体内容通过引用而被并入于此。在一个实施例中,定向角度可使用从2010年1月在IEEE中出版的2010International Conference onPattern Recognition中的Iuliu Konya等人的“Fast seamless skew and orientationdetection in document images”中讨论的方法来确定,其整体内容通过引用而被并入于此。在一个实施例中,定向角度可由对本领域普通技术人员已知的(一个或多个)其它方法确定。例如,可使用可以检测图像的定向和倾斜角的任何方法。
简而言之,在Beusekom等人中讨论的方法(下文中为Beusekom)使用几何匹配来从扫描的文档中提取文本线。定义质量函数,所述质量函数给予与给定的一组点匹配文本线模型的质量。目标是针对文档图像中的每个文本线找到参数的集合,其最大化匹配模型的边界框的数量并在鲁棒的最小二乘意义上最小化每个参考点离基线的距离。Beusekom的方法的关键想法是以与建模下行字母(descender)相同的方式使用上行字母(ascender)建模。
x-线(穿过非上升较低情况字符的顶部的线,诸如x、a、c等)被建模为直线,并且上行字母线被建模为在x-线之上的距离处平行于x-线的线。考虑通过采取文档图像中的连接分量的边界框的顶部线的中部获得的一组参考点{y1、y2、...、yn}。文本线检测的目标是找到最大化的组。由于在拉丁文字中,上行字母比下行字母更可能出现,更多分量将比下行字母线更匹配上行字母线。当与匹配到基线/x-线的分量相比时,匹配到下行字母/上行字母的分量接收更低的分数。因此,一般地,下行字母线的总质量将高于上行字母线的总质量。该信息用于找到页的上边的向下定向。
在Beusekom的方法中,使用下行字母模型并且然后使用上行字母模型找到的n条最佳线的质量被合计。如果上行字母模型的质量高于下行字母模型质量,则页被报告为上边向下(180度旋转)。注意的是,针对正确定向中的给定页图像计算上行字母模型等效于针对180度旋转页计算下行字母模型。因此,对于任何给定的图像,仅仅针对原始图像并针对180度旋转的图像计算下行字母模型。导致更好下行字母质量的图像被报告为具有正确定向的图像。
该概念然后易于扩展到具有90度和270度定向的检测的页。水平文本线模型在垂直文本线上不良好地配合,因此对于右边向上纵向页,在垂直方向上的n条最佳线的总质量比n条最佳水平线的总质量低得多。因此,通过由以所有四个定向旋转页来计算下行字母质量,可以确定页的正确定向。
返回到图3,在步骤130中,基于定向角度的结果,每个块被分类为垂直或者水平。特别地,如果块的定向角度是90度或270度,则该块被分类为垂直。否则(即,如果块的定向角度是0度或180度),则块被分类为水平。注意的是,如果块是水平的,则不需要进一步的处理,因为块的旋转角度是前述的定向角度(即,使用例如在Beusekom中讨论的方法确定的定向角度)。
在步骤140中,确定是否所有的块都已经被分类。如果存在还未被分类的块,则过程移动回到步骤120并且重复,直到所有的块都已经被分类。
如果块被分类为垂直,则接下来参照图4确定旋转角度(0度(图2C中所示)、90度(图2A中所示)或270度(图2B中所示))。相应地,在步骤200中,对于文本块内的每个字符,使用下面的等式1计算字体笔画宽度:
图5图示根据一个实施例的针对字母“L”(对象320)的对象面积300和对象周长310。注意的是,对象面积300是指字符320的打印面积(即,仅仅字母的黑色部分,如果以黑色绘制字符的话)。对象周长310是指字符320的外部周长(即,字符/打印面积的轮廓)。换句话说,对象面积300对应于前景像素的数量,并且对象周长310对应于周长轮廓。注意的是,作为示例,对于Calibri 11字体大小,最大字体笔画宽度是7个像素。
接下来,在步骤210中,使用下面的等式2计算块中的所有字符320的平均字体笔画宽度:
然后,在步骤220中,对于每个对象320,计算边界矩形330(即,围绕字符320并且接触字符的最外面部分的框)。在图5中图示针对对象“L”320的边界矩形330。注意的是,在一个实施例中,边界矩形330不接触字符320,但是可围绕字符320并且在离字符320一距离(例如,1个像素)处。
此外,在步骤230中,对于每个对象320,计算间隔340到其最近对象320的大小(参见图6)。注意的是在一个实施例中,从一个对象320的边界矩形330到另一个(邻近)对象320的边界矩形330计算该大小。如图6中所图示的,前述的间隔340表示对象320到最近的相邻对象320的距离。注意的是,图6图示文本的块的一个实施例,该文本的块中其中的多个对象320(即,“L”、“E”、“A”和“D”中的每个)具有在它们间的间隔340。
接下来,在步骤240中,计算所有对象间隔340的大小的平均。在步骤250中,使用下面的等式3确定平均间隔大小与平均字体笔画宽度之间的比率:
接下来,在步骤260中,将比率与阈值T进行比较以确定旋转角度。在一个实施例中,阈值T可以是对应于特定语言的最多字符的字体粗度(thickness)的预定值。例如,在一个实施例中,T可被设置成针对拉丁语言的值3,因为拉丁语言(诸如英语)中的字符用较粗的字体来绘制。注意的是,值3表示组成字体粗度的像素的数量。在一个实施例中,T可被设置成针对亚洲语言的值5,因为亚洲语言(诸如日语)中的字符用较细的字体来绘制(以写更多细节)。
注意的是,前述的阈值T适用于所有样式的文本(包括粗体和/或斜体的文本)。此外,在一个实施例中,可基于阈值应用到的特定应用来修改阈值。例如,诸如Bayesian之类的训练框架可用于估计适合特定应用的阈值的值。这样的估计可由诸如图8中图示的系统之类的系统来执行。
相应地,如果确定的比率大于或等于T(即,比率≥T),则文本块被确定为与在其中具有0度或180度旋转角度的字符垂直。否则(即,如果确定的比率小于T(比率<T)),则文本块被视为与等于如在图3的步骤120中所确定的估计的旋转角度的旋转角度垂直。
为了简要概述根据本公开的实施例,假设使用扫描仪或类似设备扫描包含图7中图示的文本的纸张/页。在一个实施例中,首先检测在扫描的图像内的对象(例如,一个或多个字母)。一旦检测到这些对象,它们就被划分成块。例如,过程确定图7中的五(5)个块400-440。
接下来,确定每个块400-440是具有水平定向还是具有垂直定向。注意的是,针对每个块并且不针对每个块内的每个对象(字母)执行该确定。在执行图3中图示的过程中,确定块400和410具有相对于图像(扫描的页)的水平定向(即,水平文本),并且块420、430和440具有相对于图像(扫描的页)的垂直定向(即,垂直文本)。
接下来,对于被确定为具有垂直定向的块,应用图4中图示的过程。在该过程中,如上所讨论的,分析每个块420、430和440的每个对象(字母)。通过执行图4中阐述的过程,确定块420具有90度的旋转角度,块430具有0度的旋转角度(即,不旋转块内的字母,尽管文本被垂直地绘制出),并且块440具有270度的旋转角度。
接下来,然后通过OCR过程使用(一个或多个)旋转角度来改善其准确度并加速识别字符的计算时间。通过具有文本的特定块的旋转角度的知识,OCR过程将知道文本的特定布局(例如,图2中图示的布局之一),并且将在尝试识别字母时不浪费计算时间和功率,假设当字母被实际旋转时OCR过程不具有旋转。这进而提供对执行以上讨论的过程的装置/机器的功能改善,因为它节省计算时间和功率并改善准确度。
进一步注意的是,本公开的实施例可用于确定文本的定向,以便辅助OCR正确地识别字符和/或旋转文本,例如如果包含文本的纸张被不正确地扫描的话。
本公开的实施例呈现与传统技术的许多差异。例如,字符识别(例如,OCR)不用于找到旋转角度。此外,针对每个文本块而不针对整个扫描的图像确定旋转角度。换句话说,根据一个实施例,过程不简单地确定,由于图7的块400是水平的,所以整体图像也必须是水平的。相反,每个块被分离地调查以精确地确定块的定向。如果要旋转文本,则基于其旋转角度而单独地旋转文本的每个块。因而,在一个实施例中,不基于块的检测的定向旋转整体扫描的图像。
此外,本公开的实施例可应用于拉丁语言、亚洲语言等。另外,本公开的实施例可应用于任何字体或大小的文本。
在实施例中所描述的功能/方法/过程中的每一个可由一个或多个处理电路(或电路系统)实现。例如,图3和4中图示的过程可由一个或多个处理电路(或电路系统)实现。处理电路包括编程的处理器(例如,图8的处理器1203),因为处理器包括电路系统。处理电路还包括设备,诸如专用集成电路(ASIC)和布置以执行陈述的功能的传统电路组件。
图8图示可在其上实现本公开的(一个或多个)实施例的计算机系统1201。计算机系统1201可以是通用计算机或特定的专用机器。在一个实施例中,当处理器1203被编程以确定对象/文本的旋转角度时,计算机系统1201变成特定的专用机器。计算机系统1201可被体现为多功能外围设备(MFP)、一体打印机、扫描仪等等(或者是其一部分)。
计算机系统1201包括:盘控制器1206,耦合到总线1202以控制用于存储信息和指令的一个或多个存储设备(诸如磁硬盘1207);以及可移动介质驱动器1208(例如,软盘驱动器、只读光盘驱动器、读/写光盘驱动器、光盘唱机、磁带驱动器和可移动磁光驱动器)。可使用适当的设备接口(例如,小型计算机系统接口(SCSI)、集成电路设备(IDE)、增强-IDE(E-IDE)、直接存储器存取(DMA)或超DMA)将存储设备添加到计算机系统1201。
计算机系统1201还可包括专用逻辑器件(例如,ASIC)或可配置逻辑器件(例如,简单可编程逻辑器件(SPLD)、复杂可编程逻辑器件(CPLD)和现场可编程门阵列(FPGA))。
计算机系统1201还可包括显示控制器1209,该显示控制器1209耦合到总线1202以控制用于向计算机用户显示信息的显示器1210,显示器1210可以是液晶显示器(LCD)。注意的是,显示器1210还可以是触摸面板显示器。计算机系统包括用于与计算机用户交互并向处理器1203提供信息的输入设备,诸如键盘1211和定点设备1212。定点设备1212例如可以是鼠标、轨迹球、用于触摸屏传感器的指状物、或者用于向处理器1203传送方向信息和命令选择并用于控制显示器1210上的光标移动的指点棒。
响应于处理器1203执行包含在诸如主存储器1204之类的存储器中的一个或多个指令的一个或多个序列,计算机系统1201执行本公开的处理步骤的一部分或全部。可将这样的指令从诸如硬盘1207或可移动介质驱动器1208之类的另一个计算机可读介质读取到主存储器1204中。多处理布置中的一个或多个处理器也可用于执行包含在主存储器1204中的指令的序列。在替代实施例中,硬连线的电路系统可用于取代软件指令或与软件指令组合。因而,实施例不限于硬件电路系统和软件的任何特定组合。
如上所陈述的,计算机系统1201包括至少一个计算机可读介质或存储器,所述至少一个计算机可读介质或存储器用于保持根据本公开的教导编程的指令并用于包含数据结构、表格、记录或本文所描述的其它数据。计算机可读介质的示例是光盘、硬盘、软盘、磁带、磁光盘、PROM(EPROM、EEPROM、闪速EPROM)、DRAM、SRAM、SDRAM或任何其它磁介质、光盘(例如CD-ROM)或任何其它光学介质、穿孔卡、纸带或具有孔的图案的其它物理介质)。
本公开包括存储在计算机可读介质的任一个上或其组合上的软件,用于控制计算机系统1201,用于驱动用于实现该发明的一个或多个设备,以及用于使得计算机系统1201能够与人类用户交互。这样的软件可包括但不限于设备驱动器、操作系统和应用软件。这样的计算机可读介质进一步包括本公开的计算机程序产品,所述计算机程序产品用于执行在实现该发明时执行的处理的全部或一部分(如果处理是分布式的)。
计算机代码设备可以是任何可解释或可执行的代码机制,包括但不限于脚本、可解释的程序、动态链接库(DLL)、Java分类和完整的可执行程序。此外,本实施例的处理的部分可以是分布式的,用于更好的性能、可靠性和/或成本。
如本文使用的术语“计算机可读介质”是指参与向处理器1203提供用于执行的指令的任何非暂时性介质。计算机可读介质可采取许多形式,包括而不限于非易失性介质或易失性介质。非易失性介质例如包括光学、磁盘和磁光盘,诸如硬盘1207或可移动介质驱动器1208。易失性介质包括动态存储器,诸如主存储器1204。相反,传输介质包括同轴电缆、铜线和光纤,包括组成总线1202的线。传输介质还可采取声学或光波的形式,诸如在无线电波和红外数据通信期间生成的声学或光波的形式。
在向处理器1203执行一个或多个指令的一个或多个序列以用于执行中可涉及各种形式的计算机可读介质。例如,最初可在远程计算机的磁盘上承载指令。远程计算机可以加载用于将本公开的全部或一部分远程实现为动态存储器的指令,并通过电话线使用调制解调器发送指令。计算机系统1201本地的调制解调器可接收电话线上的数据并在总线1202上放置数据。总线1202将数据携带到主存储器1204,处理器1203从该主存储器1204检索并执行指令。在由处理器1203执行之前或者之后,由主存储器1204接收的指令可以可选地被存储在存储设备1207或1208上。
计算机系统1201还包括耦合到总线1202的通信接口1213。通信接口1213提供耦合网络链接1214的双向数据通信,网络链接1214例如连接到局域网(LAN)1215或者连接到诸如因特网之类的另一个通信网络1216。例如,通信接口1213可以是附接到任何分组交换的LAN的网络接口卡。作为另一个示例,通信接口1213可以是综合服务数字网络(ISDN)卡。也可实现无线链接。在任何这样的实现方式中,通信接口1213发送和接收电、电磁或光学信号,该信号携带表示各种类型的信息的数字数据流。
网络链接1214典型地通过一个或多个网络向其它设备提供数据通信。例如,网络链接1214可通过本地网络1215(例如,LAN)或通过由服务提供商操作的装备提供到另一个计算机的连接,该服务提供商通过通信网络1216提供通信服务。本地网络1214和通信网络1216例如使用携带数字数据流的电、电磁或光学信号以及相关联的物理层(例如,CAT 5电缆、同轴电缆、光纤等)。可用基带信号或基于载波的信号实现通过各种网络的信号和网络链接1214上以及通过通信接口1213的信号,该信号携带到计算机系统1201和来自计算机系统120的数字数据。基带信号传送作为描述数字数据位的流的未调制的电脉冲的数字数据,其中术语“位”要被广泛地解释为意味着符号,其中每个符号传送至少一个或多个信息位。数字数据还可用于诸如用幅、相和/或频移键控信号调制载波,该信号通过导电介质传播,或者作为电磁波通过传播介质传输。因而,可以作为未调制的基带数据通过“有线”通信信道发送和/或在不同于基带的预定频带内通过调制载波发送数字数据。计算机系统1201可以通过(一个或多个)网络1215和1216、网络链接1214和通信接口1213传输和接收包括程序代码的数据。此外,网络链接1214可通过LAN 1215提供到电子设备(例如,移动设备)1217的连接。
必须注意的是,可彼此独立地使用本文所描述的各种元件、特征和过程,或者可以各种方式组合本文所描述的各种元件、特征和过程。所有可能的组合或子组合旨在落入本公开的范围内。此外,本公开中绝不旨在暗示任何特定特征、元件、组件特性、步骤、模块、方法、过程、任务或块是必要的或者不可缺少的(除非另有专门指示)。可与所述的不同地配置本文所描述的示例系统和组件。例如,与公开的示例相比,可将元件或组件添加到或移除或重新布置。
如本文所使用的,对“一个实施例”或“一些实施例”或“实施例”的任何引用意味着结合实施例所描述的特定元件、特征、结构或特性被包括在至少一个实施例中。在说明书中的各种地方中的短语“在一个实施例中”的出现不一定全部指代相同的实施例。实施例的所有可能的组合和子组合旨在落入本公开的范围内。诸如尤其“能够”、“可以”、“可能”、“可”、“例如”等等之类的本文使用的条件语言,除非另有专门陈述或者以其它方式在如所使用的上下文内理解,否则一般旨在表达:某些实施例包括而其它实施例不包括某些特征、元件和/或步骤。另外,如在本申请和所附权利要求中使用的冠词“一(a)”和“一个(an)”要被解释为意味着“一个或多个”或“至少一个”,除非另有指定。
Claims (17)
1.一种用于确定图像内的文本的旋转角度的装置,该装置包括:
电路系统,被配置成:
针对包括在文本中的多个对象中的每个对象计算到最近的相邻对象的距离,
计算到最近的相邻对象的距离的平均距离,
确定平均距离与平均字体笔画宽度之间的比率,该平均字体笔画宽度是多个对象中的每一个的字体笔画宽度的平均,以及
通过比较比率与阈值,确定文本的旋转角度。
2.根据权利要求1所述的装置,其中:
该电路系统被进一步配置成确定针对每个对象的边界矩形,该边界矩形围绕相应的对象并接触相应的对象的最外面的部分,以及
通过计算相应的边界矩形到最近的相邻边界矩形的距离,该电路系统计算到最近的相邻对象的距离。
3.根据权利要求1所述的装置,其中该电路系统被进一步配置成:
针对每个对象确定对应于图像内的相应的对象的整体打印面积的对象面积,
针对每个对象确定对应于相应的对象的周长的对象周长,以及
通过将对象面积除以对象周长并乘以2,计算针对每个对象的字体笔画宽度。
4.根据权利要求3所述的装置,其中该电路系统被进一步配置成:通过将多个对象的字体笔画宽度的总和除以多个对象的总数,计算平均字体笔画宽度。
5.根据权利要求1所述的装置,其中该电路系统被进一步配置成,在针对每个对象计算到最近的相邻对象的距离之前:
确定图像内的文本的一个或多个文本块,每个文本块包括多个对象,
针对每个文本块确定文本块是具有垂直定向还是具有水平定向,以及
响应于确定文本块具有垂直定向,针对文本块中的每个对象计算到最近的相邻对象的距离。
6.一种方法,包括:
针对包括在图像内的文本中的多个对象中的每个对象计算到最近的相邻对象的距离;
计算到最近的相邻对象的距离的平均距离;
确定平均距离与平均字体笔画宽度之间的比率,该平均字体笔画宽度是多个对象中的每一个的字体笔画宽度的平均;以及
通过比较比率与阈值,确定文本的旋转角度。
7.根据权利要求6所述的方法,进一步包括:
确定针对每个对象的边界矩形,该边界矩形围绕相应的对象并接触相应的对象的最外面的部分,其中
通过计算相应的边界矩形到最近的相邻边界矩形的距离,执行到最近的相邻对象的距离的计算。
8.根据权利要求6所述的方法,进一步包括:
针对每个对象确定对应于图像内的相应的对象的整体打印面积的对象面积;
针对每个对象确定对应于相应的对象的周长的对象周长;以及
通过将对象面积除以对象周长并乘以2,计算针对每个对象的字体笔画宽度。
9.根据权利要求8所述的方法,进一步包括:
通过将多个对象的字体笔画宽度的总和除以多个对象的总数,计算平均字体笔画宽度。
10.根据权利要求6所述的方法,进一步包括:
在针对每个对象计算到最近的相邻对象的距离之前,
确定图像内的文本的一个或多个文本块,每个文本块包括多个对象;
针对每个文本块确定文本块是具有垂直定向还是具有水平定向;以及
响应于确定文本块具有垂直定向,针对文本块中的每个对象计算到最近的相邻对象的距离。
11.根据权利要求6所述的方法,进一步包括:
在确定文本的旋转角度之后,对文本执行光学字符识别(OCR)。
12.一种包括计算机可执行指令的非暂时性计算机可读存储介质,其中该指令在由计算机执行时使得计算机执行方法,该方法包括:
针对包括在图像内的文本中的多个对象中的每个对象计算到最近的相邻对象的距离;
计算到最近的相邻对象的距离的平均距离;
确定平均距离与平均字体笔画宽度之间的比率,该平均字体笔画宽度是多个对象中的每一个的字体笔画宽度的平均;以及
通过比较比率与阈值,确定文本的旋转角度。
13.根据权利要求12所述的非暂时性计算机可读存储介质,进一步包括:
确定针对每个对象的边界矩形,该边界矩形围绕相应的对象并接触相应的对象的最外面的部分,其中
通过计算相应的边界矩形到最近的相邻边界矩形的距离,执行到最近的相邻对象的距离的计算。
14.根据权利要求12所述的非暂时性计算机可读存储介质,进一步包括:
针对每个对象确定对应于图像内的相应的对象的整体打印面积的对象面积;
针对每个对象确定对应于相应的对象的周长的对象周长;以及
通过将对象面积除以对象周长并乘以2,计算针对每个对象的字体笔画宽度。
15.根据权利要求14所述的非暂时性计算机可读存储介质,进一步包括:
通过将多个对象的字体笔画宽度的总和除以多个对象的总数,计算平均字体笔画宽度。
16.根据权利要求12所述的非暂时性计算机可读存储介质,进一步包括:
针对每个对象计算到最近的相邻对象的距离,在该计算之前,
确定图像内的文本的一个或多个文本块,每个文本块包括多个对象;
针对每个文本块确定文本块是具有垂直定向还是具有水平定向;以及
响应于确定文本块具有垂直定向,针对文本块中的每个对象计算到最近的相邻对象的距离。
17.根据权利要求12所述的非暂时性计算机可读存储介质,进一步包括:
在确定文本的旋转角度之后,对文本执行光学字符识别(OCR)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710137157.2A CN108345883B (zh) | 2017-01-23 | 2017-01-23 | 用于确定文本的旋转角度的装置、方法和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710137157.2A CN108345883B (zh) | 2017-01-23 | 2017-01-23 | 用于确定文本的旋转角度的装置、方法和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108345883A CN108345883A (zh) | 2018-07-31 |
CN108345883B true CN108345883B (zh) | 2023-11-28 |
Family
ID=62962087
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710137157.2A Active CN108345883B (zh) | 2017-01-23 | 2017-01-23 | 用于确定文本的旋转角度的装置、方法和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108345883B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109934185B (zh) * | 2019-03-18 | 2021-05-04 | 网易有道信息技术(北京)有限公司 | 数据处理方法及装置、介质和计算设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103258198A (zh) * | 2013-04-26 | 2013-08-21 | 四川大学 | 一种表格文档图像中字符提取方法 |
US9110926B1 (en) * | 2012-11-07 | 2015-08-18 | Amazon Technologies, Inc. | Skew detection for vertical text |
US9135535B1 (en) * | 2014-06-09 | 2015-09-15 | Xerox Corporation | Method and system for prorating trapping parameters globally with respect to object size |
CN105718926A (zh) * | 2014-12-03 | 2016-06-29 | 夏普株式会社 | 一种文本检测的方法和装置 |
US9552527B1 (en) * | 2015-08-27 | 2017-01-24 | Lead Technologies, Inc. | Apparatus, method, and computer-readable storage medium for determining a rotation angle of text |
JP2018116647A (ja) * | 2017-01-20 | 2018-07-26 | リード テクノロジーズ,インコーポレイティド | テキストの回転角を決定する装置、方法及びコンピュータ可読記憶媒体 |
KR20180085914A (ko) * | 2017-01-20 | 2018-07-30 | 리드 테크놀로지스 인코포레이티드 | 텍스트의 회전 각도를 판정하는 장치, 방법 및 컴퓨터 판독가능 저장 매체 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9076056B2 (en) * | 2013-08-20 | 2015-07-07 | Adobe Systems Incorporated | Text detection in natural images |
-
2017
- 2017-01-23 CN CN201710137157.2A patent/CN108345883B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9110926B1 (en) * | 2012-11-07 | 2015-08-18 | Amazon Technologies, Inc. | Skew detection for vertical text |
CN103258198A (zh) * | 2013-04-26 | 2013-08-21 | 四川大学 | 一种表格文档图像中字符提取方法 |
US9135535B1 (en) * | 2014-06-09 | 2015-09-15 | Xerox Corporation | Method and system for prorating trapping parameters globally with respect to object size |
CN105718926A (zh) * | 2014-12-03 | 2016-06-29 | 夏普株式会社 | 一种文本检测的方法和装置 |
US9552527B1 (en) * | 2015-08-27 | 2017-01-24 | Lead Technologies, Inc. | Apparatus, method, and computer-readable storage medium for determining a rotation angle of text |
JP2018116647A (ja) * | 2017-01-20 | 2018-07-26 | リード テクノロジーズ,インコーポレイティド | テキストの回転角を決定する装置、方法及びコンピュータ可読記憶媒体 |
KR20180085914A (ko) * | 2017-01-20 | 2018-07-30 | 리드 테크놀로지스 인코포레이티드 | 텍스트의 회전 각도를 판정하는 장치, 방법 및 컴퓨터 판독가능 저장 매체 |
Non-Patent Citations (2)
Title |
---|
一种基于图像矩和纹理特征的自然场景文本检测算法;杨玲玲;叶东毅;;小型微型计算机系统(第06期);全文 * |
基于笔画宽度变换的自然场景文本检测方法;宋文;肖建于;;计算机工程与应用(第09期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN108345883A (zh) | 2018-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110147786B (zh) | 用于检测图像中的文本区域的方法、装置、设备以及介质 | |
US8977059B2 (en) | Integrating feature extraction via local sequential embedding for automatic handwriting recognition | |
CN110069767B (zh) | 基于电子书的排版方法、电子设备及计算机存储介质 | |
CN108304814B (zh) | 一种文字类型检测模型的构建方法和计算设备 | |
US9552527B1 (en) | Apparatus, method, and computer-readable storage medium for determining a rotation angle of text | |
US11106891B2 (en) | Automated signature extraction and verification | |
CN113486828B (zh) | 图像处理方法、装置、设备和存储介质 | |
CN109598185B (zh) | 图像识别翻译方法、装置、设备及可读存储介质 | |
US10049268B2 (en) | Selective, user-mediated content recognition using mobile devices | |
US7796817B2 (en) | Character recognition method, character recognition device, and computer product | |
US20150222786A1 (en) | Technique for skew detection of printed arabic documents | |
CN105469026A (zh) | 针对文档图像的水平和垂直线检测和移除 | |
CN111967286A (zh) | 信息承载介质的识别方法、识别装置、计算机设备和介质 | |
CN110827301B (zh) | 用于处理图像的方法和装置 | |
JP7244223B2 (ja) | 電子文書における強調テキストの識別 | |
US9678642B2 (en) | Methods of content-based image area selection | |
JP5832656B2 (ja) | 画像中のテキストの検出を容易にする方法及び装置 | |
CN113537189A (zh) | 手写文字识别方法、装置、设备及存储介质 | |
Premachandra et al. | Speed-up ellipse enclosing character detection approach for large-size document images by parallel scanning and Hough transform | |
CN113436222A (zh) | 图像处理方法、图像处理装置、电子设备及存储介质 | |
CN111832551A (zh) | 文本图像处理方法、装置、电子扫描设备和存储介质 | |
WO2024140094A1 (zh) | 数字文档的段落确定方法、装置、电子设备及存储介质 | |
US9367237B2 (en) | Shaping device | |
CN108345883B (zh) | 用于确定文本的旋转角度的装置、方法和计算机可读存储介质 | |
US20170364770A1 (en) | Determining the direction of rows of text |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |