CN101689203B - 图像处理设备和图像处理方法 - Google Patents
图像处理设备和图像处理方法 Download PDFInfo
- Publication number
- CN101689203B CN101689203B CN2008800228345A CN200880022834A CN101689203B CN 101689203 B CN101689203 B CN 101689203B CN 2008800228345 A CN2008800228345 A CN 2008800228345A CN 200880022834 A CN200880022834 A CN 200880022834A CN 101689203 B CN101689203 B CN 101689203B
- Authority
- CN
- China
- Prior art keywords
- character
- font
- picture
- image processing
- data
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/93—Document management systems
-
- 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/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/414—Extracting the geometrical structure, e.g. layout tree; Block segmentation, e.g. bounding boxes for graphics or text
-
- 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)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Geometry (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Graphics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Processing Or Creating Images (AREA)
- Character Discrimination (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种图像处理设备,包括:字符识别单元,用于对文档图像中的多个字符图像进行字符识别,以获取与各个字符图像相对应的字符代码;以及生成单元,用于生成电子文档,其中,该电子文档包括文档图像、由字符识别单元所获取到的多个字符代码、多个字形和表示对各个字符代码进行绘制时所使用的字形的数据;其中,在绘制与由字符识别单元所获取到的多个字符代码相对应的字符时,不同的字符代码基于所述数据共享及使用多个字形中的各个字形。
Description
技术领域
本发明涉及用于将纸质文档的扫描图像转换成可电子搜索的数据的技术。
背景技术
近年来,扫描器和例如硬盘等的大容量存储装置的广泛使用引起了对纸质保存的文档进行扫描并将扫描的数据存储为电子文档。另外,还可以对通过扫描纸质文档所获得的图像数据进行字符识别,从而读取文档中所包括的字符信息并将其与图像相关联地存储。因此,用户可以使用搜索关键字来搜索这类与字符信息相关联了的电子文档。在要从大量的存储文档中快速搜索想要的文档时,可以如上所述对扫描的图像进行关键字搜索是非常重要的。
例如,日本特开2000-322417讨论了在用户如上所述对与字符信息相关联的电子文档进行关键字搜索的情况下,突出显示文档图像中含有搜索关键字的部分。突出显示该部分以使得用户可以识别含有搜索关键字的部分。因此,即使在文档中存在多个含有同一关键字的部分的情况下,用户也可以通过切换页面图像来有效地识别含有关键字的部分。
另一方面,还有一种用于将字符识别的结果作为透明文本(即将透明颜色指定为绘制颜色的字符代码)嵌入在图像文件中的技术。然后以便携式文档格式(PDF)存储该图像文件。当显示这类PDF文件时,将透明文本绘制在文档图像中的字符图像上。因此,当用户进行关键字搜索时,搜索透明文本。然而,由于用户不能看见透明文本,因而看起来好象在搜索图像。结果, 基于通过能够绘制图像和字符的页面描述语言来描述格式的文件,可以绘制可通过关键字搜索的图像。
在以例如PDF或可缩放矢量图形(SVG)等的页面描述语言描述的电子文档中,绘制字符需要各字符的字符形状信息,即字体数据的字形。然而,由于字体数据的大小通常较大,因而在电子文档中通常是指定字体的类型而不是存储字体数据,以使电子文档的大小保持较小。结果,在使用应用程序来绘制字符时,可以使用个人计算机(PC)中所安装的字体。
另一方面,存在期望将字体数据存储在电子文档中的情况。例如,如果在一不同的PC中没有安装电子文档中所使用的字体数据,则在该PC上不能正确地打开通过使用文档创建应用程序所创建的电子文档。换句话说,如果将字体数据本身存储在电子文档中,则没有安装指定的字体数据的PC或应用程序也可以正确地再现电子文档。
此外,根据用途,存在希望将字符绘制中所使用的字体数据存储在电子文档中的情况。例如,PC中默认安装的字体可能因操作系统(OS)的改变而改变。因此,希望将字体数据存储在长期存储文件中。
此外,存在需要将字体数据存储在电子文档中的格式。例如,当以可扩展标记语言(XML)纸张规范(XPS)格式存储文本数据时,需要利用文本数据来存储字体数据。
然而,当将字体数据存储在电子文档中时,电子文档的大小增大。如果电子文档的文件大小增大,则在网络上发送电子文档要占用更长的时间,或者在存储电子文档时需要更大的存储容量。
因此,对于使用存储在电子文档中的字体数据来绘制字符的文件格式的电子文档,希望避免文件大小的增大。特别地,希望在下面的情况下避免文件大小的增大:将扫描的图像、作为字符识别结果的文本数据和在文本绘制中要使用的字体数据一起存储在电子文档中。如果由于格式或系统上的限制而需要将字体数据存储在电子文档中,则文档大小的增大会成为问题。
此外,在字符识别结果将作为透明文本而嵌入文档图像的情况下,希望使透明文本的绘制位置与文档图像中相应字符图像的位置正确匹配。通过位置匹配,在搜索文本时,搜索到的文本的位置与字符图像的位置相匹配。为了实现这一正确匹配,必须针对每一字符详细指定透明文本的绘制位置(例如,字符的位置坐标、字符宽度或字符间距)。然而,如果对于所有字符分别描述各字符的位置,则尤其在存在大量字符的情况下,要生成的电子文档的文件大小变大。
发明内容
本发明的实施例提供图像处理设备,该图像处理设备使透明文本的绘制位置与文档图像中与该透明文本相对应的字符图像的位置相匹配,并且创建文件大小减小了的电子文档。
根据本发明的一方面,一种图像处理设备,其包括:字符识别单元,用于对文档图像中的多个字符图像进行字符识别,以获取与各个字符图像相对应的字符代码;以及生成单元,用于生成电子文档,其中,所述电子文档包括所述文档图像、由所述字符识别单元所获取到的多个字符代码、多个字形以及表示绘制各个所述字符代码时所要使用的字形的数据;其中,在绘制与由所述识别单元所获取到的多个字符代码相对应的字符时,不同的字符代码基于所述数据共享及使用所述多个字形中的各个字形。
根据本发明的典型实施例,可以通过选择绘制文本时所使 用的字形来使透明文本的绘制位置和文档图像中的各个字符图像的位置相匹配。此外,准备不同字符宽度的简单字符形状(例如,矩形)的多个字形,并共享及使用所述多个字形以绘制各种字符类型。因此,要描述的数据量变小,并且即使在需要将字体数据存储在电子文档中的情况下,也可以降低电子文档的文件大小。
通过以下(参考附图)对典型实施例的说明,本发明的其它特征将变得清楚。
附图说明
包含在说明书中并构成说明书的一部分的附图,示出本发明的典型实施例、特征和方面,并与说明书一起用来解释本发明的原理。
图1是示出根据本发明第一典型实施例的图像处理设备的结构的例子的框图。
图2是示出根据本发明第一典型实施例的电子文档生成处理的例子的流程图。
图3是示出根据本发明第一典型实施例的电子文档搜索和查看处理的例子的流程图。
图4是详细示出根据本发明第一典型实施例在图2所示流程图的步骤S208中进行的电子文档数据生成处理的流程图。
图5是详细示出根据本发明第一典型实施例在图3所示流程图的步骤S306中进行的页面绘制处理的流程图。
图6示出根据本发明第一典型实施例由图像处理设备生成的电子文档的例子。
图7示出根据本发明第一典型实施例的要处理的页面图像的例子。
图8示出根据本发明第一典型实施例的区域分割处理的结果的例子。
图9示出根据本发明第一典型实施例作为区域分割处理的结果所生成的区域数据的例子。
图10示出根据本发明第一典型实施例进行字符识别时的字符图像提取的例子。
图11示出根据本发明第一典型实施例作为字符识别处理的结果所生成的字符代码串数据的例子。
图12示出根据本发明第一典型实施例的字符代码序列表的例子。
图13示出根据本发明第一典型实施例突出显示搜索结果的页面显示的例子。
图14A和14B示出根据本发明第一典型实施例使用不同突出显示处理突出显示搜索结果的页面显示的例子。
图15是示出根据本发明第一典型实施例的字形识别(ID)判断处理的流程图的例子。
图16示出根据本发明第二典型实施例突出显示搜索结果的页面显示的例子。
具体实施方式
下面参考附图详细说明本发明的各种典型实施例、特征和方面。
第一典型实施例
图1是示出根据本发明第一典型实施例的图像处理设备的结构的框图的例子。
图像处理设备100将文档图像数据转换成可搜索的电子文档。图像处理设备100包括扫描器101、中央处理单元(CPU)102、 存储器103、硬盘104、网络接口(I/F)105和用户接口(UI)106。
扫描器101读取纸质文档上的页面信息,并且将该信息转换成文档图像数据。CPU 102是执行计算机程序的处理单元,其中,该计算机程序用于分析图像数据并且将分析结果转换成可搜索的电子文档。存储器103是存储介质,其存储计算机程序的数据或正处理的数据或者用作CPU 102的工作区。硬盘104是大容量存储介质,用于存储计算机程序或例如电子文档等的数据。网络I/F 105是用于连接网络120的接口,并且用于将例如扫描图像或转换后的可搜索的电子文档等的数据发送至外部装置或者从外部装置接收数据。UI 106是用于从用户接收指令的接口,并且包括例如输入键或触摸面板等的输入装置以及例如液晶显示器(LCD)等的显示装置。
图像处理设备110允许搜索或查看由图像处理设备100生成的电子文档。CPU 111执行用于搜索或查看电子文档的计算机程序。存储器112是用作用于执行计算机程序或临时存储数据的工作区的存储介质。硬盘113是用于存储计算机程序或例如电子文档等的数据的大容量存储介质。网络接口(I/F)114从外部装置接收例如电子文档等的数据,或者向外部装置发送数据。用户接口(UI)115是用于从用户接收指令的接口,并且包括例如输入键或触摸面板等的输入装置或者例如LCD等的显示装置。
下面参考图2和3所示流程图来说明根据第一典型实施例的处理。
图2是示出图像处理设备100根据通过扫描纸质文档所获得的图像数据来生成可搜索的电子文档的处理的例子的流程图。然后,图像处理设备100将电子文档发送至图像处理设备110。
在步骤S201,CPU 102根据用户指令操作来确定要生成的 电子文档的传输目的地和传输方法。用户通过UI 106给出指令。用户根据例如电子邮件和使用文件传输协议(FTP)的文件传输等的选项来选择传输方法。
用户将纸质文档放置在图像处理设备100上并按下开始按键。在步骤S202,CPU 102使用扫描器101扫描所放置的纸质文档,生成文档图像数据,并且将该数据存储在存储器103中。在使用自动文档进给器输入包括多页的文档的情况下,将每一页都转换成页面图像数据并且按照输入的顺序存储在存储器103中。
图7示出页面图像的例子。参考图7,页面图像701包括字符串“X1A”702、字符串“YBc”703和照片704。为了易于描述,将照片704表示为阴影矩形。然而,照片704实际上是自然图像。此外,尽管图7所示例子仅示出了字符串702和703以及照片704,但是页面图像还可以包括例如图形等的其它区域。
在纸质文档为彩色文档的情况下,页面图像数据为通过8位RGB值表示灰度级的彩色图像的形式。如果纸质文档为单色文档,则页面图像数据为使用8位表示亮度的灰度图像或者使用1位表示黑色或白色的二值图像的形式。
在步骤S203,CPU 102选择存储在存储器103中的未处理的页面图像数据作为处理对象图像。在图像包括多页的情况下,CPU 102按照输入顺序选择一个页面图像作为处理对象。
在步骤S204,CPU 102通过对处理对象图像进行分析以及对例如文本区域、图形区域、照片区域或表格区域等的不同类型的各区域进行识别来进行区域分析。然后,CPU 102生成各所识别出的区域的区域数据,并且将该数据存储在存储器103中。区域数据包括各区域的外接矩形的左上位置坐标(x、y坐标值)、表示外接矩形的大小(宽度和高度)的像素数量以及所识别 出的区域的类型。
在区域分析处理中使用传统技术(即区域识别处理、区域确定处理或区域提取处理)。例如,可以使用日本特开平06-68301中所讨论的技术,从而可以从二值化文档图像数据中提取类似大小的黑色像素块垂直或水平地排成一排的区域作为文本区域。
通过对图7所示的页面图像701进行区域分析,如图8所示,识别出了文本区域801和照片区域802。图9示出通过对图7所示的页面图像701进行区域分析所获得的区域数据的例子。
在步骤S205,CPU 102对通过进行区域分析所识别出的各文本区域中的字符图像进行字符识别,并且获取各文本区域的字符代码串的数据。然后,CPU 102将该数据存储在存储器103中。字符代码串的数据包括字符代码信息,字符代码信息是对文本区域中所包括的各字符图像的识别结果。字符代码串的数据还包括与各字符图像的外接矩形有关的信息(即与外接矩形的左上坐标以及宽度和高度有关的信息,以及与包括字符的行的高度有关的信息)。
下面将说明字符识别处理的例子。在用于识别字符图像的处理中可以使用传统技术。
在文档图像不是二值图像的情况下,二值化文本区域以获取文本区域的二值图像。通过计数垂直线和水平线各自上的黑色像素的数量,创建每个二值化的文本区域的直方图。然后基于垂直和水平的直方图,获得条状行图像。在直方图中,将直方图为周期性的方向指定为行方向。直方图中黑色像素的数量大于或等于预定阈值的部分构成字符行。然后针对各行图像,在与行方向垂直的方向上生成直方图,并且基于该直方图的结果切出各字符的图像。所切出的区域成为一个字符的外接矩形 信息。
在本典型实施例中,使用通过计数黑色像素的数量所获得的直方图来确定字符区域。然而,可以使用投影来确定字符区域,其中,该投影表示在各像素行上是否存在黑色像素。
然后通过提取边缘成分,从各字符图像的外接矩形内的图像获取特征矢量。将所获得的特征矢量与先前登记的字符识别字典中的特征矢量进行比较,以获得相似度。将具有最高相似度的字符类型的代码确定为该矩形内的字符图像的字符代码。结果,对于文本区域内的所有字符的外接矩形,获得分配有字符代码的数据,并且从各文本区域所获得的字符代码组形成字符代码串。
在英文文本字符区域的情况下,判断在字符之间是否存在单词间的空格。例如,可以通过判断字符之间距离是否大,或者通过将作为字符图像的字符识别结果的字符串与词典进行匹配以检测单词的断开,来确定单词间的空格。如果判断出存在单词间的空格,则将该空格的字符代码插入字符代码串。
图10和11示出对图8所示的文本区域801进行字符识别的例子。首先,从图10所示的文本区域1000切出字符行1001和1002。然后从字符行1001切出三个字符1011、1012和1013,并且对各字符进行识别。结果,获得与各字符相对应的字符代码,并且获得图11所示的字符代码串数据1101。类似地,对从字符行1002切出的三个字符1021、1022、1023进行字符识别,并且生成如图11所示的字符代码串数据1102。
上述处理是一个例子,并且可以使用其它传统字符识别技术来获取字符代码行。
在步骤S206,CPU 102将作为当前处理对象的页面图像数据与区域数据和字符代码行数据相关联地临时存储在存储器 103或硬盘104中。
在步骤S207,CPU 102判断是否存在未处理的图像数据。如果存在未处理的图像数据(步骤S207中为“是”),则处理返回至步骤S203,并且CPU 102处理下一页面图像数据。如果没有未处理的图像数据(步骤S207中为“否”),则处理进入步骤S208。
在步骤S208,CPU 102按照页面顺序组合存储在存储器103或硬盘104中的所有页面的数据,并且生成包括多页的可搜索的电子文档。
在步骤S208所生成的电子文档数据可以保持绘制信息和内容信息这两者,其中,绘制信息用于在显示器上电子显示各页面图像、或者用于在打印机中打印各页面图像,以及内容信息用于允许使用搜索关键字进行搜索。满足这类条件的数据格式的例子有PDF和SVG。在本典型实施例中所生成的电子文档的格式还指定要嵌入的字体数据。需要这样嵌入字体数据的格式的例子有XPS。因此,下面在假定页面描述格式规范使用XML表述的情况下说明本典型实施例。然而,本发明不局限于这一格式。
图6是在输入了包括与两页相对应的页面图像的文档的情况下,基于本典型实施例中要说明的页面描述格式规范所生成的电子文档的页面描述的例子。如图6所示,本典型实施例中的页面描述格式在一个文件中集中描述电子文档。然而,本发明不局限于这种格式。例如,页面描述格式可以是下面的格式(例如,XPS):在不同的文件中分开存储字体数据,从主文件参考字体数据文件,并且使用ZIP压缩将文件收集成一个电子文档。
下面参考图4所示的流程图说明在步骤S208所进行的电子文档数据生成处理的例子。
在步骤S401,CPU 102描述电子文档的开始标签。在本典 型实施例的页面数据描述格式规范中,<Document>表示电子文档的开始标签,并且<Document>和表示<Document>结束的标签</Document>之间的XML描述是文档所包括的各个页面的描述数据。在图6所示的描述例子中,<Document>601是电子文档的开始标签,并且</Document>612是电子文档的结束标签。
在步骤S402,CPU 102将仍未被描述的页面中的第一个页面的数据识别为处理对象。
在步骤S403,CPU 102生成并描述表示处理对象页面数据的开始的标签。在本典型实施例中,<Page>表示页面数据的开始,并且<Page>和作为页面数据的结束标签的</Page>之间的XML描述是页面的绘制数据和内容数据。此外,在<Page>标签中包括Width和Height属性以及Dpi属性以描述页面的物理大小,其中,Width属性表示页面的像素宽度,Height属性表示页面的像素高度,Dpi属性表示分辨率。此外,使用表示页码的Number属性来描述页码。
在图6所示的描述例子中,作为Page元素的开始标签的<Page>602包括下面的描述:页面的宽度(即Width属性值)为“1680”,高度(即Height属性值)为“2376”,分辨率(即Dpi属性值)为“200”,并且页码(即Number属性值)为“1”。此外,在<Page>602和作为结束标签的</Page>606之间(即<Image>元素603到<Text>元素605)描述第一个页面的数据。
在步骤S404,CPU 102生成表示页面所包括的数据中的图像绘制数据的标签,并且描述图像绘制数据。
在当前所说明的页面数据描述格式规范中,一个<Image>元素表示一个图像的绘制数据。此外,在Data属性中描述图像数据的内容,并使用属性X、Y、Width和Height的坐标信息来描述在页面中绘制图像的位置。如果页面中存在多个图像,则 按照出现的顺序写每一图像数据。以压缩图像数据形式在Data属性中描述图像数据的内容。在本典型实施例中,通过JPEG压缩来对彩色或灰度图像进行压缩,并且通过MMR压缩来对二值图像进行压缩,以获取用于在Data属性中描述图像数据的内容的代码串。
根据图6所示的<Image>元素603中的描述例子,要在整个页面上绘制文档的第一个页面的扫描的图像。在<Image>元素603中将该图像的位置和大小描述为:X=“0”、Y=“0”,Width=“1680”,Height=“2376”。此外,将通过对图像进行JPEG压缩所生成的代码串的字符串描述为Data属性值。在图6中,Data属性的字符串被部分简化以使图示简单。这样,描述了<Image>元素603。在进行JPEG压缩之后,可以在存储扫描的图像之前改变该图像的分辨率。例如,可以将以600dpi分辨率扫描的图像改变成300dpi分辨率并进行存储。
在步骤S405,CPU 102生成表示页面所包括的数据中的文本的绘制数据的描述。
在当前所说明的页面描述格式规范中,一个<Text>元素表示一行中的字符的绘制数据。<Text>元素中所描述的属性数据包括“Direction”、“X”、“Y”、“Font”、“Size”、“Color”、“String”和“CGlyphId”。
<Text>元素中所描述的“Direction”属性表示是垂直地还是水平地书写字符串。如果没有描述“Direction”属性,则使用(例如,水平的,从左到右的)默认方向。“X”、“Y”属性指定字符开始位置的坐标。
“Font”属性指定绘制字符代码所使用的字体数据ID。“Size”属性指定字体大小。“Color”属性通过一组四个值来指定绘制字符时的字符颜色,这四个值包括R成分值、G成分值、B成分值 和表示透明度的阿尔法通道值。
“String”属性指定字符串(即字符代码串)的内容。“CGlyphId”属性指定在绘制“String”中的各字符时所使用的字符形状数据的ID,即字形的ID。
<Text>元素数据所包括的字符代码串使用在图2所示步骤S205中生成的字符代码串。还将在步骤S205中生成的字符代码串分割成各字符行,即垂直或水平地排列的字符组。
在图6所示的描述例子中,两个<Text>元素604和605是用于绘制第一个页面上的字符的描述。<Text>元素604和605分别对应于图11所示的字符代码串数据1101和1102。例如,在与图11所示的水平书写的字符串“X1A”的字符代码串数据1101相对应的<Text>元素604中,指定如下所述的属性。
在字符代码串数据1101中,为作为围绕这三个字符的外接矩形的左上坐标的X、Y属性指定X=“236”以及Y=“272”。
此外,为表示字体类型的“Font”属性指定“Font01”。此外,向表示通过根据字符行中字符的高度进行类推所获得的字体大小的Size属性指定“97”像素。为表示绘制字符时的字符颜色的Color属性指定R成分值=G成分值=B成分值=0以及阿尔法通道=255(即透明颜色)。
此外,为表示字符串(即与各字符相对应的字符代码的串)的内容的“String”属性指定“0x2358、0x2332、0x2341”。
为<Text>元素中所描述的“CglyphId”属性指定作为各字符的字符形状数据而使用的字形的ID。在本典型实施例中,基于在步骤S205中获得的各字符的宽度信息来指定字形的ID。由于在扫描的图像上利用透明颜色来绘制字符的字符形状,因而用户不能看见该字符。因此,从多个例如矩形等的简单形状的字符形状数据(例如,八种字形类型)中选择要使用的字符形状数 据(即字形),而不使用作为字符图像本身的形状的字符形状。也就是说,进行控制以从矩形宽度不同的多个字形(或者纵横比不同的多个字形)中选择适于各字符的字形。因此,在本典型实施例中,基于字符所在行的高度和字符宽度之间的比,选择字形ID。
图15是示出由图像处理设备100所进行的用于选择各字符图像的字形ID的操作的例子的流程图。在步骤S1501~S1507,将字符宽度和行高度之间的比与7/8、6/8、5/8/、4/8、3/8、2/8和1/8进行比较。作为比较的结果,处理进入步骤S1508~S1515中之一,以从字形ID0~7中选择字形ID。
在判断出该比(字符宽度/行高度)>7/8的情况下,选择字形ID=0。如果判断出7/8≥(字符宽度/行高度)>6/8,则选择字形ID=1。如果6/8≥(字符宽度/行高度)>5/8,则选择字形ID=2。如果5/8≥(字符宽度/行高度)>4/8,则选择字形ID=3。如果4/8≥(字符宽度/行高度)>3/8,则选择字形ID=4。如果3/8≥(字符宽度/行高度)>2/8,则选择字形ID=5。如果2/8≥(字符宽度/行高度)>1/8,则选择字形ID=6。如果(字符宽度/行高度)≤1/8,则选择字形ID=7。在本例子中,字形的矩形宽度随着字形ID编号的减小而增大。
例如,在图11所示的字符串1101中,各字符图像的(字符宽度/行高度)为“0.82”、“0.14”和“0.57”。因此,根据图15所示的选择处理,将字形ID指定为“1、6、3”。类似地,对于英文句子中的单词间空格,将空格的宽度当作为字符宽度,因而基于该空格所在的字符行的高度与空格宽度的比选择字形ID。下面将详细说明字形形状。
上述属性值是一个例子,并且可以通过在定义上类似的其它值来描述属性。例如,代替像素数量,可以通过例如基于像 素高度和图像分辨率的点的数量等的值来描述表示字体大小的Size属性。
在步骤S406,CPU 102描述表示页面的结束的</Page>。
在步骤S407,CPU 102判断是否存在未被描述的页面。在存在未被描述的页面的情况下(步骤S407中为“是”),则处理返回至步骤S403,从而使得下一页面成为要处理的页面图像。另一方面,如果不存在未被描述的页面(步骤S407中为“否”),则处理进入步骤S408。
在本典型实施例中,CPU 102对与第二个页面相对应的图像进行步骤S404~S406的处理,并描述如在图6所示的描述例子那样的Page元素607和</Page>610之间的元素。
在步骤S408,CPU 102描述包括在对电子文档中的字符串进行绘制时所使用的所有字形的字体数据的内容。
在本典型实施例的页面数据描述格式规范中,在<Font>和</Font>之间描述包括在字体数据中的字形数据作为Glyph元素。<Font>元素包括表示字体类型的ID属性。Glyph元素包括表示字形类型的ID属性和表示与该ID相对应的字形(字符形状)的Path属性。描述Path属性以在绘制矩形内使用直线或曲线来表示字形,其中,绘制矩形的原点在左下位置处。
在图6所示的描述例子中,在<Font>元素611中定义字体ID=“Font01”,其中,定义了字形ID=“0”~“7”的8种字形。例如,表示ID=“7”的字形的形状的Path属性“M0,0V-1024 H128V1024f”描述如下定义的字形:“移动至原点(0,0),向上绘制1024单位的垂直线,向右绘制128单位的水平线,向下绘制1024单位的垂直线,从当前点向开始点绘制直线并且标记出闭合区域”。也就是说,Path属性是表示标记出1024×128矩形的矩形字形的描述。其它ID是在水平方向上逐步为ID=“7”的字形的整数 倍的长方形字形。例如,ID=“0”是表示标记出1024×1024的正方形字体的描述。
图6所示的<Font>元素611中的描述是例子,并且可以定义例如三角形、圆或直线等的简单字符形状,或者可以将空白(即空格)定义为字形(字符形状)。
在步骤S409,CPU 102描述表示电子文档结束的</Document>,并且结束对电子文档的生成。将所生成的电子文档作为文件存储在图像处理设备100中的存储器103或硬盘104中。在存储电子文档时,可以使用传统的文本压缩技术来压缩电子文档。
返回参考图2,在步骤S209,CPU 102使用指定的发送方法将在步骤S208生成的电子文档发送至在步骤S201所指定的发送目的地(例如图像处理设备110)。由于该数据发送处理使用传统技术,因而省略说明。
作为发送目的地的图像处理设备110接收通过网络I/F 114发送的电子文档,并且将该电子文档存储在硬盘113中。由于该数据接收处理使用传统技术,因而省略说明。
用于在硬盘中对存储在设备内的电子文档进行识别的识别信息(如文件名等)可以是任意信息。例如,可以将与接收电子文档时的时间有关的字符串分配为识别信息。此外,可以选择并自动分配唯一编号,或者在生成电子文档时由用户指定。
下面参考图3所示的流程图说明对电子文档进行搜索和查看的处理的例子。在本典型实施例中,图像处理设备110进行搜索。然而,本发明不局限于该实施例,并且图像处理设备100也可以进行搜索。
在步骤S301,用户输入搜索关键字,假定该搜索关键字包括在用户想要进行搜索的电子文档的文本中。用户从UI 115输 入该关键字,以从存储在图像处理设备110中的电子文档中搜索电子文档中的字符串。在本典型实施例中,将所输入的字符串的长度表示为k。
在步骤S302,CPU 111判断在图像处理设备110的硬盘113中所存储的所有电子文件中是否存在未被搜索的电子文档文件。在存在未被搜索的电子文档文件的情况下(步骤S302中为“是”),CPU 111识别未被搜索的电子文件中的一个电子文件。如果所识别的电子文件是压缩的,则CPU 111展开该文件。处理进入步骤S303。另一方面,如果不存在未被搜索的电子文档(步骤S302中为“否”),则处理进入步骤S312。在步骤S312,CPU111通知用户结束了对所有电子文档的搜索。
在步骤S303,CPU 111准备搜索在步骤S302中所识别的电子文档中的文本数据。CPU 111将该文档内的文本(字符代码)排成一行,并且初始化搜索开始位置n,即设置n=0。
下面说明在步骤S303中进行的处理的例子。
通过XML解析器解析电子文档数据,并且如果存在<Text>元素,则获取在String属性中描述的字符代码串。然后,根据在String属性中所描述的字符代码串,针对每一字符将字符代码和电子文档数据中描述字符代码值的位置成对地添加至字符代码序列表中。字符代码值的描述位置是由从电子数据的头开始计数的字符数量所表示的、电子文档数据中用以描述字符代码的字符代码串的头的位置。图12示出根据图6所示的电子文档所生成的字符代码序列表的例子。
例如,在图6所示电子文档的<Text>元素604中的String属性描述了三个字符代码“0x2358”、“0x2332”和“0x2341”。从如下位置开始描述各字符代码:从电子文档的头开始分别为1093字符、1100字符和1107字符的位置。类似地,基于<Text>元素605 和609获得其余六个字符代码的描述位置,从而生成如图12所示的字符代码序列表。在图12所示的表中,按照从0开始的顺序分配字符串编号。
在步骤S304,CPU 111通过将搜索开始位置n设置为原点,判断字符代码序列表是否与搜索关键字的字符代码串相匹配。当检测到匹配部分时(步骤S304中为“是”),则将匹配部分的变量n设置作为匹配字符串的头位置,并且处理进入步骤S305。另一方面,如果没有匹配部分(步骤S304中为“否”),则处理进入步骤S309。
在步骤S309,CPU 111判断是否搜索了字符代码序列表中的所有字符。当CPU 111判断出搜索了存储在字符代码序列表中的所有字符代码串(步骤S309中为“是”)时,则处理进入步骤S311。在步骤S311,CPU 111通知用户对作为当前搜索对象的电子文档的搜索结束了。另一方面,如果没有完成所有搜索(步骤S309中为“否”),则处理进入步骤S310。
在步骤S310,CPU 111将变量n加1,并且返回至步骤S304。在步骤S304,CPU 111判断在下一搜索开始位置n处,字符代码序列表是否与搜索关键字的字符代码串相匹配。当存储在字符代码序列表中的字符代码的总数为N时,如果n<(N-k),则可以判断出尚未完成所有搜索。在步骤S309,如果n≥(N-k),则判断出完成了该搜索。
例如,在通过搜索关键字“YB”搜索图12所示的字符代码序列表的情况下,从字符代码序列表的头开始扫描搜索关键字“YB”的字符代码串“0x2359”、“0x2342”,以搜索匹配部分。在这种情况下,重复步骤S304、S309和S310的处理,并且提取n=3作为第一个匹配字符串的字符串编号。
在步骤S305,CPU 111识别电子文档中与字符串编号n相对 应的字符串数据所属的页面。
例如,如果在解析电子文档时识别了对<Text>元素进行描述的Page元素,则可以通过Number属性识别页码。因此,可以通过从图12所示的表中获取与在步骤S305中识别出的位置n相对应的字符串的描述位置,来识别该字符串所属的页面。然后可以确定包括该描述位置的Page元素。如果在步骤S303解析电子文档数据时识别了对各<Text>元素进行描述的Page元素,以及在图12所示的字符代码序列表中存储了位置,则基于字符串编号可以容易地识别页码。本发明不局限于上述例子。可以以其它方式进行步骤S304中的检测匹配字符串和步骤S305中的识别页码。
在步骤S306,CPU 111根据在步骤S305确定的页面绘制描述来绘制页面,并且将结果显示在UI 115上。此时,如果要绘制字符串编号n和n+k-1之间所包括的字符,则CPU 111通过添加突出显示效果来绘制该字符,从而使得用户可以容易地识别该字符位于哪里。下面将详细说明向与搜索关键字相匹配的部分添加突出显示效果。
参考图5所示的流程图说明步骤S306中所进行的页面绘制处理。
在步骤S501,CPU 111根据与所识别的页码相对应的Page元素中所包括的属性Width和Height的值,确定要作为绘制结果而获得的页面图像的大小。
在步骤S502,CPU 111分配可以存储与页面图像有关的像素信息的存储器。
在步骤S503,CPU 111从Page元素的子元素提取未被处理的元素,并且确定未被处理的元素的类型。如果未被处理的元素为<Image>元素(步骤S503中为<Image>),则处理进入步骤 S504,并且,如果未被处理的元素为<Text>元素(步骤S503中为<Text>),则处理进入步骤S505。在处理了Page元素中的所有子元素的情况下(步骤S503中为“无”),处理进入步骤S517。
在步骤S504,CPU 111光栅化在<Image>元素中被描述为Data属性值的压缩图像。此外,CPU 111缩放光栅化后的图像,以使得该图像完全符合通过X、Y、Width和Height属性中的每一个所定义的页面图像中的绘制矩形区域。然后,CPU 111将该图像写入在步骤S502中所分配的页面图像存储器中的区域的上,并且处理返回至步骤S503。
在步骤S505,CPU 111从作为处理对象的<Text>元素所描述的每一属性中,获取字符开始位置(X,Y)、字符字体ID(F)、字符大小(S)和字符颜色(C)。此外,CPU 111获取在<Text>元素中所描述的字符的数量(N)。
在步骤S506,CPU 111分配用于生成字形图像的存储器。在本典型实施例中,CPU 111分配用于存储124×1024像素的二值图像的存储器。
在步骤S507,CPU 111将表示正被处理的字符的计数器i初始化成1。
在步骤S508,CPU 111判断是否i>N,并且如果i≤N(步骤S508中为“否”),则处理进入步骤S509。相反,如果i>N(步骤S508中为“是”),则CPU 111判断出完成了对<Text>元素的处理,并且返回至步骤S503。
在步骤S509,CPU 111从<Text>元素中的String属性获取第i个字符的字符代码(P),并且从CglyphId属性获取第i个字符的GlyphId(Q)。
在步骤S510,CPU 111在电子文档中对字体Id为(F)的<Font>元素描述进行定位。此外,CPU 111根据<Font>元素描 述的子元素从字形Id为(Q)的Glyph元素中获取Path属性。
在步骤S511,CPU 111根据在步骤S510中获得的Path属性值,在步骤S506所分配的字形图像生成存储器中生成字形二值图像。字形二值图像是这样的图像:通过1表示要绘制的部分,并且通过0表示不要绘制的部分。在本典型实施例中,后面利用透明颜色绘制要绘制的部分1。
在步骤S512,CPU 111将字形二值图像的大小缩放成根据字符大小属性(S)的值的矩形的大小。获取要绘制的缩放后的字形二值图像的部分1的宽度,作为缩放后的字形宽度Wi。
在步骤S513,CPU 111在页面图像存储器中的基于坐标位置(X、Y)的矩形区域上,绘制在步骤S512中缩放后的字形二值图像。按如下所述定义当在页面图像上绘制二值图像时的各像素的像素值。在该定义中,绘制字形之前的页面图像中的各像素值为(r、g、b),而绘制字形之后的像素值为(r’,g’,b’)。
字形二值图像中像素值为0的像素:(r’,g’,b’)=(r,g,b)
字形二值图像中像素值为1的像素:(r’,g’,b’)=(F(r,Cr)、F(g,Cg)、F(b,Cb)
在上述定义中,F(r,Cr)=(r×A+Cr×(255-A))/255、F(g,Cg)=(g×A+Cg×(255-A))/255、F(b,Cb)=(b×A+Cb×(255-A))/255。
此外,A是字符颜色C的阿尔法通道值,并且Cr、Cg和Cb分别是字符颜色C的R、G和B值。在指定255作为阿尔法通道值的情况下,字形二值图像是透明的。因此,当字形二值图像的像素值为1时,对于像素来说,(r’,g’,b’)=(r,g,b)。
在步骤S514,CPU 111使用例如图12所示的字符代码序列表,判断正被处理的第i个字符是否是n和n+k-1之间所包括的 字符。更具体地,由于CPU 111可以根据该序列表识别n和n+k-1之间的各字符的描述开始位置,因而CPU 111基于正被处理的字符i的开始位置是否与那些位置中之一相匹配来进行判断。如果第i个字符是n和n+k-1之间所包括的字符(步骤S514中为“是”),则处理进入步骤S515。相反,如果第i个字符不在n和n+k-1之间(步骤S514中为“否”),则处理进入步骤S516。
在步骤S515,CPU 111进行突出显示处理,以表示正被处理的字符在被检测为搜索字符串的部分之内。更具体地,从页面图像存储器中的位置(X,Y)开始,对于与所绘制的字符串的区域相对应的矩形区域内的每一像素,将各像素值(r,g,b)按如下所述改变成像素值(r’,g’,b’)。
(r’,g’,b’)=(G(r),G(g),G(b))
(其中,G(r)=255-r,G(g)=255-g,G(b)=255-b)。
上述反转颜色的突出显示处理是一个例子,并且可以进行其它突出显示处理。例如,可以进行下面的处理:不改变字形二值图像中像素值为0的像素,并且如上所述,将字形二值图像中像素值为1的每一像素值(r,g,b)改变成(r’,g’,b’)。
在步骤S516,CPU 111确定下一字符的绘制开始位置X,将i增大1(即,i=i+1),并且返回至步骤S508。通过将缩放后的字形宽度Wi和字符之间距离与当前字符的绘制开始位置相加,计算出下一字符的绘制开始位置X。在本典型实施例中,没有存储例如字符间距和字符之间距离等的数据以减少数据量。通过假定字符之间距离为缩放后的字形宽度Wi的10%这样来计算绘制开始位置X。因此,通过X=X+1.1×Wi来计算下一字符的绘制开始位置X。不一定要按如上所述计算字符之间距离,并且字符之间距离可以是字符大小的10%或者预定的恒量。
在步骤S517,CPU 111将与一个页面相对应的绘制结果, 即绘制了Page元素中的<Image>和<Text>元素的描述的页面图像存储器的内容,传输至UI 115中的显示缓冲器。然后CPU 111显示该结果。
如下所述,作为与绘制图6所示电子文档中第一个页面的描述有关的例子,进行图5所示的流程图的处理。
在进行步骤S501的处理时,CPU 111基于图6所示的第一个页面的Page元素602中所描述的属性值Width=“1680”和Height=“2376”,确定该页面的图像大小为1680×2376像素。
在步骤S502,CPU 111在将页面图像表示为R、G、B24位彩色图像的情况下,分配1680×2376×3字节的存储器。
在步骤S504,将如图6所示<Image>元素603的Data属性值所描述的压缩代码光栅化成图像,并且将该图像写在页面图像存储器的整个区域上。在本典型实施例中,由于图像数据的像素大小为与原始页面的大小相同的1680×2376像素,因而不进行缩放处理。
在步骤S505,CPU 111从<Text>元素604所包括的各属性中获取X=“236”、Y=“272”、字符数量N=“3”、字符字体ID=“Font01”、字符大小=“97”和字符颜色=“0,0,0,255”。
在步骤S509,CPU 111从<Text>元素604获取String属性=0x2358和Glyph ID=“1”的第一个字符。
然后在步骤S510,CPU 111获取用于在步骤S511生成字形二值图像的、与所获取到的字符字体ID=“Font01”相对应的字形Path数据。在本典型实施例中,CPU 111获取图6所示的描述例子中<Font>元素611内的Glyph元素中的Id=“1”的Path属性。
然后在步骤S511,CPU 111基于所获取到的与Glyph元素中Id=“1”相对应的Path属性数据,生成字形图像。更具体地,根据Path属性的描述,利用1标记出1024×896像素的整个矩形区 域。因此,通过标记出如下矩形生成字形图像:从被分配为用于生成字形图像的存储器的1024×1024像素的区域的左端开始,该矩形在垂直方向上为1024像素以及在水平方向上为896像素。
在步骤S512,CPU 111基于字符大小“97”,将1024×1024像素的字形图像生成存储器缩放成97×97像素。因此,要标记出的区域变成97×85像素(即缩放后的字形宽度Wi=85)。
在步骤S513,在页面图像上从位置(X,Y)=(236,272)开始的97×97矩形区域中,绘制缩放后的字形的字符图像。在图6所示的描述例子中,由于字符颜色=0,0,0,255,即阿尔法通道值A为255,因而,即使与字形二值图像相对应的像素值为1,对于所有情况来说,(r’,g’,b’)=(r,g,b)。也就是说,页面图像中矩形区域内的像素值在进行步骤S513的处理前后不变。
在步骤S514,CPU 111基于字符代码序列表判断图6所示<Text>元素604中的第一个字符是否包括在字符串编号n和n+k-1之间。
在本典型实施例中,假定根据图6所示的电子文档生成了图12所示的字符代码序列表。还假定在步骤S304中被确定为与搜索关键字相匹配的字符串在字符串编号3和4之间。由于图6所示<Text>元素604的第一个字符代码不在字符串编号3与4之间,因而处理进入步骤S516。<Text>元素604中第一个字符代码描述的首字符位置为1903,首字符位置1903与字符代码序列表中在字符串编号3和4之间的字符描述位置不匹配。因此,可以判断出<Text>元素604中第一个字符不是在字符串编号3与4之间的字符。
另一方面,在CPU 111在步骤S514判断图6所示<Text>元素 605中的第一个字符是否包括在字符串编号n和n+k-1之间的情况下,CPU 111判断出第一个字符代码与字符代码序列表中在字符串编号3与4之间的字符的开始位置相匹配。因此进行步骤S515中的突出显示处理。
由于与<Text>元素605中第一个字符相对应的字形ID为“0”,因而通过透明颜色标记出页面图像存储器中从位置(236,472)开始的92×92像素区域。因此,在步骤S515,将页面图像存储器中从位置(236,472)开始的92×92像素区域内的各像素值(r,g,b)改变成(G(r),G(g),G(b))。
例如,在绘制<Text>元素604中的第一个字符代码的情况下(绘制开始位置为(236,272)),CPU 111在步骤S516中计算出下一字符的绘制开始位置X为236+1.1×85=330。因此,<Text>元素604中的第二个字符的绘制开始位置变成(330,272)。
结果,当绘制了所有<Text>元素中的描述时,获得图13所示的页面图像。对于与在步骤S304中已被判断为匹配搜索关键字的字符串中字符相对应的区域,亮度被反转了。与其余字符相对应的区域保持与利用<Image>元素所绘制的图像数据相同。
如上所述,根据本典型实施例,由于突出显示了所搜索到的字符串,因而用户可以通过查看在步骤S306中显示的页面图像容易地确定页面中哪里存在搜索关键字。此外,由于利用透明颜色绘制了与字符宽度相匹配的字形,因而在搜索期间,突出显示的字符的位置与文档图像中的字符图像的位置更加接近地匹配。因此,对于用户来说更易于识别搜索关键字。
图14A和14B示出当设置不同的突出显示方法时如何显示页面图像的例子。
在图14A所示的页面绘制描述中,定义8种字形作为字体数 据的字形,其中,这8种字形在高度为1024的字符下部绘制高度为128且宽度为1024~128的被标记出的矩形。当在图4所示的步骤S405中描述<Text>元素的属性数据时,在相应的字符图像下部绘制与各字形相对应的低高度的矩形透明字符。在这样的页面绘制描述中,如果在步骤S515的突出显示处理中反转突出显示各字形的矩形区域,则生成如图14B所示的突出显示的页面图像。结果,用户可以看见所搜索到的部分被下划线突出显示了,并且用户可以容易地确定页面中哪里存在所搜索到的字符串。
返回参考图3,在步骤S307,CPU 111允许用户选择是结束搜索和查看处理,还是在不同搜索区域中继续搜索。如果用户选择结束该处理(步骤S307中为“结束”),则结束图3所示的处理,并且,如果用户选择继续搜索(步骤S307中为“继续”),则处理进入步骤S308。
在步骤S308,CPU 111将n定义为n=n+k,返回至步骤S304,并且搜索与搜索关键字相匹配的下一部分。
如上所述,根据本发明的第一典型实施例,当将纸质文档转换成电子文档时,在电子文档中描述要以透明颜色绘制在页面图像上的从页面提取的字符。因此,用户可以通过确认被突出显示的与关键字相匹配的部分的页面显示,来搜索电子文档。
上述电子文档存储包括许多不同字符宽度的简单字形(矩形等字符形状)的字体数据。电子文档对如下进行描述:在要绘制文档中各种字符类型的透明字符时,选择并绘制与各字符类型的宽度相匹配的简单字形(字符形状)。也就是说,相对于多个字符类型(例如上百个字符类型),共用例如具有不同宽度的八种字形(字符形状)等的许多字形(字符形状)。
此外,即使在没有针对各字符精细描述透明文本的绘制位 置(例如,利用字符的位置坐标)的情况下,透明文本的绘制位置与文档图像中各字符图像的位置也大致匹配。因此,即使在需要在电子文档中存储电子文档所使用的字体数据时,也可以降低电子文档的文件大小(即数据量)。
第二典型实施例
在第一典型实施例中,当在图4所示的步骤S405中描述文本元素中字形ID的属性数据时,基于各字符的宽度和高度信息确定与各字符相对应的字形。然而,本发明不局限于该实施例。
例如,通过利用进行步骤S205的字符识别而获得的各字符图像的位置信息来获得主题字符的左端与下一字符的左端之间的距离(字符间距),并且基于该距离与字符行高度的比,可以选择字形ID。在主题字符是字符行中最后一个字符的情况下,使用该字符的字符宽度作为该距离。在这种情况下,由于该距离可能大于字符行高度,因而可以使用宽度大于该高度(如宽度1152或1280)的矩形字形。此外,在这种情况下,在图5所示的步骤S516中,按照X=X+Wi来获得下一字符的绘制开始位置X。
因此,当对通过基于如上所述的字符间距选择字形ID而生成的电子文档进行搜索处理时,还突出显示与关键字相匹配的字符串中字符之间的间隔。
如上所述,根据第二典型实施例,即使在未对所有字符描述透明文本的绘制位置(如字符的位置坐标)的情况下,透明文本的绘制位置与文档图像中各字符图像的位置也大致匹配。此外,由于要存储的字形的总数是有限数量(例如,10种字形),因而可以降低字体数据的数据量。此外,由于简化了字形的形状,因而可以降低字形数据(字符形状数据)本身的数据量。
第三典型实施例
本发明的第三典型实施例说明不同于上述典型实施例中图5所示的步骤S516的、用于确定下一字符的绘制开始位置X的处理。
在本典型实施例中,CPU 111基于通过进行上述典型实施例中图2所示流程图的步骤S205中的字符识别所识别出的各字符图像的位置信息,计算字符之间距离的平均值。当然后在图4所示的步骤S405中描述<Text>元素时,将字符区域中的字符之间距离的平均值描述为属性数据(AvC)。在步骤S516,CPU 111可以利用所描述的字符之间距离的平均值(AvC)来确定下一字符的绘制开始位置。在这种情况下,下一字符的绘制开始位置为X=X+Wi+AvC。
第四典型实施例
在上述典型实施例中,生成了这样的电子文档:在<Image>元素中描述通过利用JPEG压缩对扫描的图像进行压缩而获得的完整图像,并且在<Text>元素中描述透明文本。然而,本发明不局限于上述实施例。
例如,代替描述利用JPEG压缩进行压缩后的整个扫描图像,可以将文本区域和图形区域转换成针对各种颜色的二值图像并且利于MMR压缩进行压缩,而可以利于JPEG压缩来压缩其它区域。可以将这类描述存储在<Image>元素中。日本特开平07-236062和日本特开2002-077633讨论了分析并适当压缩文档图像中所包括的区域的方法。通过将用于降低在绘制透明文本中所使用的字体数据量的处理和上述图像压缩处理相结合,可以生成进一步高度压缩的电子文档。
此外,还可以仅将字符区域、图形区域、表格区域或照片区域等区域与位置数据存储在一起,而不是整个图像。
第五典型实施例
在上述典型实施例中,当突出显示与搜索结果相对应的部分时,反转图像的颜色(r,g,b)。然而,可以使用的颜色不局限于上述颜色。例如,可将用于指定搜索结果的预定颜色(如黄色)绘制成半透明(如阿尔法通道128)。此外,可以使用字符颜色(Cr、Cg、Cb)来确定突出显示颜色。
第六典型实施例
在上述典型实施例的图3和5所示的流程图中,从文档的开头开始顺序搜索与关键字相匹配的字符串,并且突出显示首先搜索到的字符串。如果存在用以“搜索下一串”的指令,则顺序搜索并突出显示与关键字相匹配的下一字符串。然而,本发明不局限于按照从文档的开头开始的顺序来搜索与搜索关键字相匹配的字符串以及突出显示所搜索到的与搜索关键字相匹配的字符串。例如,可以将包括在电子文档中的所有字符串与搜索关键字进行比较,并且可以指定并同时突出显示所有匹配字符串。
其它典型实施例
还可以通过向系统或设备提供存储用于实现上述典型实施例的操作的软件程序代码(计算机程序)的计算机可读存储介质来实现本发明的上述典型实施例。此外,通过由系统或设备的计算机(CPU或微处理单元(MPU))读取并执行存储在存储介质中的程序代码(计算机程序),来实现上述典型实施例。
该计算机程序实现包括在上述典型实施例的流程图中的各步骤。也就是说,该计算机程序是与用于使计算机执行流程图中所包括的各步骤的各处理单元相对应的程序。在这种情况下,从计算机可读存储介质读出的计算机程序本身实现上述典型实施例的操作,并且用于存储该计算机程序的存储介质构成本发明。
此外,提供该计算机程序的存储介质可以是例如软盘、硬盘、磁带等磁性存储介质、非易失性半导体存储器、ROM、以及例如磁光盘(MO)、致密盘(CD)、数字多功能光盘(DVD)、CD只读存储器(CD-ROM)和可记录光盘(CD-R)等的光学存储介质/磁光存储介质。
此外,运行在计算机上的OS等也可以根据该计算机程序的指令进行部分或全部处理,并且实现上述典型实施例的功能。
在上述典型实施例中,CPU与存储器、硬盘和显示装置等共同执行流程图中的各步骤。然而,本发明不局限于上述结构,并且专业电子电路可以代替CPU进行各流程图中所述各步骤的部分或全部处理。
尽管参考典型实施例说明了本发明,但是应该理解,本发明不局限于所公开的典型实施例。所附权利要求书的范围符合最宽的解释,以包含所有这类修改、等同结构和功能。
本申请要求2007年6月29日提交的日本专利申请2007-172737的优先权,其全部内容通过引用包含于此。
Claims (22)
1.一种图像处理设备,包括:
字符识别单元,用于对文档图像中的多个字符图像进行字符识别,以获取与多个字符图像相对应的字符代码;
选择单元,用于基于所述文档图像中的各个字符图像的字符宽度和字符行高度或者基于所述文档图像中的各个字符图像的字符间距和字符行高度,从多个字形中选择各个字符图像要使用的字形;以及
生成单元,用于生成电子文档,其中,所述电子文档包括所述文档图像、由所述字符识别单元所获取到的多个字符代码、表示绘制与由所述字符识别单元所获取到的多个字符代码相对应的字符所要使用的形状的多个字形、以及指定绘制与由所述字符识别单元所获取到的多个字符代码相对应的字符所要使用的字形的描述数据;
其中,基于所述选择单元针对各个字符图像所选择的字形来描述所述描述数据,以及
在绘制与由所述字符识别单元所获取到的多个字符代码相对应的字符时,不同的字符代码共享及使用所述多个字形中的各个字形。
2.根据权利要求1所述的图像处理设备,其特征在于,所述多个字形分别具有不同的宽度。
3.根据权利要求1所述的图像处理设备,其特征在于,所述多个字形分别表示简单形状。
4.根据权利要求1所述的图像处理设备,其特征在于,所述多个字形分别表示矩形形状。
5.根据权利要求1所述的图像处理设备,其特征在于,所述多个字形分别表示空白字符的形状。
6.根据权利要求1所述的图像处理设备,其特征在于,所述多个字形绘制在字符行的下部。
7.根据权利要求1所述的图像处理设备,其特征在于,所述生成单元生成还包括字符之间距离的平均值的电子文档。
8.根据权利要求1所述的图像处理设备,其特征在于,所述描述数据还包括如下描述:该描述用于在与所述文档图像中的各个字符图像相对应的位置处,以透明颜色绘制针对所述多个字符代码中的各个字符代码所指定的字形。
9.根据权利要求1所述的图像处理设备,其特征在于,以可扩展标记语言格式生成所述电子文档。
10.根据权利要求1所述的图像处理设备,其特征在于,以可扩展标记语言纸张规范格式生成所述电子文档。
11.根据权利要求1所述的图像处理设备,其特征在于,还包括压缩单元,所述压缩单元用于对用于存储在所述电子文档中的所述文档图像进行压缩。
12.根据权利要求11所述的图像处理设备,其特征在于,所述压缩单元分析所述文档图像中所包括的区域,并且自适应地进行压缩。
13.根据权利要求1所述的图像处理设备,其特征在于,还包括搜索单元,所述搜索单元用于使用所输入的关键字对所生成的电子文档进行搜索,并突出显示与所输入的所述关键字相匹配的、绘制了与所述字符代码相对应的字形的部分。
14.根据权利要求13所述的图像处理设备,其特征在于,所述搜索单元通过反转所述部分的颜色来突出显示所述部分。
15.一种图像处理方法,包括:
通过对文档图像中的多个字符图像进行字符识别,获取与多个字符图像相对应的字符代码;
选择步骤,用于基于所述文档图像中的各个字符图像的字符宽度和字符行高度或者基于所述文档图像中的各个字符图像的字符间距和字符行高度,从多个字形中选择各个字符图像要使用的字形;以及
生成电子文档,其中,所述电子文档包括所述文档图像、通过进行所述字符识别所获取到的多个字符代码、表示绘制与通过进行所述字符识别所获取到的多个字符代码相对应的字符所要使用的形状的多个字形、以及指定绘制与所述多个字符代码相对应的字符所要使用的字形的描述数据;
其中,基于在所述选择步骤中针对各个字符图像所选择的字形来描述所述描述数据,
在绘制与通过进行所述字符识别所获取到的多个字符代码相对应的字符时,不同的字符代码共享及使用所述多个字形中的各个字形。
16.根据权利要求15所述的图像处理方法,其特征在于,所述多个字形分别具有不同的宽度。
17.根据权利要求15所述的图像处理方法,其特征在于,所述多个字形分别表示简单形状。
18.根据权利要求15所述的图像处理方法,其特征在于,所述多个字形分别表示矩形形状。
19.根据权利要求15所述的图像处理方法,其特征在于,所述多个字形分别表示空白字符的形状。
20.根据权利要求15所述的图像处理方法,其特征在于,所述多个字形绘制在字符行的下部。
21.根据权利要求15所述的图像处理方法,其特征在于,所生成的电子文档还包括字符之间距离的平均值。
22.根据权利要求15所述的图像处理方法,其特征在于,所述描述数据还包括如下描述:该描述用于在与所述文档图像中的各个字符图像相对应的位置处,以透明颜色绘制针对所述多个字符代码中的各个字符代码所指定的字形。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007172737A JP4590433B2 (ja) | 2007-06-29 | 2007-06-29 | 画像処理装置、画像処理方法、コンピュータプログラム |
JP172737/2007 | 2007-06-29 | ||
PCT/JP2008/061781 WO2009005019A1 (en) | 2007-06-29 | 2008-06-23 | Image processing apparatus, image processing method, and computer program |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101689203A CN101689203A (zh) | 2010-03-31 |
CN101689203B true CN101689203B (zh) | 2013-09-18 |
Family
ID=40226064
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008800228345A Expired - Fee Related CN101689203B (zh) | 2007-06-29 | 2008-06-23 | 图像处理设备和图像处理方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8503773B2 (zh) |
EP (1) | EP2162839A4 (zh) |
JP (1) | JP4590433B2 (zh) |
KR (1) | KR101128602B1 (zh) |
CN (1) | CN101689203B (zh) |
WO (1) | WO2009005019A1 (zh) |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4402138B2 (ja) | 2007-06-29 | 2010-01-20 | キヤノン株式会社 | 画像処理装置、画像処理方法、コンピュータプログラム |
JP4590433B2 (ja) | 2007-06-29 | 2010-12-01 | キヤノン株式会社 | 画像処理装置、画像処理方法、コンピュータプログラム |
JP2010113661A (ja) * | 2008-11-10 | 2010-05-20 | Seiko Epson Corp | 電子ファイル生成装置、電子ファイル生成システム、電子ファイル生成方法、及びコンピュータプログラム |
US8719701B2 (en) * | 2009-01-02 | 2014-05-06 | Apple Inc. | Identification of guides and gutters of a document |
US20100211591A1 (en) * | 2009-02-16 | 2010-08-19 | Chuan-Hua Chang | Apparatus for processing strings simultaneously |
JP5274305B2 (ja) * | 2009-02-27 | 2013-08-28 | キヤノン株式会社 | 画像処理装置、画像処理方法、コンピュータプログラム |
CN101872475B (zh) * | 2009-04-22 | 2012-03-28 | 中国科学院自动化研究所 | 一种扫描文档图像自动配准方法 |
JP5359800B2 (ja) * | 2009-11-13 | 2013-12-04 | ブラザー工業株式会社 | 画像処理装置およびプログラム |
JP5249387B2 (ja) | 2010-07-06 | 2013-07-31 | キヤノン株式会社 | 画像処理装置、画像処理方法、及びプログラム |
JP5676942B2 (ja) | 2010-07-06 | 2015-02-25 | キヤノン株式会社 | 画像処理装置、画像処理方法、及びプログラム |
US9218680B2 (en) * | 2010-09-01 | 2015-12-22 | K-Nfb Reading Technology, Inc. | Systems and methods for rendering graphical content and glyphs |
JP5716328B2 (ja) * | 2010-09-14 | 2015-05-13 | 株式会社リコー | 情報処理装置、情報処理方法、および情報処理プログラム |
US8543911B2 (en) | 2011-01-18 | 2013-09-24 | Apple Inc. | Ordering document content based on reading flow |
JP5285727B2 (ja) * | 2011-02-22 | 2013-09-11 | シャープ株式会社 | 画像形成装置、および、画像形成方法 |
CN103186911B (zh) * | 2011-12-28 | 2015-07-15 | 北大方正集团有限公司 | 一种处理扫描书数据的方法及装置 |
JP5950700B2 (ja) | 2012-06-06 | 2016-07-13 | キヤノン株式会社 | 画像処理装置、画像処理方法及びプログラム |
WO2014045320A1 (ja) * | 2012-09-21 | 2014-03-27 | 富士通株式会社 | 制御プログラム、制御方法および制御装置 |
JP5753828B2 (ja) * | 2012-09-27 | 2015-07-22 | 京セラドキュメントソリューションズ株式会社 | 画像処理装置及び画像処理プログラム |
JP5939962B2 (ja) * | 2012-11-19 | 2016-06-29 | 株式会社Pfu | 画像処理装置、画像処理方法及びコンピュータプログラム |
US10363486B2 (en) | 2013-06-10 | 2019-07-30 | Pixel Press Technology, LLC | Smart video game board system and methods |
US9370721B2 (en) | 2013-06-10 | 2016-06-21 | Pixel Press Technology, LLC | Systems and methods for creating a playable video game from a static model |
US9579573B2 (en) | 2013-06-10 | 2017-02-28 | Pixel Press Technology, LLC | Systems and methods for creating a playable video game from a three-dimensional model |
KR102178258B1 (ko) * | 2013-09-27 | 2020-11-12 | 삼성전자주식회사 | 디스플레이 장치 및 이의 글자 효과 제공 방법 |
JP6201686B2 (ja) * | 2013-11-26 | 2017-09-27 | コニカミノルタ株式会社 | テキストデータの埋め込み装置、該装置を備えた画像処理装置、テキストデータの埋め込み方法及び埋め込みプログラム |
JP5915628B2 (ja) * | 2013-11-26 | 2016-05-11 | コニカミノルタ株式会社 | 画像形成装置、テキストデータの埋め込み方法及び埋め込みプログラム |
JP6370080B2 (ja) * | 2014-04-02 | 2018-08-08 | キヤノン株式会社 | 画像処理装置、画像処理方法及びプログラム。 |
US10607381B2 (en) | 2014-07-07 | 2020-03-31 | Canon Kabushiki Kaisha | Information processing apparatus |
CN104616321B (zh) * | 2015-02-09 | 2019-02-12 | 公安部第一研究所 | 一种基于尺度不变特征变换的行李图像运动行为描述方法 |
JP6433339B2 (ja) * | 2015-03-02 | 2018-12-05 | キヤノン株式会社 | 情報処理システム、サーバ装置、制御方法およびプログラム |
JP6900164B2 (ja) * | 2016-09-27 | 2021-07-07 | キヤノン株式会社 | 情報処理装置、情報処理方法及びプログラム |
CN106650664A (zh) * | 2016-12-22 | 2017-05-10 | 深圳爱拼信息科技有限公司 | 一种高招大本数据采集系统及方法 |
JP6881990B2 (ja) * | 2017-01-30 | 2021-06-02 | キヤノン株式会社 | 画像処理装置とその制御方法、及びプログラム |
JP7030462B2 (ja) | 2017-09-21 | 2022-03-07 | キヤノン株式会社 | スキャン画像から文字情報を取得する画像処理装置、画像処理方法、及びプログラム |
CN107958252A (zh) * | 2017-11-23 | 2018-04-24 | 深圳码隆科技有限公司 | 一种商品识别方法和设备 |
US11405680B2 (en) * | 2018-03-23 | 2022-08-02 | Rovi Guides, Inc. | Systems and methods for obscuring presentation of media objects during playback of video based on interactions with other media objects |
GB2572386B (en) * | 2018-03-28 | 2021-05-19 | Canon Europa Nv | An image processing system and an image processing method |
US11361146B2 (en) | 2020-03-06 | 2022-06-14 | International Business Machines Corporation | Memory-efficient document processing |
US11495038B2 (en) * | 2020-03-06 | 2022-11-08 | International Business Machines Corporation | Digital image processing |
US11494588B2 (en) | 2020-03-06 | 2022-11-08 | International Business Machines Corporation | Ground truth generation for image segmentation |
US11556852B2 (en) | 2020-03-06 | 2023-01-17 | International Business Machines Corporation | Efficient ground truth annotation |
JP7137170B1 (ja) * | 2021-03-22 | 2022-09-14 | 楽天グループ株式会社 | 情報処理装置、情報処理方法およびプログラム |
CN113326677B (zh) * | 2021-05-20 | 2024-09-17 | 深圳Tcl新技术有限公司 | 字幕渲染方法及装置、设备、计算机可读存储介质 |
CN113961905B (zh) * | 2021-12-20 | 2022-03-11 | 四川特号商盟科技有限公司 | 一种在线协议签署数据的存储方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1752992A (zh) * | 2004-09-21 | 2006-03-29 | 富士施乐株式会社 | 文字识别装置、文字识别方法及文字识别程序 |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5164900A (en) * | 1983-11-14 | 1992-11-17 | Colman Bernath | Method and device for phonetically encoding Chinese textual data for data processing entry |
US5680479A (en) * | 1992-04-24 | 1997-10-21 | Canon Kabushiki Kaisha | Method and apparatus for character recognition |
JP3376129B2 (ja) * | 1993-12-27 | 2003-02-10 | キヤノン株式会社 | 画像処理装置及びその方法 |
JPH07271829A (ja) * | 1994-03-31 | 1995-10-20 | Xerox Corp | 文字形状コードを用いたテキスト画像と原稿とのマッチング方法 |
US5689620A (en) * | 1995-04-28 | 1997-11-18 | Xerox Corporation | Automatic training of character templates using a transcription and a two-dimensional image source model |
DE19522394C2 (de) | 1995-06-23 | 1997-04-17 | Licentia Gmbh | Verfahren und Vorrichtung zur Bestimmung der Teilung bei Schriften mit fester Teilung |
JP3264619B2 (ja) * | 1996-06-05 | 2002-03-11 | キヤノン株式会社 | 画像処理装置および方法 |
JP3335844B2 (ja) * | 1996-08-16 | 2002-10-21 | 富士通株式会社 | 文字列方向推定方法および装置 |
JPH10162024A (ja) | 1996-11-29 | 1998-06-19 | Canon Inc | 電子ファイリング方法及び電子ファイリング装置 |
US6522330B2 (en) * | 1997-02-17 | 2003-02-18 | Justsystem Corporation | Character processing system and method |
JPH10289226A (ja) | 1997-02-17 | 1998-10-27 | Just Syst Corp | 文字処理装置, 文字処理システム, 文字処理方法およびその方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体 |
US6006226A (en) * | 1997-09-24 | 1999-12-21 | Ricoh Company Limited | Method and system for document image feature extraction |
JPH11232276A (ja) * | 1998-02-17 | 1999-08-27 | Canon Inc | 文字処理装置と文字データの処理方法、及び記憶媒体 |
JP4235286B2 (ja) * | 1998-09-11 | 2009-03-11 | キヤノン株式会社 | 表認識方法及び装置 |
JP2000322417A (ja) * | 1999-05-06 | 2000-11-24 | Canon Inc | 画像ファイリング装置及び方法及び記憶媒体 |
EP1052593B1 (en) * | 1999-05-13 | 2015-07-15 | Canon Kabushiki Kaisha | Form search apparatus and method |
US6501475B1 (en) * | 1999-10-22 | 2002-12-31 | Dynalab Inc. | Glyph-based outline font generation independent of resolution |
JP4631133B2 (ja) * | 2000-06-09 | 2011-02-16 | コニカミノルタビジネステクノロジーズ株式会社 | 文字認識処理のための装置、方法及び記録媒体 |
US7133565B2 (en) * | 2000-08-25 | 2006-11-07 | Canon Kabushiki Kaisha | Image processing apparatus and method |
JP4366003B2 (ja) | 2000-08-25 | 2009-11-18 | キヤノン株式会社 | 画像処理装置及び画像処理方法 |
US6741745B2 (en) | 2000-12-18 | 2004-05-25 | Xerox Corporation | Method and apparatus for formatting OCR text |
US7228501B2 (en) * | 2002-11-01 | 2007-06-05 | Microsoft Corporation | Method for selecting a font |
JP4251629B2 (ja) * | 2003-01-31 | 2009-04-08 | キヤノン株式会社 | 画像処理システム及び情報処理装置、並びに制御方法及びコンピュータプログラム及びコンピュータ可読記憶媒体 |
US7391917B2 (en) * | 2003-02-13 | 2008-06-24 | Canon Kabushiki Kaisha | Image processing method |
JP4181892B2 (ja) * | 2003-02-21 | 2008-11-19 | キヤノン株式会社 | 画像処理方法 |
US7310769B1 (en) * | 2003-03-12 | 2007-12-18 | Adobe Systems Incorporated | Text encoding using dummy font |
JP4235583B2 (ja) | 2003-05-26 | 2009-03-11 | 株式会社リコー | 画像処理装置、画像処理用プログラム及び記憶媒体 |
JP2005259017A (ja) * | 2004-03-15 | 2005-09-22 | Ricoh Co Ltd | 画像処理装置、画像処理用プログラム及び記憶媒体 |
EP1555804A3 (en) * | 2004-01-19 | 2006-08-16 | Ricoh Company, Ltd. | Image processing apparatus, image processing program and storage medium |
JP2005275863A (ja) | 2004-03-25 | 2005-10-06 | Murata Mach Ltd | 複合機 |
US7903266B2 (en) * | 2006-05-08 | 2011-03-08 | Pitney Bowes Inc. | System and method for using divided fonts to achieve proportional spacing |
US7761783B2 (en) * | 2007-01-19 | 2010-07-20 | Microsoft Corporation | Document performance analysis |
JP4590433B2 (ja) | 2007-06-29 | 2010-12-01 | キヤノン株式会社 | 画像処理装置、画像処理方法、コンピュータプログラム |
JP4402138B2 (ja) * | 2007-06-29 | 2010-01-20 | キヤノン株式会社 | 画像処理装置、画像処理方法、コンピュータプログラム |
JP5376795B2 (ja) * | 2007-12-12 | 2013-12-25 | キヤノン株式会社 | 画像処理装置、画像処理方法、そのプログラム及び記憶媒体 |
-
2007
- 2007-06-29 JP JP2007172737A patent/JP4590433B2/ja not_active Expired - Fee Related
-
2008
- 2008-06-23 KR KR1020107001438A patent/KR101128602B1/ko not_active IP Right Cessation
- 2008-06-23 EP EP08777687A patent/EP2162839A4/en not_active Withdrawn
- 2008-06-23 US US12/599,802 patent/US8503773B2/en not_active Expired - Fee Related
- 2008-06-23 WO PCT/JP2008/061781 patent/WO2009005019A1/en active Application Filing
- 2008-06-23 CN CN2008800228345A patent/CN101689203B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1752992A (zh) * | 2004-09-21 | 2006-03-29 | 富士施乐株式会社 | 文字识别装置、文字识别方法及文字识别程序 |
Non-Patent Citations (3)
Title |
---|
JP特开2005-259017A 2005.09.22 |
JP特开2005-275863A 2005.10.06 |
JP特开平11-232276A 1999.08.27 |
Also Published As
Publication number | Publication date |
---|---|
US8503773B2 (en) | 2013-08-06 |
KR20100033412A (ko) | 2010-03-29 |
JP4590433B2 (ja) | 2010-12-01 |
JP2009009527A (ja) | 2009-01-15 |
US20100232690A1 (en) | 2010-09-16 |
EP2162839A1 (en) | 2010-03-17 |
KR101128602B1 (ko) | 2012-03-23 |
CN101689203A (zh) | 2010-03-31 |
EP2162839A4 (en) | 2010-07-28 |
WO2009005019A1 (en) | 2009-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101689203B (zh) | 图像处理设备和图像处理方法 | |
CN101558425B (zh) | 图像处理设备和图像处理方法 | |
JP5376795B2 (ja) | 画像処理装置、画像処理方法、そのプログラム及び記憶媒体 | |
CN101820489B (zh) | 图像处理设备及图像处理方法 | |
US8320019B2 (en) | Image processing apparatus, image processing method, and computer program thereof | |
EP2270714B1 (en) | Image processing device and image processing method | |
EP1698988A1 (en) | Image processing apparatus and its method | |
JP2004234656A (ja) | 文書分析情報を使用して文書を再フォーマット化する方法及び製造物 | |
US8595614B2 (en) | Document generating apparatus, document generating method, computer program and recording medium | |
US8514462B2 (en) | Processing document image including caption region | |
JP5098614B2 (ja) | 文章処理装置の制御方法および文章処理装置 | |
JP5197694B2 (ja) | 画像処理装置、画像処理方法、コンピュータプログラム | |
JP5159588B2 (ja) | 画像処理装置、画像処理方法、コンピュータプログラム | |
JP4892600B2 (ja) | 画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130918 Termination date: 20180623 |