編輯裝置和編輯方法
【專利摘要】根據(jù)一個實施例,編輯裝置包括接收機和控制器。接收機被配置為接收輸入數(shù)據(jù)。控制器被配置為:根據(jù)輸入數(shù)據(jù)產生一個或多個可操作的目標對象,通過屏幕接收操作以及通過對操作中指定的目標對象執(zhí)行編輯處理來產生編輯結果對象。
【專利說明】編輯裝置和編輯方法
[0001] 相關申請的交叉引用
[0002] 本申請基于2013年4月2日提交的日本專利申請No. 2013-077190,并且要求上 述日本專利申請的優(yōu)先權的權益,通過引用的方式將上述日本專利申請的完整內容并入本 文。
【技術領域】
[0003] 概括地說,本文中描述的實施例涉及編輯裝置和編輯方法。
【背景技術】
[0004] 隨著信息終端的小型化的增加,語音輸入已被廣泛使用。例如,語音輸入被用于諸 如信息輸入、信息搜索以及語言翻譯之類的各種服務。然而,語音輸入具有虛假識別的問 題。已經提出了校正虛假識別的方法。
[0005] 然而,傳統(tǒng)的方法需要復雜的操作來進行校正,因此缺乏用戶友好性。
【發(fā)明內容】
[0006] 實施例的目標是提供一種能夠增強用戶便利性的編輯裝置。
[0007] 根據(jù)一個實施例,編輯裝置包括接收機和控制器。接收機被配置為接收輸入數(shù)據(jù)。 控制器被配置為:根據(jù)輸入數(shù)據(jù)產生一個或多個可操作的目標對象,通過屏幕接收操作以 及通過對操作中指定的目標對象執(zhí)行編輯處理來產生編輯結果對象。
[0008] 根據(jù)上述編輯裝置,可以增強用戶便利性。
【專利附圖】
【附圖說明】
[0009] 圖1是示出根據(jù)第一實施例的編輯裝置的功能結構的示例性示意圖;
[0010] 圖2是示出第一實施例中的對象的顯示的示例性示意圖;
[0011] 圖3A和3B是示出用于連接第一實施例中的對象的示例性示意圖;
[0012] 圖4A和4B是示出用于組合第一實施例中的對象的示例性示意圖;
[0013] 圖5A和5B是示出用于分割第一實施例中的對象的示例性示意圖;
[0014] 圖6是示出第一實施例中的觸摸事件的數(shù)據(jù)的示例性示意圖;
[0015] 圖7是示出第一實施例中的編輯裝置的處理過程的示例性流程圖;
[0016] 圖8是示出第一實施例中的多點觸摸檢測例程的處理過程的示例性流程圖;
[0017] 圖9A是示出第一實施例中的連接例程的處理過程的示例性流程圖;
[0018] 圖9B是第一實施例中使用的示例性日語語句;
[0019] 圖10是示出第一實施例中的用于產生經校正的句子的處理過程的示例性流程 圖;
[0020] 圖11是第一實施例中的作為形態(tài)分析的點陣輸出的示例性概念圖;
[0021] 圖12A和12B是示出第一實施例中向點陣添加路徑的示例性示意圖;
[0022] 圖13是示出第一實施例中的組合例程的處理過程的示例性流程圖;
[0023] 圖14是示出第一實施例中的操作目標對象提取例程的處理過程的示例性流程 圖;
[0024] 圖15是示出第一實施例中的觸摸事件處理例程的處理過程的示例性流程圖;
[0025] 圖16是示出第一實施例中的組合的對象產生例程的處理過程的示例性流程圖;
[0026] 圖17是示出第一實施例中的分割例程的處理過程的示例性流程圖;
[0027] 圖18是示出第一實施例中的對象分割例程的處理過程的示例性流程圖;
[0028] 圖19是第一實施例中的經分割的區(qū)域的示例性概念圖;
[0029] 圖20是示出第一實施例中的對象的分割的示例性示意圖;
[0030] 圖21是示出根據(jù)第一實施例的插入連接例程的處理過程的示例性流程圖;
[0031] 圖22是示出用于根據(jù)第二修改確定兩個對象的連接順序的處理的過程的第一示 例性流程圖;
[0032] 圖23是示出用于確定第二修改中的兩個對象的連接順序的處理過程的第二示例 性流程圖;
[0033] 圖24是示出用于確定第二修改中的三個對象的組合順序的處理過程的示例性流 程圖;
[0034] 圖25是示出提供翻譯服務的示例性示意圖;
[0035] 圖26是示出根據(jù)第二實施例的編輯裝置的功能結構的示例性示意圖;
[0036] 圖27是示出第二實施例中的編輯裝置的處理過程的示例性流程圖;
[0037] 圖28是示出提供產品管理服務的示例性示意圖;以及
[0038] 圖29是示出實施例中的編輯裝置的結構的示例性示意圖。
【具體實施方式】
[0039] 下面參照附圖詳細描述編輯裝置、編輯方法和編輯程序的實施例。
[0040] 第一實施例
[0041] 概述
[0042] 下面描述了根據(jù)第一實施例的編輯裝置的功能(編輯功能)。第一實施例中的編輯 裝置根據(jù)輸入數(shù)據(jù)產生在編輯中可操作的一個或多個對象(操作目標對象)。實施例中的編 輯裝置顯示所產生的對象并且接收手勢操作(直觀的編輯操作),手勢操作指示對象的連接 或組合,或者對象的分割。實施例中的編輯裝置根據(jù)接收到的操作對操作中指定的對象執(zhí) 行連接或組合或者對操作中指定的對象執(zhí)行分割的編輯處理,并且產生與編輯結果相對應 的一個新的對象或多個新的對象(一個編輯結果對象或多個編輯結果對象)。然后,實施例 中的編輯裝置顯示產生的新對象(或者多個產生的新對象)并且將編輯屏幕的內容更新為 反映了編輯操作的內容。以這種方式,實施例中的編輯裝置可以實現(xiàn)直觀的編輯操作。實 施例中的編輯裝置具有這樣的編輯功能。
[0043] 傳統(tǒng)方法的示例使用某種方式來指定虛假識別并且通過在虛假識別刪除之后校 正輸入來校正虛假識別。傳統(tǒng)方法的另一個示例顯示虛假識別的替換的候選者,并且通過 從候選者中選擇替換者來校正虛假識別。然而,這些方法需要某種關鍵操作來進行校正。這 種操作對于近來廣泛使用的小型信息終端是麻煩的。
[0044] 諸如智能電話或平板電腦之類的在顯示屏上具有觸摸傳感器的信息終端使得能 夠根據(jù)人的直覺來進行手勢操作。對于這種信息終端來說,優(yōu)選的是使得虛假識別也能夠 由直觀的操作來校正并且使得編輯能夠容易地進行。
[0045] 實施例中的編輯裝置根據(jù)輸入數(shù)據(jù)產生對象(每個對象用作編輯操作單元),并且 根據(jù)通過顯示屏接收的手勢操作來編輯產生的對象。
[0046] 實施例中的編輯裝置因此可以實現(xiàn)對輸入數(shù)據(jù)的直觀操作,從而使得容易執(zhí)行編 輯操作。從而可以減少編輯工作中的負擔,例如虛假識別的校正。結果,實施例中的編輯裝 置可以增強用戶(例如,"編輯者")的便利。
[0047] 下面描述了實施例中的編輯裝置的功能的結構和操作。下面的描述是在示例性情 況下做出的,其中對根據(jù)輸入語音的識別結果產生的文本句子進行了編輯。
[0048] 結構
[0049] 圖1是示出實施例中的編輯裝置100的功能結構的示意圖。如圖1中所示,實施 例中的編輯裝置100包括輸入接收機11、顯示單元12、對象控制器13、對象管理器14以及 語言處理器15。
[0050] 輸入接收機11接收輸入數(shù)據(jù)。實施例中的輸入接收機11通過根據(jù)語音的識別結 果產生使得人能夠閱讀的話語句子的文本來接收輸入數(shù)據(jù)。因此,輸入接收機11包括接收 語音輸入的語音接收機111以及識別輸入語音、根據(jù)識別結果產生文本并且輸出該文本的 語音識別器112。例如,語音接收機111接收來自麥克風的語音信號,并且輸出經數(shù)字化的 語音數(shù)據(jù)。語音識別器112接收輸出的語音數(shù)據(jù),通過語音識別檢測例如句子的間隔,并且 獲得各個檢測出的間隔的識別結果。語音識別器112輸出獲得的識別結果。從而,輸入接 收機11使用根據(jù)識別結果產生的文本作為輸入數(shù)據(jù)。
[0051] 例如,顯示單元12在諸如顯示器的顯示屏上顯示各種類型的信息。例如,顯示單 元12通過觸摸傳感器檢測屏幕上的操作(例如,"操作點的接觸情況"和"操作點的移動"), 并且接收來自檢測結果的操作指令。實施例中的顯示單元12顯示一個或多個在編輯中可 操作的對象,并且接收各種類型的編輯操作(諸如對象的連接或組合或者對象的分割)。
[0052] 對象控制器13控制對一個或多個在編輯中可操作的對象的編輯。對象控制器13 根據(jù)由輸入接收機11接收的輸入數(shù)據(jù)(文本)產生一個或多個在編輯中可操作的對象(每 個對象用作可編輯操作單元)。對象控制器13針對語音識別器112的每一個識別結果產生 一個對象。換句話說,對象控制器13針對每一個識別結果產生編輯中的操作目標對象。顯 示單元12顯示產生的對象。對象控制器13執(zhí)行對產生的對象的連接或組合的編輯處理或 者執(zhí)行對產生的對象的分割的編輯處理。對象控制器13根據(jù)由顯示單元12接收的操作指 令執(zhí)行對操作中指定的對象的連接或組合的編輯處理,或者執(zhí)行對操作中指定的對象的分 割的編輯處理,并且產生一個新的對象或多個新的對象。因此,對象控制器13包括連接器 131、組合器132和分割器133。連接器131將兩個對象彼此連接并且產生新的對象(連接的 對象)。組合器132將兩個或更多個對象進行組合并且產生新的對象(組合的對象)。分割器 133將一個對象分割成多個部分并且產生兩個或更多個對象(分割的對象)。換句話說,對象 控制器13針對每一個編輯操作產生一個編輯結果對象或者多個編輯結果對象。顯示單元 12在屏幕上顯示因此產生的一個新對象或者因此產生的多個新對象,從而導致編輯屏幕的 內容被更新為反映了編輯操作的內容。
[0053] 下面描述由對象控制器13產生的對象。在編輯中用作操作目標的對象是具有識 別結果屬性以及另一個顯示識別結果的顯示區(qū)域屬性的數(shù)據(jù)。例如,當文本作為識別結果 輸出時所產生的對象(在下文中被稱為"對象〇")具有兩個屬性:句子屬性和形狀屬性。在 這種情況下,句子屬性的值(在下文中被稱為"句子S")是使用文本(字符或字符串)表達的 句子(識別結果)。形狀屬性的值是表示文本在屏幕上顯示的顯示區(qū)域的形狀的坐標。具體 來說,該值是坐標系中的一組兩個坐標點P和Q,該坐標系具有位于屏幕左上角處的原點、 正方向為在水平方向上向右的X軸以及正方向為在垂直方向上向下的y軸。它們在坐標 系中被表示為P=(xl,yl)并且Q=(x2, y2), (xl〈x2并且yl〈y2)。該組坐標點P和Q在下文 中被稱為"形狀[P,Q]"。形狀屬性的兩個坐標值唯一地確定具有以下四個角的矩形:左上 角(xl, yl)、右上角(x2, yl)、右下角(x2, y2)和左下角為(xl, y2)。形狀[P, Q]表示對象0 的區(qū)域(對象區(qū)域)是矩形。在下面的描述中,對象0 (其具有各個屬性的值,句子S和形狀 [P,Q])被表示為{S,[P,Q]}。坐標點P和Q的中點( = (P+Q)/2)被稱為對象0的中心點或 者對象0的坐標。當對象0具有作為句子S的識別結果時,聲明被表達為"句子S與對象0 相關聯(lián)"或者"對象〇與句子S相關聯(lián)"。
[0054] 用下面的方式來確定對象0的形狀屬性[P,Q]。圖2是示出實施例中的對象的顯 示的示例的示意圖。圖2示出了對象的示例性顯示,所述對象與三個相應的句子A、B和C 相關聯(lián),這三個句子與相應的識別結果相對應。在這種情況下,這些字符中的所有字符具有 相同的寬度w和相同的高度h,并且與對象0相關聯(lián)的句子S是具有η個字符的字符串。
[0055] 坐標點Q由下面的公式(1)和(2)來表示(計算)。
[0056] Q的X坐標=坐標點Ρ的X坐標+wXn (1)
[0057] 其中,w是字符的寬度,并且η是字符的數(shù)量。
[0058] Q的y坐標=坐標點Ρ的y坐標+h (2)
[0059] 其中,h是字符的高度。
[0060] 當顯示N個對象時,坐標點P由下面的公式(3)和(4)來表示(計算)。
[0061] P 的 X 坐標=ws (3)
[0062] 其中,ws是從屏幕的左端到對象0的距離。
[0063] P 的 y 坐標=NXh+NXhs (4)
[0064] 其中,N是對象的數(shù)量,h是字符的高度,而hs是對象之間的間距。
[0065] 以這種方式,從距屏幕左端的一定距離ws向右順序地顯示由對象控制器13產生 的對象,其中對象之間具有一定的間距hs。因此,與識別結果相對應的句子S以水平書寫的 方式顯示在對象0的矩形[P,Q]內部。
[0066] 屏幕的寬度是有限的。在如上所述的坐標的確定中,例如當句子S的字符的數(shù)量η 超過屏幕的側寬或者顯示在屏幕上的對象的數(shù)量Ν增加時,對象0可能在垂直方向上在屏 幕之外。在這種情況下,顯示單元12可以執(zhí)行下面的顯示處理。例如,當對象0顯示在屏 幕的下端以下時,將屏幕向上滾動對象〇的高度h,從而使得對象0顯示在屏幕上。當對象 〇的水平寬度(wXn)的一部分在屏幕之外時,提供多個行(每行具有對象0的高度h),使得 對象0全部顯示在屏幕中。以這種方式,顯示單元12可以根據(jù)對象0要在其中顯示的屏幕 區(qū)域來執(zhí)行處理,從而使得對象〇全部顯示在屏幕中。
[0067] 返回參照圖1,對象管理器14管理對象。對象管理器14從對象控制器13接收產 生的對象,并且將它們存儲和保存在存儲區(qū)域中。例如,對象的存儲區(qū)域是包括在編輯裝置 100中的存儲設備中的某個存儲區(qū)域。對象管理器14根據(jù)來自對象控制器13的指令對對 象執(zhí)行諸如數(shù)據(jù)參考、數(shù)據(jù)讀取或數(shù)據(jù)寫入之類的各種類型的數(shù)據(jù)操作。
[0068] 語言處理器15對與識別結果相對應的句子S執(zhí)行語言處理。例如,語言處理器15 將句子S分解成諸如詞語或語素之類的某些單元。在該處理進行分解之后,語言處理器15 根據(jù)語言對句子S執(zhí)行語法校正(諸如字符校正或標點符號插入)。
[0069] 下面描述了通過上述相應功能模塊的協(xié)同操作實現(xiàn)的編輯操作。
[0070] 操作示例
[0071] 實施例中的編輯功能提供了可以對對象執(zhí)行連接、組合和分割的各種類型的編輯 操作的環(huán)境。對象的連接操作是連接兩個對象并且產生新對象(連接的對象)的操作。對象 的組合操作是組合兩個或更多個對象并且產生新對象(組合的對象)的操作。對象的分割操 作是對一個對象進行分割并且產生兩個或更多個對象(經分割的對象)的操作。以這種方 式,實施例中的編輯功能提供了可以實現(xiàn)直觀的編輯操作的環(huán)境。
[0072] 圖3A和3B是示出對實施例中的對象進行的連接操作的示例的示意圖。如圖3A 中所示,當對兩個對象進行連接時,用戶首先用手指觸摸顯示在屏幕上的對象〇(在圖3A中 使用實心圓來指示觸摸到了的情況)以便指定用戶希望將其連接到另一個對象的對象〇。 然后,用戶向用作連接的目標的另一個對象移動手指,同時保持手指在屏幕上觸摸(在圖3A 中使用虛線來指示運動的軌跡),并且此后,在用作目標的對象〇處抬起手指來指示對對象 的連接操作。當接收到指令時,對象控制器13根據(jù)接收到的指令將這兩個對象連接到彼 此。語言處理器15在連接之后對新對象執(zhí)行語法字符校正。結果,如圖3B中所示,在字符 校正之后,與這兩個對象相對應的相應的句子S作為一個句子(連接的句子,其中,句子201 (在英語中的意思是come)被校正為句子202 (在英語中的意思是wear),句子201和202二 者在日語中的發(fā)音都是"kite imasu")顯示在屏幕上。
[0073] 圖4A和4B是示出對實施例中的對象進行的組合操作的示例的示意圖。如圖4A 中所示,當對三個對象進行組合時,用戶首先使用相應的手指(圖4A中的實心圓)來觸摸顯 示在屏幕上的對象以便指定要組合的相應對象。然后,用戶將三個手指移動到屏幕上的相 同位置,同時保持三個手指在屏幕上觸摸(圖4A中的虛線),并且此后,在該位置處抬起這三 個手指來指示對對象進行組合處理。當接收到指令時,對象控制器13根據(jù)接收到的指令將 這三個對象進行組合。語言處理器15在組合之后對新對象執(zhí)行語法字符校正。結果,如圖 4B中所示,在字符校正之后與這三個對象相對應的相應的句子S作為一個句子(組合的句 子)顯示在屏幕上。
[0074] 圖5A和5B是示出對實施例中的對象進行的分割操作的示例的示意圖。如圖5A 中所示,當將對象分割為三個新對象時,用戶首先使用三個手指(圖5A中的實心圓)來觸摸 顯示在屏幕上的對象,以便指定分割后的新對象。然后,用戶將三個手指移動到屏幕上彼此 不同的位置同時保持三個手指在屏幕上觸摸(圖5A中的虛線),并且此后,在這些位置處抬 起這三個手指來指示對對象進行分割處理。當接收到指令時,對象控制器13根據(jù)接收到的 指令將該對象分割為三個新對象。從而,如圖5B所示,與該對象相關聯(lián)的句子S作為指定 的三個句子(經分割的句子)顯示在屏幕上。
[0075] 以下面的方式來實現(xiàn)這種編輯操作。例如,顯示單元12通過觸摸傳感器在屏幕上 檢測諸如手指之類的操作點(屏幕上的觸摸的坐標)以便接收屏幕上的操作。顯示單元12 向對象控制器13通知以這種方式接收的操作作為操作事件。然后,對象控制器13識別針 對檢測到的操作點中的每一個操作點的操作事件。從而,例如,對象控制器13識別出觸摸 事件(諸如在手勢操作中手指在屏幕上的某個點上的觸摸、手指向屏幕上的某個點的移動、 或者手指從屏幕上的某個點抬起),并且獲得觸摸事件以及與該事件相對應的信息。
[0076] 圖6是示出實施例中的觸摸事件的數(shù)據(jù)的示例的示意圖。對象控制器13獲得圖 6中所示的數(shù)據(jù),該數(shù)據(jù)與相應的觸摸事件相對應。例如,當觸摸事件是"下推"時,獲得觸 摸發(fā)生的時間、屏幕上的操作點的坐標(X,y)以及操作點的標識符作為數(shù)據(jù)。例如,當觸摸 事件是"移動"時,獲得移動開始時間、屏幕上的移動目的地的坐標(X,y)以及操作點的標 識符作為數(shù)據(jù)。例如,當觸摸事件是"上推"時,獲得抬起手指的時間、屏幕上的操作點的最 終坐標(X,y)以及操作點的標識符作為數(shù)據(jù)。例如,可以通過包括在基本軟件(諸如操作系 統(tǒng)(0S))或多點觸摸平臺中的應用程序接口(API)來獲得這種信息。換句話說,對象控制器 13可以使用已知的系統(tǒng)獲得關于接收到的編輯操作的信息。
[0077] 下面描述由實施例中的編輯裝置100執(zhí)行的編輯功能的基本處理
[0078] 處理
[0079] 圖7是示出實施例中的編輯裝置100的處理過程的示例的流程圖。圖7中示出的 處理主要由對象控制器13執(zhí)行。如圖7中所示,實施例中的對象控制器13執(zhí)行多點觸摸 檢測例程(步驟S1)來檢測在屏幕上觸摸的操作點中的所有操作點。然后,對象控制器13 基于操作點的數(shù)量N來確定是否有一個或多個檢測到的操作點(在步驟S2中是確定是否 N尹0)。如果沒有檢測到操作點(在步驟S2處為否),那么對象控制器13結束該處理。如 果檢測到一個或多個操作點(在步驟S2處為是),那么對象控制器13確定N是否是兩個或 更多個(在步驟S3處是否N>1)。如果N為1 (在步驟S3處為否),那么對象控制器13執(zhí)行 連接例程(步驟S4),并且在此后結束該處理。如果N為兩個或更多個(在步驟S3處為是), 那么對象控制器13確定N個操作點中的所有操作點是否在相同的對象中(步驟S5)。如果 N個操作點不在相同的對象中(在步驟S5處為否),那么對象控制器13執(zhí)行組合例程(步驟 S6),并且在此后結束該處理。如果N個操作點在相同的對象中(在步驟S5處為是),那么對 象控制器13執(zhí)行分割例程(步驟S7),并且在此后結束該處理。
[0080] 細節(jié)
[0081] 下面描述了該處理的細節(jié)。
[0082] 由對象控制器13執(zhí)行的處理的細節(jié)
[0083] 圖8是示出實施例中的多點觸摸檢測例程的處理過程的示例的流程圖。圖8中示 出的處理是圖7中示出的步驟S1處的處理的示例。在實施例中的多點觸摸檢測例程中,另 一個觸摸的檢測被等待從觸摸第一操作點時開始經過時間Te,并且將在經過時間Te期間 觸摸的操作點記錄在陣列P中以便檢測一個或多個被觸摸的操作點。
[0084] 如圖8中所示,實施例中的對象控制器13首先等待監(jiān)測到觸摸事件(操作事件) (在步驟S10處為否)。如果檢測到第一觸摸事件(在步驟S10處為是),那么對象控制器13 確定該事件為"下推"事件。對象控制器13將檢測到的操作點的標識符設置為idl,并且將 陣列P[l]設置為Udi,( Xl,yi)}(步驟11)以便將操作點的標識符與操作點的坐標相關聯(lián)。 然后對象控制器13在自從檢測到第一觸摸事件以來的經過時間Te內等待檢測到下一個觸 摸事件(在步驟S12處為是并且在步驟S13處為否)。如果檢測到下一個觸摸事件(在步驟 S13處為是),那么對象控制器13識別檢測到的觸摸事件的類型(步驟S14)。如果在經過時 間Te內沒有檢測到下一個觸摸事件(在步驟S12處為否),那么對象控制器13結束該處理。
[0085] 當檢測到的觸摸事件的類型為"下推"事件時,對象控制器13將N遞增1,作為與 陣列P[l]同時被觸摸到的操作點。對象控制器13將作為{id N,(xN,yN)}的陣列p[N]加到 陣列P (步驟15)。當檢測到的觸摸事件是"上推"事件(手指立刻觸摸對象并且立刻從該 對象上抬起的情況)時,對象控制器13確定操作點ρ [η' ]為手指抬起的操作點(步驟S16)。 然后,對象控制器13從陣列p[n] (n=l,. . .,Ν)中刪除操作點ρ[η' ](其是手指抬起的操作 點),并且對陣列數(shù)量重新計數(shù)(步驟S17),并且然后將Ν設置為Ν-1 (步驟S18)。當檢測到 的觸摸事件的類型為"移動"事件時,對象控制器13認為該事件是手指在操作中的晃動,并 且不考慮檢測到的觸摸事件(步驟S19)。結果,在多點觸摸檢測例程完成之后獲得了陣列 p[n] = {idn, (xn, yn)} (η=1, · . ·,Ν),在該陣列中記錄了檢測到的操作點。
[0086] 連接處理
[0087] 圖9是示出實施例中的連接例程的處理過程的示例的流程圖。圖9中示出的處理 是圖7中示出的步驟S4處的處理的示例。在實施例中的連接例程中,兩個對象彼此連接并 且因此產生了連接的對象,該例程由包含在實施例中的對象控制器13中的連接器131來執(zhí) 行。
[0088] 當在多點觸摸檢測例程中檢測到被觸摸的操作點時,實施例中的對象控制器13 執(zhí)行連接例程。
[0089] 如圖9中所示,對象控制器13接收檢測到的操作點ptlhUdp (Xl,y)}。連接器 131確定操作點p[l]是否在對象中(包括在對象的邊界線上)(步驟S20)。
[0090] 如果操作點p[l]不在對象中(在步驟S20處為否),那么連接器131確定沒有指定 對象,并且然后結束該連接例程。
[0091] 可以以下面的方式來進行上述確定。確定某點A=(ax,ay)是否是位于對象中 (包括在對象的邊界線上)的點可以基于"點P彡點A并且點A彡點Q"來進行,其中,對象 〇= {s, [P, Q]}的點P和Q的坐標為P= (px, py)并且Q= (qx, qy)。點P彡點A的不等式意味 著"px彡ax并且py彡ay"。換句話說,點P彡點A的不等式意味著"在屏幕上點P位于點 A的左上方"。點P是對象0的矩形顯示區(qū)域的左上端點,而點Q是該矩形顯示區(qū)域的右下 端點。因此,如果"點P <點A并且點A <點Q",則確定點A在矩形[P, Q]中或者在其邊界 線上。在下面的描述中,該確定方式被稱為內點確定方式。
[0092] 如果操作點ρ [1]在對象中(在步驟S20處為是),那么連接器131識別對象 01={S1,[P1,Q1]},在其中具有操作點p[l](步驟S21)。連接器131確定檢測到操作點p[l] 包括在該對象01中。例如,顯示單元12可以根據(jù)從對象控制器13接收的指令,通過將對象 01的顯示顏色改變成與屏幕上的其它對象的顏色不同的顏色來改變顯示形式,從而使得用 戶可以看出對象01處于操作目標狀態(tài)。
[0093] 然后,連接器131等待檢測到操作點p[l]的"上推"事件(在步驟S22處為否)。如 果檢測到"上推"事件(在步驟S22處為是),那么連接器131使用內點確定方式,針對存儲在 對象管理器14中的對象中的除了對象01以外的所有對象來確定操作點p[l]的事件發(fā)生 位置(x,y)(其是抬起手指處的坐標)是否在不同于對象01 (第一目標對象)的對象02 (第 二目標對象)中(步驟S23)。該確定是僅基于手指最終抬起處的位置做出的,而不考慮手指 的移動路線。
[0094] 如果操作點P[l]的事件發(fā)生位置(X,y)在對象01中或者不在這些對象中的任何 一個對象中(在步驟S23處為否),那么連接器131結束該連接例程。如果操作點p[l]的事 件發(fā)生位置(x,y)在不同于對象01的對象〇2={S2, [P2,Q2]}中(在步驟S23處為是),那么 連接器131將對象01和對象02連接到彼此,并且然后使得語言處理器15產生連接句子S1 和句子S2的句子(連接的句子)的經校正的句子S (步驟S24)。在句子的連接中,連接器 131執(zhí)行下面的處理。
[0095] 當在連接操作中的移動之后對象01在對象02上時,連接器131將句子S2連接到 句子S1。當在連接操作中的移動之后對象02在對象01上時,連接器131將句子S1連接 到句子S2。從而,產生了連接的句子S'。具體來說,當S1是句子J001 (圖9B)并且S2是 句子J002時,句子S2連接到句子S1之后的句子S'是J003。相反,句子S1連接到句子S2 之后的句子S'是J004。語言處理器15對連接的句子S'執(zhí)行語法校正。語言處理器15通 過語言處理(諸如校正日語中的同音字、校正英語中的格(case)、或者不管何種語言插入標 點符號)校正或形成句子S'(連接的句子)。然后,連接器131確定與經校正的句子S相關 聯(lián)的新對象〇的形狀。在該確定中,將點P設置為點P1或點P2中的y坐標小于另一個的 y坐標的任意一點(設置為屏幕上側的點)。例如,連接器131根據(jù)點P的坐標(X,y)、經校 正的句子S的字符的數(shù)量η、字符的寬度w以及字符的高度h來計算右下端點Q。從而,確 定新對象0的形狀。
[0096] 然后,連接器131根據(jù)經校正的句子S以及與經校正的句子S相關聯(lián)的新對象0 的形狀來產生新對象0={s,[P,Q]}(步驟S25)。隨后,連接器131從對象管理器14中刪除 用于連接的對象01和對象02,并且將產生的新對象0存儲在對象管理器14中(步驟S26)。 連接器131指示顯示單元12從屏幕上刪除用于連接的對象01和對象02,并且顯示產生的 新對象0 (步驟S27)。
[0097] 圖10是示出實施例中的用于產生經校正的句子S的處理過程的示例的流程圖。圖 10中示出的處理是圖9中示出的連接例程的在步驟S24處執(zhí)行的處理的示例。實施例中的 語言處理器15對句子S執(zhí)行語法校正(諸如字符的校正或標點符號的插入)。例如,當用戶 說出句子J005時(圖9B)(英語的I wear a long sleeved-shirt),在該句子中在逗號的位 置處給出停頓,該發(fā)音被識別成兩種發(fā)音,因此,語音識別結果是句子J001和句子J〇〇2(英 語的come)。使用同音詞錯誤地識別了句子J002的結果,這是因為該發(fā)音被分隔成了兩個 發(fā)音。當翻譯這兩個句子時,也沒有適當?shù)貙λ鼈冞M行翻譯,這是因為翻譯目標句子是不完 整的。傳統(tǒng)地,當這種虛假識別發(fā)生時,用戶需要再次說出相同的句子。然而,發(fā)音可能再 次被錯誤地進行語音識別,或者可能在發(fā)音中再次不由自主地給出停頓,并且從而導致了 虛假識別。鑒于這種情況,希望自動校正諸如同音詞之類的語法錯誤,例如將句子J002 (英 語的come)校正為句子J006 (英語的wear)。實施例中的語言處理器15通過執(zhí)行下面的 處理來實現(xiàn)這種校正功能。
[0098] 如圖10中所示,實施例中的語言處理器15首先接收連接的句子S'。隨后,語言處 理器15對連接的句子S'執(zhí)行形態(tài)分析,并且產生點陣(步驟S30)。圖11是實施例中的作 為形態(tài)分析的結果的點陣輸出的概念圖。圖11示出了當連接的句子S'是句子J003時所 產生的點陣的示例。
[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元語法對經過如上所述處理的點陣賦 予分數(shù)(步驟S33)。然后,語言處理器15通過三元語法來計算點陣結構的分數(shù),并且通過 維特比(Viterbi )算法計算從連接的句子S'的開頭到結尾的最優(yōu)路徑(具有最高分數(shù)的路 徑)(步驟S34)。通過三元語法得到的來自語素1、語素2和語素3的路徑的分數(shù)與語素1、 語素2和語素3順序發(fā)生的概率相對應。該概率是提前通過統(tǒng)計獲得的(標點符號也被認 為是語素)。當概率被表示為P時(語素3 |語素1,語素2),通過語素1到語素 N的從連接 的句子S'的開頭到結尾的路徑的分數(shù)由下面的公示(5)來表示(計算)。
[0102] 路徑的分數(shù)=2l0g P (語素 n|語素 n-2,語素 n-1) (5)
[0103] 其中,11=1,...,奸1。在這里,假定語素-1和0二者都是句子5'的開頭,并且假定 語素 N+1是句子S'的結尾。語言處理器15輸出計算出的最優(yōu)路徑的語素串作為經校正的 句子S。
[0104] 當語言處理器計算出分數(shù)P (字符1203 (英語的wear) I字符1213,字符1214) 和分數(shù)P (字符1202 (英語的come) |字符1213,字符1214)時,分數(shù)P (字符1203 (英語 的wear) |字符1213,字符1214)比分數(shù)P (字符1202 (英語的come) |字符1213,字符 1214)更高(具有更高的概率)。因此,輸出的經校正的句子S是句子J005 (圖9B)(英語的 I wear a long sleeved-shirt),其中,連接的句子S'中的字符1202 (英語的come)被校 正了。以這種方式,在實施例中根據(jù)以下語言規(guī)范(上下文和知識)自動執(zhí)行了校正:相對于 字符1213 (英語的shirt),句子J002 (英語的come)是錯誤的,而句子J006 (英語的wear) 是正確的。從而,該實施例能夠進行校正操作,從而減少文本輸入,并且不需要繁重的編輯 工作。
[0105] 在一些情況下,作為結果,上述處理可以輸出與連接的句子S'相同的經校正的句 子S,這意味著沒有進行校正。當在不同的情況下添加詞語作為平行路徑時,可以在英語和 日語二者中以與同音詞相同的方式對用英語描述的大寫字母和小寫字母進行校正。上面描 述了算法的示例來解釋句子S是可以被校正的。然而,校正方式不局限于該示例。已知的 文本校正方式也是適用的。
[0106] 組合處理
[0107] 圖13是示出實施例中的組合例程的處理過程的示例的流程圖。圖13中示出的處 理是圖7中示出的步驟S6處的處理的示例。在實施例中的組合例程中,對兩個或更多個對 象進行組合并且產生了組合的對象,該例程由包含在對象控制器13中的組合器132來執(zhí) 行。
[0108] 當在多點觸摸檢測例程中檢測到兩個或更多個(K > 2)被觸摸的操作點,并且檢 測到的操作點中的所有操作點不在相同的對象中時,實施例中的對象控制器13執(zhí)行組合 例程。
[0109] 如圖13中所示,對象控制器13接收檢測到的操作點?[幻=0^^)0^1,...,1()。 組合器132首先通過操作目標對象提取例程來提取將檢測到的操作點包括在其中(包括其 邊界線)的對象(步驟S40)。
[0110] 從而,組合器132接收操作目標對象提取例程的輸出(一組操作點) Q={(q[l],〇[1]),. . .,(q[M],0[M])},并且產生各個對象 0[m] (m=l,. . .,M)的拷貝 0' [m], 并且獲得 Q={(q[l], 〇[1]),〇' [1]),…,(q[M], 0[M], 0' [Μ])}。q[m] = {idm, (xm, ym)}表示包 括在P[k]以外的對象中的任何一個對象中的操作點。0[m]表示包括q[m]的對象。0' [m] 表示包括q[m]的對象的拷貝。對象0是用手指觸摸的對象。對象0'是用于在其中存儲在 根據(jù)手指的移動的移動之后的對象的位置的拷貝。m是1,...,M。當檢測到"上推"事件(手 指抬起并且操作完成)時,組合器132將Obj初始化為0bj={}(將Obj設置為沒有元素的 集合),〇bj用于保留一個或多個對象(步驟S41)。
[0111] 然后,組合器132確定提取的對象的數(shù)量Μ是否為2或更多(M>1)(步驟S42)。如 果Μ為1 (在步驟S42處為否并且在步驟S43處為是),那么組合器132前進到連接例程(步 驟S44),這是因為操作點指定了一個對象。如果Μ為0(在步驟S42處為否并且在步驟S43 處為否),那么組合器132結束該處理。如果Μ為2或更多(在步驟S42處為是),如果沒有 手指從這些操作點中的所有操作點處抬起并且在屏幕上存在被觸摸的操作點(在步驟S45 處為是,即,Μ>0),那么組合器132檢測操作點q[l]的觸摸事件(步驟S45到步驟S47)。然 后,組合器132執(zhí)行觸摸事件處理例程(步驟S48)。在觸摸事件處理例程中每檢測到一個 "上推"事件,則將Μ遞減1。
[0112] 如果手指從這些操作點中的所有操作點處抬起并且在屏幕上不存在被觸摸的操 作點,這意味著操作完成(在步驟S45處為否,S卩,Μ=0),那么組合器132執(zhí)行組合對象產生 例程(步驟S49)。
[0113] 圖14是示出實施例中的操作目標對象提取例程的處理過程的示例的流程圖。圖 14中示出的處理是圖13中示出的組合例程的步驟S40處的處理的示例。實施例中的操作 目標對象提取例程提取包括檢測到的操作點的對象。
[0114] 如圖14中所示,實施例中的組合器132接收檢測到的操作點p[k] = (xk,yk) (k=l,. . .,K)。組合器132對提取的對象的數(shù)量Μ進行初始化(M=0)。K表示檢測到的操作 點的數(shù)量。組合器132針對檢測到的操作點p[k] (k=l,. . .,K)中的所有操作點(步驟S50, 在步驟S51處為是,以及步驟S52)使用內點確定方式來確定是否存在包括操作點p [k]的對 象(步驟S53)。如果存在包括操作點p [k]的對象(在步驟S53處為是),那么組合器132確定 包括操作點P [k]的對象是否存在于存儲了保存在對象管理器14中的多個對象的陣列0[m] (m=l,. . .,M)中(步驟S54)。如果包括操作點p[k]的對象沒有存在于陣列0[m] (m=l,. . .,M) (其是一組對象)中(在步驟S54處為否),那么組合器132添加操作點p [k]作為記錄提取的 對象的操作點(操作完成后的目的地)的陣列q[M](其是第(M+1)個元素)。組合器132還添 加包括操作點P [k]的對象作為陣列0[M],其為第(M+1)個元素。從而,組合器132提取了操 作目標對象。然后,組合器132將Μ遞增1(在步驟S55處M+1)。組合器132以上述方式對檢測 到的操作點P[k]中的所有操作點進行處理,并且輸出Q={(q[l],0[l]),...,(q[M],0[M])} 作為操作目標對象的提取結果。
[0115] 操作點p[k]可能是在相同對象上被冗余觸摸的操作點。操作點p[k]可能不指定 對象。在操作目標對象提取例程中,獲得Q= {(q [ 1 ],〇 [ 1 ]),. . .,(q [Μ],0 [M])},從而使得一 個操作點與一個對象相對應,這排除了上述情況。
[0116] 圖15是示出實施例中的觸摸事件處理例程的處理過程的示例的流程圖。圖15中 示出的處理是圖13中示出的組合例程的步驟S48處的處理的示例。實施例中的觸摸事件 處理例程對檢測到的觸摸事件(操作事件)進行處理。
[0117] 如圖15中所示,實施例中的組合器132接收提取的對象0=0[1]、對象0'=0' [1] (其是提取的對象〇的拷貝)以及q=q[l](其是提取的對象〇的操作點)(操作完成后的目 的地)。〇bj保留當前提取的對象。Μ是當前提取的對象的數(shù)量。組合器132識別對象0的 操作點q的觸摸事件的類型(步驟S60)。如果操作點q的觸摸事件是"移動"事件,那么組 合器132基于操作點q在移動之前的坐標(u, V)和操作點q在移動之后的坐標(X,y)來計 算該操作點的移動量Λ = (ΛΧ,Ay) = (X-U,y-V)(步驟S61)。然后,組合器132在移動之后 將操作點q的坐標更新為坐標(x,y)(步驟S62)。然后,組合器132將對象0'(其是提取 的對象〇的拷貝)的形狀[P,Q]更新如下:Ρ=Ρ+Λχ并且Q=Q+Ay (步驟S63)。從而,對象 〇'(其是提取的對象〇的拷貝)根據(jù)操作點q的移動量來移動。在"移動"事件的更新中, 顯示單元12可以將被觸摸的對象0移動到運動后的位置,并且在該位置處對其進行顯示。 如果操作點q的觸摸事件是"上推"事件,那么組合器132基于確定對對象0的操作完成而 向 〇bj 注冊(0[1],0' [1])(步驟 S64)。然后,組合器 132 從 Q 中刪除(q[l],0[l],0' [1]) (步驟S65),并且將Μ遞減1 (步驟S66)。在圖15中示出的公式"A=AU {B}"中,U表示并 集,其意味著元素 B被注冊到(添加到)集合A中。在下面的描述中,以同樣的方式來使用這 樣的公式。
[0118] 圖16是示出實施例中的組合對象產生例程的處理過程的示例的流程圖。圖16中 示出的處理是圖13中示出的組合例程的步驟S49處的處理的示例。實施例中的組合對象 產生例程對提取的多個對象進行組合并且產生新對象。
[0119] 如圖16中所示,實施例中的組合器132接收0bj={(0[l],0' [1]),...,(0[M ],〇' [M])},Obj保留提取的多個對象。Μ是提取的對象的總的數(shù)量。組合器132首先 將提取的對象〇[m]的中心點設置為C[m](m=l,...,M),并且將C[m]的重心C設置為 (C[l]+. ..+C[M])/M。組合器132將從重心C到各個對象0[m]的距離的最大值R設置為 max{|C-C[l],· · ·,C-C[M] |}。組合器132將對象0' [m](其為提取的對象0[m]的拷貝)的 中心點設置為C' [m],并且將C' [m]的重心C'設置為(C' [l]+...+C' [M])/M。組合器132 將從重心C'到各個對象0' [m]的距離的最大值R'設置為max {| C' -C' [1],. . .,C' -C' [Μ] |} (步驟S70)。R和R'之間的差(R-R')意味著在操作之前和之后,提取的對象移動到重心有 多近。R'越小移動量越大。因此,組合器132確定R'的值小于通過將某個閾值TH K與R的 值相加獲得的值的條件是否被滿足(步驟S71)。
[0120] 如果該條件不被滿足(在步驟S71處為否),那么組合器132在不對提取的對象進 行組合的情況下結束該處理。例如,考慮到當用戶觸摸屏幕一次但是此后由于用戶想法的 變化而從屏幕上抬起手指而不發(fā)生任何變化時發(fā)生手指的微小移動,該條件防止執(zhí)行組合 處理,除非檢測到等于或大于某個閾值TH K的移動為止。
[0121] 如果該條件被滿足(在步驟S71處為是),那么組合器132確定檢測到足夠的移動 量。組合器132以中心點C[m]的y坐標的升序(C[m]的y坐標<C[m+l]的y坐標)對提取 的對象0[m]中的所有的提取的對象進行排序,以便確定要對句子S進行組合的組合順序。 組合器132在排序之后將陣列0[m]重新設置為提取的對象0[m] (m=l,. . .,M)(步驟S72)。 提取的對象可能不總是垂直地排列成一行,而是也可以水平排列(y坐標相同)或不規(guī)則排 列。為了解決這些情況,當y坐標相同時,組合器132可以以中心點C[m]的X坐標的升序 (C[m]的X坐標<C[m+l]的X坐標)對提取的對象進行排序。
[0122] 然后,組合器132產生組合的句子S' =S[1]+. . . +S[M],其中,按照排序順序從顯示 在屏幕上側的句子S開始依次地組合句子S。組合器132使得語言處理器15產生所產生的 組合句子S'的經校正的句子S (步驟S73)。然后,組合器132根據(jù)經校正的句子S以及組 合的多個對象中的位于左邊最上側處的對象的形狀來計算新對象的形狀[P,Q](步驟S74)。
[0123] 然后,組合器132根據(jù)經校正的句子S和計算出的形狀[P,Q]來產生新對象 〇={S,[P,Q]}(步驟S75)。隨后,組合器132從對象管理器14中刪除用于組合的多個對象 〇[m],并且將產生的新對象0存儲在對象管理器14中(步驟S76)。然后,組合器132指示顯 示單元12從屏幕上刪除用于組合的多個對象0[m],并且顯示產生的新對象0 (步驟S77)。
[0124] 分割處理
[0125] 圖17是示出實施例中的分割例程的處理過程的示例的流程圖。圖17中示出的處 理是圖7中示出的步驟S7處的處理的示例。在實施例中的分割例程中,分割一個對象0并 產生多個對象,該例程由包含在對象控制器13中的分割器133來執(zhí)行。
[0126] 當在多點觸摸檢測例程中檢測到兩個或更多個(K > 2)被觸摸的操作點,并且檢 測到的操作點中的所有操作點在相同的對象〇中時,實施例中的對象控制器13執(zhí)行分割例 程。
[0127] 如圖17中所示,對象控制器13接收檢測到的操作點p[k] = (xk,yk) (k=l,. . .,K)。分割器133首先以與在組合例程中的步驟S41處執(zhí)行的相同的方式產生 對象〇'(其是包括檢測到的操作點P[k]的對象的拷貝),并且將操作點的集合Q設置為 Q={(q[l],〇,〇'),···,(q[K],0,0')}(步驟 S80)。
[0128] 然后,分割器133使用操作點的集合Q作為輸入來執(zhí)行對象分割例程(步驟S81)。 從而,分割器133從對象分割例程接收輸出Q={(q[l],0[l],0' [1]),...,(q[L],0[L],0' [ L])}(其中操作點和分割的區(qū)域彼此相關聯(lián))、將保留經分割的對象的Obj初始化成0bj={} (將〇bj設置為沒有元素的集合)、并且將對象的數(shù)量Μ設置為L (其是分割的數(shù)量)(步驟 S82)。
[0129] 然后,分割器133確定Μ是否為1或更多(Μ>0)(步驟S83)。如果Μ為1或更多 (在步驟S83處為是),那么分割器133等待在集合Q的操作點q[l],. . .,q[L]中的任何一個 操作點處發(fā)生觸摸事件(在步驟S84和步驟S85處為否),并且如果檢測到觸摸事件(在步驟 S84和步驟S85處為是),那么執(zhí)行觸摸事件處理例程(步驟S86)。從而,Obj和Μ由觸摸事 件處理例程的輸出更新。
[0130] 如果Μ為0 (在步驟S83處為否),那么分割器133確定操作點中的所有操作點由 "上推"事件結束,并且因此操作結束。分割器133將當時最左邊的對象0[1]和最右邊的對 象〇[L]分別移動到對象0' [1]和對象0' [L],對象0' [1]和對象0' [L]是對象0[1]和對象 〇[L]的各自拷貝。分割器133確定0' [1]和0' [L]的中心點之間的距離比0[1]和0[L]的 中心點之間的距離大某個距離THD或更多的條件是否被滿足(步驟S87)。
[0131] 如果不滿足該條件(在步驟S87處為否),那么分割器133結束該處理。如果滿足 該條件(在步驟S87處為是),那么分割器133從對象管理器14中刪除分割前的對象0,并且 將經分割的對象〇' [1]存儲在對象管理器14中(步驟S88)。然后,分割器133指示顯示單 元12從屏幕上刪除分割前的對象0,并且顯示經分割的對象0' [1](步驟S89)。顯示單元 12可以以對齊的方式來顯示經分割的對象0' [1]。
[0132] 圖18是示出實施例中的對象分割例程的處理過程的示例的流程圖。圖18中示出 的處理是圖17中示出的分割例程的步驟S81處的處理的示例。在實施例中的對象分割例 程中,根據(jù)操作點的位置來確定對象0的分割位置、根據(jù)分割位置來分割指定的對象0、產 生多個新對象并且使所產生的對象和操作點與彼此關聯(lián)。
[0133] 如圖18中所示,實施例中的分割器133接收Q={(q[l],0, 0'),. . .,(q[K],0, 0')}, 其是操作點的集合。K是檢測到的操作點的總的數(shù)量。分割器133首先以y坐標的升序 (q[k]的y坐標<q[k+l]的y坐標)對集合Q中的操作點q[k]進行排序。分割器133在 排序之后將陣列Q [k]重新設置為Q= {(q [ 1],0, 0'),. . .,(q [K],0, 0')},其是操作點的集合 (步驟S90)。當y坐標相同時,分割器133可以以X坐標的升序(q[k]的X坐標<q[k+l]的 X坐標)對集合Q中的操作點q[k]進行排序。
[0134] 然后,分割器133使語言處理器15基于某種單元(例如,"詞"或"語素")對句子S 進行分割,并且從句子的開頭依次獲得經分割的結果S[l],. . .,S[l](步驟S91)。
[0135] 然后,分割器133計算對象0上的經分割的結果S[i_l]與S[i]之間的邊界線 [A[i],B[i]] (i=l,· · ·,1)(步驟 S92)。A[i]是經分割的結果 S[i-1]與 S[i] (1 彡 i 彡 1) 之間的邊界線的上端點,而B[i]是經分割的結果S[i-1]與S[i] (1 < i < 1)之間的邊界線 的下端點。當S[i-1]與S[i]之間的邊界設置在距離句子的開頭第(X+1)個字符處時(第X 個字符是S[i-1]并且第(X+1)個字符是S[i]),對象0的形狀為[P,Q]。A[i]和B[i]的 各自坐標由下面的公式(6 )和(7 )來表示(計算)。
[0136] A[i] = (wXX,P 的 y 坐標) (6)
[0137] B[i] = (wXX,Q 的 y 坐標) (7)
[0138] 其中,w是字符的寬度,而X是從句子的開頭到邊界的字符的數(shù)量。此外,作為下 面處理的必要設置,A[0]是對象0的形狀[P,Q]的左上端點P,而B[i+1]是對象0的形狀 [P,Q]的右下端點Q。
[0139] 圖19是實施例中的經分割的區(qū)域的概念圖。圖19示例性地示出了當句子1901 被分割成三個語素時的兩個邊界線[A[1],B[1]]和[A[2],B[2]]。矩形R[i]被定義為 [A[i],B[i+1]],并且與對象0的經分割的區(qū)域相對應。與經分割的區(qū)域相對應的經分割的 對象 〇[i]被表示為〇[i] = {S[i],[A[i],B[i]]} (i=l,...,I)。
[0140] 返回參照圖18,分割器133對經分割的區(qū)域的索引s進行初始化(s=0),并且還對 標志[i](i=l,...,I)進行初始化(標志[i]=〇),當經分割對象0包括操作點時,將標志[i] 中的每一個設置為1。分割器133將與操作點相關聯(lián)的對象的集合Q'初始化為Q'={}(將 Q'設置為沒有元素的集合),并且將X (Q的元素的數(shù)量)設置為〇 (步驟S93)。
[0141] 然后,分割器133使用內點確定方式以順序k=l,. . .,K (步驟S95)相對于操作點 p[k] (k=l,. . .,K)中的所有操作點(如果在步驟S94處為是)來識別包括p[k]的經分割的 區(qū)域R[i](步驟S96)。
[0142] 然后,分割器133確定與經分割的區(qū)域相對應的標志[i]是否為0(在步驟S97處 為否),并且如果標志[i]為1 (在步驟S97處為否),那么確定經分割的區(qū)域R[i]已經與其 它操作點相關聯(lián)。因此,分割器133不執(zhí)行關聯(lián)以防止重復的關聯(lián)。
[0143] 如果標志[i]為0 (在步驟S97處為是),那么分割器133確定經分隔的區(qū)域R[i] 不與任何操作點相關聯(lián)。分割器133將X遞增1 (在步驟S98處x+1),并且將經分割的對 象〇[x]設置為經分割的結果{S[s]+S[s+l]+...+S[i],[A[s],B[i]]}。分割器133在操作 點的集合Q'中注冊(q[x],0[x],0' [X])(步驟S99)。q[x]與操作點p[x]相對應。0' [X] 與是對象〇[x]的拷貝的對象相對應。S[s]與包括在經分割的區(qū)域R[i]中的經分割的字 符或經分割的字符串相對應。分割器133對標志[i]設置1,并且對經分割的區(qū)域的索引s 設置(i+Ι)(步驟S100)。
[0144] 如果對操作點p[k]中的所有操作點執(zhí)行上述處理(在步驟S94處為否),那么分割 器133將分割的數(shù)量X設置為L,并且將由操作點q[L]指示的經分割的區(qū)域設置為經分割 的區(qū)域町1]。分割器133對經分割的區(qū)域1?[1+1],1?[1+2],...,1?[1](其是基于某種單元 分割的)進行組合,并且產生對象〇[L]的區(qū)域。分割器133將與對象0[L]相關聯(lián)的句子 S[L]設置為經分割的結果S[L]=S[J+l]+S[J+2]+. . . +S[I](組合經分割的結果的字符串), 其包括基于某種單元分割的結果,并且將Q[L]設置為對象0的右下端點Q。分割器133將 對象〇' [L]設置為更新的對象0[L]的拷貝(步驟S101)。作為處理的結果,分割器133輸 出 L、Q 的元素的數(shù)量、以及 Q={(q[l],0[l],0' [1]),...,(q[L],0[L],0' [L])}作為操作目 標對象的經分割的結果。
[0145] 通過該處理,指定的對象0被分割成彼此相鄰的L個對象0[x] (x=l, . . .,L)的 區(qū)域。k越小,操作點p[k]在屏幕上的位置越靠左。當處理在操作點p[k]處執(zhí)行時,由 P[l],. . .,P[k_l]指定的經分割的區(qū)域中的最右邊的經分割的區(qū)域是R[s_l](當s=0時為 R[0]),并且經分割的區(qū)域R[s]在經分割的區(qū)域R[s_l]的右側。當操作點p[k]包括在經 分割的區(qū)域R[i]中時,對象〇[χ]將組合了不包括來自經分割的區(qū)域R[s]到經分割的區(qū)域 R[j_l]的操作點的區(qū)域和經分割的區(qū)域R[j]的區(qū)域設置為其形狀。該區(qū)域中的字符串(組 合了經分割的結果的字符串)被設置為對象0的句子S。從而,對象0[x] (x=l,...,L)是分 割后新產生的對象。所產生的對象〇[χ]的區(qū)域以及對象〇[χ+1]的區(qū)域(x=l,...,L-1)彼 此相鄰。因此,句子S是組合了經分割的結果(S[l]+...+S[L])的字符串。分割器133首 先使語言處理器15基于某種單元對使用操作點指定的對象0進行分割,并且然后獲得經分 割的字符或字符串(經分割的結果)以及與經分割的結果相對應的經分割的區(qū)域。然后,分 割器133根據(jù)操作點的位置來確定對象0的分割位置,并且通過根據(jù)分割位置對經分割的 結果和經分割的區(qū)域進行重新組合來產生分隔后的新的多個對象,以便使所產生的對象與 操作點相關聯(lián)。
[0146] 圖20是示出實施例中的對象0的分割的示例的示意圖。如圖20中所示,與句子 2001中的句子S相關聯(lián)的對象0在語素的基礎上被分割成8個。在三個操作點p[l]、p [2] 和P [3]中,兩個操作點p[l]和p [2]指定字符2011的區(qū)域,而操作點p [3]指定字符2012 的區(qū)域。在這種情況下,分割器133根據(jù)操作點的位置來確定對象0的分割位置,并且對 經分割的結果和經分割的區(qū)域進行重新組合。從而,分割器133產生彼此相鄰的兩個對象 0[1]和0[2]。作為處理的結果,分割器133輸出L=2、以及Q={(p[l],0[l],0' [1]),...,(p [3],0[2],0' [2])}作為對象分割例程的輸出。
[0147] 在實施例中的編輯裝置100中,對象控制器13根據(jù)由輸入接收機11接收的輸入 數(shù)據(jù)來產生一個或多個在編輯中可操作的對象。在實施例中的編輯裝置100中,顯示單元 12顯示所產生的對象并且接收指示對象的連接或組合或者對象的分割的手勢操作。在實施 例中的編輯裝置100中,對象控制器13根據(jù)接收到的操作執(zhí)行對操作中指定的對象的連接 或組合的編輯處理,或者執(zhí)行對操作中指定的對象的分割的編輯處理,并且產生一個新對 象或多個新對象。在實施例中的編輯裝置1〇〇中,顯示單元12顯示所產生的一個新對象或 多個新對象并且將編輯屏幕的內容更新為在其中反映了編輯操作的內容。
[0148] 實施例中的編輯裝置100提供了可以對輸入數(shù)據(jù)執(zhí)行直觀的操作的環(huán)境。實施例 中的編輯裝置100允許容易的編輯操作以及自動校正語言中的語法錯誤(虛假識別),從而 有可能減輕諸如校正虛假識別的校正之類的編輯工作中的負擔。結果,實施例中的編輯裝 置100可以增強用戶的便利。實施例中的編輯裝置100可以容易地實現(xiàn)擴展功能,使得能 夠進行諸如將對象的句子S復制到另一個文本編輯器、直接編輯句子S并且將句子S存儲 到文件中之類的操作。從而,可以向用戶提供具有高便利性的服務。
[0149] 在實施例中,描述是針對對根據(jù)輸入語音的識別結果產生的文本句子進行編輯的 情況做出的。編輯裝置100的編輯功能不局限于該情況。例如,實施例中的編輯裝置100 的功能(編輯功能)還適用于對符號和圖形進行編輯的情況。
[0150] 第一修改
[0151] 概述
[0152] 除了連接操作以外,第一修改提出用于將與對象相關聯(lián)的句子插入與連接的對象 相關聯(lián)的句子的處理。例如,插入操作可以執(zhí)行如下。通過分割操作將一個對象分割成兩 個對象。將另一個用作插入的對象連接到經分割的對象中的一個,并且此后,將經分割的對 象中的另一個連接到連接的對象。然而,這種情況需要一次分割操作和兩次組合操作,從而 導致操作繁復。第一修改提供了能夠通過與兩個對象的連接操作相同的操作(相同的操作 次數(shù))來插入新對象的環(huán)境。從而,可以進一步增強可用性。在下面的描述中,描述了與第 一實施例的條目不同的條目,并且以相同的參考標號來標注相同的條目,并省略對其的重 復描述。
[0153] 細節(jié)
[0154] 插入連接處理
[0155] 圖21是示出第一修改中的插入連接例程的處理過程的示例的流程圖。圖21中示 出的處理是替代圖7中示出的步驟S4處的連接例程的可執(zhí)行插入-連接例程的處理過程 的示例。在從步驟S114到步驟S116的處理中,第一修改中的插入-連接例程不同于圖9 中示出的連接例程。
[0156] 如圖21中所示,如果操作點p[l]的事件發(fā)生位置(X,y)在不同于對象01的對象 02={S2, [P2, Q2]}中(在步驟S113處為是),那么第一修改中的連接器131確定操作點p[l] 的事件發(fā)生位置(x,y)是否在對象02的字符上(步驟S114)。換句話說,連接器131確定 "上推"事件發(fā)生的位置是在對象02的字符上還是在不同于對象02的字符的區(qū)域中。
[0157] 為了具體的解釋,讓"上推"事件發(fā)生的位置的坐標為(x,y),那么對象02的形狀 為[P,Q],P=(P x,Py),并且Q=(Qx,Qy)。在這種情況下,當執(zhí)行該確定過程時,事件發(fā)生位置 的坐標(X,y)在對象02中。因此,可以確定:如果滿足下面的條件1至4中的任何一個條 件,那么事件發(fā)生位置的坐標(x,y)在距對象02的矩形的右側和左側中的一側某個距離 THX之內或者在距該矩形的上側和下側中的一側某個距離THy之內。
[0158] x-Px〈THx 條件 1
[0159] Qx-x〈THx 條件 2
[0160] y-Py〈THy 條件 3
[0161] Qy_y〈THy 條件 4
[0162] 如果"上推"事件發(fā)生位置的坐標(X,y)滿足條件1至4中的任何一個條件,那么 連接器131確定"上推"事件發(fā)生在不同于對象02的字符區(qū)域的區(qū)域中。如果事件發(fā)生位 置的坐標(X,y)不滿足條件1至4,那么連接器131確定"上推"事件發(fā)生在對象02的字符 上。
[0163] 如果"上推"事件的發(fā)生位置在不同于對象02的字符區(qū)域的區(qū)域中(在步驟S114 處為否),那么連接器131執(zhí)行連接操作(步驟S117到步驟S120)。
[0164] 如果"上推"事件的發(fā)生位置在對象02的字符上(在步驟S114處為是),那么連接 器131以與圖18中所示的對象分割例程相同的方式來計算對象02的邊界線(例如,當基 于語素對對象02進行分割時的各個邊界線)。連接器131基于邊界線的計算結果在距離事 件發(fā)生位置的坐標(X,y)最近的邊界處將對象02的句子S2分割成句子S21和S22 (步驟 S115)。作為一個示例,讓事件發(fā)生位置的坐標(x,y)在經分割的區(qū)域R[i] = [A[i],B[i+l]] 中,A[i]的X坐標為a,并且B[i+1]的X坐標為b。在這種情況下,距離事件發(fā)生位置的坐標 (x,y)最近的邊界是邊界[A[i],B[i]] (x-a 彡 b-x)或者邊界[A[i+l],B[i+l]] (X-a>b-x)。 讓對象01和02的句子分別是句子S1和S2。句子S21與位于距事件發(fā)生位置的坐標(x,y) 最近的邊界左側的句子S2相對應。句子S22與位于距事件發(fā)生位置的坐標(X,y)最近的邊 界右側的句子S2相對應。因此,連接器131以這種順序依次連接句子S21、S1和S22,然后 使語言處理器15產生連接成的句子S'的經校正的句子S (步驟S116)。此后,連接器131 前往步驟S118處的處理以便繼續(xù)該連接處理。
[0165] 當用戶想要插入句子S時,用戶用手指觸摸用戶想要插入的對象01,將手指移動 到對象02的字符上,并且在該字符的插入位置處抬起手指。從而,指定的對象01的句子S 被插入到了該位置處。當不是在字符上而是在對象02的邊界線附近抬起手指時,句子S被 連接到與對象02相關聯(lián)的句子S2。
[0166] 如上所述,第一修改提供了能夠以與對象01和02的連接操作相同的操作(相同的 操作次數(shù))通過插入-連接例程的處理來插入新對象〇的環(huán)境。從而,第一修改可以進一步 增強用戶便利。
[0167] 第二修改
[0168] 概述
[0169] 在第一實施例中,文本是在水平方向上從左向右進行顯示的。一些語言(諸如日 語)可以水平書寫也可以垂直書寫。一些語言(諸如阿拉伯語)是從右向左水平書寫的。然 而,在阿拉伯語中,數(shù)字是從左向右書寫的。以這種方式,書寫方向(即,閱讀方向(顯示方 向))根據(jù)文本的語言和內容而變化。第二修改提出了用于根據(jù)語言、字符的書寫方向(垂 直或水平地書寫)或當對象被組合(包括被連接)時文本的內容來確定句子的組合順序的處 理。從而,可以進一步增強可用性。在下面的描述中,描述了與第一實施例的條目不同的條 目,并且以相同的參考標號來標注相同的條目,并省略對其的重復描述。
[0170] 細節(jié)
[0171] 連接處理
[0172] 在第二修改中,描述了根據(jù)語言、書寫方向和內容來確定兩個對象的連接順序的 兩種類型的處理。具體來說,一種是用于具有諸如阿拉伯語之類的書寫特征的語言的處理, 而另一種是用于具有諸如日語的書寫特征的語言的處理。在下面的處理中,在語言處理器 15中初步定義了根據(jù)語言、書寫方向和內容來確定與各個對象相關聯(lián)的句子S的連接順序 的規(guī)則(規(guī)定)。
[0173] 圖22是示出第二修改中用于兩個對象的連接順序的處理的過程的第一示例的流 程圖。圖22中所示的處理是應用于圖9中示出的連接例程中的步驟S24處的處理以及應 用于圖21中示出的插入-連接例程中的步驟S116和步驟S117處的處理的示例性處理,并 且其與用于具有諸如阿拉伯語的書寫特征的語言的處理相對應。第二修改中的連接器131 根據(jù)語言處理器15中定義的規(guī)則確定連接順序、連接對象并且產生新對象。
[0174] 如圖22中所示,實施例中的連接器131將對象02= {S2, [P2,Q2]}連接到對象 01= {Sl,[Pl,Q1]}。連接器131識別對象02 (連接對象)相對于對象01 (被連接對象)的連 接方向(步驟S200)。
[0175] 連接器131基于對象02相對于對象01的連接方向的識別結果,以在語言處理器 15中定義的規(guī)則所確定的連接順序來連接與對象01相關聯(lián)的句子S1和與對象02相關聯(lián) 的句子S2。
[0176] 具體而言,當在連接方向上對象02在對象01下方時,連接器131將與對象02相 關聯(lián)的句子S2連接到與對象01相關聯(lián)的句子SI (S=S1+S2)(步驟S201)。當在連接方向 上對象02在對象01上方時,連接器131將與對象01相關聯(lián)的句子S1連接到與對象02相 關聯(lián)的句子S2 (S=S2+S1)(步驟S202)。以這種方式,連接器131確定連接順序,從而使得 當連接方向是向上或向下時,位于另一個句子上方的與對象相關聯(lián)的句子S變成句子的開 頭。
[0177] 當在連接方向上對象02在對象01的左側時,連接器131確定對象01和02二者 是否是數(shù)字(步驟S203)。如果對象01和02二者都是數(shù)字(在步驟S203處為是),那么連 接器131將與對象01相關聯(lián)的句子S1連接到與對象02相關聯(lián)的句子S2 (S=S2+S1)(步 驟S204)。以這種方式,連接器131確定連接順序,從而使得當連接方向為左并且這兩個對 象都是數(shù)字時,左側的句子S位于另一個句子的右側。如果對象01或02不是數(shù)字(在步驟 S203處為否),那么連接器131將與對象02相關聯(lián)的句子S2連接到與對象01相關聯(lián)的句 子SI (S=S1+S2)(步驟S205)。以這種方式,連接器131確定連接順序,從而使得當連接方 向為左并且這兩個對象中任一個對象是數(shù)字時,左側的句子S位于另一個句子的左側。
[0178] 當在連接方向上對象02在對象01的右側時,連接器131確定對象01和02二者 是否都是數(shù)字(步驟S206)。如果對象01和02二者都是數(shù)字(在步驟S206處為是),那么連 接器131將與對象02相關聯(lián)的句子S2連接到與對象01相關聯(lián)的句子SI (S=S1+S2)(步 驟S207)。以這種方式,連接器131確定連接順序,從而使得當連接方向為右并且這兩個對 象都是數(shù)字時,右側的句子S位于另一個句子的左側。如果對象01或02不是數(shù)字(在步驟 S206處為否),那么連接器131將與對象01相關聯(lián)的句子S1連接到與對象02相關聯(lián)的句 子S2 (S=S2+S1)(步驟S208)。以這種方式,連接器131確定連接順序,從而使得當連接方 向為右并且這兩個對象中任一個對象是數(shù)字時,右側的句子S位于另一個句子的右側。
[0179] 圖23是示出第二修改中用于確定兩個對象的連接順序的處理的過程的第二示例 的流程圖。圖23中所示的處理是應用于圖9中示出的連接例程中的步驟S24處的處理以 及應用于圖21中示出的插入-連接例程中的步驟S116和步驟S117處的處理的示例性處 理,并且其與用于具有諸如日語的書寫特征的語言的處理相對應。圖23中示出的處理在做 出關于書寫方向是水平還是垂直的確定方面不同于圖22中的處理。具體而言,執(zhí)行水平書 寫確定處理來替換圖22中的步驟S203處的數(shù)字確定處理,同時執(zhí)行垂直書寫確定處理來 替換圖22中的步驟S206處的數(shù)字確定處理。
[0180] 如圖23中所示,實施例中的連接器131確定當在連接方向上對象02在對象01 的左側時,書寫方向是否是水平的(步驟S213)。如果書寫方向是水平的(在步驟S213處 為是),那么連接器131將與對象01相關聯(lián)的句子S1連接到與對象02相關聯(lián)的句子S2 (S=S2+S1)(步驟S214)。以這種方式,連接器131確定連接順序,從而使得當連接方向為左 并且書寫方向是水平的時,左側的句子S位于另一個句子的右側。如果書寫方向不是水平 的(在步驟S213處為否),那么連接器131將與對象02相關聯(lián)的句子S2連接到與對象01 相關聯(lián)的句子SI (S=S1+S2)(步驟S215)。以這種方式,連接器131確定連接順序,從而使 得當連接方向為左并且書寫方向不是水平的時,左側的句子S位于另一個句子的左側。
[0181] 當在連接方向上對象02在對象01的右側時,連接器131確定書寫方向是否是垂 直的(步驟S216)。如果書寫方向是垂直的(在步驟S216處為是),那么連接器131將與對象 02相關聯(lián)的句子S2連接到與對象01相關聯(lián)的句子SI (S=S1+S2)(步驟S217)。以這種方 式,連接器131確定連接順序,從而使得當連接方向為右并且書寫方向是垂直的時,右側的 句子S位于另一個句子的左側。如果書寫方向不是垂直的(在步驟S216處為否),那么連接 器131將與對象01相關聯(lián)的句子S1連接到與對象02相關聯(lián)的句子S2 (S=S2+S1)(步驟 S218)。以這種方式,連接器131確定連接順序,從而使得當連接方向為右并且書寫方向不 是垂直的時,右側的句子S位于另一個句子的右側。
[0182] 以下面的方式來進行連接方向的識別。當在圖9中所示的連接例程中檢測到"上 推"事件時,連接器131使用下面的公式(8)到(10)來進行計算,其中,對象01的坐標為 (Xi,yi)并且對象02的坐標為(x 2, y2)。
[0183] D=[(Xl-x2)2+(yi-y2) 2]1/2 (8)
[0184] cos θ = (χ「χ2)/D (9)
[0185] sin θ =(y「y2)/D (10)
[0186] 因為在坐標系中X軸的正方向是屏幕上向右的方向,而y軸的正方向是屏幕上 向下的方向,因此,當滿足以下條件時連接器131確定連接方向為向上 :|sin0 I <THh 并且cos θ>ΤΗν。當滿足以下條件時連接器131確定連接方向為向下:I sin0 I彡THh并 且c〇S0>THv。當滿足以下條件時連接器131確定連接方向為向左:|c 〇S0 I彡了隊并且 sin0〈-THh。當滿足以下條件時連接器131確定連接方向為向右:|C〇S0 | <1^并且 sin Θ >THh。THh和THV是預定的閾值。
[0187] 組合處理
[0188] 圖24是示出第二修改中用于確定三個對象的組合順序的處理的過程的示例的流 程圖。圖24中所示的處理是應用于圖16中所示的組合對象產生例程中的步驟S73處的處 理的示例性處理,并且其與用于對兩個或更多個對象進行組合的處理相對應。第二修改中 的組合器132根據(jù)語言處理器15中定義的規(guī)則確定組合順序、組合對象并且產生新對象。
[0189] 如圖24中所示,實施例中的組合器132接收由操作目標對象提取例程提取的對象 0[m] (m=l,. . .,M)。組合器132使用如下公式來計算要組合的Μ個對象的重心C :C= (0[1] 的中心點C[l]+. . . +0[M]的中心點C[M]/M)。組合器132將陣列Qt、Qb、Ql和Qr初始化為 Qt、Qb、Ql、Qr={}(將每一個設置為不具有元素),其保留識別出的對象0[m]用于各個組合 方向(即,向上、向下、左和右)并且對m設置0 (步驟S220)。
[0190] 組合器132關于提取的對象0[m]中的所有對象識別各個對象0[m]相對于計算出 的重心C的組合方向(在步驟S221處為是以及步驟S222和步驟S223)。組合器132以與連 接例程中的連接方向相同的方式來識別組合方向。
[0191] 組合器132基于組合方向的識別結果在各個相應的陣列Qt、Qb、Ql和Qr中注冊識 別出的對象〇[m](步驟S224到步驟S228)。具體來說,組合器132在陣列Qt中對組合方 向被確定是向上的對象〇[m]進行注冊。組合器132在陣列Qb中對組合方向被確定是向下 的對象〇[m]進行注冊。組合器132在陣列Q1中對組合方向被確定是向左的對象0[m]進 行注冊。組合器132在陣列Qr中對組合方向被確定是向右的對象0[m]進行注冊。使用陣 列Qx作為緩沖器來在陣列Qt、Qb、Q1和Qr中注冊對象0[m]。
[0192] 如果對提取的對象0[m]中的所有對象進行了組合方向的確定處理(在步驟S221 處為否),那么組合器132以中心點的y坐標的升序對陣列Qt和Qb中的所有對象進行排序。 組合器132以中心點的X坐標的升序對陣列Q1和Qr中的所有對象進行排序(步驟S229)。
[0193] 如果在排序之后坑={0[1],...,0[11]},那么坑[1]的7坐標彡,...,〇七[11]的7坐 標。因此,"通過將對象〇[2]從上面與對象0[1]組合而獲得的句子"與通過應用當基于要 組合的對象〇[1]和〇[2]的組合方向的識別結果從上面組合對象0[2]時的組合順序將和 對象〇[2]相關聯(lián)的句子S[2]與和對象0[1]相關聯(lián)的句子S[l]進行組合而獲得的句子St 相對應。"通過從上面組合陣列Qt的對象0[n]而獲得的句子"與通過從上面將對象0[2] 與對象〇[1]組合并且以相同的方式繼續(xù)對直到對象〇[n]的各個對象進行組合而獲得的句 子相對應。組合器132通過從上面對陣列Qt中的排序之后的所有的對象進行組合來產生句 子St,并且通過從上面對陣列Qb中的排序之后的所有的對象進行組合來產生句子Sb。組 合器132還通過從右面對陣列Q1中的排序之后的所有的對象進行組合來產生句子S1,并 且通過從右面對陣列Qr中的排序之后的所有的對象進行組合來產生句子Sr (步驟S230)。 最后,組合器132將句子St與左邊的句子S1、右邊的句子Sr、下面的句子Sb進行組合,并 且輸出組合成的句子作為組合了 Μ個對象的句子S。
[0194] 用于對對象進行組合的其它組合順序可以是適用的。在這種情況下,前提是:對象 除了句子S和形狀[P,Q]之外還具有指示其產生時間的另一個屬性。例如,組合器132可 以根據(jù)規(guī)定組合的規(guī)則來對與各個對象相關聯(lián)的句子S進行組合,所述規(guī)則使得與和各個 其它對象相關聯(lián)的其它句子S相比,與具有比其它對象更早的產生時間的對象0相關聯(lián)的 句子S進一步在句子開頭側。從而,例如,在從右向左閱讀的語言中,與具有較早產生時間 的對象0相關聯(lián)的句子S在組合之后位于右側。
[0195] 第二修改提供了識別組合方向(包括連接方向)、基于識別結果根據(jù)語言、書寫方 向和內容確定組合順序(包括連接順序)以及按照所確定的組合順序對多個對象進行組合 的環(huán)境。從而,第二修改可以進一步增強用戶便利。
[0196] 第二實施例
[0197] 第二實施例提出了用于針對對象產生動作對象的處理。例如,動作對象與針對在 編輯中可操作的對象動態(tài)產生的對象相對應。動作對象具有的屬性具有可產生自與用作動 作對象的產生源的對象相關聯(lián)的句子的數(shù)據(jù)的值。動作對象并不總是需要顯示在屏幕上, 因此可能不需要具有形狀屬性。動作對象與用作動作對象的產生源的對象同步進行處理。 動作對象具有這些特性。
[0198] 概述
[0199] 圖25是示出了提供翻譯服務的示例的示意圖。例如,如圖25中所示,將語音輸入 轉錄成文本,并且在基于語音輸入在翻譯服務中產生翻譯結果。在這種翻譯服務中,針對每 個發(fā)音,將輸入語音作為文本顯示在屏幕的右側,而翻譯結果顯示在屏幕的左側。在這種情 況下,動作對象的屬性與根據(jù)語音輸入(輸入數(shù)據(jù))產生的對象〇的經翻譯的句子相對應。 [0200] 下面描述了當用戶使用翻譯服務將日語翻譯成英語時的示例。用戶說出句子 2501、句子2502和句子2503(其在英語中的意思是:it is hot today, but I wear a long sleeved shirt)來輸入語音,其中在這些發(fā)音之間存在停頓。結果,翻譯服務用日語顯示句 子2511、句子2512和句子2513 (其在英語中的意思是come),并且用英語顯示"it is hot today, though"、"a long-sleeved shirt"和"come"作為相應的句子的翻譯結果。當原始 的句子不完整時,使用這種方法的翻譯結果很有可能包括錯誤的翻譯或者盡管翻譯后的詞 語是正確的但作為句子卻沒有意義。
[0201] 在實施例中,對與句子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的翻譯結果。
[0202] 實施例中的編輯裝置根據(jù)輸入數(shù)據(jù)產生對象(每個對象用作編輯操作單元)、根據(jù) 通過顯示屏接收的手勢操作來編輯產生的對象,并且進一步與用作動作對象的產生源的對 象的編輯操作同步第來處理這些動作對象。
[0203] 實施例中的編輯裝置因此可以實現(xiàn)對輸入數(shù)據(jù)的直觀操作,從而使得容易執(zhí)行編 輯操作。從而可以減少編輯工作中的負擔(諸如虛假識別的校正)。結果,實施例中的編輯 裝置可以增強用戶的便利。
[0204] 下面描述了實施例中的編輯裝置的功能的結構和操作。下面的描述是在根據(jù)輸入 語音的識別結果產生的文本句子進行編輯并且然后對該文本句子進行翻譯的情況下做出 的。在下面的描述中,描述了與第一實施例的條目不同的條目,并且以相同的參考標號來標 注相同的條目,并省略對其的重復描述。
[0205] 結構
[0206] 圖26是示出實施例中的編輯裝置100的功能結構的示意圖。如圖26中所示,除 了在第一實施例中描述的各個功能模塊之外,該實施例中的編輯裝置100還包括對原始句 子進行翻譯的翻譯器16。翻譯器16將與由對象控制器13編輯的對象0相關聯(lián)的句子S翻 譯成指定的語言,并且將翻譯結果傳送到對象控制器13。當接收翻譯后的結果時,對象控制 器13基于翻譯結果產生與對象0相對應的動作對象。對象控制器13產生的動作對象這樣 的屬性:其值為從翻譯器16接收到的翻譯結果。這樣產生的動作對象與用作動作對象的產 生源的對象〇相關聯(lián)地由對象管理器14來管理。
[0207] 下面描述由實施例中的編輯裝置100執(zhí)行的編輯操作的處理。
[0208] 處理
[0209] 圖27是示出實施例中的編輯裝置100的處理過程的示例的流程圖。圖27中示出 的處理主要由對象控制器13執(zhí)行。除了各種類型的編輯操作(諸如對象的連接或組合或者 對象的分割)之外,實施例中的編輯裝置1〇〇能夠實現(xiàn)刪除對象的操作。如圖27中所示,實 施例中的編輯裝置100使用對象控制器13執(zhí)行下面的處理(在步驟S240處為否),直到裝 置結束該操作(諸如裝置斷電)為止。
[0210] 實施例中的控制器13首先根據(jù)輸入數(shù)據(jù)產生對象(在步驟S241處為是),并且然 后產生與所產生的對象相對應的動作對象(步驟S242)。對象控制器13將產生的動作對象 與用作動作對象的產生源的對象相關聯(lián)地存儲在對象管理器14中。這時,顯示單元12可 以更新屏幕上的顯示。此外,提供該服務的軟件(應用)可以執(zhí)行由行動對象的產生導致的 某種處理。如果沒有根據(jù)輸入數(shù)據(jù)產生對象(在步驟S241處為否),那么對象控制器13跳 過步驟S242處的處理。
[0211] 然后,對象控制器13確定是否對對象執(zhí)行了編輯操作(步驟S243)。如果對對象 執(zhí)行了操作(在步驟S243處為是),那么對象控制器13識別對對象執(zhí)行的編輯操作(步驟 S244)。如果沒有對對象執(zhí)行編輯操作(在步驟S243處為否),那么對象控制器13前進到步 驟S240處的處理。
[0212] 作為在步驟S244處的識別的結果,如果接收到的編輯操作是連接操作或組合操 作,那么對象控制器13產生相對于通過連接或組合所產生的對象的新動作對象(與連接的 或組合的對象相對應的動作對象)。所產生的動作對象具有可從連接或組合的對象的句子 S產生的數(shù)據(jù)的屬性(步驟S245)。
[0213] 作為在步驟S244處的識別的結果,如果接收到的編輯操作是分割操作,那么對象 控制器13產生相對于通過分割所產生的對象的新動作對象(與經分割的對象相對應的動 作對象)。動作對象中的每一個具有可從經分割的對象的句子S產生的數(shù)據(jù)的屬性(步驟 S246)。
[0214] 作為在步驟S244處的識別的結果,如果接收到的編輯操作是刪除操作,那么對象 控制器13刪除與作為刪除目標的對象相對應的動作對象(步驟S247)。對象控制器13從對 象管理器14中刪除動作對象連同相應的對象。這時,顯示單元12可以更新屏幕上的顯示。 此外,提供該服務的軟件(應用)可以執(zhí)行由行動對象的刪除導致的某種處理。
[0215] 在實施例中的編輯裝置100中,對象控制器13根據(jù)由輸入接收機11接收的輸入 數(shù)據(jù)來產生一個或多個在編輯中可操作的對象。在實施例中的編輯裝置100中,顯示單元 12顯示所產生的對象,并且接收指示對象的連接或組合或者對象的分割的手勢操作。在實 施例中的編輯裝置100中,對象控制器13根據(jù)接收到的操作執(zhí)行對操作中指定的對象的連 接或組合的編輯處理,或者執(zhí)行對操作中指定的對象的分割的編輯處理,并且產生一個新 對象或多個新對象。對象控制器13產生具有可從被執(zhí)行了連接、組合或分割的編輯處理 的對象產生的數(shù)據(jù)的屬性的動作對象。在實施例中的編輯裝置100中,顯示單元12顯示所 產生的一個新對象或多個新對象,并且將編輯屏幕的內容更新為在其中反映編輯操作的內 容。
[0216] 實施例中的編輯裝置100提供了可以對輸入數(shù)據(jù)執(zhí)行直觀的操作的環(huán)境,并且與 用作動作對象的產生源的對象的編輯處理同步第來處理所產生的動作對象。實施例中的 編輯裝置100允許諸如翻譯服務的各種服務中進行容易的編輯操作,以及自動校正語言中 的語法錯誤(虛假識別),從而有可能減輕諸如校正虛假識別的校正之類的編輯工作中的負 擔。結果,實施例中的編輯裝置100可以增強用戶的便利。
[0217] 在實施例中,描述是在對根據(jù)輸入語音的識別結果產生的文本句子進行編輯并且 然后對該文本句子進行翻譯的情況下做出的。編輯裝置100的編輯功能不局限于該情況。 例如,實施例中的編輯裝置100的功能(編輯功能)還適用于在對產品的訂單歷史進行管理 的服務中進行編輯的情況。
[0218] 第三修改
[0219] 第三修改描述了第二實施例中的編輯裝置100應用到對產品的訂單歷史進行管 理的服務(在下文中被稱為"產品管理服務")的情況。在下面的描述中,描述了與第二實施 例的條目不同的條目,并且以相同的參考標號來標注相同的條目,并省略對其的重復描述。
[0220] 概述
[0221] 例如,在第三修改的示例中,對象控制器13根據(jù)所接收的訂單的對象0產生具有 所訂產品的名稱和所訂產品的數(shù)量的屬性的動作對象。動作對象還具有該動作對象的產生 時間作為用于控制產品的訂單歷史的屬性。
[0222] 圖28A至28D是示出提供產品管理服務的示例的示意圖。例如,如圖28A中所示, 將語音輸入轉錄成文本,以便基于語音輸入在產品管理服務中產生產品的訂單接收結果。 在這種產品管理服務中,針對各個產品的所接收的訂單內容顯示在屏幕的左側,而與訂單 歷史相對應的接收結果顯示在屏幕的右側。
[0223] 下面描述了用戶使用產品管理服務的示例。用戶首先說出訂單句子2801 (用英 語說出一件產品A和三件產品B)來輸入語音。結果,如圖28A中所示,翻譯服務產生句子 2801的對象0以及具有屬性"一件產品A"和"三件產品B"的動作對象,并且顯示這兩個對 象。
[0224] 然后,用戶說出訂單的變化作為句子2802(用英語說出將產品B的數(shù)量變成一件)。 在該變化中,當用之間有停頓的方式說出句子2811和句子2812時,輸入語音被錯誤的識別 為句子2811中的"wa"丟失,并且如圖28B中所示產生了兩個句子(句子2821和2822)。在 這種情況下,產品管理服務基于句子2821的識別結果確定訂了一件產品B,添加一件產品 B作為訂單,并且對動作對象的指示產品數(shù)量的屬性更新為"一件產品A"和"四件產品B"。 產品管理服務向用戶通知某個請求用戶指定產品的名稱的消息,這是因為產品的名稱在句 子2812的識別結果中是不清楚的。
[0225] 用戶執(zhí)行如圖28C中所示的編輯操作(校正變化后的內容)。產品管理服務根據(jù)編 輯操作將句子2822的對象0連接到句子2821的對象0。然后產品管理服務刪除用于校正 的句子2821和句子2822的兩個對象,并且還刪除與這些對象相對應的動作對象。產品管 理服務參考指示由對象管理器14管理的動作對象的產生時間的屬性,并且識別與訂單歷 史中的最早時間相對應的動作對象。產品管理服務識別具有"一件產品Α"和"三件產品Β" (其是首先輸入的)的訂單內容屬性的動作對象。
[0226] 然后,產品管理服務基于連接的對象將所識別的動作對象的訂單內容從"三件產 品Β"更新為"一件產品Β"。然后,產品管理服務產生具有"一件產品Α"和"一件產品Β"的 訂單內容屬性的動作對象。以這種方式,產品管理服務產生與句子2841的對象0相對應的 新的動作對象。結果,如圖28D中所示,產品管理服務顯示句子2841的對象0來更新屏幕 顯不。
[0227] 產品管理服務重復這種輸入和編輯處理,并且當用戶的訂單完成時,固定具有最 近生產時間屬性的動作對象作為產品的訂單內容。
[0228] 如上所述,實施例中的編輯裝置100可應用于使用語音輸入的產品管理服務,從 而有可能增強用戶便利。
[0229] 裝置
[0230] 圖29是示出實施例中的編輯裝置100的結構的示例的示意圖。如圖29中所示,實 施例中的編輯裝置1〇〇包括中央處理單元(CPU)lOl和主存儲設備102。編輯裝置100還包 括輔助存儲設備103、通信接口(IF)104、外部IF105、驅動設備107和顯示設備109。。在編 輯裝置100中,各個設備通過總線B互相耦接。因此在實施例中組織的編輯裝置100與諸 如智能電話或平板電腦的典型信息終端(信息處理裝置)相對應。實施例中的編輯裝置100 可以是能夠接收用戶的操作并且能夠根據(jù)接收到的操作來執(zhí)行指示的處理的任何裝置。
[0231] CPU101是算數(shù)處理單元,其完全控制編輯裝置100以及實現(xiàn)編輯裝置100的各項 功能。主存儲設備102是在其某些存儲區(qū)域中保存程序和數(shù)據(jù)的存儲設備(存儲器)。例如, 主存儲設備102是只讀存儲器(ROM)或隨機存取存儲器(RAM)。輔助存儲設備103是與主 存儲設備102的存儲區(qū)域相比具有更大容量存儲區(qū)域的存儲設備。輔助存儲設備103是諸 如硬盤驅動器(HDD)或存儲器卡的非易失性存儲設備。CPU101從輔助存儲設備103讀出程 序和數(shù)據(jù)到主存儲設備102,并且執(zhí)行它們以便完全控制編輯裝置100以及實現(xiàn)編輯裝置 100的各項功能。
[0232] 通信IF104是將編輯裝置100連接到數(shù)據(jù)傳輸線N的接口。因此,通信IF104因而 使得編輯裝置100能夠通過數(shù)據(jù)傳輸線N執(zhí)行與耦接到編輯裝置100的其它外部裝置(其 它通信處理裝置)的數(shù)據(jù)通信。外部IF105是能夠在編輯裝置100與外部設備106之間進 行數(shù)據(jù)交換的接口。例如,外部設備106是接收操作輸入的輸入設備(例如,"數(shù)字小鍵盤" 或"鍵盤")。驅動設備107是將數(shù)據(jù)寫入到存儲介質108并且從存儲介質108讀出數(shù)據(jù)的 控制器。例如,存儲介質108是軟盤(FD)、壓縮光盤(⑶)或數(shù)字多功能光盤(DVD)。顯示設 備109 (例如,其是液晶顯示器)在屏幕上顯示諸如處理結果的各種類型的信息。顯示設備 109包括用于檢測屏幕上的觸摸或沒有觸摸的傳感器(例如,"觸摸傳感器")。使用該傳感 器,編輯裝置100通過屏幕接收各種類型的操作(例如,"手勢操作")。
[0233] 例如,實施例中的編輯功能作為編輯裝置100執(zhí)行編輯程序的結果而通過上述各 個功能模塊的協(xié)同操作來實現(xiàn)。在這種情況下,程序以可安裝或可執(zhí)行的格式作為文件記 錄在執(zhí)行環(huán)境中由編輯裝置100 (計算機)可讀的存儲介質中,并且作為計算機程序產品 來提供。例如,在編輯裝置100中,程序具有包含上述各個功能模塊的模塊結構,并且一旦 CPU101從存儲介質108讀出程序并且執(zhí)行該程序,則各個模塊在主存儲設備102的RAM上 生成。提供程序的方式不局限于這種方式。例如,程序可以存儲在連接到互聯(lián)網的外部裝 置中,并且可以通過數(shù)據(jù)傳輸線N下載。程序可以預先存儲在主存儲設備102的ROM中或 者輔助存儲裝置103的HDD中,并且作為計算機程序產品提供。在本文中描述了通過軟件 實現(xiàn)來實現(xiàn)編輯功能的示例。然而,編輯功能的實現(xiàn)不局限于這種方式??梢酝ㄟ^硬件實 現(xiàn)來實現(xiàn)編輯功能的各個功能模塊中的部分或全部。
[0234] 在實施例中,編輯裝置100包括輸入接收機11、顯示單元12、對象控制器13、對象 管理器14、語言處理器15以及翻譯器16中的部分或全部。然而,編輯裝置100的結構功能 不局限于該結構。編輯裝置100可以通過通信IF104耦接到具有那些功能模塊中的功能中 的一些部分(例如,"語言處理器15"和"翻譯器16")的外部裝置,并且通過各個功能模塊的 協(xié)同操作來提供編輯功能,作為與藕接的外部裝置進行數(shù)據(jù)通信的結果。例如,該結構使得 實施例中的編輯裝置100還能夠應用于云環(huán)境。
[0235] 根據(jù)上述至少一個實施例的編輯裝置,該編輯裝置包括接收機和控制器。接收機 被配置為接收輸入數(shù)據(jù)。控制器被配置為:根據(jù)輸入數(shù)據(jù)產生一個或多個可操作的目標對 象,通過屏幕接收操作以及通過對操作中指定的目標對象執(zhí)行編輯處理來產生編輯結果對 象。從而,可以增強用戶便利性。
[0236] 盡管描述了某些實施例,但這些實施例僅通過示例的方式呈現(xiàn),而不是旨在限制 本發(fā)明的范圍。實際上,本文中所描述的新穎實施例可以體現(xiàn)在各種其它形式中,此外,可 以在不脫離本發(fā)明的精神的前提下對本文中描述的實施例的形式做出各種省略、替代和改 變。所附權利要求及其等同物旨在涵蓋會落入本發(fā)明的范圍和精神之內的這些形式或修 改。
【權利要求】
1. 一種編輯裝置,包括: 接收機,其被配置為接收輸入數(shù)據(jù);以及 控制器,其被配置為:根據(jù)所述輸入數(shù)據(jù)產生一個或多個可操作的目標對象,通過屏幕 接收操作,以及通過對所述操作中指定的目標對象執(zhí)行編輯處理來產生編輯結果對象。
2. 根據(jù)權利要求1所述的裝置,其中, 所述控制器包括被配置為對兩個可操作的目標對象進行連接的連接器,并且 所述連接器被配置為:當操作事件的發(fā)生位置在不同于第一目標對象的第二目標對象 上時,將所述第一目標對象連接到所述第二目標對象,以產生與所述編輯結果對象相對應 的連接的對象,所述第一目標對象是使用呈現(xiàn)在所述屏幕上的單個操作點來指定的。
3. 根據(jù)權利要求1所述的裝置,其中, 所述控制器包括被配置為對兩個或更多個可操作的目標對象進行組合的組合器,并且 所述組合器被配置為:當同一目標對象并不是使用呈現(xiàn)在所述屏幕上的兩個或更多個 操作點指定的時,對使用所述兩個或更多個操作點指定的多個目標對象進行組合,以產生 與所述編輯結果對象相對應的組合的對象。
4. 根據(jù)權利要求1所述的裝置,其中, 所述控制器包括被配置為將一個可操作的目標對象分割成多個部分的分割器,并且 所述分割器被配置為:當同一目標對象是使用呈現(xiàn)在所述屏幕上的兩個或更多個操作 點指定的時,通過將使用所述兩個或更多個操作點指定的目標對象分割成多個部分,來產 生與多個編輯結果對象相對應的多個分割的對象。
5. 根據(jù)權利要求1所述的裝置,其中,所述控制器被配置為:基于確定操作事件的發(fā)生 位置是否在使用操作點指定的目標對象上,從根據(jù)所述輸入數(shù)據(jù)產生的多個目標對象中提 取出使用所述操作點指定的目標對象。
6. 根據(jù)權利要求1所述的裝置,還包括:語言處理器,其被配置為對與所述目標對象相 關聯(lián)的字符串執(zhí)行某種語言處理,其中, 所述語言處理器被配置為:以某種單位對與由所述控制器產生的所述編輯結果對象 相關聯(lián)的字符串進行分析,并且通過基于分析結果對錯誤部分進行校正來產生經校正的句 子。
7. 根據(jù)權利要求2所述的裝置,其中,所述連接器被配置為:當所述操作事件的發(fā)生位 置在與所述第二目標對象相關聯(lián)的字符串上時,在與所述操作事件的發(fā)生位置最接近的邊 界處,將與所述第二目標對象相關聯(lián)的字符串分割為多個字符或字符串,并且在所述多個 字符或字符串之間插入與所述第一目標對象相關聯(lián)的字符串,以便產生所述連接的對象。
8. 根據(jù)權利要求3所述的裝置,其中,所述組合器被配置為:根據(jù)使用所述操作點指定 的多個目標對象的中心點獲得所述多個目標對象的重心,并且當所述重心與所述多個目標 對象之間的距離的最大值等于或大于閾值時,對使用所述操作點指定的多個目標對象進行 組合,以產生所述組合的對象。
9. 根據(jù)權利要求3所述的裝置,其中,所述組合器被配置為:按照使用所述操作點指定 的多個目標對象的中心點的坐標的升序順序,對所述多個目標對象進行排序,并且對排序 后的多個目標對象進行組合,以產生所述組合的對象。
10. 根據(jù)權利要求4所述的裝置,其中,所述分割器被配置為:使得所述語言處理器以 某種單位將與使用所述操作點指定的目標對象相關聯(lián)的字符串分割為多個字符或字符串, 根據(jù)所述操作點的位置來確定所述目標對象的分割位置,通過根據(jù)所述分割位置對所述多 個字符或字符串進行組合來產生所述分割的對象,并且將產生的分割的對象與所述操作點 相關聯(lián)。
11. 根據(jù)權利要求1所述的裝置,其中,所述控制器被配置為:識別所述目標對象的連 接方向或組合方向,基于所述識別的結果根據(jù)預定義的規(guī)則來確定多個目標對象的連接順 序或組合順序,并且以所確定的連接順序或所確定的組合順序對與所述多個目標對象相關 聯(lián)的字符串進行連接或組合。
12. 根據(jù)權利要求1所述的裝置,其中,所述控制器被配置為:根據(jù)與所述目標對象相 關聯(lián)的字符串的書寫方向來確定所述目標對象的連接順序,并且以所確定的連接順序來對 與所述目標對象相關聯(lián)的字符串進行連接。
13. 根據(jù)權利要求1所述的裝置,其中,所述控制器被配置為:產生所述目標對象,并且 產生與所產生的目標對象被同步處理的對象。
14. 根據(jù)權利要求1所述的裝置,還包括:顯示單元,其被配置為顯示目標對象或編輯 結果對象,并且接收所述操作。
15. -種編輯方法,包括: 接收輸入數(shù)據(jù); 根據(jù)所述輸入數(shù)據(jù)產生一個或多個可操作的目標對象; 通過屏幕接收操作;以及 對所述操作中指定的目標對象執(zhí)行編輯處理以產生編輯結果對象。
【文檔編號】G06F3/0488GK104102338SQ201410072359
【公開日】2014年10月15日 申請日期:2014年2月28日 優(yōu)先權日:2013年4月2日
【發(fā)明者】館森三慶 申請人:株式會社東芝