编辑装置和编辑方法.pdf

上传人:54 文档编号:268549 上传时间:2018-02-07 格式:PDF 页数:53 大小:13.49MB
返回 下载 相关 举报
摘要
申请专利号:

CN201410072359.X

申请日:

2014.02.28

公开号:

CN104102338A

公开日:

2014.10.15

当前法律状态:

撤回

有效性:

无权

法律详情:

发明专利申请公布后的视为撤回 IPC(主分类):G06F 3/01申请公布日:20141015|||实质审查的生效IPC(主分类):G06F 3/01申请日:20140228|||公开

IPC分类号:

G06F3/01; G06F3/0488(2013.01)I; G06F17/22

主分类号:

G06F3/01

申请人:

株式会社东芝

发明人:

馆森三庆

地址:

日本东京都

优先权:

2013.04.02 JP 2013-077190

专利代理机构:

永新专利商标代理有限公司 72002

代理人:

刘瑜;王英

PDF下载: PDF下载
内容摘要

根据一个实施例,编辑装置包括接收机和控制器。接收机被配置为接收输入数据。控制器被配置为:根据输入数据产生一个或多个可操作的目标对象,通过屏幕接收操作以及通过对操作中指定的目标对象执行编辑处理来产生编辑结果对象。

权利要求书

1.  一种编辑装置,包括:
接收机,其被配置为接收输入数据;以及
控制器,其被配置为:根据所述输入数据产生一个或多个可操作的目标对象,通过屏幕接收操作,以及通过对所述操作中指定的目标对象执行编辑处理来产生编辑结果对象。

2.
  根据权利要求1所述的装置,其中,
所述控制器包括被配置为对两个可操作的目标对象进行连接的连接器,并且
所述连接器被配置为:当操作事件的发生位置在不同于第一目标对象的第二目标对象上时,将所述第一目标对象连接到所述第二目标对象,以产生与所述编辑结果对象相对应的连接的对象,所述第一目标对象是使用呈现在所述屏幕上的单个操作点来指定的。

3.
  根据权利要求1所述的装置,其中,
所述控制器包括被配置为对两个或更多个可操作的目标对象进行组合的组合器,并且
所述组合器被配置为:当同一目标对象并不是使用呈现在所述屏幕上的两个或更多个操作点指定的时,对使用所述两个或更多个操作点指定的多个目标对象进行组合,以产生与所述编辑结果对象相对应的组合的对象。

4.
  根据权利要求1所述的装置,其中,
所述控制器包括被配置为将一个可操作的目标对象分割成多个部分的分割器,并且
所述分割器被配置为:当同一目标对象是使用呈现在所述屏幕上的两个或更多个操作点指定的时,通过将使用所述两个或更多个操作点指定的目标对象分割成多个部分,来产生与多个编辑结果对象相对应的多个分割的对象。

5.
  根据权利要求1所述的装置,其中,所述控制器被配置为:基于确定操作事件的发生位置是否在使用操作点指定的目标对象上,从根据所述输入数据产生的多个目标对象中提取出使用所述操作点指定的目标对象。

6.
  根据权利要求1所述的装置,还包括:语言处理器,其被配置为对与所述目标对象相关联的字符串执行某种语言处理,其中,
所述语言处理器被配置为:以某种单位对与由所述控制器产生的所述编辑结果对象相关联的字符串进行分析,并且通过基于分析结果对错误部分进行校正来产生经校正的句子。

7.
  根据权利要求2所述的装置,其中,所述连接器被配置为:当所述操作事件的发生位置在与所述第二目标对象相关联的字符串上时,在与所述操作事件的发生位置最接近的边界处,将与所述第二目标对象相关联的字符串分割为多个字符或字符串,并且在所述多个字符或字符串之间插入与所述第一目标对象相关联的字符串,以便产生所述连接的对象。

8.
  根据权利要求3所述的装置,其中,所述组合器被配置为:根据使用所述操作点指定的多个目标对象的中心点获得所述多个目标对象的重心,并且当所述重心与所述多个目标对象之间的距离的最大值等于或大于阈值时,对使用所述操作点指定的多个目标对象进行组合,以产生所述组合的对象。

9.
  根据权利要求3所述的装置,其中,所述组合器被配置为:按照使用所述操作点指定的多个目标对象的中心点的坐标的升序顺序,对所述多个目标对象进行排序,并且对排序后的多个目标对象进行组合,以产生所述组合的对象。

10.
  根据权利要求4所述的装置,其中,所述分割器被配置为:使得所述语言处理器以某种单位将与使用所述操作点指定的目标对象相关联的 字符串分割为多个字符或字符串,根据所述操作点的位置来确定所述目标对象的分割位置,通过根据所述分割位置对所述多个字符或字符串进行组合来产生所述分割的对象,并且将产生的分割的对象与所述操作点相关联。

11.
  根据权利要求1所述的装置,其中,所述控制器被配置为:识别所述目标对象的连接方向或组合方向,基于所述识别的结果根据预定义的规则来确定多个目标对象的连接顺序或组合顺序,并且以所确定的连接顺序或所确定的组合顺序对与所述多个目标对象相关联的字符串进行连接或组合。

12.
  根据权利要求1所述的装置,其中,所述控制器被配置为:根据与所述目标对象相关联的字符串的书写方向来确定所述目标对象的连接顺序,并且以所确定的连接顺序来对与所述目标对象相关联的字符串进行连接。

13.
  根据权利要求1所述的装置,其中,所述控制器被配置为:产生所述目标对象,并且产生与所产生的目标对象被同步处理的对象。

14.
  根据权利要求1所述的装置,还包括:显示单元,其被配置为显示目标对象或编辑结果对象,并且接收所述操作。

15.
  一种编辑方法,包括:
接收输入数据;
根据所述输入数据产生一个或多个可操作的目标对象;
通过屏幕接收操作;以及
对所述操作中指定的目标对象执行编辑处理以产生编辑结果对象。

说明书

编辑装置和编辑方法
相关申请的交叉引用
本申请基于2013年4月2日提交的日本专利申请No.2013-077190,并且要求上述日本专利申请的优先权的权益,通过引用的方式将上述日本专利申请的完整内容并入本文。
技术领域
概括地说,本文中描述的实施例涉及编辑装置和编辑方法。
背景技术
随着信息终端的小型化的增加,语音输入已被广泛使用。例如,语音输入被用于诸如信息输入、信息搜索以及语言翻译之类的各种服务。然而,语音输入具有虚假识别的问题。已经提出了校正虚假识别的方法。
然而,传统的方法需要复杂的操作来进行校正,因此缺乏用户友好性。
发明内容
实施例的目标是提供一种能够增强用户便利性的编辑装置。
根据一个实施例,编辑装置包括接收机和控制器。接收机被配置为接收输入数据。控制器被配置为:根据输入数据产生一个或多个可操作的目标对象,通过屏幕接收操作以及通过对操作中指定的目标对象执行编辑处理来产生编辑结果对象。
根据上述编辑装置,可以增强用户便利性。
附图说明
图1是示出根据第一实施例的编辑装置的功能结构的示例性示意图;
图2是示出第一实施例中的对象的显示的示例性示意图;
图3A和3B是示出用于连接第一实施例中的对象的示例性示意图;
图4A和4B是示出用于组合第一实施例中的对象的示例性示意图;
图5A和5B是示出用于分割第一实施例中的对象的示例性示意图;
图6是示出第一实施例中的触摸事件的数据的示例性示意图;
图7是示出第一实施例中的编辑装置的处理过程的示例性流程图;
图8是示出第一实施例中的多点触摸检测例程的处理过程的示例性流程图;
图9A是示出第一实施例中的连接例程的处理过程的示例性流程图;
图9B是第一实施例中使用的示例性日语语句;
图10是示出第一实施例中的用于产生经校正的句子的处理过程的示例性流程图;
图11是第一实施例中的作为形态分析的点阵输出的示例性概念图;
图12A和12B是示出第一实施例中向点阵添加路径的示例性示意图;
图13是示出第一实施例中的组合例程的处理过程的示例性流程图;
图14是示出第一实施例中的操作目标对象提取例程的处理过程的示例性流程图;
图15是示出第一实施例中的触摸事件处理例程的处理过程的示例性流程图;
图16是示出第一实施例中的组合的对象产生例程的处理过程的示例性流程图;
图17是示出第一实施例中的分割例程的处理过程的示例性流程图;
图18是示出第一实施例中的对象分割例程的处理过程的示例性流程图;
图19是第一实施例中的经分割的区域的示例性概念图;
图20是示出第一实施例中的对象的分割的示例性示意图;
图21是示出根据第一实施例的插入连接例程的处理过程的示例性流程图;
图22是示出用于根据第二修改确定两个对象的连接顺序的处理的过程的第一示例性流程图;
图23是示出用于确定第二修改中的两个对象的连接顺序的处理过程的第二示例性流程图;
图24是示出用于确定第二修改中的三个对象的组合顺序的处理过程的示例性流程图;
图25是示出提供翻译服务的示例性示意图;
图26是示出根据第二实施例的编辑装置的功能结构的示例性示意图;
图27是示出第二实施例中的编辑装置的处理过程的示例性流程图;
图28是示出提供产品管理服务的示例性示意图;以及
图29是示出实施例中的编辑装置的结构的示例性示意图。
具体实施方式
下面参照附图详细描述编辑装置、编辑方法和编辑程序的实施例。
第一实施例
概述
下面描述了根据第一实施例的编辑装置的功能(编辑功能)。第一实施例中的编辑装置根据输入数据产生在编辑中可操作的一个或多个对象(操作目标对象)。实施例中的编辑装置显示所产生的对象并且接收手势操作(直观的编辑操作),手势操作指示对象的连接或组合,或者对象的分割。实施例中的编辑装置根据接收到的操作对操作中指定的对象执行连接或组合或者对操作中指定的对象执行分割的编辑处理,并且产生与编辑结果相对应的一个新的对象或多个新的对象(一个编辑结果对象或多个编辑结果对象)。然后,实施例中的编辑装置显示产生的新对象(或者多个产生的新对象)并且将编辑屏幕的内容更新为反映了编辑操作的内容。以这种方式,实施例中的编辑装置可以实现直观的编辑操作。实施例中的编辑装置具有这样的编辑功能。
传统方法的示例使用某种方式来指定虚假识别并且通过在虚假识别删除之后校正输入来校正虚假识别。传统方法的另一个示例显示虚假识别的替换的候选者,并且通过从候选者中选择替换者来校正虚假识别。然而,这些方法需要某种关键操作来进行校正。这种操作对于近来广泛使用的小型信息终端是麻烦的。
诸如智能电话或平板电脑之类的在显示屏上具有触摸传感器的信息终端使得能够根据人的直觉来进行手势操作。对于这种信息终端来说,优选 的是使得虚假识别也能够由直观的操作来校正并且使得编辑能够容易地进行。
实施例中的编辑装置根据输入数据产生对象(每个对象用作编辑操作单元),并且根据通过显示屏接收的手势操作来编辑产生的对象。
实施例中的编辑装置因此可以实现对输入数据的直观操作,从而使得容易执行编辑操作。从而可以减少编辑工作中的负担,例如虚假识别的校正。结果,实施例中的编辑装置可以增强用户(例如,“编辑者”)的便利。
下面描述了实施例中的编辑装置的功能的结构和操作。下面的描述是在示例性情况下做出的,其中对根据输入语音的识别结果产生的文本句子进行了编辑。
结构
图1是示出实施例中的编辑装置100的功能结构的示意图。如图1中所示,实施例中的编辑装置100包括输入接收机11、显示单元12、对象控制器13、对象管理器14以及语言处理器15。
输入接收机11接收输入数据。实施例中的输入接收机11通过根据语音的识别结果产生使得人能够阅读的话语句子的文本来接收输入数据。因此,输入接收机11包括接收语音输入的语音接收机111以及识别输入语音、根据识别结果产生文本并且输出该文本的语音识别器112。例如,语音接收机111接收来自麦克风的语音信号,并且输出经数字化的语音数据。语音识别器112接收输出的语音数据,通过语音识别检测例如句子的间隔,并且获得各个检测出的间隔的识别结果。语音识别器112输出获得的识别结果。从而,输入接收机11使用根据识别结果产生的文本作为输入数据。
例如,显示单元12在诸如显示器的显示屏上显示各种类型的信息。例如,显示单元12通过触摸传感器检测屏幕上的操作(例如,“操作点的接触情况”和“操作点的移动”),并且接收来自检测结果的操作指令。实施例中的显示单元12显示一个或多个在编辑中可操作的对象,并且接收各种类型的编辑操作(诸如对象的连接或组合或者对象的分割)。
对象控制器13控制对一个或多个在编辑中可操作的对象的编辑。对象控制器13根据由输入接收机11接收的输入数据(文本)产生一个或多个在编辑中可操作的对象(每个对象用作可编辑操作单元)。对象控制器13 针对语音识别器112的每一个识别结果产生一个对象。换句话说,对象控制器13针对每一个识别结果产生编辑中的操作目标对象。显示单元12显示产生的对象。对象控制器13执行对产生的对象的连接或组合的编辑处理或者执行对产生的对象的分割的编辑处理。对象控制器13根据由显示单元12接收的操作指令执行对操作中指定的对象的连接或组合的编辑处理,或者执行对操作中指定的对象的分割的编辑处理,并且产生一个新的对象或多个新的对象。因此,对象控制器13包括连接器131、组合器132和分割器133。连接器131将两个对象彼此连接并且产生新的对象(连接的对象)。组合器132将两个或更多个对象进行组合并且产生新的对象(组合的对象)。分割器133将一个对象分割成多个部分并且产生两个或更多个对象(分割的对象)。换句话说,对象控制器13针对每一个编辑操作产生一个编辑结果对象或者多个编辑结果对象。显示单元12在屏幕上显示因此产生的一个新对象或者因此产生的多个新对象,从而导致编辑屏幕的内容被更新为反映了编辑操作的内容。
下面描述由对象控制器13产生的对象。在编辑中用作操作目标的对象是具有识别结果属性以及另一个显示识别结果的显示区域属性的数据。例如,当文本作为识别结果输出时所产生的对象(在下文中被称为“对象O”)具有两个属性:句子属性和形状属性。在这种情况下,句子属性的值(在下文中被称为“句子S”)是使用文本(字符或字符串)表达的句子(识别结果)。形状属性的值是表示文本在屏幕上显示的显示区域的形状的坐标。具体来说,该值是坐标系中的一组两个坐标点P和Q,该坐标系具有位于屏幕左上角处的原点、正方向为在水平方向上向右的x轴以及正方向为在垂直方向上向下的y轴。它们在坐标系中被表示为P=(x1,y1)并且Q=(x2,y2),(x1<x2并且y1<y2)。该组坐标点P和Q在下文中被称为“形状[P,Q]”。形状属性的两个坐标值唯一地确定具有以下四个角的矩形:左上角(x1,y1)、右上角(x2,y1)、右下角(x2,y2)和左下角为(x1,y2)。形状[P,Q]表示对象O的区域(对象区域)是矩形。在下面的描述中,对象O(其具有各个属性的值,句子S和形状[P,Q])被表示为{S,[P,Q]}。坐标点P和Q的中点(=(P+Q)/2)被称为对象O的中心点或者对象O的坐标。当对象O具有作为句子S的识别结果时,声明被表达为“句子S与对象O相关联” 或者“对象O与句子S相关联”。
用下面的方式来确定对象O的形状属性[P,Q]。图2是示出实施例中的对象的显示的示例的示意图。图2示出了对象的示例性显示,所述对象与三个相应的句子A、B和C相关联,这三个句子与相应的识别结果相对应。在这种情况下,这些字符中的所有字符具有相同的宽度w和相同的高度h,并且与对象O相关联的句子S是具有n个字符的字符串。
坐标点Q由下面的公式(1)和(2)来表示(计算)。
Q的x坐标=坐标点P的x坐标+w×n   (1)
其中,w是字符的宽度,并且n是字符的数量。
Q的y坐标=坐标点P的y坐标+h   (2)
其中,h是字符的高度。
当显示N个对象时,坐标点P由下面的公式(3)和(4)来表示(计算)。
P的x坐标=ws   (3)
其中,ws是从屏幕的左端到对象O的距离。
P的y坐标=N×h+N×hs   (4)
其中,N是对象的数量,h是字符的高度,而hs是对象之间的间距。
以这种方式,从距屏幕左端的一定距离ws向右顺序地显示由对象控制器13产生的对象,其中对象之间具有一定的间距hs。因此,与识别结果相对应的句子S以水平书写的方式显示在对象O的矩形[P,Q]内部。
屏幕的宽度是有限的。在如上所述的坐标的确定中,例如当句子S的字符的数量n超过屏幕的侧宽或者显示在屏幕上的对象的数量N增加时,对象O可能在垂直方向上在屏幕之外。在这种情况下,显示单元12可以执行下面的显示处理。例如,当对象O显示在屏幕的下端以下时,将屏幕向上滚动对象O的高度h,从而使得对象O显示在屏幕上。当对象O的水平宽度(w×n)的一部分在屏幕之外时,提供多个行(每行具有对象O的高度h),使得对象O全部显示在屏幕中。以这种方式,显示单元12可以根据对象O要在其中显示的屏幕区域来执行处理,从而使得对象O全部显示在屏幕中。
返回参照图1,对象管理器14管理对象。对象管理器14从对象控制器 13接收产生的对象,并且将它们存储和保存在存储区域中。例如,对象的存储区域是包括在编辑装置100中的存储设备中的某个存储区域。对象管理器14根据来自对象控制器13的指令对对象执行诸如数据参考、数据读取或数据写入之类的各种类型的数据操作。
语言处理器15对与识别结果相对应的句子S执行语言处理。例如,语言处理器15将句子S分解成诸如词语或语素之类的某些单元。在该处理进行分解之后,语言处理器15根据语言对句子S执行语法校正(诸如字符校正或标点符号插入)。
下面描述了通过上述相应功能模块的协同操作实现的编辑操作。
操作示例
实施例中的编辑功能提供了可以对对象执行连接、组合和分割的各种类型的编辑操作的环境。对象的连接操作是连接两个对象并且产生新对象(连接的对象)的操作。对象的组合操作是组合两个或更多个对象并且产生新对象(组合的对象)的操作。对象的分割操作是对一个对象进行分割并且产生两个或更多个对象(经分割的对象)的操作。以这种方式,实施例中的编辑功能提供了可以实现直观的编辑操作的环境。
图3A和3B是示出对实施例中的对象进行的连接操作的示例的示意图。如图3A中所示,当对两个对象进行连接时,用户首先用手指触摸显示在屏幕上的对象O(在图3A中使用实心圆来指示触摸到了的情况)以便指定用户希望将其连接到另一个对象的对象O。然后,用户向用作连接的目标的另一个对象移动手指,同时保持手指在屏幕上触摸(在图3A中使用虚线来指示运动的轨迹),并且此后,在用作目标的对象O处抬起手指来指示对对象的连接操作。当接收到指令时,对象控制器13根据接收到的指令将这两个对象连接到彼此。语言处理器15在连接之后对新对象执行语法字符校正。结果,如图3B中所示,在字符校正之后,与这两个对象相对应的相应的句子S作为一个句子(连接的句子,其中,句子201(在英语中的意思是come)被校正为句子202(在英语中的意思是wear),句子201和202二者在日语中的发音都是“kite imasu”)显示在屏幕上。
图4A和4B是示出对实施例中的对象进行的组合操作的示例的示意图。如图4A中所示,当对三个对象进行组合时,用户首先使用相应的手指 (图4A中的实心圆)来触摸显示在屏幕上的对象以便指定要组合的相应对象。然后,用户将三个手指移动到屏幕上的相同位置,同时保持三个手指在屏幕上触摸(图4A中的虚线),并且此后,在该位置处抬起这三个手指来指示对对象进行组合处理。当接收到指令时,对象控制器13根据接收到的指令将这三个对象进行组合。语言处理器15在组合之后对新对象执行语法字符校正。结果,如图4B中所示,在字符校正之后与这三个对象相对应的相应的句子S作为一个句子(组合的句子)显示在屏幕上。
图5A和5B是示出对实施例中的对象进行的分割操作的示例的示意图。如图5A中所示,当将对象分割为三个新对象时,用户首先使用三个手指(图5A中的实心圆)来触摸显示在屏幕上的对象,以便指定分割后的新对象。然后,用户将三个手指移动到屏幕上彼此不同的位置同时保持三个手指在屏幕上触摸(图5A中的虚线),并且此后,在这些位置处抬起这三个手指来指示对对象进行分割处理。当接收到指令时,对象控制器13根据接收到的指令将该对象分割为三个新对象。从而,如图5B所示,与该对象相关联的句子S作为指定的三个句子(经分割的句子)显示在屏幕上。
以下面的方式来实现这种编辑操作。例如,显示单元12通过触摸传感器在屏幕上检测诸如手指之类的操作点(屏幕上的触摸的坐标)以便接收屏幕上的操作。显示单元12向对象控制器13通知以这种方式接收的操作作为操作事件。然后,对象控制器13识别针对检测到的操作点中的每一个操作点的操作事件。从而,例如,对象控制器13识别出触摸事件(诸如在手势操作中手指在屏幕上的某个点上的触摸、手指向屏幕上的某个点的移动、或者手指从屏幕上的某个点抬起),并且获得触摸事件以及与该事件相对应的信息。
图6是示出实施例中的触摸事件的数据的示例的示意图。对象控制器13获得图6中所示的数据,该数据与相应的触摸事件相对应。例如,当触摸事件是“下推”时,获得触摸发生的时间、屏幕上的操作点的坐标(x,y)以及操作点的标识符作为数据。例如,当触摸事件是“移动”时,获得移动开始时间、屏幕上的移动目的地的坐标(x,y)以及操作点的标识符作为数据。例如,当触摸事件是“上推”时,获得抬起手指的时间、屏幕上的操作点的最终坐标(x,y)以及操作点的标识符作为数据。例如,可以通过包括在 基本软件(诸如操作系统(OS))或多点触摸平台中的应用程序接口(API)来获得这种信息。换句话说,对象控制器13可以使用已知的系统获得关于接收到的编辑操作的信息。
下面描述由实施例中的编辑装置100执行的编辑功能的基本处理
处理
图7是示出实施例中的编辑装置100的处理过程的示例的流程图。图7中示出的处理主要由对象控制器13执行。如图7中所示,实施例中的对象控制器13执行多点触摸检测例程(步骤S1)来检测在屏幕上触摸的操作点中的所有操作点。然后,对象控制器13基于操作点的数量N来确定是否有一个或多个检测到的操作点(在步骤S2中是确定是否N≠0)。如果没有检测到操作点(在步骤S2处为否),那么对象控制器13结束该处理。如果检测到一个或多个操作点(在步骤S2处为是),那么对象控制器13确定N是否是两个或更多个(在步骤S3处是否N>1)。如果N为1(在步骤S3处为否),那么对象控制器13执行连接例程(步骤S4),并且在此后结束该处理。如果N为两个或更多个(在步骤S3处为是),那么对象控制器13确定N个操作点中的所有操作点是否在相同的对象中(步骤S5)。如果N个操作点不在相同的对象中(在步骤S5处为否),那么对象控制器13执行组合例程(步骤S6),并且在此后结束该处理。如果N个操作点在相同的对象中(在步骤S5处为是),那么对象控制器13执行分割例程(步骤S7),并且在此后结束该处理。
细节
下面描述了该处理的细节。
由对象控制器13执行的处理的细节
图8是示出实施例中的多点触摸检测例程的处理过程的示例的流程图。图8中示出的处理是图7中示出的步骤S1处的处理的示例。在实施例中的多点触摸检测例程中,另一个触摸的检测被等待从触摸第一操作点时开始经过时间Te,并且将在经过时间Te期间触摸的操作点记录在阵列p中以便检测一个或多个被触摸的操作点。
如图8中所示,实施例中的对象控制器13首先等待监测到触摸事件(操作事件)(在步骤S10处为否)。如果检测到第一触摸事件(在步骤S10 处为是),那么对象控制器13确定该事件为“下推”事件。对象控制器13将检测到的操作点的标识符设置为id1,并且将阵列p[1]设置为{id1,(x1,y1)}(步骤11)以便将操作点的标识符与操作点的坐标相关联。然后对象控制器13在自从检测到第一触摸事件以来的经过时间Te内等待检测到下一个触摸事件(在步骤S12处为是并且在步骤S13处为否)。如果检测到下一个触摸事件(在步骤S13处为是),那么对象控制器13识别检测到的触摸事件的类型(步骤S14)。如果在经过时间Te内没有检测到下一个触摸事件(在步骤S12处为否),那么对象控制器13结束该处理。
当检测到的触摸事件的类型为“下推”事件时,对象控制器13将N递增1,作为与阵列p[1]同时被触摸到的操作点。对象控制器13将作为{idN,(xN,yN)}的阵列p[N]加到阵列p(步骤15)。当检测到的触摸事件是“上推”事件(手指立刻触摸对象并且立刻从该对象上抬起的情况)时,对象控制器13确定操作点p[n']为手指抬起的操作点(步骤S16)。然后,对象控制器13从阵列p[n](n=1,...,N)中删除操作点p[n'](其是手指抬起的操作点),并且对阵列数量重新计数(步骤S17),并且然后将N设置为N-1(步骤S18)。当检测到的触摸事件的类型为“移动”事件时,对象控制器13认为该事件是手指在操作中的晃动,并且不考虑检测到的触摸事件(步骤S19)。结果,在多点触摸检测例程完成之后获得了阵列p[n]={idn,(xn,yn)}(n=1,...,N),在该阵列中记录了检测到的操作点。
连接处理
图9是示出实施例中的连接例程的处理过程的示例的流程图。图9中示出的处理是图7中示出的步骤S4处的处理的示例。在实施例中的连接例程中,两个对象彼此连接并且因此产生了连接的对象,该例程由包含在实施例中的对象控制器13中的连接器131来执行。
当在多点触摸检测例程中检测到被触摸的操作点时,实施例中的对象控制器13执行连接例程。
如图9中所示,对象控制器13接收检测到的操作点p[1]={id1,(x1,y1)}。连接器131确定操作点p[1]是否在对象中(包括在对象的边界线上)(步骤S20)。
如果操作点p[1]不在对象中(在步骤S20处为否),那么连接器131 确定没有指定对象,并且然后结束该连接例程。
可以以下面的方式来进行上述确定。确定某点A=(ax,ay)是否是位于对象中(包括在对象的边界线上)的点可以基于“点P≤点A并且点A≤点Q”来进行,其中,对象O={S,[P,Q]}的点P和Q的坐标为P=(px,py)并且Q=(qx,qy)。点P≤点A的不等式意味着“px≤ax并且py≤ay”。换句话说,点P≤点A的不等式意味着“在屏幕上点P位于点A的左上方”。点P是对象O的矩形显示区域的左上端点,而点Q是该矩形显示区域的右下端点。因此,如果“点P≤点A并且点A≤点Q”,则确定点A在矩形[P,Q]中或者在其边界线上。在下面的描述中,该确定方式被称为内点确定方式。
如果操作点p[1]在对象中(在步骤S20处为是),那么连接器131识别对象O1={S1,[P1,Q1]},在其中具有操作点p[1](步骤S21)。连接器131确定检测到操作点p[1]包括在该对象O1中。例如,显示单元12可以根据从对象控制器13接收的指令,通过将对象O1的显示颜色改变成与屏幕上的其它对象的颜色不同的颜色来改变显示形式,从而使得用户可以看出对象O1处于操作目标状态。
然后,连接器131等待检测到操作点p[1]的“上推”事件(在步骤S22处为否)。如果检测到“上推”事件(在步骤S22处为是),那么连接器131使用内点确定方式,针对存储在对象管理器14中的对象中的除了对象O1以外的所有对象来确定操作点p[1]的事件发生位置(x,y)(其是抬起手指处的坐标)是否在不同于对象O1(第一目标对象)的对象O2(第二目标对象)中(步骤S23)。该确定是仅基于手指最终抬起处的位置做出的,而不考虑手指的移动路线。
如果操作点p[1]的事件发生位置(x,y)在对象O1中或者不在这些对象中的任何一个对象中(在步骤S23处为否),那么连接器131结束该连接例程。如果操作点p[1]的事件发生位置(x,y)在不同于对象O1的对象O2={S2,[P2,Q2]}中(在步骤S23处为是),那么连接器131将对象O1和对象O2连接到彼此,并且然后使得语言处理器15产生连接句子S1和句子S2的句子(连接的句子)的经校正的句子S(步骤S24)。在句子的连接中,连接器131执行下面的处理。
当在连接操作中的移动之后对象O1在对象O2上时,连接器131将句子S2连接到句子S1。当在连接操作中的移动之后对象O2在对象O1上时,连接器131将句子S1连接到句子S2。从而,产生了连接的句子S'。具体来说,当S1是句子J001(图9B)并且S2是句子J002时,句子S2连接到句子S1之后的句子S'是J003。相反,句子S1连接到句子S2之后的句子S'是J004。语言处理器15对连接的句子S'执行语法校正。语言处理器15通过语言处理(诸如校正日语中的同音字、校正英语中的格(case)、或者不管何种语言插入标点符号)校正或形成句子S'(连接的句子)。然后,连接器131确定与经校正的句子S相关联的新对象O的形状。在该确定中,将点P设置为点P1或点P2中的y坐标小于另一个的y坐标的任意一点(设置为屏幕上侧的点)。例如,连接器131根据点P的坐标(x,y)、经校正的句子S的字符的数量n、字符的宽度w以及字符的高度h来计算右下端点Q。从而,确定新对象O的形状。
然后,连接器131根据经校正的句子S以及与经校正的句子S相关联的新对象O的形状来产生新对象O={S,[P,Q]}(步骤S25)。随后,连接器131从对象管理器14中删除用于连接的对象O1和对象O2,并且将产生的新对象O存储在对象管理器14中(步骤S26)。连接器131指示显示单元12从屏幕上删除用于连接的对象O1和对象O2,并且显示产生的新对象O(步骤S27)。
图10是示出实施例中的用于产生经校正的句子S的处理过程的示例的流程图。图10中示出的处理是图9中示出的连接例程的在步骤S24处执行的处理的示例。实施例中的语言处理器15对句子S执行语法校正(诸如字符的校正或标点符号的插入)。例如,当用户说出句子J005时(图9B)(英语的I wear a long sleeved-shirt),在该句子中在逗号的位置处给出停顿,该发音被识别成两种发音,因此,语音识别结果是句子J001和句子J002(英语的come)。使用同音词错误地识别了句子J002的结果,这是因为该发音被分隔成了两个发音。当翻译这两个句子时,也没有适当地对它们进行翻译,这是因为翻译目标句子是不完整的。传统地,当这种虚假识别发生时,用户需要再次说出相同的句子。然而,发音可能再次被错误地进行语音识别,或者可能在发音中再次不由自主地给出停顿,并且从而导致了虚假识 别。鉴于这种情况,希望自动校正诸如同音词之类的语法错误,例如将句子J002(英语的come)校正为句子J006(英语的wear)。实施例中的语言处理器15通过执行下面的处理来实现这种校正功能。
如图10中所示,实施例中的语言处理器15首先接收连接的句子S'。随后,语言处理器15对连接的句子S'执行形态分析,并且产生点阵(步骤S30)。图11是实施例中的作为形态分析的结果的点阵输出的概念图。图11示出了当连接的句子S'是句子J003时所产生的点阵的示例。
返回参照图10,语言处理器15然后向产生的点阵添加同音词的平行路径(步骤S31)。图12A是示出实施例中向点阵添加路径的示例的示意图。图12A示出了将字符1201(hiragana)和字符1203(kanji,其在英语中的意思是wear)添加到字符1202(kanji,其在英语中的意思是come)作为同音词的示例。
返回参照图10,语言处理器15然后向产生的点阵的弧线中的所有弧线添加标点路径(步骤S32)。图12B示出了将字符1211和字符1212的标点路径添加到字符1213与字符1214之间的弧线的示例。
返回参照图10,语言处理器15然后通过N元语法对经过如上所述处理的点阵赋予分数(步骤S33)。然后,语言处理器15通过三元语法来计算点阵结构的分数,并且通过维特比(Viterbi)算法计算从连接的句子S'的开头到结尾的最优路径(具有最高分数的路径)(步骤S34)。通过三元语法得到的来自语素1、语素2和语素3的路径的分数与语素1、语素2和语素3顺序发生的概率相对应。该概率是提前通过统计获得的(标点符号也被认为是语素)。当概率被表示为P时(语素3|语素1,语素2),通过语素1到语素N的从连接的句子S'的开头到结尾的路径的分数由下面的公示(5)来表示(计算)。
路径的分数=Σlog P(语素n|语素n-2,语素n-1)   (5)
其中,n=1,...,N+1。在这里,假定语素-1和0二者都是句子S'的开头,并且假定语素N+1是句子S'的结尾。语言处理器15输出计算出的最优路径的语素串作为经校正的句子S。
当语言处理器计算出分数P(字符1203(英语的wear)|字符1213,字符1214)和分数P(字符1202(英语的come)|字符1213,字符1214) 时,分数P(字符1203(英语的wear)|字符1213,字符1214)比分数P(字符1202(英语的come)|字符1213,字符1214)更高(具有更高的概率)。因此,输出的经校正的句子S是句子J005(图9B)(英语的I wear a long sleeved-shirt),其中,连接的句子S'中的字符1202(英语的come)被校正了。以这种方式,在实施例中根据以下语言规范(上下文和知识)自动执行了校正:相对于字符1213(英语的shirt),句子J002(英语的come)是错误的,而句子J006(英语的wear)是正确的。从而,该实施例能够进行校正操作,从而减少文本输入,并且不需要繁重的编辑工作。
在一些情况下,作为结果,上述处理可以输出与连接的句子S'相同的经校正的句子S,这意味着没有进行校正。当在不同的情况下添加词语作为平行路径时,可以在英语和日语二者中以与同音词相同的方式对用英语描述的大写字母和小写字母进行校正。上面描述了算法的示例来解释句子S是可以被校正的。然而,校正方式不局限于该示例。已知的文本校正方式也是适用的。
组合处理
图13是示出实施例中的组合例程的处理过程的示例的流程图。图13中示出的处理是图7中示出的步骤S6处的处理的示例。在实施例中的组合例程中,对两个或更多个对象进行组合并且产生了组合的对象,该例程由包含在对象控制器13中的组合器132来执行。
当在多点触摸检测例程中检测到两个或更多个(K≥2)被触摸的操作点,并且检测到的操作点中的所有操作点不在相同的对象中时,实施例中的对象控制器13执行组合例程。
如图13中所示,对象控制器13接收检测到的操作点p[k]=(xk,yk)(k=1,...,K)。组合器132首先通过操作目标对象提取例程来提取将检测到的操作点包括在其中(包括其边界线)的对象(步骤S40)。
从而,组合器132接收操作目标对象提取例程的输出(一组操作点)Q={(q[1],O[1]),...,(q[M],O[M])},并且产生各个对象O[m](m=1,...,M)的拷贝O'[m],并且获得Q={(q[1],O[1]),O'[1]),...,(q[M],O[M],O'[M])}。q[m]={idm,(xm,ym)}表示包括在p[k]以外的对象中的任何一个对象中的操作点。O[m]表示包括q[m]的对象。O'[m]表示包括q[m]的对象的拷贝。对象O 是用手指触摸的对象。对象O'是用于在其中存储在根据手指的移动的移动之后的对象的位置的拷贝。m是1,...,M。当检测到“上推”事件(手指抬起并且操作完成)时,组合器132将Obj初始化为Obj={}(将Obj设置为没有元素的集合),Obj用于保留一个或多个对象(步骤S41)。
然后,组合器132确定提取的对象的数量M是否为2或更多(M>1)(步骤S42)。如果M为1(在步骤S42处为否并且在步骤S43处为是),那么组合器132前进到连接例程(步骤S44),这是因为操作点指定了一个对象。如果M为0(在步骤S42处为否并且在步骤S43处为否),那么组合器132结束该处理。如果M为2或更多(在步骤S42处为是),如果没有手指从这些操作点中的所有操作点处抬起并且在屏幕上存在被触摸的操作点(在步骤S45处为是,即,M>0),那么组合器132检测操作点q[l]的触摸事件(步骤S45到步骤S47)。然后,组合器132执行触摸事件处理例程(步骤S48)。在触摸事件处理例程中每检测到一个“上推”事件,则将M递减1。
如果手指从这些操作点中的所有操作点处抬起并且在屏幕上不存在被触摸的操作点,这意味着操作完成(在步骤S45处为否,即,M=0),那么组合器132执行组合对象产生例程(步骤S49)。
图14是示出实施例中的操作目标对象提取例程的处理过程的示例的流程图。图14中示出的处理是图13中示出的组合例程的步骤S40处的处理的示例。实施例中的操作目标对象提取例程提取包括检测到的操作点的对象。
如图14中所示,实施例中的组合器132接收检测到的操作点p[k]=(xk,yk)(k=1,...,K)。组合器132对提取的对象的数量M进行初始化(M=0)。K表示检测到的操作点的数量。组合器132针对检测到的操作点p[k](k=1,...,K)中的所有操作点(步骤S50,在步骤S51处为是,以及步骤S52)使用内点确定方式来确定是否存在包括操作点p[k]的对象(步骤S53)。如果存在包括操作点p[k]的对象(在步骤S53处为是),那么组合器132确定包括操作点p[k]的对象是否存在于存储了保存在对象管理器14中的多个对象的阵列O[m](m=1,...,M)中(步骤S54)。如果包括操作点p[k]的对象没有存在于阵列O[m](m=1,...,M)(其是一组对象)中(在步骤S54 处为否),那么组合器132添加操作点p[k]作为记录提取的对象的操作点(操作完成后的目的地)的阵列q[M](其是第(M+1)个元素)。组合器132还添加包括操作点p[k]的对象作为阵列O[M],其为第(M+1)个元素。从而,组合器132提取了操作目标对象。然后,组合器132将M递增1(在步骤S55处M+1)。组合器132以上述方式对检测到的操作点p[k]中的所有操作点进行处理,并且输出Q={(q[1],O[1]),...,(q[M],O[M])}作为操作目标对象的提取结果。
操作点p[k]可能是在相同对象上被冗余触摸的操作点。操作点p[k]可能不指定对象。在操作目标对象提取例程中,获得Q={(q[1],O[1]),...,(q[M],O[M])},从而使得一个操作点与一个对象相对应,这排除了上述情况。
图15是示出实施例中的触摸事件处理例程的处理过程的示例的流程图。图15中示出的处理是图13中示出的组合例程的步骤S48处的处理的示例。实施例中的触摸事件处理例程对检测到的触摸事件(操作事件)进行处理。
如图15中所示,实施例中的组合器132接收提取的对象O=O[l]、对象O'=O'[l](其是提取的对象O的拷贝)以及q=q[l](其是提取的对象O的操作点)(操作完成后的目的地)。Obj保留当前提取的对象。M是当前提取的对象的数量。组合器132识别对象O的操作点q的触摸事件的类型(步骤S60)。如果操作点q的触摸事件是“移动”事件,那么组合器132基于操作点q在移动之前的坐标(u,v)和操作点q在移动之后的坐标(x,y)来计算该操作点的移动量Δ=(Δx,Δy)=(x-u,y-v)(步骤S61)。然后,组合器132在移动之后将操作点q的坐标更新为坐标(x,y)(步骤S62)。然后,组合器132将对象O'(其是提取的对象O的拷贝)的形状[P,Q]更新如下:P=P+Δx并且Q=Q+Δy(步骤S63)。从而,对象O'(其是提取的对象O的拷贝)根据操作点q的移动量来移动。在“移动”事件的更新中,显示单元12可以将被触摸的对象O移动到运动后的位置,并且在该位置处对其进行显示。如果操作点q的触摸事件是“上推”事件,那么组合器132基于确定对对象O的操作完成而向Obj注册(O[l],O'[l])(步骤S64)。然后,组合器132从Q中删除(q[l],O[l],O'[l])(步骤S65),并且将M递减1(步骤S66)。在图15中示出的公式“A=A∪{B}”中,∪表示并集,其意 味着元素B被注册到(添加到)集合A中。在下面的描述中,以同样的方式来使用这样的公式。
图16是示出实施例中的组合对象产生例程的处理过程的示例的流程图。图16中示出的处理是图13中示出的组合例程的步骤S49处的处理的示例。实施例中的组合对象产生例程对提取的多个对象进行组合并且产生新对象。
如图16中所示,实施例中的组合器132接收Obj={(O[1],O'[1]),...,(O[M],O'[M])},Obj保留提取的多个对象。M是提取的对象的总的数量。组合器132首先将提取的对象O[m]的中心点设置为C[m](m=1,...,M),并且将C[m]的重心C设置为(C[1]+...+C[M])/M。组合器132将从重心C到各个对象O[m]的距离的最大值R设置为max{|C-C[1],...,C-C[M]|}。组合器132将对象O'[m](其为提取的对象O[m]的拷贝)的中心点设置为C'[m],并且将C'[m]的重心C'设置为(C'[1]+...+C'[M])/M。组合器132将从重心C'到各个对象O'[m]的距离的最大值R'设置为max{|C'-C'[1],...,C'-C'[M]|}(步骤S70)。R和R'之间的差(R-R')意味着在操作之前和之后,提取的对象移动到重心有多近。R'越小移动量越大。因此,组合器132确定R'的值小于通过将某个阈值THR与R的值相加获得的值的条件是否被满足(步骤S71)。
如果该条件不被满足(在步骤S71处为否),那么组合器132在不对提取的对象进行组合的情况下结束该处理。例如,考虑到当用户触摸屏幕一次但是此后由于用户想法的变化而从屏幕上抬起手指而不发生任何变化时发生手指的微小移动,该条件防止执行组合处理,除非检测到等于或大于某个阈值THR的移动为止。
如果该条件被满足(在步骤S71处为是),那么组合器132确定检测到足够的移动量。组合器132以中心点C[m]的y坐标的升序(C[m]的y坐标<C[m+1]的y坐标)对提取的对象O[m]中的所有的提取的对象进行排序,以便确定要对句子S进行组合的组合顺序。组合器132在排序之后将阵列O[m]重新设置为提取的对象O[m](m=1,...,M)(步骤S72)。提取的对象可能不总是垂直地排列成一行,而是也可以水平排列(y坐标相同)或不规则排列。为了解决这些情况,当y坐标相同时,组合器132可以以中 心点C[m]的x坐标的升序(C[m]的x坐标<C[m+1]的x坐标)对提取的对象进行排序。
然后,组合器132产生组合的句子S'=S[1]+...+S[M],其中,按照排序顺序从显示在屏幕上侧的句子S开始依次地组合句子S。组合器132使得语言处理器15产生所产生的组合句子S'的经校正的句子S(步骤S73)。然后,组合器132根据经校正的句子S以及组合的多个对象中的位于左边最上侧处的对象的形状来计算新对象的形状[P,Q](步骤S74)。
然后,组合器132根据经校正的句子S和计算出的形状[P,Q]来产生新对象O={S,[P,Q]}(步骤S75)。随后,组合器132从对象管理器14中删除用于组合的多个对象O[m],并且将产生的新对象O存储在对象管理器14中(步骤S76)。然后,组合器132指示显示单元12从屏幕上删除用于组合的多个对象O[m],并且显示产生的新对象O(步骤S77)。
分割处理
图17是示出实施例中的分割例程的处理过程的示例的流程图。图17中示出的处理是图7中示出的步骤S7处的处理的示例。在实施例中的分割例程中,分割一个对象O并产生多个对象,该例程由包含在对象控制器13中的分割器133来执行。
当在多点触摸检测例程中检测到两个或更多个(K≥2)被触摸的操作点,并且检测到的操作点中的所有操作点在相同的对象O中时,实施例中的对象控制器13执行分割例程。
如图17中所示,对象控制器13接收检测到的操作点p[k]=(xk,yk)(k=1,...,K)。分割器133首先以与在组合例程中的步骤S41处执行的相同的方式产生对象O'(其是包括检测到的操作点p[k]的对象的拷贝),并且将操作点的集合Q设置为Q={(q[1],O,O'),...,(q[K],O,O')}(步骤S80)。
然后,分割器133使用操作点的集合Q作为输入来执行对象分割例程(步骤S81)。从而,分割器133从对象分割例程接收输出Q={(q[1],O[1],O'[1]),...,(q[L],O[L],O'[L])}(其中操作点和分割的区域彼此相关联)、将保留经分割的对象的Obj初始化成Obj={}(将Obj设置为没有元素的集合)、并且将对象的数量M设置为L(其是分割的数量)(步骤S82)。
然后,分割器133确定M是否为1或更多(M>0)(步骤S83)。如 果M为1或更多(在步骤S83处为是),那么分割器133等待在集合Q的操作点q[1],...,q[L]中的任何一个操作点处发生触摸事件(在步骤S84和步骤S85处为否),并且如果检测到触摸事件(在步骤S84和步骤S85处为是),那么执行触摸事件处理例程(步骤S86)。从而,Obj和M由触摸事件处理例程的输出更新。
如果M为0(在步骤S83处为否),那么分割器133确定操作点中的所有操作点由“上推”事件结束,并且因此操作结束。分割器133将当时最左边的对象O[1]和最右边的对象O[L]分别移动到对象O'[1]和对象O'[L],对象O'[1]和对象O'[L]是对象O[1]和对象O[L]的各自拷贝。分割器133确定O'[1]和O'[L]的中心点之间的距离比O[1]和O[L]的中心点之间的距离大某个距离THD或更多的条件是否被满足(步骤S87)。
如果不满足该条件(在步骤S87处为否),那么分割器133结束该处理。如果满足该条件(在步骤S87处为是),那么分割器133从对象管理器14中删除分割前的对象O,并且将经分割的对象O'[1]存储在对象管理器14中(步骤S88)。然后,分割器133指示显示单元12从屏幕上删除分割前的对象O,并且显示经分割的对象O'[1](步骤S89)。显示单元12可以以对齐的方式来显示经分割的对象O'[1]。
图18是示出实施例中的对象分割例程的处理过程的示例的流程图。图18中示出的处理是图17中示出的分割例程的步骤S81处的处理的示例。在实施例中的对象分割例程中,根据操作点的位置来确定对象O的分割位置、根据分割位置来分割指定的对象O、产生多个新对象并且使所产生的对象和操作点与彼此关联。
如图18中所示,实施例中的分割器133接收Q={(q[1],O,O'),...,(q[K],O,O')},其是操作点的集合。K是检测到的操作点的总的数量。分割器133首先以y坐标的升序(q[k]的y坐标<q[k+1]的y坐标)对集合Q中的操作点q[k]进行排序。分割器133在排序之后将阵列Q[k]重新设置为Q={(q[1],O,O'),...,(q[K],O,O')},其是操作点的集合(步骤S90)。当y坐标相同时,分割器133可以以x坐标的升序(q[k]的x坐标<q[k+1]的x坐标)对集合Q中的操作点q[k]进行排序。
然后,分割器133使语言处理器15基于某种单元(例如,“词”或“语素”) 对句子S进行分割,并且从句子的开头依次获得经分割的结果S[1],...,S[l](步骤S91)。
然后,分割器133计算对象O上的经分割的结果S[i-1]与S[i]之间的边界线[A[i],B[i]](i=1,...,l)(步骤S92)。A[i]是经分割的结果S[i-1]与S[i](1≤i≤l)之间的边界线的上端点,而B[i]是经分割的结果S[i-1]与S[i](1≤i≤l)之间的边界线的下端点。当S[i-1]与S[i]之间的边界设置在距离句子的开头第(X+1)个字符处时(第X个字符是S[i-1]并且第(X+1)个字符是S[i]),对象O的形状为[P,Q]。A[i]和B[i]的各自坐标由下面的公式(6)和(7)来表示(计算)。
A[i]=(w×X,P的y坐标)     (6)
B[i]=(w×X,Q的y坐标)     (7)
其中,w是字符的宽度,而X是从句子的开头到边界的字符的数量。此外,作为下面处理的必要设置,A[0]是对象O的形状[P,Q]的左上端点P,而B[i+1]是对象O的形状[P,Q]的右下端点Q。
图19是实施例中的经分割的区域的概念图。图19示例性地示出了当句子1901被分割成三个语素时的两个边界线[A[1],B[1]]和[A[2],B[2]]。矩形R[i]被定义为[A[i],B[i+1]],并且与对象O的经分割的区域相对应。与经分割的区域相对应的经分割的对象O[i]被表示为O[i]={S[i],[A[i],B[i]]}(i=1,...,I)。
返回参照图18,分割器133对经分割的区域的索引s进行初始化(s=0),并且还对标志[i](i=1,...,I)进行初始化(标志[i]=0),当经分割对象O包括操作点时,将标志[i]中的每一个设置为1。分割器133将与操作点相关联的对象的集合Q'初始化为Q'={}(将Q'设置为没有元素的集合),并且将x(Q的元素的数量)设置为0(步骤S93)。
然后,分割器133使用内点确定方式以顺序k=1,...,K(步骤S95)相对于操作点p[k](k=1,...,K)中的所有操作点(如果在步骤S94处为是)来识别包括p[k]的经分割的区域R[i](步骤S96)。
然后,分割器133确定与经分割的区域相对应的标志[i]是否为0(在步骤S97处为否),并且如果标志[i]为1(在步骤S97处为否),那么确定经分割的区域R[i]已经与其它操作点相关联。因此,分割器133不执行关联以 防止重复的关联。
如果标志[i]为0(在步骤S97处为是),那么分割器133确定经分隔的区域R[i]不与任何操作点相关联。分割器133将x递增1(在步骤S98处x+1),并且将经分割的对象O[x]设置为经分割的结果{S[s]+S[s+1]+...+S[i],[A[s],B[i]]}。分割器133在操作点的集合Q'中注册(q[x],O[x],O'[x])(步骤S99)。q[x]与操作点p[x]相对应。O'[x]与是对象O[x]的拷贝的对象相对应。S[s]与包括在经分割的区域R[i]中的经分割的字符或经分割的字符串相对应。分割器133对标志[i]设置1,并且对经分割的区域的索引s设置(i+1)(步骤S100)。
如果对操作点p[k]中的所有操作点执行上述处理(在步骤S94处为否),那么分割器133将分割的数量x设置为L,并且将由操作点q[L]指示的经分割的区域设置为经分割的区域R[J]。分割器133对经分割的区域R[J+1],R[J+2],...,R[I](其是基于某种单元分割的)进行组合,并且产生对象O[L]的区域。分割器133将与对象O[L]相关联的句子S[L]设置为经分割的结果S[L]=S[J+1]+S[J+2]+...+S[I](组合经分割的结果的字符串),其包括基于某种单元分割的结果,并且将Q[L]设置为对象O的右下端点Q。分割器133将对象O'[L]设置为更新的对象O[L]的拷贝(步骤S101)。作为处理的结果,分割器133输出L、Q的元素的数量、以及Q={(q[1],O[1],O'[1]),...,(q[L],O[L],O'[L])}作为操作目标对象的经分割的结果。
通过该处理,指定的对象O被分割成彼此相邻的L个对象O[x](x=1,...,L)的区域。k越小,操作点p[k]在屏幕上的位置越靠左。当处理在操作点p[k]处执行时,由p[1],...,p[k-1]指定的经分割的区域中的最右边的经分割的区域是R[s-1](当s=0时为R[0]),并且经分割的区域R[s]在经分割的区域R[s-1]的右侧。当操作点p[k]包括在经分割的区域R[i]中时,对象O[x]将组合了不包括来自经分割的区域R[s]到经分割的区域R[j-1]的操作点的区域和经分割的区域R[j]的区域设置为其形状。该区域中的字符串(组合了经分割的结果的字符串)被设置为对象O的句子S。从而,对象O[x](x=1,...,L)是分割后新产生的对象。所产生的对象O[x]的区域以及对象O[x+1]的区域(x=1,...,L-1)彼此相邻。因此,句子S是组合了经分割的结果(S[1]+...+S[L])的字符串。分割器133首先使语言处理器15基于某种单元对使用操 作点指定的对象O进行分割,并且然后获得经分割的字符或字符串(经分割的结果)以及与经分割的结果相对应的经分割的区域。然后,分割器133根据操作点的位置来确定对象O的分割位置,并且通过根据分割位置对经分割的结果和经分割的区域进行重新组合来产生分隔后的新的多个对象,以便使所产生的对象与操作点相关联。
图20是示出实施例中的对象O的分割的示例的示意图。如图20中所示,与句子2001中的句子S相关联的对象O在语素的基础上被分割成8个。在三个操作点p[1]、p[2]和p[3]中,两个操作点p[1]和p[2]指定字符2011的区域,而操作点p[3]指定字符2012的区域。在这种情况下,分割器133根据操作点的位置来确定对象O的分割位置,并且对经分割的结果和经分割的区域进行重新组合。从而,分割器133产生彼此相邻的两个对象O[1]和O[2]。作为处理的结果,分割器133输出L=2、以及Q={(p[1],O[1],O'[1]),...,(p[3],O[2],O'[2])}作为对象分割例程的输出。
在实施例中的编辑装置100中,对象控制器13根据由输入接收机11接收的输入数据来产生一个或多个在编辑中可操作的对象。在实施例中的编辑装置100中,显示单元12显示所产生的对象并且接收指示对象的连接或组合或者对象的分割的手势操作。在实施例中的编辑装置100中,对象控制器13根据接收到的操作执行对操作中指定的对象的连接或组合的编辑处理,或者执行对操作中指定的对象的分割的编辑处理,并且产生一个新对象或多个新对象。在实施例中的编辑装置100中,显示单元12显示所产生的一个新对象或多个新对象并且将编辑屏幕的内容更新为在其中反映了编辑操作的内容。
实施例中的编辑装置100提供了可以对输入数据执行直观的操作的环境。实施例中的编辑装置100允许容易的编辑操作以及自动校正语言中的语法错误(虚假识别),从而有可能减轻诸如校正虚假识别的校正之类的编辑工作中的负担。结果,实施例中的编辑装置100可以增强用户的便利。实施例中的编辑装置100可以容易地实现扩展功能,使得能够进行诸如将对象的句子S复制到另一个文本编辑器、直接编辑句子S并且将句子S存储到文件中之类的操作。从而,可以向用户提供具有高便利性的服务。
在实施例中,描述是针对对根据输入语音的识别结果产生的文本句子 进行编辑的情况做出的。编辑装置100的编辑功能不局限于该情况。例如,实施例中的编辑装置100的功能(编辑功能)还适用于对符号和图形进行编辑的情况。
第一修改
概述
除了连接操作以外,第一修改提出用于将与对象相关联的句子插入与连接的对象相关联的句子的处理。例如,插入操作可以执行如下。通过分割操作将一个对象分割成两个对象。将另一个用作插入的对象连接到经分割的对象中的一个,并且此后,将经分割的对象中的另一个连接到连接的对象。然而,这种情况需要一次分割操作和两次组合操作,从而导致操作繁复。第一修改提供了能够通过与两个对象的连接操作相同的操作(相同的操作次数)来插入新对象的环境。从而,可以进一步增强可用性。在下面的描述中,描述了与第一实施例的条目不同的条目,并且以相同的参考标号来标注相同的条目,并省略对其的重复描述。
细节
插入连接处理
图21是示出第一修改中的插入连接例程的处理过程的示例的流程图。图21中示出的处理是替代图7中示出的步骤S4处的连接例程的可执行插入-连接例程的处理过程的示例。在从步骤S114到步骤S116的处理中,第一修改中的插入-连接例程不同于图9中示出的连接例程。
如图21中所示,如果操作点p[1]的事件发生位置(x,y)在不同于对象O1的对象O2={S2,[P2,Q2]}中(在步骤S113处为是),那么第一修改中的连接器131确定操作点p[1]的事件发生位置(x,y)是否在对象O2的字符上(步骤S114)。换句话说,连接器131确定“上推”事件发生的位置是在对象O2的字符上还是在不同于对象O2的字符的区域中。
为了具体的解释,让“上推”事件发生的位置的坐标为(x,y),那么对象O2的形状为[P,Q],P=(Px,Py),并且Q=(Qx,Qy)。在这种情况下,当执行该确定过程时,事件发生位置的坐标(x,y)在对象O2中。因此,可以确定:如果满足下面的条件1至4中的任何一个条件,那么事件发生位置的坐标(x,y)在距对象O2的矩形的右侧和左侧中的一侧某个距离THx之内或者在距该 矩形的上侧和下侧中的一侧某个距离THy之内。
x-Px<THx  条件1
Qx-x<THx  条件2
y-Py<THy  条件3
Qy-y<THy  条件4
如果“上推”事件发生位置的坐标(x,y)满足条件1至4中的任何一个条件,那么连接器131确定“上推”事件发生在不同于对象O2的字符区域的区域中。如果事件发生位置的坐标(x,y)不满足条件1至4,那么连接器131确定“上推”事件发生在对象O2的字符上。
如果“上推”事件的发生位置在不同于对象O2的字符区域的区域中(在步骤S114处为否),那么连接器131执行连接操作(步骤S117到步骤S120)。
如果“上推”事件的发生位置在对象O2的字符上(在步骤S114处为是),那么连接器131以与图18中所示的对象分割例程相同的方式来计算对象O2的边界线(例如,当基于语素对对象O2进行分割时的各个边界线)。连接器131基于边界线的计算结果在距离事件发生位置的坐标(x,y)最近的边界处将对象O2的句子S2分割成句子S21和S22(步骤S115)。作为一个示例,让事件发生位置的坐标(x,y)在经分割的区域R[i]=[A[i],B[i+1]]中,A[i]的x坐标为a,并且B[i+1]的x坐标为b。在这种情况下,距离事件发生位置的坐标(x,y)最近的边界是边界[A[i],B[i]](x-a≤b-x)或者边界[A[i+1],B[i+1]](x-a>b-x)。让对象O1和O2的句子分别是句子S1和S2。句子S21与位于距事件发生位置的坐标(x,y)最近的边界左侧的句子S2相对应。句子S22与位于距事件发生位置的坐标(x,y)最近的边界右侧的句子S2相对应。因此,连接器131以这种顺序依次连接句子S21、S1和S22,然后使语言处理器15产生连接成的句子S'的经校正的句子S(步骤S116)。此后,连接器131前往步骤S118处的处理以便继续该连接处理。
当用户想要插入句子S时,用户用手指触摸用户想要插入的对象O1,将手指移动到对象O2的字符上,并且在该字符的插入位置处抬起手指。从而,指定的对象O1的句子S被插入到了该位置处。当不是在字符上而是在对象O2的边界线附近抬起手指时,句子S被连接到与对象O2相关联的句子S2。
如上所述,第一修改提供了能够以与对象O1和O2的连接操作相同的操作(相同的操作次数)通过插入-连接例程的处理来插入新对象O的环境。从而,第一修改可以进一步增强用户便利。
第二修改
概述
在第一实施例中,文本是在水平方向上从左向右进行显示的。一些语言(诸如日语)可以水平书写也可以垂直书写。一些语言(诸如阿拉伯语)是从右向左水平书写的。然而,在阿拉伯语中,数字是从左向右书写的。以这种方式,书写方向(即,阅读方向(显示方向))根据文本的语言和内容而变化。第二修改提出了用于根据语言、字符的书写方向(垂直或水平地书写)或当对象被组合(包括被连接)时文本的内容来确定句子的组合顺序的处理。从而,可以进一步增强可用性。在下面的描述中,描述了与第一实施例的条目不同的条目,并且以相同的参考标号来标注相同的条目,并省略对其的重复描述。
细节
连接处理
在第二修改中,描述了根据语言、书写方向和内容来确定两个对象的连接顺序的两种类型的处理。具体来说,一种是用于具有诸如阿拉伯语之类的书写特征的语言的处理,而另一种是用于具有诸如日语的书写特征的语言的处理。在下面的处理中,在语言处理器15中初步定义了根据语言、书写方向和内容来确定与各个对象相关联的句子S的连接顺序的规则(规定)。
图22是示出第二修改中用于两个对象的连接顺序的处理的过程的第一示例的流程图。图22中所示的处理是应用于图9中示出的连接例程中的步骤S24处的处理以及应用于图21中示出的插入-连接例程中的步骤S116和步骤S117处的处理的示例性处理,并且其与用于具有诸如阿拉伯语的书写特征的语言的处理相对应。第二修改中的连接器131根据语言处理器15中定义的规则确定连接顺序、连接对象并且产生新对象。
如图22中所示,实施例中的连接器131将对象O2={S2,[P2,Q2]}连接到对象O1={S1,[P1,Q1]}。连接器131识别对象O2(连接对象)相对 于对象O1(被连接对象)的连接方向(步骤S200)。
连接器131基于对象O2相对于对象O1的连接方向的识别结果,以在语言处理器15中定义的规则所确定的连接顺序来连接与对象O1相关联的句子S1和与对象O2相关联的句子S2。
具体而言,当在连接方向上对象O2在对象O1下方时,连接器131将与对象O2相关联的句子S2连接到与对象O1相关联的句子S1(S=S1+S2)(步骤S201)。当在连接方向上对象O2在对象O1上方时,连接器131将与对象O1相关联的句子S1连接到与对象O2相关联的句子S2(S=S2+S1)(步骤S202)。以这种方式,连接器131确定连接顺序,从而使得当连接方向是向上或向下时,位于另一个句子上方的与对象相关联的句子S变成句子的开头。
当在连接方向上对象O2在对象O1的左侧时,连接器131确定对象O1和O2二者是否是数字(步骤S203)。如果对象O1和O2二者都是数字(在步骤S203处为是),那么连接器131将与对象O1相关联的句子S1连接到与对象O2相关联的句子S2(S=S2+S1)(步骤S204)。以这种方式,连接器131确定连接顺序,从而使得当连接方向为左并且这两个对象都是数字时,左侧的句子S位于另一个句子的右侧。如果对象O1或O2不是数字(在步骤S203处为否),那么连接器131将与对象O2相关联的句子S2连接到与对象O1相关联的句子S1(S=S1+S2)(步骤S205)。以这种方式,连接器131确定连接顺序,从而使得当连接方向为左并且这两个对象中任一个对象是数字时,左侧的句子S位于另一个句子的左侧。
当在连接方向上对象O2在对象O1的右侧时,连接器131确定对象O1和O2二者是否都是数字(步骤S206)。如果对象O1和O2二者都是数字(在步骤S206处为是),那么连接器131将与对象O2相关联的句子S2连接到与对象O1相关联的句子S1(S=S1+S2)(步骤S207)。以这种方式,连接器131确定连接顺序,从而使得当连接方向为右并且这两个对象都是数字时,右侧的句子S位于另一个句子的左侧。如果对象O1或O2不是数字(在步骤S206处为否),那么连接器131将与对象O1相关联的句子S1连接到与对象O2相关联的句子S2(S=S2+S1)(步骤S208)。以这种方式,连接器131确定连接顺序,从而使得当连接方向为右并且这 两个对象中任一个对象是数字时,右侧的句子S位于另一个句子的右侧。
图23是示出第二修改中用于确定两个对象的连接顺序的处理的过程的第二示例的流程图。图23中所示的处理是应用于图9中示出的连接例程中的步骤S24处的处理以及应用于图21中示出的插入-连接例程中的步骤S116和步骤S117处的处理的示例性处理,并且其与用于具有诸如日语的书写特征的语言的处理相对应。图23中示出的处理在做出关于书写方向是水平还是垂直的确定方面不同于图22中的处理。具体而言,执行水平书写确定处理来替换图22中的步骤S203处的数字确定处理,同时执行垂直书写确定处理来替换图22中的步骤S206处的数字确定处理。
如图23中所示,实施例中的连接器131确定当在连接方向上对象O2在对象O1的左侧时,书写方向是否是水平的(步骤S213)。如果书写方向是水平的(在步骤S213处为是),那么连接器131将与对象O1相关联的句子S1连接到与对象O2相关联的句子S2(S=S2+S1)(步骤S214)。以这种方式,连接器131确定连接顺序,从而使得当连接方向为左并且书写方向是水平的时,左侧的句子S位于另一个句子的右侧。如果书写方向不是水平的(在步骤S213处为否),那么连接器131将与对象O2相关联的句子S2连接到与对象O1相关联的句子S1(S=S1+S2)(步骤S215)。以这种方式,连接器131确定连接顺序,从而使得当连接方向为左并且书写方向不是水平的时,左侧的句子S位于另一个句子的左侧。
当在连接方向上对象O2在对象O1的右侧时,连接器131确定书写方向是否是垂直的(步骤S216)。如果书写方向是垂直的(在步骤S216处为是),那么连接器131将与对象O2相关联的句子S2连接到与对象O1相关联的句子S1(S=S1+S2)(步骤S217)。以这种方式,连接器131确定连接顺序,从而使得当连接方向为右并且书写方向是垂直的时,右侧的句子S位于另一个句子的左侧。如果书写方向不是垂直的(在步骤S216处为否),那么连接器131将与对象O1相关联的句子S1连接到与对象O2相关联的句子S2(S=S2+S1)(步骤S218)。以这种方式,连接器131确定连接顺序,从而使得当连接方向为右并且书写方向不是垂直的时,右侧的句子S位于另一个句子的右侧。
以下面的方式来进行连接方向的识别。当在图9中所示的连接例程中 检测到“上推”事件时,连接器131使用下面的公式(8)到(10)来进行计算,其中,对象O1的坐标为(x1,y1)并且对象O2的坐标为(x2,y2)。
D=[(x1-x2)2+(y1-y2)2]1/2     (8)
cosθ=(x1-x2)/D     (9)
sinθ=(y1-y2)/D     (10)
因为在坐标系中x轴的正方向是屏幕上向右的方向,而y轴的正方向是屏幕上向下的方向,因此,当满足以下条件时连接器131确定连接方向为向上:|sinθ|≤THh并且cosθ>THv。当满足以下条件时连接器131确定连接方向为向下:|sinθ|≤THh并且cosθ>THv。当满足以下条件时连接器131确定连接方向为向左:|cosθ|≤THv并且sinθ<-THh。当满足以下条件时连接器131确定连接方向为向右:|cosθ|≤THv并且sinθ>THh。THh和THv是预定的阈值。
组合处理
图24是示出第二修改中用于确定三个对象的组合顺序的处理的过程的示例的流程图。图24中所示的处理是应用于图16中所示的组合对象产生例程中的步骤S73处的处理的示例性处理,并且其与用于对两个或更多个对象进行组合的处理相对应。第二修改中的组合器132根据语言处理器15中定义的规则确定组合顺序、组合对象并且产生新对象。
如图24中所示,实施例中的组合器132接收由操作目标对象提取例程提取的对象O[m](m=1,...,M)。组合器132使用如下公式来计算要组合的M个对象的重心C:C=(O[1]的中心点C[1]+...+O[M]的中心点C[M]/M)。组合器132将阵列Qt、Qb、Ql和Qr初始化为Qt、Qb、Ql、Qr={}(将每一个设置为不具有元素),其保留识别出的对象O[m]用于各个组合方向(即,向上、向下、左和右)并且对m设置0(步骤S220)。
组合器132关于提取的对象O[m]中的所有对象识别各个对象O[m]相对于计算出的重心C的组合方向(在步骤S221处为是以及步骤S222和步骤S223)。组合器132以与连接例程中的连接方向相同的方式来识别组合方向。
组合器132基于组合方向的识别结果在各个相应的阵列Qt、Qb、Ql和Qr中注册识别出的对象O[m](步骤S224到步骤S228)。具体来说,组 合器132在阵列Qt中对组合方向被确定是向上的对象O[m]进行注册。组合器132在阵列Qb中对组合方向被确定是向下的对象O[m]进行注册。组合器132在阵列Ql中对组合方向被确定是向左的对象O[m]进行注册。组合器132在阵列Qr中对组合方向被确定是向右的对象O[m]进行注册。使用阵列Qx作为缓冲器来在阵列Qt、Qb、Ql和Qr中注册对象O[m]。
如果对提取的对象O[m]中的所有对象进行了组合方向的确定处理(在步骤S221处为否),那么组合器132以中心点的y坐标的升序对阵列Qt和Qb中的所有对象进行排序。组合器132以中心点的x坐标的升序对阵列Ql和Qr中的所有对象进行排序(步骤S229)。
如果在排序之后Qt={O[1],...,O[n]},那么Qt[1]的y坐标≤,...,Qt[n]的y坐标。因此,“通过将对象O[2]从上面与对象O[1]组合而获得的句子”与通过应用当基于要组合的对象O[1]和O[2]的组合方向的识别结果从上面组合对象O[2]时的组合顺序将和对象O[2]相关联的句子S[2]与和对象O[1]相关联的句子S[1]进行组合而获得的句子St相对应。“通过从上面组合阵列Qt的对象O[n]而获得的句子”与通过从上面将对象O[2]与对象O[1]组合并且以相同的方式继续对直到对象O[n]的各个对象进行组合而获得的句子相对应。组合器132通过从上面对阵列Qt中的排序之后的所有的对象进行组合来产生句子St,并且通过从上面对阵列Qb中的排序之后的所有的对象进行组合来产生句子Sb。组合器132还通过从右面对阵列Ql中的排序之后的所有的对象进行组合来产生句子Sl,并且通过从右面对阵列Qr中的排序之后的所有的对象进行组合来产生句子Sr(步骤S230)。最后,组合器132将句子St与左边的句子Sl、右边的句子Sr、下面的句子Sb进行组合,并且输出组合成的句子作为组合了M个对象的句子S。
用于对对象进行组合的其它组合顺序可以是适用的。在这种情况下,前提是:对象除了句子S和形状[P,Q]之外还具有指示其产生时间的另一个属性。例如,组合器132可以根据规定组合的规则来对与各个对象相关联的句子S进行组合,所述规则使得与和各个其它对象相关联的其它句子S相比,与具有比其它对象更早的产生时间的对象O相关联的句子S进一步在句子开头侧。从而,例如,在从右向左阅读的语言中,与具有较早产生时间的对象O相关联的句子S在组合之后位于右侧。
第二修改提供了识别组合方向(包括连接方向)、基于识别结果根据语言、书写方向和内容确定组合顺序(包括连接顺序)以及按照所确定的组合顺序对多个对象进行组合的环境。从而,第二修改可以进一步增强用户便利。
第二实施例
第二实施例提出了用于针对对象产生动作对象的处理。例如,动作对象与针对在编辑中可操作的对象动态产生的对象相对应。动作对象具有的属性具有可产生自与用作动作对象的产生源的对象相关联的句子的数据的值。动作对象并不总是需要显示在屏幕上,因此可能不需要具有形状属性。动作对象与用作动作对象的产生源的对象同步进行处理。动作对象具有这些特性。
概述
图25是示出了提供翻译服务的示例的示意图。例如,如图25中所示,将语音输入转录成文本,并且在基于语音输入在翻译服务中产生翻译结果。在这种翻译服务中,针对每个发音,将输入语音作为文本显示在屏幕的右侧,而翻译结果显示在屏幕的左侧。在这种情况下,动作对象的属性与根据语音输入(输入数据)产生的对象O的经翻译的句子相对应。
下面描述了当用户使用翻译服务将日语翻译成英语时的示例。用户说出句子2501、句子2502和句子2503(其在英语中的意思是:it is hot today,but I wear a long sleeved shirt)来输入语音,其中在这些发音之间存在停顿。结果,翻译服务用日语显示句子2511、句子2512和句子2513(其在英语中的意思是come),并且用英语显示“it is hot today,though”、“a long-sleeved shirt”和“come”作为相应的句子的翻译结果。当原始的句子不完整时,使用这种方法的翻译结果很有可能包括错误的翻译或者尽管翻译后的词语是正确的但作为句子却没有意义。
在实施例中,对与句子2511、句子2512和句子2513相对应的三个经分割的对象进行组合,并且产生与句子2514相对应的经校正的新对象(其在英语中的意思是:it is hot today,but I wear a long sleeved-shirt)。在该实施例中,产生了与新对象相对应的动作对象。具体来说,产生了具有属性“it is hot today,but I wear a long sleeved-shirt”的动作对象,其是句子2514 的翻译结果。
实施例中的编辑装置根据输入数据产生对象(每个对象用作编辑操作单元)、根据通过显示屏接收的手势操作来编辑产生的对象,并且进一步与用作动作对象的产生源的对象的编辑操作同步第来处理这些动作对象。
实施例中的编辑装置因此可以实现对输入数据的直观操作,从而使得容易执行编辑操作。从而可以减少编辑工作中的负担(诸如虚假识别的校正)。结果,实施例中的编辑装置可以增强用户的便利。
下面描述了实施例中的编辑装置的功能的结构和操作。下面的描述是在根据输入语音的识别结果产生的文本句子进行编辑并且然后对该文本句子进行翻译的情况下做出的。在下面的描述中,描述了与第一实施例的条目不同的条目,并且以相同的参考标号来标注相同的条目,并省略对其的重复描述。
结构
图26是示出实施例中的编辑装置100的功能结构的示意图。如图26中所示,除了在第一实施例中描述的各个功能模块之外,该实施例中的编辑装置100还包括对原始句子进行翻译的翻译器16。翻译器16将与由对象控制器13编辑的对象O相关联的句子S翻译成指定的语言,并且将翻译结果传送到对象控制器13。当接收翻译后的结果时,对象控制器13基于翻译结果产生与对象O相对应的动作对象。对象控制器13产生的动作对象这样的属性:其值为从翻译器16接收到的翻译结果。这样产生的动作对象与用作动作对象的产生源的对象O相关联地由对象管理器14来管理。
下面描述由实施例中的编辑装置100执行的编辑操作的处理。
处理
图27是示出实施例中的编辑装置100的处理过程的示例的流程图。图27中示出的处理主要由对象控制器13执行。除了各种类型的编辑操作(诸如对象的连接或组合或者对象的分割)之外,实施例中的编辑装置100能够实现删除对象的操作。如图27中所示,实施例中的编辑装置100使用对象控制器13执行下面的处理(在步骤S240处为否),直到装置结束该操作(诸如装置断电)为止。
实施例中的控制器13首先根据输入数据产生对象(在步骤S241处为 是),并且然后产生与所产生的对象相对应的动作对象(步骤S242)。对象控制器13将产生的动作对象与用作动作对象的产生源的对象相关联地存储在对象管理器14中。这时,显示单元12可以更新屏幕上的显示。此外,提供该服务的软件(应用)可以执行由行动对象的产生导致的某种处理。如果没有根据输入数据产生对象(在步骤S241处为否),那么对象控制器13跳过步骤S242处的处理。
然后,对象控制器13确定是否对对象执行了编辑操作(步骤S243)。如果对对象执行了操作(在步骤S243处为是),那么对象控制器13识别对对象执行的编辑操作(步骤S244)。如果没有对对象执行编辑操作(在步骤S243处为否),那么对象控制器13前进到步骤S240处的处理。
作为在步骤S244处的识别的结果,如果接收到的编辑操作是连接操作或组合操作,那么对象控制器13产生相对于通过连接或组合所产生的对象的新动作对象(与连接的或组合的对象相对应的动作对象)。所产生的动作对象具有可从连接或组合的对象的句子S产生的数据的属性(步骤S245)。
作为在步骤S244处的识别的结果,如果接收到的编辑操作是分割操作,那么对象控制器13产生相对于通过分割所产生的对象的新动作对象(与经分割的对象相对应的动作对象)。动作对象中的每一个具有可从经分割的对象的句子S产生的数据的属性(步骤S246)。
作为在步骤S244处的识别的结果,如果接收到的编辑操作是删除操作,那么对象控制器13删除与作为删除目标的对象相对应的动作对象(步骤S247)。对象控制器13从对象管理器14中删除动作对象连同相应的对象。这时,显示单元12可以更新屏幕上的显示。此外,提供该服务的软件(应用)可以执行由行动对象的删除导致的某种处理。
在实施例中的编辑装置100中,对象控制器13根据由输入接收机11接收的输入数据来产生一个或多个在编辑中可操作的对象。在实施例中的编辑装置100中,显示单元12显示所产生的对象,并且接收指示对象的连接或组合或者对象的分割的手势操作。在实施例中的编辑装置100中,对象控制器13根据接收到的操作执行对操作中指定的对象的连接或组合的编辑处理,或者执行对操作中指定的对象的分割的编辑处理,并且产生一个 新对象或多个新对象。对象控制器13产生具有可从被执行了连接、组合或分割的编辑处理的对象产生的数据的属性的动作对象。在实施例中的编辑装置100中,显示单元12显示所产生的一个新对象或多个新对象,并且将编辑屏幕的内容更新为在其中反映编辑操作的内容。
实施例中的编辑装置100提供了可以对输入数据执行直观的操作的环境,并且与用作动作对象的产生源的对象的编辑处理同步第来处理所产生的动作对象。实施例中的编辑装置100允许诸如翻译服务的各种服务中进行容易的编辑操作,以及自动校正语言中的语法错误(虚假识别),从而有可能减轻诸如校正虚假识别的校正之类的编辑工作中的负担。结果,实施例中的编辑装置100可以增强用户的便利。
在实施例中,描述是在对根据输入语音的识别结果产生的文本句子进行编辑并且然后对该文本句子进行翻译的情况下做出的。编辑装置100的编辑功能不局限于该情况。例如,实施例中的编辑装置100的功能(编辑功能)还适用于在对产品的订单历史进行管理的服务中进行编辑的情况。
第三修改
第三修改描述了第二实施例中的编辑装置100应用到对产品的订单历史进行管理的服务(在下文中被称为“产品管理服务”)的情况。在下面的描述中,描述了与第二实施例的条目不同的条目,并且以相同的参考标号来标注相同的条目,并省略对其的重复描述。
概述
例如,在第三修改的示例中,对象控制器13根据所接收的订单的对象O产生具有所订产品的名称和所订产品的数量的属性的动作对象。动作对象还具有该动作对象的产生时间作为用于控制产品的订单历史的属性。
图28A至28D是示出提供产品管理服务的示例的示意图。例如,如图28A中所示,将语音输入转录成文本,以便基于语音输入在产品管理服务中产生产品的订单接收结果。在这种产品管理服务中,针对各个产品的所接收的订单内容显示在屏幕的左侧,而与订单历史相对应的接收结果显示在屏幕的右侧。
下面描述了用户使用产品管理服务的示例。用户首先说出订单句子2801(用英语说出一件产品A和三件产品B)来输入语音。结果,如图28A 中所示,翻译服务产生句子2801的对象O以及具有属性“一件产品A”和“三件产品B”的动作对象,并且显示这两个对象。
然后,用户说出订单的变化作为句子2802(用英语说出将产品B的数量变成一件)。在该变化中,当用之间有停顿的方式说出句子2811和句子2812时,输入语音被错误的识别为句子2811中的“wa”丢失,并且如图28B中所示产生了两个句子(句子2821和2822)。在这种情况下,产品管理服务基于句子2821的识别结果确定订了一件产品B,添加一件产品B作为订单,并且对动作对象的指示产品数量的属性更新为“一件产品A”和“四件产品B”。产品管理服务向用户通知某个请求用户指定产品的名称的消息,这是因为产品的名称在句子2812的识别结果中是不清楚的。
用户执行如图28C中所示的编辑操作(校正变化后的内容)。产品管理服务根据编辑操作将句子2822的对象O连接到句子2821的对象O。然后产品管理服务删除用于校正的句子2821和句子2822的两个对象,并且还删除与这些对象相对应的动作对象。产品管理服务参考指示由对象管理器14管理的动作对象的产生时间的属性,并且识别与订单历史中的最早时间相对应的动作对象。产品管理服务识别具有“一件产品A”和“三件产品B”(其是首先输入的)的订单内容属性的动作对象。
然后,产品管理服务基于连接的对象将所识别的动作对象的订单内容从“三件产品B”更新为“一件产品B”。然后,产品管理服务产生具有“一件产品A”和“一件产品B”的订单内容属性的动作对象。以这种方式,产品管理服务产生与句子2841的对象O相对应的新的动作对象。结果,如图28D中所示,产品管理服务显示句子2841的对象O来更新屏幕显示。
产品管理服务重复这种输入和编辑处理,并且当用户的订单完成时,固定具有最近生产时间属性的动作对象作为产品的订单内容。
如上所述,实施例中的编辑装置100可应用于使用语音输入的产品管理服务,从而有可能增强用户便利。
装置
图29是示出实施例中的编辑装置100的结构的示例的示意图。如图29中所示,实施例中的编辑装置100包括中央处理单元(CPU)101和主存储设备102。编辑装置100还包括辅助存储设备103、通信接口(IF)104、外 部IF105、驱动设备107和显示设备109。。在编辑装置100中,各个设备通过总线B互相耦接。因此在实施例中组织的编辑装置100与诸如智能电话或平板电脑的典型信息终端(信息处理装置)相对应。实施例中的编辑装置100可以是能够接收用户的操作并且能够根据接收到的操作来执行指示的处理的任何装置。
CPU101是算数处理单元,其完全控制编辑装置100以及实现编辑装置100的各项功能。主存储设备102是在其某些存储区域中保存程序和数据的存储设备(存储器)。例如,主存储设备102是只读存储器(ROM)或随机存取存储器(RAM)。辅助存储设备103是与主存储设备102的存储区域相比具有更大容量存储区域的存储设备。辅助存储设备103是诸如硬盘驱动器(HDD)或存储器卡的非易失性存储设备。CPU101从辅助存储设备103读出程序和数据到主存储设备102,并且执行它们以便完全控制编辑装置100以及实现编辑装置100的各项功能。
通信IF104是将编辑装置100连接到数据传输线N的接口。因此,通信IF104因而使得编辑装置100能够通过数据传输线N执行与耦接到编辑装置100的其它外部装置(其它通信处理装置)的数据通信。外部IF105是能够在编辑装置100与外部设备106之间进行数据交换的接口。例如,外部设备106是接收操作输入的输入设备(例如,“数字小键盘”或“键盘”)。驱动设备107是将数据写入到存储介质108并且从存储介质108读出数据的控制器。例如,存储介质108是软盘(FD)、压缩光盘(CD)或数字多功能光盘(DVD)。显示设备109(例如,其是液晶显示器)在屏幕上显示诸如处理结果的各种类型的信息。显示设备109包括用于检测屏幕上的触摸或没有触摸的传感器(例如,“触摸传感器”)。使用该传感器,编辑装置100通过屏幕接收各种类型的操作(例如,“手势操作”)。
例如,实施例中的编辑功能作为编辑装置100执行编辑程序的结果而通过上述各个功能模块的协同操作来实现。在这种情况下,程序以可安装或可执行的格式作为文件记录在执行环境中由编辑装置100(计算机)可读的存储介质中,并且作为计算机程序产品来提供。例如,在编辑装置100中,程序具有包含上述各个功能模块的模块结构,并且一旦CPU101从存储介质108读出程序并且执行该程序,则各个模块在主存储设备102的 RAM上生成。提供程序的方式不局限于这种方式。例如,程序可以存储在连接到互联网的外部装置中,并且可以通过数据传输线N下载。程序可以预先存储在主存储设备102的ROM中或者辅助存储装置103的HDD中,并且作为计算机程序产品提供。在本文中描述了通过软件实现来实现编辑功能的示例。然而,编辑功能的实现不局限于这种方式。可以通过硬件实现来实现编辑功能的各个功能模块中的部分或全部。
在实施例中,编辑装置100包括输入接收机11、显示单元12、对象控制器13、对象管理器14、语言处理器15以及翻译器16中的部分或全部。然而,编辑装置100的结构功能不局限于该结构。编辑装置100可以通过通信IF104耦接到具有那些功能模块中的功能中的一些部分(例如,“语言处理器15”和“翻译器16”)的外部装置,并且通过各个功能模块的协同操作来提供编辑功能,作为与藕接的外部装置进行数据通信的结果。例如,该结构使得实施例中的编辑装置100还能够应用于云环境。
根据上述至少一个实施例的编辑装置,该编辑装置包括接收机和控制器。接收机被配置为接收输入数据。控制器被配置为:根据输入数据产生一个或多个可操作的目标对象,通过屏幕接收操作以及通过对操作中指定的目标对象执行编辑处理来产生编辑结果对象。从而,可以增强用户便利性。
尽管描述了某些实施例,但这些实施例仅通过示例的方式呈现,而不是旨在限制本发明的范围。实际上,本文中所描述的新颖实施例可以体现在各种其它形式中,此外,可以在不脱离本发明的精神的前提下对本文中描述的实施例的形式做出各种省略、替代和改变。所附权利要求及其等同物旨在涵盖会落入本发明的范围和精神之内的这些形式或修改。

编辑装置和编辑方法.pdf_第1页
第1页 / 共53页
编辑装置和编辑方法.pdf_第2页
第2页 / 共53页
编辑装置和编辑方法.pdf_第3页
第3页 / 共53页
点击查看更多>>
资源描述

《编辑装置和编辑方法.pdf》由会员分享,可在线阅读,更多相关《编辑装置和编辑方法.pdf(53页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN104102338A43申请公布日20141015CN104102338A21申请号201410072359X22申请日20140228201307719020130402JPG06F3/01200601G06F3/0488201301G06F17/2220060171申请人株式会社东芝地址日本东京都72发明人馆森三庆74专利代理机构永新专利商标代理有限公司72002代理人刘瑜王英54发明名称编辑装置和编辑方法57摘要根据一个实施例,编辑装置包括接收机和控制器。接收机被配置为接收输入数据。控制器被配置为根据输入数据产生一个或多个可操作的目标对象,通过屏幕接收操作以及通过对操作。

2、中指定的目标对象执行编辑处理来产生编辑结果对象。30优先权数据51INTCL权利要求书2页说明书24页附图26页19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书24页附图26页10申请公布号CN104102338ACN104102338A1/2页21一种编辑装置,包括接收机,其被配置为接收输入数据;以及控制器,其被配置为根据所述输入数据产生一个或多个可操作的目标对象,通过屏幕接收操作,以及通过对所述操作中指定的目标对象执行编辑处理来产生编辑结果对象。2根据权利要求1所述的装置,其中,所述控制器包括被配置为对两个可操作的目标对象进行连接的连接器,并且所述连接器被配置为当操作事。

3、件的发生位置在不同于第一目标对象的第二目标对象上时,将所述第一目标对象连接到所述第二目标对象,以产生与所述编辑结果对象相对应的连接的对象,所述第一目标对象是使用呈现在所述屏幕上的单个操作点来指定的。3根据权利要求1所述的装置,其中,所述控制器包括被配置为对两个或更多个可操作的目标对象进行组合的组合器,并且所述组合器被配置为当同一目标对象并不是使用呈现在所述屏幕上的两个或更多个操作点指定的时,对使用所述两个或更多个操作点指定的多个目标对象进行组合,以产生与所述编辑结果对象相对应的组合的对象。4根据权利要求1所述的装置,其中,所述控制器包括被配置为将一个可操作的目标对象分割成多个部分的分割器,并且。

4、所述分割器被配置为当同一目标对象是使用呈现在所述屏幕上的两个或更多个操作点指定的时,通过将使用所述两个或更多个操作点指定的目标对象分割成多个部分,来产生与多个编辑结果对象相对应的多个分割的对象。5根据权利要求1所述的装置,其中,所述控制器被配置为基于确定操作事件的发生位置是否在使用操作点指定的目标对象上,从根据所述输入数据产生的多个目标对象中提取出使用所述操作点指定的目标对象。6根据权利要求1所述的装置,还包括语言处理器,其被配置为对与所述目标对象相关联的字符串执行某种语言处理,其中,所述语言处理器被配置为以某种单位对与由所述控制器产生的所述编辑结果对象相关联的字符串进行分析,并且通过基于分析。

5、结果对错误部分进行校正来产生经校正的句子。7根据权利要求2所述的装置,其中,所述连接器被配置为当所述操作事件的发生位置在与所述第二目标对象相关联的字符串上时,在与所述操作事件的发生位置最接近的边界处,将与所述第二目标对象相关联的字符串分割为多个字符或字符串,并且在所述多个字符或字符串之间插入与所述第一目标对象相关联的字符串,以便产生所述连接的对象。8根据权利要求3所述的装置,其中,所述组合器被配置为根据使用所述操作点指定的多个目标对象的中心点获得所述多个目标对象的重心,并且当所述重心与所述多个目标对象之间的距离的最大值等于或大于阈值时,对使用所述操作点指定的多个目标对象进行组合,以产生所述组合。

6、的对象。9根据权利要求3所述的装置,其中,所述组合器被配置为按照使用所述操作点指定的多个目标对象的中心点的坐标的升序顺序,对所述多个目标对象进行排序,并且对排序后的多个目标对象进行组合,以产生所述组合的对象。10根据权利要求4所述的装置,其中,所述分割器被配置为使得所述语言处理器以权利要求书CN104102338A2/2页3某种单位将与使用所述操作点指定的目标对象相关联的字符串分割为多个字符或字符串,根据所述操作点的位置来确定所述目标对象的分割位置,通过根据所述分割位置对所述多个字符或字符串进行组合来产生所述分割的对象,并且将产生的分割的对象与所述操作点相关联。11根据权利要求1所述的装置,其。

7、中,所述控制器被配置为识别所述目标对象的连接方向或组合方向,基于所述识别的结果根据预定义的规则来确定多个目标对象的连接顺序或组合顺序,并且以所确定的连接顺序或所确定的组合顺序对与所述多个目标对象相关联的字符串进行连接或组合。12根据权利要求1所述的装置,其中,所述控制器被配置为根据与所述目标对象相关联的字符串的书写方向来确定所述目标对象的连接顺序,并且以所确定的连接顺序来对与所述目标对象相关联的字符串进行连接。13根据权利要求1所述的装置,其中,所述控制器被配置为产生所述目标对象,并且产生与所产生的目标对象被同步处理的对象。14根据权利要求1所述的装置,还包括显示单元,其被配置为显示目标对象或。

8、编辑结果对象,并且接收所述操作。15一种编辑方法,包括接收输入数据;根据所述输入数据产生一个或多个可操作的目标对象;通过屏幕接收操作;以及对所述操作中指定的目标对象执行编辑处理以产生编辑结果对象。权利要求书CN104102338A1/24页4编辑装置和编辑方法0001相关申请的交叉引用0002本申请基于2013年4月2日提交的日本专利申请NO2013077190,并且要求上述日本专利申请的优先权的权益,通过引用的方式将上述日本专利申请的完整内容并入本文。技术领域0003概括地说,本文中描述的实施例涉及编辑装置和编辑方法。背景技术0004随着信息终端的小型化的增加,语音输入已被广泛使用。例如,语。

9、音输入被用于诸如信息输入、信息搜索以及语言翻译之类的各种服务。然而,语音输入具有虚假识别的问题。已经提出了校正虚假识别的方法。0005然而,传统的方法需要复杂的操作来进行校正,因此缺乏用户友好性。发明内容0006实施例的目标是提供一种能够增强用户便利性的编辑装置。0007根据一个实施例,编辑装置包括接收机和控制器。接收机被配置为接收输入数据。控制器被配置为根据输入数据产生一个或多个可操作的目标对象,通过屏幕接收操作以及通过对操作中指定的目标对象执行编辑处理来产生编辑结果对象。0008根据上述编辑装置,可以增强用户便利性。附图说明0009图1是示出根据第一实施例的编辑装置的功能结构的示例性示意图。

10、;0010图2是示出第一实施例中的对象的显示的示例性示意图;0011图3A和3B是示出用于连接第一实施例中的对象的示例性示意图;0012图4A和4B是示出用于组合第一实施例中的对象的示例性示意图;0013图5A和5B是示出用于分割第一实施例中的对象的示例性示意图;0014图6是示出第一实施例中的触摸事件的数据的示例性示意图;0015图7是示出第一实施例中的编辑装置的处理过程的示例性流程图;0016图8是示出第一实施例中的多点触摸检测例程的处理过程的示例性流程图;0017图9A是示出第一实施例中的连接例程的处理过程的示例性流程图;0018图9B是第一实施例中使用的示例性日语语句;0019图10是。

11、示出第一实施例中的用于产生经校正的句子的处理过程的示例性流程图;0020图11是第一实施例中的作为形态分析的点阵输出的示例性概念图;0021图12A和12B是示出第一实施例中向点阵添加路径的示例性示意图;说明书CN104102338A2/24页50022图13是示出第一实施例中的组合例程的处理过程的示例性流程图;0023图14是示出第一实施例中的操作目标对象提取例程的处理过程的示例性流程图;0024图15是示出第一实施例中的触摸事件处理例程的处理过程的示例性流程图;0025图16是示出第一实施例中的组合的对象产生例程的处理过程的示例性流程图;0026图17是示出第一实施例中的分割例程的处理过程。

12、的示例性流程图;0027图18是示出第一实施例中的对象分割例程的处理过程的示例性流程图;0028图19是第一实施例中的经分割的区域的示例性概念图;0029图20是示出第一实施例中的对象的分割的示例性示意图;0030图21是示出根据第一实施例的插入连接例程的处理过程的示例性流程图;0031图22是示出用于根据第二修改确定两个对象的连接顺序的处理的过程的第一示例性流程图;0032图23是示出用于确定第二修改中的两个对象的连接顺序的处理过程的第二示例性流程图;0033图24是示出用于确定第二修改中的三个对象的组合顺序的处理过程的示例性流程图;0034图25是示出提供翻译服务的示例性示意图;0035图。

13、26是示出根据第二实施例的编辑装置的功能结构的示例性示意图;0036图27是示出第二实施例中的编辑装置的处理过程的示例性流程图;0037图28是示出提供产品管理服务的示例性示意图;以及0038图29是示出实施例中的编辑装置的结构的示例性示意图。具体实施方式0039下面参照附图详细描述编辑装置、编辑方法和编辑程序的实施例。0040第一实施例0041概述0042下面描述了根据第一实施例的编辑装置的功能(编辑功能)。第一实施例中的编辑装置根据输入数据产生在编辑中可操作的一个或多个对象(操作目标对象)。实施例中的编辑装置显示所产生的对象并且接收手势操作(直观的编辑操作),手势操作指示对象的连接或组合,。

14、或者对象的分割。实施例中的编辑装置根据接收到的操作对操作中指定的对象执行连接或组合或者对操作中指定的对象执行分割的编辑处理,并且产生与编辑结果相对应的一个新的对象或多个新的对象(一个编辑结果对象或多个编辑结果对象)。然后,实施例中的编辑装置显示产生的新对象(或者多个产生的新对象)并且将编辑屏幕的内容更新为反映了编辑操作的内容。以这种方式,实施例中的编辑装置可以实现直观的编辑操作。实施例中的编辑装置具有这样的编辑功能。0043传统方法的示例使用某种方式来指定虚假识别并且通过在虚假识别删除之后校正输入来校正虚假识别。传统方法的另一个示例显示虚假识别的替换的候选者,并且通过从候选者中选择替换者来校正。

15、虚假识别。然而,这些方法需要某种关键操作来进行校正。这种操作对于近来广泛使用的小型信息终端是麻烦的。说明书CN104102338A3/24页60044诸如智能电话或平板电脑之类的在显示屏上具有触摸传感器的信息终端使得能够根据人的直觉来进行手势操作。对于这种信息终端来说,优选的是使得虚假识别也能够由直观的操作来校正并且使得编辑能够容易地进行。0045实施例中的编辑装置根据输入数据产生对象(每个对象用作编辑操作单元),并且根据通过显示屏接收的手势操作来编辑产生的对象。0046实施例中的编辑装置因此可以实现对输入数据的直观操作,从而使得容易执行编辑操作。从而可以减少编辑工作中的负担,例如虚假识别的校。

16、正。结果,实施例中的编辑装置可以增强用户(例如,“编辑者”)的便利。0047下面描述了实施例中的编辑装置的功能的结构和操作。下面的描述是在示例性情况下做出的,其中对根据输入语音的识别结果产生的文本句子进行了编辑。0048结构0049图1是示出实施例中的编辑装置100的功能结构的示意图。如图1中所示,实施例中的编辑装置100包括输入接收机11、显示单元12、对象控制器13、对象管理器14以及语言处理器15。0050输入接收机11接收输入数据。实施例中的输入接收机11通过根据语音的识别结果产生使得人能够阅读的话语句子的文本来接收输入数据。因此,输入接收机11包括接收语音输入的语音接收机111以及识。

17、别输入语音、根据识别结果产生文本并且输出该文本的语音识别器112。例如,语音接收机111接收来自麦克风的语音信号,并且输出经数字化的语音数据。语音识别器112接收输出的语音数据,通过语音识别检测例如句子的间隔,并且获得各个检测出的间隔的识别结果。语音识别器112输出获得的识别结果。从而,输入接收机11使用根据识别结果产生的文本作为输入数据。0051例如,显示单元12在诸如显示器的显示屏上显示各种类型的信息。例如,显示单元12通过触摸传感器检测屏幕上的操作(例如,“操作点的接触情况”和“操作点的移动”),并且接收来自检测结果的操作指令。实施例中的显示单元12显示一个或多个在编辑中可操作的对象,并。

18、且接收各种类型的编辑操作(诸如对象的连接或组合或者对象的分割)。0052对象控制器13控制对一个或多个在编辑中可操作的对象的编辑。对象控制器13根据由输入接收机11接收的输入数据(文本)产生一个或多个在编辑中可操作的对象(每个对象用作可编辑操作单元)。对象控制器13针对语音识别器112的每一个识别结果产生一个对象。换句话说,对象控制器13针对每一个识别结果产生编辑中的操作目标对象。显示单元12显示产生的对象。对象控制器13执行对产生的对象的连接或组合的编辑处理或者执行对产生的对象的分割的编辑处理。对象控制器13根据由显示单元12接收的操作指令执行对操作中指定的对象的连接或组合的编辑处理,或者执。

19、行对操作中指定的对象的分割的编辑处理,并且产生一个新的对象或多个新的对象。因此,对象控制器13包括连接器131、组合器132和分割器133。连接器131将两个对象彼此连接并且产生新的对象(连接的对象)。组合器132将两个或更多个对象进行组合并且产生新的对象(组合的对象)。分割器133将一个对象分割成多个部分并且产生两个或更多个对象(分割的对象)。换句话说,对象控制器13针对每一个编辑操作产生一个编辑结果对象或者多个编辑结果对象。显示单元12在屏幕上显示因此产生的一个新对象或者因此产生的多个新对象,从而导致编辑屏幕的内容被更新为反映了编辑操作的内容。说明书CN104102338A4/24页700。

20、53下面描述由对象控制器13产生的对象。在编辑中用作操作目标的对象是具有识别结果属性以及另一个显示识别结果的显示区域属性的数据。例如,当文本作为识别结果输出时所产生的对象(在下文中被称为“对象O”)具有两个属性句子属性和形状属性。在这种情况下,句子属性的值(在下文中被称为“句子S”)是使用文本(字符或字符串)表达的句子(识别结果)。形状属性的值是表示文本在屏幕上显示的显示区域的形状的坐标。具体来说,该值是坐标系中的一组两个坐标点P和Q,该坐标系具有位于屏幕左上角处的原点、正方向为在水平方向上向右的X轴以及正方向为在垂直方向上向下的Y轴。它们在坐标系中被表示为PX1,Y1并且QX2,Y2,X11。

21、)。如果N为1(在步骤S3处为否),那么对象控制器13执行连接例程(步骤S4),并且在此后结束该处理。如果N为两个或更多个(在步骤S3处为是),那么对象控制器13确定N个操作点中的所有操作点是否在相同的对象中(步骤S5)。如果N个操作点不在相同的对象中(在步骤S5处为否),那么对象控制器13执行组合例程(步骤S6),并且在此后结束该处理。如果N个操作点在相同的对象中(在步骤S5处为是),那么对象控制器13执行分割例程(步骤S7),并且在此后结束该处理。0080细节0081下面描述了该处理的细节。0082由对象控制器13执行的处理的细节0083图8是示出实施例中的多点触摸检测例程的处理过程的示例。

22、的流程图。图8中示出的处理是图7中示出的步骤S1处的处理的示例。在实施例中的多点触摸检测例程中,另一个触摸的检测被等待从触摸第一操作点时开始经过时间TE,并且将在经过时间TE期间触摸的操作点记录在阵列P中以便检测一个或多个被触摸的操作点。0084如图8中所示,实施例中的对象控制器13首先等待监测到触摸事件(操作事件)(在步骤S10处为否)。如果检测到第一触摸事件(在步骤S10处为是),那么对象控制器13确定该事件为“下推”事件。对象控制器13将检测到的操作点的标识符设置为ID1,并且将阵列P1设置为ID1,X1,Y1(步骤11)以便将操作点的标识符与操作点的坐标相关联。然后对象控制器13在自从。

23、检测到第一触摸事件以来的经过时间TE内等待检测到下一个触说明书CN104102338A7/24页10摸事件(在步骤S12处为是并且在步骤S13处为否)。如果检测到下一个触摸事件(在步骤S13处为是),那么对象控制器13识别检测到的触摸事件的类型(步骤S14)。如果在经过时间TE内没有检测到下一个触摸事件(在步骤S12处为否),那么对象控制器13结束该处理。0085当检测到的触摸事件的类型为“下推”事件时,对象控制器13将N递增1,作为与阵列P1同时被触摸到的操作点。对象控制器13将作为IDN,XN,YN的阵列PN加到阵列P(步骤15)。当检测到的触摸事件是“上推”事件(手指立刻触摸对象并且立刻。

24、从该对象上抬起的情况)时,对象控制器13确定操作点PN为手指抬起的操作点(步骤S16)。然后,对象控制器13从阵列PNN1,N中删除操作点PN(其是手指抬起的操作点),并且对阵列数量重新计数(步骤S17),并且然后将N设置为N1(步骤S18)。当检测到的触摸事件的类型为“移动”事件时,对象控制器13认为该事件是手指在操作中的晃动,并且不考虑检测到的触摸事件(步骤S19)。结果,在多点触摸检测例程完成之后获得了阵列PNIDN,XN,YNN1,N,在该阵列中记录了检测到的操作点。0086连接处理0087图9是示出实施例中的连接例程的处理过程的示例的流程图。图9中示出的处理是图7中示出的步骤S4处的。

25、处理的示例。在实施例中的连接例程中,两个对象彼此连接并且因此产生了连接的对象,该例程由包含在实施例中的对象控制器13中的连接器131来执行。0088当在多点触摸检测例程中检测到被触摸的操作点时,实施例中的对象控制器13执行连接例程。0089如图9中所示,对象控制器13接收检测到的操作点P1ID1,X1,Y1。连接器131确定操作点P1是否在对象中(包括在对象的边界线上)(步骤S20)。0090如果操作点P1不在对象中(在步骤S20处为否),那么连接器131确定没有指定对象,并且然后结束该连接例程。0091可以以下面的方式来进行上述确定。确定某点AAX,AY是否是位于对象中(包括在对象的边界线上。

26、)的点可以基于“点P点A并且点A点Q”来进行,其中,对象OS,P,Q的点P和Q的坐标为PPX,PY并且QQX,QY。点P点A的不等式意味着“PXAX并且PYAY”。换句话说,点P点A的不等式意味着“在屏幕上点P位于点A的左上方”。点P是对象O的矩形显示区域的左上端点,而点Q是该矩形显示区域的右下端点。因此,如果“点P点A并且点A点Q”,则确定点A在矩形P,Q中或者在其边界线上。在下面的描述中,该确定方式被称为内点确定方式。0092如果操作点P1在对象中(在步骤S20处为是),那么连接器131识别对象O1S1,P1,Q1,在其中具有操作点P1(步骤S21)。连接器131确定检测到操作点P1包括在。

27、该对象O1中。例如,显示单元12可以根据从对象控制器13接收的指令,通过将对象O1的显示颜色改变成与屏幕上的其它对象的颜色不同的颜色来改变显示形式,从而使得用户可以看出对象O1处于操作目标状态。0093然后,连接器131等待检测到操作点P1的“上推”事件(在步骤S22处为否)。如果检测到“上推”事件(在步骤S22处为是),那么连接器131使用内点确定方式,针对存储在对象管理器14中的对象中的除了对象O1以外的所有对象来确定操作点P1的事件发生位置X,Y(其是抬起手指处的坐标)是否在不同于对象O1(第一目标对象)的对象O2(第说明书CN104102338A108/24页11二目标对象)中(步骤S。

28、23)。该确定是仅基于手指最终抬起处的位置做出的,而不考虑手指的移动路线。0094如果操作点P1的事件发生位置X,Y在对象O1中或者不在这些对象中的任何一个对象中(在步骤S23处为否),那么连接器131结束该连接例程。如果操作点P1的事件发生位置X,Y在不同于对象O1的对象O2S2,P2,Q2中(在步骤S23处为是),那么连接器131将对象O1和对象O2连接到彼此,并且然后使得语言处理器15产生连接句子S1和句子S2的句子(连接的句子)的经校正的句子S(步骤S24)。在句子的连接中,连接器131执行下面的处理。0095当在连接操作中的移动之后对象O1在对象O2上时,连接器131将句子S2连接到。

29、句子S1。当在连接操作中的移动之后对象O2在对象O1上时,连接器131将句子S1连接到句子S2。从而,产生了连接的句子S。具体来说,当S1是句子J001(图9B)并且S2是句子J002时,句子S2连接到句子S1之后的句子S是J003。相反,句子S1连接到句子S2之后的句子S是J004。语言处理器15对连接的句子S执行语法校正。语言处理器15通过语言处理(诸如校正日语中的同音字、校正英语中的格(CASE)、或者不管何种语言插入标点符号)校正或形成句子S(连接的句子)。然后,连接器131确定与经校正的句子S相关联的新对象O的形状。在该确定中,将点P设置为点P1或点P2中的Y坐标小于另一个的Y坐标的。

30、任意一点(设置为屏幕上侧的点)。例如,连接器131根据点P的坐标X,Y、经校正的句子S的字符的数量N、字符的宽度W以及字符的高度H来计算右下端点Q。从而,确定新对象O的形状。0096然后,连接器131根据经校正的句子S以及与经校正的句子S相关联的新对象O的形状来产生新对象OS,P,Q(步骤S25)。随后,连接器131从对象管理器14中删除用于连接的对象O1和对象O2,并且将产生的新对象O存储在对象管理器14中(步骤S26)。连接器131指示显示单元12从屏幕上删除用于连接的对象O1和对象O2,并且显示产生的新对象O(步骤S27)。0097图10是示出实施例中的用于产生经校正的句子S的处理过程的。

31、示例的流程图。图10中示出的处理是图9中示出的连接例程的在步骤S24处执行的处理的示例。实施例中的语言处理器15对句子S执行语法校正(诸如字符的校正或标点符号的插入)。例如,当用户说出句子J005时(图9B)(英语的IWEARALONGSLEEVEDSHIRT),在该句子中在逗号的位置处给出停顿,该发音被识别成两种发音,因此,语音识别结果是句子J001和句子J002(英语的COME)。使用同音词错误地识别了句子J002的结果,这是因为该发音被分隔成了两个发音。当翻译这两个句子时,也没有适当地对它们进行翻译,这是因为翻译目标句子是不完整的。传统地,当这种虚假识别发生时,用户需要再次说出相同的句子。

32、。然而,发音可能再次被错误地进行语音识别,或者可能在发音中再次不由自主地给出停顿,并且从而导致了虚假识别。鉴于这种情况,希望自动校正诸如同音词之类的语法错误,例如将句子J002(英语的COME)校正为句子J006(英语的WEAR)。实施例中的语言处理器15通过执行下面的处理来实现这种校正功能。0098如图10中所示,实施例中的语言处理器15首先接收连接的句子S。随后,语言处理器15对连接的句子S执行形态分析,并且产生点阵(步骤S30)。图11是实施例中的作为形态分析的结果的点阵输出的概念图。图11示出了当连接的句子S是句子J003时所说明书CN104102338A119/24页12产生的点阵的。

33、示例。0099返回参照图10,语言处理器15然后向产生的点阵添加同音词的平行路径(步骤S31)。图12A是示出实施例中向点阵添加路径的示例的示意图。图12A示出了将字符1201(HIRAGANA)和字符1203(KANJI,其在英语中的意思是WEAR)添加到字符1202(KANJI,其在英语中的意思是COME)作为同音词的示例。0100返回参照图10,语言处理器15然后向产生的点阵的弧线中的所有弧线添加标点路径(步骤S32)。图12B示出了将字符1211和字符1212的标点路径添加到字符1213与字符1214之间的弧线的示例。0101返回参照图10,语言处理器15然后通过N元语法对经过如上所述。

34、处理的点阵赋予分数(步骤S33)。然后,语言处理器15通过三元语法来计算点阵结构的分数,并且通过维特比(VITERBI)算法计算从连接的句子S的开头到结尾的最优路径(具有最高分数的路径)(步骤S34)。通过三元语法得到的来自语素1、语素2和语素3的路径的分数与语素1、语素2和语素3顺序发生的概率相对应。该概率是提前通过统计获得的(标点符号也被认为是语素)。当概率被表示为P时(语素3|语素1,语素2),通过语素1到语素N的从连接的句子S的开头到结尾的路径的分数由下面的公示(5)来表示(计算)。0102路径的分数LOGP语素N|语素N2,语素N150103其中,N1,N1。在这里,假定语素1和0二。

35、者都是句子S的开头,并且假定语素N1是句子S的结尾。语言处理器15输出计算出的最优路径的语素串作为经校正的句子S。0104当语言处理器计算出分数P(字符1203(英语的WEAR)|字符1213,字符1214)和分数P(字符1202(英语的COME)|字符1213,字符1214)时,分数P(字符1203(英语的WEAR)|字符1213,字符1214)比分数P(字符1202(英语的COME)|字符1213,字符1214)更高(具有更高的概率)。因此,输出的经校正的句子S是句子J005(图9B)(英语的IWEARALONGSLEEVEDSHIRT),其中,连接的句子S中的字符1202(英语的COME。

36、)被校正了。以这种方式,在实施例中根据以下语言规范(上下文和知识)自动执行了校正相对于字符1213(英语的SHIRT),句子J002(英语的COME)是错误的,而句子J006(英语的WEAR)是正确的。从而,该实施例能够进行校正操作,从而减少文本输入,并且不需要繁重的编辑工作。0105在一些情况下,作为结果,上述处理可以输出与连接的句子S相同的经校正的句子S,这意味着没有进行校正。当在不同的情况下添加词语作为平行路径时,可以在英语和日语二者中以与同音词相同的方式对用英语描述的大写字母和小写字母进行校正。上面描述了算法的示例来解释句子S是可以被校正的。然而,校正方式不局限于该示例。已知的文本校正。

37、方式也是适用的。0106组合处理0107图13是示出实施例中的组合例程的处理过程的示例的流程图。图13中示出的处理是图7中示出的步骤S6处的处理的示例。在实施例中的组合例程中,对两个或更多个对象进行组合并且产生了组合的对象,该例程由包含在对象控制器13中的组合器132来执行。0108当在多点触摸检测例程中检测到两个或更多个K2被触摸的操作点,并且检说明书CN104102338A1210/24页13测到的操作点中的所有操作点不在相同的对象中时,实施例中的对象控制器13执行组合例程。0109如图13中所示,对象控制器13接收检测到的操作点PKXK,YKK1,K。组合器132首先通过操作目标对象提取。

38、例程来提取将检测到的操作点包括在其中(包括其边界线)的对象(步骤S40)。0110从而,组合器132接收操作目标对象提取例程的输出(一组操作点)QQ1,O1,QM,OM,并且产生各个对象OMM1,M的拷贝OM,并且获得QQ1,O1,O1,QM,OM,OM。QMIDM,XM,YM表示包括在PK以外的对象中的任何一个对象中的操作点。OM表示包括QM的对象。OM表示包括QM的对象的拷贝。对象O是用手指触摸的对象。对象O是用于在其中存储在根据手指的移动的移动之后的对象的位置的拷贝。M是1,M。当检测到“上推”事件(手指抬起并且操作完成)时,组合器132将OBJ初始化为OBJ(将OBJ设置为没有元素的集。

39、合),OBJ用于保留一个或多个对象(步骤S41)。0111然后,组合器132确定提取的对象的数量M是否为2或更多(M1)步骤S42。如果M为1(在步骤S42处为否并且在步骤S43处为是),那么组合器132前进到连接例程(步骤S44),这是因为操作点指定了一个对象。如果M为0(在步骤S42处为否并且在步骤S43处为否),那么组合器132结束该处理。如果M为2或更多(在步骤S42处为是),如果没有手指从这些操作点中的所有操作点处抬起并且在屏幕上存在被触摸的操作点(在步骤S45处为是,即,M0),那么组合器132检测操作点QL的触摸事件(步骤S45到步骤S47)。然后,组合器132执行触摸事件处理例。

40、程(步骤S48)。在触摸事件处理例程中每检测到一个“上推”事件,则将M递减1。0112如果手指从这些操作点中的所有操作点处抬起并且在屏幕上不存在被触摸的操作点,这意味着操作完成(在步骤S45处为否,即,M0),那么组合器132执行组合对象产生例程(步骤S49)。0113图14是示出实施例中的操作目标对象提取例程的处理过程的示例的流程图。图14中示出的处理是图13中示出的组合例程的步骤S40处的处理的示例。实施例中的操作目标对象提取例程提取包括检测到的操作点的对象。0114如图14中所示,实施例中的组合器132接收检测到的操作点PKXK,YKK1,K。组合器132对提取的对象的数量M进行初始化(。

41、M0)。K表示检测到的操作点的数量。组合器132针对检测到的操作点PKK1,K中的所有操作点(步骤S50,在步骤S51处为是,以及步骤S52)使用内点确定方式来确定是否存在包括操作点PK的对象(步骤S53)。如果存在包括操作点PK的对象(在步骤S53处为是),那么组合器132确定包括操作点PK的对象是否存在于存储了保存在对象管理器14中的多个对象的阵列OMM1,M中(步骤S54)。如果包括操作点PK的对象没有存在于阵列OMM1,M(其是一组对象)中(在步骤S54处为否),那么组合器132添加操作点PK作为记录提取的对象的操作点(操作完成后的目的地)的阵列QM(其是第M1个元素)。组合器132还。

42、添加包括操作点PK的对象作为阵列OM,其为第M1个元素。从而,组合器132提取了操作目标对象。然后,组合器132将M递增1(在步骤S55处M1)。组合器132以上述方式对检测到的操作点PK中的所有操作点进行处理,并且输出QQ1,O1,QM,OM说明书CN104102338A1311/24页14作为操作目标对象的提取结果。0115操作点PK可能是在相同对象上被冗余触摸的操作点。操作点PK可能不指定对象。在操作目标对象提取例程中,获得QQ1,O1,QM,OM,从而使得一个操作点与一个对象相对应,这排除了上述情况。0116图15是示出实施例中的触摸事件处理例程的处理过程的示例的流程图。图15中示出的。

43、处理是图13中示出的组合例程的步骤S48处的处理的示例。实施例中的触摸事件处理例程对检测到的触摸事件(操作事件)进行处理。0117如图15中所示,实施例中的组合器132接收提取的对象OOL、对象OOL(其是提取的对象O的拷贝)以及QQL(其是提取的对象O的操作点)(操作完成后的目的地)。OBJ保留当前提取的对象。M是当前提取的对象的数量。组合器132识别对象O的操作点Q的触摸事件的类型(步骤S60)。如果操作点Q的触摸事件是“移动”事件,那么组合器132基于操作点Q在移动之前的坐标U,V和操作点Q在移动之后的坐标X,Y来计算该操作点的移动量X,YXU,YV(步骤S61)。然后,组合器132在移。

44、动之后将操作点Q的坐标更新为坐标X,Y(步骤S62)。然后,组合器132将对象O(其是提取的对象O的拷贝)的形状P,Q更新如下PPX并且QQY(步骤S63)。从而,对象O(其是提取的对象O的拷贝)根据操作点Q的移动量来移动。在“移动”事件的更新中,显示单元12可以将被触摸的对象O移动到运动后的位置,并且在该位置处对其进行显示。如果操作点Q的触摸事件是“上推”事件,那么组合器132基于确定对对象O的操作完成而向OBJ注册OL,OL(步骤S64)。然后,组合器132从Q中删除QL,OL,OL(步骤S65),并且将M递减1(步骤S66)。在图15中示出的公式“AAB”中,表示并集,其意味着元素B被注。

45、册到(添加到)集合A中。在下面的描述中,以同样的方式来使用这样的公式。0118图16是示出实施例中的组合对象产生例程的处理过程的示例的流程图。图16中示出的处理是图13中示出的组合例程的步骤S49处的处理的示例。实施例中的组合对象产生例程对提取的多个对象进行组合并且产生新对象。0119如图16中所示,实施例中的组合器132接收OBJO1,O1,OM,OM,OBJ保留提取的多个对象。M是提取的对象的总的数量。组合器132首先将提取的对象OM的中心点设置为CMM1,M,并且将CM的重心C设置为C1CM/M。组合器132将从重心C到各个对象OM的距离的最大值R设置为MAX|CC1,CCM|。组合器1。

46、32将对象OM(其为提取的对象OM的拷贝)的中心点设置为CM,并且将CM的重心C设置为C1CM/M。组合器132将从重心C到各个对象OM的距离的最大值R设置为MAX|CC1,CCM|(步骤S70)。R和R之间的差RR意味着在操作之前和之后,提取的对象移动到重心有多近。R越小移动量越大。因此,组合器132确定R的值小于通过将某个阈值THR与R的值相加获得的值的条件是否被满足(步骤S71)。0120如果该条件不被满足(在步骤S71处为否),那么组合器132在不对提取的对象进行组合的情况下结束该处理。例如,考虑到当用户触摸屏幕一次但是此后由于用户想法的变化而从屏幕上抬起手指而不发生任何变化时发生手指。

47、的微小移动,该条件防止执行组合处理,除非检测到等于或大于某个阈值THR的移动为止。说明书CN104102338A1412/24页150121如果该条件被满足(在步骤S71处为是),那么组合器132确定检测到足够的移动量。组合器132以中心点CM的Y坐标的升序(CM的Y坐标0)(步骤S83)。如果M为1或更多(在步骤S83处为是),那么分割器133等待在集合Q的操作点Q1,QL中的任何一个操作点处发生触摸事件(在步骤S84和步骤S85处为否),并且如果检测到触摸事件(在步骤S84和步骤S85处为是),那么执行触摸事件处理例程(步骤S86)。从而,OBJ和M由触摸事件处理例程的输出更新。0130如。

48、果M为0(在步骤S83处为否),那么分割器133确定操作点中的所有操作点由“上推”事件结束,并且因此操作结束。分割器133将当时最左边的对象O1和最右边的对象OL分别移动到对象O1和对象OL,对象O1和对象OL是对象O1和对象说明书CN104102338A1513/24页16OL的各自拷贝。分割器133确定O1和OL的中心点之间的距离比O1和OL的中心点之间的距离大某个距离THD或更多的条件是否被满足(步骤S87)。0131如果不满足该条件(在步骤S87处为否),那么分割器133结束该处理。如果满足该条件(在步骤S87处为是),那么分割器133从对象管理器14中删除分割前的对象O,并且将经分割。

49、的对象O1存储在对象管理器14中(步骤S88)。然后,分割器133指示显示单元12从屏幕上删除分割前的对象O,并且显示经分割的对象O1(步骤S89)。显示单元12可以以对齐的方式来显示经分割的对象O1。0132图18是示出实施例中的对象分割例程的处理过程的示例的流程图。图18中示出的处理是图17中示出的分割例程的步骤S81处的处理的示例。在实施例中的对象分割例程中,根据操作点的位置来确定对象O的分割位置、根据分割位置来分割指定的对象O、产生多个新对象并且使所产生的对象和操作点与彼此关联。0133如图18中所示,实施例中的分割器133接收QQ1,O,O,QK,O,O,其是操作点的集合。K是检测到的操作点的总的数量。分割器133首先以Y坐标的升序(QK的Y坐标BX。让对象O1和O2的句子分别是句子S1和S2。句子S21与位于距事件发生位置的坐标X,Y最近的边界左侧的句子S2相对应。句子S22与位于距事件发生位置的坐标X,Y最近的边界右侧的句子S2相对应。因此,连接器131以这种顺序依次连接句子S21、S1和S22,然后使语言处。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1