(57)【特許請求の範囲】
【請求項１】
入力される文章データを音声合成により読み上げて出力する文章データ読み上げ装置であって、
１以上の行及び１以上の列からなる表内におけるセルの位置と、前記セルに含まれる項目、あるいは、前記セルに含まれる前記項目の要素との対応付けを示す表情報を含む文章データを入力する入力手段と、
前記入力手段が入力する文章データから前記表情報を検出する表検出手段と、
前記表検出手段が検出する表情報の各セルが前記項目を含むセルであるか、前記要素を含むセルであるかを判定する判定手段と、
前記判定手段が項目を含むセルとして判定したセルの個数を算出する項目数算出手段と、
前記判定手段が要素を含むセルとして判定したセルの個数を算出する要素数算出手段と、
前記項目数算出手段が算出したセルの個数を項目の数として音声合成により読み上げて出力し、前記要素数算出手段が算出したセルの個数を要素の数として音声合成により読み上げて出力する全体出力手段と、
前記判定手段が項目を含むセルとして判定した全てのセルに含まれる文章データを音声合成により読み上げて出力する項目出力手段と、
前記判定手段が要素を含むセルとして判定したセルに含まれる文章データを音声合成により読み上げて出力する要素出力手段と、
を含むことを特徴とする文章データ読み上げ装置。
【請求項２】
前記表検出手段が検出する表情報に、統合されたセルが含まれるか否かを判定し、統合されたセルが含まれると判定した場合、前記統合されたセルを分割し、分割元のセルに含まれる項目あるいは要素の内容を、分割した全てのセルの内容とした表情報を出力する統合判定分割手段を備え、
前記判定手段は、
前記統合判定分割手段が統合されたセルを含まないと判定した場合、前記表検出手段が検出する表情報の各セルが前記項目を含むセルであるか、前記要素を含むセルであるかを判定し、前記統合判定分割手段が統合されたセルを含むと判定した場合、前記統合判定分割手段から出力される表情報の各セルが前記項目を含むセルであるか、前記要素を含むセルであるかを判定することを特徴とする請求項１に記載の文章データ読み上げ装置。
【請求項３】
ユーザの操作を受けて、前記表形式のセルのうち、前記要素を含むセルの位置を指定する位置情報を入力する要求入力手段を備え、
前記要素出力手段は、
前記要求入力手段が入力する位置情報に対応するセルに含まれる文章データを音声合成により読み上げて出力することを特徴とする請求項１または２に記載の文章データ読み上げ装置。
【請求項４】
前記判定手段は、
前記表情報が行及び列に項目がある表であるか、行のみに項目がある表であるか、列のみに項目がある表であるかを判定し、行及び列に項目がある表と判定した場合、前記表情報の各セルが行に対応する前記項目を含むセルであるか、列に対応する前記項目を含むセルか、前記要素を含むセルであるかを判定し、行のみに項目がある表と判定した場合、前記表情報の各セルが行に対応する前記項目を含むセルであるか、前記要素を含むセルであるかを判定し、列のみに項目がある表と判定した場合、前記表情報の各セルが列に対応する前記項目を含むセルであるか、前記要素を含むセルであるかを判定することを特徴とする請求項１から３のいずれか１つに記載の文章データ読み上げ装置。
【請求項５】
入力される文章データを音声合成により読み上げて出力する文章データ読み上げ装置のコンピュータを、
１以上の行及び１以上の列からなる表内におけるセルの位置と、前記セルに含まれる項目、あるいは、前記セルに含まれる前記項目の要素との対応付けを示す表情報を含む文章データを入力する入力手段と、
前記入力手段が入力する文章データから前記表情報を検出する表検出手段と、
前記表検出手段が検出する表情報の各セルが前記項目を含むセルであるか、前記要素を含むセルであるかを判定する判定手段と、
前記判定手段が項目を含むセルとして判定したセルの個数を算出する項目数算出手段と、
前記判定手段が要素を含むセルとして判定したセルの個数を算出する要素数算出手段と、
前記項目数算出手段が算出したセルの個数を項目の数として音声合成により読み上げて出力し、前記要素数算出手段が算出したセルの個数を要素の数として音声合成により読み上げて出力する全体出力手段と、
前記判定手段が項目を含むセルとして判定した全てのセルに含まれる文章データを音声合成により読み上げて出力する項目出力手段と、
前記判定手段が要素を含むセルとして判定したセルに含まれる文章データを音声合成により読み上げて出力する要素出力手段と、
として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力される文書データを合成音声にて読み上げる文書データ読み上げ装置及びそのコンピュータプログラムに関する。
【背景技術】
【０００２】
利用者に対して簡潔に情報を伝達する情報の表現方法の一つとして、表形式が用いられる場合が多い。表形式は、縦の項目と横の項目という２次元で表現することにより、情報、すなわち項目から特定される要素の関連付けや、変換等を視覚的に示すことができる点で非常に有効な情報の伝達形式である。また、インターネットを介して様々な情報を公開するウェブサイトにおいても、表形式が用いられていることが多い。
【０００３】
ところで、上記のようなウェブサイトに表示されている情報を視覚障害者に伝達することを支援する従来技術として、音声読み上げのソフトウェアプログラムや、スクリーンリーダなどが存在する。しかし、音声読み上げソフトウェアプログラムでは、表形式で表現された情報に対して、表の左上から右下に文字を探し、現れた順に文字を１次元の並びとして読み上げていく。すなわち、１列目を左から右に読んだあと、２列目を左から右、続いて３列目というように読み上げていくため、縦と横という２次元の項目に対応する要素としての情報ではなく、単に１次元の情報の羅列となり、視覚障害者が読み上げられる音声を聞いても、現在、読み上げられている情報の行の項目、列の項目が何であるかを読み上げの当初に読み上げられてしまった音声を遡って、行と列の項目が何であり、行と列の項目にどのような関係があり、各情報が行と列のどの項目に該当する要素であるのか理解することは非常に困難である。また、多くの行数、列数から構成される規模の大きい表、あるいは、行と列の項目が一対一に対応していない表に関しては、行と列にどのような項目が存在するかを把握することが更に困難となる。
【０００４】
また、上記のような表の構成そのものではなく、例えば、勝敗を表す白丸や黒丸、対戦結果のスコアを表す「数字−数字」のような視覚的な情報表現は、音声読み上げソフトウェアプログラムによる読み上げを聞いても理解するのが困難である。
【０００５】
特許文献１では、スコアなどを表す表に含まれるデータの記述に着目し、野球の勝敗表や大相撲の星とり表に焦点をあて「（数字列Ａ）＋（横棒）＋（数字列Ｂ）」を「Ａ対Ｂ」と読み上げ、自然言語が数字Ａの前、Ｂの後についてくる場合は、当該自然言語をチーム名と判定して、大きい数字のチームに対応する自然言語に「の勝ち」を加えて読み上げるという技術を提案している。また、試合場所や試合開始時間など補完的な情報が括弧付きで付加されている場合には、不要情報として読み上げないなど、規則を辞書に定めて表情報を自然言語に変換する方法も提案している。
【０００６】
しかし、上記の特許文献１に記載の技術は、表の各セルに含まれる情報の表現形式に着目したものであり、読み上げ順序は、従来の音声読み上げソフトウェアプログラムと同じく、左から右へ１列目、２列目、…と順に読み上げていく構成であり、行と列の項目が何であるか、２つのセルが１つに統合された項目、あるいは逆に１つのセルが２つに分解された項目があっても、項目間の関係を、読み上げによって表すことができていないという問題がある。
【０００７】
特許文献２及び特許文献３に記載の技術では、上記の特許文献１に記載の技術に係る問題を解決するため、表の各セルに含まれる情報に対応している行と列の項目の明瞭化を図っている。すなわち、右から左に１行ずつセルを読み上げさせることや、あるいは上から下に１列ずつセルを読み上げさせるかを利用者がキーボードを操作することで選択可能にしている。また、各セルの読み上げが終了した時点で、行と列の項目が何であるかを利用者がキーボードを操作することによりその都度確認できる機能も提案している。
【０００８】
また、特許文献２及び特許文献３に記載の技術では、複数のセルが１つに統一されている場合、セルを最小単位に分解して、分解したセルには同じ文書データや値が含まれているものとして、行と列の項目が一対一に対応している表として読み上げる機能も有している。また、指定した行のみ、あるいは列のみを順に読み上げる機能も有しており、行のみを読み上げる場合は、各セルに対する列の項目が何であるかもあわせて読み上げるようにする機能も有している。
【０００９】
また、さらに、特許文献２及び特許文献３に記載の技術では、キーワードを指定して、キーワードを含むセルのみを抽出し、行と列の情報とあわあせて読み上げることも可能としている。同じ内容のセルが続く場合には、「以下、同文」のように重複しないような読み上げを行うことも特徴の１つである。また、表全体を読み上げず、何行、何列まで読み上げるといった指定も可能としている。
【００１０】
上述したように、特許文献２及び特許文献３に記載の技術では、表全体に記載されている情報が理解できている利用者にとって、必要な情報が明確である場合には、表の読み上げを全て聞かずに、必要な情報のみを聞くことを可能としている。また、表の読み上げを利用者の操作によって進めることができ、各セルに対して行と列の情報をその場で確認できることから、利用者は、個々の情報に対する行と列の項目を容易に把握することが可能となる。
【特許文献１】特開平１１−１３４１６６号公報
【特許文献２】特開２００４−３１６９７２号公報
【特許文献３】特開２０００−０８９７７８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、特許文献２及び３に記載の技術では、必要な情報を指定する前に、利用者が予め表全体にどのような情報が含まれているのかを知っておく必要があり、視覚で情報を確認することができない視覚障害者にとっては、読み上げを聞く前に、自らの必要とする情報が表の中に存在するのか否かの判断をすることは困難であるという問題がある。
【００１２】
本発明は、上記問題を解決すべくなされたもので、その目的は、表形式で表現される情報を音声の出力によって示す場合に、表形式の全体の構成を示す情報を伝達可能とする文書データ読み上げ装置及びそのコンピュータプログラムを提供することにある。
【課題を解決するための手段】
【００１３】
上記問題を解決するために、本発明は、入力される文章データを音声合成により読み上げて出力する文章データ読み上げ装置であって、１以上の行及び１以上の列からなる表内におけるセルの位置と、前記セルに含まれる項目、あるいは、前記セルに含まれる前記項目の要素との対応付けを示す表情報を含む文章データを入力する入力手段と、前記入力手段が入力する文章データから前記表情報を検出する表検出手段と、前記表検出手段が検出する表情報の各セルが前記項目を含むセルであるか、前記要素を含むセルであるかを判定する判定手段と、前記判定手段が項目を含むセルとして判定したセルの個数を算出する項目数算出手段と、前記判定手段が要素を含むセルとして判定したセルの個数を算出する要素数算出手段と、前記項目数算出手段が算出したセルの個数を項目の数として音声合成により読み上げて出力し、前記要素数算出手段が算出したセルの個数を要素の数として音声合成により読み上げて出力する全体出力手段と、前記判定手段が項目を含むセルとして判定した全てのセルに含まれる文章データを音声合成により読み上げて出力する項目出力手段と、前記判定手段が要素を含むセルとして判定したセルに含まれる文章データを音声合成により読み上げて出力する要素出力手段と、を含むことを特徴とする文章データ読み上げ装置である。
【００１４】
本発明は、上記に記載の発明において、前記表検出手段が検出する表情報に、統合されたセルが含まれるか否かを判定し、統合されたセルが含まれると判定した場合、前記統合されたセルを分割し、分割元のセルに含まれる項目あるいは要素の内容を、分割した全てのセルの内容とした表情報を出力する統合判定分割手段を備え、前記判定手段は、前記統合判定分割手段が統合されたセルを含まないと判定した場合、前記表検出手段が検出する表情報の各セルが前記項目を含むセルであるか、前記要素を含むセルであるかを判定し、前記統合判定分割手段が統合されたセルを含むと判定した場合、前記統合判定分割手段から出力される表情報の各セルが前記項目を含むセルであるか、前記要素を含むセルであるかを判定することを特徴とする。
【００１５】
本発明は、上記に記載の発明において、ユーザの操作を受けて、前記表形式のセルのうち、前記要素を含むセルの位置を指定する位置情報を入力する要求入力手段を備え、前記要素出力手段は、前記要求入力手段が入力する位置情報に対応するセルに含まれる文章データを音声合成により読み上げて出力することを特徴とする。
【００１６】
本発明は、上記に記載の発明において、前記判定手段は、前記表情報が行及び列に項目がある表であるか、行のみに項目がある表であるか、列のみに項目がある表であるかを判定し、行及び列に項目がある表と判定した場合、前記表情報の各セルが行に対応する前記項目を含むセルであるか、列に対応する前記項目を含むセルか、前記要素を含むセルであるかを判定し、行のみに項目がある表と判定した場合、前記表情報の各セルが行に対応する前記項目を含むセルであるか、前記要素を含むセルであるかを判定し、列のみに項目がある表と判定した場合、前記表情報の各セルが列に対応する前記項目を含むセルであるか、前記要素を含むセルであるかを判定することを特徴とする。
【００１７】
本発明は、入力される文章データを音声合成により読み上げて出力する文章データ読み上げ装置のコンピュータを、１以上の行及び１以上の列からなる表内におけるセルの位置と、前記セルに含まれる項目、あるいは、前記セルに含まれる前記項目の要素との対応付けを示す表情報を含む文章データを入力する入力手段と、前記入力手段が入力する文章データから前記表情報を検出する表検出手段と、前記表検出手段が検出する表情報の各セルが前記項目を含むセルであるか、前記要素を含むセルであるかを判定する判定手段と、前記判定手段が項目を含むセルとして判定したセルの個数を算出する項目数算出手段と、前記判定手段が要素を含むセルとして判定したセルの個数を算出する要素数算出手段と、前記項目数算出手段が算出したセルの個数を項目の数として音声合成により読み上げて出力し、前記要素数算出手段が算出したセルの個数を要素の数として音声合成により読み上げて出力する全体出力手段と、前記判定手段が項目を含むセルとして判定した全てのセルに含まれる文章データを音声合成により読み上げて出力する項目出力手段と、前記判定手段が要素を含むセルとして判定したセルに含まれる文章データを音声合成により読み上げて出力する要素出力手段と、として機能させるためのコンピュータプログラムである。
【発明の効果】
【００１８】
この発明によれば、文書データ読み上げ装置は、１以上の行及び１以上の列からなる表内におけるセルの位置と、セルに含まれる項目、あるいは、セルに含まれる項目の要素との対応付けを示す表情報を含む文章データを入力する。入力する文章データから表情報を検出し、検出する表情報の各セルが項目を含むセルであるか、要素を含むセルであるかを判定する。項目を含むセルとして判定したセルの個数を算出し、要素を含むセルとして判定したセルの個数を算出し、項目を含むセルとして算出したセルの個数を項目の数として音声合成により読み上げて出力し、要素を含むセルとして算出したセルの個数を要素の数として音声合成により読み上げて出力する。また、項目を含むセルとして判定した全てのセルに含まれる文章データを音声合成により読み上げて出力し、要素を含むセルとして判定したセルに含まれる文章データを音声合成により読み上げて出力する構成とした。これにより、最初に、表形式の文書データの全体的な表形式の構成が読み上げられ、さらに、項目ごとの内容が読み上げられるため、視覚の利用が困難な状況下において、表の全体像や、項目の要約を理解させることができ、その後で、要素を含むセルを指定して読み上げさせることが可能となる。
【００１９】
また、この発明によれば、文書データ読み上げ装置は、検出する表情報に、統合されたセルが含まれるか否かを判定し、統合されたセルが含まれると判定した場合、統合されたセルを分割し、分割元のセルに含まれる項目あるいは要素の内容を、分割した全てのセルの内容とした表情報を出力する。また、統合されたセルを含まないと判定した場合、検出する表情報の各セルが項目を含むセルであるか、要素を含むセルであるかを判定し、統合されたセルを含むと判定した場合、出力される表情報の各セルが項目を含むセルであるか、要素を含むセルであるかを判定する構成とした。これにより、複数行あるいは複数列が統合されている表形式の文書データであっても、統合されているセルを分割することにより、視覚の利用が困難な状況下においても、統一された表現で表形式の文書データの全体像を表すことが可能となり、視覚の利用が困難な状況下において、表形式の理解を容易にすることが可能となる。
【００２０】
また、この発明によれば、文書データ読み上げ装置は、ユーザの操作を受けて、表形式のセルのうち、要素を含むセルの位置を指定する位置情報を入力し、入力する位置情報に対応するセルに含まれる文章データを音声合成により読み上げて出力する構成とした。これにより、ユーザは、表形式の全体像を理解した後に、個別に要素を含むセルを位置情報により特定して、読み上げさせることが可能となる。
【００２１】
また、この発明によれば、文書データ読み上げ装置は、表情報が行及び列に項目がある表であるか、行のみに項目がある表であるか、列のみに項目がある表であるかを判定し、行及び列に項目がある表と判定した場合、表情報の各セルが行に対応する項目を含むセルであるか、列に対応する項目を含むセルか、要素を含むセルであるかを判定し、行のみに項目がある表と判定した場合、表情報の各セルが行に対応する項目を含むセルであるか、要素を含むセルであるかを判定し、列のみに項目がある表と判定した場合、表情報の各セルが列に対応する項目を含むセルであるか、要素を含むセルであるかを判定する構成とした。これにより、行及び列からなる表以外、すなわち行のみ、あるいは列のみの表形式の文書データであっても、表形式の文書データの全体的な表形式の構成を読み上げさせ、さらに、項目ごとの内容が読み上げさせることが可能となり、視覚の利用が困難な状況下において、表形式の理解を容易にすることが可能となる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の一実施形態を図面を参照して説明する。
図１は、本実施形態による文書データ読み上げ装置１の内部構成を示す概略ブロック図である。入力部１０は、項目の情報と当該項目に対応する１つ以上の要素の情報からなる表形式を含む文書データを入力する。ここで、以下の説明では、表形式の各情報をセルと記載し、項目の情報を含むセルを、項目を含むセル、要素の情報を含むセルを、要素を含むセルと記載する。表検出部１２は、入力部１０から入力される文書データの中から表形式の部分の文書データを検出する。ここで、表形式の検出は、例えば、ウェブサイトで公開されている文書データであって、ＨＴＭＬ（Hyper Text Markup Language）で記述された文書データの場合、ＨＴＭＬのタグ等から表形式の部分を検出する。また、一般的なワープロソフトなどで作成された文書データの場合には、文章中に存在する罫線の形状（表の最上部の横罫線が存在するか、項目欄の区切罫線が存在するか、最下部の横罫線が存在するか、角の部分の罫線が存在するか等）を解析するといった公知の技術により、文書から表を検出する。
【００２３】
統合判定・分割部１４は、表検出部１２が検出した表形式の部分に、表形式の全体構成に基づいて、複数のセルが統合されたセルが存在するか否かを判定する。また、統合判定・分割部１４によって複数のセルが統合されたセルが存在すると検出した場合、当該セルを分割し、分割した各セルが、分割元のセルの内容を有する表形式の文書データを構成する。なお、表形式の文書データの中で、左上のセルが空欄、斜め線、あるいは斜め線と行と列の項目で構成されている場合、当該左上のセルについては分割を行わない。
【００２４】
また、統合判定・分割部１４は、分割を行う際に、分割元のセルと分割後のセルの対応関係を示した分割対応関係情報を統合情報記憶部３０に記録する。
【００２５】
解析部１８は、判定手段１８ａと、項目数算出手段１８ｂと、要素数算出手段１８ｃとを備えており、統合判定・分割部１４が統合されたセルが存在しないと判定した場合、統合判定・分割部１４から入力される表形式の部分の文書データに基づいて、統合判定・分割部１４が統合されたセルが存在する判定した場合、統合判定・分割部１４が分割した後の表形式の文書データに基づいて表形式の解析を行う。
【００２６】
解析部１８において、判定手段１８ａは、入力される表形式の文書データの左上のセルが空欄、斜め線、または斜め線と行と列の項目で構成されているか否かに基づいて、左上のセルが空欄、斜め線、または斜め線と行と列の項目で構成されている場合、表形式の文書データが、行及び列で構成される表形式の文書データであると判定し、それ以外の場合、行のみ、あるいは列のみで構成されている表形式の文書データであるとして判定する。
【００２７】
また、判定手段１８ａは、行のみ、あるいは列のみで構成される表形式の文書データと判定した場合、どこまでが項目を含むセルで、どこからが要素を含むセルであるかを判定し、項目を含むセルと、要素を含むセルを特定する。また、判定手段１８ａは、入力される表形式の文書データとともに、項目を含むセルと、要素を含むセルとを特定した情報をデータ記憶部３２に記録する。
【００２８】
項目数算出手段１８ｂは、判定手段１８ａが項目を含むセルであると判定したセルの個数をカウントして出力する。このとき、行と列から構成される表の場合には、左上のセルは、空欄、斜め線、または斜め線と行と列の項目を含むため、左上のセルは除いてカウントする。
【００２９】
要素数算出手段１８ｃは、判定手段１８ａが要素を含むセルであると判定したセルの個数をカウントして出力する。当該カウントは、文書データが行と列からなる表形式の文書データの場合、行と列の個数を乗算することによって算出するようにしてもよい。このとき、行と列の数は、要素を含むセルについての行と列の数であり、項目を含むセルについては含まない。
【００３０】
全体出力部２４は、判定手段１８ａから表形式の文書データとともに項目を含むセルと、要素を含むセルとを特定した情報が入力される。また、全体出力部２４は、項目を含むセル及び要素を含むセルを特定した情報、項目数算出手段１８ｂが出力する項目を含むセルの個数及び、要素数算出手段１８ｃが出力する要素を含むセルの個数に基づいて、表形式の文書データの全体像を示す読み上げ用データを生成し、生成した読み上げ用データを音声合成により再生、すなわち読み上げて出力する。例えば、「上から○行が行（あるいは横）の項目であり、△個の項目が存在する。左から□列が列（あるいは縦）の項目であり、◇個の項目が存在する。全体のデータ数は◎個である。」等の読み上げ用データを生成し、生成した読み上げ用データを音声合成により再生する。また、項目を含むセルが複数行あるいは複数列に存在する場合には、各項目数については「１行（列）目に○個の項目、２行目に△個の項目…」などのようにそれぞれの項目を示す読み上げ用データを生成する。
【００３１】
項目出力部２６は、判定手段１８ａから表形式の文書データとともに項目を含むセルと、要素を含むセルとを特定した情報が入力され、項目を含むセルの内容について１から順に番号を付与した読み上げ用データを生成し、生成した読み上げ用データを音声合成により再生する。行と列が存在する場合、「行（あるいは横）にある○個の項目は、１○○、２××、３△△…、列（あるいは縦）にある□個の項目は、１◎◎、２□□、３、◇◇…」等の読み上げ用データを生成し、生成した読み上げ用データを音声合成により再生する。
【００３２】
要求入力部２０は、キーボードなどの入力デバイスが接続され、ユーザの入力デバイスの操作を検出し、検出した操作に基づいて、要素のセルの位置情報を含む個別セル読み上げ指示を入力する。ここで、位置情報とは、行と列から構成される表形式の場合は、行番号と列番号の組み合わせで示されることになる。例えば、ユーザが「１」「Ｅｎｔｅｒ」「３」「Ｅｎｔｅｒ」のようにキーボード入力すると、１行、３列を示す位置情報を入力することになる。また、要求入力部２０は、特定のキーボードのキーがユーザによって操作された場合には、全体を読み上げる指示を示す全体読み上げ指示情報を入力する。
【００３３】
要素出力部２２は、要求入力部２０から入力される指示情報に基づいてデータ記憶部３２から文書データを読み出し、読み出した文書データの該当するセルの文書データから読み上げ用データを生成し、生成した読み上げ用データを音声合成により再生する。このとき、個別セル読み上げ指示情報が入力される場合であって、行番号と列番号からなる位置情報を含む場合、当該位置情報に対応するセルに含まれる文書データに基づいて読み上げ用データが生成される。行のみあるいは列のみの表形式の場合には、位置情報としては、１つの番号しか含まれないため、行のみの表形式の場合は、該当する行番号を左から右へ読み上げる読み上げ用データが生成され、列のみの表形式の場合は、該当する列番号を上から下へ読み上げる読み上げ用データが生成される。
【００３４】
また、要素出力部２２に全体読み上げ指示情報が入力される場合であって、行と列からなる表形式の文書データの場合には、項目の行及び列を除いた最も左上のセルを基点として行ごとに左から右及び上から下へ連続的に読み上げるための読み上げ用データが生成されることになる。
【００３５】
また、要素出力部２２に全体読み上げ指示情報が入力される場合であって、行のみから構成される表形式の文書データの場合、要素出力部２２は、項目の行を除いた次の行から順に行ごとに左から右へ順に読み上げさせるための読み上げ用データを生成し、列のみから構成される表形式の文書データの場合、要素出力部２２は、項目の列を除いた次の行を列ごとに上から下へ読み上げさせるための読み上げ用データを生成するようにしてもよい。
【００３６】
なお、行と列の指定の順は、上記のように行と列の順に指定するようにしてもよいし、列と行の順に指定するようにしてもよい。
【００３７】
また、読み上げ用データを生成する場合に、要素を含むセルの文書データのみを含むように生成してもよいし、読み上げる要素を含むセルに対応する項目を含むセルの文書データを含む読み上げ用データを生成してもよい。
【００３８】
また、要求入力部２０から入力する指示情報に統合判定・分割部１４で分割されたセルを個別に読み上げるか、統合して読み上げるかを指定する情報を含めることもでき、統合して読み上げることを指定する情報が含まれる場合、要素出力部２２は、統合情報記憶部３０に記憶される分割元のセルと分割後のセルの分割対応関係情報を読み出し、読み出した分割対応関係情報に基づいてまとめて１つの要素として読み上げさせる読み上げ用データを生成することもできる。
【００３９】
また、セルに含まれる文書データが数値の場合、要求入力部２０から入力する指示情報に各行あるいは各列に対して平均、最大値を有する項目、最小値を有する項目を読み上げさせることを指定する情報を含めるようにすることもできる。
【００４０】
次に、図２から図５を参照し、ＨＴＭＬで記述された表形式の文書データにおいて、複数のセルが統合されたセルを分割する手順について説明する。
【００４１】
図２（ａ）は、ＨＴＭＬで記述された表形式の文書データを示した図であり、図２（ｂ）は、図２（ａ）の文書データをウェブブラウザ等で表示した場合の表の構成を示した図である。図２（ａ）に示されるように、統合されているセルか否かは、ＨＴＭＬの＜ＴＤ＞属性に含まれる「Ｃｏｌｓｐａｎ」の値に基づいて、列の結合の有無及び結合数を判定することが可能である。同様に、＜ＴＤ＞属性に「Ｒｏｗｓｐａｎ」が含まれている場合には、行の結合の有無を判定することができ、さらに「Ｒｏｗｓｐａｎ」の値に基づいて結合数を判定することが可能である。
【００４２】
次に、図３のフローチャートを参照しつつ、上記の統合判定・分割部１４によって図４（ａ）に示される複数列の統合を含む表形式の文書データを図５（ａ）に示す表形式の文書データのように分割する手順について説明する。
【００４３】
まず、最初に、統合判定・分割部１４が表検出部１２が検出して入力する表形式の文書データにおいて先頭から順に１組の＜ＴＲ＞と＜／ＴＲ＞の箇所を検出する（ステップＳａ１）。次に、統合判定・分割部１４は、検出した＜ＴＲ＞と＜／ＴＲ＞の間において、先頭から順に１組の＜ＴＤ＞と＜／ＴＤ＞の箇所を検出する（ステップＳａ２）。そして、統合判定・分割部１４は、検出した＜ＴＤ＞にＣｏｌｓｐａｎが指定されている、すなわちＨＴＭＬの記述が、「＜ＴＤ  Ｃｏｌｓｐａｎ＝Ｘ＞」となっているか否かを判定する（ステップＳａ３）。Ｃｏｌｓｐａｎが指定されていない場合、統合判定・分割部１４は、次の＜ＴＤ＞と＜／ＴＤ＞の組み合わせが存在するか否かを判定し、存在する場合ステップＳａ２以降の処理を繰り返す（第２ループ）。
【００４４】
一方、統合判定・分割部１４は、Ｃｏｌｓｐａｎが指定されている場合、当該列が統合されていると判定する。例えば、図４（ａ）の例では、最初に、２行目の１列目のセルについて「＜ＴＤ  Ｃｏｌｓｐａｎ＝２＞え＜／ＴＤ＞」となっているため、当該列が統合されていると判定する。次に、統合判定・分割部１４は、変数ｎに、Ｃｏｌｓｐａｎ＝Ｘの「Ｘ」に示される値を設定し、変数Ｖａｌｕｅに＜ＴＤ＞と＜／ＴＤ＞の間に存在する文書データを設定し、「Ｃｏｌｓｐａｎ＝Ｘ」の記述を削除する。例えば、図４（ａ）の２行目の１列目のセルの場合、変数ｎに「２」を設定し、変数Ｖａｌｕｅには「え」を設定する。そして、「＜ＴＤ  Ｃｏｌｓｐａｎ＝２＞え＜／ＴＤ＞」から「Ｃｏｌｓｐａｎ＝２」の箇所を削除して「＜ＴＤ＞え＜／ＴＤ＞」とする（ステップＳａ４）。
【００４５】
そして、ｎが１より大きい間（ステップＳａ５）は、「Ｃｏｌｓｐａｎ＝Ｘ」の記述を削除した＜ＴＤ＞と＜／ＴＤ＞の組み合わせの後に、「＜ＴＤ＞Ｖａｌｕｅ＜／ＴＤ＞」の記述を付加し（ステップＳａ６）、変数ｎにｎ−１の値を代入する（ステップＳａ７）。ｎが１以下となった場合、次の＜ＴＤ＞と＜／ＴＤ＞の組み合わせが存在するか否かを判定し、存在する場合、ステップＳａ２以降の処理を繰り返す（第２ループ）。
【００４６】
次の＜ＴＤ＞と＜／ＴＤ＞の組み合わせが存在しない場合、統合判定・分割部１４は、次の＜ＴＲ＞と＜／ＴＲ＞の組み合わせが存在するか否かを判定し、存在する場合はステップＳａ１以降の処理を繰り返す（第１ループ）。一方、存在しない場合には、処理を終了する。
【００４７】
上記の処理を繰り返すことにより、図４（ａ）に示された文書データは、図５（ａ）のように書き換えられることになる。当該図５（ａ）のＨＴＭＬの文書データをウェブブラウザ等で表示すると、図５（ｂ）のように、図４（ｂ）において統合されていた２行１列目と、３行目の統合されたセルが、分割された状態で表示されることになる。
【００４８】
上記の処理において、Ｃｏｌｓｐａｎではなく、Ｒｏｗｓｐａｎについて行うと、行についての統合を判定できる。但し、Ｒｏｗｓｐａｎについては、分割を行うと次の＜ＴＲ＞と＜／ＴＲ＞の間に分割するセルを挿入する手順が加わることになる。
【００４９】
次に、図６から図１０を参照して、文書データ読み上げ装置１に係る動作について説明する。最初に、入力部１０が図７に示す表形式を含む文書データを入力する（ステップＳｂ１）。表検出部１２は、入力部１０から入力される文書データから表形式の箇所を検出する（ステップＳｂ２）。統合判定・分割部１４は、表形式の文書データの中で複数行、あるいは複数列が統合されているセルが存在するか否かを判定する（ステップＳｂ３）。統合判定・分割部１４は、統合されているセルが存在する場合には、分割を行う。ＨＴＭＬの文書の場合には、上述した分割の手順により分割を行うことになる。当該分割により、図７に示す表形式の文書データの場合、図８に示す表形式の文書データのように分割されることなる。表形式を含む文書データを分割した後に、統合判定・分割部１４は、分割後の文書データを解析部１８に入力するとともに、分割元のセルと分割したセルの対応関係を示す分割対応関係を統合情報記憶部３０に記録する（ステップＳｂ４）。なお、上述したように、図７の表形式の文書データでは、左上のセルが斜め線と行と列の項目を含むため、当該セルについては分割を行わない。
【００５０】
次に、解析部１８の判定手段１８ａは、統合判定・分割部１４から入力される表形式の文書データの左上のセルが空欄、斜め線、あるいは斜め線と行と列の項目であるか否かを判定する（ステップＳｂ５）。判定手段１８ａが、左上のセルが空欄、斜め線、あるいは斜め線と行と列の項目であると判定した場合、当該左上のセルが複数行あるいは複数列が統合されたセルであるか否かを判定する（ステップＳｂ６）。判定手段１８ａが、左上のセルが複数行あるいは複数列が統合されたセルでないと判定した場合、１行１列の表形式の文章データとして項目を含むセルと、要素を含むセルとを特定する。そして、判定手段１８ａは、項目を含むセルを特定した情報については項目数算出手段１８ｂに入力し、要素を含むセルを特定した情報については要素数算出手段１８ｃに入力し、項目を含むセル及び要素を含むセルを特定した情報及び文書データを全体出力部２４及び項目出力部２６に入力する（ステップＳｂ７）。ここで、特定した情報とは、各セルの位置を示す位置情報に項目あるいは要素を示す識別情報が対応付けられた情報等である。
【００５１】
一方、ステップＳｂ６において、判定手段１８ａが、左上のセルが複数行あるいは複数列が統合されたセルであると判定した場合、上から何行が行の項目であり、左から何列が列の項目であるかを特定して、項目を含むセルを特定する。そして、判定手段１８ａは、項目を含むセルを特定した情報については項目数算出手段１８ｂに入力し、要素を含むセルを特定した情報については要素数算出手段１８ｃに入力し、項目を含むセル及び要素を含むセルを特定した情報及び文書データを全体出力部２４及び項目出力部２６に入力する（ステップＳｂ８）。
【００５２】
一方、ステップＳｂ５において、判定手段１８ａが、左上のセルが空欄、斜め線、あるいは斜め線と行と列の項目でないと判定した場合、例えば、表検出部１２によって検出された表形式の文書データが図９及び図１０に示す文書データの場合には、判定手段１８ａは、表形式の文書データが、行のみ、あるいは列のみのいずれであるかを判定する（ステップＳｂ９）。
【００５３】
ここで、表形式の文書データが、行のみであるか、列のみであるかを判定するには、１行目のセルの内容と２行目以降のセルの内容というように縦のセルの内容を順に辿り、１列目、２列目、３列目のセルの内容を比較した場合に、データ形式が１行目のセルの内容と、２行目以降のセルの内容、あるいは１行目及び２行目のセルの内容と３行目以降のセルの内容というように２分される傾向を有する場合には、列には項目が存在せず、行のみの表形式の文書データであると判定する。
【００５４】
一方、縦のセルの内容を辿っても、データ形式が２分される傾向を検出できない場合、１列目のセルの内容と２列目以降のセルの内容というように横のセルの内容を順に辿り、１行目、２行目、３行目のセルの内容を比較して、縦のセルを辿った場合と同様に、２分される傾向を有する場合には、行には項目が存在せず、列のみの表形式の文書データであると判定する。
【００５５】
上記の処理により、行あるいは列のみからなる表形式の場合には、個々のセルの行と列の項目に基づいても、表によって表現された要素の情報の理解に繋がらない文書データの場合、例えば、１列目に各月を示し、２列目以降、各月の移り変わりを示すような、値の増減や変化を表すことによって要素の情報を明瞭化している表形式の文書データの場合であっても、行、あるいは列のみからなる表形式であることを特定することができる。
【００５６】
例えば、図９に示す表形式の文書データに対して適用すると、縦のセルの内容を辿っても、データ形式が２分される傾向を検出することができず、横のセルの内容を順に辿ると、１行目及び２行目の組み合わせは、区名と町名であり、３行目のセルは、場所の名称であり、２分されるため、列のみの表形式の文書データであると判定される。
【００５７】
また、図１０に示す表形式の文書データに対して適用すると、縦のセルの内容を辿ると、１列目は曜日であるのに対して、２列目以降は、ごみの種別であるため、行のみの表形式の文書データであると判定される。
【００５８】
なお、上記のデータ形式の判定は、セルに含まれる項目が自然言語と数字であるか否かを判定することによって行われ、さらに、自然言語の間のデータ形式については、予め内部に記憶される辞書データに基づいて、その言語が属するカテゴリの種類、例えば車の名前やゴミの種類などの形式を判定することによって行われる。
【００５９】
判定手段１８ａが、表形式の文書データが行のみであると判定した場合、上述した判定において、２分された行を基点として、項目を含むセルと、要素を含むセルとを特定する。そして、判定手段１８ａは、項目を含むセルを特定した情報については項目数算出手段１８ｂに入力し、要素を含むセルを特定した情報については要素数算出手段１８ｃに入力し、項目を含むセル及び要素を含むセルを特定した情報及び文書データを全体出力部２４及び項目出力部２６に入力する（ステップＳｂ１０）。一方、判定手段１８ａが、表形式の文書データが列のみであると判定した場合、上述した判定において、２分された列を基点として、項目を含むセルと、要素を含むセルとを特定する。そして、判定手段１８ａは、項目を含むセルを特定した情報については項目数算出手段１８ｂに入力し、要素を含むセルを特定した情報については要素数算出手段１８ｃに入力し、項目を含むセル及び要素を含むセルを特定した情報及び文書データを全体出力部２４及び項目出力部２６に入力する（ステップＳｂ１１）。
【００６０】
そして、判定手段１８ａは、ステップＳｂ７、ステップＳｂ８、ステップＳｂ１０及びステップＳｂ１１において項目を含むセルと、要素を含むセルとを特定した際に、項目を含むセルと、要素を含むセルとを特定した情報と文書データとをデータ記憶部３２に記録する（ステップＳｂ１２）。
【００６１】
次に、項目数算出手段１８ｂは、判定手段１８ａから入力される項目を含むセルを特定した情報に基づいて、項目を含むセルの個数のカウントを行い、カウントした値を全体出力部２４に出力する（ステップＳｂ１３）。また、要素数算出手段１８ｃは、判定手段１８ａから入力される要素を含むセルを特定した情報に基づいて、要素を含むセルの個数のカウントを行い、カウントした値を全体出力部２４に出力する（ステップＳｂ１４）。
【００６２】
全体出力部２４は、判定手段１８ａから入力されるセルが項目を含むかあるいは要素を含むかを特定した情報及び文書データと、項目数算出手段１８ｂから入力される項目を含むセルの個数の値と、要素数算出手段１８ｃから入力される要素を含むセルの個数の値とに基づいて、表形式の文書データの全体を示す読み上げ用データを生成し（ステップＳｂ１５）、生成した読み上げ用データを音声合成により再生する（ステップＳｂ１６）。また、項目出力部２６は、判定手段１８ａから入力される特定した情報及び文書データに基づいて、項目ごとの内容を示す読み上げ用データを生成し、生成した読み上げ用データを音声合成により再生する（ステップＳｂ１７）。全体出力部２４及び項目出力部２６から読み上げ用データが音声合成により再生された後、ユーザは、要求入力部２０に接続される入力デバイスを操作し、当該操作を受けた要求入力部２０は、要素を含むセルを読み上げさせるための指示情報を要素出力部２２に入力し、要素出力部２２は、入力される指示情報に基づいて、データ記憶部３２から文書データを読み出し、読み出した文書データから読み上げ用データを生成し、生成した読み上げ用データを音声合成により再生する（ステップＳｂ１８）。
【００６３】
ここで、ステップＳｂ５から、ステップＳｂ１２までの処理を、図８に示す分割後の表形式の文書データを例として以下に説明する。まず、判定手段１８ａは、図８の文書データに基づいて、左上のセルが斜め線と行と列の項目であると判定し、さらに左上のセルが複数の行が統合されたセルであることを判定する。すなわち、当該表形式の文書データは、左上のセルを除いて、上から２行目まで、及び左から１列目までが項目を含むセルであり、３行目以降及び２列目以降のセルは、要素を含むセルであると特定する。そして、項目数算出手段１８ｂは、項目を含むセルをカウントし、その個数が、行が４個、列が１０個として出力する。また、要素数算出手段１８ｃは、要素を含むセルの個数をカウントし、その数が２０個であるとして算出する。
【００６４】
全体出力部２４は、判定手段１８ａから入力される項目を含むか要素を含むかを特定した情報及び文書データ、及び項目数算出手段１８ｂから入力される項目を含むセルの個数、及び要素数算出手段１８ｃから入力される要素を含むセルの個数に基づいて、「上から２行に、横の項目として地区が５つ記載されています。左から１列に、縦の項目として曜日が４つ記載されています。全体として４行５列、計２０のデータがあります。」という読み上げ用データを生成する。このとき、左上のセルの行及び列の項目を利用して、縦及び横の項目を説明する文章データも読み上げ用データに含まれる。そして、全体出力部２４は、生成した読み上げ用データを音声合成により再生する。
【００６５】
項目出力部２６は、セルが項目を含むか要素を含むかを特定した情報及び文書データに基づいて、「横に記載されている地区５つは、１、東区、Ａ町、２、東区、Ｂ町、３、西区、Ｃ町、４、西区、Ｄ町、５、西区、Ｅ町、です。縦に記載されている曜日４つは、１、月曜日、２、水曜日、３、木曜日、４、金曜日です。」という読み上げ用文章データを生成する。このとき、左上のセルの行及び列の項目を利用して、縦及び横の項目を説明する文章データも読み上げ用データに含まれる。そして、項目出力部２６は、生成した読み上げ用データを音声合成により再生する。
【００６６】
また、ステップＳｂ１３の処理について、図８の文書データを例として以下に説明する。最初に、必要な要素のみを読み上げさせる場合について説明する。予め要求入力部２０には、列、行の順に入力されることが予め設定されており、また、要素出力部２２は、指定された要素を含むセルの文章データと、当該要素に対応する項目の文書データの列と行を読み出す設定がされているものとする。
【００６７】
まず、ユーザが入力デバイスを操作して、「３」「Ｅｎｔｅｒ」「２」「Ｅｎｔｅｒ」を入力すると要求入力部２０は、３列２行目の位置情報を含む個別セル読み上げ指示情報を要素出力部２２に入力する。要素出力部２２は、個別セル読み上げ指示情報が入力されると当該指示情報に含まれる３列２行目を示す位置情報に基づいて、データ記憶部３２から３列２行目のセルに含まれる文書データ「可燃ごみ」を読み出し、３列目の項目のセルに含まれる文書データ「西区」「Ｃ町」を読み出し、２行目の項目のセルに含まれる文書データ「水曜日」を読み出し、「西区、Ｃ町の水曜日は、可燃ごみ」という読み上げ用データを生成し、生成した読み上げデータを音声合成により再生する。
【００６８】
なお、要素出力部２２が「可燃ごみ」、「西区」、「Ｃ町」、「水曜日」という文書データから「西区、Ｃ町の水曜日は、可燃ごみ」という読み上げ用データを生成する場合に、これらの文書データに含まれない「〜の」や「〜は」という助詞は、予め項目及びセルの関係ごとに文書データを接続する際に用いられる助詞の情報が内部に記憶されており、要素出力部２２が記憶している助詞の情報を読み出し、項目及びセルの関係に基づいて文書データ間に追加して上記の文書データ「西区、Ｃ町の水曜日は、可燃ごみ」を生成する。
【００６９】
上記の例とは逆に、予め要求入力部２０には、行と列の順に入力されることが予め設定されており、また、要素出力部２２は、指定された要素を含むセルの文章データと、当該要素に対応する項目の文書データを行と列の順に読み出す設定がされているものとする。そして、ユーザが入力デバイスを操作して、「３」「Ｅｎｔｅｒ」「３」「Ｅｎｔｅｒ」を入力すると要求入力部２０は、３行３列目の位置情報を含む個別セル読み上げ指示情報を要素出力部２２に入力する。要素出力部２２は、個別セル読み上げ指示情報が入力されると当該指示情報に含まれる３行３列目を示す位置情報に基づいて、データ記憶部３２から３行３列目のセルに含まれる文書データ「瓶・缶・ペットボトル」を読み出し、３行目の項目のセルに含まれる文書データ「木曜日」を読み出し、３列目の項目のセルに含まれる文書データ「西区」「Ｃ町」を読み出し、「木曜日、西区、Ｃ町は、瓶・缶・ペットボトル」という読み上げ用データを生成し、生成した読み上げデータを音声合成により再生する。
【００７０】
次に、表全体を読み上げさせる場合について説明する。ユーザが入力デバイスを操作して、全体読み上げを指定する情報が入力されると、要求入力部２０は、全体読み上げ指示情報を要素出力部２２に入力する。要素出力部２２は、データ記憶部３２から文書データを読み出し、「東区、Ａ町の月曜日は、可燃ごみ、東区、Ｂ町の月曜日は、可燃ごみ、西区、Ｃ町の月曜日は不燃ごみ、…」というように最初の行から順に左から右へ読み上げる読み上げ用データを生成し、生成した読み上げ用データを音声合成により再生する。
【００７１】
また、全体読み上げ指示情報に分割されたセルをまとめて読み上げる指示が含まれる場合には、要素出力部２２は、統合情報記憶部３０を参照し、図７に示す分割前の表形式の文書データの構成に基づいて、「東区、Ａ町、Ｂ町ともに月曜日は、可燃ごみ、西区、Ｃ町、Ｄ町ともに月曜日は不燃ごみ、西区、Ｅ町の月曜日は可燃ごみ、東区、Ａ町の水曜日は不燃ごみ、東区、Ｂ町の水曜日は、瓶・缶・ペットボトル、西区、Ｃ町、Ｄ町ともに、水曜日は可燃ごみ、…」というように最初の行から順に左から右へ読み上げる読み上げ用データを生成し、生成した読み上げ用データを音声合成により再生する。
【００７２】
上記の実施形態の構成により、全体出力部２４によって全体的な表形式の構成が読み上げられ、さらに、項目出力部２６によって、項目ごとの内容が読み上げられるため、視覚の利用が困難な状況下において、本来視覚で捕らえられることが前提とされている表の全体像や、項目の要約を理解させることができ、視覚障害者にとって表形式の文書データの理解を容易にする効果がある。
【００７３】
なお、本発明の入力手段は、入力部１０に対応し、表検出手段は、表検出部１２に対応する。また、本発明の判定手段、項目数算出手段、要素数算出手段は、解析部１８の判定手段１８ａ、項目数算出手段１８ｂ、要素数算出手段１８ｃに対応する。また、本発明の統合判定分割手段は、統合判定・分割部１４に対応する。また、本発明の、要求入力手段は、要求入力部２０、要素出力手段は、要素出力部２２、全体出力手段は、全体出力部２４、項目出力手段は、項目出力部２６に対応する。
【００７４】
上述の文書データ読み上げ装置１は内部に、コンピュータシステムを有している。そして、上述した統合されたセルの分割処理や、表形式の文書データを音声合成により再生する処理は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【図面の簡単な説明】
【００７５】
【図１】本実施形態に係る文書データ読み上げ装置の内部構成を示すブロック図である。
【図２】同実施形態に係るＨＴＭＬで記述された表形式の文書データを示した図である。
【図３】同実施形態に係るＨＴＭＬで記述された表形式の文書データの統合されたセルの分割処理を示したフローチャートである。
【図４】同実施形態に係るＨＴＭＬで記述された表形式の文書データの分割前の状態を示した図である。
【図５】同実施形態に係るＨＴＭＬで記述された表形式の文書データの分割後の状態を示した図である。
【図６】同実施形態に係る表形式を含む文書データの読み上げ処理を示したフローチャートである。
【図７】同実施形態に係る文書データ読み上げ装置に入力される表形式の文書データ（分割前）を示した図である。
【図８】同実施形態に係る文書データ読み上げ装置に入力される表形式の文書データ（分割後）を示した図である。
【図９】同実施形態に係る列のみからなる表形式の文書データを示した図である。
【図１０】同実施形態に係る行のみからなる表形式の文書データを示した図である。
【符号の説明】
【００７６】
１    文書データ読み上げ装置
１０  入力部
１２  表検出部
１４  統合判定・分割部
１８  解析部
１８ａ  判定手段
１８ｂ  項目数算出手段
１８ｃ  要素数算出手段
２０  要求入力部
２２  要素出力部
２４  全体出力部
２６  項目出力部
３０  統合情報記憶部
３２  データ記憶部
【図１】
0004503520.tif 000002
【図２】
0004503520.tif 000003
【図３】
0004503520.tif 000004
【図４】
0004503520.tif 000005
【図５】
0004503520.tif 000006
【図６】
0004503520.tif 000007
【図７】
0004503520.tif 000008
【図８】
0004503520.tif 000009
【図９】
0004503520.tif 000010
【図１０】
0004503520.tif 000011