(57)【特許請求の範囲】
【請求項１】
変換対象文字列である仮名漢字まじり文字列を漢字を含まない文字列に変換し、中間仮名文字列を得る漢字仮名変換手段と、
前記中間仮名文字列を仮名漢字まじりの文字列に変換し、一次候補文字列を得る仮名漢字変換手段と、
変換対象文字列を仮名文字列部と漢字文字列部に分けて各文字列部を一次候補文字列と照合する照合手段と、
最終候補文字列を出力する出力手段とを備え、
前記照合手段は、漢字文字列部と同一の文字列を有し各漢字文字列部で区切られた仮名文字列部の位置に対応して空でない任意の文字列を有する一次候補文字列を最終候補文字列とすることを特徴とする文書処理装置。
【請求項２】
変換対象文字列である仮名漢字まじり文字列を漢字を含まない文字列に変換し、中間仮名文字列を得る漢字仮名変換手段と、
前記中間仮名文字列を仮名漢字まじりの文字列に変換し、一次候補文字列を得る仮名漢字変換手段と、
前記一次候補文字列と変換対象文字列を照合し、変換対象文字列中で漢字の連続する部分文字列はそのまま一次候補文字列に保存されており、かつ、変換対象文字列で仮名の連続する部分文字列は一次候補文字列中で空でない任意の文字列に対応している場合に最終候補文字列とする照合手段と、
最終候補文字列を出力する出力手段とを備えることを特徴とする文書処理装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】本発明は、ペン入力機能をもつワードプロセッサ、コンピュータ、携帯情報端末など、手書き文字入力および手書き文字認識機能をもち、直接漢字を入力することが可能である日本語文処理装置、あるいは、一般のコンピュータおよびワードプロセッサなどで、一度入力した日本語テキストを事後に再度変換できる機能をもつ文書処理装置に関する。
【０００２】
【従来の技術】
現在、ペンなどによるペン入力機能を有するワードプロセッサ、コンピュータなどが数多く存在する。図９はペン入力機能を有する携帯情報端末の一例である。表示部Ａは表示一体型のタブレットである。該表示部Ａに入力手段である入力用ペンＢにより入力することができる。図１０は入力中の画面の例である。記入枠ＣにペンＢで入力することにより、ペン入力された漢字、仮名、英数字等を認識し、認識された文字が入力行Ｄに表示される。入力枠はどの枠（Ｃ１〜４）に書いてもよく、認識された文字は記入枠から消えるため、空いている枠に順次入力していけばよく、書いた順に入力行に表示される。
【０００３】
従来のキーボード入力方式ではひらがなから漢字に変換を行っていたが、ペン入力方式においては、漢字も直接入力が可能である。しかし、漢字を混在させた入力や、いったん変換済みの仮名漢字文節のテキストを変換することはできない。漢字の前後の仮名部分ごとに個別に変換を行う場合、例えば「公えん」と入力して、ひらがな部の「公えん」の部分を変換した場合、変換単位が短く、直前の文字「公」となんら関係のないものも候補としてしまうため、変換精度が非常に悪い。
【０００４】
特公平４−３５７８５において、漢字と仮名の混在する見出し語ごとに対応する漢字を格納した専用の辞書を用いることにより、入力させた仮名漢字まじり文字列を変換する方式が開示されている。この方式において用いられる辞書の例を図８に示す。仮名漢字変換辞書の見出し語に漢字をも含んだ文字列も記述した辞書を用いている。しかし、「日本語」に対する見出し語に関して、すべての漢字と仮名の組み合わせを考えると「にほんご」「日ほんご」「に本ご」「にほん語」「日本ご」「日ほん語」「に本語」の７つが必要になる。変換結果である漢字列の文字数をＲとすると、見出し語数は２Ｒ−１となり膨大な量に膨れ上がる。このためかなり大規模な辞書を用意することが必要となり、検索効率、メンテナンスの負荷などの問題があった。
【０００５】
【発明が解決しようとする課題】
ペン入力以外の入力方式として一般的にはキーボードによる入力方式がある。仮名漢字まじりの日本語文を入力する手段として、キーボードより入力文をひらがなで入力した後に、［変換］キーなどの操作により、ひらがな文字列を漢字に変換するといった方式があった。
【０００６】
ペン入力方式においては漢字を直接入力することが可能であるため、例えば「公園」という文字列を入力したい場合、直接前述の記入枠Ｃに「公園」と入力し、認識させることができるが、実際は「園」という漢字は画数も多く、ユーザとしては「公えん」と入力して、変換要求を行うと、「公園」と変換してくれると非常に都合がよい。また、一般の入力方式による機器においても、既に入力済みの日本語のテキストの一部もしくは全部を再度、漢字に変換したいケースがありうる。ＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ）から入力された文章の一部に再変換を行いたい場合も考えられる。そのためには従来の仮名のみからなる文字列を変換の対象とするのではなく、漢字も含んだ、仮名漢字まじりの文字列から変換を行えるようにする必要がある。
【０００７】
特公平４−３５７８５において、仮名漢字まじりの文字列を変換する方式として、従来の仮名漢字変換辞書の見出し語に漢字をも含んだ文字列も記述した辞書を用いる手法が考案されている。しかし、この方式では辞書の項目数が非常に大きくなってしまう。また、上記の例でも明らかなように、可能なすべての組み合わせのうち、ほとんど参照されることのないであろう見出し語（例えば「に本ご」など）を多く含んだ辞書になってしまう一方、使われる可能性のある見出し語に限定して登録するとなると、その境界線を引く作業は容易ではない。そのような辞書の作成には多大な負荷がかかるうえに、さらに辞書の更新や利用者による単語登録などにおいて、他の辞書と一貫性を持たせるためには多大な労力を要することが考えられる。
【０００８】
本発明では、このような巨大な辞書をもつ必要なく、漢字を含んだ漢字を含んだ文字列を一度、ひらがなのみの文字列に変換するという手法を用いることにより、仮名漢字まじりの文字列を変換する。
【０００９】
【課題を解決するための手段】
この発明は、変換対象文字列である仮名漢字まじり文字列を漢字を含まない文字列に変換し、中間仮名文字列を得る漢字仮名変換手段と、前記中間仮名文字列を仮名漢字まじりの文字列に変換し、一次候補文字列を得る仮名漢字変換手段と、変換対象文字列を仮名文字列部と漢字文字列部に分けて各文字列部を一次候補文字列と照合する照合手段と、最終候補文字列を出力する出力手段とを備え、前記照合手段は、漢字文字列部と同一の文字列を有し各漢字文字列部で区切られた仮名文字列部の位置に対応して空でない任意の文字列を有する一次候補文字列を最終候補文字列とすることを特徴とする文書処理装置を提供するものである。
【００１０】
また別の観点から、この発明は、変換対象文字列である仮名漢字まじり文字列を漢字を含まない文字列に変換し、中間仮名文字列を得る漢字仮名変換手段と、前記中間仮名文字列を仮名漢字まじりの文字列に変換し、一次候補文字列を得る仮名漢字変換手段と、前記一次候補文字列と変換対象文字列を照合し、変換対象文字列中で漢字の連続する部分文字列はそのまま一次候補文字列に保存されており、かつ、変換対象文字列で仮名の連続する部分文字列は一次候補文字列中で空でない任意の文字列に対応している場合に最終候補文字列とする照合手段と、最終候補文字列を出力する出力手段とを備えることを特徴とする文書処理装置を提供するものである。
【００１１】
【作用】
この発明によれば、漢字仮名変換手段によって、入力された変換対象の、漢字と仮名文字が混在する文字列を仮名のみの文字列に変換する。ここで、中間仮名文字列が得られる。仮名漢字変換手段によって、仮名漢字まじりの文字列に変換する。ここで、一時候補文字列が得られる。
【００１２】
そして、照合手段によって、変換対象文字列と各一次候補文字列を照合し、一次候補文字列のうち、変換対象文字列に含まれる漢字が正しい位置に、同じ順序で現れるもの以外を排除し、残ったものを正解の候補として、利用者に出力表示する。
【００１３】
【実施例】
図１は本発明の処理の流れを示すブロック図である。変換対象文字列１を仮名漢字変換２の処理により、中間仮名文字列群３が得られる。この中間仮名文字列群３に仮名漢字変換４による処理を加えると、一次候補文字列群５が得られる。この一次候補文字列群５と変換対象文字列１を照合処理６により照合すると最終候補文字列群７が得られるという流れである。
【００１４】
本発明の一実施例のブロック図を図２に示す。８はタブレット、９は文字認識回路、１０は変換対象文字列バッファ、１１は漢字仮名変換回路、１２は漢字仮名変換用回路、１３は中間仮名文字列バッファ、１４は仮名漢字変換回路、１５は仮名漢字変換用辞書、１６は一次候補文字列バッファ、１７は文字列照合手段、１８は最終候補文字列バッファ、１９は表示回路、２０は表示装置、２１は変換過程制御回路を表している。
【００１５】
上記各ブロックについて、処理にもとづいて詳細に説明する。タブレット８は図９のＡに示したように、通常は表示部を兼ねている。図９の記入部ＣにペンＢを用いて文字を入力する。入力された文字は文字認識回路９によって、認識される。文字認識回路９では、入力された文字のイメージ情報や、入力される入力のストローク情報（筆使い）などの情報を用いて、入力された文字を認識する。認識された文字列は、まず変換対象文字列バッファ１０に格納される。この変換対象文字列バッファの内容は、漢字仮名変換用辞書１２を利用して、漢字仮名変換回路１１により、仮名のみを含む文字列に変換され、中間文字列バッファ１３に格納される。
【００１６】
中間仮名文字列バッファ１３に格納された、仮名のみを含む文字列は、仮名漢字変換用辞書１５を利用する仮名漢字変換回路１４によって、漢字まじりの文字列に変換され、一次候補文字列バッファ１６に格納される。変換対象文字列バッファ１０の内容と、一次候補文字列バッファ１６の内容は、照合回路１７によって比較され、この両バッファの内容が矛盾しないと判断された場合にのみ、一次候補文字列バッファ１６の内容が、最終候補文字列バッファ１８にコピーされる。
【００１７】
この最終候補文字列バッファ１８に得られた文字列は、変換結果の候補として表示回路２０を通じて表示装置２１に表示され、利用者に出力表示され、利用者が承認すると確定され、そうでなければ、次の一次候補文字列または中間仮名文字列を得て、同様の処理を繰り返す。
【００１８】
変換処理の起動および候補の提示は、タブレット８より入力され、文字認識回路９によって認識された変換命令として、変換過程制御回路２１に渡され、この変換過程制御回路２１は図３に示すフローチャートにもとづいて処理を進める。図３、図４を用いて、ひとつの実施例を詳細に説明する。ここで実際の例として、「公えん」という文字列をタブレット８より入力し、文字認識回路９によって認識され、変換をすることとする。
【００１９】
まず、ステップ２２において変換対象文字列をＳとする。Ｓは変換対象文字列バッファである。つまりここでＳには“公えん”が格納される。
ステップ２３で最終候補文字列バッファであるＲＲに空集合を代入してクリアする。
ステップ２４において、Ｓを漢字仮名変換する。つまり“公えん”に対して漢字仮名変換を行う。その結果の文字列の集合をＩＩとして格納する。ここではＩＩとして“こうえん”“きみえん”が格納される。これが中間仮名文字列バッファである。
ステップ２５において、ＩＩより要素の文字列をひとつ取り出してＩとする。つまりＩとして“こうえん”が取り出される。もし取り出す要素がなければステップ３０の処理を行う。
ステップ２６において、Ｉに仮名漢字変換を適用し、その結果の文字列とＣＣとする。例ではＣＣとして、“公園”“公演”“後援”“講演”“高遠”が得られる。これが一次候補文字列バッファである。
ステップ２７でＣＣの要素の一つを取り出してＣとする。もし、要素がなければステップ２５に戻る。ステップ２５において、ＩＩの全要素を取り出したら、ステップ３０にすすむ。
ステップ２８において、ＣとＳを照合する。ＣとＳが矛盾するならば、ステップ２７に戻る。矛盾しないならばステップ２９において、集合ＲＲ（最終候補文字列バッファ）の要素としてＣを加えたのち、ステップ２７に戻る。
つまりステップ２７、２８でＣＣの要素である“公園”“公演”“後援”“講演”“高遠”において照合が行われ、Ｓに矛盾しない“公園”“公演”が最終候補文字列バッファＲＲに格納され、ステップ２５にもどり、Ｉとして“きみえん”を取り出し、ステップ２６において仮名漢字変換を適用する。しかし、“きみえん”に仮名漢字変換を適用すると候補が得られないため、またステップ２５にもどる。ステップ２５ではＩＩにはもう取り出すＩがないため、ステップ３０に処理の処理を行うことになる。
ステップ３０では、ＲＲより要素の文字列をひとつ取り出してＲとする。要素がなければステップ３１で候補なしとして終了する。
ステップ３２においてＲを利用者に表示する。ステップ３３において、利用者がＲを採用すれば終了し、そうでない場合はステップ３０に戻る。
つまり候補として“公園”“公演”が表示されたわけである。
【００２０】
上記ステップ２４での漢字仮名変換は、文字列Ｓを引き数としてとり、仮名のみに変換した候補の文字列の集合を返す関数である。また、ステップ２６の仮名漢字変換は仮名のみの文字列Ｉを引き数としてとり、漢字まじりの文字列に変換した文字列の集合を返す関数である。
【００２１】
上記ステップ２８においてＣとＳの照合を行い、矛盾があるかどうかを判断するわけであるが、その判断方法について、図５を用いて詳しく説明する。
前記の例における、変換対象文字列Ｓが「公えん」の場合に、一次候補文字列群ＣＣとして「“公園”“公演”“後援”“講演”“高遠”」が得られたとする。“公園”“公園”は漢字『公』が変換対象文字列Ｓと同じ位置に現れ、かつ、仮名『えん』の部分がなんらかの漢字に置き換えられているのに対し、“後援”“講演”“高遠”については、漢字『公』が現れていないので、明らかに利用者が入力しようとした文字列と異なることがわかる。その結果、“公園”“公演”は最終候補文字列として残り、“後援”“講演”“高遠”については却下されることになる。
【００２２】
また、もう一つの例として、変換対象文字列として「ひ行き」を変換したとする。Ｓに「ひ行き」が格納され、漢字仮名変換が行われる。漢字仮名変換の結果として、中間仮名文字列としてＩに“ひこうき”“ひぎょうき”“ひいき”（下線部は『行』が変換された部分）が得られる。これらの中間仮名文字列のそれぞれについて、仮名漢字変換を行うことにより、一次候補文字列Ｃとして、“飛行機”“非行期”“罷業期”“贔屓”等が得られる。このうち、元の変換対象文字列に含まれていた漢字『行』を含まない“罷業期”“贔屓”等を排除し、残った“飛行機”“非行期”は、「ひ行き」の『ひ』『き』に相当する部分になんらかの漢字が現れているため、これらを正解の候補として提示することになる。
【００２３】
上記の照合処理において、一次候補文字列を最終候補として残すか否かを決定するには、以下の方法による。
変換対象文字列を、仮名のみが連続する部分文字列と、漢字のみが連続する部分文字列に分割する。
【００２４】
0003552750.tif 000002
で表す。ここでＳは変換対象文字列、Ｓｉ（ｉ＝１，２，・・・，ｎ；ｎは自然数）はその部分文字列、＆は文字列の連結演算子を表し、Ｋ（Ｘ）は文字列Ｘが漢字のみを含むことを表す述語、ＮＫ（Ｘ）は文字列Ｘが仮名のみを含むことを表す述語とする。このような分割は必ず一意に定まる。
【００２５】
つまり、例として「ひ行き」が変換対象文字列であった場合、Ｓ＝［ひ行き］であり、Ｓ１は仮名が連続する部分文字列である［ひ］である、Ｓ２は漢字が連続する部分文字列［行］、Ｓ３は同様に、仮名が連続する部分文字列である［き］である。
また変換対象文字列Ｓが［公えん］であった場合は、Ｓ１は漢字が連続する部分文字列である［公］、Ｓ２が仮名が連続する部分文字列である［えん］となる。
【００２６】
このとき、一次候補文字列が以下のような条件を満たす部分文字列に分割できるならば、この文字列は変換対象文字列と矛盾しておらず、最終候補文字列として残すものとする。このような分割が可能でない一次候補文字列は却下し、最終候補文字列から排除する。
【００２７】
0003552750.tif 000003
ここで、Ｔは一次候補文字列、Ｔｉ（ｉ＝１，２，・・・，ｎ；ｎは自然数）はその部分文字列を表す。
【００２８】
たとえば、変換対象文字列Ｓが「公えん」であれば、Ｓ１＝「公」、Ｓ２＝「えん」と一意に分割できる（ｎ＝２）。これに対する一次候補文字列が「公園」であれば、Ｔ１＝「公」＝Ｓ１、Ｔ２＝「園」と分割でき、「公演」でも同様であるが、「講演」「後援」等は、Ｔ１＝Ｓ１、かつＴ２が空でないような分割は存在しないため、最終候補文字列から排除される。
【００２９】
また、変換対象文字列Ｓを「ひ行き」とすると、Ｓ１＝「ひ」、Ｓ２＝「行」、Ｓ３＝「き」と分割できる。これに対する一次候補文字列を「飛行機」とすると、Ｔ１＝「飛」、Ｔ２＝「行」、Ｔ３＝「機」と分割でき、「非行期」においても同様に分割できるので、最終候補文字列として残るが、「罷業期」や「贔屓」についてはＴ１とＴ３が空でなく、かつ、Ｔ２＝Ｓ２となるような分割は存在しない。
【００３０】
すなわち、図６に示すように、変換対象文字列中で漢字の連続する部分文字列はそのまま一次候補文字列に保存されており、かつ、変換対象文字列中で仮名の連続する部分文字列は一次候補文字列中で空でない任意の文字列に対応しているならば、その時に限り、その一次候補文字列を最終候補文字列として残すことになる。
【００３１】
また、上記実施例では、漢字仮名変換、仮名漢字変換をおこなうときに、すべての候補をバッファに格納して一次候補文字列を生成し、照合手段によって、最終候補文字列を提示していた。以下の実施例は大きなバッファを要しない実施例である。図７をもとに説明する。
【００３２】
まず、ステップ３５において、変換対象文字列をＳとする。次にステップ２３で、Ｓに漢字仮名変換を適用し、その結果をＩとする。ステップ２４でもし、Ｉが空文字列であれば、ステップ２５で候補なしとして終了する。Ｉが空文字列でない場合には、ステップ２６において、Ｉに仮名漢字変換を適用して、その結果をＣとする。ステップ２７において、もし空文字列であればステップ２３に戻り、次の候補をＩとし、処理を続ける。空文字列でない場合は、ステップ２８で、Ｓ（変換対象文字列バッファ）とＣ（一次候補文字列バッファ）の照合を行う。もし、ここで照合により矛盾するならば、またステップ２３にもどり次候補をＩとし、処理をつづける。矛盾しなかった場合は、ステップ２９において、Ｃ（一次候補文字列バッファ）の内容をＲ（最終候補文字列バッファ）に代入し、ステップ３０で利用者に提示する。ステップ３１において、利用者が採用すればステップ３２で終了し、採用せずに、次候補を要求した場合はステップ２３にもどる。以上のようにバックトラックを繰り返して候補を生成することも可能である。
【００３３】
【発明の効果】
手書き入力文字を入力、認識できる機器においては、直接漢字を入力できるため部分的に漢字を含んだ文字列を入力できる。しかし、たとえば入力の繁雑さ、あるいは困難さのために文字列の一部を仮名で入力したものを変換したい場合や、また、入力済みの日本語文を再度変換したい場合において、入力された文字列に含まれる漢字とその位置の情報を有効に利用することにより、不要な候補を排除することができ、変換の精度を高めることができる。
【００３４】
漢字仮名まじり文字列を仮名文字列に変換するための辞書はテキスト音声合成やソーティング用の読みの生成などに汎用的に利用でき、特別な専用辞書を用意する必要はない。仮名漢字変換においては従来の技術をそのまま利用できる。このように、汎用的なソフトウェア技術を組み合わせたものであるため、個々の要素技術をそれぞれ置き換えることが容易である。
【図面の簡単な説明】
【図１】本発明の処理の流れを示すフローチャートである。
【図２】本発明における実施例１のブロック図である。
【図３】本発明における実施例１のフローチャートである。
【図４】本発明の実施例における変換過程を示した図である。
【図５】本発明における入力文字列例に対する中間かな文字列群、一次候補文字列群、最終候補文字列群の例を示した図である。
【図６】照合処理によって、最終候補文字列として残す条件の例を示した図である。
【図７】本発明における実施例２のフローチャートである。
【図８】従来例における、辞書の例を示した図である。
【図９】ペン入力機能を持った携帯情報端末を示した図である。
【図１０】ペンによる手書き入力モードでの画面図の一例である。
【符号の説明】
１  変換対象文字列
２  仮名漢字変換処理
３  中間仮名文字列群
４  仮名漢字変換処理
５  一次候補文字列群
６  照合処理
７  最終候補文字列群
８  タブレット
９  文字認識回路
１０  変換対象文字列バッファ
１１  漢字仮名変換回路
１２  漢字仮名変換用辞書
１３  中間仮名文字列バッファ
１４  仮名漢字変換回路
１５  仮名漢字変換用辞書
１６  一次候補文字列バッファ
１７  文字列照合回路
１８  最終候補文字列バッファ
１９  表示回路
２０  表示装置
２１  変換過程制御回路
【図１】
0003552750.tif 000004
【図２】
0003552750.tif 000005
【図３】
0003552750.tif 000006
【図４】
0003552750.tif 000007
【図５】
0003552750.tif 000008
【図６】
0003552750.tif 000009
【図７】
0003552750.tif 000010
【図８】
0003552750.tif 000011
【図９】
0003552750.tif 000012
【図１０】
0003552750.tif 000013