(57)【要約】【課題】スクリーンリーダの出力音声によってドキュメントの内容を理解する難易度を、精度よく評価する。【解決手段】スクリーンリーダの出力音声によってドキュメントの内容を理解する難易度を、ドキュメントのページ毎に評価するシステムであって、ページの特徴を示す特徴量に基づいて当該ページの難易度の評価値を算出する評価関数を記録する第１関数記録部と、評価関数によって算出した評価値と利用者による困難性の評価とが異なる少なくとも１つのページのそれぞれについて、利用者による困難性の評価値および当該ページの特徴量を利用者から収集する収集部と、利用者から収集した特徴量および評価値に基づいて、第１関数記録部に記録された評価関数を、利用者の評価により近い評価値を出力するように更新する第１更新部とを備えるシステム。【選択図】図２
2007249755.tif 000002
【特許請求の範囲】
【請求項１】
スクリーンリーダの出力音声によってドキュメントの内容を理解する難易度を、ドキュメントのページ毎に評価するシステムであって、
ページの特徴を示す特徴量に基づいて当該ページの前記難易度の評価値を算出する評価関数を記録する第１関数記録部と、
前記評価関数によって算出した評価値と利用者による困難性の評価とが異なる少なくとも１つのページのそれぞれについて、利用者による困難性の評価値および当該ページの特徴量を利用者から収集する収集部と、
利用者から収集した前記特徴量および前記評価値に基づいて、前記第１関数記録部に記録された前記評価関数を、利用者の評価により近い評価値を出力するように更新する第１更新部と
を備えるシステム。
【請求項２】
前記第１関数記録部は、スクリーンリーダの種類毎に、当該種類のスクリーンリーダの出力音声によって内容を理解する難易度の評価値を算出するための前記評価関数を記録し、
前記収集部は、複数の利用者のそれぞれから、当該利用者によって使用されるスクリーンリーダの種類に対応する前記評価関数によって算出した評価値と当該利用者による困難性の評価とが異なるページについて、当該利用者による困難性の評価値および当該ページの特徴量を当該スクリーンリーダの種類に対応付けて収集し、
前記第１更新部は、スクリーンリーダの種類毎に、当該種類に対応付けて収集した評価値および特徴量に基づき、当該種類に対応する前記評価関数を更新する
請求項１に記載のシステム。
【請求項３】
前記第１関数記録部は、前記ドキュメントを作成する作成システムの種類毎に、当該種類のシステムによって生成されたドキュメントをスクリーンリーダの出力音声によって内容を理解する難易度の評価値を算出するための前記評価関数を記録し、
前記収集部は、ドキュメントを作成した作成システムの種類に対応する前記評価関数によって算出した評価値と利用者による困難性の評価とが異なるページについて、当該利用者による困難性の評価値および当該ページの特徴量を当該作成システムの種類に対応付けて収集し、
前記第１更新部は、作成システムの種類毎に、当該種類に対応付けて収集した評価値および特徴量に基づき、当該種類に対応する前記評価関数を更新する
請求項２に記載のシステム。
【請求項４】
前記収集部によって収集された評価値に基づいて、それぞれの種類のスクリーンリーダの性能の高さを評価する性能評価部を更に備える請求項２に記載のシステム。
【請求項５】
前記システムは、
利用者により指定されたページに含まれる複数の表示オブジェクトを、予め定められた順序で走査した軌跡に基づいて、当該ページの特徴量を算出する特徴量算出部と、
算出した特徴量を前記評価関数に与えることによって当該ページの評価値を算出して利用者に対し出力する難易度評価部と
を更に備え、
前記収集部は、前記難易度評価部によって算出された評価値と利用者による困難性の評価とが異なることを条件に、利用者による困難性の評価値を利用者から収集する
請求項１に記載のシステム。
【請求項６】
前記特徴量算出部は、前記指定されたページに含まれる複数の表示オブジェクトを、前記複数の表示オブジェクトを重ね合わせて表示する場合の表示優先順序であるＺオーダーによって走査した軌跡に基づいて、当該ページの特徴量を算出する
請求項５に記載のシステム。
【請求項７】
前記特徴量算出部は、それぞれの前記表示オブジェクトについて、当該表示オブジェクトと当該表示オブジェクトの次に走査する他の表示オブジェクトの間の距離を算出し、算出された距離の合計または平均がより大きい場合に、当該合計または平均がより小さい場合と比較して高い特徴量を算出する
請求項５に記載のシステム。
【請求項８】
前記特徴量算出部は、それぞれの前記表示オブジェクトについて、当該表示オブジェクトと当該表示オブジェクトの次に走査する他の表示オブジェクトとを結ぶ直線と、当該他の表示オブジェクトと当該他の表示オブジェクトの次に走査する更に他の表示オブジェクトとを結ぶ直線とがなす角度を算出し、算出された角度の合計または平均がより大きい場合に、当該合計または平均がより小さい場合と比較して高い特徴量を算出する
請求項５に記載のシステム。
【請求項９】
前記第１関数記録部から取得した前記評価関数を記録する第２関数記録部と、
利用者により指定されたページの特徴量を算出する特徴量算出部と、
算出した特徴量を前記評価関数に与えることによって当該ページの評価値を算出して前記利用者に対し出力する難易度評価部と、
前記難易度評価部によって算出された評価値と利用者による困難性の評価とが異なることを条件に、利用者が評価した困難性の評価値の入力を受け付ける入力部と、
入力された前記評価値および算出された前記特徴量に基づいて、前記第２関数記録部に記録された評価関数を更新する第２更新部と
を有する複数の利用者端末を、複数の利用者に対応付けて更に備え、
また、前記第１関数記録部、前記収集部、および、前記第１更新部を有するサーバ装置を更に備え、
前記収集部は、前記入力部が入力を受けた評価値、および、前記特徴量算出部が算出した特徴量を、複数の利用者端末のそれぞれから収集し、
前記サーバ装置は、前記第１更新部によって更新された前記評価関数を、前記複数の利用者端末のそれぞれに配信して前記第２関数記録部に記録させる配信部を更に有する
請求項１に記載のシステム。
【請求項１０】
前記配信部は、特徴量を算出するための算出プログラムを前記複数の利用者端末のそれぞれに更に配信し、
既に第１算出プログラムの配信を受けていた状態において、新たに第２算出プログラムの配信を受けたことに応じ、前記第２算出プログラムの配信を受けてから予め定められた基準期間においては、
前記特徴量算出部は、前記第１算出プログラムおよび前記第２算出プログラムのそれぞれによって特徴量を算出し、
前記難易度評価部は、前記第１算出プログラムによって算出した特徴量を前記評価関数に与えることによって当該ページの評価値を算出し、
前記収集部は、算出された当該評価値または前記入力部が入力を受けた評価値、および、前記特徴量算出部が前記第２算出プログラムによって算出した特徴量を収集し、
前記第１更新部は、前記第２算出プログラムに対応する評価関数を、収集した当該評価値および特徴量に基づいて生成して前記第１関数記録部に記録する
請求項９に記載のシステム。
【請求項１１】
それぞれの前記利用者端末は、算出した前記評価値と前記利用者による困難性の評価とが異なる複数のページのそれぞれを、当該ページについて前記入力部が入力を受けた評価値に対応付けて記録するページ記録部を更に有し、
前記基準期間において、
前記特徴量算出部は、前記第２算出プログラムによって、前記ページ記録部に記録されたそれぞれのページについて特徴量を更に算出し、
前記収集部は、前記ページ記録部に記録されたそれぞれのページについて算出された特徴量を、当該ページに対応付けて前記ページ記録部に記録された評価値に対応付けて収集する
請求項１０に記載のシステム。
【請求項１２】
前記基準期間において、
それぞれの前記利用者端末における前記特徴量算出部は、当該利用者端末の計算負荷が予め定められた基準よりも低いことを条件に、前記第２算出プログラムによって、前記ページ記録部に記録されたそれぞれのページについて特徴量を算出する
請求項１１に記載のシステム。
【請求項１３】
ドキュメントを作成または編集する利用者によってページが更新される毎に、更新された当該ページの特徴を示す特徴量を算出する特徴量算出部と、
算出した特徴量を前記評価関数に与えることによって当該ページの評価値を算出して当該利用者に対し出力する難易度評価部と
を更に備える請求項１に記載のシステム。
【請求項１４】
スクリーンリーダの出力音声によってドキュメントの内容を理解する難易度を、ドキュメントのページ毎に評価する方法であって、
ページの特徴を示す特徴量に基づいて当該ページの前記難易度の評価値を算出する評価関数を記録するステップと、
前記評価関数によって算出した評価値と利用者による困難性の評価とが異なる少なくとも１つのページのそれぞれについて、利用者による困難性の評価値および当該ページの特徴量を利用者から収集するステップと、
利用者から収集した前記特徴量および前記評価値に基づいて、記録された前記評価関数を、利用者の評価により近い評価値を出力するように更新するステップと
を備える方法。
【請求項１５】
スクリーンリーダの出力音声によってドキュメントの内容を理解する難易度を、ドキュメントのページ毎に評価するシステムとして、情報処理装置を機能させるプログラムであって、
前記情報処理装置を、
ページの特徴を示す特徴量に基づいて当該ページの前記難易度の評価値を算出する評価関数を記録する第１関数記録部と、
前記評価関数によって算出した評価値と利用者による困難性の評価とが異なる少なくとも１つのページのそれぞれについて、利用者による困難性の評価値および当該ページの特徴量を利用者から収集する収集部と、
利用者から収集した前記特徴量および前記評価値に基づいて、前記第１関数記録部に記録された前記評価関数を、利用者の評価により近い評価値を出力するように更新する第１更新部と
して機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ドキュメントを理解する難易度を評価するシステムおよびその方法に関する。特に、本発明は、スクリーンリーダの出力音声によってドキュメントの内容を理解する難易度を、ドキュメントのページ毎に評価するシステムに関する。
【背景技術】
【０００２】
近年、視覚障害者がテキストデータを音声によって理解するために、スクリーンリーダ（音声読み上げシステム）が用いられている。スクリーンリーダは、ドキュメント内のテキストデータを音声データに変換して利用者に出力する。利用者は、画面を見ることなく音声データを聞くことによってドキュメントの内容を理解できる。しかしながら、ベクトルグラフィックスを構成するドキュメントは、スクリーンリーダを用いたとしてもその内容を理解するのは難しい場合がある。
【０００３】
ベクトルグラフィックスの内容理解に関する技術を以下に示す。まず、従来、ある種のスクリーンリーダは、ページ中の表示オブジェクト（或いはその代替テキスト）をＺオーダーに従って読み上げる（非特許文献１および２を参照。）。Ｚオーダーとは、複数の表示オブジェクトを重ね合わせて表示する場合の表示優先順序である。晴眼者には、表示優先順序がより高い表示オブジェクトは手前側に、表示優先順序がより低い表示オブジェクトは奥側に表示されているように見える。この技術によれば、表示オブジェクトを読み上げる一定の順序を定めることはできるが、Ｚオーダーの順序で読み上げてもページ全体を理解し易いとは限らない。
【０００４】
また、従来、ドキュメントに対して画像処理を行うことにより、ドキュメントの構造を解析する技術が提案されている（特許文献１および２を参照。）。この技術によれば、複雑な構造やグラデーションなどの色情報を用いて表現されたドキュメントを音声データに変換することができる。しかしながら、これらの技術を適用可能とするためにはドキュメントが一定の定型的な構造を有する必要があり、一般的なドキュメントに広く適用することはできない。
【０００５】
また、表示オブジェクトの画面中の表示位置に応じた音場を生成する技術が提案されている（特許文献３を参照。）。この技術は、文字の大きさやフォントなどに応じた音質の音声を、その文字が表示される画面中の相対位置に対応する音響空間上の位置に発生させる。しかしながら、音響によって知覚できる位置情報の解像度は視覚と比較して著しく低く、この技術のみによってグラフィックスの内容を理解するのは難しい場合がある。また、音声以外を用いる技術として、２次元のピンディスプレイが用いられているが（特許文献４を参照。）、人の指先の分解能は低く、視覚情報と同等の情報を得るのは困難である。
【０００６】
【特許文献１】特開平５−３４２３２６号公報
【特許文献２】特開平６−６８３００号公報
【特許文献３】特開平８−２６３２６０号公報
【特許文献４】特開平１０−２３２６００号公報
【非特許文献１】Jaws, http://www.freedomscientific.com/fs_products/software_jaws.asp
【非特許文献２】WindowEyes, http://www.gwmicro.com/products/
【非特許文献３】Valbo, A. B. & Johanson, R. S. The tactile sensory innervation of glabrous skin of the human hand. In G. Gordon (Ed.), Active Touch. 2954，Pergamon Press， 1978．
【非特許文献４】Shardanand, U. and Maes, P. Social information filtering: Algorithms for automating "word of mouth."In Proceedings of the 1995 ACM Conference on Human Factors in Computing Systems.
【発明の開示】
【発明が解決しようとする課題】
【０００７】
以上で述べたように、現状の技術水準では、視覚障害者がグラフィックスの内容を理解するのは難しい場合が多い。一方で、ドキュメントが複数のページを含む場合、ページによっては理解容易な場合もある。どのページが理解容易かを知るためには、視覚障害者はやはりスクリーンリーダを用いてそれぞれのページの理解を試みなければならず、膨大な時間と手間がかかる。
【０００８】
なお、HTML(Hyper Text Markup Language)のドキュメントに関しては、情報取得の難易度を評価するガイドラインが設定されている。例えば、W3C(The World Wide Web Consortium)のWAI(Web Accessibility Initiative)によるWCAG(Web Content Accessibility Guidelines)がこれに該当する。HTMLのドキュメントは、タグと呼ばれるメタ情報を含む。そして、タグとタグとの関係によって情報の構造が定義される。タグによって定義された構造がガイドラインに準拠していれば、視覚障害者であっても内容理解が容易な場合が多く、当該構造がガイドラインに準拠していなければ、視覚障害者にとって理解が困難な場合が多い。即ち、HTMLドキュメントに関しては、各ページをスクリーンリーダで読み上げさせなくとも、ある程度の精度で難易度を知ることはできる。
【０００９】
しかしながら、プレゼンテーション用ソフトウェアなどで作成された一般のグラフィックスは、HTMLドキュメントなどのタグを含んでいない場合が多い。このような場合には、難易度の評価に上記のガイドラインを応用することは難しい。また、HTMLのドキュメントは、少なくともHTMLで記述されているという統一性があるのに対し、一般のグラフィックスは、多数の種類のソフトウェアで作成され得るため統一性が無い。このため、それら何れのソフトウェアで作成されたグラフィックスに対しても難易度を統一的に判断できる基準を作成することは困難である。また、スクリーンリーダの種類も多岐に渡るため、ドキュメント作成者にとってもどのようなドキュメントを作成すべきか判断が難しい場合が多い。
【００１０】
なお、参考技術として、利用者の好みに基づいてその利用者による情報の評価を推定する技術が提案されている（非特許文献４を参照。）。この技術は、ある利用者Ａと好みが近似する複数の利用者について、当該複数の利用者による評価に基づいて当該利用者Ａの評価を推定するものである。しかしながら、この文献は、未知の評価を推定するための一般的な考え方を示しているのに過ぎず、それを視覚障害者向けのドキュメントに応用する具体的な方法については言及していない。例えば、利用者の好みという分類はドキュメントの理解のし易さには影響しない場合が多いと考えられる。
【００１１】
そこで本発明は、上記の課題を解決することのできるシステム、方法およびプログラムを提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
【課題を解決するための手段】
【００１２】
上記課題を解決するために、本発明の１つの形態においては、スクリーンリーダの出力音声によってドキュメントの内容を理解する難易度を、ドキュメントのページ毎に評価するシステムであって、ページの特徴を示す特徴量に基づいて当該ページの難易度の評価値を算出する評価関数を記録する第１関数記録部と、評価関数によって算出した評価値と利用者による困難性の評価とが異なる少なくとも１つのページのそれぞれについて、利用者による困難性の評価値および当該ページの特徴量を利用者から収集する収集部と、利用者から収集した特徴量および評価値に基づいて、第１関数記録部に記録された評価関数を、利用者の評価により近い評価値を出力するように更新する第１更新部とを備えるシステムを提供する。また、当該システムによって難易度を評価する方法、および、当該システムとして情報処理装置を機能させるプログラムを提供する。
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【発明の効果】
【００１３】
本発明によれば、スクリーンリーダの出力音声によってドキュメントの内容を理解する難易度を、精度よく評価することができる。
【発明を実施するための最良の形態】
【００１４】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００１５】
図１は、情報処理システム１０の全体構成を示す。情報処理システム１０は、サーバ装置２０と、複数の利用者端末３０とを備える。サーバ装置２０は、ドキュメントに含まれるそれぞれのページの特徴を示す特徴量を算出するための算出プログラムを、それぞれの利用者端末３０に配信する。また、サーバ装置２０は、スクリーンリーダによってドキュメントの内容を理解する難易度の評価値を算出するための評価関数を、それぞれの利用者端末３０に配信する。
【００１６】
複数の利用者端末３０のそれぞれは複数の利用者のそれぞれに対応付けられており、ドキュメントの内容を音声として出力するスクリーンリーダを備えている。それぞれの利用者端末３０は、利用者により指定されたドキュメントに含まれるそれぞれのページの評価値を、サーバ装置２０から配信を受けた算出プログラムおよび評価関数を用いて算出し、利用者に出力する。これにより、利用者は、ドキュメントの読み上げに先立って、各ページの内容理解の難易度を知ることができ、実際の読み上げさせるべきページを効率的に取捨選択できる。
【００１７】
図２は、サーバ装置２０の機能構成を示す。サーバ装置２０は、第１関数記録部２００と、配信部２１０と、収集部２２０と、評価値ＤＢ２３０と、第１更新部２４０とを有する。第１関数記録部２００は、ページの特徴量に基づいてそのページの難易度の評価値を算出する評価関数を、その評価関数を用いる利用者のユーザプロファイルに対応付けて記録している。利用者のユーザプロファイルは、例えば、その利用者が使用するスクリーンリーダの種類、または、その利用者が理解しようとするドキュメントを作成した作成システムの種類を含む。
【００１８】
配信部２１０は、第１関数記録部２００に記録されている評価関数を、それぞれの利用者端末３０に配信する。ある利用者に配信される評価関数は、その利用者のユーザプロファイルに対応したものである。また、配信部２１０は、後述の第１更新部２４０によって評価関数が更新される毎に、更新されたその評価関数を複数の利用者端末３０のそれぞれに配信して、利用者端末３０の第２関数記録部３２０に記録させる。また、配信部２１０は、特徴量を算出するための算出プログラムを管理者から取得したことに応じ、その算出プログラムを複数の利用者端末３０のそれぞれに配信してもよい。
【００１９】
収集部２２０は、評価関数によって算出した評価値と利用者による困難性の評価とが異なる少なくとも１つのページのそれぞれについて、利用者による困難性の評価値および当該ページの特徴量を、当該利用者のユーザプロファイルに対応付けて利用者から収集する。具体的には、収集部２２０は、利用者端末３０に記録された評価値の数が所定の基準に達したときに、または、それに関わらず定期的に、評価値および特徴量を収集してもよい。
【００２０】
評価値ＤＢ２３０は、収集部２２０がそれぞれの利用者から収集した評価値および特徴量を、ユーザプロファイルに対応付けて記録する。第１更新部２４０は、ユーザプロファイル毎に、そのユーザプロファイルに対応付けて収集した評価値および特徴量に基づき、当該ユーザプロファイルに対応する評価関数を第１関数記録部２００において更新する。また、サーバ装置２０は、性能評価部２５０を有してもよい。性能評価部２５０は、収集部２２０によって収集された評価値に基づいて、それぞれの種類のスクリーンリーダの性能の高さを評価する。例えば、性能評価部２５０は、ある種類のスクリーンリーダに対応する評価値が他の種類のスクリーンリーダに対応する評価値よりも平均的に高い場合には、その種類のスクリーンリーダの性能は高いと評価してもよい。
【００２１】
図３は、利用者端末３０の機能構成を示す。利用者端末３０は、スクリーンリーダとしての機能の他、音声出力による内容理解の難易度を評価する機能を有する。具体的には、ドキュメントＤＢ３００と、特徴量算出部３１０と、第２関数記録部３２０と、難易度評価部３３０と、入力部３４０と、評価値ＤＢ３５０と、第２更新部３６０とを有する。ドキュメントＤＢ３００は、ドキュメントの作成システムによって作成されたドキュメントを記録する。このドキュメントは複数のページを含み、それぞれのページの構成は異なっていてもよい。また、それぞれのページは、テキストのみならずグラフィックスを含んでよい。グラフィックスは更に複数の表示オブジェクトを含んでよい。
【００２２】
特徴量算出部３１０は、利用者によるページの指定に応じ、指定された当該ページの特徴を示す特徴量を算出する。この特徴量は、指定された当該ページに含まれる複数の表示オブジェクトを予め定められた順序で走査した軌跡に基づいて算出されてもよい。第２関数記録部３２０は、配信部２１０から配信を受けることにより第１関数記録部２００から評価関数を取得し、取得したその評価関数を記録する。難易度評価部３３０は、特徴量算出部３１０によって算出された特徴量をその評価関数に与えることによって当該ページの評価値を算出して利用者に出力する。評価値は、スクリーンリーダによるドキュメントの読み上げに先立って利用者に対し出力されることが望ましい。入力部３４０は、難易度評価部３３０によって算出された評価値と利用者による困難性の評価とが異なることを条件に、利用者が評価した困難性の評価値の入力を受け付ける。
【００２３】
評価値ＤＢ３５０は、それぞれのページについて利用者から入力された評価値を、そのページの特徴量に対応付けて記録する。また、評価値ＤＢ３５０は、本発明に係るページ記録部の一例であり、算出した評価値と利用者による困難性の評価とが異なる複数のページのそれぞれを、そのページについて入力部３４０が入力を受けた評価値に対応付けて記録してもよい。第２更新部３６０は、それぞれのページについて入力された評価値とそのページの特徴量とに基づいて、第２関数記録部３２０に記録された評価関数を、利用者の評価により近い評価値を出力するように更新する。
【００２４】
図４は、評価値ＤＢ２３０のデータ構造の一例を示す。評価値ＤＢ２３０は、それぞれの利用者端末３０から収集部２２０が収集した特徴量および評価値を、収集の対象とした利用者のユーザプロファイルと、当該特徴量を算出するために使用した算出プログラムのバージョンとに対応付けて記録している。図４に例示したユーザプロファイルは、スクリーンリーダの種類と作成システムの種類とを含む。スクリーンリーダとは、必ずしも単体のソフトウェアでなくともよく、ブラウザソフトウェアのプラグインなどの、あるソフトウェアの一部であってもよい。その場合のユーザプロファイルは、そのソフトウェアおよびプラグインのそれぞれを識別可能であることが望ましい。他の例として、スクリーンリーダは、複数のソフトウェアの集合体であってもよい。例えば、スクリーンリーダは、ドキュメントのデータ形式を変換する変換プログラムと、変換後のドキュメントを読み上げる読み上げプログラムとを含んでもよい。その場合のユーザプロファイルは、スクリーンリーダを構成するそれぞれのプログラムを識別可能であることが望ましい。
【００２５】
また、評価値ＤＢ２３０に記録される特徴量は、複数の要素を含むベクトルデータであってもよい。ベクトルデータのそれぞれの要素は、同一ページの互いに異なる特徴を示している。また、評価値ＤＢ２３０に記録される評価値は、例えば、音声による理解のしやすさを示す段階を示す。これに代えて、評価値は、理解のしやすさの程度を１００点満点で示したような連続値であってもよい。また、算出プログラムのバージョンは、算出プログラムが更新される過渡状態において、新たな算出プログラムまたは既存の算出プログラムの何れによって評価された特徴量であるかを示している。このバージョンの情報を参照する処理については図１１で後述する。
【００２６】
図５は、難易度評価部３３０が出力する画面の第１表示例を示す。この第１表示例においてドキュメントはプレゼンテーションパッケージである。このプレゼンテーションパッケージは複数のページを示し、そのページのタイトルが画面上に表示されている。利用者端末３０に備わるスクリーンリーダの機能によって、利用者は、このタイトルを音声として読み上げさせることができる。難易度評価部３３０は、それぞれのページのタイトルに対応付けて、そのページの難易度の評価値を表示する。例えば図５において５ｓｔａｒの表示は、内容理解が非常に容易である旨を示す。一方で、１ｓｔａｒの表示は、内容理解が非常に困難である旨を示す。
【００２７】
図６は、難易度評価部３３０が出力する画面の第２表示例を示す。この第２表示例は、利用者があるページを指定したときに表示されるポップアップウィンドウを例示する。即ち、難易度評価部３３０は、利用者によってあるページが指定されると、そのページの評価値およびその意味をポップアップウィンドウ内に表示する。利用者は、ページを指定することにより、実際にページの内容を読み上げさせる前に、そのページの内容理解の困難性を判断できる。
【００２８】
図７は、難易度評価部３３０が出力する画面の第３表示例を示す。この第３表示例は、入力部３４０が、評価値を変更するための操作を受けたときの画面を示す。入力部３４０は、評価値を変更するためのメニュー（例えば、ツールバーのeditメニュー）の選択操作を受けると、難易度の評価値を変更するコマンドの候補を表示する。ここでは、Change Star 1などである。入力部３４０は、それら何れかのコマンドを利用者に選択させることによって、利用者による困難性の評価値の入力を受け付けることができる。
【００２９】
図８は、サーバ装置２０によって評価値が収集され、評価関数が更新される処理のフローチャートを示す。第１更新部２４０は、予め定められたサンプルのドキュメントに基づいて評価関数を生成し、第１関数記録部２００に記録する（Ｓ８００）。配信部２１０は、第１関数記録部２００に新たに評価関数が記録されたことを条件に、または、第１関数記録部２００に記録された評価関数が更新されたことを条件に、第１関数記録部２００に記録された評価関数をそれぞれの利用者端末３０に配信する（Ｓ８１０）。収集部２２０は、難易度評価部３３０によって算出された評価値と利用者による困難性の評価とが異なることを条件に、入力部３４０が入力を受けた評価値および特徴量算出部３１０が算出した特徴量を、それぞれの利用者端末３０から収集する（Ｓ８２０）。この収集は、例えば定期的に行われてもよい。
【００３０】
第１更新部２４０は、ユーザプロファイルに対応付けて収集された特徴量および評価値に基づいて、第１関数記録部２００に記録された評価関数を、利用者の評価により近い評価値を出力するように更新する（Ｓ８３０）。処理手順の詳細は例えば以下の通りである。第１更新部２４０は、まず、収集した特徴量および評価値を、ユーザプロファイル毎に分類する。次に、第１更新部２４０は、分類したそれぞれのグループについて、重回帰分析や機械学習（ニューラルネットワーク、決定木学習、または、サポートベクターマシンなど）によって、収集した特徴量から収集した評価値を算出するために尤もらしい評価関数を生成する。第１更新部２４０は、生成した評価関数によってもとの評価関数を更新する。
【００３１】
配信部２１０は、特徴量の算出プログラムが更新されたかを判断する（Ｓ８４０）。更新されたことを条件に（Ｓ８４０：ＹＥＳ）、配信部２１０は、更新されたその算出プログラムを利用者端末３０に配信し（Ｓ８５０）、処理をＳ８１０に戻す。これによって、評価関数が更新される毎に新たな評価関数が利用者端末３０に配信される。
【００３２】
図９は、利用者端末３０によって評価値が算出して出力される処理のフローチャートを示す。特徴量算出部３１０は、利用者によるページの指定に応じ、そのページの特徴量を算出する（Ｓ９００）。特徴量は、指定された当該ページに含まれる複数の表示オブジェクトを予め定められた順序で走査した軌跡に基づいて算出されてもよい。図１０にその詳細を示す。
図１０は、Ｚオーダーに従って表示オブジェクトを走査した軌跡を示す。Ｚオーダーとは、複数の表示オブジェクトを重ね合わせて表示する場合の表示優先順序である。一例として、表示オブジェクトは、その作成順序に従って奥側から手前側に向けて順次重ねて表示される。図１０（ａ）および図１０（ｂ）の何れにおいても、矩形や矢印などの図形が表示オブジェクトを示し、それらを結ぶ点線が走査の軌跡を示す。図１０（ａ）において、走査の軌跡は非常に込み入っている。このため、Ｚオーダーに従って読み上げるスクリーンリーダによれば、表示オブジェクトは、画面上のＸ方向やＹ方向の相対位置に関わらず離散的に読み上げられることとなる。この結果、表示オブジェクトの読み上げ順序は、晴眼者が直感的に把握する画面構成と大幅に異なることとなる。一方で、図１０（ｂ）において、走査の軌跡は比較的直線的である。この結果、表示オブジェクトの読み上げ順序は、晴眼者が直感的に把握する画面構成に近くなる。
【００３３】
以上に例示したような画面の違いを特徴量として検出するために、特徴量算出部３１０は、複数の表示オブジェクトをＺオーダーによって走査した軌跡に基づいて特徴量を算出する。例えば、特徴量は、軌跡の距離と角度とに基づいて算出されてもよい。詳細には以下の通りである。１つの例として、特徴量算出部３１０は、それぞれの表示オブジェクトについて、当該表示オブジェクトと当該表示オブジェクトの次に走査する他の表示オブジェクトの間の距離を算出する。そして、特徴量算出部３１０は、算出された距離の合計または平均がより大きい場合に、当該合計または平均がより小さい場合と比較して高い特徴量を算出する。即ち、あるページの走査の軌跡が込み入っていてその合計距離が大きい場合には、内容を理解しにくい恐れのあるページとして特徴的であると評価する。
【００３４】
他の例として、特徴量算出部３１０は、それぞれの表示オブジェクトについて、その表示オブジェクトとその表示オブジェクトの次に走査する他の表示オブジェクトとを結ぶ直線と、当該他の表示オブジェクトと当該他の表示オブジェクトの次に走査する更に他の表示オブジェクトとを結ぶ直線とがなす角度を算出する。そして、特徴量算出部３１０は、算出された角度の合計または平均の絶対値がより大きい場合に、当該合計または平均の絶対値がより小さい場合と比較して高い特徴量を算出する。特徴量の算出式は、例えば、式（１）の通りである。これにより、図１０（ａ）のような、走査の軌跡が重なり合う場合について高い特徴量を算出し、図１０（ｂ）のような、走査の軌跡が重なり合わない場合について低い特徴量を算出できる。
【数１】
2007249755.tif 000003
【００３５】
図１０を参照して例示する処理は一例であり、特徴量算出部３１０は、他の複数の方法によって複数の特徴量を算出し、算出されたそれぞれの特徴量により構成されるベクトルを評価関数に入力してもよい。特徴量の算出方法は例えば以下の通りである。
（１）表示オブジェクトの数やその面積など
特徴量算出部３１０は、ページ中の表示オブジェクトを複数の種類に分類する。分類の基準は、表示オブジェクトがテキストデータや代替テキストデータを含むか否か、ページタイトルやアウトラインテキストを示すプレースホルダーであるか否かなどである。そして、特徴量算出部３１０は、分類毎のオブジェクトの数、または、それぞれの分類におけるオブジェクトが画面中で占める面積の割合を特徴量として算出する。これにより、面積の大きい（即ち重要である可能性の高い）オブジェクトが、どのような性質を持つか否かを特徴量として表すことができる。
【００３６】
（２）テキストの文字数やフォントの変化量
特徴量算出部３１０は、ページ中の文字数の総数、または、オブジェクトごとにそのオブジェクトが含む文字数を平均または合計した数を特徴量として算出してもよい。また、特徴量算出部３１０は、Ｚオーダーに従って文字オブジェクトを読み上げた結果、読み上げの過程で文字のフォントまたは文字の色が変化した回数を特徴量として算出してもよい。文字数の短い文字列は一般に視覚障害者にとって理解しにくく、また、文字の色やフォントに表された情報は音声データに変換しにくいからである。
【００３７】
（３）グルーピング階層ごとでのオブジェクト数や文字数など
表示オブジェクトは、複数の表示オブジェクトをグルーピングすることによって構成される場合がある。即ち、ドキュメント作成者は、複数の表示オブジェクトに対しグルーピング操作を行うことにより、その後これらの複数の表示オブジェクトをあたかも１つの表示オブジェクトであるかのように操作（位置変更、拡大縮小など）することができる。グルーピングは、入れ子状に構成させることもできる。
特徴量算出部３１０は、あるページに含まれるグループの階層レベル、または、階層レベル毎にその階層レベルに含まれる表示オブジェクトの数や文字数の平均または分散を算出し、それを特徴量として出力してもよい。一般に、階層が深すぎる場合や階層が全く無い場合には視覚障害者にとって理解が難しい場合が多いからである。
【００３８】
（４）その他
その他の例として、特徴量算出部３１０は、ページにアニメーションを含むか否かの情報を特徴量として算出してもよい。また、特徴量算出部３１０は、表示オブジェクトが重ね合わせて表示されている場合に、その重ね合わせられる面積の合計に基づいて特徴量を算出してもよい。アニメーションが多用されている場合や、オブジェクトが重ね合わせられている場合には、視覚障害者にとって理解が難しい場合が多いからである。
【００３９】
図９に戻る。特徴量算出部３１０は、特徴量の算出プログラムが変更される過渡期においては、Ｓ９００の処理中に、変更によって生じる不都合を低減させるための処理を別途行う。これについては、図１１において詳細に述べる。続いて、難易度評価部３３０は、特徴量算出部３１０によって算出された特徴量を、配信を受けた評価関数に与えることによって評価値を算出して（Ｓ９１０）、利用者に出力する（Ｓ９２０）。入力部３４０は、難易度評価部３３０によって算出された評価値とは異なる、利用者による困難性の評価値の入力を受け付ける（Ｓ９３０）。
【００４０】
評価値の入力を受けたことを条件に（Ｓ９３０：ＹＥＳ）、第２更新部３６０は、それぞれのページについて入力された評価値とそのページの特徴量とに基づいて、第２関数記録部３２０に記録された評価関数を、利用者の評価により近い評価値を出力するように更新する（Ｓ９４０）。評価値ＤＢ３５０は、それぞれのページについて利用者から入力された評価値を、そのページの特徴量に対応付けて記録する（Ｓ９５０）。また、評価値ＤＢ３５０は、算出した評価値と利用者による困難性の評価とが異なる複数のページのそれぞれを、そのページについて入力部３４０が入力を受けた評価値に対応付けて記録してもよい。
【００４１】
図１１は、Ｓ９００における処理の詳細を示す。既に第１算出プログラムの配信を受けていた状態において、新たに第２算出プログラムの配信を受けた場合には、既に生成された評価関数をそのまま使用すると不都合が生じる場合がある。このため、評価関数を新たに生成することが望ましいが、新たな評価関数には利用者の評価が反映されていないため、算出される評価値の精度が低い場合がある。このため、第２算出プログラムの配信を受けてから予め定められた基準期間内は算出プログラム変更の過渡期間として、利用者端末３０は、以下の処理を行う。
【００４２】
特徴量算出部３１０は、第２算出プログラムの配信を受けたか判断する（Ｓ１１００）。第２プログラムの配信を受けたことに応じ（Ｓ１１００：ＹＥＳ）、特徴量算出部３１０は、第２算出プログラムの配信を受けてから基準期間が経過したかを判断する（Ｓ１１１０）。第２プログラムの配信を受けていなければ、或いは、第２プログラムの配信を受けてから基準期間が経過していれば、特徴量算出部３１０は、その時点で最新の算出プログラムを用いて特徴量を算出して処理を終了する（Ｓ１１０５）。
【００４３】
基準期間が経過していなければ（Ｓ１１１０：ＮＯ）、特徴量算出部３１０は、以下の処理を行う。なお、基準期間が経過する前に更に新たな第２算出プログラムが配信された場合については、もとの第２算出プログラムについての処理を無効とし、当該新たな第２算出プログラムについて以下の処理を行う。
【００４４】
まず、特徴量算出部３１０は、第１算出プログラムにより特徴量を算出する（Ｓ１１２０）。第１算出プログラムによって算出された特徴量は、上述のＳ９１０において、難易度評価部３３０による評価値の算出に用いられる。次に、特徴量算出部３１０は、第２算出プログラムにより特徴量を算出する（Ｓ１１３０）。特徴量算出部３１０は、第２算出プログラムにより算出した特徴量を、Ｓ９１０において第１算出プログラムに基づき算出された評価値と、第２算出プログラムのバージョンを示す情報に対応付けてドキュメントＤＢ３００に記録する（Ｓ１１４０）。なお、算出された評価値が利用者による評価とは異なるとして新たに評価値の入力を受けた場合には、当該新たな評価値に対応付けて特徴量が記録される。
【００４５】
ドキュメントＤＢ３００に記録された特徴量、評価値、および、バージョンを示す情報は、例えば定期的に利用者端末３０によって収集される。即ち、収集部２２０は、難易度評価部３３０により算出された評価値または入力部３４０が入力を受けた評価値、および、特徴量算出部３１０が第２算出プログラムにより算出した特徴量をドキュメントＤＢ３００から収集する。これを受けて、第１更新部２４０は、第２算出プログラムに対応する第２評価関数を、収集した評価値および特徴量に基づいて生成する。これにより、新たな算出プログラムを配信してから基準期間が経過するまでの間に、新たな算出プログラムに対応する第２評価関数による評価の精度を高めることができる。
【００４６】
以上の処理に加えて、利用者端末３０は、既にドキュメントＤＢ３００に記録されているそれぞれのページ（即ち第１評価関数による評価と利用者による評価が異なっていたページ）を、第２評価関数による評価の精度を高めるために利用してもよい。具体的には、特徴量算出部３１０は、第２算出プログラムによって、既にドキュメントＤＢ３００に記録されているそれぞれのページについて特徴量を算出する。この算出処理は、利用者端末３０の計算負荷が予め定められた基準よりも低きことを条件に行われることが望ましい。そして、収集部２２０は、ドキュメントＤＢ３００に記録されたそれぞれのページについて第２プログラムによって算出された特徴量を、そのページに対応付けてドキュメントＤＢ３００に記録された評価値（即ち第１評価関数による評価値または利用者に入力された評価値）に対応付けて収集する。以上の処理によれば、評価関数による評価と利用者による評価がかつて異なっていたページを、新たな評価関数の評価精度を高める目的に利用することができる。
【００４７】
図１２は、サーバ装置２０がドキュメント作成者に対して行う処理の一例を示す。図１２を参照して、ドキュメントの作成者が利用者端末３０を使用する場合の処理例を示す。この例において、利用者端末３０は、ドキュメントの作成システムとしても機能する。ドキュメント作成者の指示に基づき利用者端末３０がページを更新する毎に（Ｓ１２００：ＹＥＳ）、特徴量算出部３１０は、更新されたそのページの特徴を示す特徴量を算出する（Ｓ１２１０）。そして、難易度評価部３３０は、算出した特徴量を評価関数に与えることによって当該ページの評価値を算出して、このドキュメント作成者に対し出力する（Ｓ１２２０）。
【００４８】
以上、図１２の例のように、評価値の算出はページが更新される毎に行われてもよい。この例によれば、ドキュメント作成者は、評価値を参照しながらページを編集できるので、視覚障害者にとって理解し易いドキュメントを作成し易い。なお、利用者端末３０には、視覚障害者向けのドキュメント作成に関する他の技術を組み合わせることもできる。例えば、利用者端末３０は、ドキュメントを視覚障害者に理解し易くするために満たすべき基準を示す情報を予め記憶している。基準とは、例えば、画像に代えて読み上げるべき文字列が指定されていることである。他の例として、基準とは、テーブルを構成する複数の表示オブジェクトを単に離散的に画面に配置するのではなくテーブルを示す情報（タグなど）に対応付けて記録することであってもよい。また、基準とは、タイトルを示す文字列を、その文字列がタイトルであることを示す情報（プレースホルダーなど）に対応付けて記録することであってもよい。そして、利用者端末３０は、ページが更新される毎に、更新されたそのページがその基準を満たすか否かを判断する。基準を満たしていない場合には、利用者端末３０は、満たしていない基準をドキュメント作成者に対し出力することによって、ドキュメントの修正を促す。このような処理との組み合わせによって、視覚障害者にとって理解し易いドキュメントを一層作成し易くすることができる。
【００４９】
図１３は、サーバ装置２０または利用者端末３０として機能する情報処理装置５００のハードウェア構成の一例を示す。情報処理装置５００は、ホストコントローラ１０８２により相互に接続されるＣＰＵ１０００、ＲＡＭ１０２０、及びグラフィックコントローラ１０７５を有するＣＰＵ周辺部と、入出力コントローラ１０８４によりホストコントローラ１０８２に接続される通信インターフェイス１０３０、ハードディスクドライブ１０４０、及びＣＤ−ＲＯＭドライブ１０６０を有する入出力部と、入出力コントローラ１０８４に接続されるＢＩＯＳ１０１０、フレキシブルディスクドライブ１０５０、及び入出力チップ１０７０を有するレガシー入出力部とを備える。
【００５０】
ホストコントローラ１０８２は、ＲＡＭ１０２０と、高い転送レートでＲＡＭ１０２０をアクセスするＣＰＵ１０００及びグラフィックコントローラ１０７５とを接続する。ＣＰＵ１０００は、ＢＩＯＳ１０１０及びＲＡＭ１０２０に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィックコントローラ１０７５は、ＣＰＵ１０００等がＲＡＭ１０２０内に設けたフレームバッファ上に生成する画像データを取得し、表示装置１０８０上に表示させる。これに代えて、グラフィックコントローラ１０７５は、ＣＰＵ１０００等が生成する画像データを格納するフレームバッファを、内部に含んでもよい。
【００５１】
入出力コントローラ１０８４は、ホストコントローラ１０８２と、比較的高速な入出力装置である通信インターフェイス１０３０、ハードディスクドライブ１０４０、及びＣＤ−ＲＯＭドライブ１０６０を接続する。通信インターフェイス１０３０は、ネットワークを介して外部の装置と通信する。ハードディスクドライブ１０４０は、情報処理装置５００が使用するプログラム及びデータを格納する。ＣＤ−ＲＯＭドライブ１０６０は、ＣＤ−ＲＯＭ１０９５からプログラム又はデータを読み取り、ＲＡＭ１０２０又はハードディスクドライブ１０４０に提供する。
【００５２】
また、入出力コントローラ１０８４には、ＢＩＯＳ１０１０と、フレキシブルディスクドライブ１０５０や入出力チップ１０７０等の比較的低速な入出力装置とが接続される。ＢＩＯＳ１０１０は、情報処理装置５００の起動時にＣＰＵ１０００が実行するブートプログラムや、情報処理装置５００のハードウェアに依存するプログラム等を格納する。フレキシブルディスクドライブ１０５０は、フレキシブルディスク１０９０からプログラム又はデータを読み取り、入出力チップ１０７０を介してＲＡＭ１０２０またはハードディスクドライブ１０４０に提供する。入出力チップ１０７０は、フレキシブルディスク１０９０や、例えばパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して各種の入出力装置を接続する。
【００５３】
情報処理装置５００に提供されるプログラムは、フレキシブルディスク１０９０、ＣＤ−ＲＯＭ１０９５、又はＩＣカード等の記録媒体に格納されて利用者によって提供される。プログラムは、入出力チップ１０７０及び/又は入出力コントローラ１０８４を介して、記録媒体から読み出され情報処理装置５００にインストールされて実行される。プログラムが情報処理装置５００等に働きかけて行わせる動作は、図１から図１２において説明したサーバ装置２０または利用者端末３０における動作と同一であるから、説明を省略する。
【００５４】
以上に示したプログラムは、外部の記憶媒体に格納されてもよい。記憶媒体としては、フレキシブルディスク１０９０、ＣＤ−ＲＯＭ１０９５の他に、ＤＶＤやＰＤ等の光学記録媒体、ＭＤ等の光磁気記録媒体、テープ媒体、ＩＣカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークやインターネットに接続されたサーバシステムに設けたハードディスク又はＲＡＭ等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムを情報処理装置５００に提供してもよい。
【００５５】
以上、本実施形態に係る情報処理システム１０によれば、これまで難易度評価が困難であってグラフィックスを含むドキュメントについて、難易度を適切に評価することができる。この際、難易度を評価する関数は、複数の利用者から収集した評価に基づき適宜更新されていくので、新たにスクリーンリーダの使用を開始した利用者にとっても難易度を適切に評価できる。また、利用者の評価は、スクリーンリーダの種類などのユーザプロファイル毎に分類して収集されるので、難易度評価の精度を一層高めることができる。また、特徴量を算出する算出プログラムを更新する場合には更新の過渡期間を設けることで、更新後でも評価の精度を低下させないようにすることができる。
【００５６】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【図面の簡単な説明】
【００５７】
【図１】図１は、情報処理システム１０の全体構成を示す。
【図２】図２は、サーバ装置２０の機能構成を示す。
【図３】図３は、利用者端末３０の機能構成を示す。
【図４】図４は、評価値ＤＢ２３０のデータ構造の一例を示す。
【図５】図５は、難易度評価部３３０が出力する画面の第１表示例を示す。
【図６】図６は、難易度評価部３３０が出力する画面の第２表示例を示す。
【図７】図７は、難易度評価部３３０が出力する画面の第３表示例を示す。
【図８】図８は、サーバ装置２０によって評価値が収集され、評価関数が更新される処理のフローチャートを示す。
【図９】図９は、利用者端末３０によって評価値が算出して出力される処理のフローチャートを示す。
【図１０】図１０は、Ｚオーダーに従って表示オブジェクトを走査した軌跡を示す。
【図１１】図１１は、Ｓ９００における処理の詳細を示す。
【図１２】図１２は、サーバ装置２０がドキュメント作成者に対して行う処理の一例を示す。
【図１３】図１３は、サーバ装置２０または利用者端末３０として機能する情報処理装置５００のハードウェア構成の一例を示す。
【符号の説明】
【００５８】
１０  情報処理システム
２０  サーバ装置
３０  利用者端末
２００  第１関数記録部
２１０  配信部
２２０  収集部
２３０  評価値ＤＢ
２４０  第１更新部
２５０  性能評価部
３００  ドキュメントＤＢ
３１０  特徴量算出部
３２０  第２関数記録部
３３０  難易度評価部
３４０  入力部
３５０  評価値ＤＢ
３６０  第２更新部
５００  情報処理装置
【図１】
2007249755.tif 000004
【図２】
2007249755.tif 000005
【図３】
2007249755.tif 000006
【図４】
2007249755.tif 000007
【図５】
2007249755.tif 000008
【図６】
2007249755.tif 000009
【図７】
2007249755.tif 000010
【図８】
2007249755.tif 000011
【図９】
2007249755.tif 000012
【図１０】
2007249755.tif 000013
【図１１】
2007249755.tif 000014
【図１２】
2007249755.tif 000015
【図１３】
2007249755.tif 000016