明。
[0107]指示送出部67是从应用程序110朝向其它的应用程序120 (后述)送出规定的处理执行指示等的处理部。例如,指示送出部67朝向云服务器90送出应该对于扫描图像200中的多个部分区域230的各个进行OCR处理(光学字符识别处理)的主旨的指示。该指示与关于多个部分区域230的各个的图像数据一起被送出。
[0108]接受部68是从云服务器90 (应用程序120)接受关于各部分区域230的各处理结果(OCR处理结果)的处理部。
[0109]生成部70是生成电子文档500 (参照图4)的处理部。生成部70将关于多个部分区域230的各个的各OCR处理结果(文本信息(字符代码组))的字符串配置在扫描图像200中的该多个部分区域230的各个的检测位置,来生成电子文档500 (可检索的PDF等)。特别是,如后述那样,各处理结果涉及的字符串基于由决定部69按照每个部分区域230决定的排列方向字符尺寸(字符宽度)配置于电子文档500内。
[0110]<1—4.动作 >
[0111]在该实施方式中,外部终端50按照每一行从扫描图像提取字符串区域(行区域)作为OCR处理的处理对象区域(部分区域)并发送至云服务器90,从云服务器90接收关于各处理对象区域的OCR处理结果。然后,外部终端50生成嵌入了关于该各处理对象区域的OCR处理结果的电子文档500。此时,基于各行区域的宽度(1行的字符串的排列方向(宽度方向)的长度)等,决定了上述的排列方向字符尺寸(字符宽度),各OCR处理结果的字符串以反映该排列方向字符尺寸的方式配置于电子文档500。
[0112]以下,参照图4以及图5等对这样的方式进行说明。图4是表示电子文档生成系统1中的动作的概略的图,图5是表示外部终端50 (更详细而言,电子文档生成应用程序110)的动作的流程图。以下,参照这些图对电子文档生成系统1的动作进行说明。
[0113]<扫描图像生成等>
[0114]首先,用户将扫描对象的原稿载置在MFP10的原稿台(例如,自动给纸装置(ADF:Auto Document Feeder)或者原稿载置用玻璃面等)。
[0115]之后,用户通过操作外部终端50来对外部终端50以及MFP10赋予电子文档500的生成指示。
[0116]具体而言,首先,在安装于外部终端50的应用程序(电子文档生成应用程序)110的操作画面(未图示)中,指定了应该执行扫描处理的装置,并且,指定了通过扫描处理最终生成的电子文档500的形式。这里,为指定了 MFP10作为应该执行扫描处理的装置,指定了可检索的roF(带透明文本TOF)作为该电子文档500的形式。然后,通过用户按下显示于电子文档生成应用程序110的操作画面内的执行开始按钮(电子文档500的生成处理的执行开始按钮),来对于外部终端50以及MFP10赋予电子文档(这里是可检索的roF) 500的生成指示。此外,可检索的roF(带透明文本TOF)是具备具有字符图像的图像层和针对该字符图像的字符识别结果被以非显示状态嵌入的文本层的PDF形式的电子文档。
[0117]外部终端50接受该生成指示,并且,将该生成指示(详细而言,基于该生成指示的扫描图像生成指示等)转送到MFP10。
[0118]若MFP10从外部终端50接收该生成指示(扫描图像生成指示等)则开始扫描动作,生成载置于MFP10的原稿台(ADF等)的原稿的扫描图像200 (参照图4的左上)。
[0119]并且,MFP10进行辨别扫描图像200内的各种区域的区域辨别处理。具体而言,MFP10的区域辨别部15辨别扫描图像200内的字符区域210和非字符区域(图形区域等)220,确定出扫描图像200中的字符区域210的范围(详细而言,该位置以及大小)和非字符区域220的范围。另外,区域辨别部15对于该字符区域210赋予表示该区域是“字符区域”的特定代码(例如“1”)。相同地,区域辨别部15对于非字符区域220赋予表示该区域是“非字符区域”的区域种类代码(例如“2”、“3”等)。更详细而言,例如,对于是非字符区域的“图形区域”赋予了 “2”,对于是非字符区域的“照片区域”赋予了 “3”。
[0120]然后,区域辨别部15基于这些信息生成属性指定数据300。属性指定数据300作为对于扫描图像200内的各像素位置分配有上述的区域种类代码的数据(按照扫描图像200的各像素赋予了区域种类代码的数据)而被生成。换言之,属性指定数据300作为包括关于扫描图像200中的字符区域210以及非字符区域220的各个的范围信息(详细而言,关于其位置以及大小的信息)及区域种类代码等的信息的数据而被生成。
[0121]而且,MFP10(通信部4以及通信控制部11等)将扫描图像(详细而言,其图像数据)200和属性指定数据300发送至外部终端50。
[0122]< OCR处理以及电子文档生成处理等>
[0123]之后,外部终端50通过执行电子文档生成应用程序110来执行图5所示的处理。
[0124]首先,在步骤S11中,外部终端50 (详细而言,获取部64等)从MFP10接收并获取由MFP10生成的扫描图像200以及属性指定数据300。另外,外部终端50 (详细而言,生成部70等)将读入了扫描图像200的PDF文档临时生成为电子文档500。在该PDF文档中还未嵌入OCR结果涉及的文本数据。
[0125]接着,在步骤S12中,外部终端50 (提取部65等)基于在步骤S11中获取到的扫描图像200以及属性指定数据300,从该扫描图像200的字符区域210提取规定单位的部分区域230。在该实施方式中,提取部65提取字符区域210中的单一行的字符串涉及的区域作为规定单位的部分区域230。S卩,提取部65从字符区域210提取1行单位的部分区域230。换言之,提取出将字符区域210中的单一行的字符串涉及的区域作为单位划分的多个部分区域230 (这里,其中最初的部分区域230)。
[0126]具体而言,根据扫描图像200和属性指定数据300,确定出扫描图像200中的字符区域210。然后,进行了针对字符区域210的图像处理,识别出字符区域210内的1行区域(沿横方向排列的1行的字符串的区域)。在图6中,例示了由3行构成的字符区域210(211),对于该字符区域 210,首先,第一行的 “ABCDE Wireless Digital Rad1graphy”的字符串涉及的区域(行区域)231被作为部分区域230而提取出(参照图7)。
[0127]另外,在步骤S13中,外部终端50 (检测部66等)检测在步骤S12中提取出的部分区域230的(扫描图像200内的)位置(详细而言,其基准位置(X,Y)(前端位置等))以及大小(X方向尺寸(宽度W)以及Y方向尺寸(高度H))。另外,在步骤S13中,检测部66也检测各部分区域(行区域)230内的字符数(详细而言,各行区域所包含的字符的数)。检测出的各种信息(关于部分区域230的位置以及大小、及部分区域230内的字符数的信息)(参照图8)储存于储存部55。
[0128]在图8的上段示出了记录有这些各种信息(关于各部分区域230的识别编号、位置(以及大小)的信息、以及字符数)的情况。此外,这里,作为关于位置的信息,记录有关于部分区域230的4个信息,具体而言,部分区域230 (矩形区域)的上边的Y方向位置(TOP)、下边的Y方向位置(BOTTOM)、左边的X方向位置(LEFT)、右边的X方向位置(RIGHT)。这4个信息例如能够转换为该矩形区域的代表位置(例如左上的点的位置(TOP,LEFT))和该矩形区域的大小(高度Η以及宽度W)(参照图8的下段),也表现为是关于部分区域230的位置以及大小的信息。
[0129]上述的各部分区域230的提取处理以及各种检测处理等(步骤S12、S13)如以下那样进行。以下,参照图9等更详细地进行说明。此外,图9是用于对这样的处理等进行说明的图。
[0130]具体而言,首先,一边在Υ方向(副扫描方向)(垂直方向)上移动一边反复进行按照水平线检测沿X方向(主扫描方向)(也称为水平方向或左右方向)延伸的每1线(水平线)(水平方向像素列)的黑像素的数量的动作,获取各水平线的黑像素数。
[0131]在配置于图9内的左侧的曲线图中,示出了示意性地表示Υ方向的各位置中的黑像素数的曲线L0。此外,在该曲线图中,为了简单化,规定量以上的黑像素数一律以相同的像素数表示。因此,该曲线图具有方形波形状。
[0132]在字符存在的位置的水平线中,存在相对较多的黑像素。另一方面,在行与行之间的水平线(不存在字符的行间区域的水平线)中,黑像素几乎不存在。
[0133]利用这样的特质,提取部65将具有规定量以上的黑像素数的水平线存在的范围v(Y方向的范围)识别为1行字符串的范围(字符串的高度方向上的范围)。例如,从字符串“ABC...”的上端到下端的范围被识别为1行字符串的范围V。相同地,从字符串“Sys...”的上端到下端的范围等也被识别为1行字符串的范围V。
[0134]而且,在垂直方向(Y方向)上,遍及该范围V的矩形区域被识别为扫描图像200中的1行字符串的存在区域(行区域)。另外,在水平方向(X方向)上,包括从1行字符串中的前端的字符(这里是左端的字符)到最后尾的字符(右端的字符)的范围被识别为该1行字符串的存在区域。水平方向上的字符串的存在范围的识别处理使用后述的字符数的识别处理的处理结果进行即可。
[0135]此外,并不局限于此,在水平方向(X方向)上,例如,字符区域210的(该水平方向的)全范围(与扫描图像的全宽度相同的范围)也可以被识别为该1行字符串的存在区域。
[0136]这样被识别出的行区域(扫描图像200中的1行字符串的存在区域)被作为部分区域230提取(步骤S12)。例如,最初的1行字符串“ABCDE Wireless DigitalRad1graphy”(参照图7)的行区域(矩形区域)231被作为部分区域230提取。
[0137]另外,该部分区域(矩形区域)230的左上(或者左下等)的点的位置被识别为该矩形区域(1行字符串的存在区域)的位置(代表位置)(步骤S13)。例如,包括1行字符串“ABCDE Wireless Digital Rad1graphy”的矩形区域231的左上的点的位置被识别为该1行的字符串的存在区域的位置(前端位置)。
[0138]并且,该矩形区域230的大小(X方向尺寸(宽度W)以及Y方向尺寸(高度H))被识别且被检测。例如,矩形区域231的大小(宽度W1以及高度H1)基于左上的点P1的坐标值(LEFT,TOP)和左下的点P2的坐标值(RIGHT,BOTTOM)被识别出。更具体而言,宽度W1作为两点P1、P2的X坐标值的差值被计算出(W1 = RIGHT 一 LEFT),高度H1作为两点P1、P2的Y坐标值的差值被计算出(HI = BOTTOM 一 TOP)。
[0139]另外,提取部65将不具有规定量以上的黑像素数的水平线存在的范围(Y方向的范围)识别为行间区域的范围(高度方向上的范围)。例如,字符串“ABC...”的下端与字符串“Sys...”的上端之间的空白区域被识别为第一行与第二行之间的行间区域的范围。通过这样的处理,提取部65将某行与其下一行的间隔(行间区域的Y方向的大小)计算为行间间隔y(相邻行间间隔)。此外,这里,不具有规定量以上的黑像素数的水平线立即被判定为是行间区域,但并不局限于此。例如,在“不具有规定量以上的黑像素数的水平线”连续存在规定的阈值TH1 (例如,数根(相当于1mm?2mm程度的量))(参照图7)以上的情况下,也可以识别为该水平线(组)的存在区域是行间区域。由此,能够良好地区别与字符串的高度方向相邻的多个行区域并提取。
[0140]另外,在步骤S13中,检测部66也检测各部分区域230(行区域)内的字符数。
[0141]具体而言,一边在X方向上移动一边反复进行检测在与1行字符串的Y方向上的存在范围V对应的区域(沿X方向延伸的带状区域(矩形区域))中沿Y方向延伸的每1线(垂直线(纵线))的黑像素的数量的动作,获取按照各垂直线的黑像素数。由此,能够求出该带状区域内的各字符的存在区域(各字符的宽度方向上的存在范围W)。
[0142]在配置于图9内的第一行的字符串的上侧的曲线图中,示出示意性地表示第一行的字符串的X方向的各位置中的黑像素数的曲线L1。此外,在该曲线图中,为了简单化,规定量以上的黑像素数一律以相同的像素数表示。
[0143]在字符存在的位置的垂直线中,存在相对较多的黑像素。另一方面,在字符与字符之间的垂直线(字符不存在的字间区域的垂直线)中,黑像素几乎不存在。
[0144]利用这样的特质,提取部65将具有规定量以上的黑像素数的垂直线存在的范围(X方向的范围)识别为1字符的宽度的范围(宽度方向上的范围)W。例如,从字符“A”的左端到右端的范围被识别为1字符的范围w。接着“A”的各字符1”、“(:”、“0”、‘$”...也相同。而且,在1行字符串的存在范围(行区域)中被识别为字符的存在区域的区域的数被检测为该行区域内的字符数(该行区域所包含的字符的数)。
[0145]此外,通过这样的动作,识别该带状区域(行区域)内的前端的字符的位置和最后尾的字符的位置,由此,包括行区域所包含的1行字符串中从前端的字符(这里,左端的字符)到最后尾的字符(右端的字符)的范围被识别为该1行字符串的存在区域。
[0146]另外,该字符与其右侧的字符的间隔(空隙),详细而言,该字符的右端与该字符的右侧的字符的左端的间隔(空隙)被作为字间间隔(相邻字符间间隔)x计算出。
[0147]如上所述,在步骤S13中,部分区域230的位置以及大小通过图像处理检测出,并且,部分区域230内的字符数也通过图像处理检测。
[0148]在接下来的步骤S14 (图5)中,外部终端50 (指示送出部67等)朝向云服务器90送出(发送)关于部分区域230的处理指示(应该进行OCR处理的主旨的指示)和关于该部分区域230的图像数据。换言之,OCR处理委托被从电子文档生成应用程序110向应用程序120送出。这里,发送了从扫描图像200提取出与该部分区域230对应的部分的图像(部分图像)的图像数据(也称为部分区域230的图像数据)作为关于部分区域230的图像数据。
[0149]此外,应用程序120 (这里是进行OCR处理的OCR处理应用程序)是与电子文档生成应用程序110不同的应用程序。这里,应用程序120是安装于云服务器90并且由云服务器90执行的应用程序。
[0150]若由云服务器90执行中的应用程序120接受(接收)上述的处理指示和关于部分区域230的图像数据,则云服务器90 (应用程序120)基于该处理指示以及图像数据执行OCR处理。
[0151]应用程序120对于从电子文档生成应用程序110接受到的关于该部分区域230的图像数据实施OCR处理,识别该图像数据所包含的字符串(例如“AB⑶E Wireless DigitalRad1graphy”),来生成该字符