以下、オーサリング装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態)
図1は、本実施の形態におけるオーサリング装置1のブロック図である。
オーサリング装置1は、オーサリングデータ格納部101、音声受付部102、音声認識部103、オーサリング処理部104、出力部105、表示部106を備える。
オーサリング装置1は、例えば、コンピュータや、携帯情報端末、携帯電話、いわゆるスマートフォン等の多機能携帯電話、タブレット端末等により実現可能である。
オーサリングデータ格納部101には、一以上のオーサリングデータが格納される。オーサリングデータは、1または2以上のオブジェクトが配置されたデータである。オーサリングデータは、例えば、オーサリング処理により取得されたデータである。オーサリング処理については後述する。オーサリングデータは、例えば、デジタルコンテンツやマルチメディアデータ等の最終生成物であってもよく、これらの最終生成物を生成するために用いられる中間生成物であっても良い。オーサリングデータが中間生成物である場合、例えば、オーサリングデータを、レンダリングしたり、予め指定された形式のデータとして書き出すことで、最終生成物が取得できる。
一のオーサリングデータは、例えば、一または2以上のページを有していても良い。ここでのページは、例えば、シートや、コンテンツ等を配置するための台紙等を含む概念である。ページは、例えば、1以上のオブジェクトが配置される面と考えてもよい。各ページには、例えば、ページ番号等のページの識別子が対応づけられている。また、一のページは、1または2以上のレイヤを有していても良い。各レイヤには、例えば、レイヤ名や、レイヤ番号等のレイヤの識別子が対応づけられている。ページや、レイヤについては、オーサリングの技術分野においては、公知技術であるため、ここでは、詳細な説明は省略する。なお、一のオーサリングデータは、ページを有していなくても良い。一のオーサリングデータは、例えば、一のファイルを構成するオーサリングデータである。
オーサリングデータに配置される1以上のオブジェクトとは、例えば、オーサリングの対象となるデータである。オブジェクトは、例えば、オーサリング対象の単位となるデータである。例えば、一のオブジェクトは、一のオーサリング対象として扱われるデータである。オブジェクトは、例えば、コンテンツのデータである。オブジェクトは、例えば、文字列や、映像、地図などを電子化したデータや、画像や文字列等を表示するソフトウェアや、これらを組み合わせたものである。オブジェクトは、例えば表示用のデータを有するデータである。表示用のデータとは、例えば、視覚化可能なデータである。オブジェクトは、例えば、テキストデータや、画像データである。テキストデータは、例えば、文字を示す一以上の文字コードを有するデータである。画像データは、静止画像であっても動画像であっても良い。静止画像は、ビットマップデータであっても、ベクタデータであっても良い。また、オブジェクトは、二次元や三次元のモデリングデータ等であっても良い。なお、予めページ等に固定されているページ番号等の文字列や画像や、テンプレート等として固定されている文字列や画像等については、ユーザが自由にオーサリングできルものではないと考えて、オーサリング対象であるオブジェクトから除外するようにしても良い。
オブジェクトは、例えば、表示用のデータと音声データとを一体化して有するデータであっても良い。表示用のデータと音声データとを一体化して有するデータをここでは音声付データと呼ぶ。例えば、音声付データは、表示用のデータと音声データとを一体化して有するファイルであっても良い。データ音声データとは、音声のデータである。音声データとは、例えば、音声の波形を示すデータである。例えば、音声データは、音声の波形を示す電圧の変化を示すデータである。音声データは、音声の波形を標本化したデータであってもよい。また、音声データは、非圧縮のデータであっても良く、圧縮したデータであっても良い。音声付データは、この音声付データに格納される音声データの特徴量を更に有していても良い。音声データの特徴量については後述する。また、音声付データは、この音声付データに格納される音声データを音素に分解した情報や、音素よりも更に細かい要素(以下、音素片と称す)に分解した情報や、これらを符号化した情報等を有していても良い。
オーサリングデータに配置されるオブジェクトは、オーサリングデータにリンクにより配置されたオブジェクトであっても良く、オーサリングデータに格納された(例えば、埋め込まれた)データであっても良い。リンクにより配置されるオブジェクトは、例えば、図示しないオブジェクト格納部等に格納されたデータである。
オーライングデータ格納部101には、例えば、オーサリング処理部104が、オーサリング処理を行なって取得したオーサリングデータが格納される。オーサリングデータ格納部101には、例えば、後述する出力部105が出力するオーサリングデータが格納される。また、外部から受信したオーサリングデータや、図示しない格納部等から読出されたオーサリングデータが格納されてもよい。
ここでの格納は、オーサリングデータを作成する際の、一時記憶等も含む概念である。例えば、オーサリングデータを作成する際に後述するオーサリング処理部104が取得したオーサリングデータの一時ファイル等がオーサリングデータ格納部101に格納され、この一時ファイルが、オーサリング処理部104により、適宜更新されても良い。ここでのオーサリング処理部104による取得は、オーサリング処理部104による生成であっても良く、オーサリング処理部104による図示しない格納部に格納されているオーサリングデータの読出しであってもよい。
オーサリングデータ格納部101は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。かかることは、他の格納部についても同様である。
音声受付部102は、音声を受け付ける。音声受付部102は、例えば、マイクロフォン(図示せず)等を介して入力された音声を受け付ける。音声受付部102が受け付ける音声は、例えば音声信号である。音声受付部102は、例えば、受け付けた音声を示す音声データを取得する。例えば、音声受付部102は、受け付けた音声を標本化して音声データを取得する。また、音声受付部102が受け付ける音声は、音声データと考えてもよい。例えば、音声受付部102は、他の装置や、オーサリング処理装置内の他の構成等から送信あるいは出力される音声データを音声として受信してもよい。
音声受付部102は、音声を受け付けるためのマイクロフォン等の入力手段を備えていてもよく、備えていなくても良い。音声受付部102は、入力手段のデバイスドライバや、メニュー画面の制御ソフトウェア等で実現され得る。
音声認識部103は、音声受付部102が受け付けた音声について音声認識処理を行なう。音声認識部103は、例えば、音声認識処理を行なって、オーサリング処理の処理対象を示す情報や、実行するオーサリング処理(以下、実行する処理と称す)を示す情報等を有する情報を取得する。例えば、音声認識部103は処理対象を示す情報や、実行する処理を示す情報を取得してもよく、これらを含むテキストデータ等のデータを取得してもよい。
処理対象とは、例えば、オーサリング処理の対象となるものであり、例えば、オーサリンデータに配置されたオブジェクト等である。処理対象を示す情報は、例えば、処理対象の識別子や、処理対象の属性を示す情報である。処理対象の識別子は、例えば、処理対象であるオブジェクトのファイル名や、処理対象に設定された名称(例えば、オブジェクト名や、レイヤ名)や、処理対象に割り当てられた文字列等で構成されるコード(例えば、処理対象であるオブジェクトのIDコード)等である。処理対象がテキストオブジェクトである場合、このオブジェクトの少なくとも一部のテキストであっても良い。処理対象の属性を示す情報は、例えば、処理対象となるオブジェクトの色や、サイズ、オブジェクトのデータタイプ(例えば、画像やテキスト)等を示す情報である。例えば、これらの属性の範囲を示す情報であっても良い。また、処理対象の属性を示す情報は、例えば、処理対象のページ内の位置を示す情報(例えば、座標等)であっても良い。また、一のページやレイヤを示す情報を、これらに配置された1以上のオブジェクトを処理対象として示す情報と考えてもよい。同様に、ページ等に配置されるフレームやコンテナと呼ばれるオブジェクトの配置領域を示す情報を、この配置領域に配置されたオブジェクトを示す情報と考えてもよい。また、配置されているオブジェクトが音声付オブジェクトを含む場合、この音声付オブジェクトに含まれる音声データの少なくとも一部や、この音声データの少なくとも一部に対応する特徴量や音素や音素片等を、処理対象を示す情報と考えてもよい。
実行する処理とは、例えば、処理対象に対して実行する1以上のオーサリング処理である。実行する処理を示す情報は、例えば、実行する処理を特定可能な情報であり、実行する処理を示す指示や、実行する処理の名称である。例えば実行する処理を示す情報は、オブジェクト等を移動させる指示や、オブジェクト等を削除させる指示や、画像オブジェクトの色を変更する指示等であってもよく、これらの指示を自然言語で表した「移動」や「削除」や「色を明るく」等の文字列であってもよい。実行する処理を示す情報は、実行する処理のパラメータ等を更に有する情報であっても良い。例えば、パラメータは、移動距離や、移動方向を示す情報である。例えば、パラメータは、左に5ピクセル、右に10ピクセル等の、移動方向と移動量とを示す情報である。また、パラメータは、画像オブジェクトが示す画像の明るさを変更する程度を示す情報であっても良い。
音声認識部103が、音声受付部102が受け付けた音声についてどのような音声認識処理を行なうかは問わない。例えば、音声認識部103は、音声受付部102が受け付けた音声に対して音声認識を行なって、音声に対応したテキストデータを音声認識結果として取得する。このテキストデータは、例えば、音声受付部102が受け付けた音声に対応する音声データを、テキストデータ化したものである。この音声認識により取得されるテキストデータは、処理対象を示す情報や、実行する処理を示す情報を含むテキストデータである。後述する具体例においては、このように、音声認識結果が、音声に対応したテキストデータである場合を例に挙げて説明する。なお、音声から、音声認識により音声に対応するテキストデータを取得する処理は、公知技術であるため、ここでは詳細な説明は省略する。
また、音声認識部103は、更に、上記のように音声認識処理により取得したテキストデータの中に、処理対象を示す文字列や実行する処理等を示す文字列等である認識用文字列と一致する1以上の文字列が含まれているか否かを判断し、認識用文字列と一致する1以上の文字列が含まれる場合に、この1以上の認識用文字列にそれぞれ対応する処理対象を示す情報や、実行する処理を示す情報を取得するようにしてもよい。この場合、予め指定された閾値以上の数あるいは比率が一致する文字列が含まれている場合、テキストデータ内の一の文字列と、一の認識用文字列とが一致していると判断するようにしてもよい。
認識用文字列は、例えば、処理対象を表す認識用文字列と、実行する処理を表す認識用文字列とを有する。処理対象を表す認識用文字列は、例えば、処理対象を表す文字列であり、例えば、処理対象を自然言語等で表した文字列である。また、実行する処理を表す認識用文字列は、実行する処理を表した文字列であり、例えば実行する処理を自然言語等で表した文字列である。処理対象を表した認識用文字列は、例えば、処理対象を示す情報と対応づけられている。また、実行する処理を表した認識用文字列は、例えば、実行する処理を示す情報と対応づけられている。実行する処理を示す情報は、例えば、この処理を実行させるための指示や指示名である。ここでの指示は、コマンドも含むと考えてもよい。認識用文字列は、例えば、図示しない格納部等に予め格納しておくようにしてよい。
例えば、処理対象を示す情報が、処理対象を表した認識用文字列と同じである場合、音声認識部103は、一の処理対象を表した認識用文字列と一致する文字列が、音声認識処理により取得したテキストデータの中に検出された場合、この一致すると判断された処理対象を表した認識用文字列に対応する処理対象を示す情報として、この処理対象を表した認識用文字列自身を取得すればよい。また、例えば、処理対象を示す情報が、処理対象を表した認識用文字列と同じでない場合、音声認識部103は、一の処理対象を表した認識用文字列と一致する文字列が、音声認識処理により取得したテキストデータの中に検出された場合、この一致すると判断された処理対象を表した認識用文字列と対応づけて図示しない格納部等に格納されている処理対象を示す情報を、上記の処理対象を示す情報として取得すればよい
同様に、例えば、実行する処理を示す情報が、実行する処理を表した認識用文字列と同じである場合、音声認識部103は、一の実行する処理を表した認識用文字列と一致する文字列が、音声認識処理により取得したテキストデータの中に検出された場合、この一致すると判断された実行する処理を表した認識用文字列に対応する処理を示す情報として、この実行する処理を表した認識用文字列自身を取得すればよい。また、例えば、実行する処理を示す情報が、実行する処理を表した認識用文字列と同じでない場合、音声認識部103は、一の実行する処理を表した認識用文字列と一致する文字列が、音声認識処理により取得したテキストデータの中に検出された場合、この一致すると判断された実行する処理を表した認識用文字列と対応づけて図示しない格納部等に格納されている実行する処理を示す情報を、上記の実行する処理を示す情報として取得すればよい。
また、音声認識部103は、音声受付部102が音声受付部102が受け付けた音声からテキストデータを上記のように取得せずに、音声受付部102が受け付けた音声の特徴量を取得し、この特徴量と、処理対象を示す音声や実行する処理を示す音声等である認識用音声の特徴量とを照合し、1以上の認識用音声の特徴量との適合度が閾値以上である特徴量が、音声受付部102が受け付けた音声の特徴量の中に検出された場合に、この1以上の認識用音声にそれぞれ対応する処理対象を示す情報や、実行する処理を示す情報を取得するようにしてもよい。
認識用音声は、例えば、処理対象を表す認識用音声と、実行する処理を表す認識用音声とを有する。処理対象を表す認識用音声は、例えば、処理対象を表す音声であり、例えば、処理対象を自然言語等で表した音声である。また、実行する処理を表す認識用音声は、実行する処理を表した音声であり、例えば実行する処理を自然言語等で表した音声である。処理対象を表した認識用音声は、例えば、処理対象と対応づけられている。また、実行する処理を表した認識用音声は、例えば、実行する処理と対応づけられている。
例えば、処理対象を示す認識用音声は、処理対象の識別子等を自然言語で読み上げた場合に得られる音声である。例えば、認識用音声は、処理対象となるオブジェクトに割り当てられた名称を、自然言語で読み上げて得られる音声である。このような場合、処理対象を表した認識用音声を取得するために読み上げられた処理対象の識別子等が示す処理対象を、認識用音声に対応する処理対象とし、この処理対象の識別子等を、上記で取得される処理対象を示す情報としてもよい。
また、実行する処理を示す認識用音声は、実行する処理を自然言語で表したテキストを読み上げた音声である。例えば、認識用音声は、「移動」というテキストを読み上げた音声や、「大きく」というテキストを読み上げた音声であり、「移動」を読み上げた認識用音声は、移動を実行する処理と対応づけられており、「大きく」を読み上げた認識用音声は、拡大を実行する処理と対応づけられている。実行する処理を示す認識用音声が、この実行する処理と対応づけられているこということは、実行する処理を示す認識用音声が、この実行する処理を示す識別子、具体的には、処理を実行させるための指示や指示名と対応づけられていることと考えてもよい。このような場合、実行される処理を表す認識用音声を取得するために読み上げられた実行する処理の識別子等が示す処理を、認識用音声に対応する実行する処理とし、この処理の識別子等を、上記で取得される実行する処理を示す情報としてもよい。認識用音声や、認識用音声に対応する特徴量等は、図示しない格納部等に予め格納しておくようにすればよい。
音声に関して取得される特徴量は、例えば、短時間ごとに切り出された音声信号から抽出される特徴ベクトルを時系列に配列したものである。ここで取得する特徴量は、例えば、三角型フィルタを用いたチャネル数24のフィルタバンク出力を離散コサイン変換したMFCCであり、その静的パラメータ、デルタパラメータ及びデルタデルタパラメータをそれぞれ12次元有し、さらに正規化されたパワーとデルタパワー及びデルタデルタパワーを有してもよい(合計39次元)。あるいは、特徴量は、MFCCの12次元、ΔMFCCの12次元、Δ対数パワーの1次元を含む25次元のものであってもよい。このように、種々の特徴量を用いることが可能である。特徴量は、特徴パラメータ、特徴ベクトルとも呼ばれる。
音声や音声データについて特徴量を取得する処理は公知技術であるため、ここでは詳細な説明は省略する。また、音声や音声データについて取得した特徴量を照合して、適合度を示す値等を取得する処理は公知技術であるため、ここでは詳細な説明は省略する。
なお、音声認識部103は、上記の音声の特徴量の代わりに、音声や音声データを音素や音素片に分解した情報等を用いて照合を行なって、処理対象を示す情報や、実行する処理を示す情報を取得しても良い。音素や音素片を取得する処理や、音素や音素片を符号化したデータを用いて検索を行なう処理については、公知技術であるため、ここでは詳細な説明は省略する。認識用音声や、認識用音声に対応する音素や音素片等は、図示しない格納部等に予め格納しておくようにすればよい。
なお、音声認識部103は、上記と同様に、音声認識処理を行なって、被処理対象を示す情報を更に有する情報を取得してもよい。被処理対象とは、例えば、オーサリングの処理対象であるオブジェクトが配置されるページやレイヤ等を意味する。被処理対象は、例えば、オブジェクトの移動先や、移動元や、複写先や、複写元等と考えてもよい。被処理対象を示す情報や、例えばページの識別子(例えばページ番号)や、レイヤの識別子等である。例えば、音声認識部103は、被処理対象を示す情報と対応づけられた被処理対象を示す認識用文字列や、認識用音声を用いて、上記と同様に、被処理対象を示す情報を取得しても良い。なお、音声認識処理により、被処理対象を示す情報を有する情報を取得する処理は、上述したような処理対象を示す情報を有する情報を取得する処理と同様であるため、ここでは説明を省略する。
同様に、音声認識部103は、音声認識処理を行って、レイヤを示す情報を更に有する情報を取得してもよい。ただし、ここで取得されるレイヤを示す情報は、当該レイヤに配置されている処理対象を特定するためのレイヤを示す情報である。例えば、音声認識部103は、レイヤを示す情報と対応づけられたレイヤを示す認識用文字列や、認識用音声を用いて、上記と同様に、レイヤを示す情報を取得しても良い。なお、音声認識処理により、レイヤを示す情報を有する情報を取得する処理は、上述したような処理対象を示す情報を有する情報を取得する処理と同様であるため、ここでは説明を省略する。
なお、音声認識部103が音声認識の結果として、音声データに対応するテキストデータを取得する場合、上述したようなテキストデータから、認識用文字列等を用いて、処理対象を示す情報や、実行する処理を示す情報を取得する処理を、音声認識部103が行なう代わりに、オーサリング処理部104が行なうようにしてもよい。
オーサリング処理部104は、音声認識部103の音声認識処理の結果に応じて、オーサリング処理を行なう。オーサリング処理部104は、オーサリングデータ格納部101に格納されている1以上のオーサリングデータに配置された1以上のオブジェクトについてオーサリング処理を行なう。例えば、オーサリング処理部104は、オーサリング処理を行なって、オーサリングデータを作成する。例えば、オーサリング処理部104は、オーサリング処理を行なって、オーサリングデータ格納部101に格納されている1以上のオーサリングデータを更新する。また、例えば、オーサリング処理部104は、オーサリング処理を行なって、オーサリングデータ格納部101に格納されている1以上のオーサリングデータから、新たなオーサリングデータを取得してもよい。
オーサリング処理とは、電子書籍やWEBページ等のデジタルコンテンツやマルチメディアデータなどの制作や編集を行なう処理である。オーサリング処理は、例えば、オーサリングデータに配置されたオブジェクトを処理対象として行なわれる処理や、オーサリングデータを構成するページを作成したり、削除したり、ページの順番等を変更したりする処理や、ページの属性(例えば、サイズや、色等)を設定する処理や、ページに図示しない格納部等に格納されている1以上のコンテンツを配置したり、ページからコンテンツを削除する処理等である。オーサリング処理は、オーサリングデータを新規に作成する処理や、ページにレイヤを作成したり、削除したりする操作であってもよい。
オーサリング処理部104がオブジェクトについて行なうオーサリング処理とは、特に、オーサリング処理のうちの、オブジェクトを処理対象として行なわれる処理である。オブジェクトについて行なわれるオーサリング処理は、例えば、オブジェクトの属性を変更する処理である。オブジェクトの属性とは、例えば、オブジェクトを表示するための属性である。オブジェクトを表示するための属性は、例えば、オブジェクトの位置や、サイズ、色、向き、透過度、解像度等である。例えば、オーサリング処理部104は、オブジェクトの位置を変更する処理を行なう。また、オーサリング処理部104は、オブジェクトの色を変更する処理を行なう。オブジェクトの色を変更する処理は、例えば、画像オブジェクトやテキストオブジェクトの明度、色相、および彩度の少なくとも一つを変更する処理である。あるいは、オブジェクトのRGB値や、CMYK値を変更する処理であっても良い。
また、オブジェクトについて行なうオーサリング処理は、オブジェクトをページに配置したり、ページから削除したりする処理であってもよい。また、一のページに配置されたオブジェクトを、他のページに配置する処理や、複製する処理等であっても良い。ここでのページは、例えば、オーサリング処理の結果として得られるオーサリングデータのページである。
例えば、オーサリング処理部104は、音声認識部103による音声認識処理の結果(以下、音声認識結果と称す)の少なくとも一部から処理対象の一または二以上のオブジェクトを特定する。また、音声認識結果の少なくとも一部から実行する一または二以上の処理を特定する。そして、上記で特定した処理対象のオブジェクトに対して、上記で特定した処理を行ってオーサリングデータを取得する。
例えば、オーサリング処理部104は、音声認識部103が音声認識結果として取得した、処理対象を示す情報と実行する処理を示す情報とを有する情報の少なくとも一部から処理対象を示す情報を取得して、この情報が示す一または二以上のオブジェクトを特定する。例えば、処理対象を示す情報が、処理対象となるオブジェクトの識別子(例えば、オブジェクト名やオブジェクトのファイル名等)である場合、オーサリング処理部104は、この識別子と対応づけられたオブジェクトを処理対象に特定する。また、処理対象が示す情報が、処理対象を特定するための条件の情報である場合、この条件を満たすオブジェクトを特定してもよい。例えば、処理対象を示す情報が、処理対象を特定するための属性値(例えば、データタイプや、色や、サイズ等)である場合、オーサリング処理部104は、この属性値を有するオブジェクトを処理対象に特定する。また、処理対象を示す情報が、ページやレイヤを示す情報である場合、オーサリング処理部104は、この処理対象を示す情報が示すページやレイヤに配置されているオブジェクトを処理対象に特定しても良い。また、音声認識結果として複数の処理対象を示す情報が取得された場合、オーサリング処理部104は、これらを組合わせにより特定されるオブジェクト(例えば、これらの論理和や論理積が示すオブジェクト)を処理対象に特定しても良い。
例えば、オーサリング処理部104は、音声認識部103が音声認識結果として取得した、処理対象を示す情報と実行する処理を示す情報とを有する情報の少なくとも一部から実行する処理を示す情報を取得して、この情報が示す一または二以上の処理を特定する。そして、オブジェクト等に対して、上記で特定した処理を行ってオーサリングデータを取得してもよい。例えば、オーサリング処理部104は、上記で特定した処理対象のオブジェクト等に対して、上記で特定した処理を行なってオーサリングデータを取得しても良い。
なお、上述したような音声認識部103が音声認識を行なって取得した音声に対応したテキストデータから、認識用文字列等を用いて、処理対象を示す情報や、実行する処理を示す情報を取得する処理を音声認識部103が行なう代わりに、オーサリング処理部104が行なうようにし、取得した処理対象を示す情報や、実行する処理を示す情報を用いて、オーサリング処理部104が処理対象や、実行する処理を特定するようにしても良い。後述する具体例においては、このような場合を例に挙げて説明する。
オーサリング処理部104は、例えば、音声認識部103が音声認識結果として取得した音声受付部102が受け付けた音声が示すテキストデータの先頭側から、処理対象を示す文字列を取得し、後尾側から実行する処理を示す文字列を取得する。また、例えば、オーサリング処理部104は、音声認識結果として取得したテキストデータの先頭側から、処理対象を示す文字列を取得し、その直後、あるいは、予め指定された1以上の手がかり句を挟んで配置される位置から、実行する処理を示す文字列を取得してもよい。また、オーサリング処理部104は、例えば、形態素解析と、手がかり句との組み合わせや、文字列の位置関係等により、処理対象を示す文字列や、実行する処理を示す文字列を取得してもよい。例えば、オーサリング処理部104は、「画像を拡大する」というテキストデータの先頭側から、「画像」という名詞句を処理対象を示す文字列として取得し、その後に「を」という手がかり句を介して位置する「拡大」という名詞句を、実行する処理を示す文字列として取得しても良い。また、オーサリングデータ格納部101に格納されている一のオーサリングデータに配置されたオブジェクトや、既に、ページ等に配置されているオブジェクトや、現在、表示部106により少なくとも一部が表示されているオーサリングデータに配置された一以上のオブジェクトに対応するオブジェクトの識別子の中から、音声認識結果により取得されたテキストデータ内に含まれるものを検索等により特定してもよい。同様に、既に、オーサリングデータのページ等に配置されているオブジェクトや、現在、表示部106により表示されているオブジェクトに対応する属性値や、予め図示しない格納部等に用意されている属性値の中から、対応する属性値が、音声認識結果により取得されたテキストデータ内に含まれる属性値を検索等により特定してもよい。同様に、オーサリング処理部104が実行可能なオーサリング処理を示す情報の中から、音声認識結果により取得されたテキストデータ内に含まれるものを検索等により特定してもよい。
なお、オーサリング処理部104は、処理対象を示す情報を、適宜、処理対象を特定可能な情報に変換して、この変換した情報を用いて、処理対象を特定してもよい。かかる場合も処理対象を示す情報を用いて、処理対象を特定することと考えてもよい。例えば、処理対象を示す情報が「画像」という自然言語の文字列である場合、この情報を、図示しない格納部等に予め用意された変換表や、変換ルール等を用いて、「データタイプ」が「イメージ」であるデータを処理対象に特定する情報等に変換してもよい。かかる変換は、公知であるため、ここでは詳細な説明は省略する。
また、オーサリング処理部104は、実行する処理を示す情報を、適宜、実行する処理を特定可能な情報に変換して、この変換した情報を用いて、実行する処理を特定してもよい。かかる場合も実行する処理を示す情報を用いて、実行する処理を特定することと考えてもよい。例えば、実行する処理を示す情報が「大きく」という自然言語の文字列である場合、この情報を、図示しない格納部等に予め用意された変換表や、変換ルール等を用いて、拡大する処理を特定する指示やコマンド等に変換してもよい。
なお、オーサリング処理部104は、音声認識の結果から、処理対象のオブジェクトだけを特定してもよく、実行する処理だけを特定するようにしてもよい。例えば、オーサリング処理部104は、音声認識の結果から、処理対象のオブジェクトを特定し、実行する処理は、予め指定されたデフォルトの処理を特定するようにしても良い。また、オーサリング処理部104は、現在、表示部106が表示しているオブジェクト(あるいは、現在表示されているオーサリングデータに配置されている現在表示されていないオブジェクト)を処理対象のオブジェクトに特定し、音声認識の結果から実行する処理を特定するようにしても良い。
オーサリング処理部104は、例えば、表示部106が表示しているオブジェクトを処理対象としてオーサリング処理を行なう。オーサリング処理部104は、例えば、音声認識結果により特定された処理対象のオブジェクトのうちの、表示部106が現在表示しているオブジェクトを処理対象として、オーサリング処理を行う。また、オーサリング処理部104は、音声認識結果が、処理対象を示す情報を有さない場合、表示部106が現在表示しているオブジェクトを処理対象として、オーサリング処理を行うようにしてもよい。
なお、オーサリング処理部104は、表示部106が表示画面内に全体を表示しているオブジェクトのみを処理対象としてオーサリング処理を行なうようにしてもよい。例えば、オーサリング処理部104は、表示部106が表示しているオブジェクトについて、表示画面内に全体が表示されているか否かを判断し、全体が表示されているものだけを表示対象に特定し、全体が表示されていないものは表示対象から除外するようにしてもよい。なお、この場合においても、上述したように、音声認識結果により特定された処理対象のオブジェクトのうちの、表示部106が表示画面内に全体を表示しているオブジェクトのみを処理対象として特定してもよい。
また、オーサリング処理部104は、表示部106が表示していないオブジェクトを処理対象としてオーサリング処理を行なうようにしてもよい。例えば、オーサリング処理部104は、現在表示されていないページに配置されたオブジェクトや、現在表示画面内に表示されていないオブジェクトを処理対象に特定してオーサリング処理を行うようにしてもよい。この場合、全体が表示されていないオブジェクトを、表示していないオブジェクトに含めるようにしてもよく、含めないようにしてもよい。また、この場合においても、上述したように、音声認識結果により特定された処理対象のオブジェクトのうちの、表示部106が表示していないオブジェクトだけを処理対象として特定してもよい。
また、オーサリング処理部104が取得するオーサリングデータが、1または2以上のレイヤを有する場合、オーサリング処理部104は、オーサリングデータの、音声認識処理により指定されたレイヤに対してオーサリング処理を行なうようにしてもよい。レイヤに対するオーサリング処理とは、例えば、指定されたレイヤが、オブジェクトが配置可能な一以上のレイヤである場合、このレイヤに配置されたオブジェクトについて行なわれる拡大や移動等の上述したようなオーサリング処理である。レイヤに配置されたオブジェクトについてオーサリング処理を行なうよう場合、指定されたレイヤに配置されたすべてのオブジェクトを処理対象として特定してもよく、上述したように、音声認識結果により特定された処理対象のオブジェクトのうちの、指定されたレイヤに配置されたオブジェクトだけを処理対象として特定してもよい。また、レイヤに対するオーサリング処理は、例えば、レイヤ自身の属性値等を変更する処理である。例えば、一のレイヤが、このレイヤの下に配置される他のレイヤに配置されたオブジェクトの属性値を変更するレイヤである場合、オーサリング処理は、この属性値を設定する処理であっても良く、このようなレイヤを生成する処理であっても良い。例えば、一のレイヤが、その下に配置される画像オブジェクトの彩度を変更するレイヤである場合、オーサリングsよりは、この一のレイヤが変更する彩度の量を変更する処理であっても良い。例えば、このような、下に配置される画像オブジェクトの属性値を変更するレイヤとしては、調整レイヤと呼ばれるものがある。また、レイヤ自身の属性値等を変更する処理は、レイヤの透過度や合成モード等の属性値を変更する処理であってもよい。
オーサリング処理部104は、音声認識結果の少なくとも一部から、被処理対象を特定し、被処理対象に対して1以上のオブジェクトを用いてオーサリング処理を行なうようにしてもよい。例えば、オーサリング処理部104は、音声認識結果から、被処理対象を示す情報を取得して、この被処理対象を示す情報が示す被処理対象を特定する。そして、この被処理対象に対して、オブジェクトを用いてオーサリング処理を行う。例えば、オーサリング処理部104は、現在表示されているページに配置された一のオブジェクトを、被処理対象を示す情報で特定されるページへ移動させるようにしてもよい。
オーサリング処理部104は、例えば、音声認識結果の少なくとも一部から、処理対象のオブジェクトを特定できた場合に、オブジェクトに対してオーサリング処理を行ない、処理対象のオブジェクトを特定できない場合に、表示部106が表示しているオブジェクトを処理対象としてオーサリング処理を行なうようにしてもよい。
オーサリング処理部104は、例えば、音声認識結果の少なくとも一部から、処理対象のオブジェクトを特定できた場合に、オブジェクトに対してオーサリング処理を行ない、処理対象のオブジェクトを特定できない場合に、オーサリングされている全てのオブジェクトを処理対象としてオーサリング処理を行なうようにしてもよい。オーサリングされているすべてのオブジェクトとは、例えば、オーサリング処理により、いずれかのページに配置されているすべてのオブジェクトや、オーサリング処理により、オーサリングデータに含まれることとなった全てのオブジェクトである。ただし、予めページ等に固定されているページ番号等の文字列や画像や、テンプレート等として固定されている文字列や画像等については、オーサリングされているオブジェクトから除外するようにしても良い。
なお、オーサリング処理部104が、オーサリングデータを生成したり、ページを生成したり、削除したり、レイヤを生成したり、オブジェクトを配置したり削除したり、オブジェクトの属性を変更したりする処理は、公知技術であるため、ここでは、詳細な説明は省略する。
なお、オブジェクトが、音声付データである場合、音声認識部103は、処理対象を示す情報として、音声受付部102が受け付けた音声から、処理対象を示す音声データや、この音声データの特徴量や、音素や、音素片等の処理対象を示す音声に関する情報を取得するようにし、オーサリング処理部104は、これらの処理対象を示す情報を用いて、音声付データであるオブジェクトが有する音声データについて、処理対象を示す音声に関する情報を用いて音声検索を行って、一致する音声を有すると判断された音声付データであるオブジェクトを処理対象に特定してもよい。
出力部105は、オーサリング処理部104の処理結果を出力する。例えば、出力部105は、オーサリング処理部104が取得したオーサリングデータを出力する。
ここでの出力とは、プリンタへの印字、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡し、図示しないモニタ等への表示などを含む概念である。例えば、出力部105は、オーサリング処理部104が取得したオーサリングデータを、オーサリングデータ格納部101に蓄積する。ここでのオーサリング処理部104が取得したオーサリングデータは、オーサリング処理中において一時的に取得されたオーサリングデータ等も含むと考えてもよい。また、例えば、出力部105は、オーサリング処理部104が取得したオーサリングデータを、外部の記憶媒体に蓄積したり、外部の装置等に送信してもよい。なお、ここでの表示は、後述する表示部106が行なう表示と同様の表示であっても良く、例えば、外部の装置を利用した表示等であっても良い。
出力部105は、通信手段等の出力デバイスを含むと考えても含まないと考えても良い。出力部105は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
表示部106は、オーサリングデータ格納部101に格納されている1以上のオーサリングデータを表示する。表示部106は、例えば、1以上のオブジェクトが配置されたオーサリングデータを表示する。表示部106が表示するオーサリングデータは、1以上のページのオーサリングデータや、1以上のページ内の一部の領域のオーサリングデータであっても良い。また、表示部106は、一のオーサリングデータの1以上のページの1以上のレイヤを表示しても良い。表示部106は、例えば、オーサリング処理の途中等において、オーサリングデータに変更が加えられる毎に、変更したオーサリングデータを表示してもよい。例えば、オーサリング処理部104によるオーサリング処理に応じてオーサリングデータ格納部101に格納されたオーサリングデータが更新される毎に、この更新に応じて、オーサリングデータの表示を更新してもよい。なお、ここでの表示は、オーサリングデータの画面を表示するためのデータを、図示しない外部の装置に送信することであっても良く、この画像を表示するためのデータにより外部の装置でオーサリングデータの画面を表示させることであっても良い。この外部の装置は、例えば、オーサリング装置1がサーバ装置である場合、このサーバ装置にネットワーク等で接続された端末装置である。この外部の装置は、例えば、オーサリングデータの画面を表示するためのデータを用いてこの画面の表示を行なう表示手段(図示せず)や、表示デバイス(図示せず)等を備えた装置である。
表示部106は、ディスプレイデバイスを含むと考えても含まないと考えても良い。表示部106は、ディスプレイデバイスのドライバーソフトまたは、ディスプレイデバイスのドライバーソフトとディスプレイデバイス等で実現され得る。
次に、オーサリング装置1の動作の一例について図2のフローチャートを用いて説明する。ここでは、オーサリング装置1のオーサリングデータ格納部101に既に一以上のオーサリングデータが予め格納されている場合を例に挙げて説明する。
(ステップS101)表示部106は、オーサリングデータ格納部101に格納されている一のオーサリングデータを表示するか否かを判断する。例えば、図示しない受付部が、一のオーサリングデータを表示する指示を受け付けた場合に、オーサリングデータを表示することを決定してもよい。オーサリングデータを表示する場合、ステップS102に進み、表示しない場合、ステップS101に戻る。
(ステップS102)表示部106は、一以上のオブジェクトが配置された一のオーサリングデータを、オーサリングデータ格納部101から図示しないメモリ等の記憶媒体等に読み出して図示しないモニタ等に表示する。例えば、オーサリングデータが複数のページを有している場合、表示部106は、オーサリングデータの予め指定された一以上のページや、ユーザにより指定された一以上のページを表示する。
(ステップS103)音声受付部102は、音声を受け付けたか否かを判断する。受け付けた場合、ステップS104に進み、受け付けていない場合、ステップS117に進む。
(ステップS104)音声認識部103は、ステップS103で受け付けた音声について音声認識処理を行って音声認識結果であるテキストデータを取得する。
(ステップS105)オーサリング処理部104は、ステップS104で取得したテキストデータに、処理対象を示す情報があるか否かを判断する。ある場合、この情報を取得して、ステップS106に進み、ない場合、ステップS112に進む。オーサリング処理部104は、図示しない格納部等に予め格納されているオブジェクトの属性値(例えば、データタイプ)を示す一以上の文字列を、処理対象を表す認識用文字列として読み出し、読み出した文字列に一致する文字列が含まれるか否かを判断し、含まれる場合、この属性値を、処理対象を示す情報として取得する。また、例えば、オーサリング処理部104は、現在表示部106が表示しているページに配置されている一以上のオブジェクトの識別子を、認識用文字列として取得し、この識別子と一致する文字列がステップS104で取得したテキストデータに含まれるか否かを判断し、含まれる場合、このオブジェクトの識別子を処理対象を示す情報として取得してもよい
(ステップS106)オーサリング処理部104は、処理対象となるオブジェクトを特定する。例えば、ステップS105で取得した処理対象を示す情報が、オブジェクトの識別子である場合、このオブジェクトの識別子が示すオブジェクトを、表示されているページ内において検出することで、処理対象のオブジェクトを特定する。また、ステップS105で取得した処理対象を示す情報が、オブジェクトの属性値を示す情報である場合、この属性値を有するオブジェクトを表示されているページ内において検出することで、処理対象のオブジェクトとして特定する。なお、オーサリング処理部104は、ここで検出したオブジェクトにおいて、オブジェクト全体が表示画面内に表示されていないオブジェクトを検出し、この検出したオブジェクトを除外したオブジェクトを、処理対象として特定するようにしてもよい。全体が表示されていないオブジェクトを処理対象から除外するか否かは、ユーザが予め設定しておくようにしても良い。
(ステップS107)オーサリング処理部104は、ステップS104で取得したテキストデータに、実行する処理を示す情報があるか否かを判断する。ある場合、この情報を読み出して、ステップS108に進み、ない場合、ステップS111に進む。例えば、予め用意された一以上の実行する処理を表す認識用文字列を図示しない格納部等から読み出し、読み出した実行する処理を表す認識用文字列と一致する文字列が含まれるか否かを判断し、含まれる場合、この処理を示す情報を取得する。
(ステップS108)オーサリング処理部104は、ステップS104で取得したテキストデータに、被処理対象を示す情報が含まれているか否かを判断する。含まれていない場合、ステップS109に進み、含まれている場合、ステップS111に進む。例えば、現在表示されているオーサリングデータに含まれる被処理対象を示す情報を、被処理対象を表す認識用文字列として取得し、これらのいずれかと一致する被処理対象を示す情報が含まれているか否かを判断し、含まれている場合、この被処理対象を示す情報を取得する。あるいは、形態素解析と手がかり句とを利用して、被処理対象を示す情報を取得してもよい。例えば、「ページ」や「レイヤ」という手がかり句と、これらの手がかり句の直前に検出される数詞等を検出することで、被処理対象であるページやレイヤを示す情報を検出してもよい。
(ステップS109)オーサリング処理部104は、ステップS107で取得した処理を示す情報が示す処理を、ステップS106で特定したオブジェクトに実行する。そして、ステップS103に戻る。なお、表示部106は、処理の実行結果に応じて、表示画面を適宜、更新する。
(ステップS110)オーサリング処理部104は、ステップS106で特定したオブジェクトに対して、デフォルトの処理を行う。そして、ステップS103に戻る。なお、表示部106は、処理の実行結果に応じて、表示画面を適宜更新する。
(ステップS111)オーサリング処理部104は、ステップS107で取得した処理を示す情報が示す処理を、ステップS108において取得した被処理対象について、ステップS106で特定したオブジェクトに実行する。なお、ステップS107で取得した処理を示す情報が示す処理が、ステップS108において取得した被処理対象について実行可能な処理でない場合には処理を実行しなくてもよい。そして、ステップS103に戻る。なお、表示部106は、処理の実行結果に応じて、表示画面を適宜更新する。
(ステップS112)オーサリング処理部104は、ステップS104で取得したテキストデータに、実行する処理を示す情報があるか否かを判断する。ある場合、この情報を読み出して、ステップS113に進み、ない場合、ステップS103に戻る。
(ステップS113)オーサリング処理部104は、ステップS104で取得したテキストデータに、レイヤを指定する情報が含まれているか否かを判断する。含まれていない場合、ステップS114に進み、含まれている場合、ステップS116に進む。
(ステップS114)オーサリング処理部104は、現在表示部106が表示しているオブジェクトを検出して特定する。オーサリング処理部104は、例えば、検出したオブジェクトの識別子等を取得する。
(ステップS115)オーサリング処理部104は、ステップS115で除外されずに残ったオブジェクトについて、ステップS112で取得した処理を示す情報が示すオーサリング処理を実行する。そして、ステップS116に戻る。なお、表示部106は、処理の実行結果に応じて、表示画面を適宜更新する。
(ステップS116)オーサリング処理部104は、ステップS113で検出したレイヤを示す情報が示すレイヤに配置されているオブジェクトを処理対象として特定し、このオブジェクトについて、ステップS112で取得した処理を示す情報が示すオーサリング処理を実行する。そして、ステップS116に戻る。なお、表示部106は、処理の実行結果に応じて、表示画面を適宜更新する。
(ステップS117)出力部105は、表示部106が表示しているオーサリングデータを出力するか否かを判断する。例えば、図示しない受付部等が、出力する指示を受け付けた場合に、オーサリングデータを出力することを決定する。出力する場合、ステップS118に進み、出力しない場合、ステップS103に戻る。
(ステップS103)出力部105は、表示部106が表示しているオーサリングデータを出力する。例えば、出力部105は、オーサリングデータを、外部に送信してもよく、変更されたオーサリングデータで、オーサリングデータ格納部101に格納されている変更前のオーサリングデータを更新(例えば、上書き)してもよい。
なお、図2のフローチャートにおいて、ステップS110でデフォルトの処理を行なわないようにしても良い。
また、図2のフローチャートのステップS106において特定する処理対象を、現在表示されているオブジェクトの少なくとも一部とする代わりに、表示部106が表示しているオブジェクトと同じオーサリングデータ(例えば、同じファイル等)に含まれる非表示のオブジェクトのうちの一部としても良く、非表示のオブジェクトの全てとしても良い。なお、処理対象を現在表示されているオブジェクトとするか、非表示のオブジェクトとするかは、例えば、ユーザが予め設定しておくようにしても良く、ユーザが処理を行なう際に指示するようにしてもよい。
また、図2のフローチャートのステップS114において、表示の有無にかかわらず、表示部106が表示しているオブジェクトと同じオーサリングデータ(例えば、同じファイル等)に含まれるすべてのオブジェクトを処理対象に特定してもよい。
また、図2のフローチャートのステップS115は省略してもよい。
なお、図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
以下、本実施の形態におけるオーサリング装置1の具体的な動作について説明する。
(具体例1)
図3は、本実施の形態のオーサリング装置1の一例を示す図であり、オーサリング装置1は、タブレット型端末であるとする。オーサリング装置1は、マイクロフォン102aと、モニタ106aとを備えているものとする。また、モニタ106aの表面には、図示しないタッチパネルが設けられているものとする。
図4は、オーサリングデータ格納部101に格納されたオーサリングデータを管理するオーサリングデータ管理表である。オーサリングデータ管理表は、「オーサリングID」と、「オーサリングデータ」という属性を有している。「オーサリングID」は、オーサリングデータの識別子であり、ここでは、オーサリングデータのファイル名であるとする。「オーサリングデータ」は、オーサリングデータであり、ここでは、オーサリングデータのファイルであるとする。ここでは一例として、オーサリングデータが、電子書籍である場合について説明する。
まず、ユーザがタッチパネル等を操作して、オーサリングデータ格納部101に格納されている、「オーサリングID」が「001」であるオーサリングデータを表示する指示をオーサリング装置1の図示しない受付部等に与えたとすると、表示部106は、オーサリングID「001」と対応づけられたオーサリングデータをオーサリングデータ格納部101からメモリ等に読出して、モニタ106aにこのオーサリングデータを表示する。ここでは、表示部106は、デフォルト等の設定に従って、このオーサリングデータの1ページ目の左上の一部の領域を表示する。以下、「オーサリングID」が「001」であるオーサリングデータをオーサリングデータ001と称す。
図5は、オーサリングデータ001のページ構成を示す模式図である。オーサリングデータ001は、第1ページであるページ51から第4ページであるページ54までの合計4ページのページを有しているものとする。各ページには、画像オブジェクトと、テキストオブジェクトとが配置されている。第一ページであるページ51には、テキストオブジェクト501および504と、画像オブジェクト502と503とが配置されている。
図6は、表示部106によるオーサリングデータ001の表示例を示す図である。モニタ106aには、ページ51の領域51aが表示されているものとする。具体的には、モニタ106aには、ページ51に配置されたテキストオブジェクト501の全体と、画像オブジェクト502の一部と、画像オブジェクト503の全体とが表示されている。
図7は、オーサリング処理部104が音声認識部103が音声認識結果として取得したテキストデータから処理対象を認識するために用いられる認識用文字列と、認識の結果として指定される処理対象との対応関係を管理する認識処理対象管理表である。認識処理対象管理表は、「対象文字列」と、「処理対象」という属性を有している。「対象文字列」は、処理対象を認識するための認識用文字列である。「処理対象」は、処理対象を示す情報であり、例えば、処理対象を検索するための属性とその属性値(属性:属性値)との組み合わせを示している。例えば、「データタイプ:画像」は、データタイプが画像であるオブジェクトを指定することを意味する。また、「オブジェクト名:ABC」は、オブジェクト名が「ABC」であるオブジェクトを指定することを示している。「対象文字列」の[**]は、1文字以上の連続する文字列を示す正規表現であるとする。例えば、「ファイル[**]」は、「ファイルABC」や「ファイルCDE」等を示す。認識処理対象管理表は、例えば、図示しない格納部等に予め格納されている。
なお、ここでは、「処理対象」の属性値は、自然言語で表しているが、「処理対象」は、例えば、これらの自然言語に相当する処理対象を特定するために用いられる一以上の属性名や、属性値等で構成されていてもよい。また、「処理対象」は、これらの自然言語に対応する検索処理や判断処理等に用いられる検索キー等のデータであっても良い。
図8は、オーサリング処理部104が音声認識部103が音声認識結果として取得したテキストデータから実行する処理を認識するために用いられる認識用文字列と、認識の結果として指定される処理との対応関係を管理する認識処理管理表である。認識処理管理表は、「処理文字列」と、「処理」という属性を有している。「処理文字列」は、実行する処理を認識するための認識用文字列である。「処理」は、実行する処理を示す情報である。「処理」の[被処理対象]は、後述する被処理対象管理表を用いて取得される被処理対象の文字列である。認識処理管理表は、例えば、図示しない格納部等に予め格納されている。
なお、ここでは、「処理」の属性値は、自然言語で表しているが、「処理」は、例えば、これらの自然言語に相当する一以上の関数や、メソッド名や、「if」、「then」等で示される制御構文等で構成されていてもよい。また、「処理対象」は、これらの自然言語に対応する判断処理等を行うためのアルゴリズムであっても良い。
図9は、オーサリング処理部104が音声認識部103が音声認識結果として取得したテキストデータから被処理対象を認識するために用いられる認識用文字列を管理する被処理対象管理表である。被処理対象管理表は、「被処理対象」は、被処理対象を認識するための認識用文字列である。「被処理対象」において、[***]は、1文字以上の連続する文字列を示す正規表現であるとする。例えば、「レイヤ[***]」は、「レイヤABC」や、「レイヤDEF」等を示す。
次に、ユーザが、図6に表示されている画像のサイズを拡大するために、マイクロフォン102aに対して「画像を大きく」という音声を発したとする。この音声は、「画像」という処理対象を示す音声と、「大きく」という処理を示す音声とを有する音声であるとする。音声受付部102は、マイクロフォン102aを介して、ユーザが発した音声を音声信号として受け付け、標本化を行なって音声データに変換する。
そして、音声認識部103が、音声受付部102が取得した音声データに対して音声認識を行なった結果、「画像を大きく」というテキストデータを取得したとする。
オーサリング処理部104は、図7に示した認識処理対象管理表の各レコード(行)から、処理対象を表す認識用文字列である「対象文字列」の属性値を順次読出し、読出した属性値と一致する文字列が、音声認識部103が取得したテキストデータに含まれるか否かを順次判断する。そして、含まれると判断された属性値に対応するレコードの「処理対象」の属性値、つまり、含まれると判断された属性値と同じレコードの「処理対象」の属性値を取得する。
ここでは、図7の上から一行目のレコードの「対象文字列」である「画像」と一致する文字列が、音声認識部103が取得したテキストデータに含まれるため、このレコード「処理対象」の値である「データタイプ:画像」を処理対象を示す情報として取得する。
オーサリング処理部104は、つぎに、図8に示した認識処理管理表の各レコード(行)から、実行する処理を表す認識用文字列である「処理文字列」の属性値を順次読出し、読出した属性値と一致する文字列が、音声認識部103が取得したテキストデータに含まれるか否かを順次判断する。そして、含まれると判断された属性値に対応するレコードの「処理」の属性値、つまり、含まれると判断された属性値と同じレコードの「処理」の属性値を取得する。
ここでは、図7の上から一行目のレコードの「処理文字列」である「大きく」と一致する文字列が、音声認識部103が取得したテキストデータに含まれるため、このレコード「処理」の値である「120%拡大」を取得する。この「120%拡大」は、オブジェクトを120%拡大する処理の実行を指示する情報であるとする。
さらに、オーサリング処理部104は、図9に示した被処理対象管理表の「被処理対象」の属性値を順次読出し、読出した属性値と一致する文字列が、音声認識部103が取得したテキストデータに含まれるか否かを順次判断する。そして、含まれると判断された属性値を取得する。例えば、テキストデータには、「レイヤ」や、「ページ」という文字列が含まれないため、図9に示した被処理対象管理表のいずれのレコードの「被処理対象」の属性値も、一致するものがなかったとする。なお、一致するものがあるか否かの判断において、「被処理対象」の属性値に含まれる正規表現の開始位置や、終了位置等は、形態素解析等を用いてテキストデータから取得した形態素の区切り等から判断してもよい。
上述したように、音声認識部103が取得したテキストデータから、処理対象を示す情報が取得され、処理を示す情報が取得され、被処理対象を示す情報が取得できなかったため、オーサリング処理部104は、現在表示されているオブジェクトのうちの、処理対象を示す情報「データタイプ:画像」が示すオブジェクトであって、全体がモニタ106aに表示されているオブジェクトに対して、処理を示す情報「120%拡大」が示すオーサリング処理を行なう。
具体的には、現在表示されているオブジェクトのうちの、データタイプが画像であるオブジェクトであるオブジェクト502およびオブジェクト503を検出する。さらに、検出したオブジェクト502およびオブジェクト503の中から、オブジェクト全体がモニタ106aに表示されていないオブジェクトを検出する。例えばオブジェクト内の座標の一部が、表示領域内に位置していないオブジェクトを検出する。ここでは、オブジェクト502を検出して、このオブジェクト502を、処理対象から除外する。そして、オーサリング処理部104は、処理対象として残ったオブジェクト502に対して、サイズ(大きさ)を120%拡大する処理を行なう。そして、表示部106は、このようにして取得されたオーサリングデータにより、モニタ106aの表示を更新する。
図10は、オーサリング処理後に表示部106が表示したオーサリングデータを示す図である。
なお、拡大処理の対象がテキストオブジェクトである場合、テキストが配置される領域を拡大するようにしても良く、テキストの文字サイズを変更するようにしても良い。
また、ここでは、オブジェクト全体がモニタ106aに表示されていないオブジェクトを処理対象から除外するようにしたが、除外しないようにしてもよい。例えば、除外するか否かをユーザの指示等に応じて切り替えられるようにしてもよい。
また、ここでは、音声認識部103が取得したテキストデータに、「大きく」という文字列が含まれている場合について説明したが、例えば、仮に、このテキストデータに「大きく」の代わりに「もっと明るく」という文字列が含まれていた場合、オーサリング処理部104は、このテキストデータについて上記と同様の処理を行なって、図8に示した認識処理管理表から、「明度を10%上げる」という処理を示す情報を取得する。これにより、オーサリング処理部104が実行する処理が、画像オブジェクトの明度を10%上げることに特定される。そして、オーサリング処理部104が、この処理を、上記で特定された現在表示されている画像オブジェクトに対して行なうことで、現在表示されている画像オブジェクトの明度の値が10%上げられて、表示される画像の明るさが明るくなる。
また、仮に、図6に示した状態において、音声受付部102がユーザから受け付けた音声が、「画像を4ページにコピー」という音声であったとし、音声認識部103が音声認識結果として「画像を第4ページにコピー」というテキストデータを取得したとする。
オーサリング処理部104は、音声認識結果として得られたテキストデータから、上記と同様の処理を行なって、処理対象を示す情報である「データタイプ:画像」と、処理を示す情報である「[被処理対象]にコピー」と、被処理対象を示す「第4ページ」とを取得する。例えば、上記のテキストデータは、「第4ページ」というテキストを含んでおり、このテキストが、図9に示した被処理対象管理表の上から二行目のレコードの「[***]ページ」という正規表現を有する文字列と一致するため、オーサリング処理部104は、テキストデータから、この文字列に一致するテキストである「第4ページ」を,被処理対象を示す情報として取得する。
そして、オーサリング処理部104は、現在表示されているオブジェクトのうちの、データタイプが画像であるオブジェクトであるオブジェクト502およびオブジェクト503を第4ページにコピーする処理、具体的にはオブジェクト502およびオブジェクト503を複製して第4ページに配置する処理を行なう。ここでは、第1ページであるページ51のオブジェクト502およびオブジェクト503の複製であるオブジェクト502aおよび503aを、第4ページであるページ54の同じ位置(例えば同じ座標)に配置する。なお、ページ51〜ページ54には、例えば、「第1ページ」〜「第4ページ」という識別子をそれぞれ予め対応づけておくことで、コピー元のページと、コピーしたオブジェクトの配置先となるページを検出可能である。
これにより、「オーサリングID」が「001」であるオーサリングデータ001は、図11に示すように変更される。
また、仮に、図6に示した状態において、ユーザが、マイクロフォン102aに対して「もっと右」という音声を発したとする。この音声は、右へ移動させることを指示する音声であるとする。音声受付部102は、マイクロフォン102aを介して、ユーザが発した音声を音声信号として受け付け、標本化を行なって音声データに変換する。そして、音声認識部103が、音声認識を行なって、「もっと右」というテキストデータを取得したとする。
オーサリング処理部104は、上記と同様に、図7に示した認識処理対象管理表の「対象文字列」の属性値を順次読出して一致する文字列が、音声認識部103が取得したテキストデータに含まれるか否かを順次判断するが、ここでは、いずれも含まれないと判断されたとする。つまり、オーサリング処理部104が、音声認識結果から、処理対象を特定できなかったとする。
このため、オーサリング処理部104は、上記と同様に、図8に示した認識処理管理表の各レコード(行)から、「処理文字列」の属性値を順次読出し、一致する文字列が、音声認識部103が取得したテキストデータに含まれると判断された場合に、含まれると判断された属性値に対応するレコードの「処理」の属性値を取得する。
ここでは、図7の上から六行目のレコードの「処理文字列」である「もっと右」と一致する文字列が取得したテキストデータに含まれるため、このレコードの「処理」の値である「右へ10ピクセル移動」を取得する。この処理は、オブジェクトを右に10ピクセル移動させる処理であり、この処理が、処理対象に対して行なう処理として特定された処理である。
さらに、オーサリング処理部104は、音声認識部103が取得したテキストデータに、レイヤを指定する情報が含まれるか否かを判断する。ここでは、具体的に、オーサリング処理部104は、取得したテキストデータに、図9に示した被処理対象管理表の上から一行目の属性値と同様の、「レイヤ[***]」という正規表現を含む文字列と一致する文字列が含まれるか否かを判断する。ここでは、一致する文字列が含まれないと判断される。
このため、オーサリング処理部104は、現在、表示部106がモニタ106aに表示している全てのオブジェクトであるオブジェクト501〜503を検出して,処理対象に特定する。
なお、ここでも、上記と同様に、一部が表示されていないオブジェクトは、処理対象から除外するようにしても良い。また、現在表示されている全てのオブジェクトの代わりに、オーサリング処理部104は、現在少なくとも一部が表示されているページであるページ51に配置されているオブジェクトを処理対象として特定するようにしても良い。
そして、オーサリング処理部104は、上記で特定したオブジェクト501〜503に対して、それぞれ、上記で特定した処理であるオブジェクトの位置、ここでは座標を、右へ10ピクセル移動させる処理を行なう。そして、表示部106は、このようにして取得されたオーサリングデータにより、モニタ106aの表示を更新する。
図12は、オーサリング処理後に表示部106が表示したオーサリングデータを示す図である。
図13は、ページ51が複数のレイヤを有している場合を説明するための模式図である。ここで、例えば、図5に示したオーサリングデータ001の第1ページであるページ51が、図13に示すように、レイヤ51aと、レイヤ51bとで構成されていたとする。レイヤ51aには、オブジェクト501およびオブジェクト502が配置され、レイヤ51bには、オブジェクト503およびオブジェクト504が配置されていたとする。また、レイヤ51aは、「レイヤLF」というレイヤ名が対応づけられており、レイヤ51bには、「レイヤLB」というレイヤ名が対応づけられていたとする。
このような場合において、仮に、図6のように、ページ51を表示した状態で、ユーザが、マイクロフォン102aに対して「レイヤLFを大きく」という音声を発したとする。この音声は、「レイヤLF」という被処理対象を示す音声と、「大きく」という処理を示す音声とを有する音声であるとする。音声受付部102は、マイクロフォン102aを介して、ユーザが発した音声を音声信号として受け付け、標本化を行なって音声データに変換する。そして、音声認識部103が、音声認識を行なって、「レイヤLFを大きく」というテキストデータを取得したとする。
オーサリング処理部104は、上記と同様に、図7に示した認識処理対象管理表の「対象文字列」の属性値を順次読出して一致する文字列がこのテキストデータに含まれるか否かを順次判断するが、ここでは、いずれも含まれないと判断されたとする。
このため、オーサリング処理部104は、上記と同様に、図8に示した認識処理管理表の各レコード(行)から、「処理文字列」の属性値を順次読出し、一致する文字列がこのテキストデータに含まれるか否かを判断して、上記と同様に、処理対象に対して行なう処理を特定する情報として、「120%拡大」を取得する。
さらに、オーサリング処理部104は、音声認識部103が取得したテキストデータに、「レイヤ[***]」と一致する文字列が含まれるか否かを判断する。ここでは、「レイヤLF」がこの文字列と一致するため、一致する文字列が含まれると判断される。
このため、オーサリング処理部104は、現在、表示部106がモニタ106aに一部が表示しているページ51の、レイヤ名が「レイヤLF」であるレイヤ51aに配置されている全てのオブジェクトであるオブジェクト501及びオブジェクト502を検出して,処理対象に特定する。
なお、ここでも、上記と同様に、一部が表示されていないオブジェクトは、処理対象から除外するようにしても良い。
そして、オーサリング処理部104は、上記で特定したレイヤ51aに配置されているオブジェクト501及びオブジェクト502に対して、それぞれ、上記で特定した処理であるオブジェクトのサイズを120%拡大する処理を行なう。そして、表示部106は、このようにして取得されたオーサリングデータにより、モニタ106aの表示を更新する。これにより、図5に示したオーサリングデータ001のオブジェクト501および502を120%拡大したオーサリングデータを取得して、表示することができる。
(具体例2)
上記具体例においては、音声認識部103による音声認識結果から、処理対象のオブジェクトを特定できない場合に、表示部106がモニタ106aに表示しているオブジェクトや、表示部106が表示しているページに配置されたオブジェクトに対して処理を行なう例について説明したが、以下においては、オーサリング処理部104が、オーサリングデータに配置されたオブジェクトのうちの、現在表示されているオブジェクト以外のオブジェクトに配置された全てのオブジェクトに対して処理を行なう例について説明する。
例えば、上記具体例と同様にオーサリングデータ001をモニタ106aに表示した状態で、ユーザが、マイクロフォン102aに対して「大きく」という音声を発したとする。この音声は、「大きく」という処理を示す音声とを有する音声であるとする。音声受付部102は、マイクロフォン102aを介して、ユーザが発した音声を音声信号として受け付け、標本化を行なって音声データに変換する。そして、音声認識部103が、音声認識を行なって、「大きく」というテキストデータを取得したとする。
オーサリング処理部104は、上記と同様に、図7に示した認識処理対象管理表の「対象文字列」の属性値を順次読出して一致する文字列が、音声認識部103が取得したテキストデータに含まれるか否かを順次判断するが、ここでは、いずれも含まれないと判断されたとする。つまり、オーサリング処理部104が、音声認識結果から、処理対象を特定できなかったとする。
このため、オーサリング処理部104は、上記と同様に、図8に示した認識処理管理表の各レコード(行)から、「処理文字列」の属性値を順次読出し、一致する文字列が、音声認識部103が取得したテキストデータに含まれるか否かを判断する。そして、含まれると判断した場合に、含まれると判断した属性値に対応するレコードの「処理」の属性値を取得する。
ここでは、図7の上から一行目のレコードの「処理文字列」である「大きく」と一致する文字列が取得したテキストデータに含まれるため、このレコードの「処理」の値である「120%拡大」を取得する。この処理が、処理対象に対して行なう処理として特定された処理である。
さらに、オーサリング処理部104は、音声認識部103が取得したテキストデータに、レイヤを指定する情報が含まれるか否かを判断する。ここでは、具体的に、オーサリング処理部104は、取得したテキストデータに、図9に示した被処理対象管理表の上から一行目の属性値と同様の、「レイヤ[***]」という正規表現を含む文字列と一致する文字列が含まれるか否かを判断する。ここでは、一致する文字列が含まれないと判断されたとする。
このように、音声認識結果から処理対象のオブジェクトを特定できず、レイヤも検出されないため、オーサリング処理部104は、オーサリングデータ001に配置されているオブジェクトのうちの、現在、表示部106がモニタ106aに表示しているオブジェクトであるオブジェクト501〜503以外のオブジェクト、つまり現在表示されていない全てのオブジェクトを検出して、処理対象に特定する。
なお、オブジェクト502のように、オブジェクトの一部しか表示されていないオブジェクトは、現在表示されていないオブジェクトと考えて、処理対象に加えるようにしても良い。また、現在表示されている全てのオブジェクトの代わりに、オーサリング処理部104は、現在少なくとも一部が表示されているページであるページ51に配置されている全てのオブジェクト(ここでは、例えば、オブジェクト501〜504)を処理対象から除外するようにしても良い。
そして、オーサリング処理部104は、オーサリングデータ001の上記で特定したオブジェクト501〜503以外の全てのオブジェクトに対して、それぞれ、上記で特定した処理であるオブジェクトのサイズを120%拡大する処理を行なう。そして、表示部106は、このようにして取得されたオーサリングデータにより、モニタ106aの表示を更新する。
図14は、オーサリング処理後により変更されたオーサリングデータ001のページ構成を示す模式図である。図14に示すように、非表示のオブジェクト、つまり、ページ52〜54に配置されたオブジェクトおよびオブジェクト504のサイズが、図5に対して、いずれも120%拡大されている。
なお、非表示のオブジェクトを処理対象とする処理は、上記以外の処理についても適宜適用してもよいことはいうまでもない。
以上、本実施の形態によれば、音声を用いてオブジェクトについてオーサリング処理を行なうことができる。これにより、例えば、両手がふさがっている場合においても、容易にオーサリング処理を行なうことができる。
なお、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
また、上記各実施の形態では、オーサリング装置がスタンドアロンである場合について説明したが、オーサリング装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、受付部や出力部や表示部等は、通信回線を介して入力を受け付けたり、画面を表示するためのデータ等を出力したりすることになる。
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、格納部(例えば、ハードディスクやメモリ等の記録媒体)にアクセスしながらプログラムを実行してもよい。
なお、上記各実施の形態におけるオーサリング装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、1以上のオブジェクトが配置されたデータであるオーサリングデータが格納されるオーサリングデータ格納部にアクセス可能なコンピュータを、音声を受け付ける音声受付部と、音声受付部が受け付けた音声について音声認識処理を行なう音声認識部と、音声認識部の音声認識処理の結果に応じて、オーサリングデータ格納部に格納されているオーサリングデータに配置されたオブジェクトについてオーサリング処理を行なうオーサリング処理部とオーサリング処理部の処理結果を出力する出力部として機能させるためのプログラムである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
図15は、上記プログラムを実行して、上記実施の形態によるオーサリング装置を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
図15において、コンピュータシステム900は、CD−ROM(Compact Disk Read Only Memory)ドライブ905を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図16は、コンピュータシステム900の内部構成を示す図である。図16において、コンピュータ901は、CD−ROMドライブ905に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM(Random Access Memory)913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANへの接続を提供する図示しないネットワークカードを含んでいてもよい。
コンピュータシステム900に、上記実施の形態によるオーサリング装置等の機能を実行させるプログラムは、CD−ROM921に記憶されて、CD−ROMドライブ905に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921、またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、上記実施の形態によるオーサリング装置の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。