(57)【特許請求の範囲】
【請求項１】
表示部を第一の方向になぞる第一の操作、又は前記表示部を第二の方向になぞる第二の操作を受け付ける受付部と、
前記第一の操作を受け付けた場合、前記表示部が表示する文字列のうち第一の範囲に対応する修正候補を前記表示部に表示させ、前記第二の操作を受け付けた場合、前記文字列のうち第二の範囲に対応する修正候補を前記表示部に表示させる制御部と、
を有し、
前記制御部は、前記表示部に対し、前記修正候補が前記第一の範囲に対応する場合には、前記修正候補を前記文字列が表示される位置の前記第一の方向側に表示させ、前記修正候補が前記第二の範囲に対応する場合には、前記修正候補を前記文字列が表示される位置の前記第二の方向側に表示させる
表示制御装置。
【請求項２】
前記受付部はさらに、前記文字列の一部を選択する選択操作を受け付け、
前記制御部は、前記選択操作によって選択された部分を前記第一の範囲とし、前記第一の範囲より広い範囲を前記第二の範囲とする
請求項１記載の表示制御装置。
【請求項３】
前記文字列は前記文字列の内容を示す項目に対応付けられており、
前記制御部は、前記第一の範囲又は前記第二の範囲を前記修正候補と入れ替えて成る文字列が、前記項目に関して予め登録された文字列となる前記修正候補を、前記表示部に表示させる
請求項１又は２に記載の表示制御装置。
【請求項４】
前記制御部は、前記第一の範囲又は前記第二の範囲に含まれる文字の形状に基づいて生成された前記修正候補を、前記表示部に表示させる
請求項１乃至３のいずれか一項に記載の表示制御装置。
【請求項５】
前記制御部は、複数の前記修正候補を、前記第一の範囲又は前記第二の範囲に含まれる文字の形状と類似する順に前記表示部に表示させる
請求項１乃至４のいずれか一項に記載の表示制御装置。
【請求項６】
表示部を第一の方向になぞる第一の操作、又は前記表示部を第二の方向になぞる第二の操作を受け付け、
前記第一の操作を受け付けた場合、前記表示部が表示する文字列のうち第一の範囲に対応する修正候補を前記表示部に表示させ、前記第二の操作が入力された場合、前記文字列のうち第二の範囲に対応する修正候補を前記表示部に表示させ、
前記表示部に対し、前記修正候補が前記第一の範囲に対応する場合には、前記修正候補を前記文字列が表示される位置の前記第一の方向側に表示させ、前記修正候補が前記第二の範囲に対応する場合には、前記修正候補を前記文字列が表示される位置の前記第二の方向側に表示させる
表示制御方法。
【請求項７】
コンピュータに、表示部を第一の方向になぞる第一の操作、又は前記表示部を第二の方向になぞる第二の操作を受け付ける入力受付処理と、
前記第一の操作を受け付けた場合、前記表示部が表示する文字列のうち第一の範囲に対応する修正候補を前記表示部に表示させ、前記第二の操作が入力された場合、前記文字列のうち第二の範囲に対応する修正候補を前記表示部に表示させる制御処理と、
を実行させ、
前記表示部に対し、前記修正候補が前記第一の範囲に対応する場合には、前記修正候補を前記文字列が表示される位置の前記第一の方向側に表示させ、前記修正候補が前記第二の範囲に対応する場合には、前記修正候補を前記文字列が表示される位置の前記第二の方向側に表示させる
表示制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文字列に対する修正候補を表示部に表示させる表示制御装置、表示制御方法、表示制御プログラム、表示制御プログラムを記憶する記憶媒体に関する。
【背景技術】
【０００２】
ＰＣ（パーソナルコンピュータ）や携帯端末に対して入力された文字（記号を含む）を、ユーザが確認し、修正する場面がある。このようなユーザによる文字修正に関する発明が、特許文献１に記載されている。特許文献１に記載のシステムは、ＯＣＲ（Ｏｐｔｉｃａｌ Ｃｈａｒａｃｔｅｒ Ｒｅｃｏｇｎｉｔｉｏｎ：光学文字認識）処理により帳票から読み取られた文字を修正する技術に関する。特許文献１に記載のシステムは、文字認識された文字データと類似度が一定値以上の文字データ候補を記憶部から検索し、表示する。そして、当該システムは、ユーザが文字データを選択すると、選択された文字データを文字認識の結果として記憶する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平２０１５−９０６２５号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここで、ユーザによる文字の修正は、簡便な操作によって実現されることが望ましい。しかしながら、上述したようなシステムでは、ユーザが修正を望まない文字が修正の対象となってしまい、正しい文字列を得るまでに煩雑な操作が必要となることがあった。
【課題を解決するための手段】
【０００５】
本発明の第一のシステムは、表示部を第一の方向になぞる第一の操作、又は前記表示部を第二の方向になぞる第二の操作を受け付ける受付部と、前記第一の操作を受け付けた場合、前記表示部が表示する文字列のうち第一の範囲に対応する修正候補を前記表示部に表示させ、前記第二の操作を受け付けた場合、前記文字列のうち第二の範囲に対応する修正候補を前記表示部に表示させる制御部と、を有する。
【発明の効果】
【０００６】
本発明によれば、ユーザが、文字列のうち修正を望む部分に対応する修正候補を、簡便な操作によって得ることができる表示制御装置を提供することができる。
【図面の簡単な説明】
【０００７】
【図１】第一実施形態の構成例を示すブロック図である。
【図２】ユーザによるスマートフォン１００１の操作を説明する説明図である。
【図３】ユーザによる文字又は文字列の選択を説明する説明図である。
【図４】選択操作及び第一の操作を受け付けた場合の表示例である。
【図５】第二の操作を受け付けた場合の表示例である。
【図６】記憶部１２が記憶する情報の一例である。
【図７】第一実施形態の動作の一例を示すフローチャートである。
【図８】記憶部１２が記憶する情報の一例である。
【図９】複数の修正候補表示する場合の表示例である。
【図１０】表示の変形例である。
【図１１】表示の変形例である。
【図１２】第一実施形態のハードウェア構成の一例である。
【図１３】第二実施形態の構成例を示すブロック図である。
【発明を実施するための形態】
【０００８】
以下に、図面を参照して、本発明の実施の形態について詳しく説明する。ただし、以下の実施の形態に記載されている構成要素は例示であり、本発明の技術範囲をそれらに限定する趣旨のものではない。
（第一実施形態）
（第一実施形態の構成）
第一実施形態の構成例について説明する。図１は、第一実施形態の構成例を示すブロック図である。情報処理装置１０００は、表示制御装置１００と、記憶部１２と、表示部１３と、受信部１４と、送信部１５を含む。表示制御装置１００は、受付部１０と、制御部１１を含む。情報処理装置１０００は、例えばＰＣ、スマートフォン、タブレット端末、ウェアラブル端末等の情報処理装置で良い。
【０００９】
情報処理装置１０００の具体例及びユーザによる操作の例を、図２に示す。図２は、スマートフォン１００１を、通常使用される際にユーザが見る向きで表した図である。スマートフォン１００１は、表示部１３を含む。スマートフォン１００１のユーザ２０００は、例えば人差し指で表示部１３に触れることで、画面に表示されたアイコン等を選択する操作を行う。本実施形態では、図２に示すように、指と表示部１３が触れている位置より右側の方向を第一の方向とする。また、指と表示部１３が触れている位置より下側の方向を第二の方向とする。そして、ユーザ２０００が、指で表示部１３を第一の方向になぞることを第一の操作とし、第二の方向になぞることを第二の操作とする。なお、第一の方向及び第二の方向は上述したものに限られない。例えば、指と表示部１３が触れている位置より斜め右下の方向が、第一の方向又は第二の方向であっても良い。また、例えば指と表示部１３が触れている位置からユーザの目に近づく方向（紙面に垂直に、読者に近づく方向）が、第一の方向又は第二の方向であっても良い。
【００１０】
ユーザによる文字又は文字列の選択の例を、図３に示す。情報処理装置１０００は、例えば、証明書を撮像した画像に対してＯＣＲ処理を行う。さらに情報処理装置１０００は、生成した文字を予め用意されたフォーマットに入力し、表示部１３に表示させる。ユーザは、表示部１３に表示された文字を確認し、修正したい文字又は文字列を選択する。図３において、表示部１３は、フォーマットにおける「住所」という項目と、生成された文字列である「東京都品川区京五反田  １−１−１」を表示している。ユーザ２０００は、表示された文字列とは１文字異なる、「東京都品川区東五反田  １−１−１」が証明書に記載された正しい住所であると知っているとする（下線部が異なる文字）。表示部１３による表示を見たユーザ２０００は、「東京都品川区京五反田  １−１−１」の「京」という文字が誤っていると判断する。したがって、ユーザ２０００は「京」の文字を選択する。具体的には、例えばユーザ２０００は、表示部１３のうち、「京」の文字が表示されている部分に触れることで、「京」の文字を選択する。選択された文字は、ユーザ２０００にわかりやすいよう、図３に示すように網かけで表示されても良い。
【００１１】
なお、ユーザ２０００による文字の選択の仕方はこれに限られない。例えば、ユーザ２０００は、表示部１３のうち、「京」の文字が表示されている部分より左側の部分に触れ、そのまま指を離さず、指を右側にスライドさせることで「京」の文字を選択しても良い。また、ユーザ２０００は、表示部１３のうち、「京」の文字が表示されている部分に一定時間以上触れることで、「京」の文字を選択しても良い。なお、選択される文字数は１字に限られない。ユーザ２０００による文字の選択を行う操作を、以下選択操作と呼ぶ。
＜各構成の説明＞
次に、第一実施形態の情報処理装置１０００を構成する各機能部について説明する。受付部１０は、表示部１３が表示する文字列の一部を選択する選択操作を受け付ける。具体的には、受付部１０は、表示部１３から、ユーザ２０００が表示部１３に触れたこと、及びその位置（表示部１３における座標等）を取得する。そして、受付部１０は、表示部１３上でユーザ２０００が触れた位置、接触していた時間等から、ユーザの操作が文字を選択する所定の選択操作であることを検出する。選択操作の具体例は上述した通りである。受付部１０は、選択操作が入力された位置を、制御部１１に受け渡す。
【００１２】
さらに、受付部１０は、表示部１３から、ユーザ２０００による第一の操作又は第二の操作を受け付ける。具体的には、受付部１０は、表示部１３からユーザ２０００が表示部１３に触れたこと、及びその位置を取得する。そして、受付部１０は、ユーザ２０００が表示部１３に触れた後、その接触面が第一の方向に移動したことを、第一の操作として受け付ける。また、受付部１０は、当該接触面が第二の方向に移動したことを、第二の操作として受け付ける。第一の方向及び第二の方向の具体例は、上述した通りである。
【００１３】
ユーザが、選択操作に続けて第一の操作を行う場合、受付部１０は、ユーザ２０００と表示部１３との接触面が第一の方向に移動したことをもって、第一の操作が入力されたと認識してもよい。つまり、ユーザ２０００は、選択操作に続けて第一の操作を行う場合は、表示部１３に改めて触れなくとも、選択操作で表示部１３に触れた指をそのまま移動させることで、第一の操作を受付部１０に入力することができる。選択操作に続けて第二の操作を行う場合も、同様である。
【００１４】
なお、受付部１０は、表示部１３の代わりに、他の入力装置（不図示）から、ユーザ２０００の操作を受け付けても良い。他の入力装置とは、例えば、マウス等のポインティングデバイス、キーボード、ユーザのジェスチャを検出する撮像部と処理部、等であっても良い。この場合、受付部１０は、表示部１３に表示されるカーソル等を移動させる操作を、「表示部１３をなぞる操作」として受け付けても良い。
【００１５】
制御部１１は、受付部１０が第一の操作を受け付けると、表示部１３が表示する文字列のうち、第一の範囲に対応する修正候補を表示部１３に表示させる。修正候補とは、表示部１３が表示する文字列の一部又は全部と入れ替わる、文字又は文字列である。つまり、ユーザ２０００は、修正候補を選択することで、表示部１３が表示する文字列を修正することができる。第一の範囲は、表示部１３が表示する文字列のうち、選択操作によって選択された部分でよい。すなわち、図３の例では、「京」の文字が選択されているので、表示部１３が表示する文字列の第一の範囲は「京」の文字の部分となる。
【００１６】
また、制御部１１は、受付部１０が第二の操作を受け付けると、表示部１３が表示する文字列のうち、第二の範囲に対応する修正候補を表示部１３に表示させる。第二の範囲は、第一の範囲より広い範囲で良い。例えば、第二の範囲は、選択された文字と連続して入力された文字を含む範囲であっても良い。文字が「連続して入力された」とは、文字と文字との間にスペースや改行が存在しないことで良い。図３の例では、選択された「京」の文字と連続する文字を含む範囲は、「東京都品川区京五反田」であるため、第二の範囲は「東京都品川区京五反田」を含む範囲となる。つまり、制御部１１は、ユーザ２０００が第一の操作を入力した場合は「京」の文字に対応する修正候補を表示部１３に表示させ、ユーザ２０００が第二の操作を入力した場合は「東京都品川区京五反田」の文字列に対応する修正候補を表示部１３に表示させる。
【００１７】
具体的には、まず、制御部１１は、表示部１３が表示する文字列「東京都品川区京五反田  １−１−１」と、その文字列が表示されている表示部１３上の位置（座標等）とを、記憶部１２から取得する。そして、制御部１１は、選択操作が入力された位置（表示部１３における座標等）を、受付部１０から取得する。制御部１１は、記憶部１２及び受付部１０から取得した情報から第一の範囲、すなわち、選択操作によって選択された部分に含まれる文字又は文字列を特定する。つまり、制御部１１は、表示部１３が表示する文字列のうち、どの部分（文字又は文字列）がユーザ２０００によって選択されたのかを特定する。さらに、制御部１１は、記憶部１２及び受付部１０から取得した情報から、第二の範囲に含まれる文字又は文字列を特定しても良い。第二の範囲は、第一の範囲より広く、例えば、選択された文字と連続して入力された文字を含む範囲でも良い。
【００１８】
そして、制御部１１は、受付部１０が第一の操作を受け付けると、第一の範囲に対応する修正候補を記憶部１２から読み出し、表示部１３に表示させる。制御部１１は、受付部１０が第二の操作を受け付けると、第二の範囲に対応する修正候補を記憶部１２から読み出し、表示部１３に表示させる。
【００１９】
つまり、第一の範囲又は第二の範囲に含まれる文字又は文字列は、修正候補に対応付けられて、記憶部１２に記憶されている。制御部１１は、第一の範囲又は第二の範囲に含まれる文字又は文字列に対応する修正候補を、第一の範囲又は第二の範囲に対応する修正候補として、記憶部１２から取得する。なお、制御部１１は、第一の範囲又は第二の範囲に対応付けられている修正候補を複数取得した場合、その全てを表示部１３に表示させても良い。または、制御部１１は、修正候補を複数取得した場合、その一部を表示部１３に表示させても良い。例えば制御部１１は、修正候補が順位付されている場合、所定の順位以上の修正候補を表示部１３に表示させても良い。
【００２０】
なお、第一の範囲は、ユーザ２０００による選択操作によって選択された部分でなくても良い。この場合、制御部１１が、表示部１３が表示する文字列の内、所定の範囲を第一の範囲として決定しても良い。例えば所定の範囲が「表示されている文字列の一文字目」であれば、制御部１１は、「東京都品川区京五反田  １−１−１」の一文字目である「東」を含む範囲を第一の範囲として決定する。
【００２１】
また、制御部１１は、ユーザ２０００による選択操作を受け付けていない状況で、第一の操作を受け付けた場合、第二の範囲に対応する修正候補を表示させても良い。この場合、制御部１１は、選択操作に寄らず、第一の範囲及び第二の範囲を決定する。上述したように、制御部１１は、表示部１３が表示する文字列の内、所定の範囲を第一の範囲として決定しても良い。そして、制御部１１は、第一の範囲より広い範囲を第二の範囲として決定しても良い。
【００２２】
または、制御部１１は、ユーザ２０００による選択操作を受け付けていない状況で第一の操作を受け付けた場合は、表示部１３に対し、修正候補を表示させなくても良い。さらに、制御部１１は、選択操作を受け付けたか否かに関わらず、第二の操作を受け付けた場合は、第二の範囲に対応する修正候補を表示しても良い。
【００２３】
表示部１３は、ユーザ２０００が修正の要否を判断する対象となる文字列を表示する。表示部１３は、制御部１１が記憶部１２から読み出した文字列を取得し、表示する。表示部１３が表示する文字列は、どのように生成されたものでも良い。例えば表示部１３は、アプリケーションがＯＣＲ処理によって生成した文字列を表示しても良い。または、表示部１３は、ユーザ２０００がスマートフォン１００１に入力した文字列を表示しても良い。
【００２４】
また、表示部１３は、制御部１１から修正候補を取得し、表示する。図４及び図５には、表示部１３による表示の例を示す。図４は、受付部１０が、選択操作及び第一の操作を受け付けた場合の表示例を示す。つまり、ユーザ２０００は、表示部１３が表示する文字列のうち、「京」の文字を選択する。その後、ユーザ２０００は、表示部１３を第一の方向になぞる操作を行う。したがって、表示部１３は、第一の範囲に含まれる「京」の文字に対応する修正候補を表示する。図４に示すように、表示部１３は、「京」の文字に対応する修正候補として「束」を表示している。
【００２５】
図５は、受付部１０が、第二の操作を受け付けた場合の表示例を示す。つまり、ユーザ２０００は、表示部１３が表示する文字列のうち、「京」の文字を選択し、表示部１３を第二の方向になぞる操作を行う。なお、ユーザ２０００は、選択操作を行わずに第二の操作を行っても良い。表示部１３は、第二の範囲に含まれる「東京都品川区京五反田」の文字列に対応する修正候補として「東京都品川区東五反田」を表示している。
【００２６】
なお、表示部１３が表示する修正候補の数は複数でもよい。また、表示部１３は、第一の範囲に対応する修正候補と、第二の範囲に対応する修正候補とを同じ位置に表示しても良いし、異なる位置に表示しても良い。つまり、表示部１３は例えば、図４及び図５に示すように、第一の操作が入力された場合も、第二の操作が入力された場合も、選択操作によって選択された文字の上部に修正候補を表示しても良い。
【００２７】
記憶部１２は、ユーザ２０００が修正の要否を判断する対象となる文字列と、当該文字列の表示部１３における表示位置とを記憶する。表示位置は、例えば、表示部１３の特定箇所を原点とした２次元座標でよい。
【００２８】
また、記憶部１２は、修正候補を記憶する。修正候補は、文字又は文字列であり、他の文字又は文字列と対応付けられて記憶されている。記憶部１２が記憶するデータの一例を図６に示す。ここで、「修正対象」とは、第一の範囲又は第二の範囲に含まれる文字又は文字列のことをいう。図６に示すように、修正対象「京」には、修正候補として「束」「東」「乗」の３つが対応付けられている。また、修正対象「東京都品川区京五反田」には、修正候補として「東京都品川区東五反田」「東京都品川区西五反田」「東京都品川区東品川」の３つが対応付けられている。
【００２９】
各修正候補には、順位付けがされていても良い。順位付けは、ユーザ２０００による文字入力の履歴を基準に定められていても良い。また、記憶部１２が記憶するデータは、受信部１４及び送信部１５を介して外部から取得されてもよい。
【００３０】
さらに、記憶部１２は、予め修正候補を記憶していなくても良い。すなわち、制御部１１は、ユーザ２０００による選択操作によって修正対象を特定した後、受信部１４及び送信部１５を介して外部から、修正対象に対応する修正候補を取得しても良い。このとき、制御部１１は、受信部１４及び送信部１５を介してインターネットに接続し、外部の検索エンジン等から修正対象に関連する文字又は文字列を取得してもよい。そして、制御部１１は、取得した文字又は文字列を修正対象に対応する修正候補として記憶部１２に記憶させても良い。
（第一実施形態の動作）
図７は、第一実施形態の動作の例を示すフローチャートである。まず、受付部１０は、表示部１３が表示する文字列の一部を選択する選択操作を受付ける（Ｓ１）。選択操作の受付けは、例えば、ユーザ２０００による所定のアプリケーションの起動や、ユーザ２０００による所定の動作の入力を契機に開始されても良い。受付部１０は、表示部１３から、ユーザ２０００が表示部１３に触れたこと、及びその位置を取得する。そして、受付部１０は、ユーザ２０００が表示部１３に触れた位置、接触していた時間等から、ユーザの操作が文字を選択する所定の選択操作であることを認識する。選択操作の具体例は上述した通りである。受付部１０は、選択操作が入力された位置（表示部１３における座標等）を制御部１１に受け渡す。
【００３１】
さらに、制御部１１は、表示部１３が表示する文字列と、その文字列が表示されている表示部１３上の位置とを、記憶部１２から取得する。加えて、制御部１１は、選択操作が入力された位置を、受付部１０から取得する。制御部１１は、記憶部１２及び受付部１０から取得した位置の情報から、第一の範囲（選択操作によって選択された部分）に含まれる文字又は文字列を特定する（Ｓ２）。つまり、制御部１１は、表示部１３が表示する文字列のうち、どの部分（文字又は文字列）がユーザ２０００によって選択されたのかを特定する。
【００３２】
続いて、受付部１０は、表示部１３から第一の操作を受け付ける（Ｓ３）。具体的には、受付部１０は、表示部１３から、ユーザ２０００が表示部１３に触れたこと、及びその位置を取得する。そして、受付部１０は、ユーザ２０００が表示部１３に触れた後、その接触面が第一の方向に移動したことを、第一の操作として受け付ける。
【００３３】
そして、制御部１１は、受付部１０が第一の操作を受け付けると、第一の範囲に対応する修正候補を記憶部１２から読み出し、表示部１３に表示させる（Ｓ４）。つまり、制御部１１は、Ｓ２で特定した文字又は文字列に対応する修正候補を記憶部１２から読み出す。そして、制御部１１は、読み出した修正候補を表示部１３に表示させる。
【００３４】
受付部１０は、第一の操作の代わりに、第二の操作を受け付ける場合がある（Ｓ５）。具体的には、受付部１０は、表示部１３から、ユーザ２０００が表示部１３に触れたこと、及びその位置を取得する。そして、受付部１０は、ユーザ２０００が表示部１３に触れた後、その接触面が第二の方向に移動したことを、第二の操作として受け付ける。
【００３５】
制御部１１は、受付部１０が第二の操作を受け付けると、第二の範囲に対応する修正候補を記憶部１２から読み出し、表示部１３に表示させる（Ｓ６）。つまり、制御部１１は、第一の範囲より広い第二の範囲を特定することで、第二の範囲に含まれる文字又は文字列を特定する。第二の範囲は、選択された文字（第一の範囲に含まれる文字）と連続して入力された文字を含む範囲で良い。制御部１１は、第二の範囲に含まれる文字又は文字列に対応する修正候補を、記憶部１２から読み出す。そして、制御部１１は、読み出した修正候補を表示部１３に表示させる。
【００３６】
その後、表示部１３による表示を見たユーザは、正しいと判断した修正候補を選択する。修正候補の選択は、表示部１３に触れることで実現されても良いし、他の入力装置を介した入力によって実現されても良い。そして、制御部１１は、ユーザが選択した修正候補と、修正対象とを入れ替えた文字列を、記憶部１２に記憶させても良い。これにより、表示部１３が表示する文字列の修正が完了する。
【００３７】
制御部１１は、受付部１０が選択操作を受け付けない場合は、第一の操作又は第二の操作を受け付けた場合でも、修正候補を表示部１３に表示させなくて良い。また、制御部１１は、受付部１０が選択操作を受け付けたが、第一の操作又は第二の操作を受け付けなかった場合、修正候補を表示部１３に表示させなくて良い。
【００３８】
さらに、制御部１１は、第二の範囲の特定、及び第二の範囲に含まれる文字又は文字列
の特定を、Ｓ２で行っても良い。つまり、制御部１１は、受付部１０が第二の操作を受け付ける前に、第二の範囲に含まれる文字又は文字列を特定しても良い。また、制御部１１は、受付部１０が第一の操作又は第二の操作を受け付ける前に、記憶部１２から修正候補を取得しても良い。つまり、制御部１１は、予め第一の範囲に対応する修正候補及び第二の範囲に対応する修正候補を取得しておき、入力された操作が第一の操作なのか、又は第二の操作なのかに応じて、どちらかの修正候補を表示部１３に表示させても良い。
【００３９】
さらに、制御部１１は、受付部１０が選択操作を受け付けていない状況で、第一の操作を受け付けた場合、第二の範囲に対応する修正候補を表示させても良い。また、制御部１１は、第二の操作を受け付けた場合は、選択操作を受け付けたか否かに関わらず、第二の範囲に対応する修正候補を表示しても良い。
【００４０】
なお、上述の例では、第二の範囲は、選択された文字と連続して入力された文字を含む範囲としたが、これに限られない。例えば、第二の範囲は、ユーザ２０００が選択した文字又は文字列から、右側に表示される文字又は文字列でも良い。換言すると、選択された文字又は文字列より左側に表示される文字又は文字列は正しいものとして扱われ、右側に表示される文字又は文字列は修正の対象として扱われても良い。また、第二の範囲は、表示部１３が表示する全ての文字列でも良い。
【００４１】
第一実施形態記載の表示制御装置は、第一の操作を受け付けた場合に第一の範囲に対応する修正候補を表示し、第二の操作を受け付けた場合に第二の範囲に対応する修正候補を表示することができる。したがって、第一実施形態によれば、ユーザが、文字列のうち修正を望む部分に対応する修正候補を、簡便な操作によって得ることができる表示制御装置を提供することができる。また、当該表示制御装置は、ユーザによって選択された部分を第一の範囲とし、第一の範囲より広い範囲を第二の範囲とする。したがって、第一実施形態によれば、ユーザは、より自身の意思を反映させた範囲を修正することができる。
＜表示される修正候補の例＞
制御部１１は、第一の範囲又は第二の範囲を修正候補と入れ替えて成る文字列が項目に関して予め登録された文字列となる修正候補を、表示部１３に表示させても良い。この場合、表示部１３が表示する文字列は、項目と対応付けられている。
【００４２】
項目とは、「住所」「氏名」「性別」など、文字列が表す内容を分類したものである。例えば、文字列と項目「住所」とが対応付けられている場合、当該文字列は、図３のように「住所」の項目を示す文字列の近傍に表示されても良い。つまり、表示部１３を見たユーザが、文字列が表す内容が特定の項目に関することを把握できるように、文字列が表示されていれば良い。
【００４３】
第一の範囲を修正候補と入れ替えて成る文字列とは、第一の範囲に含まれる文字又は文字列（修正対象）を、修正候補である文字又は文字列と入れ替えることで生成される文字列である。例えば、前述の例において、第一の範囲を修正候補と入れ替えて成る文字列とは、選択された文字である「京」の字を修正候補「束」の字と入れ替えて成る文字列である。つまりこの場合、第一の範囲を修正候補と入れ替えて成る文字列は、「東京都品川区束五反田  １−１−１」となる。同様に、第二の範囲を修正候補と入れ替えて成る文字列とは、前述の例において、第二の範囲に含まれる「東京都品川区束五反田」の文字列を、修正候補「東京都品川区東五反田」の文字列と入れ替えて成る文字列である。つまりこの場合、第二の範囲を修正候補と入れ替えて成る文字列は、「東京都品川区東五反田  １−１−１」となる。
【００４４】
項目に関して予め登録された文字列とは、例えば、記憶部１２が項目に対応付けて記憶する文字列である。記憶部１２が記憶する情報の例を図８に示す。図８に３行に分けて示される３つの文字列は、いずれも「住所」の項目に対応付けられている。ここで、上述の例の、第一の範囲を修正候補と入れ替えて成る文字列「東京都品川区束五反田  １−１−１」は、図８に示す情報に含まれていない。したがって、「東京都品川区束五反田  １−１−１」は、表示部１３が表示する文字列に対応付けられた「住所」の項目に関して、予め登録された文字列でない。よって、制御部１１は、修正候補「束」を表示部１３に表示させない。
【００４５】
一方、上述の例の、第二の範囲を修正候補と入れ替えて成る文字列「東京都品川区東五反田  １−１−１」は、図８に示す情報に含まれている（１行目）。したがって、「東京都品川区東五反田  １−１−１」は、表示部１３が表示する文字列に対応付けられた「住所」の項目に関して、予め登録された文字列である。よって、制御部１１は、「東京都品川区東五反田」を、修正候補として表示部１３に表示させる。
【００４６】
以上より、表示部１３は、修正後の文字列が予め登録された文字列となるような修正候補を表示する。したがって、ユーザが実在しない住所等を入力することを防ぐことができる。また、実在しないような誤った修正候補を、ユーザが表示部１３で確認する労力を低減することができる。
【００４７】
なお、制御部１１は、修正対象を除いた文字又は文字列が一致（又は類似）する修正候補を記憶部１２から取得することで、修正対象と入れ替えて成る文字列が項目に関して予め登録された文字列となる修正候補を、表示部１３に表示させても良い。例えば、制御部１１は、項目「住所」に対応付けられた文字列「東京都品川区京五反田  １−１−１」から、選択された文字である「京」を除いた文字列が「東京都品川区」と「五反田  １−１−１」であることを特定する。そして、制御部１１は、記憶部１２に記憶された、同じく項目「住所」に対応付けられた文字列を参照する。制御部１１は、「東京都品川区」と「五反田  １−１−１」を含む文字列を、記憶部１２から取得する。
【００４８】
図８より、「東京都品川区」と「五反田  １−１−１」の両方を有する修正候補は、「東京都品川区東五反田  １−１−１」及び「東京都品川区西五反田  １−１−１」である。そのため、制御部１１は、これらの文字列を取得する。そして、制御部１１は、記憶部１２から取得した文字列のうち、「京」の文字に対応する位置にある文字を、第一の範囲に対応する修正候補とする。つまり、制御部１１は、「東」と「西」を、第一の範囲に対応する修正候補として特定する。また、制御部１１は、記憶部１２から取得した文字列の内、「京」の文字と連続して入力された文字を含む範囲を、第二の範囲に対応する修正候補とする。つまり、制御部１１は、「東京都品川区東五反田」と「東京都品川区西五反田」を、第二の範囲に対応する修正候補として特定する。最後に制御部１１は、第一の操作が入力されたか、第二の操作が入力されたかに応じて、第一の範囲又は第二の範囲に対応する修正候補を表示部１３に表示させる。
【００４９】
さらに、制御部１１は、第一の範囲又は第二の範囲に含まれる文字の形状に基づいて生成された修正候補を、表示部１３に表示させても良い。文字の形状に基づいて生成された修正候補には、文字の形状に基づいて、制御部１１が記憶部１２から選択した修正候補を含む。このとき、制御部１１は、第一の範囲又は第二の範囲に含まれる文字の形状と、記憶部１２が記憶する修正候補に含まれる文字の形状との類似度が所定の閾値以上の場合に、その修正候補を表示部１３に表示させても良い。当該類似度は、予め算出され、修正候補に対応付けられて記憶部１３に記憶されていても良い。または、修正候補の選択の際に、制御部１１が当該類似度を算出しても良い。なお、制御部１１は、受信部１４や送信部１５を介してインターネットと接続し、外部のＤＢ等から、第一の範囲又は第二の範囲に含まれる文字の形状に基づいて、修正候補を取得しても良い。
【００５０】
また、制御部１１は、複数の文字の形状に基づいて修正候補を生成してもよい。この場合、制御部１１は、第一の範囲又は第二の範囲に含まれる各文字と、記憶部１２が記憶する修正候補に含まれる各文字との１対１の類似度を算出し、それらの合計や平均が所定の閾値以上の場合に、当該修正候補を表示部１３に表示させても良い。類似度の算出は、パターンマッチング、統計的識別法、構造識別法など、既存の技術により実現できる。
【００５１】
第一の範囲又は第二の範囲に含まれる文字の形状に基づいた修正候補が表示されることで、ＯＣＲ処理によって生成された文字を修正する場合は特に、ユーザが正しい修正候補を選択できる可能性が高まる。なぜならば、ＯＣＲ処理では、対象の文字が似た形状の文字と誤って認識されることがあるためである。
＜修正候補の表示態様の例＞
制御部１１は、複数の修正候補を、第一の範囲又は第二の範囲に含まれる文字の形状と類似する順に表示部１３に表示させてもよい。文字の形状の類似度の算出や記憶態様の例は、前述した通りである。例えば、制御部１１は、記憶部１２から、所定の閾値以上の類似度が対応付けられた修正候補を複数取得する。そして、制御部１１は、取得した複数の修正候補を、類似度が高い順に、表示部１３に表示させる。
【００５２】
この場合の表示例を、図９に示す。図９に示す表示は、図５に示す表示の変形例である。図９は、制御部１１が、「東京都品川区東五反田」、「東京都品川区西五反田」、「東京都品川区東品川」、の３つの修正候補を、記憶部１２から取得した場合の表示例である。また、第二の範囲に含まれる「東京都品川区京五反田」との類似度は、「東京都品川区東五反田」が最も高く、「東京都品川区西五反田」が次に高いとする。そのため、「東京都品川区東五反田」、「東京都品川区西五反田」、「東京都品川区東品川」が順に、選択された文字から遠ざかるように表示されている。なお、修正候補を類似度が高い順に表示する仕方は、これに限られない。例えば、選択された文字から遠ざかる方向にいくほど、類似度の高い修正候補が表示されても良い。また、複数の修正候補は、類似度の高い修正候補から順に、タイミングをずらして表示されてもよい。
第一の範囲又は第二の範囲に含まれる文字の形状と類似する順に修正候補が表示されることで、ユーザは、正しい修正候補をいち早く確認し、選択できる可能性が高まる。これにより、ユーザによる文字修正に要する時間が短縮される。
【００５３】
さらに、制御部１１は、表示部１３に対し、修正候補が第一の範囲に対応する場合には、当該修正候補を、文字列が表示される位置の第一の方向側に表示させても良い。同様に、制御部１１は、表示部１３に対し、修正候補が第二の範囲に対応する場合には、修正候補を文字列が表示される位置の第二の方向側に表示させても良い。すなわち、制御部１１は、表示部１３に対し、ユーザ２０００が表示部１３をなぞった方向に修正候補を表示させても良い。より具体的には、制御部１１は、文字列が表示されている位置を記憶部１２から取得しているため、第一の操作が入力された場合に、取得した位置よりも第一の方向側となる位置を特定できる。制御部１１は、第二の操作が入力された場合も同様に、文字列が表示されている位置よりも第二の方向側となる位置を特定できる。そして、特定した位置に修正候補が表示されるよう、表示部１３を制御する。
【００５４】
表示部１３による表示の例を図１０に示す。図１０に示す表示は、図５に示す表示の変形例である。つまり、表示部１３は、文字列「東京都品川区京五反田  １−１−１」の、第二の範囲に対応する修正候補を表示する。図１０に示す通り、修正候補である「東京都品川区東五反田」は、文字列「東京都品川区京五反田  １−１−１」が表示される位置の第二の方向側、つまり、下側に表示されている。
【００５５】
また、この場合に、表示部１３が複数の修正候補を表示する例を図１１に示す。図１１に示す表示は、図９及び図１０の変形例である。制御部１１は、表示部１３に対し、「東京都品川区東五反田」、「東京都品川区西五反田」、「東京都品川区東品川」の３つの修正候補を、全て文字列「東京都品川区京五反田  １−１−１」が表示される位置の第二の方向側に表示させている。また、第二の範囲に含まれる「東京都品川区京五反田」との類似度は、「東京都品川区東五反田」が最も高く、「東京都品川区西五反田」が次に高い。そのため、「東京都品川区東五反田」、「東京都品川区西五反田」、「東京都品川区東品川」が順に、選択された文字から遠ざかるように表示されている。勿論、複数の修正候補は、類似度の高い修正候補から順に、タイミングをずらして表示されてもよい。
【００５６】
これにより、ユーザは修正候補が表示される位置を予測することができるため、情報処理装置１０００の操作性が向上する。
＜ハードウェア構成＞
第一実施形態のハードウェア構成について説明する。図１２は、は、第一実施形態の各構成要素を実現するハードウェア構成を示している。図１２より、情報処理装置１００２は、通信制御部１、ＲＡＭ２、記憶部３、ＣＰＵ４、ディスプレイ５、を含む。
【００５７】
通信制御部１は、ネットワークを介して外部装置と通信する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２は、ＣＰＵ（Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）４が一時記憶のワークエリアとして使用するランダムアクセスメモリである。ＲＡＭ２には、本実施形態の実現に必要な種々のデータを記憶する容量が確保される。記憶部３は、本実施形態の実現に必要なデータベース等のデータ、ＣＰＵ４が実行するアプリケーションプログラム、初期データ等を、不揮発に記憶する。記憶部３は、ＲＯＭ（Ｒｅａｄ Ｏｎｌｙ Ｍｅｍｏｒｙ）やＨＤＤ（Ｈａｒｄ Ｄｉｓｋ Ｄｒｉｖｅ）等で良い。ＣＰＵ４は演算制御用のプロセッサであり、プログラムを実行することで本発明の各機能手段を実現する。ディスプレイ５は、液晶ディスプレイ、プラズマディスプレイ、有機ＥＬ（ Ｅｌｅｃｔｒｏ―Ｌｕｍｉｎｅｓｃｅｎｃｅ ）ディスプレイで良い。ディスプレイ５は、ＣＰＵ４の制御により、画像を表示する。また、ディスプレイ５は、例えば抵抗膜方式や静電容量方式等を用いたタッチスクリーンディスプレイでも良い。
【００５８】
なお、ＣＰＵ４は、ＣＰＵ以外の回路によって代替されても良い。回路は、プログラムを実行するひとつまたは複数のプロセッサであり、ＣＰＵ、ＡＳＩＣｓ、ＰＡＬ‘ｓ等を含む。複数の回路は、同一の装置内で協働しても良いし、別の装置内に存在しても良い。
【００５９】
図１２に示すように、ＣＰＵ４は、受付部１６及び制御部１７を実現することができる。また、記憶部３は、記憶部１２を実現することができる。通信制御部１は、受信部１４及び送信部１５を実現することができる。ディスプレイ５は、表示部１３を実現することができる。なお、ディスプレイ５及び記憶部３は、情報処理装置１００２とは異なる装置内にあってもよい。
【００６０】
記憶部３が記憶するアプリケーションプログラムは、受付部１６及び制御部１７が行う処理を実行するプログラムである。ＣＰＵ４は記憶部３からアプリケーションプログラムを読み出して、受付部１６及び制御部１７の処理を実行する
（第二実施形態）
（第二実施形態の構成）
第二実施形態の構成例について説明する。図１３は第二実施形態の構成例を示すブロック図である。表示制御装置１０１は、受付部１６と、制御部１７を含む。受付部１６は、表示部（図示せず）を第一の方向になぞる第一の操作、又は不図示の表示部を第二の方向になぞる第二の操作を受け付ける。制御部１７は、受付部１６が第一の操作を受け付けた場合、表示部が表示する文字列のうち第一の範囲に対応する修正候補を表示部に表示させる。また、制御部１７は、受付部１６が第二の操作を受け付けた場合、表示部が表示する文字列のうち第二の範囲に対応する修正候補を表示部に表示させる。
【００６１】
表示制御装置１０１は、ＣＰＵや、ＣＰＵ以外の回路で良い。回路は、プログラムを実行するひとつまたは複数のプロセッサであり、ＣＰＵ、ＡＳＩＣｓ、ＰＡＬ‘ｓ等を含む。複数の回路は、同一の装置内で協働しても良いし、別の装置内に存在しても良い
本明細書において、上述した一連の処理を記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【００６２】
第二実施形態記載の表示制御装置は、第一の操作を受け付けた場合に第一の範囲に対応する修正候補を表示し、第二の操作を受け付けた場合に第二の範囲に対応する修正候補を表示することができる。したがって、第二実施形態によれば、ユーザが、文字列のうち修正を望む部分に対応する修正候補を、簡便な操作によって得ることができる表示制御装置を提供することができる。
【００６３】
上述した各実施形態は本発明を具体化した一例に過ぎず、請求の範囲に記載された本発明の趣旨の範囲内であれば、種々変更することができるものである。
【符号の説明】
【００６４】
１    通信制御部
２    ＲＡＭ
３    記憶部
４    ＣＰＵ
５    ディスプレイ
１０    受付部
１１    制御部
１２    記憶部
１３    表示部
１４    受信部
１５    送信部
１６    受付部
１７    制御部
１００    表示制御装置
１０１    表示制御装置
１０００    情報処理装置
１００１    スマートフォン
１００２    情報処理装置
２０００    ユーザ
【図１】
0006485301.tif 000002
【図２】
0006485301.tif 000003
【図３】
0006485301.tif 000004
【図４】
0006485301.tif 000005
【図５】
0006485301.tif 000006
【図６】
0006485301.tif 000007
【図７】
0006485301.tif 000008
【図８】
0006485301.tif 000009
【図９】
0006485301.tif 000010
【図１０】
0006485301.tif 000011
【図１１】
0006485301.tif 000012
【図１２】
0006485301.tif 000013
【図１３】
0006485301.tif 000014