JP2004272807A - 文字列処理装置および文字列処理方法 - Google Patents
文字列処理装置および文字列処理方法 Download PDFInfo
- Publication number
- JP2004272807A JP2004272807A JP2003065577A JP2003065577A JP2004272807A JP 2004272807 A JP2004272807 A JP 2004272807A JP 2003065577 A JP2003065577 A JP 2003065577A JP 2003065577 A JP2003065577 A JP 2003065577A JP 2004272807 A JP2004272807 A JP 2004272807A
- Authority
- JP
- Japan
- Prior art keywords
- character
- emotion
- character string
- search
- registered
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Machine Translation (AREA)
- Document Processing Apparatus (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】小さなサイズの辞書を用いて、誤認識を起こすことなく、顔文字などの文字パターンを含む文字列が表す感情を求める。
【解決手段】顔部品テーブル14a〜kには、各顔部品に含まれる文字と、当該文字が当該顔部品に含まれる場合に表す感情との対応関係が登録される。感情検索部12は、入力文字列101の各文字ごとに、顔部品テーブル14a〜kを検索し、各文字が表す感情を求める。感情集計部13は、感情検索部12で求めた感情を集計し、入力文字列101が表す感情を表現する感情表現値103を求める。検索対象ポインタ16には、前回の検索で最後に検索した顔部品テーブルが記憶され、顔部品テーブルの検索は、記憶した顔部品テーブルから、顔文字における顔部品の並び順に従って行われる。
【選択図】 図1
【解決手段】顔部品テーブル14a〜kには、各顔部品に含まれる文字と、当該文字が当該顔部品に含まれる場合に表す感情との対応関係が登録される。感情検索部12は、入力文字列101の各文字ごとに、顔部品テーブル14a〜kを検索し、各文字が表す感情を求める。感情集計部13は、感情検索部12で求めた感情を集計し、入力文字列101が表す感情を表現する感情表現値103を求める。検索対象ポインタ16には、前回の検索で最後に検索した顔部品テーブルが記憶され、顔部品テーブルの検索は、記憶した顔部品テーブルから、顔文字における顔部品の並び順に従って行われる。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、文字列処理装置に関し、より特定的には、入力された文字列に感情を表すための文字パターンが含まれる場合に、文字列が表す感情を求める処理を実行する文字列処理装置、および文字列処理方法に関する。
【0002】
【従来の技術】
電子メールなどのように私的な目的で作成される文章では、文章作成者の感情を表すために、「(^o^;)」や「(ToT)」などの顔文字と呼ばれる文字パターンが、使用されることがある。
【0003】
顔文字については、従来から、文章を音声合成して出力する場合に、文章に含まれる顔文字が表す感情に応じて、出力する音声の韻律を変化させる音声合成装置が考案されている(特許文献1)。この音声合成装置は、まず、音声出力すべき文章に対して形態素解析を行い、文章に含まれる顔文字を抽出する。次に、この装置は、予め用意した辞書を用いて、切り出した顔文字が表す感情を求め、求めた感情に応じて、出力する音声の韻律を変化させる。この装置では、顔文字と感情とを対応づけるために、各顔文字の全体と感情との対応関係が登録された辞書と、各顔文字を構成する個々の文字(例えば、上記の例では「^」や「o」など)と感情との対応関係が登録された辞書とが使用される。
【0004】
【特許文献1】
特開2001−337688号公報(第3−7頁、図1)
【0005】
【発明が解決しようとする課題】
しかしながら、上記のような辞書を用いて顔文字が表す感情を求める方法には、次のような問題点がある。まず、各顔文字の全体と感情との対応関係が登録された辞書を用いて、顔文字が表す感情を求めるためには、辞書を引く前に、形態素解析などにより顔文字を正しく抽出しておく必要がある。ところが、形態素解析は、多大な処理量を必要とするため、携帯電話など処理能力がそれほど高くない情報通信機器に搭載することは困難である。また、顔文字の種類が増えるに従って、辞書のサイズが大きくなるという問題点もある。
【0006】
また、上記音声合成装置では、各顔文字を構成する個々の文字と感情との対応関係が登録された辞書が使用されているが、1つの文字が異なる顔文字において別の感情を表す場合があるという点が考慮されていない。例えば、文字「;」は、顔文字「(−o−;)」に使用された場合には「あせり」という感情を表すが、顔文字「(;o;)」に使用された場合には「悲しみ」という感情を表す。上記音声合成装置は、このような場合に適切な処理を行えず、例えば、「(−o−;)」に使用された文字「;」と、「(;o;)」に使用された文字「;」とは、同じ感情(例えば「あせり」)を表すものとして処理してしまう。
【0007】
それ故に、本発明は、小さなサイズの辞書を用いて、誤認識を起こすことなく、顔文字などの文字パターンを含む文字列が表す感情を求める文字列処理装置、および文字列処理方法を提供することを目的とする。
【0008】
【課題を解決するための手段および発明の効果】
第1の発明は、入力された文字列に所定の文字パターンが含まれる場合に、所定の処理を実行する文字列処理装置であって、予め定められた複数の文字パターンについて、文字パターンに含まれる個々の文字と、当該文字が表す感情との対応関係が登録された文字パターン辞書と、入力された文字列に含まれる各文字ごとに文字パターン辞書を検索し、各文字が表す感情を求める検索手段と、文字列に含まれるすべての文字について検索手段で求めた感情を集計し、文字列が表す感情を表現する感情表現値を求める集計手段とを備える。
このような第1の発明によれば、各文字パターンの全体と感情とを対応づける辞書に代えて、各文字パターンに含まれる個々の文字と感情とを対応づける辞書を用いて、文字列が表す感情が求められる。このため、辞書を検索する前に、文字列から文字パターンを抽出する処理を行う必要がなくなる。また、文字パターンの種類に比べて、文字パターンに含まれる文字の種類が少ない場合には、辞書のサイズが小さくなる。したがって、処理能力のあまり高くない情報通信機器においても、所定の文字パターンを含んだ文字列が表す感情を求めることができる。
【0009】
第2の発明は、第1の発明において、文字パターンが、顔文字であることを特徴とする。
このような第2の発明によれば、各顔文字の全体と感情とを対応づける辞書に代えて、各顔文字に含まれる個々の文字と感情とを対応づける辞書を用いて、文字列が表す感情が求められる。このため、辞書を検索する前に、文字列から顔文字を抽出する処理を行う必要がなくなる。また、一般に、顔文字の種類に比べて、顔文字に含まれる文字の種類は少ないので、辞書のサイズが小さくなる。したがって、処理能力のあまり高くない情報通信機器においても、顔文字を含んだ文字列が表す感情を求めることができる。
【0010】
第3の発明は、第2の発明において、文字パターン辞書は、顔文字を構成する複数の顔部品に対応した複数の顔部品テーブルを含み、各顔部品に対応した顔部品テーブルには、顔文字において当該顔部品に含まれる個々の文字と、当該文字が当該顔部品に含まれる場合に表す感情との対応関係が登録されていることを特徴とする。
このような第3の発明によれば、いずれの顔部品に含まれるかによって、文字が表す感情として、異なる結果を求めることができる。したがって、1つの文字が異なる顔文字では別の感情を表す場合でも、適切な処理を行うことができる。よって、顔文字を含んだ文字列が表す感情として、より適切な結果を求めることができる。
【0011】
第4の発明は、第3の発明において、検索手段は、顔部品テーブルのうち前回の検索で最後に検索した顔部品テーブルを記憶し、文字列に含まれる文字について新たな検索を行うときには、記憶した顔部品テーブルに基づき、最初に検索すべき顔部品テーブルを決定した上で、顔文字における顔部品の並び順に従って、顔部品テーブルを検索することを特徴とする。
このような第4の発明によれば、顔文字における顔部品の並び順は一定であることを考慮して、検索手段は、前回最後に検索した顔部品テーブル(または、その次の顔部品テーブル)から、顔部品の並び順に従って、顔部品テーブルを検索する。このように前回の検索位置(または、前回の検索位置の次の位置)から検索を開始することにより、検索を高速に、かつ正確に実行することができる。したがって、高速に、かつ誤認識を起こすことなく、顔文字を含んだ文字列が表す感情を求めることができる。
【0012】
第5の発明は、第2の発明において、集計手段は、検索手段で求めた感情を種類ごとに集計した結果を含んだ感情表現値を求めることを特徴とする。
【0013】
第6の発明は、第2の発明において、集計手段は、検索手段で求めた感情を強度ごとに集計した結果を含んだ感情表現値を求めることを特徴とする。
このような第5または第6の発明によれば、顔文字を含んだ文字列が表す感情を、感情の種類の集計結果(または、感情の強度の集計結果)という形式で、定量的に表現することができる。
【0014】
第7の発明は、第2の発明において、文字パターン辞書に登録された感情と、文字に関する所定の属性値との対応関係が登録された変換テーブルと、変換テーブルを参照して、集計手段で求めた感情表現値に基づき、文字列に関する属性値を求める属性値計算手段とをさらに備える。
このような第7の発明によれば、顔文字を含んだ文字列が表す感情に基づき、文字列の属性値を求めることができる。したがって、求めた属性値を文字列に設定することにより、文字列が表す感情に応じて文字列の属性を変化させることができる。
【0015】
第8の発明は、第7の発明において、変換テーブルに登録された属性値が、文字色であることを特徴とする。
このような第8の発明によれば、顔文字を含んだ文字列が表す感情に基づき、文字列の色を求めることができる。したがって、求めた色で文字列を表示あるいは印字などしたときに、顔文字を含んだ文字列が表す感情を容易に理解することができる。
【0016】
第9の発明は、第8の発明において、変換テーブルは、文字パターン辞書に登録された感情の種類と色データとの対応関係が登録された色変換テーブルと、文字パターン辞書に登録された感情の強度と明るさデータとの対応関係が登録された明るさ変換テーブルとを含み、集計手段は、検索手段で求めた感情を種類ごとに集計した第1の集計結果と、検索手段で求めた感情を強度ごとに集計した第2の集計結果とを含んだ感情表現値を求め、属性値計算手段は、色変換テーブルに登録された色データを第1の集計結果に応じて混合した結果と、明るさ変換テーブルに登録された明るさデータのうち、第2の集計結果で最頻となる強度に対応したデータとを乗算し、当該乗算結果を文字列に関する属性値とすることを特徴とする。
このような第9の発明によれば、顔文字を含んだ文字列が表す感情を求めた上で、感情の種類の集計結果に基づき、文字列の色が求められ、感情の強度の集計結果に基づき、文字列の明るさが求められる。したがって、求めた色および明るさで文字列を表示あるいは印字などしたときに、顔文字を含んだ文字列が表す感情を容易に理解することができる。
【0017】
第10の発明は、電子メールを受信するメール受信装置であって、電子メールを受信する受信手段と、電子メールに所定の文字パターンが含まれる場合に、所定の処理を実行するために、予め定められた複数の文字パターンについて、文字パターンに含まれる個々の文字と、当該文字が表す感情との対応関係が登録された文字パターン辞書と、電子メールに含まれる各文字ごとに文字パターン辞書を検索し、各文字が表す感情を求める検索手段と、電子メールの所定の部分に含まれるすべての文字について検索手段で求めた感情を集計し、上記部分が表す感情を表現する感情表現値を求める集計手段と、文字パターン辞書に登録された感情と、文字に関する所定の属性値との対応関係が登録された変換テーブルと、変換テーブルを参照して、集計手段で求めた感情表現値に基づき、上記部分に関する属性値を求める属性値計算手段とを含む、文字列処理部と、文字列処理部で求めた属性値に従い、受信手段で受信した電子メールを表示する表示手段とを備える。
このような第10の発明によれば、顔文字を含んだ電子メールの所定の部分が表す感情に基づき、その部分に関する属性値(例えば、文字色)を求めることができる。したがって、求めた属性値に従って電子メールを表示することにより、メール受信者は、顔文字を含んだ電子メールが表す感情を容易に理解することができる。
【0018】
第11の発明は、入力された文字列に所定の文字パターンが含まれる場合に、所定の処理を実行する文字列処理方法であって、予め定められた複数の文字パターンについて、文字パターンに含まれる個々の文字と、当該文字が表す感情との対応関係が登録された文字パターン辞書を用いて、入力された文字列に含まれる各文字ごとに文字パターン辞書を検索し、各文字が表す感情を求める検索ステップと、文字列に含まれるすべての文字について検索ステップで求めた感情を集計し、文字列が表す感情を表現する感情表現値を求める集計ステップとを備える。
【0019】
第12の発明は、コンピュータに、入力された文字列に所定の文字パターンが含まれる場合に、所定の処理を実行する文字列処理方法を実行させるためのプログラムであって、予め定められた複数の文字パターンについて、文字パターンに含まれる個々の文字と、当該文字が表す感情との対応関係が登録された文字パターン辞書を用いて、入力された文字列に含まれる各文字ごとに文字パターン辞書を検索し、各文字が表す感情を求める検索ステップと、文字列に含まれるすべての文字について検索ステップで求めた感情を集計し、文字列が表す感情を表現する感情表現値を求める集計ステップとを備える。
【0020】
第13の発明は、コンピュータに、入力された文字列に所定の文字パターンが含まれる場合に、所定の処理を実行する文字列処理方法を実行させるためのプログラムを記録した記録媒体であって、プログラムは、予め定められた複数の文字パターンについて、文字パターンに含まれる個々の文字と、当該文字が表す感情との対応関係が登録された文字パターン辞書を用いて、入力された文字列に含まれる各文字ごとに文字パターン辞書を検索し、各文字が表す感情を求める検索ステップと、文字列に含まれるすべての文字について検索ステップで求めた感情を集計し、文字列が表す感情を表現する感情表現値を求める集計ステップとを備える。
このような第11ないし第13の発明によれば、文字パターンと感情とを対応づける辞書に代えて、文字パターンに含まれる個々の文字と感情とを対応づける辞書を用いて、文字列が表す感情が求められる。このため、辞書を検索する前に、文字列から文字パターンを抽出する処理を行う必要がなくなる。また、文字パターンの種類に比べて、文字パターンに含まれる文字の種類が少ない場合には、辞書のサイズが小さくなる。したがって、処理能力のあまり高くない情報通信機器においても、所定の文字パターンを含んだ文字列が表す感情を求めることができる。
【0021】
【発明の実施の形態】
(第1の実施形態)
図1は、本発明の第1の実施形態に係る文字列処理装置の構成を示すブロック図である。図1に示す文字列処理装置10は、顔文字辞書11と、感情検索部12と、感情集計部13とを備えている。文字列処理装置10は、入力文字列101に顔文字が含まれている場合に、顔文字が表す感情(例えば、「喜び」や「あせり」など)を求め、入力文字列101の所定の部分が表す感情を定量的に表現する値103(以下、感情表現値という)を出力する。
【0022】
顔文字(あるいは、絵文字とも呼ばれる)とは、複数の文字を一定の順序で並べた文字パターンであって、その文字の並びが外見上、人の顔などのように見えるものをいう。例えば、「(^−^)」や「(;o;)」や「q(^O^)p」などの文字パターン(ただし、文字パターンは「」内に記載された部分である)は、いずれも、顔文字の一例である。顔文字は、主として、「目」や「頬」や「口」など、人の顔を構成する部位に対応した文字によって構成される。また、顔文字には、「手」や「汗」などのように、人の顔を構成しない部位に対応した文字が含まれる場合がある。例えば、顔文字「q(^O^)p」に含まれる文字「q」および「p」は、「手」に対応している。以下では、「目」や「頬」や「口」のように人の顔を構成する部位と、「手」や「汗」のように人の顔を構成しない部位とを総称して、顔部品という。
【0023】
文章作成者は、自らの感情を表すために、このような顔文字を適宜、文章中で使用する。各顔文字がどのような種類の感情を表すかは、文字の並びの外観や習慣や流行などによって定められる。例えば、一般的に、顔文字「(^−^)」は「喜び」という感情を表し、顔文字「(;o;)」は「悲しみ」という感情を表すと理解されている。また、顔文字が、感情の種類とともに、感情の強度を表す場合がある。例えば、顔文字「(^o^)」は「中程度の喜び」という感情を表し、顔文字「(^O^)」は「強い喜び」という感情を表す。
【0024】
以下、文字列処理装置10の各構成要素の詳細を説明する。顔文字辞書11は、図1に示すように、顔部品テーブル群14と、検索順序テーブル15とを含んでいる。顔部品テーブル群14には、顔文字を構成する複数の顔部品に対応した複数の顔部品テーブル(すなわち、左手テーブル14a、左顔輪郭テーブル14b、左汗テーブル14c、左頬テーブル14d、左目テーブル14e、口テーブル14f、右目テーブル14g、右頬テーブル14h、右汗テーブル14i、右顔輪郭テーブル14j、および右手テーブル14k)が含まれている。これらの顔部品テーブル14a〜kは、後述するように、感情検索部12によって検索される。
【0025】
図2は、顔部品テーブルの内容を示す図である。図2では、顔部品テーブル14a〜kのうち、顔部品テーブル14a〜fの内容が示されている。顔部品テーブル14g〜kの内容は、図面を簡略化するために省略されているが、顔部品テーブル14a〜fの内容とほぼ同様であると考えて良い。
【0026】
各顔部品テーブルの内容は、例えば、次のようにして決定される。まず、一般に知られている多数の顔文字の中から、文字列処理装置10が処理対象とする顔文字が選択される。その上で、各顔部品テーブル14a〜k(口テーブル14fを除く)には、処理対象とされる顔文字のいずれかにおいて当該顔部品に含まれる文字と、当該文字が当該顔部品に含まれる場合に表す感情の種類との対応関係が登録される。また、口テーブル14fには、処理対象とされる顔文字のいずれかにおいて顔部品「口」を構成する文字と、当該文字が顔部品「口」に含まれる場合に表す感情の強度との対応関係が登録される。ただし、ある文字がある顔部品に含まれる場合に表す感情の種類は、ただ1とおりに決定される。このため、ある文字が複数の顔文字で同じ顔部品として使用され、かつ、各顔文字に割り当てられた感情の種類が一致しない場合には、当該文字と感情「なし」とが、対応づけを保って当該顔部品に係る顔部品テーブルに登録される。感情の強度についても、これと同様である。
【0027】
一例として、「中程度の喜び」という感情を表す顔文字「(^o^)」について考える。この顔文字は、左から順に、左顔輪郭、左目、口、右目、右顔輪郭の5つの顔部品に分解される。文字列処理装置10が処理対象とする他の顔文字についても検討した結果、文字「^」を顔部品「左目」または「右目」として含む顔文字が表す感情の種類が、常に「喜び」であったとする。この場合、左目テーブル14eおよび右目テーブル14gには、文字「^」と感情「喜び」とが、対応づけを保って登録される。同様に、文字「o」を顔部品「口」として含む顔文字が表す感情の強度が、常に「中程度」であったとする。この場合、口テーブル14fには、文字「o」と強度「中」とが、対応づけを保って登録される。これに対して、文字「(」を顔部品「左頬」として含む顔文字が多数あり、各顔文字が表す感情の種類が一致しないものとする。このため、左顔輪郭テーブル14bには、文字「(」と感情「なし」とが、対応づけを保って登録される。同様に、右顔輪郭テーブル14jには、文字「)」と感情「なし」とが、対応づけを保って登録される。
【0028】
図3は、検索順序テーブル15の内容を示す図である。感情検索部12は、後述するように、検索順序テーブル15によって定められた順序で、顔部品テーブル14a〜kを検索する。検索順序テーブル15には、図3に示すように、現テーブルと次テーブルとの対応関係が登録される。現テーブルの欄には、顔部品テーブル14a〜kが、任意の順序で登録される。次テーブルの欄には、現テーブルの欄に登録されている顔部品テーブルの次に検索されるべき顔部品テーブルが登録される。文字列処理装置10では、顔部品テーブル14a〜kは、顔文字における顔部品の並び順(すなわち、左手を先頭に、左顔輪郭、左汗、左頬、左目、口、右目、右頬、右汗、右顔輪郭、および右手の順序)で検索される。そこで、次テーブルの欄には、この順序で次に検索されるべき顔部品テーブルが登録される。また、現テーブルの欄に、検索順序の最後尾にある右手テーブル14kが登録されている場合には、次テーブルの欄には、検索順序の先頭にある左手テーブル14aが登録される。なお、検索順序テーブル15は、感情検索部12に対して、顔文字における顔部品の並び順を正しく提供できる機能を有する限り、その構成は任意でよい。
【0029】
感情検索部12は、入力文字列101に含まれる各文字ごとに、顔部品テーブル14a〜kを検索し、各文字が表す感情の種類または強度を検索結果102として出力する。感情検索部12は、現在検索中の顔部品テーブルを指すために、検索対象ポインタ16を有している。検索対象ポインタ16は、検索順序テーブル15によって定められた順序で更新される。
【0030】
図4は、顔部品テーブル14a〜kの検索順序を示す模式図である。図4に示す黒塗り矢印は、顔部品テーブル14a〜kの検索順序を表す。また、検索対象ポインタ16から左汗テーブル14cへ引かれた白抜き矢印は、左汗テーブル14cが現在探索されていることを表す。
【0031】
図5は、感情検索部12における処理(感情検索処理)を示すフローチャートである。図5に示す処理は、入力文字列101の所定の部分ごとに実行される。例えば、感情検索部12は、入力文字列101の1文ごとに、図5に示す処理を実行してもよく、入力文字列101の所定数の文ごとに、段落ごとに、あるいは文字列全体について、図5に示す処理を実行してもよい。
【0032】
図5に示すように、感情検索部12は、まず、検索対象ポインタ16を初期化する(ステップS101)。本実施形態では、顔文字の先頭に現れる顔部品は、「左手」である。そこで、感情検索部12は、検索対象ポインタ16に左手テーブル14aを設定する。その後、感情検索部12は、入力文字列101に含まれる各文字について、ステップS102〜S109の処理を行う。
【0033】
感情検索部12は、入力文字列101から次の1文字(この文字をCとする)を取り出し(ステップS102)、検索済みテーブル数を0に初期化する(ステップS103)。次に、感情検索部12は、検索対象ポインタ16が指す顔部品テーブルに文字Cが含まれているか否かを判断する(ステップS104)。
【0034】
ステップS104における判断が否定である場合、感情検索部12は、検索順序テーブル15に従い、検索対象ポインタ16を更新する(ステップS105)。より詳細には、感情検索部12は、検索順序テーブル15から、検索対象ポインタ16が指す顔部品テーブルが現テーブルの欄に登録されている行を選択し、その行の次テーブルの欄に登録されている顔部品テーブルを検索対象ポインタ16に設定する。これにより、検索対象ポインタ16は、図4で言えば、黒塗り矢印1つ分だけ移動する。
【0035】
次に、感情検索部12は、検索済みテーブル数に1を加算し(ステップS106)、検索済みテーブル数と顔部品テーブルの個数(本実施形態では11個)とを比較する(ステップS107)。両者が一致しない場合には、文字Cに関して、まだ検索されていない顔部品テーブルが存在する。したがって、この場合、感情検索部12は、ステップS104へ進み、引き続き次の顔部品テーブルに対する探索を実行する。ステップS107において両者が一致する場合には、文字Cに関して、すべての顔部品テーブルが検索されたことになる。したがって、この場合、感情検索部12は、文字Cの検索を終了し、ステップS109へ進む。なお、この場合、文字Cに対する検索結果102は出力されない。
【0036】
一方、ステップS104における判断が肯定である場合、感情検索部12は、検索対象ポインタ16が指す顔部品テーブルから、文字Cに対応した感情の種類(顔部品テーブルが口テーブル14f以外である場合)、または感情の強度(顔部品テーブルが口テーブル14fである場合)を読み出し、文字Cに対する検索結果102として感情集計部13に出力する(ステップS108)。感情検索部12は、文字Cの検索を終了し、ステップS109へ進む。
【0037】
文字Cの検索が終了した後、感情検索部12は、入力文字列101の所定の部分に含まれるすべての文字を処理したか否かを判断する(ステップS109)。すべての文字を処理済みである場合には、感情検索部12は、感情検索処理を終了する。それ以外の場合、感情検索部12は、ステップS102へ進み、引き続き次の文字に関する検索を実行する。
【0038】
図6は、感情検索処理の実行例を示す図である。この例では、入力文字列101の先頭にある「暑いですね^o^;」の部分について、感情検索処理が実行されている。図6には、入力文字列101の上記部分に含まれる各文字に対する検索結果102が示されている。ただし、検索結果102が得られなかった文字については、検索結果102の欄に斜線が引かれている。この例では、文字「^(先に現れるほう)」、文字「o」、文字「^(後に現れるほう)」、および文字「;」に対する検索結果102は、それぞれ、左目テーブル14e、口テーブル14f、右目テーブル14g、および右汗テーブル14iから得られたものである。
【0039】
感情集計部13は、入力文字列101の所定の部分に含まれるすべての文字について、感情検索部12から出力された検索結果102を集計し、感情表現値103を求める。感情表現値103は、典型的には、入力文字列101の当該部分が表す感情の種類や強度を集計した結果を含んでいる。ここで、感情の種類や強度を集計した結果とは、例えば、感情の各種類や各強度の出現個数や構成比率などをいう。なお、感情表現値103は入力文字列101の所定の部分が表す感情を定量的に表現できる限り、その形式は任意でよい。
【0040】
本実施形態では、例として、図7に示すように、感情の各種類の構成比率と、感情の各強度の出現個数とを含んだ感情表現値103を使用する。図7に示す感情表現値103は、入力文字列101の所定の部分には、感情の種類として67%の「喜び」と33%「あせり」とが含まれ、感情の強度として「中」という強度が1個含まれていたことを表している。なお、感情表現値103に含まれる感情の種類および強度は、顔部品テーブル14a〜kのいずれかに登録されていたものである。
【0041】
図8は、感情集計部13における処理(感情集計処理)を示すフローチャートである。図8に示す処理は、感情検索処理(図5)と同様に、入力文字列101の所定の部分に対して実行される。したがって、感情集計部13は、入力文字列101の所定の部分ごとに、感情表現値103を求める。また、感情集計部13は、感情集計処理を実行するために、感情の各種類および各強度の出現個数を記録する出現個数テーブル17(図9を参照)を使用する。
【0042】
図8に示すように、感情集計部13は、まず、出現個数テーブル17を初期化する(ステップS201)。より詳細には、感情集計部13は、出現個数テーブル17のすべての要素を0に初期化する。その後、感情集計部13は、感情検索部12における処理が終了するまで、ステップS202およびS203の処理を繰り返し実行する。
【0043】
感情集計部13は、感情検索部12から出力された検索結果102(この感情をMとする)を受け取る(ステップS202)。感情Mは、感情の種類または強度のいずれかである。次に、感情集計部13は、出現個数テーブル17に記録された感情Mの出現個数に1を加算する(ステップS203)。次に、感情集計部13は、感情検索部12が処理を終了したか否かを判断する(ステップS204)。感情検索部12が処理を終了していない場合、感情集計部13は、ステップS202へ進み、引き続き次の検索結果102に対する処理を実行する。
【0044】
感情検索部12が処理を終了している場合、感情集計部13は、ステップS205へ進む。この場合、感情集計部13は、感情の各種類の構成比率を求める。すなわち、感情集計部13は、感情の各種類の出現個数の合計(この値をNとする)を求め(ステップS205)、出現個数テーブル17に記録された感情の各種類の出現個数を上記Nで除算することにより、感情の各種類の構成比率を求める(ステップS206)。次に、感情集計部13は、ステップS206で求めた感情の各種類の構成比率と、出現個数テーブル17に記録された感情の各強度の出現個数とを、感情表現値103として出力する(ステップS207)。
【0045】
以下、本実施形態に係る文字列処理装置10の効果を説明する。まず、文字列処理装置10では、各顔文字の全体と感情とを対応づける辞書に代えて、各顔文字に含まれる個々の文字と感情とを対応づける辞書(顔部品テーブル群14)を用いて、文字列が表す感情が求められる。このため、辞書を検索する前に、文字列から顔文字を抽出する処理(例えば、形態素解析)を行う必要がなくなる。したがって、少ない処理量で、顔文字を含んだ文字列が表す感情を求めることができる。
【0046】
また、一般に、顔文字では画数の多い漢字などはあまり使用されず、多くの顔文字は、単純な外観を有する文字(例えば、記号や英数字)によって構成される。このため、顔文字の種類に比べて、顔文字に含まれる文字の種類は少ないと言える。文字列処理装置10は、各顔文字の全体と感情とを対応づける辞書に代えて、各顔文字に含まれる個々の文字と感情とを対応づける辞書を使用することにより、辞書のサイズを小さくすることができる。以上のことから、文字列処理装置10によれば、携帯電話など処理能力のあまり高くない情報通信機器においても、顔文字を含んだ文字列が表す感情を求めることができる。
【0047】
また、文字列処理装置10は、顔文字を構成する複数の顔部品に対応した複数の顔部品テーブル14a〜kを含み、各顔部品に対応した顔部品テーブルには、顔文字において当該顔部品に含まれる個々の文字と、当該文字が当該顔部品に含まれる場合に表す感情との対応関係が登録されている。これにより、いずれの顔部品に含まれるかによって、文字が表す感情として、異なる結果を求めることができる。したがって、1つの文字が異なる顔文字では別の感情を表す場合でも、適切な処理を行うことができる。以上のことから、文字列処理装置10によれば、顔文字を含んだ文字列が表す感情として、より適切な結果を求めることができる。
【0048】
また、感情検索部12は、前回最後に検索した顔部品テーブルから、顔部品の並び順に従って、顔部品テーブルを検索する。このような方法で検索を行う理由は、顔文字における顔部品の並び順は、どの顔文字でもほぼ一定であるからである。例えば、顔文字では、「口」に含まれる文字の後には、「右目」や「右頬」などに含まれる文字が現れる場合が多い。このため、「口」に含まれる文字の次の文字を検索するときには、口テーブル14fを先頭に、右目テーブル14f、右頬テーブル14h、…の順序で探索すれば、検索を高速に、かつ、正確に実行することができる。他の顔部品についても同様に、前回の検索位置から検索を開始することにより、検索を高速に、かつ正確に実行することができる。以上のことから、文字列処理装置10によれば、高速に、かつ誤認識を起こすことなく、顔文字を含んだ文字列が表す感情を求めることができる。
【0049】
以上のように、本実施形態に係る文字列処理装置によれば、小さなサイズの辞書を用いて、誤認識を起こすことなく、顔文字を含む文字列が表す感情を求めることができる。
【0050】
なお、本実施形態では、顔部品テーブル群14には11個の顔部品テーブル14a〜kが含まれているとしたが、顔部品テーブル群14にいかなる顔部品テーブルが含まれるか(すなわち、顔部品テーブルの種類および個数)は、文字列処理装置が処理対象とする顔文字に応じて、任意に決定してよい。また、各顔部品テーブル14a〜kの内容も、任意に決定してよい。また、感情表現値103には、感情の各種類および各強度の構成比率や出現個数に限らず、感情に関する他の集計結果が含まれていてもよい。このような集計結果の例としては、例えば、感情の各種類および各強度の出現個数の順位、感情検索処理および感情集計処理の対象とされた入力文字列101の長さ、感情の各種類や各強度の上記長さに対する割合などが考えられる。
【0051】
また、感情検索部12は、顔文字辞書11に含まれる検索順序テーブル15に従って検索を実行することとしたが、検索実行順序の制御方法は、これに限られない。例えば、感情検索部12は、検索順序テーブル15を内蔵し、これに従って検索を実行してもよい。さらに、感情検索部12は、新たな検索を行うときには、前回探索した顔部品テーブルから検索を実行することとしたが、前回検索した顔部品テーブルの次の顔部品テーブルから検索を実行してもよい。この方法は、1つの顔部品には1つの顔文字しか含まれていない場合に、特に有効である。
【0052】
(第2の実施形態)
図10は、本発明の第2の実施形態に係る文字列処理装置の構成を示すブロック図である。図10に示す文字列処理装置20は、顔文字辞書11と、感情検索部12と、感情集計部13と、変換テーブル21と、色計算部22とを備えている。すなわち、文字列処理装置20は、第1の実施形態に係る文字列処理装置10に、変換テーブル21と、色計算部22とを追加したものである。文字列処理装置20は、入力文字列101に基づき感情表現値103を求めた上で、感情表現値103に基づき、入力文字列101の文字色201を求める。本実施形態の構成要素のうち、第1の実施形態と同一の構成要素については、同一の参照符号を付して、説明を省略する。
【0053】
図11は、変換テーブル21の内容を示す図である。変換テーブル21は、図11に示すように、色変換テーブル23と明るさ変換テーブル24とを含んでいる。色変換テーブル23には、感情の種類と色データとの対応関係が登録される。より詳細には、色変換テーブル23には、感情の種類ごとに、その種類の感情を表すために適した色(例えば、感情「怒り」には「赤」)の色データが、例えば、RGB各8ビットの形式で登録される。明るさ変換テーブル24には、感情の強度と明るさデータとの対応関係が登録される。明るさ変換テーブル24には、感情の強度が大きいほど、大きな値の明るさデータが登録される。
【0054】
色計算部22は、色変換テーブル21を参照して、感情表現値103に基づき文字色201を計算する。図12は、色計算部22における処理(色計算処理)を示すフローチャートである。図12に示す処理は、感情集計部13から新たな感情表現値103が出力されるたびに実行される。
【0055】
図12に示すように、色計算部22は、まず、感情集計部13から出力された感情表現値103を受け取る(ステップS301)。次に、色計算部22は、色データを累積加算するために使用する変数Yを0に初期化する(ステップS302)。その後、色計算部22は、色変換テーブルに含まれるすべての感情の種類について、ステップS303〜S306の処理を実行する。
【0056】
色計算部22は、色変換テーブル23から次の行を読み出し、その行に登録されている感情の種類(その種類をMとする)と色データ(その値をXとする)とを取り出す(ステップS303)。次に、色計算部22は、感情表現値103に含まれている種類Mの構成比率(その値をAとする)を取り出す(ステップS304)。次に、色計算部22は、Yに、XとAの積を加算する(ステップS305)。次に、色計算部22は、色変換テーブル23に含まれるすべての感情の種類を処理したか否かを判断する(ステップS306)。未処理の感情の種類がある場合には、色計算部22は、ステップS303へ進み、引き続き次の感情の種類に対する処理を実行する。
【0057】
すべての感情の種類を処理済みである場合には、色計算部22は、ステップS307へ進む。この場合、色計算部22は、感情表現値103に含まれている感情の強度の最頻値(この強度をM’とする)を求める(ステップS307)。次に、色計算部22は、明るさ変換テーブル24から強度M’に対応した明るさデータ(この値をBとする)を取り出す(ステップS308)。次に、色計算部22は、YとBの積を、文字色201として出力する(ステップS309)。
【0058】
例えば、図11に示す色変換テーブル21を参照して、図7に示す感情表現値103に基づき、文字色201を求める場合を考える。図7に示す感情表現値103には、感情の種類として、67%の「喜び」と33%の「あせり」とが含まれている。また、この感情表現値103における、感情の強度の最頻値は「中」である。また、図11に示す色変換テーブル23では、感情「喜び」に対応した色データは(R、G、B)=(255、127、0)であり、感情「あせり」に対応した色データは(R、G、B)=(0、127、255)である。さらに、図11に示す明るさ変換テーブル24では、感情の強度「中」に対応した明るさデータは、0.85である。したがって、
R=(255×0.67+ 0×0.33)×0.85=146
G=(127×0.67+127×0.33)×0.85=108
B=( 0×0.67+255×0.33)×0.85= 72
より、文字色201は、(R、G、B)=(145、108、72)となる。
【0059】
以上に示すように、本実施形態に係る文字列処理装置20は、顔文字を含んだ文字列が表す感情を表す感情表現値103求めた上で、感情の種類の集計結果(感情の各種類の構成比率)、および感情の強度の集計結果(感情の各種類の出現個数)に基づき、文字列の色データと明るさデータを求める。したがって、求めた色および明るさで文字列を表示あるいは印字などしたときに、顔文字を含んだ文字列が表す感情を容易に理解することができる。
【0060】
なお、文字列処理装置20では、図11に示す色変換テーブルを使用することとしたが、色変換テーブル21の構成および内容は任意でよい。例えば、本実施形態では、色変換テーブル23には、RGB各8ビットの形式を有する色データが登録されていることとしたが、色データの形式は任意でよい。例えば、色データとして、YUV各8ビットの形式を有する色データを使用してもよい。
【0061】
また、文字列処理装置20は、感情表現値103に基づき文字色201を求めることとしたが、これに代えて、あるいは、これとともに、文字に関する他の属性値を求めてもよい。このような文字に関する他の属性としては、文字サイズ、文字フォント、文字飾り(太線化、斜体、下線など)、背景色などがある。変換テーブル21に、感情と、これら属性の各属性値とを対応づけて登録することにより、顔文字を含んだ文字列が表す感情に基づき、これらの属性を変化させて文字列を表示あるいは印字することができる。
【0062】
(第3の実施形態)
図13は、本発明の第3の実施形態に係るメールシステムの構成を示すブロック図である。図13に示すメールシステムは、メール送信装置30と、メール受信装置40とを備えている。これら2つの装置は、通信ネットワーク50によって通信可能に接続されている。メール送信装置30は、文字列入力部31と、送信部32とを備え、メール受信装置40は、受信部41と、文切り出し部42と、文字列処理部43と、文字色制御部44と、表示部45とを備えている。本実施形態に係るメールシステムは、メール受信装置40が文字列処理部43を備えていることを特徴とする。
【0063】
文字列入力部31は、キーボードやテンキーなど、メール送信者が電子メールを入力するための手段である。送信部32は、通信ネットワーク50経由で、文字列入力部31から入力された電子メールを送信する。受信部41は、送信部32から送信された電子メールを、通信ネットワーク50経由で受信する。文切り出し部42は、受信した電子メールを1文ごとに切り出し、切り出した文401を文字列処理部43と文字色制御部44とに出力する。
【0064】
文字列処理部43は、第2の実施形態に係る文字列処理装置20によって構成される。文字列処理部43は、切り出された文401に基づき感情表現値103を求めた上で、切り出された文401の文字色201を求める。文字列処理部43の詳細は、第1および第2の実施形態で説明したとおりであるので、ここでは説明を省略する。
【0065】
文字色制御部44は、切り出された文401に含まれる各文字の色を、文字列処理部43から出力された文字色201に変更し、色変更された文402を出力する。表示部45は、文字色制御部44から出力された色変更された文402を、メール受信装置40の画面に表示する。
【0066】
図14は、メール受信装置40における処理(メール受信処理)を示すフローチャートである。図14に示す処理は、メール受信装置40が1通の電子メールを受信するたびに実行される。
【0067】
図14に示すように、受信部41は、電子メールを受信すると(ステップS401)、受信したメールを文切り出し部42に出力する。次に、文切り出し部42が、受信した電子メールから1文を切り出す(ステップS402)。次に、文字列処理部43が、切り出された文401に対して、感情検索処理(ステップS403、図5)と、感情集計処理(ステップS404、図8)と、色計算処理(ステップS405、図12)とを実行し、切り出された文401の文字色201を求める。次に、文字色制御部44が、切り出された文401に含まれる各文字の色を、文字列処理部43で求めた文字色201に変更する(ステップS406)。次に、表示部45が、色変更された文402を、メール受信装置40の画面に表示する(ステップS407)。
【0068】
次に、メール受信装置40では、受信した電子メールに含まれるすべての文を処理したか否かが判断される(ステップS408)。未処理の文がある場合には、メール受信装置40の制御は、ステップS402へ進み、次の文に対する処理が引き続き実行される。すべての文を処理済みである場合には、メール受信装置40は、メール受信処理を終了する。
【0069】
図15は、メール受信装置40の表示画面にメールが表示される様子を示す図である。図15に示すメール受信装置40の画面には、メール送信装置30から送信され、通信ネットワーク50経由で受信された電子メールが表示される。文切り出し部42、文字列処理部43、および文字色制御部44の作用により、電子メールに含まれる各文の色は、各文が表す感情(すなわち、各文に含まれる顔文字が表す感情を集計したもの)に応じて変更される。図15に示す例では、顔文字「(^0^)」を含む第1文はオレンジ色で表示され、顔文字「(T_T)」を含む第3文は青色で表示される。また、顔文字を含まない第2文は、黒色で表示される。
【0070】
以上に示すように、本実施形態に係るメールシステムによれば、顔文字を含んだ電子メールの各文が表す感情に基づき、各文の文字色を求めることができる。したがって、求めた文字色で、受信した電子メールを表示することにより、メール受信者は、顔文字を含んだ電子メールが表す感情を容易に理解することができる。
【0071】
なお、本実施形態では、メール受信装置40が文字列処理部43を備えていることとしたが、メール送信装置30が、この文字列処理装置を備えていてもよい。これにより、メール送信者は、電子メールがメール受信装置40において表示される態様(例えば、文字色など)を確認した上で、電子メールを送信することができる。
【0072】
なお、コンピュータに、上記各実施形態に係る文字列処理装置における文字列処理方法を実行させるプログラム(以下、文字列処理プログラムという)と、コンピュータとを用いて、上記各実施形態に係る文字列処理装置を実現することもできる。この場合、文字列処理プログラムは、フレキシブルディスク、光ディスク、ICカードなど、各種の記録媒体に記録されていてもよい。文字列処理プログラムとしては、例えば、コンピュータに感情検索処理(図5)と感情集計処理(図8)とを実行させるプログラムや、コンピュータに上記2つの処理と色計算処理(図12)を実行させるプログラムや、コンピュータにメール受信処理(図14)を実行させるプログラムなどがある。
【0073】
また、上記の各実施形態では、文字列処理装置は、入力文字列に顔文字が含まれる場合に、所定の処理を行うこととしたが、文字列処理装置が処理対象とする文字パターンは、顔文字(あるいは絵文字)に限定されない。すなわち、文字列処理装置は、感情と何らかの対応づけを有する任意の文字パターンについて、上記各実施形態で示した処理と同様の処理を行うことができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係る文字列処理装置の構成を示すブロック図
【図2】本発明の第1の実施形態に係る文字列処理装置の顔部品テーブルの内容を示す図
【図3】本発明の第1の実施形態に係る文字列処理装置の検索順序テーブルの内容を示す図
【図4】本発明の第1の実施形態に係る文字列処理装置において、顔部品テーブルの検索順序を示す概念図
【図5】本発明の第1の実施形態に係る文字列処理装置における感情検索処理を示すフローチャート
【図6】本発明の第1の実施形態に係る文字列処理装置における感情検索処理の実行例を示す図
【図7】本発明の第1の実施形態に係る文字列処理装置で求められる感情表現値の形式を示す図
【図8】本発明の第1の実施形態に係る文字列処理装置の出現個数テーブルの内容を示す図
【図9】本発明の第1の実施形態に係る文字列処理装置における感情集計処理を示すフローチャート
【図10】本発明の第2の実施形態に係る文字列処理装置の構成を示すブロック図
【図11】本発明の第2の実施形態に係る文字列処理装置の変換テーブルの内容を示す図
【図12】本発明の第2の実施形態に係る文字列処理装置における色計算処理を示すフローチャート
【図13】本発明の第3の実施形態に係るメールシステムの構成を示すブロック図
【図14】本発明の第3の実施形態に係るメールシステムにおけるメール受信処理を示すフローチャート
【図15】本発明の第3の実施形態に係るメールシステムのメール受信装置において、電子メールが表示される様子を示す図
【符号の説明】
10、20…文字列処理装置
11…顔文字辞書
12…感情検索部
13…感情集計部
14…顔部品テーブル群
15…検索順序テーブル
16…検索対象ポインタ
17…出現個数テーブル
21…変換テーブル
22…色計算部
23…色変換テーブル
24…明るさ変換テーブル
40…メール受信装置
41…受信部
42…文切り出し部
43…文字列処理部
44…文字色制御部
45…表示部
101…文字列
102…検索結果
103…感情表現値
201…文字色
401…切り出された文
402…色変更された文
【発明の属する技術分野】
本発明は、文字列処理装置に関し、より特定的には、入力された文字列に感情を表すための文字パターンが含まれる場合に、文字列が表す感情を求める処理を実行する文字列処理装置、および文字列処理方法に関する。
【0002】
【従来の技術】
電子メールなどのように私的な目的で作成される文章では、文章作成者の感情を表すために、「(^o^;)」や「(ToT)」などの顔文字と呼ばれる文字パターンが、使用されることがある。
【0003】
顔文字については、従来から、文章を音声合成して出力する場合に、文章に含まれる顔文字が表す感情に応じて、出力する音声の韻律を変化させる音声合成装置が考案されている(特許文献1)。この音声合成装置は、まず、音声出力すべき文章に対して形態素解析を行い、文章に含まれる顔文字を抽出する。次に、この装置は、予め用意した辞書を用いて、切り出した顔文字が表す感情を求め、求めた感情に応じて、出力する音声の韻律を変化させる。この装置では、顔文字と感情とを対応づけるために、各顔文字の全体と感情との対応関係が登録された辞書と、各顔文字を構成する個々の文字(例えば、上記の例では「^」や「o」など)と感情との対応関係が登録された辞書とが使用される。
【0004】
【特許文献1】
特開2001−337688号公報(第3−7頁、図1)
【0005】
【発明が解決しようとする課題】
しかしながら、上記のような辞書を用いて顔文字が表す感情を求める方法には、次のような問題点がある。まず、各顔文字の全体と感情との対応関係が登録された辞書を用いて、顔文字が表す感情を求めるためには、辞書を引く前に、形態素解析などにより顔文字を正しく抽出しておく必要がある。ところが、形態素解析は、多大な処理量を必要とするため、携帯電話など処理能力がそれほど高くない情報通信機器に搭載することは困難である。また、顔文字の種類が増えるに従って、辞書のサイズが大きくなるという問題点もある。
【0006】
また、上記音声合成装置では、各顔文字を構成する個々の文字と感情との対応関係が登録された辞書が使用されているが、1つの文字が異なる顔文字において別の感情を表す場合があるという点が考慮されていない。例えば、文字「;」は、顔文字「(−o−;)」に使用された場合には「あせり」という感情を表すが、顔文字「(;o;)」に使用された場合には「悲しみ」という感情を表す。上記音声合成装置は、このような場合に適切な処理を行えず、例えば、「(−o−;)」に使用された文字「;」と、「(;o;)」に使用された文字「;」とは、同じ感情(例えば「あせり」)を表すものとして処理してしまう。
【0007】
それ故に、本発明は、小さなサイズの辞書を用いて、誤認識を起こすことなく、顔文字などの文字パターンを含む文字列が表す感情を求める文字列処理装置、および文字列処理方法を提供することを目的とする。
【0008】
【課題を解決するための手段および発明の効果】
第1の発明は、入力された文字列に所定の文字パターンが含まれる場合に、所定の処理を実行する文字列処理装置であって、予め定められた複数の文字パターンについて、文字パターンに含まれる個々の文字と、当該文字が表す感情との対応関係が登録された文字パターン辞書と、入力された文字列に含まれる各文字ごとに文字パターン辞書を検索し、各文字が表す感情を求める検索手段と、文字列に含まれるすべての文字について検索手段で求めた感情を集計し、文字列が表す感情を表現する感情表現値を求める集計手段とを備える。
このような第1の発明によれば、各文字パターンの全体と感情とを対応づける辞書に代えて、各文字パターンに含まれる個々の文字と感情とを対応づける辞書を用いて、文字列が表す感情が求められる。このため、辞書を検索する前に、文字列から文字パターンを抽出する処理を行う必要がなくなる。また、文字パターンの種類に比べて、文字パターンに含まれる文字の種類が少ない場合には、辞書のサイズが小さくなる。したがって、処理能力のあまり高くない情報通信機器においても、所定の文字パターンを含んだ文字列が表す感情を求めることができる。
【0009】
第2の発明は、第1の発明において、文字パターンが、顔文字であることを特徴とする。
このような第2の発明によれば、各顔文字の全体と感情とを対応づける辞書に代えて、各顔文字に含まれる個々の文字と感情とを対応づける辞書を用いて、文字列が表す感情が求められる。このため、辞書を検索する前に、文字列から顔文字を抽出する処理を行う必要がなくなる。また、一般に、顔文字の種類に比べて、顔文字に含まれる文字の種類は少ないので、辞書のサイズが小さくなる。したがって、処理能力のあまり高くない情報通信機器においても、顔文字を含んだ文字列が表す感情を求めることができる。
【0010】
第3の発明は、第2の発明において、文字パターン辞書は、顔文字を構成する複数の顔部品に対応した複数の顔部品テーブルを含み、各顔部品に対応した顔部品テーブルには、顔文字において当該顔部品に含まれる個々の文字と、当該文字が当該顔部品に含まれる場合に表す感情との対応関係が登録されていることを特徴とする。
このような第3の発明によれば、いずれの顔部品に含まれるかによって、文字が表す感情として、異なる結果を求めることができる。したがって、1つの文字が異なる顔文字では別の感情を表す場合でも、適切な処理を行うことができる。よって、顔文字を含んだ文字列が表す感情として、より適切な結果を求めることができる。
【0011】
第4の発明は、第3の発明において、検索手段は、顔部品テーブルのうち前回の検索で最後に検索した顔部品テーブルを記憶し、文字列に含まれる文字について新たな検索を行うときには、記憶した顔部品テーブルに基づき、最初に検索すべき顔部品テーブルを決定した上で、顔文字における顔部品の並び順に従って、顔部品テーブルを検索することを特徴とする。
このような第4の発明によれば、顔文字における顔部品の並び順は一定であることを考慮して、検索手段は、前回最後に検索した顔部品テーブル(または、その次の顔部品テーブル)から、顔部品の並び順に従って、顔部品テーブルを検索する。このように前回の検索位置(または、前回の検索位置の次の位置)から検索を開始することにより、検索を高速に、かつ正確に実行することができる。したがって、高速に、かつ誤認識を起こすことなく、顔文字を含んだ文字列が表す感情を求めることができる。
【0012】
第5の発明は、第2の発明において、集計手段は、検索手段で求めた感情を種類ごとに集計した結果を含んだ感情表現値を求めることを特徴とする。
【0013】
第6の発明は、第2の発明において、集計手段は、検索手段で求めた感情を強度ごとに集計した結果を含んだ感情表現値を求めることを特徴とする。
このような第5または第6の発明によれば、顔文字を含んだ文字列が表す感情を、感情の種類の集計結果(または、感情の強度の集計結果)という形式で、定量的に表現することができる。
【0014】
第7の発明は、第2の発明において、文字パターン辞書に登録された感情と、文字に関する所定の属性値との対応関係が登録された変換テーブルと、変換テーブルを参照して、集計手段で求めた感情表現値に基づき、文字列に関する属性値を求める属性値計算手段とをさらに備える。
このような第7の発明によれば、顔文字を含んだ文字列が表す感情に基づき、文字列の属性値を求めることができる。したがって、求めた属性値を文字列に設定することにより、文字列が表す感情に応じて文字列の属性を変化させることができる。
【0015】
第8の発明は、第7の発明において、変換テーブルに登録された属性値が、文字色であることを特徴とする。
このような第8の発明によれば、顔文字を含んだ文字列が表す感情に基づき、文字列の色を求めることができる。したがって、求めた色で文字列を表示あるいは印字などしたときに、顔文字を含んだ文字列が表す感情を容易に理解することができる。
【0016】
第9の発明は、第8の発明において、変換テーブルは、文字パターン辞書に登録された感情の種類と色データとの対応関係が登録された色変換テーブルと、文字パターン辞書に登録された感情の強度と明るさデータとの対応関係が登録された明るさ変換テーブルとを含み、集計手段は、検索手段で求めた感情を種類ごとに集計した第1の集計結果と、検索手段で求めた感情を強度ごとに集計した第2の集計結果とを含んだ感情表現値を求め、属性値計算手段は、色変換テーブルに登録された色データを第1の集計結果に応じて混合した結果と、明るさ変換テーブルに登録された明るさデータのうち、第2の集計結果で最頻となる強度に対応したデータとを乗算し、当該乗算結果を文字列に関する属性値とすることを特徴とする。
このような第9の発明によれば、顔文字を含んだ文字列が表す感情を求めた上で、感情の種類の集計結果に基づき、文字列の色が求められ、感情の強度の集計結果に基づき、文字列の明るさが求められる。したがって、求めた色および明るさで文字列を表示あるいは印字などしたときに、顔文字を含んだ文字列が表す感情を容易に理解することができる。
【0017】
第10の発明は、電子メールを受信するメール受信装置であって、電子メールを受信する受信手段と、電子メールに所定の文字パターンが含まれる場合に、所定の処理を実行するために、予め定められた複数の文字パターンについて、文字パターンに含まれる個々の文字と、当該文字が表す感情との対応関係が登録された文字パターン辞書と、電子メールに含まれる各文字ごとに文字パターン辞書を検索し、各文字が表す感情を求める検索手段と、電子メールの所定の部分に含まれるすべての文字について検索手段で求めた感情を集計し、上記部分が表す感情を表現する感情表現値を求める集計手段と、文字パターン辞書に登録された感情と、文字に関する所定の属性値との対応関係が登録された変換テーブルと、変換テーブルを参照して、集計手段で求めた感情表現値に基づき、上記部分に関する属性値を求める属性値計算手段とを含む、文字列処理部と、文字列処理部で求めた属性値に従い、受信手段で受信した電子メールを表示する表示手段とを備える。
このような第10の発明によれば、顔文字を含んだ電子メールの所定の部分が表す感情に基づき、その部分に関する属性値(例えば、文字色)を求めることができる。したがって、求めた属性値に従って電子メールを表示することにより、メール受信者は、顔文字を含んだ電子メールが表す感情を容易に理解することができる。
【0018】
第11の発明は、入力された文字列に所定の文字パターンが含まれる場合に、所定の処理を実行する文字列処理方法であって、予め定められた複数の文字パターンについて、文字パターンに含まれる個々の文字と、当該文字が表す感情との対応関係が登録された文字パターン辞書を用いて、入力された文字列に含まれる各文字ごとに文字パターン辞書を検索し、各文字が表す感情を求める検索ステップと、文字列に含まれるすべての文字について検索ステップで求めた感情を集計し、文字列が表す感情を表現する感情表現値を求める集計ステップとを備える。
【0019】
第12の発明は、コンピュータに、入力された文字列に所定の文字パターンが含まれる場合に、所定の処理を実行する文字列処理方法を実行させるためのプログラムであって、予め定められた複数の文字パターンについて、文字パターンに含まれる個々の文字と、当該文字が表す感情との対応関係が登録された文字パターン辞書を用いて、入力された文字列に含まれる各文字ごとに文字パターン辞書を検索し、各文字が表す感情を求める検索ステップと、文字列に含まれるすべての文字について検索ステップで求めた感情を集計し、文字列が表す感情を表現する感情表現値を求める集計ステップとを備える。
【0020】
第13の発明は、コンピュータに、入力された文字列に所定の文字パターンが含まれる場合に、所定の処理を実行する文字列処理方法を実行させるためのプログラムを記録した記録媒体であって、プログラムは、予め定められた複数の文字パターンについて、文字パターンに含まれる個々の文字と、当該文字が表す感情との対応関係が登録された文字パターン辞書を用いて、入力された文字列に含まれる各文字ごとに文字パターン辞書を検索し、各文字が表す感情を求める検索ステップと、文字列に含まれるすべての文字について検索ステップで求めた感情を集計し、文字列が表す感情を表現する感情表現値を求める集計ステップとを備える。
このような第11ないし第13の発明によれば、文字パターンと感情とを対応づける辞書に代えて、文字パターンに含まれる個々の文字と感情とを対応づける辞書を用いて、文字列が表す感情が求められる。このため、辞書を検索する前に、文字列から文字パターンを抽出する処理を行う必要がなくなる。また、文字パターンの種類に比べて、文字パターンに含まれる文字の種類が少ない場合には、辞書のサイズが小さくなる。したがって、処理能力のあまり高くない情報通信機器においても、所定の文字パターンを含んだ文字列が表す感情を求めることができる。
【0021】
【発明の実施の形態】
(第1の実施形態)
図1は、本発明の第1の実施形態に係る文字列処理装置の構成を示すブロック図である。図1に示す文字列処理装置10は、顔文字辞書11と、感情検索部12と、感情集計部13とを備えている。文字列処理装置10は、入力文字列101に顔文字が含まれている場合に、顔文字が表す感情(例えば、「喜び」や「あせり」など)を求め、入力文字列101の所定の部分が表す感情を定量的に表現する値103(以下、感情表現値という)を出力する。
【0022】
顔文字(あるいは、絵文字とも呼ばれる)とは、複数の文字を一定の順序で並べた文字パターンであって、その文字の並びが外見上、人の顔などのように見えるものをいう。例えば、「(^−^)」や「(;o;)」や「q(^O^)p」などの文字パターン(ただし、文字パターンは「」内に記載された部分である)は、いずれも、顔文字の一例である。顔文字は、主として、「目」や「頬」や「口」など、人の顔を構成する部位に対応した文字によって構成される。また、顔文字には、「手」や「汗」などのように、人の顔を構成しない部位に対応した文字が含まれる場合がある。例えば、顔文字「q(^O^)p」に含まれる文字「q」および「p」は、「手」に対応している。以下では、「目」や「頬」や「口」のように人の顔を構成する部位と、「手」や「汗」のように人の顔を構成しない部位とを総称して、顔部品という。
【0023】
文章作成者は、自らの感情を表すために、このような顔文字を適宜、文章中で使用する。各顔文字がどのような種類の感情を表すかは、文字の並びの外観や習慣や流行などによって定められる。例えば、一般的に、顔文字「(^−^)」は「喜び」という感情を表し、顔文字「(;o;)」は「悲しみ」という感情を表すと理解されている。また、顔文字が、感情の種類とともに、感情の強度を表す場合がある。例えば、顔文字「(^o^)」は「中程度の喜び」という感情を表し、顔文字「(^O^)」は「強い喜び」という感情を表す。
【0024】
以下、文字列処理装置10の各構成要素の詳細を説明する。顔文字辞書11は、図1に示すように、顔部品テーブル群14と、検索順序テーブル15とを含んでいる。顔部品テーブル群14には、顔文字を構成する複数の顔部品に対応した複数の顔部品テーブル(すなわち、左手テーブル14a、左顔輪郭テーブル14b、左汗テーブル14c、左頬テーブル14d、左目テーブル14e、口テーブル14f、右目テーブル14g、右頬テーブル14h、右汗テーブル14i、右顔輪郭テーブル14j、および右手テーブル14k)が含まれている。これらの顔部品テーブル14a〜kは、後述するように、感情検索部12によって検索される。
【0025】
図2は、顔部品テーブルの内容を示す図である。図2では、顔部品テーブル14a〜kのうち、顔部品テーブル14a〜fの内容が示されている。顔部品テーブル14g〜kの内容は、図面を簡略化するために省略されているが、顔部品テーブル14a〜fの内容とほぼ同様であると考えて良い。
【0026】
各顔部品テーブルの内容は、例えば、次のようにして決定される。まず、一般に知られている多数の顔文字の中から、文字列処理装置10が処理対象とする顔文字が選択される。その上で、各顔部品テーブル14a〜k(口テーブル14fを除く)には、処理対象とされる顔文字のいずれかにおいて当該顔部品に含まれる文字と、当該文字が当該顔部品に含まれる場合に表す感情の種類との対応関係が登録される。また、口テーブル14fには、処理対象とされる顔文字のいずれかにおいて顔部品「口」を構成する文字と、当該文字が顔部品「口」に含まれる場合に表す感情の強度との対応関係が登録される。ただし、ある文字がある顔部品に含まれる場合に表す感情の種類は、ただ1とおりに決定される。このため、ある文字が複数の顔文字で同じ顔部品として使用され、かつ、各顔文字に割り当てられた感情の種類が一致しない場合には、当該文字と感情「なし」とが、対応づけを保って当該顔部品に係る顔部品テーブルに登録される。感情の強度についても、これと同様である。
【0027】
一例として、「中程度の喜び」という感情を表す顔文字「(^o^)」について考える。この顔文字は、左から順に、左顔輪郭、左目、口、右目、右顔輪郭の5つの顔部品に分解される。文字列処理装置10が処理対象とする他の顔文字についても検討した結果、文字「^」を顔部品「左目」または「右目」として含む顔文字が表す感情の種類が、常に「喜び」であったとする。この場合、左目テーブル14eおよび右目テーブル14gには、文字「^」と感情「喜び」とが、対応づけを保って登録される。同様に、文字「o」を顔部品「口」として含む顔文字が表す感情の強度が、常に「中程度」であったとする。この場合、口テーブル14fには、文字「o」と強度「中」とが、対応づけを保って登録される。これに対して、文字「(」を顔部品「左頬」として含む顔文字が多数あり、各顔文字が表す感情の種類が一致しないものとする。このため、左顔輪郭テーブル14bには、文字「(」と感情「なし」とが、対応づけを保って登録される。同様に、右顔輪郭テーブル14jには、文字「)」と感情「なし」とが、対応づけを保って登録される。
【0028】
図3は、検索順序テーブル15の内容を示す図である。感情検索部12は、後述するように、検索順序テーブル15によって定められた順序で、顔部品テーブル14a〜kを検索する。検索順序テーブル15には、図3に示すように、現テーブルと次テーブルとの対応関係が登録される。現テーブルの欄には、顔部品テーブル14a〜kが、任意の順序で登録される。次テーブルの欄には、現テーブルの欄に登録されている顔部品テーブルの次に検索されるべき顔部品テーブルが登録される。文字列処理装置10では、顔部品テーブル14a〜kは、顔文字における顔部品の並び順(すなわち、左手を先頭に、左顔輪郭、左汗、左頬、左目、口、右目、右頬、右汗、右顔輪郭、および右手の順序)で検索される。そこで、次テーブルの欄には、この順序で次に検索されるべき顔部品テーブルが登録される。また、現テーブルの欄に、検索順序の最後尾にある右手テーブル14kが登録されている場合には、次テーブルの欄には、検索順序の先頭にある左手テーブル14aが登録される。なお、検索順序テーブル15は、感情検索部12に対して、顔文字における顔部品の並び順を正しく提供できる機能を有する限り、その構成は任意でよい。
【0029】
感情検索部12は、入力文字列101に含まれる各文字ごとに、顔部品テーブル14a〜kを検索し、各文字が表す感情の種類または強度を検索結果102として出力する。感情検索部12は、現在検索中の顔部品テーブルを指すために、検索対象ポインタ16を有している。検索対象ポインタ16は、検索順序テーブル15によって定められた順序で更新される。
【0030】
図4は、顔部品テーブル14a〜kの検索順序を示す模式図である。図4に示す黒塗り矢印は、顔部品テーブル14a〜kの検索順序を表す。また、検索対象ポインタ16から左汗テーブル14cへ引かれた白抜き矢印は、左汗テーブル14cが現在探索されていることを表す。
【0031】
図5は、感情検索部12における処理(感情検索処理)を示すフローチャートである。図5に示す処理は、入力文字列101の所定の部分ごとに実行される。例えば、感情検索部12は、入力文字列101の1文ごとに、図5に示す処理を実行してもよく、入力文字列101の所定数の文ごとに、段落ごとに、あるいは文字列全体について、図5に示す処理を実行してもよい。
【0032】
図5に示すように、感情検索部12は、まず、検索対象ポインタ16を初期化する(ステップS101)。本実施形態では、顔文字の先頭に現れる顔部品は、「左手」である。そこで、感情検索部12は、検索対象ポインタ16に左手テーブル14aを設定する。その後、感情検索部12は、入力文字列101に含まれる各文字について、ステップS102〜S109の処理を行う。
【0033】
感情検索部12は、入力文字列101から次の1文字(この文字をCとする)を取り出し(ステップS102)、検索済みテーブル数を0に初期化する(ステップS103)。次に、感情検索部12は、検索対象ポインタ16が指す顔部品テーブルに文字Cが含まれているか否かを判断する(ステップS104)。
【0034】
ステップS104における判断が否定である場合、感情検索部12は、検索順序テーブル15に従い、検索対象ポインタ16を更新する(ステップS105)。より詳細には、感情検索部12は、検索順序テーブル15から、検索対象ポインタ16が指す顔部品テーブルが現テーブルの欄に登録されている行を選択し、その行の次テーブルの欄に登録されている顔部品テーブルを検索対象ポインタ16に設定する。これにより、検索対象ポインタ16は、図4で言えば、黒塗り矢印1つ分だけ移動する。
【0035】
次に、感情検索部12は、検索済みテーブル数に1を加算し(ステップS106)、検索済みテーブル数と顔部品テーブルの個数(本実施形態では11個)とを比較する(ステップS107)。両者が一致しない場合には、文字Cに関して、まだ検索されていない顔部品テーブルが存在する。したがって、この場合、感情検索部12は、ステップS104へ進み、引き続き次の顔部品テーブルに対する探索を実行する。ステップS107において両者が一致する場合には、文字Cに関して、すべての顔部品テーブルが検索されたことになる。したがって、この場合、感情検索部12は、文字Cの検索を終了し、ステップS109へ進む。なお、この場合、文字Cに対する検索結果102は出力されない。
【0036】
一方、ステップS104における判断が肯定である場合、感情検索部12は、検索対象ポインタ16が指す顔部品テーブルから、文字Cに対応した感情の種類(顔部品テーブルが口テーブル14f以外である場合)、または感情の強度(顔部品テーブルが口テーブル14fである場合)を読み出し、文字Cに対する検索結果102として感情集計部13に出力する(ステップS108)。感情検索部12は、文字Cの検索を終了し、ステップS109へ進む。
【0037】
文字Cの検索が終了した後、感情検索部12は、入力文字列101の所定の部分に含まれるすべての文字を処理したか否かを判断する(ステップS109)。すべての文字を処理済みである場合には、感情検索部12は、感情検索処理を終了する。それ以外の場合、感情検索部12は、ステップS102へ進み、引き続き次の文字に関する検索を実行する。
【0038】
図6は、感情検索処理の実行例を示す図である。この例では、入力文字列101の先頭にある「暑いですね^o^;」の部分について、感情検索処理が実行されている。図6には、入力文字列101の上記部分に含まれる各文字に対する検索結果102が示されている。ただし、検索結果102が得られなかった文字については、検索結果102の欄に斜線が引かれている。この例では、文字「^(先に現れるほう)」、文字「o」、文字「^(後に現れるほう)」、および文字「;」に対する検索結果102は、それぞれ、左目テーブル14e、口テーブル14f、右目テーブル14g、および右汗テーブル14iから得られたものである。
【0039】
感情集計部13は、入力文字列101の所定の部分に含まれるすべての文字について、感情検索部12から出力された検索結果102を集計し、感情表現値103を求める。感情表現値103は、典型的には、入力文字列101の当該部分が表す感情の種類や強度を集計した結果を含んでいる。ここで、感情の種類や強度を集計した結果とは、例えば、感情の各種類や各強度の出現個数や構成比率などをいう。なお、感情表現値103は入力文字列101の所定の部分が表す感情を定量的に表現できる限り、その形式は任意でよい。
【0040】
本実施形態では、例として、図7に示すように、感情の各種類の構成比率と、感情の各強度の出現個数とを含んだ感情表現値103を使用する。図7に示す感情表現値103は、入力文字列101の所定の部分には、感情の種類として67%の「喜び」と33%「あせり」とが含まれ、感情の強度として「中」という強度が1個含まれていたことを表している。なお、感情表現値103に含まれる感情の種類および強度は、顔部品テーブル14a〜kのいずれかに登録されていたものである。
【0041】
図8は、感情集計部13における処理(感情集計処理)を示すフローチャートである。図8に示す処理は、感情検索処理(図5)と同様に、入力文字列101の所定の部分に対して実行される。したがって、感情集計部13は、入力文字列101の所定の部分ごとに、感情表現値103を求める。また、感情集計部13は、感情集計処理を実行するために、感情の各種類および各強度の出現個数を記録する出現個数テーブル17(図9を参照)を使用する。
【0042】
図8に示すように、感情集計部13は、まず、出現個数テーブル17を初期化する(ステップS201)。より詳細には、感情集計部13は、出現個数テーブル17のすべての要素を0に初期化する。その後、感情集計部13は、感情検索部12における処理が終了するまで、ステップS202およびS203の処理を繰り返し実行する。
【0043】
感情集計部13は、感情検索部12から出力された検索結果102(この感情をMとする)を受け取る(ステップS202)。感情Mは、感情の種類または強度のいずれかである。次に、感情集計部13は、出現個数テーブル17に記録された感情Mの出現個数に1を加算する(ステップS203)。次に、感情集計部13は、感情検索部12が処理を終了したか否かを判断する(ステップS204)。感情検索部12が処理を終了していない場合、感情集計部13は、ステップS202へ進み、引き続き次の検索結果102に対する処理を実行する。
【0044】
感情検索部12が処理を終了している場合、感情集計部13は、ステップS205へ進む。この場合、感情集計部13は、感情の各種類の構成比率を求める。すなわち、感情集計部13は、感情の各種類の出現個数の合計(この値をNとする)を求め(ステップS205)、出現個数テーブル17に記録された感情の各種類の出現個数を上記Nで除算することにより、感情の各種類の構成比率を求める(ステップS206)。次に、感情集計部13は、ステップS206で求めた感情の各種類の構成比率と、出現個数テーブル17に記録された感情の各強度の出現個数とを、感情表現値103として出力する(ステップS207)。
【0045】
以下、本実施形態に係る文字列処理装置10の効果を説明する。まず、文字列処理装置10では、各顔文字の全体と感情とを対応づける辞書に代えて、各顔文字に含まれる個々の文字と感情とを対応づける辞書(顔部品テーブル群14)を用いて、文字列が表す感情が求められる。このため、辞書を検索する前に、文字列から顔文字を抽出する処理(例えば、形態素解析)を行う必要がなくなる。したがって、少ない処理量で、顔文字を含んだ文字列が表す感情を求めることができる。
【0046】
また、一般に、顔文字では画数の多い漢字などはあまり使用されず、多くの顔文字は、単純な外観を有する文字(例えば、記号や英数字)によって構成される。このため、顔文字の種類に比べて、顔文字に含まれる文字の種類は少ないと言える。文字列処理装置10は、各顔文字の全体と感情とを対応づける辞書に代えて、各顔文字に含まれる個々の文字と感情とを対応づける辞書を使用することにより、辞書のサイズを小さくすることができる。以上のことから、文字列処理装置10によれば、携帯電話など処理能力のあまり高くない情報通信機器においても、顔文字を含んだ文字列が表す感情を求めることができる。
【0047】
また、文字列処理装置10は、顔文字を構成する複数の顔部品に対応した複数の顔部品テーブル14a〜kを含み、各顔部品に対応した顔部品テーブルには、顔文字において当該顔部品に含まれる個々の文字と、当該文字が当該顔部品に含まれる場合に表す感情との対応関係が登録されている。これにより、いずれの顔部品に含まれるかによって、文字が表す感情として、異なる結果を求めることができる。したがって、1つの文字が異なる顔文字では別の感情を表す場合でも、適切な処理を行うことができる。以上のことから、文字列処理装置10によれば、顔文字を含んだ文字列が表す感情として、より適切な結果を求めることができる。
【0048】
また、感情検索部12は、前回最後に検索した顔部品テーブルから、顔部品の並び順に従って、顔部品テーブルを検索する。このような方法で検索を行う理由は、顔文字における顔部品の並び順は、どの顔文字でもほぼ一定であるからである。例えば、顔文字では、「口」に含まれる文字の後には、「右目」や「右頬」などに含まれる文字が現れる場合が多い。このため、「口」に含まれる文字の次の文字を検索するときには、口テーブル14fを先頭に、右目テーブル14f、右頬テーブル14h、…の順序で探索すれば、検索を高速に、かつ、正確に実行することができる。他の顔部品についても同様に、前回の検索位置から検索を開始することにより、検索を高速に、かつ正確に実行することができる。以上のことから、文字列処理装置10によれば、高速に、かつ誤認識を起こすことなく、顔文字を含んだ文字列が表す感情を求めることができる。
【0049】
以上のように、本実施形態に係る文字列処理装置によれば、小さなサイズの辞書を用いて、誤認識を起こすことなく、顔文字を含む文字列が表す感情を求めることができる。
【0050】
なお、本実施形態では、顔部品テーブル群14には11個の顔部品テーブル14a〜kが含まれているとしたが、顔部品テーブル群14にいかなる顔部品テーブルが含まれるか(すなわち、顔部品テーブルの種類および個数)は、文字列処理装置が処理対象とする顔文字に応じて、任意に決定してよい。また、各顔部品テーブル14a〜kの内容も、任意に決定してよい。また、感情表現値103には、感情の各種類および各強度の構成比率や出現個数に限らず、感情に関する他の集計結果が含まれていてもよい。このような集計結果の例としては、例えば、感情の各種類および各強度の出現個数の順位、感情検索処理および感情集計処理の対象とされた入力文字列101の長さ、感情の各種類や各強度の上記長さに対する割合などが考えられる。
【0051】
また、感情検索部12は、顔文字辞書11に含まれる検索順序テーブル15に従って検索を実行することとしたが、検索実行順序の制御方法は、これに限られない。例えば、感情検索部12は、検索順序テーブル15を内蔵し、これに従って検索を実行してもよい。さらに、感情検索部12は、新たな検索を行うときには、前回探索した顔部品テーブルから検索を実行することとしたが、前回検索した顔部品テーブルの次の顔部品テーブルから検索を実行してもよい。この方法は、1つの顔部品には1つの顔文字しか含まれていない場合に、特に有効である。
【0052】
(第2の実施形態)
図10は、本発明の第2の実施形態に係る文字列処理装置の構成を示すブロック図である。図10に示す文字列処理装置20は、顔文字辞書11と、感情検索部12と、感情集計部13と、変換テーブル21と、色計算部22とを備えている。すなわち、文字列処理装置20は、第1の実施形態に係る文字列処理装置10に、変換テーブル21と、色計算部22とを追加したものである。文字列処理装置20は、入力文字列101に基づき感情表現値103を求めた上で、感情表現値103に基づき、入力文字列101の文字色201を求める。本実施形態の構成要素のうち、第1の実施形態と同一の構成要素については、同一の参照符号を付して、説明を省略する。
【0053】
図11は、変換テーブル21の内容を示す図である。変換テーブル21は、図11に示すように、色変換テーブル23と明るさ変換テーブル24とを含んでいる。色変換テーブル23には、感情の種類と色データとの対応関係が登録される。より詳細には、色変換テーブル23には、感情の種類ごとに、その種類の感情を表すために適した色(例えば、感情「怒り」には「赤」)の色データが、例えば、RGB各8ビットの形式で登録される。明るさ変換テーブル24には、感情の強度と明るさデータとの対応関係が登録される。明るさ変換テーブル24には、感情の強度が大きいほど、大きな値の明るさデータが登録される。
【0054】
色計算部22は、色変換テーブル21を参照して、感情表現値103に基づき文字色201を計算する。図12は、色計算部22における処理(色計算処理)を示すフローチャートである。図12に示す処理は、感情集計部13から新たな感情表現値103が出力されるたびに実行される。
【0055】
図12に示すように、色計算部22は、まず、感情集計部13から出力された感情表現値103を受け取る(ステップS301)。次に、色計算部22は、色データを累積加算するために使用する変数Yを0に初期化する(ステップS302)。その後、色計算部22は、色変換テーブルに含まれるすべての感情の種類について、ステップS303〜S306の処理を実行する。
【0056】
色計算部22は、色変換テーブル23から次の行を読み出し、その行に登録されている感情の種類(その種類をMとする)と色データ(その値をXとする)とを取り出す(ステップS303)。次に、色計算部22は、感情表現値103に含まれている種類Mの構成比率(その値をAとする)を取り出す(ステップS304)。次に、色計算部22は、Yに、XとAの積を加算する(ステップS305)。次に、色計算部22は、色変換テーブル23に含まれるすべての感情の種類を処理したか否かを判断する(ステップS306)。未処理の感情の種類がある場合には、色計算部22は、ステップS303へ進み、引き続き次の感情の種類に対する処理を実行する。
【0057】
すべての感情の種類を処理済みである場合には、色計算部22は、ステップS307へ進む。この場合、色計算部22は、感情表現値103に含まれている感情の強度の最頻値(この強度をM’とする)を求める(ステップS307)。次に、色計算部22は、明るさ変換テーブル24から強度M’に対応した明るさデータ(この値をBとする)を取り出す(ステップS308)。次に、色計算部22は、YとBの積を、文字色201として出力する(ステップS309)。
【0058】
例えば、図11に示す色変換テーブル21を参照して、図7に示す感情表現値103に基づき、文字色201を求める場合を考える。図7に示す感情表現値103には、感情の種類として、67%の「喜び」と33%の「あせり」とが含まれている。また、この感情表現値103における、感情の強度の最頻値は「中」である。また、図11に示す色変換テーブル23では、感情「喜び」に対応した色データは(R、G、B)=(255、127、0)であり、感情「あせり」に対応した色データは(R、G、B)=(0、127、255)である。さらに、図11に示す明るさ変換テーブル24では、感情の強度「中」に対応した明るさデータは、0.85である。したがって、
R=(255×0.67+ 0×0.33)×0.85=146
G=(127×0.67+127×0.33)×0.85=108
B=( 0×0.67+255×0.33)×0.85= 72
より、文字色201は、(R、G、B)=(145、108、72)となる。
【0059】
以上に示すように、本実施形態に係る文字列処理装置20は、顔文字を含んだ文字列が表す感情を表す感情表現値103求めた上で、感情の種類の集計結果(感情の各種類の構成比率)、および感情の強度の集計結果(感情の各種類の出現個数)に基づき、文字列の色データと明るさデータを求める。したがって、求めた色および明るさで文字列を表示あるいは印字などしたときに、顔文字を含んだ文字列が表す感情を容易に理解することができる。
【0060】
なお、文字列処理装置20では、図11に示す色変換テーブルを使用することとしたが、色変換テーブル21の構成および内容は任意でよい。例えば、本実施形態では、色変換テーブル23には、RGB各8ビットの形式を有する色データが登録されていることとしたが、色データの形式は任意でよい。例えば、色データとして、YUV各8ビットの形式を有する色データを使用してもよい。
【0061】
また、文字列処理装置20は、感情表現値103に基づき文字色201を求めることとしたが、これに代えて、あるいは、これとともに、文字に関する他の属性値を求めてもよい。このような文字に関する他の属性としては、文字サイズ、文字フォント、文字飾り(太線化、斜体、下線など)、背景色などがある。変換テーブル21に、感情と、これら属性の各属性値とを対応づけて登録することにより、顔文字を含んだ文字列が表す感情に基づき、これらの属性を変化させて文字列を表示あるいは印字することができる。
【0062】
(第3の実施形態)
図13は、本発明の第3の実施形態に係るメールシステムの構成を示すブロック図である。図13に示すメールシステムは、メール送信装置30と、メール受信装置40とを備えている。これら2つの装置は、通信ネットワーク50によって通信可能に接続されている。メール送信装置30は、文字列入力部31と、送信部32とを備え、メール受信装置40は、受信部41と、文切り出し部42と、文字列処理部43と、文字色制御部44と、表示部45とを備えている。本実施形態に係るメールシステムは、メール受信装置40が文字列処理部43を備えていることを特徴とする。
【0063】
文字列入力部31は、キーボードやテンキーなど、メール送信者が電子メールを入力するための手段である。送信部32は、通信ネットワーク50経由で、文字列入力部31から入力された電子メールを送信する。受信部41は、送信部32から送信された電子メールを、通信ネットワーク50経由で受信する。文切り出し部42は、受信した電子メールを1文ごとに切り出し、切り出した文401を文字列処理部43と文字色制御部44とに出力する。
【0064】
文字列処理部43は、第2の実施形態に係る文字列処理装置20によって構成される。文字列処理部43は、切り出された文401に基づき感情表現値103を求めた上で、切り出された文401の文字色201を求める。文字列処理部43の詳細は、第1および第2の実施形態で説明したとおりであるので、ここでは説明を省略する。
【0065】
文字色制御部44は、切り出された文401に含まれる各文字の色を、文字列処理部43から出力された文字色201に変更し、色変更された文402を出力する。表示部45は、文字色制御部44から出力された色変更された文402を、メール受信装置40の画面に表示する。
【0066】
図14は、メール受信装置40における処理(メール受信処理)を示すフローチャートである。図14に示す処理は、メール受信装置40が1通の電子メールを受信するたびに実行される。
【0067】
図14に示すように、受信部41は、電子メールを受信すると(ステップS401)、受信したメールを文切り出し部42に出力する。次に、文切り出し部42が、受信した電子メールから1文を切り出す(ステップS402)。次に、文字列処理部43が、切り出された文401に対して、感情検索処理(ステップS403、図5)と、感情集計処理(ステップS404、図8)と、色計算処理(ステップS405、図12)とを実行し、切り出された文401の文字色201を求める。次に、文字色制御部44が、切り出された文401に含まれる各文字の色を、文字列処理部43で求めた文字色201に変更する(ステップS406)。次に、表示部45が、色変更された文402を、メール受信装置40の画面に表示する(ステップS407)。
【0068】
次に、メール受信装置40では、受信した電子メールに含まれるすべての文を処理したか否かが判断される(ステップS408)。未処理の文がある場合には、メール受信装置40の制御は、ステップS402へ進み、次の文に対する処理が引き続き実行される。すべての文を処理済みである場合には、メール受信装置40は、メール受信処理を終了する。
【0069】
図15は、メール受信装置40の表示画面にメールが表示される様子を示す図である。図15に示すメール受信装置40の画面には、メール送信装置30から送信され、通信ネットワーク50経由で受信された電子メールが表示される。文切り出し部42、文字列処理部43、および文字色制御部44の作用により、電子メールに含まれる各文の色は、各文が表す感情(すなわち、各文に含まれる顔文字が表す感情を集計したもの)に応じて変更される。図15に示す例では、顔文字「(^0^)」を含む第1文はオレンジ色で表示され、顔文字「(T_T)」を含む第3文は青色で表示される。また、顔文字を含まない第2文は、黒色で表示される。
【0070】
以上に示すように、本実施形態に係るメールシステムによれば、顔文字を含んだ電子メールの各文が表す感情に基づき、各文の文字色を求めることができる。したがって、求めた文字色で、受信した電子メールを表示することにより、メール受信者は、顔文字を含んだ電子メールが表す感情を容易に理解することができる。
【0071】
なお、本実施形態では、メール受信装置40が文字列処理部43を備えていることとしたが、メール送信装置30が、この文字列処理装置を備えていてもよい。これにより、メール送信者は、電子メールがメール受信装置40において表示される態様(例えば、文字色など)を確認した上で、電子メールを送信することができる。
【0072】
なお、コンピュータに、上記各実施形態に係る文字列処理装置における文字列処理方法を実行させるプログラム(以下、文字列処理プログラムという)と、コンピュータとを用いて、上記各実施形態に係る文字列処理装置を実現することもできる。この場合、文字列処理プログラムは、フレキシブルディスク、光ディスク、ICカードなど、各種の記録媒体に記録されていてもよい。文字列処理プログラムとしては、例えば、コンピュータに感情検索処理(図5)と感情集計処理(図8)とを実行させるプログラムや、コンピュータに上記2つの処理と色計算処理(図12)を実行させるプログラムや、コンピュータにメール受信処理(図14)を実行させるプログラムなどがある。
【0073】
また、上記の各実施形態では、文字列処理装置は、入力文字列に顔文字が含まれる場合に、所定の処理を行うこととしたが、文字列処理装置が処理対象とする文字パターンは、顔文字(あるいは絵文字)に限定されない。すなわち、文字列処理装置は、感情と何らかの対応づけを有する任意の文字パターンについて、上記各実施形態で示した処理と同様の処理を行うことができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係る文字列処理装置の構成を示すブロック図
【図2】本発明の第1の実施形態に係る文字列処理装置の顔部品テーブルの内容を示す図
【図3】本発明の第1の実施形態に係る文字列処理装置の検索順序テーブルの内容を示す図
【図4】本発明の第1の実施形態に係る文字列処理装置において、顔部品テーブルの検索順序を示す概念図
【図5】本発明の第1の実施形態に係る文字列処理装置における感情検索処理を示すフローチャート
【図6】本発明の第1の実施形態に係る文字列処理装置における感情検索処理の実行例を示す図
【図7】本発明の第1の実施形態に係る文字列処理装置で求められる感情表現値の形式を示す図
【図8】本発明の第1の実施形態に係る文字列処理装置の出現個数テーブルの内容を示す図
【図9】本発明の第1の実施形態に係る文字列処理装置における感情集計処理を示すフローチャート
【図10】本発明の第2の実施形態に係る文字列処理装置の構成を示すブロック図
【図11】本発明の第2の実施形態に係る文字列処理装置の変換テーブルの内容を示す図
【図12】本発明の第2の実施形態に係る文字列処理装置における色計算処理を示すフローチャート
【図13】本発明の第3の実施形態に係るメールシステムの構成を示すブロック図
【図14】本発明の第3の実施形態に係るメールシステムにおけるメール受信処理を示すフローチャート
【図15】本発明の第3の実施形態に係るメールシステムのメール受信装置において、電子メールが表示される様子を示す図
【符号の説明】
10、20…文字列処理装置
11…顔文字辞書
12…感情検索部
13…感情集計部
14…顔部品テーブル群
15…検索順序テーブル
16…検索対象ポインタ
17…出現個数テーブル
21…変換テーブル
22…色計算部
23…色変換テーブル
24…明るさ変換テーブル
40…メール受信装置
41…受信部
42…文切り出し部
43…文字列処理部
44…文字色制御部
45…表示部
101…文字列
102…検索結果
103…感情表現値
201…文字色
401…切り出された文
402…色変更された文
Claims (13)
- 入力された文字列に所定の文字パターンが含まれる場合に、所定の処理を実行する文字列処理装置であって、
予め定められた複数の文字パターンについて、前記文字パターンに含まれる個々の文字と、当該文字が表す感情との対応関係が登録された文字パターン辞書と、
入力された文字列に含まれる各文字ごとに前記文字パターン辞書を検索し、各文字が表す感情を求める検索手段と、
前記文字列に含まれるすべての文字について前記検索手段で求めた感情を集計し、前記文字列が表す感情を表現する感情表現値を求める集計手段とを備えた、文字列処理装置。 - 前記文字パターンが、顔文字であることを特徴とする、請求項1に記載の文字列処理装置。
- 前記文字パターン辞書は、顔文字を構成する複数の顔部品に対応した複数の顔部品テーブルを含み、
各顔部品に対応した前記顔部品テーブルには、顔文字において当該顔部品に含まれる個々の文字と、当該文字が当該顔部品に含まれる場合に表す感情との対応関係が登録されていることを特徴とする、請求項2に記載の文字列処理装置。 - 前記検索手段は、前記顔部品テーブルのうち前回の検索で最後に検索した顔部品テーブルを記憶し、前記文字列に含まれる文字について新たな検索を行うときには、記憶した顔部品テーブルに基づき、最初に検索すべき顔部品テーブルを決定した上で、顔文字における顔部品の並び順に従って、前記顔部品テーブルを検索することを特徴とする、請求項3に記載の文字列処理装置。
- 前記集計手段は、前記検索手段で求めた感情を種類ごとに集計した結果を含んだ前記感情表現値を求めることを特徴とする、請求項2に記載の文字列処理装置。
- 前記集計手段は、前記検索手段で求めた感情を強度ごとに集計した結果を含んだ前記感情表現値を求めることを特徴とする、請求項2に記載の文字列処理装置。
- 前記文字パターン辞書に登録された感情と、文字に関する所定の属性値との対応関係が登録された変換テーブルと、
前記変換テーブルを参照して、前記集計手段で求めた感情表現値に基づき、前記文字列に関する前記属性値を求める属性値計算手段とをさらに備えた、請求項2に記載の文字列処理装置。 - 前記変換テーブルに登録された属性値が、文字色であることを特徴とする、請求項7に記載の文字列処理装置。
- 前記変換テーブルは、前記文字パターン辞書に登録された感情の種類と色データとの対応関係が登録された色変換テーブルと、前記文字パターン辞書に登録された感情の強度と明るさデータとの対応関係が登録された明るさ変換テーブルとを含み、
前記集計手段は、前記検索手段で求めた感情を種類ごとに集計した第1の集計結果と、前記検索手段で求めた感情を強度ごとに集計した第2の集計結果とを含んだ前記感情表現値を求め、
前記属性値計算手段は、前記色変換テーブルに登録された色データを前記第1の集計結果に応じて混合した結果と、前記明るさ変換テーブルに登録された明るさデータのうち、前記第2の集計結果で最頻となる強度に対応したデータとを乗算し、当該乗算結果を前記文字列に関する前記属性値とすることを特徴とする、請求項8に記載の文字列処理装置。 - 電子メールを受信するメール受信装置であって、
電子メールを受信する受信手段と、
前記電子メールに所定の文字パターンが含まれる場合に、所定の処理を実行するために、
予め定められた複数の文字パターンについて、前記文字パターンに含まれる個々の文字と、当該文字が表す感情との対応関係が登録された文字パターン辞書と、
前記電子メールに含まれる各文字ごとに前記文字パターン辞書を検索し、各文字が表す感情を求める検索手段と、
前記電子メールの所定の部分に含まれるすべての文字について前記検索手段で求めた感情を集計し、前記部分が表す感情を表現する感情表現値を求める集計手段と、
前記文字パターン辞書に登録された感情と、文字に関する所定の属性値との対応関係が登録された変換テーブルと、
前記変換テーブルを参照して、前記集計手段で求めた感情表現値に基づき、前記部分に関する前記属性値を求める属性値計算手段とを含む、文字列処理部と、
前記文字列処理部で求めた属性値に従い、前記受信手段で受信した電子メールを表示する表示手段とを備えた、メール受信装置。 - 入力された文字列に所定の文字パターンが含まれる場合に、所定の処理を実行する文字列処理方法であって、
予め定められた複数の文字パターンについて、前記文字パターンに含まれる個々の文字と、当該文字が表す感情との対応関係が登録された文字パターン辞書を用いて、
入力された文字列に含まれる各文字ごとに前記文字パターン辞書を検索し、各文字が表す感情を求める検索ステップと、
前記文字列に含まれるすべての文字について前記検索ステップで求めた感情を集計し、前記文字列が表す感情を表現する感情表現値を求める集計ステップとを備えた、文字列処理方法。 - コンピュータに、入力された文字列に所定の文字パターンが含まれる場合に、所定の処理を実行する文字列処理方法を実行させるためのプログラムであって、
予め定められた複数の文字パターンについて、前記文字パターンに含まれる個々の文字と、当該文字が表す感情との対応関係が登録された文字パターン辞書を用いて、
入力された文字列に含まれる各文字ごとに前記文字パターン辞書を検索し、各文字が表す感情を求める検索ステップと、
前記文字列に含まれるすべての文字について前記検索ステップで求めた感情を集計し、前記文字列が表す感情を表現する感情表現値を求める集計ステップとを備えた、プログラム。 - コンピュータに、入力された文字列に所定の文字パターンが含まれる場合に、所定の処理を実行する文字列処理方法を実行させるためのプログラムを記録した記録媒体であって、前記プログラムは、
予め定められた複数の文字パターンについて、前記文字パターンに含まれる個々の文字と、当該文字が表す感情との対応関係が登録された文字パターン辞書を用いて、
入力された文字列に含まれる各文字ごとに前記文字パターン辞書を検索し、各文字が表す感情を求める検索ステップと、
前記文字列に含まれるすべての文字について前記検索ステップで求めた感情を集計し、前記文字列が表す感情を表現する感情表現値を求める集計ステップとを備えた、記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003065577A JP2004272807A (ja) | 2003-03-11 | 2003-03-11 | 文字列処理装置および文字列処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003065577A JP2004272807A (ja) | 2003-03-11 | 2003-03-11 | 文字列処理装置および文字列処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004272807A true JP2004272807A (ja) | 2004-09-30 |
Family
ID=33126565
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003065577A Pending JP2004272807A (ja) | 2003-03-11 | 2003-03-11 | 文字列処理装置および文字列処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004272807A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007011308A (ja) * | 2005-05-30 | 2007-01-18 | Kyocera Corp | 文書表示装置及び文書読み上げ方法 |
JP2007200159A (ja) * | 2006-01-30 | 2007-08-09 | Nec Corp | メッセージ作成支援方法及び携帯端末 |
WO2007138944A1 (ja) * | 2006-05-26 | 2007-12-06 | Nec Corporation | 情報付与システム、情報付与方法、情報付与プログラム及び情報付与プログラム記録媒体 |
US8065157B2 (en) | 2005-05-30 | 2011-11-22 | Kyocera Corporation | Audio output apparatus, document reading method, and mobile terminal |
CN103975322A (zh) * | 2011-11-16 | 2014-08-06 | N·S·苏库普 | 在文本消息中呈现情感的方法 |
WO2018235326A1 (ja) * | 2017-06-23 | 2018-12-27 | 大日本印刷株式会社 | コンピュータプログラム、フォント切替装置及びフォント切替方法 |
-
2003
- 2003-03-11 JP JP2003065577A patent/JP2004272807A/ja active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007011308A (ja) * | 2005-05-30 | 2007-01-18 | Kyocera Corp | 文書表示装置及び文書読み上げ方法 |
US8065157B2 (en) | 2005-05-30 | 2011-11-22 | Kyocera Corporation | Audio output apparatus, document reading method, and mobile terminal |
JP2007200159A (ja) * | 2006-01-30 | 2007-08-09 | Nec Corp | メッセージ作成支援方法及び携帯端末 |
WO2007138944A1 (ja) * | 2006-05-26 | 2007-12-06 | Nec Corporation | 情報付与システム、情報付与方法、情報付与プログラム及び情報付与プログラム記録媒体 |
US8340956B2 (en) | 2006-05-26 | 2012-12-25 | Nec Corporation | Information provision system, information provision method, information provision program, and information provision program recording medium |
JP5321058B2 (ja) * | 2006-05-26 | 2013-10-23 | 日本電気株式会社 | 情報付与システム、情報付与方法、情報付与プログラム及び情報付与プログラム記録媒体 |
CN103975322A (zh) * | 2011-11-16 | 2014-08-06 | N·S·苏库普 | 在文本消息中呈现情感的方法 |
WO2018235326A1 (ja) * | 2017-06-23 | 2018-12-27 | 大日本印刷株式会社 | コンピュータプログラム、フォント切替装置及びフォント切替方法 |
JPWO2018235326A1 (ja) * | 2017-06-23 | 2020-04-23 | 大日本印刷株式会社 | コンピュータプログラム、フォント切替装置及びフォント切替方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5097198B2 (ja) | テキスト文書に画像アーティファクトを挿入する装置および方法 | |
Cui et al. | Text-to-viz: Automatic generation of infographics from proportion-related natural language statements | |
EP2741254B1 (en) | Color determination device, color determination system, color determination method, information recording medium, and program | |
US9589200B2 (en) | Handwriting input conversion apparatus, computer-readable medium, and conversion method | |
CN105830011B (zh) | 用于交叠手写文本输入的用户界面 | |
JP5724430B2 (ja) | 情報検索装置およびプログラム | |
KR20160097352A (ko) | 전자 디바이스로 이미지 또는 라벨을 입력하기 위한 시스템 및 방법 | |
CN106708940A (zh) | 用于处理图片的方法和装置 | |
CN112699645B (zh) | 语料标注方法、装置及设备 | |
JP2006004402A (ja) | 書類作成支援装置、書類作成支援プログラムおよび記憶媒体、並びに書類作成支援方法 | |
JP5767590B2 (ja) | 文字および絵が混ざり合った表示をする情報を生成するシステム | |
US7889927B2 (en) | Chinese character search method and apparatus thereof | |
US20040249804A1 (en) | Search supporting apparatus, search supporting method and searching program | |
JP2004272807A (ja) | 文字列処理装置および文字列処理方法 | |
JP5664813B1 (ja) | デザイン管理装置及びプログラム | |
US8928929B2 (en) | System for generating tag layouts | |
CN110047569B (zh) | 基于胸片报告生成问答数据集的方法、装置及介质 | |
JP4005672B2 (ja) | 文書処理装置、文書処理プログラムが記憶された記憶媒体、及び文書処理方法 | |
WO2023164210A1 (en) | System, method, and computer program product for inserting citations into a textual document | |
JP2010102564A (ja) | 感情特定装置、その方法、プログラム及び記録媒体 | |
JP6549173B2 (ja) | 計算機システム及び文章データの検索方法 | |
KR102466701B1 (ko) | 스프레드시트 상에서 문장 단위로 줄바꿈이 가능한 전자 장치 및 그 동작 방법 | |
JPH07334499A (ja) | 文字列入力装置 | |
CN102708108A (zh) | 信息显示装置以及信息显示方法 | |
CN112684912A (zh) | 候选信息显示方法、装置和电子设备 |