以下、情報処理システム、情報処理方法及びプログラムの適用例となる音声操作システムの説明をする。
〔システムの概略〕
図1は、本実施形態に係る音声操作システムの構成の一例を示す図である。図1に示すように、本実施形態の音声操作システム1は、少なくとも1以上のスマートスピーカ2、音声認識サーバ装置3、AIアシスタントサーバ装置4及び少なくとも1以上の複合機6(MFP:Multifunction Peripheral。以下、単にMFP6とも呼ぶ)を、例えばLAN(Local Area Network)等のネットワーク7を介して相互に接続することで形成されている。
ここで、音声操作システム1は、情報処理システムの一例である。スマートスピーカ2は、内蔵されているマイクで音声を集音して音声データを得るリモート操作可能な周知のスマートスピーカ装置である。また、スマートスピーカ2は、音声入力によって、例えば、音楽及び動画などの各種コンテンツ、天気、ニュース等の視聴を可能にする人工知能を搭載した機器であり、例えば、対話型の音声操作に対応したAIアシスタント機能を持つスピーカを指す。さらに、スマートスピーカ2は、照明及び家電等の各種機器を音声によって遠隔操作する機能も備える。
スマートスピーカ2は、例えば、ユーザ(使用者ともいう)の発話による音声操作を受け付け、音声操作によって得られる音声データ(音声情報ともいう)に基づいて、MFP6に対する原稿を読み取るための命令(以下、読取命令と記載する)等の各種命令(ジョブ)に伴う処理(以下、所定の処理ともいう)を実行する音声操作システム1における音声取得装置の一例として機能する。なお、スマートスピーカ2は、上述したように音声操作システム1において1以上備えられていてもよい。また、スマートスピーカ2は、受け付けた音声操作に基づく音声データを、ネットワーク7を介して音声認識サーバ装置3(又はクラウドサービス装置5)に送信する。さらに、スマートスピーカ2は、ユーザの発話による音声操作から得られる音声データを補完するために、ユーザに対してフィードバックを行うためのマイク機能、カメラ機能等を有してもよい。
音声認識サーバ装置3は、スマートスピーカ2で得られた音声データを受信し、テキストデータに変換する機能を備える。また、AIアシスタントサーバ装置4は、音声認識サーバ装置3と連携してスマートスピーカ2で得られた音声データを処理する機能を備える。音声認識サーバ装置3及びAIアシスタントサーバ装置4は、ネットワーク7を介して相互に接続され、一つに纏めてクラウドサービス装置5としても機能する。クラウドサービス装置5は、例えば、MFP6に対して読取命令を生成して送信する。
上述したクラウドサービス装置5を構成する音声認識サーバ装置3及びAIアシスタントサーバ装置4のうちの少なくとも一つ又はその両方は、情報処理装置の一例である。
AIアシスタントサーバ装置4は、音声認識サーバ装置3によって変換されたユーザの意図に基づいてMFP6が解釈可能な読取命令に変換する。AIアシスタントサーバ装置4は、変換した読取命令等を、ネットワーク7を介してMFP6に送信する。ここで、読取命令は、例えば、ユーザがスマートスピーカ2に対して音声操作により与えられた原稿を読み取るための指示(以下、原稿読取指示と記載する)に基づいて生成される。なお、原稿読取指示は、情報処理要求の一例である。
また、AIアシスタントサーバ装置4は、HDD44等の記憶部に管理データベース401(以下、管理DB401という)及び紐づけ用データベース402(以下、紐づけ用DB402という)を備えている。管理DB401及び紐づけ用DB402は、例えば、クラウドサービス装置5がネットワーク7上に備えるHDD等の記憶部を用いることができる。このほか、管理DB401及び紐づけ用DB402のうち、一方又は両方を、ネットワーク7を介してクラウドサービス装置5でアクセス可能な別のサーバ装置に記憶してもよい。
管理DB401には、例えば、AIアシスタントサーバ装置4が提供するコンテンツ(データ)としてのテキストデータ、画像データ及び音声データ等が記憶されている。
なお、管理DB401で管理される情報は、例えば、ネットワーク7を介して接続されるMFP6によって新規追加又は変更することができる。図1では、管理DB401とMFP6は別体として図示しているが、同一の機能を備えたサーバとして構成してもよい。この場合、後述する管理プログラムは、管理DB401に対してMFP6に対する読取命令を送信することによって、管理DB401が管理する各種情報を取得してもよい。
一方、紐づけ用DB402には、例えば、各スマートスピーカ2(音声取得装置)を識別するためのデバイスID(以下、単にデバイスIDともいう)と、各スマートスピーカ2に関連付けられた情報処理装置としてのMFP6(MFP_#1、MFP_#2、等)の機器IDとが関連付けられて記憶されている。この紐づけ用DB402の詳細については、後述する。
本実施形態では、管理DB401及び紐づけ用DB402は、AIアシスタントサーバ装置4に含まれることを例示しているが、それぞれAIアシスタントサーバ装置4と別に設けられてもよいし、いずれか一方がAIアシスタントサーバ装置4に含まれ、他方がAIアシスタントサーバ装置4と別に設けられてもよい。
また、本実施形態では、音声認識サーバ装置3及びAIアシスタントサーバ装置4の二つのサーバ装置を一つに纏めたクラウドサービス装置5として説明する。但し、音声認識サーバ装置3、AIアシスタントサーバ装置4のそれぞれは、さらに複数のサーバ装置に分けて実現されてもよい。
さらに、本実施形態では、クラウドサービス装置5の機能の一部又は全部を、スマートスピーカ2又はMFP6が有していてもよい。クラウドサービス装置5の機能の全部をスマートスピーカ2又はMFP6が有している場合、音声操作システム1にクラウドサービス装置5は含まれていなくてもよい。このような場合、スマートスピーカ2はクラウドサービス装置5を介さずにMFP6と通信してもよく、音声操作システム1は、スマートスピーカ2及びMFP6を纏めた入力応答システム8を構築してもよい。
上述したように、クラウドサービス装置5は、音声認識サーバ装置3とAIアシスタントサーバ装置4を含む場合について説明したが、音声認識サーバ装置3の機能の一部又は全部をAIアシスタントサーバ装置4が有していてもよいし、AIアシスタントサーバ装置4の機能の一部又は全部を音声認識サーバ装置3が有していてもよい。つまり、音声認識サーバ装置3とAIアシスタントサーバ装置4が互いの機能を補完し合う構成でもよい。また、クラウドサービス装置5は一つのサーバによって構成されていてもよいし、3以上のサーバによって構成されていてもよい。
上述した各構成によって、音声操作システム1では、ユーザから発話された読取処理に係る音声をスマートスピーカ2が集音して音声データを取得してクラウドサービス装置5に音声データを送信する。クラウドサービス装置5は、スマートスピーカ2から受信した音声データに基づいて読取命令を生成し、生成した読取命令を、ネットワーク7を介してMFP6に送信する。さらに、読取命令を受信したMFP6は、受信した読取命令を実行する。ここで、MFP6は、画像読取装置の一例である。なお、上述したネットワーク7は、有線LAN、無線LANのいずれで構成されてもよい。
〔ハードウェア構成〕
次に、図2乃至図6を用いて、本実施形態のスマートスピーカ2、音声認識サーバ装置3、AIアシスタントサーバ装置4及びMFP6のハードウェア構成を詳細に説明する。
<スマートスピーカのハードウェア構成>
図2は、スマートスピーカのハードウェア構成の一例を示す図である。音声取得装置の一例としてのスマートスピーカ2は、図2に示すようにCPU21、RAM22、ROM23、インターフェイス部(I/F部)24及び通信部25を含むハードウェア資源を、内部バス26を介して相互に接続される。
CPU21は、スマートスピーカ2全体を統括制御する制御デバイスである。
RAM22は、例えば、ROM23等に記憶された各種プログラムがダウンロードされ、CPU21によって各種処理が実行されるワークエリアとしての機能を有する。
ROM23には、操作音声処理プログラムを含む各種プログラムを構成するデータが記憶されている。CPU21は、これらの処理プログラムを実行することで、MFP6に対する音声操作による処理を可能とする。また、CPU21は、クラウドサービス装置5から取得したデータのタッチパネル27への表示制御、スピーカ部28を介したフィードバックのための音声出力制御、画像出力制御等を実行する。
I/F部24には、タッチパネル27、スピーカ部28、マイクロホン部29及び撮像部(カメラ部)30が接続される。
通信部25は、ユーザによる音声操作によって得られた情報を、ネットワーク7を介して音声認識サーバ装置3に送信する。また、通信部25は、ネットワーク7を介して他の装置と通信を行う際、有線、無線いずれの通信形態でも通信を行うことが可能である。
内部バス26は、CPU21、RAM22、ROM23、I/F部24及び通信部25を接続する汎用バスである。この内部バス26は、スマートスピーカ等の汎用機器で一般的に用いられるバスであればその種類は問わない。
タッチパネル27は、例えば、液晶表示部(LCD:Liquid Crystal Display)とタッチセンサとが一体的に形成されたものである。タッチパネル27は、液晶表示部上に配置されたタッチキー等に対してユーザがタッチ動作等を行うことによって、所望の動作が指定される。
スピーカ部28は、ユーザに対して、不足する情報の入力等を促すための音声による音声フィードバックを行う。
マイクロホン部29は、例えば、音声操作によってMFP6に対して原稿の読み取りを実行させるために、ユーザが発話した音声によって与えられた音声データを取得する。取得された音声データは、通信部25を介して音声認識サーバ装置3に送信され、音声認識サーバ装置3でテキストデータに変換される。
撮像部(カメラ部)30は、スマートスピーカ2を使用するユーザ及びその他の画像等を撮影する。撮影された画像等は、動画像データ若しくは静止画像データ(以下、単に画像データと呼ぶ)として通信部25を介して音声認識サーバ装置3に送信される。
<音声認識サーバ装置のハードウェア構成>
図3は、音声認識サーバ装置のハードウェア構成の一例を示す図である。
音声認識サーバ装置3は、図3に示すように、CPU31、RAM32、ROM33、HDD(Hard Disk Drive)34、インターフェイス部(I/F部)35及び通信部36を含むハードウェア資源を、内部バス37を介して相互に接続される。また、I/F部35には、表示部38及び操作部39が接続される。
HDD34には、以下の操作音声変換プログラムを構成するデータが記憶されている。なお、操作音声変換プログラムは、例えば、スマートスピーカ2から受信した音声データをテキストデータに変換する。続いて、操作音声変換プログラムは、変換したテキストデータを予め定義された辞書情報と一致するか否かを判断する。辞書情報と一致するか否かの判断において、操作音声変換プログラムは、辞書情報と一致した場合には、テキストデータをユーザの意図を示すインテント(Intent)及び所定の処理の実行条件などの変数を示すパラメータに変換する。その後、操作音声変換プログラムは、ユーザの意図を示すインテント及び所定の処理の実行条件などの変数を示すパラメータを、AIアシスタントサーバ装置4に送信する。
CPU31は、上述した操作音声変換プログラムを含む各種プログラムを実行する。つまり、音声認識サーバ装置3は、音声データを受信して、音声を解析する装置として機能する。なお、操作音声変換プログラム、操作画像変換プログラム、音声アシスタントプログラムは、一つのサーバ装置で実行されてもよいし、それぞれ異なるサーバ装置で実行されてもよい。さらに、複数のサーバ装置の連携によって、これらのプログラムが実行されてもよい。
RAM32は、例えば、ROM33等の記憶部に記憶された各種プログラムがダウンロードされ、CPU31によって各種処理が実行されるワークエリアとしての機能を有する。
ROM33には、HDD34に記憶された各種プログラム以外のその他のプログラムを構成するデータが記憶されている。CPU31は、ROM33に記憶された各種プログラムを実行することで、スマートスピーカ2及びAIアシスタントサーバ装置4との間の制御を行ってもよい。
I/F部35には、表示部38及び操作部39が接続される。
通信部36は、ユーザの発話に伴う音声操作によって得られた音声データをスマートスピーカ2から受信する。また、通信部36は、ネットワーク7を介して他の装置と通信を行う際、有線、無線いずれの通信形態でも通信を行うことが可能である。
内部バス37は、CPU31、RAM32、ROM33、HDD34、I/F部35及び通信部36を接続する汎用バスである。この内部バス37は、音声認識サーバ装置3がサーバ装置としての機能が実現できるものであれば、その種類は問わない。
表示部38は、例えば、液晶表示部(LCD:Liquid Crystal Display)で構成され、例えば、音声認識サーバ装置3の各種状態を表示する。
操作部39は、例えば、液晶表示部とタッチセンサとが一体的に形成された、いわゆるタッチパネルである。操作者(ユーザ)は、操作部39を用いて所望の動作の実行命令を行う場合、操作部39に表示された操作ボタン(ソフトウェアキー)等を接触操作することで、所望の動作を指定する。
また、操作音声処理プログラムは、インストール可能な形式または実行可能な形式のファイルでCD-ROM、フレキシブルディスク(FD)などのコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。また、CD-R、DVD(Digital Versatile Disk)、ブルーレイディスク(登録商標)、半導体メモリなどのコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。また、インターネット等のネットワーク経由でインストールするかたちで提供してもよいし、音声認識サーバ装置3のROM等の記憶部に予め組み込んで提供してもよい。
<AIアシスタントサーバ装置のハードウェア構成>
図4は、AIアシスタントサーバ装置のハードウェア構成の一例を示す図である。AIアシスタントサーバ装置4は、CPU41、RAM42、ROM43、HDD44、インターフェイス部(I/F部)45及び通信部46を含むハードウェア資源を、内部バス47を介して相互に接続している。また、I/F部45には、表示部48及び操作部49が接続されている。
HDD44のAI記憶部40には、ユーザが音声入力により指示する読取命令を解釈するための辞書情報が記憶されている。この辞書情報には、後述するエンティティ(Entity)情報、アクション(Action)情報及びインテント情報が含まれる。また、HDD44には、以下に示すユーザ管理テーブル402a及び装置管理テーブル402bがそれぞれ記憶されている。これらのテーブルは、予め所定の設定値が与えられているが、適宜追加及び変更が行われてもよい。以下に、ユーザ管理テーブル402a及び装置管理テーブル402bの概要を説明する。
(各種テーブル)
図5は、各種テーブルの一例である。AIアシスタントサーバ装置4のHDD44等の記憶部には、図5(a)に示すユーザ管理テーブル402a、図5(b)に示す装置管理テーブル402b及び図5(c)に示す命令管理テーブル402cによって構成された紐づけ用DB402が構築されている。ただし、命令管理テーブル402cはMFP6に記憶されていてもよい。この場合、命令管理テーブル402cは一つのMFP6でのみ利用されるため、命令管理テーブル402cは画像読取装置名及び画像読取装置の装置IDを含まなくてもよい。これらのうち、ユーザ管理テーブル402aでは、音声取得装置のデバイスID毎に、ユーザ名、ユーザIDを含む情報が関連付けられて管理される。また、装置管理テーブル402bでは、音声取得装置名又は音声取得装置のデバイスID毎に、MFP6(画像読取装置)の装置名、画像読取装置を識別するための装置ID(以下、単に装置IDともいう)及び画像読取装置の接続情報を含む各種情報が関連付けられて管理される。さらに、命令管理テーブル402cでは、画像読取装置名又は装置ID毎に、原稿サイズ、ファイル形式、解像度、カラー/モノクロ、シングルページ/マルチページ、宛先及び連続処理フラグが関連付けられて管理される。
ユーザ管理テーブル402a及び装置管理テーブル402bで用いられる音声取得装置のデバイスIDは、上述したように音声取得装置の一例としてのスマートスピーカ2を識別するためのデバイス識別情報の一例である。つまり、デバイスIDは、音声取得装置を識別するための装置識別情報の一例である。また、音声取得装置のデバイスIDに代えて又は加えて、音声取得装置の装置名を示す音声取得装置名を管理してもよい。
また、装置管理テーブル402bで管理される画像読取装置名は、ユーザが使用するスマートスピーカ2に対する発話によって読取命令等が実行される画像読取装置の装置名である。この画像読取装置名には、上述したMFP6、単体で稼働するスキャナ等の装置名が与えられる。
一方、装置IDは、画像読取装置を識別するための装置識別情報の一例である。また、装置IDは、MFP6を識別するための情報である。
また、HDD44には画像読取装置(MFP)毎に接続情報が割り振られて記憶されている。ここで、接続情報はそれぞれのMFPと通信接続するために必要な情報であり、例えばアドレス情報が与えられる。
なお、装置管理テーブル402bは、未登録の新たな使用者のユーザID及びその使用者が使用する音声取得装置のデバイスID並びにその使用者が指定した装置IDをそれぞれ関連付けて、新たに追加登録されるようにしてもよい。
さらに、命令管理テーブル402cの連続処理フラグは、原稿が複数ページからなる書籍等の場合に、ユーザが発する所定の発話内容に応じて、原稿の読取り処理を継続するか否かを判断するためのフラグとして管理される。この連続処理フラグは、ユーザが最初の原稿の読取りを指定した後、「次」、「続けて」等の発話内容が検出された場合に、例えば、『1』の値が設定されて管理される。一方、原稿が1枚だけの場合では、ユーザから次の原稿の読取りを示唆する発話はされないため、この連続処理フラグは、例えば、『0』の値が設定されて管理される。なお、連続処理フラグは、初期設定値として『0」が与えられてもよい。
なお、ユーザから発話された「終了」、「以上」又は「これで最後」等の発話内容に応じて複数ページからなる原稿の最終ページの読取りが完了した場合、又は1ページのみの原稿の読取りが完了した場合には、命令管理テーブル402cの命令は削除される。ただし、連続処理フラグが『1』の場合は『0』」に変更又は設定され、『0』の場合はその値が維持されるようにしてもよい。この連続処理フラグに係る設定処理については、後ほど詳細に説明する。
さらに、命令管理テーブル402cも同様に、未登録の新たなユーザのユーザID及びそのユーザが使用する音声取得装置のデバイスID並びにそのユーザが指定した装置IDをそれぞれ関連付けて、新たに追加登録されるようにしてもよい。例えば、AIアシスタントサーバ装置4は、ユーザの発話に基づいて命令を生成するタイミングやMFP6に対して読取命令を送信するタイミングにおいて、命令管理テーブル402cに命令が含まれているか否かを確認し、含まれていない場合は命令管理テーブル402cに登録することができる。このとき、命令を送信する対象となるMFP6を特定するための情報として画像読取装置名又は画像読取装置の装置IDと、ユーザによって指定された各種パラメータとを関連付けて、連続処理フラグは0として登録する。
CPU41は、音声認識サーバ装置3で生成(変換)された解釈結果をMFP6に対する読取命令等のデータに変換してネットワーク7を介してMFP6に送信する。なお、ユーザから指示された意図は、例えば、MFP6への読取命令及び各種命令のための指示を含む。このようにして、スマートスピーカ2で取得された音声データにより、MFP6を操作することができる。
RAM42は、例えば、HDD44等の記憶部に記憶された各種プログラムがダウンロードされ、CPU41によって各種処理が実行されるワークエリアとしての機能を有する。
ROM43には、例えば、HDD44に記憶されたプログラム以外の各種プログラムを構成するデータが記憶されている。
HDD44には、上述したように管理DB401及び紐づけ用DB402が構築されている。管理DB401には、例えば、AIアシスタントサーバ装置4がクラウドサービス装置5として提供するコンテンツを示すテキストデータ、画像データ及び音声データ等が記憶されている。また、紐づけ用DB402には、例えば、スマートスピーカ2が複数用いられることを想定して、以下の情報が記憶されている。その情報とは、例えば、各スマートスピーカ2を特定する各デバイスIDと、各スマートスピーカ2への音声操作によって読取命令等が実行されるMFP6の装置IDとが関連付けられた情報である。すなわち、紐づけ用DB402には、各スマートスピーカ2に対する音声操作により使用可能なMFP6を特定できるように、各スマートスピーカ2のデバイスIDとMFP6の機器IDとが関連付けられて装置管理テーブル402bとして記憶されている。
I/F部45には、表示部48及び操作部49が接続される。
通信部46は、音声認識サーバ装置3及びMFP6に対するデータの送受信を、ネットワーク7を介して行う。また、通信部46は、ネットワーク7を介して他の装置と通信を行う際、有線、無線いずれの通信形態でも通信を行うことが可能である。
内部バス47は、CPU41、RAM42、ROM43、HDD44、I/F部45及び通信部46を接続する汎用バスである。この内部バス47は、AIアシスタントサーバ装置4が情報処理装置の機能を実現するものであれば、その種類は問わない。
表示部48は、例えば、液晶表示部(LCD:Liquid Crystal Display)で構成され、例えば、AIアシスタントサーバ装置4の各種状態を表示する。
操作部49は、例えば、液晶表示部とタッチセンサとが一体的に形成された、いわゆるタッチパネルである。操作者(ユーザ)は、操作部39を用いて所望の動作の実行命令を行う場合、操作部49に表示された操作ボタン(ソフトウェアキー)等を接触操作することで、所望の動作を指定する。
<クラウドサービス装置のハードウェア構成>
クラウドサービス装置5は、上述したように、例えば、音声認識サーバ装置3及びAIアシスタントサーバ装置4を纏めたもので、スマートスピーカ2及びMFP6とそれぞれネットワーク7を介して接続される。クラウドサービス装置5を構成するハードウェア構成は、音声認識サーバ装置3及びAIアシスタントサーバ装置4で説明したとおりである。
<MFPのハードウェア構成>
図6は、MFPのハードウェア構成の一例を示す図である。MFP6は、コントローラ600、近距離無線通信回路620、エンジン制御部630、操作パネル640、ネットワークI/F650を備えている。
これらのうち、コントローラ600は、例えば、操作パネル640からの入力等を制御する。また、コントローラ600は、MFP6の全体制御を行う制御部としてのCPU601、システムメモリ(MEM-P)602、ノースブリッジ(NB)603、サウスブリッジ(SB)604、ASIC(Application Specific Integrated Circuit)606、記憶部としてのローカルメモリ(MEM-C)607、HDDコントローラ608及び記憶部としてのHDD609を有する。さらに、NB603とASIC606との間は、AGP(Accelerated Graphics Port)バス621で接続される。
NB603は、CPU601と、MEM-P602、SB604及びASIC606とを接続するためのブリッジ回路である。NB603は、MEM-P602に対する読み書きなどを制御するメモリコントローラと、PCI(Peripheral Component Interconnect)マスタ及びAGPターゲットとを有する。
MEM-P602は、コントローラ600の各機能を実現させるプログラム及びデータの格納用メモリであるROM602a、プログラム及びデータの展開並びに原稿スキャン時のストレージ用メモリ及びメモリ印刷時の描画用メモリなどとして用いるRAM602bを備える。なお、RAM602bに記憶されているプログラムは、インストール可能な形式又は実行可能な形式のファイルで、CD-ROM、CD-R、DVD等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
SB604は、NB603とPCIデバイス、周辺デバイスとを接続するためのブリッジ回路である。
ASIC606は、画像処理用のハードウェア要素を有する画像処理用途向けのIC(Integrated Circuit)である。その役割は、AGPバス621、PCIバス622、HDDコントローラ608及びMEM-C607をそれぞれ接続するブリッジ回路である。また、ASIC606は、PCIターゲット及びAGPマスタ、ASIC606に接続される他のデバイスの動作及びタイミングを調停するアービタ(ARB)、MEM-C607を制御するメモリコントローラ、DMA制御を司るDMAC(Direct Memory Access Controller)、スキャナ部631及びプリンタ部632との間でPCIバス622を介したデータ転送を行うPCIユニットを有する。
なお、ASIC606には、USB(Universal Serial Bus)のインターフェイス、及び、IEEE1394(Institute of Electrical and Electronics Engineers 1394)のインターフェイスを接続するようにしてもよい。
MEM-C607は、コピー用画像バッファ及び符号バッファとして用いるローカルメモリである。
HDD609は、画像データの蓄積、読み取られた原稿の印刷時に用いるフォントデータの蓄積、フォームの蓄積等を行うためのストレージである。HDDコントローラ608は、CPU601の制御にしたがってHDD609に対するデータの読出し又は書込みを制御する。
AGPバス621は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレータカード用のバスインターフェイスである。AGPバス621は、MEM-P602に高スループットで直接アクセスすることにより、グラフィックスアクセラレータカードを高速にすることができる。
近距離無線通信回路620は、近距離無線通信を行うための回路であり、近距離無線通信回路用アンテナ620aを備える。近距離無線通信回路620は、例えば、NFC(Near Field Communication)、Bluetooth(登録商標)等の無線通信回路である。
エンジン制御部630は、スキャナ部631及びプリンタ部632によって構成される。スキャナ部631及びプリンタ部632には、誤差拡散及びガンマ変換などの画像処理部分が含まれる。
(スキャナ部の構成)
操作部11の一部としての操作パネル640は、MFP6に搭載又は接続可能であり、パネル表示部640a及びパネル操作部640bを含む。本実施形態では、一例としてMFP6に接続可能な状態を示している。パネル表示部640aは、現在の設定値及び選択画面等を表示させ、操作者からの入力を受け付けるタッチパネル等を備える。また、パネル操作部640bは、原稿サイズ、ファイル形式、解像度等で与えられる原稿の読取りに係る属性情報(各種条件ともいう)の入力を受け付けるテンキー及びコピー開始指示を受け付けるスタートキー等を備える。原稿の読取りに係る属性情報は、具体的には、命令管理テーブル402cに例示した、原稿サイズ、ファイル形式、解像度、カラー/モノクロ、シングルページ/マルチページ、宛先及び連続処理フラグ等が与えられる。
ネットワークI/F650は、通信ネットワークを利用してデータ通信をするためのインターフェイスである。近距離無線通信回路620及びネットワークI/F650は、PCIバス622を介して、ASIC606に電気的に接続される。
なお、MFP6は、パネル表示部640aに表示される又はパネル操作部640bが備えるアプリケーション切替キーにより、ドキュメントボックス機能、コピー機能、プリンタ機能及びファクシミリ機能を切り替えて選択することが可能となる。つまり、MFP6は、ドキュメントボックス機能の選択時にはドキュメントボックスモードとなり、コピー機能の選択時にはコピーモードとなり、プリンタ機能の選択時にはプリンタモードとなり、ファクシミリ機能の選択時にはファクシミリモードとなる。
〔機能構成〕
<音声操作システムの機能構成>
図7は、音声操作システムを構成する各装置の機能ブロックの一例を示す図である。音声操作システム1は、図1に示したように、スマートスピーカ2、音声認識サーバ装置3、AIアシスタントサーバ装置4、クラウドサービス装置5(音声認識サーバ装置3及びAIアシスタントサーバ装置4を纏めたもの)及びMFP6がそれぞれネットワーク7を介して接続されている。
<スマートスピーカの機能構成>
スマートスピーカ2は、クラウドサービス装置5を構成する音声認識サーバ装置3及びAIアシスタントサーバ装置4との間で、例えば音声データ、画像データ及びテキストデータ等のデータ通信を行う。
図2に示したスマートスピーカ2のCPU21は、ROM23等の記憶部に記憶された操作音声処理プログラムをRAM22に展開して実行することで、例えば、通信制御部251、取得部252、フィードバック部253、記憶・読出処理部254(以下、通信制御部251~記憶・読出処理部254とも記載する)として機能又は機能する手段を構成する。
<スマートスピーカの各機能構成>
次に、スマートスピーカ2の各機能構成について説明する。通信制御部251は、ネットワーク7を介してスマートスピーカ2と音声認識サーバ装置3又はクラウドサービス装置5との間の通信を制御し、各種データ又は情報の送受信を行う。その際、通信制御部251は、スマートスピーカ2の通信部25を制御して各種データ又は情報の送受信を行う。通信制御部251は、次に説明する取得部252が取得した当該スマートスピーカ2に対してユーザが行った所定の操作及び指示等に基づく情報を音声認識サーバ装置3(又はクラウドサービス装置5)に送信する。また、通信制御部251は、フィードバックのために、クラウドサービス装置5からテキストデータ、画像データ、音声データ等を取得する。さらに、通信制御部251は、ユーザが行った所定の操作及び指示等に係る情報を音声認識サーバ装置3(又はクラウドサービス装置5)に送信する際に、スマートスピーカ2を特定するデバイスIDもあわせて送信する。
上述したように、通信制御部251は、スマートスピーカ2がLAN等のネットワーク7を介して接続される他の装置との通信を制御する。この通信を行う際の通信方式は、例えば、一般的にLANで使用されるEthernet(登録商標)等の通信プロトコルが用いられる。この通信制御部については、後述する音声認識サーバ装置3、AIアシスタントサーバ装置4、クラウドサービス装置5及びMFP6が有する各通信制御部についても同様の機能を有する。
取得部252は、音声データ取得手段の一例である。取得部252は、マイクロホン部29を介して集音されたユーザの音声操作に伴う指示音声を取得する。また、取得部252は、ユーザによるタップ操作又は物理スイッチの押下などの機械操作を含む指示操作を取得してもよい。つまり、取得部252は、指示音声及び指示操作を含む指示を表す情報のうち少なくとも一つを取得する。ここで、上述した指示を表す情報は、指示情報に相当する。なお、ユーザの指示音声には、例えば、MFP6等に原稿の読取りを実行させるための読取命令及び各種命令を実行するための処理実行命令に変換するための情報が含まれる。
取得部252は、上述した操作音声処理プログラムを実行することで、ユーザの発話によって与えられた音声データを取得して音声認識サーバ装置3(又はクラウドサービス装置5)に送信する。さらに取得部252は、フィードバック部253と協働して、クラウドサービス装置5から取得したデータ(音声データ、画像データ及びテキストデータ等)を、タッチパネル27に表示するか、又はスピーカ部28を介した音声をユーザに通知する。なお、タッチパネル27は、スマートスピーカ2と一体で構成されていてもよいし、別々に構成されていてもよい。スマートスピーカ2と別々に構成される場合、タッチパネル27は、スマートスピーカ2と行う無線通信等に必要な無線通信インターフェイスを備えておけばよい。
フィードバック部253は、ユーザの発話によって与えられた音声データに基づいてMFP6で実行される原稿の読取り及び所定の処理において、必要に応じてスマートスピーカ2がユーザに対して応答するように機能する。このフィードバック部253によって、本実施形態はユーザとの間での対話型システムを実現している。また、この対話型システムにおける音声操作を実現するため、フィードバック部253は、例えば、ユーザの指示音声に対して不足するデータを補うために音声のフィードバックを行う。さらに、フィードバック部253は、タッチパネル27の画面への表示により、フィードバック対象のテキスト、音声又は画像をユーザに提供してもよい。なお、フィードバック部253による対話型動作及びフィードバックの詳細については、後述する。
記憶・読出処理部254は、例えば、ROM23に各種データを記憶したり、ROM23に記憶された操作音声処理プログラム等の各種データを読み出したりする処理を行う。
なお、本実施形態では、通信制御部251~記憶・読出処理部254は、ソフトウェアで実現されてもよい。また、通信制御部251~記憶・読出処理部254は、他のプログラムに処理の一部を実行させ、又は他のプログラムを用いて間接的に処理を実行させてもよい。さらに、通信制御部251~記憶・読出処理部254は、一部又は全部を、IC(Integrated Circuit)等のハードウェアで実現されてもよい。
<音声認識サーバ装置の機能構成>
音声認識サーバ装置3は、スマートスピーカ2から受信した音声データを解析し、テキストデータへ変換する。また、テキストデータと事前登録されている辞書情報とに基づいてユーザの意図を解釈し、解釈結果をAIアシスタントサーバ装置4に送信する。
音声認識サーバ装置3のCPU31は、スマートスピーカ2を介してユーザによって与えられた音声データに応じて、HDD34等の記憶部に記憶された操作音声変換プログラム等をRAM32に展開して実行する。この操作音声変換プログラムが実行されることにより、CPU31は、例えば、通信制御部351、取得部352、テキスト変換部353、解釈部354、出力部355、提供部356及び記憶・読出処理部357(以下、通信制御部351~記憶・読出処理部357とも記載する)として機能又は機能する手段を構成する。
<音声認識サーバ装置の各機能構成>
次に、音声認識サーバ装置3の各機能構成について説明する。通信制御部351は、ネットワーク7を介してスマートスピーカ2又はAIアシスタントサーバ装置4との間の通信を制御し、各種データ又は情報の送受信を行う。具体的には、通信制御部351は、ユーザによって与えられた音声データの受信及びスマートスピーカ2に対するテキストデータの送信等を行うように、音声認識サーバ装置3の通信部36を制御する。
取得部352は、スマートスピーカ2から送信される所定の操作及び指示等に基づく情報を取得する。また、取得部352は、スマートスピーカ2のタッチパネル、ボタン又はスイッチ等のユーザ操作に基づく情報を取得してもよい。
テキスト変換部353は、取得部352で取得した情報、すなわち音声データをテキストデータに変換する。
解釈部354は、テキスト変換部353で変換されたテキストデータに基づいて、ユーザからの指示を解釈する。具体的には、解釈部354は、音声アシスタントプログラムから提供された辞書情報に基づいて、テキストデータに含まれる単語などが辞書情報と一致しているか否かを判断する。そして、辞書情報と一致している場合には、解釈部354は、ユーザの意図を示すインテントと所定の処理の実行条件などの変数を示すパラメータに変換する。解釈部354は、インテント及びパラメータを、通信制御部351を介してAIアシスタントサーバ装置4で実行される管理プログラムに送信する。このとき、解釈部354は、スマートスピーカ2のデバイスIDもインテント及びパラメータと共に通信制御部351を介してAIアシスタントサーバ装置4で実行される管理プログラムに送信する。
出力部355は、スマートスピーカ2に対するテキストデータ、音声データ、画像データ等のデータの送信を行うように、通信部36を制御する。
さらに、CPU31は、HDD34等の記憶部に記憶された音声アシスタントプログラムを実行することで、提供部356として機能する。
提供部356は、HDD34等の記憶部に記憶されているテキストデータ、インテント及びパラメータの関係を予め定義した辞書情報を管理し、操作音声変換プログラムに対して提供する。また、提供部356は、テキスト変換部353で変換したテキストデータに基づいて、ユーザからの発話内容を変換、解釈してもよい。すなわち、提供部356は、テキスト変換部353及び解釈部354の機能を併せ持っていてもよい。具体的には、提供部356は、まず操作音声変換プログラムからテキストデータを取得し、テキストデータに含まれる単語などが辞書情報と一致しているか否かを判断する。その判断の結果、辞書情報と一致している場合には、提供部356は、テキストデータをインテントとパラメータに変換する。その後、提供部356は、インテント及びパラメータを操作音声変換プログラムに対して提供する。
記憶・読出処理部357は、例えば、ROM33に記憶された操作音声変換プログラム等の各種プログラムを構成するデータの読出し処理を行う。
なお、本実施形態では、通信制御部351~記憶・読出処理部357は、ソフトウェアで実現されてもよい。また、通信制御部351~記憶・読出処理部357は、他のプログラムに処理の一部を実行させ、又は他のプログラムを用いて間接的に処理を実行させてもよい。例えば、操作音声変換プログラムの解釈部354の機能の一部又は全てを音声アシスタントプログラムに実行させてもよい。さらに、操作画像変換プログラムの解釈部354の機能の一部又は全てを画像アシスタントプログラムに実行させてもよい。これらの場合、例えば、テキストデータに含まれる単語などが辞書情報と一致しているか否かの判断、及び辞書情報と一致している場合にユーザの意図を示すインテントと所定の処理の実行条件などの変数を示すパラメータへの変換は、音声アシスタントアプリ、画像アシスタントアプリ等に実行させてもよい。さらに、解釈部354は、インテント及びパラメータを音声アシスタントプログラム等から取得するものとしてもよい。さらに、通信制御部351~記憶・読出処理部357のうち、一部又は全部を、IC(Integrated Circuit)等のハードウェアで実現してもよい。
また、上述した例では、提供部356をソフトウェアで実現することとしたが、これらのうち、一部又は全部を、IC(Integrated Circuit)等のハードウェアで実現してもよいこと等は、上述の他のプログラムと同様である。
<AIアシスタントサーバ装置の機能構成>
AIアシスタントサーバ装置4は、例えば、音声認識サーバ装置3で実行された操作音声変換プログラムによって得られたインテント、パラメータ及びスマートスピーカ2のデバイスID等を取得して、後述する各機能の処理を行う。
また、AIアシスタントサーバ装置4は、音声認識サーバ装置3から受信した解釈結果を、MFP6に対する読取命令等のデータに変換する。その後、AIアシスタントサーバ装置4は、変換した読取命令等のデータをMFP6に送信する。MFP6では、AIアシスタントサーバ装置4から送信される読取命令等にしたがって所定の処理が実行される。なお、AIアシスタントサーバ装置4は、MFP6に読取命令等を送信する以外に、例えば、MFP6を管理する他のサーバ装置が存在すれば、MFP6で実行される他の実行命令等を他のサーバ装置に送信してもよい。
AIアシスタントサーバ装置4のCPU41は、ネットワーク7を介して音声認識サーバ装置3のHDD34等の記憶部に記憶された管理プログラムを取得し、RAM42に展開して実行する。CPU41は、この管理プログラムを実行することで、例えば、通信制御部451、取得部452、解釈結果変換部453、実行判定部454、補完部455、実行指示部456、機器情報取得部457、通知部458、管理部459、検索部460及び記憶・読出処理部461(以下、通信制御部451~記憶・読出処理部461とも記載する)として機能又は機能する手段を構成する。
<AIアシスタントサーバ装置の各機能構成>
次に、AIアシスタントサーバ装置4の各機能構成について説明する。通信制御部451は、ユーザのスマートスピーカ2に対する解釈結果の送信、及びユーザによって与えられた音声データに係るテキストデータの受信等を行うように通信部46を制御する。
取得部452は、は、音声認識サーバ装置3から送信されるインテント、パラメータ及びスマートスピーカ2のデバイスID等を取得する。
解釈結果変換部453は、操作音声変換プログラムで変換されたインテント及びパラメータなどの解釈結果を、MFP6が解釈可能な読取命令等に変換する。この解釈結果変換部453は、AIアシスタントサーバ装置4(又はクラウドサービス装置5)で実行される管理プログラムの機能の一つであり、読取命令変換手段の機能を担う。また、MFP6が解釈可能な読取命令は、当該MFP6における原稿の読取り処理(以下、読取処理と記載する)を実行するための情報(処理情報)の一例である。
実行判定部454は、取得した機器情報で示されるMFP6の状態と、ユーザから指定された原稿読取指示及び印刷指示等を比較することで、ユーザから指定された原稿読取指示及び印刷指示等に基づく各処理をMFP6で実行することが可能か否かを判断する。ユーザから指定された原稿の読取り及び印刷に係る内容は、例えば、ユーザから指示された時間帯に当該MFP6が使用可能か否かの判断処理、当該MFP6の電源状態の変更処理、当該MFP6に対する原稿の読取り処理及び印刷処理である。また、ユーザから指定された原稿読取指示及び印刷指示等に基づく各処理が実行可能と判断された場合、実行判定部454は、解釈結果変換部453に対して、MFP6に出力要求の一例としての読取命令及び印刷命令等に変換するよう判定する。一方、実行不可能と判断した場合、実行判定部454は、操作音声変換プログラム等の実行の下、スマートスピーカ2に対してエラーメッセージ等のレスポンス情報をフィードバックする。
補完部455は、解釈結果変換部453によって変換される読取命令及び印刷命令等の各種実行命令に対して、装置管理テーブル402b及び命令管理テーブル402cを参照して、MFP6における処理に必要な情報を補完する機能を有する。この処理に必要な情報とは、例えば、MFP6に対する読取命令及び印刷命令等への変換に必要な情報である。この補完部455は補完手段の一例である。
実行指示部456は、解釈結果変換部453で変換されたMFP6への読取命令及び印刷命令等の実行を指示する。また、実行指示部456は、ユーザが使用したスマートスピーカ2を特定するデバイスIDに関連付けられているMFP6を紐づけ用DB402から検索し、MFP6に対して、インテント及びパラメータと共に読取命令及び印刷命令等を送信する。
機器情報取得部457は、例えば、MFP6との通信接続が確立されているか否かを示す接続状態、MFP6の電源のオン/オフ等に係る電力使用状態、MFP6への電力供給状態(通常モード、省エネモード等)の機器情報を取得する。なお、機器情報取得部457は、MFP6から取得した機器情報を、MFP6を特定する装置ID等と関連付けてHDD44等の記憶部に記憶して管理する。この機器情報の記憶先は、紐づけ用DB402を構築する後述する装置管理テーブル402bでもよい。さらに、機器情報取得部457は、装置管理テーブル402bを参照して、MFP6で実行される読取命令の生成に関連する情報を補完する機能も有する。
通知部458は、ユーザによる原稿読取指示及び印刷指示等への応答としてテキストデータ、音声データ及び画像データ等を操作音声変換プログラム等に通知する。また、MFP6に対する読取命令及び印刷命令等の実行条件を示すパラメータが不足している場合には、通知部458は、操作音声変換プログラム等を介してスマートスピーカ2に対してフィードバックを行う。つまり、通知部458は、ユーザに対して不足しているパラメータの入力を促す。ここで、通知部458は、不足しているパラメータを確認するために必要な情報として、所定のパラメータ情報をスマートスピーカ2に送信してもよいし、パラメータの指定を促すために必要な情報としてテキストデータ、音声データ及び画像データ等をスマートスピーカ2に送信してもよい。上述した処理によって、ユーザは、どんな情報が不足しているかをスマートスピーカ2から発生される音声等によって確認することができる。
管理部459は、スマートスピーカ2又はクラウドサービス装置5に接続されたクライアントデバイスに対して入力された情報に基づいて、スマートスピーカ2のデバイスIDとMFP6の装置IDとを関連付けて、紐づけ用DB402に登録する。つまり、紐づけ用DB402では、スマートスピーカ2のデバイスIDとMFP6の装置IDとを関連付けた情報が、装置管理テーブル402bとして記憶され、管理される。
検索部460は、デバイスID及びユーザID(使用者ID)に基づいてMFP6を検索し、特定する。なお、検索部460は、上述した管理部459と合わせて一つの機能ユニットとして機能してもよい。
記憶・読出処理部461は、AIアシスタントサーバ装置4のHDD44等の記憶部に記憶された各種データの読み出し、HDD44等の記憶部への各種データの書き込み等の各処理を行う。
上述した通信制御部451~記憶・読出処理部461のそれぞれの機能は一例であり、どの機能ユニットがどのような処理を行うかは、音声操作システム1のソフトウェア構成により適宜変えてもよい。
なお、本実施形態では、通信制御部451~記憶・読出処理部461をソフトウェアで実現することとしたが、これらのうち、一部又は全部を、IC(Integrated Circuit)等のハードウェアで実現してもよい。また、通信制御部451~記憶・読出処理部461が実現する機能は、音声認識サーバ装置3のHDD34等の記憶部に記憶された他のプログラムに処理の一部を実行させる、又は他のプログラムを用いて間接的に処理を実行させてもよい。
(クラウドサービス装置による解釈動作の詳細)
ここで、クラウドサービス装置5による解釈動作の詳細について説明する。クラウドサービス装置5は、上述したように音声認識サーバ装置3及びAIアシスタントサーバ装置4を一つに纏めた装置であり、一つのサーバ装置としても機能するものである。操作音声変換プログラムは、ユーザの発話に基づく各種指示を解釈するための辞書情報に基づいてインテント及びパラメータを生成する。より具体的には、操作音声変換プログラムは、ユーザの発話によって与えられた音声データから変換されたテキストデータに含まれる単語などが辞書情報と一致するか否かを判断し、一致する場合は辞書情報に定義されているインテント及びパラメータを含む解釈結果を生成する。
上述した辞書情報は、インテント及びパラメータを生成することができるものであればどのような形態であってもよい。一例として、辞書情報は、エンティティ情報、インテント情報及び関連付け情報を含んで構成される。エンティティ情報は、MFP6が所定の処理を実行するためのパラメータと自然言語を関連付ける情報である。また、一つのパラメータには、複数の類義語が登録可能である。インテント情報は、上述したように所定の処理の種類を示す情報である。関連付け情報は、ユーザが発話した発話フレーズ(自然言語)及びエンティティ情報、並びに、発話フレーズ及びインテント情報を、それぞれ関連付ける情報である。この関連付け情報により、AIアシスタントサーバ装置4(又はクラウドサービス装置5)は、パラメータの発話順序又はニュアンスが多少変わっても、正しい解釈が可能となる。また、関連付け情報は、発話された内容に基づいてレスポンスのテキスト(解釈結果)を生成してもよい。なお、辞書情報は、上述したAIアシスタントサービス情報と一部機能を共通にする。
さらに、エンティティ情報には、関連付け情報の一例としてのパラメータに係る類義語も関連付けられて記憶されている。この類義語には、例えば、「スキャン」や「スキャンして」といった発話内容に対して、「読み取る」、「読取り」、「読み取って」等がMFP6に対する同じ命令及び処理を与えるものとして対応付けられている。このような類義語を登録することで、クラウドサービス装置5は、例えば、MFP6を用いて原稿を読み取る場合に、「これ1000dpiでスキャンして」と発話しても、「これ1000dpiで読み取って」と発話しても、同様の処理を行うパラメータとして設定することができる。つまり、クラウドサービス装置5は、同様の処理として解釈をすることができる。
(対話型動作)
本実施形態の音声操作システム1では、ユーザの発話によって与えられた音声データに基づいてシステムが応答する対話型システムによる対話型動作を実現している。この対話型動作は、上述したように、スマートスピーカ2のフィードバック部253によって実行される動作の一つである。また、音声操作システム1は、対話等に必要な定型文を応答する以外に、MFP6における原稿の読取りに係る特有の応答として、「入力不足フィードバック」及び「入力確認フィードバック」の、2種類の応答をする。これによって、音声操作システム1は、対話によるMFP6における読取処理及び印刷処理等を可能とする対話型の画像読取操作システムを実現している。
「入力不足フィードバック」は、MFP6における原稿の読取りを実行するために必要な情報が揃っていない場合にスマートスピーカ2から出力される応答である。さらに、「入力不足フィードバック」は、ユーザの発話によって与えられた音声データの入力内容を認識できなかった場合、又は、音声操作による入力内容に必要な項目(以下、必須パラメータという)が不足している場合にスマートスピーカ2から出力される。換言すれば、必須パラメータ以外の項目(以下、単にパラメータともいう)については、ユーザから指示されていない場合であっても入力不足フィードバックを行う必要はない。一方で、「入力不足フィードバック」は、パラメータ以外にも、MFP6における原稿の読取りにおいて必要な機能を確認する処理を含んでもよい。
対話型動作では、フィードバック部253は、クラウドサービス装置5が通信接続中の画像読取装置の種類に応じて、ユーザに確認する機能及びパラメータを変更してもよい。この場合、AIアシスタントサーバ装置4の機器情報取得部457が、画像読取装置との通信が確立した後の所定のタイミングで画像読取装置の種類及び機能を示す情報を取得する。その後、機器情報取得部457は、取得した情報に基づいて、フィードバック部253がユーザに確認する機能及びパラメータを決定してもよい。
例えば、画像読取装置がMFP6である場合、フィードバック部253は、MFP6での原稿の読取りに必要な項目(使用者名、使用日時、等)をユーザに確認できる。更に、フィードバック部253は、MFP6で使用される備品リソース等の情報をユーザに確認してもよい。また、機器情報取得部457は、ユーザから指定された設定条件に応じて必須パラメータを変更してもよい。例えば、ユーザが指定した原稿の読取りの条件が見開きページ読取りの場合は、機器情報取得部457は、原稿の読取りに必要な具体的な条件(例えば、ADFによる原稿の読取りか原稿台による原稿の読取りか、等)を必須パラメータとして設定してもよい。
「入力確認フィードバック」は、MFP6での原稿の読取りを実行するために必要な情報が揃った場合に出力される応答である。つまり、「入力確認フィードバック」は、全ての必須パラメータについて指示された場合に行われる。また、「入力確認フィードバック」は、現在の設定値で読取処理を実行するか、又は、設定値を変更するかの選択をユーザに促すために行われる。なお、「入力確認フィードバック」が行われることによって、現在の設定値で読取処理を実行するか否かを確認するために、ユーザにより指示された全てのパラメータ(必須パラメータか必須パラメータ以外のパラメータかに関わらず)を、ユーザに確認することができる。
(AIアシスタントサーバ装置からフィードバックされる情報の例)
上述の説明では、スマートスピーカ2のフィードバック部253はレスポンス情報に含まれるテキストデータ及び音声データを出力することとして説明した。しかし、フィードバック部253は、スマートスピーカ2のROM23等の記憶部に記憶されたテキストデータに基づいて、レスポンス情報に対応するテキストデータを形成し、フィードバック出力(音声出力及びテキスト出力のうち少なくとも一つ)を行ってもよい。なお、具体的なフィードバックの内容は後述する。
次に、紐づけ用DB402の具体例について図5を用いて説明する。図5は、情報処理システムの一例としての音声操作システム1で用いられる紐づけ用DB402で管理されるデータテーブルの一例である。例えば、本実施形態では、デバイスIDとして「ud1001」を有するスマートスピーカ2から原稿読取指示が与えられた画像読取装置の名称は、「MFP_#1」であり、「MFP_#1」の装置IDは、「d0001」である。以下、詳細な説明は省略するが、図5に示した紐づけ用DB402の装置管理テーブル402bは、音声取得装置名毎に、音声取得装置のデバイスID、画像読取装置名及び装置IDとが関連付けられている。すなわち、紐づけ用DB402には、各スマートスピーカ2とMFP6とを特定できるように、各スマートスピーカ2のデバイスIDとMFP6の装置IDとがそれぞれ関連付けられて記憶されている。なお、図5に示したそれぞれのIDの種類及び値は一例であり、上述した内容に限らない。
<MFPの機能構成>
MFP6のCPU601は、クラウドサービス装置5(又はAIアシスタントサーバ装置4)から送信された読取命令に基づいて、HDD609等の記憶手段に記憶された原稿の読取りに係る実行プログラムをRAM602bに展開して実行する。CPU601は、この読取命令を実行することで、例えば、通信制御部651、命令受信部652、判断部653、読取実行部654、通知部655及び記憶・読出処理部656として機能又は機能する手段を構成する。
<MFPの各機能構成>
次に、MFP6の各機能構成について説明する。通信制御部651は、AIアシスタントサーバ装置4の通信制御部451とネットワーク7を介して通信を行う。但し、クラウドサービス装置5(又はAIアシスタントサーバ装置4)と直接通信を行ってもよい。
命令受信部652は、MFP6で実行される読取命令等の各種命令を、クラウドサービス装置5(又はAIアシスタントサーバ装置4)から受信する。つまり、命令受信部652は、クラウドサービス装置5(又はAIアシスタントサーバ装置4)から読取命令等の各種命令を受信する受信手段の機能を担う。
判断部653は、命令受信部652が読取命令を受信した場合、読取命令に係る情報(画像読取装置名、画像読取装置の装置ID、ユーザ名及びユーザID、等)に基づいて、HDD64等の記憶部に記憶された各種情報の検索を行い、読取命令の実行対象となるファイルを特定し、クラウドサービス装置5(又はAIアシスタントサーバ装置4)に対して読取命令又は所定の処理要求を生成する。
読取実行部654は、命令受信部652で受信した読取命令に基づいて、MFP6において読取処理を実行する。また、読取実行部654は、例えば、命令受信部652が読取命令を受信した場合、読取命令に含まれる上述の各種情報に基づいて、HDD609等の記憶部に記憶された原稿の読取状況を更新する。一方、MFP6が何らかの原因で原稿の読取処理ができない場合は、MFP6からのステータス信号等を受信して、外部にエラーを通知してもよい。その際、エラー通知はMFP6から直接スマートスピーカ2に送信される。また、エラー通知の受信に伴い、原稿の読取りに係る取消要求を取得した場合は、読取実行部654は、条件に一致するMFP6の読取処理を記憶部から削除する。
上述したように、読取実行部654は、スマートスピーカ2に対してユーザが行う音声操作によって与えられた、MFP6に対する読取命令及び所定の処理の指示等の内容に基づく読取処理等を実行する読取制御手段の機能を担う。本実施形態では、読取実行部654はMFP6における読取処理を例に説明したが、実行される処理が読取処理に加えて外部装置へのファイル送信及びストレージへの保存等を行う画像読取装置の場合は、画像読取装置で受信したそれぞれのファイル及びデータを所定の出力要求に含まれる出力形式で出力(送信)するなどの出力処理が可能である。
通知部655は、MFP6の状態をスマートスピーカ2に通知する。通知される内容は、例えば、当該装置の原稿の読取り及びその他の動作に係る情報、並びに当該装置の起動又はログイン等に関する情報である。なお、通知部655は、ユーザから与えられた原稿読取指示を受け付けた時点で、上述した各種情報をスマートスピーカ2に通知してもよい。一方で通知部655は、受信した読取命令に含まれる原稿の読取りの開始時刻になったら上述した各種情報をスマートスピーカ2に通知してもよい。また、読取命令に含まれる原稿の読取りの内容に重複があった場合、又は原稿の読取りの開始時刻の所定時間前(例えば、10分前)に当該装置に故障等が発生した場合は、通知部655は、通信制御部651を介してスマートスピーカ2に対して、メール、画像配信等で読取処理に係る内容の重複及び故障等に関する通知を行ってもよい。
記憶・読出処理部656は、HDD609等の記憶部を制御して、各種データの読出し、書込みを行う。
なお、本実施形態では、通信制御部651~記憶・読出処理部656をソフトウェアで実現することとしたが、これらのうち、一部又は全部を、IC(Integrated Circuit)等のハードウェアで実現してもよい。
<音声操作システムの処理の概要>
本実施形態に係る音声操作システム1は、音声を集音して音声データを得るスマートスピーカ2と、原稿に対して少なくとも1回以上の画像の読取りを行うMFP6と、スマートスピーカ2が送信した音声データを受信し、受信した音声データから所定の読取条件に基づいて原稿を読み取るための読取命令に変換してMFP6に送信するクラウドサービス装置5(又はAIアシスタントサーバ装置4)を備える。クラウドサービス装置5(又はAIアシスタントサーバ装置4)は、ユーザから続けて与えられたスマートスピーカ2への発話内容に基づく音声データが、直前に送信した読取命令を継続して実行可能な内容であるか否か、すなわち、継続して原稿の読取りを行う読取条件が存在するか否かを判断する。クラウドサービス装置5(又はAIアシスタントサーバ装置4)は、継続して原稿の読取りを行う読取条件が存在すると判断した場合には、その読取条件を引き継いだ読取命令をMFP6に再送し、その読取命令を受信したMFP6は、再送された読取命令に基づいて原稿の読取りを継続して実行する構成となっている。上述した構成について、以下に詳述する。
〔実施形態の処理又は動作〕
<第1の実施形態>
図8a及び図8bは、第1の実施形態におけるユーザの発話に基づく読取処理の一例を示すシーケンス図である。第1の実施形態では、MFP6に対する原稿読取要求をAIアシスタントサーバ装置4から送信するとともに、連続して原稿を読み取る場合の読取命令に変換する処理について説明する。具体的には、第1の実施形態では、ユーザの発話によってAIアシスタントサーバ装置4からMFP_#1に対して読取命令を送信し、MFP6で原稿の読取り及び継続した読取処理を行う場合を例示する。以下にシーケンス図における各処理を示す。
本実施形態における音声操作システム1では、ユーザが利用するMFP6の隣りに又は近接してスマートスピーカ2が配置されている状態を一例として説明する。この状態において、まずユーザは、例えば製本された原稿の所望のページを開いて動作可能な状態のMFP6の原稿台に乗せる。このとき、ユーザは製本原稿に手を添えて原稿台に押さえていてもよい。続いてユーザは、スマートスピーカ2に向かって「1000dpiで田中さん宛にスキャン」と発話する。この発話に伴い、スマートスピーカ2の取得部252は、例えば、図3に示したマイクロホン部29を使用してユーザから発話された「1000dpiで田中さん宛にスキャン」という発話音声に基づく音声データを取得する(ステップS101)。
なお、ユーザから発話された内容が単に「スキャンして」のように原稿の読取りに係る解像度、宛先等が含まれていない場合は、AIアシスタントサーバ装置4の補完部455は、後述するフィードバック処理によって、スマートスピーカ2に対して「何dpiでスキャンしますか?」、「スキャンした原稿を誰宛に送信しますか?」等の問合せを音声で行うように制御する。この問合せには、各種パラメータを補完するための情報が含まれる。つまり、本実施形態における音声操作システム1は、ユーザが発話した一つの内容に対して一つの質問(1対1のフィードバック処理)が行われることを前提とする。但し、音声操作システム1は、ユーザが発話した複数の内容に対して一つの質問(多対1のフィードバック処理)、又は、ユーザが発話した一つの質問に対して多数の質問(1対多のフィードバック処理)が行われるように制御されてもよい。
なお、MFP6に対して原稿のスキャンを実行させるための発話内容は上述した内容に限定されない。例えば、発話内容に原稿の読取りのための各種設定を示すスキャン設定を指定する内容が含まれていてもよい。
続いて、スマートスピーカ2の通信制御部251は、取得した音声データを音声認識サーバ装置3に送信する。この音声データを送信する送信タイミングは、第1のタイミングの一例である。また、第1のタイミングで送信される上述の音声データは、第1の音声データの一例である。このとき、通信制御部251は、当該スマートスピーカ2のデバイスIDもあわせて音声認識サーバ装置3に送信する(ステップS102)。
なお、デバイスIDは、ユーザに関連付けられたスマートスピーカ2を特定する情報の一例であり、ユーザ管理テーブル402aに示したとおりである。通信制御部251は、例えば、デバイスIDに代えて又は加えて、スマートスピーカ2の位置情報、スマートスピーカ2を使用するユーザ個人を特定するユーザID、ユーザ名又はユーザの所属する組織等の個人を特定する情報を送信してもよい。
続いて、音声認識サーバ装置3の取得部352は、通信制御部351を介して、デバイスIDとあわせてスマートスピーカ2から送信された音声データを取得し、テキスト化する(ステップS103)。
なお、取得部352は、スマートスピーカ2に備えられた音声データを得るための取得部252の機能を兼ね備えてもよい。その場合、取得部352は、例えば、マイクロホン部29を介して集音されたユーザの指示音声を、スマートスピーカ2のデバイスID及び使用者のユーザIDとあわせて取得する機能を有する。つまり、上述したステップS101及びステップS102の機能を兼用する。このような取得部352は、スマートスピーカ2の取得部252と同様に、音声データ取得手段の一例として機能してもよい。つまり、音声認識サーバ装置3は、音声データ取得手段を備えるサーバ装置の一例として機能してもよい。
続いて、テキスト化の具体例として、音声認識サーバ装置3のテキスト変換部353は、取得した音声データをテキスト化する。このテキスト化の処理は、例えば、「1000dpiで田中さん宛にスキャン」という内容の音声操作に基づく情報をテキストデータに変換する処理を行う。
続いて、操作音声変換プログラムは、AIアシスタントサーバ装置4で実行される音声アシスタントプログラムに対して、辞書情報の要求を、通信制御部351を介してAIアシスタントサーバ装置4に送信する(ステップS104)。
AIアシスタントサーバ装置4の取得部452は、音声認識サーバ装置3から、辞書情報の要求を通信制御部451を介して取得する。テキスト化された音声データを取得したAIアシスタントサーバ装置4は、取得した辞書情報の要求に応じて辞書情報を音声認識サーバ装置3で実行されている操作音声変換プログラムに提供する(ステップS105)。
続いて、解釈部354は、テキスト化された音声データからインテントとパラメータを生成する(ステップS106)。ステップS106の処理の具体例として、解釈部354は、音声アシスタントプログラムから取得した辞書情報に基づいて、テキストデータに含まれる単語、及び、所定の意味を持つことば、等が辞書情報と一致しているか否かを判断する。つまり、テキスト解釈を行う。テキストデータに含まれる単語及び所定の意味を持つことばが辞書情報と一致している場合、解釈部354は、ユーザから指示された操作を示すインテント及び各種処理の実行条件等の変数を示すパラメータに変換する。なお上述した解釈部354の処理については、提供部356が行ってもよい。
本実施形態では、インテントは、例えば、MFP6に対して要求するジョブの種類を示す情報、すなわちMFP6に対して要求する読取処理の実行を示す情報である。また、パラメータは、例えば、AIアシスタントサーバ装置4がMFP6に対して送信するジョブの設定などを示す情報、すなわち原稿の読取りに係る解像度及び読取処理におけるデータの送信先などの各種設定を示す情報である。変換されるインテントとパラメータは、例えば、「インテント:SCAN EXECUTE」(表1の「Action」に相当)である。パラメータについては、例えば「解像度:1000dpi」及び「宛先:田中」である。但し、上述した例に限定されず、パラメータ中にMFP6に対して送信する他の読取りに関する設定(読取りサイズ、カラー/モノクロ、等)の情報を含めてもよい。
なお、他の装置へのemail送信を行う場合、又は、クラウドサービス装置5によって読取りの対象となる原稿が特定される場合等には、パラメータはemail送信先の装置のアドレス、外部のクラウド装置の装置ID、送信されるファイルのファイル名及びファイルの保存場所を示すネットワークアドレス等のファイルに係る情報であってもよい。
より具体的には、解釈部354は、ユーザが操作するMFP_#1において、原稿の読取りが実行される際に生成されるインテントに係る情報として「インテント:SCAN EXECUTE」を生成する。さらに、解釈部354は、MFP_#1において実行される読取処理のパラメータに係る情報として、例えば、「画像読取装置名:MFP_#1」を生成する。このように、解釈部354は、取得したテキストデータに基づいて、例えば、ユーザから与えられた原稿読取指示、所定の処理の種別(インテント)及び所定の処理に関連する内容(パラメータ)を示す解釈結果を生成する。
続いて、解釈部354は、生成したインテント、パラメータ及びスマートスピーカ2のデバイスIDをAIアシスタントサーバ装置4で実行される管理プログラムに送信する(ステップS107)。
<情報の補完処理>
次に、クラウドサービス装置5(又はAIアシスタントサーバ装置4)で実行される情報の補完処理の一例を説明する。
まず、AIアシスタントサーバ装置4の解釈結果変換部453は、取得部452で取得されたインテント、パラメータ及びスマートスピーカ2のデバイスID等に基づいて、MFP_#1に対する読取命令を示すデータに変換する。このとき、インテントには原稿を読み画像読取装置名を表す「MFP_#1」等が与えられる。以下、画像読取装置としてMFP_#1を例に説明するが、装置管理テーブル402bに例示したような画像読取装置であれば、その種類は問わない。さらに、パラメータについて、装置管理テーブル402b及び命令管理テーブル402cに例示したような内容であれば、その種類は問わない。
解釈結果変換部453によるデータ変換に伴い、検索部460は、ユーザ管理テーブル402aに示すスマートスピーカ2のデバイスID使用者のユーザ名及び使用者のユーザID、並びに装置管理テーブル402bで管理される情報に基づいて、原稿を読み取るためのスキャナを備えるMFP_#1を特定する。なお、MFP_#1を特定する場合、検索部460は、装置管理テーブル402bで記憶、管理されている各種情報に基づいて画像読取装置を特定する。つまり、音声取得装置のデバイスIDに基づいて画像読取装置の装置IDを照合し、画像読取装置を特定する。しかし、スマートスピーカ2が何らかの理由でMFP_#1の近くから移動され、装置管理テーブル402bに記憶、管理されている各種情報と一致しなくなる場合も想定される。そのような場合は、検索部460は、ユーザ管理テーブル402aで記憶、管理されているスマートスピーカ2のデバイスID及び使用者のユーザIDのうち少なくとも一つを取得した後、スマートスピーカ2及びMFP_#1のそれぞれの設置位置を示す位置情報等を取得して、互いの位置関係から装置管理テーブル402bの正当性をチェックするように機能してもよい。仮に、スマートスピーカ2及びMFP_#1のそれぞれの設置位置が所定のずれていると判断した場合は、検索部460は、スマートスピーカ2に対して、原稿の読取りが行われるMFPがユーザの傍に存在しないことを音声で伝えるように、スマートスピーカ2に対してフィードバックしてもよい。
さらに補完部455は、ユーザの発話によって与えられた音声データに対して、紐づけ用DB402に記憶された装置管理テーブル402b及び命令管理テーブル402cを参照して、MFP_#1で実行される読取命令の変換(生成)に必要な情報を補完する(ステップS108)。しかし、この装置管理テーブル402b及び命令管理テーブル402cを参照してもなお読取命令に係る必須パラメータの生成に必要な情報を補完できない場合は、補完部455は、スマートスピーカ2を介してユーザにフィードバックを行い、必須パラメータの生成に必要な情報の入力(取得)をユーザに促すよう制御してもよい。なお、補完に係る補完処理は補完部455が行い、補完部455は、補完手段に相当する。
このとき、管理部459は、紐づけ用DB402に対して、デバイスID、ユーザID及び情報処理装置名(MFP_#1等)を関連付けて、ユーザ管理テーブル402a及び装置管理テーブル402bとして登録することができる。
図9は、第1の実施形態における情報の補完及び問合せ処理の一例を示すフローチャートである。
AIアシスタントサーバ装置4の取得部452は、ステップS107の処理で音声認識サーバ装置3からインテント、パラメータ及びデバイスID等を取得する(ステップS1001)。
続いて、解釈結果変換部453は、取得したインテント、パラメータ及びデバイスID等のデータから、必須パラメータを充足するか否かを判断する(ステップS1002)。この必須パラメータを充足するか否かを判断する方法として、例えば、解釈結果変換部453は、ユーザ名、ユーザID、原稿の読取りに必要となる情報等が取得したインテント、パラメータ及びデバイスID等のデータに含まれているか否かを確認する方法が挙げられる。上述の判断は、解釈結果変換部453が、例えば、紐づけ用DB402に記憶されたユーザ管理テーブル402a、装置管理テーブル402b及び命令管理テーブル402cを参照することで実現される。
続いて、取得したインテント、パラメータ及びデバイスID等のデータから、必須パラメータを充足すると判断された場合(ステップS1002でYes)、解釈結果変換部453は、受信したインテント、パラメータ及びデバイスID等のデータからMFP_#1(MFP6)に対する読取命令に変換してこのフローを抜ける(ステップS1003)。
一方、取得したインテント、パラメータ及びデバイスID等のデータから、必須パラメータを充足しないと判断された場合(ステップS1002でNo)、解釈結果変換部453は、紐づけ用DB402で記憶、管理されている各種テーブル(ユーザ管理テーブル402a、装置管理テーブル402b及び命令管理テーブル402c)の情報で必須パラメータを充足可能か否か判断する(ステップS1004)。
各種テーブルの情報で必須パラメータを充足すると判断された場合(ステップS1004でYes)、解釈結果変換部453は、補充した内容に基づいてMFP_#1に対する読取命令に変換してこのフローを抜ける(ステップS1005)。
一方、各種テーブルの情報で必須パラメータを充足しないと判断された場合(ステップS1004でNo)、解釈結果変換部453は、必須パラメータの問合せのために、ユーザに再度必要な情報を入力させるためのフィードバック処理を行い、このフローを抜ける(ステップS1006)。以上が、解釈結果変換部453が実行する情報の補完処理の一例である。
なお、上述したユーザIDを特定する方法として、例えば、以下の方法がある。スマートスピーカ2をあるユーザが使用する場合、そのスマートスピーカ2に向けて自分の名前をマイクロホン部29に向けて発話する。この発話による名前の入力を受けて、音声認識サーバ装置3の取得部352は、入力された名前のテキスト化を行う。続いて、AIアシスタントサーバ装置4の解釈結果変換部453は、上述したユーザ管理テーブル402aで記憶、管理されているユーザ名を照合して、発話をした使用者のユーザIDを特定する。なお、名前の入力に代えてユーザのメールアドレス等を発話するようにしてもよい。さらに、スマートスピーカ2の撮像部(カメラ部)30を使用して使用者の顔写真等を撮影し、その撮影画像とユーザIDとを照合するようにしてもよい。
また、別の例として、スマートスピーカ2及びそのスマートスピーカ2を利用するユーザが変わり、新たなユーザID及びデバイスIDの組合せでMFP_#1における原稿の読取り等に関する情報が与えられたときは、管理部459は、それらの情報をAIアシスタントサーバ装置4のHDD44等の記憶部に記憶、管理された命令管理テーブル402cのMFP_#1の項目に追加することで、命令管理テーブル402cを更新してもよい。
続いて、機器情報取得部457は、取得したインテントとパラメータに基づいてMFP_#1における原稿の読取りに必要な必須パラメータが充足しているか否かを判断する。この必須パラメータとは、例えば、受信したパラメータのうち読取りの対象となる原稿の読取りに係る属性情報を特定するための情報である。つまり、必須パラメータには、原稿の読取り後に生成されるファイルのファイル形式、原稿の読取り時の解像度、カラー/モノクロ設定、ファイル送信時の宛先等の任意の条件を設定することができる。
さらに、この必須パラメータは、上述したMFP_#1に関する命令管理テーブル402cとして、例えば、AIアシスタントサーバ装置4のHDD44等の記憶部に予め記憶させておき、適宜設定することもできる。さらに、この必須パラメータは、ユーザ及び画像読取装置の組合せ等にしたがって適宜必須パラメータと通常のパラメータを入れ替えることも可能である。つまり、ある条件では必須パラメータとして定義されたものでも、別の条件では通常のパラメータとして管理してもよい。
上述した説明より、機器情報取得部457は、以下の特徴を有する。つまり、機器情報取得部457は、紐づけ用DB402に記憶された装置管理テーブル402b及び命令管理テーブル402cを参照して、必須パラメータの生成に関連する情報を補完する。必須パラメータの生成に関連する情報としては、原稿の読取りにおける原稿(1ページの原稿、複数のページを含む製本原稿等)及び画像読取装置(MFP_#1、等)を特定するための情報等が挙げられる。具体的には、例えば、「田中さん」、「1000dpi」等の情報である。しかし、パラメータの生成に関連する情報、装置管理テーブル402b及び命令管理テーブル402cを参照してもなお必須パラメータの生成に必要な情報を補完できない場合は、機器情報取得部457は、必須パラメータを補完するための問合せとして、スマートスピーカ2に対して、不足しているパラメータの要求を送信する(ステップS109)。
さらに、ステップS109で機器情報取得部457からパラメータの要求を受信したスマートスピーカ2の取得部252は、受信したパラメータの要求をフィードバック部253に転送する。フィードバック部253は、パラメータの要求に相当する情報を音声に変換して通信制御部251を介してユーザにフィードバックを行い、必須パラメータの生成に必要な情報の入力をユーザに促すよう制御する(ステップS110)。なお、ステップS109及びS110の各処理は、図9で上述したフローチャートのステップS1006の処理に相当する。但し、図9でステップS1006の処理の実行が不要と判断された場合は、上述したステップS109及びS110の処理は行われない(省略される)。
続いて、実行判定部454は、上述した補完処理に基づいて、必須パラメータの充足判断を行う。その際、実行判定部454は、補完処理によって補完された内容でもなお必須パラメータが充足していないと判断した場合は、必須パラメータを問い合わせるためのレスポンス情報を生成する。このレスポンス情報の生成に基づいて、通知部458は、生成されたレスポンス情報をスマートスピーカ2に対して送信し、スマートスピーカ2から出力される音声等によってユーザに周知する。
なお、実行判定部454は、必須パラメータが充足していない場合は、必須パラメータが充足するまでパラメータを指定するようなレスポンス情報を生成して、スマートスピーカ2を介してユーザに問合せを継続するように機能する。このようにして実行される情報の補完及び必須パラメータの問合せ処理については、解釈結果変換部453及び実行判定部454が互いに協働することによって、ユーザの発話によって与えられる音声データに関連する情報を補完するための取得制御部462として機能してもよい。
また、必須パラメータは、ステップS102でスマートスピーカ2から取得したデバイスID及びユーザIDのうち少なくとも一つに基づいて変更されてもよい。また、必須パラメータには、MFP_#1を使用する使用者の(使用者名(ユーザ名)、使用者のユーザID等)が含まれていることが好ましい。但し、ユーザが音声操作等によってMFP_#1の使用者名、使用者のユーザID等を設定しなかった場合、実行判定部454は、ステップS102でスマートスピーカ2から取得したデバイスID及びユーザIDのうち少なくとも一つによって使用者を特定できるか否かを判断する。例えば、ある1台のスマートスピーカ2は、一人のユーザによって占有される場合があり得る。そこで、実行判定部454は、スマートスピーカ2のデバイスID及び使用者のユーザIDに関連付けられたユーザが紐づけ用DB402に登録されているかを判断する。つまり、実行判定部454は、デバイスID及びユーザIDに基づいてユーザを検索し、ユーザを特定する機能を備える。
ここで、実行判定部454は、ユーザを特定できた場合には、特定したユーザをMFP_#1の使用者としてパラメータに設定することができる。一方、ユーザを特定できなかった場合には、実行判定部454は、スマートスピーカ2を介して使用者の情報を設定するようにユーザへ問い合わせてもよい。つまり、所定の処理要求(読取指示等)を示すデータを生成するために、実行判定部454は、通知部458及び通信制御部451を介してスマートスピーカ2と通信し、ユーザに対して補完情報の入力を依頼してもよい。
なお、パラメータにはMFP_#1の使用者に係る情報が含まれていてもよい。但し、ユーザが音声操作によって使用者に係る情報、すなわち、ユーザ名及びユーザID等を設定しない場合、実行判定部454は、ステップS102でスマートスピーカ2から取得したデバイスID及びユーザIDのうち少なくとも一つによってMFP_#1を特定できるか否かを判断する。
上述の判断に基づいて、検索部460は、原稿の読取りに用いられるMFP_#1を検索し、特定する。ここで、MFP_#1を特定できた場合には、検索部460は、当該MFP_#1を原稿の読取りに用いられる画像読取装置としてパラメータに設定する。一方、MFP_#1を特定できなかった場合には、検索部460は、通知部458と協働してスマートスピーカ2を介してMFP_#1を設定するようにユーザへ問い合わせてもよい。
なお、ユーザが音声操作によってMFP_#1を設定した場合であっても、設定したMFP_#1と同一の名称を含む画像読取装置が複数存在する場合がある。そこで、実行判定部454は、音声操作によって設定されたMFP_#1の名称に加えて、デバイスID及びユーザIDのうち少なくとも一つによってMFP_#1を特定できるか否かを判断してもよい。つまり、実行判定部454は、デバイスID及びユーザIDに関連付けられたMFP_#1が紐づけ用DB402に登録されているかを判断する。これに続いて検索部460は、音声操作によって設定されたMFP_#1の名称に加えて、デバイスID及びユーザIDに基づいてMFP_#1を検索し、検索した結果から目的のMFP_#1を特定する。
ここで、本実施形態で使用される表1のテーブルデータとしてのAction(アクション)及びParameter(パラメータ)について、表1に示した具体例を用いて説明する。なお、AIアシスタントサーバ装置4の解釈結果変換部453は、音声認識サーバ装置3で解釈された解釈結果に基づいてMFP_#1における読取命令を示すデータに変換するために、例えば、以下に詳述する表1に示された情報をAIアシスタントサーバ装置4のHDD44等の記憶部に記憶し、参照できる構成としてもよい。
AIアシスタントサーバ装置4は、HDD44等の記憶部に、表1に示す画像読取装置に対する読取命令を含むテーブルデータを記憶する。なお、AIアシスタントサーバ装置4の解釈結果変換部453は、音声認識サーバ装置3で得られた解釈結果を読取命令に変換するために、表1に相当する情報をMFP6のHDD609等の記憶部に記憶し、参照できる構成としてもよい。
表1の例の場合、例えば、「SCAN EXECUTE」、「EMAIL EXECUTE」、及び「STORE EXECUTE」等が、アクション又はインテントの一例として示されている。また、「1000DPI」、「田中」及び「ADDRESS」が、パラメータの一例として示されている。なお、パラメータは、MFP6への読取命令等に対する設定値として指定可能な全てのパラメータが含まれる。
本実施形態では、例えば、解釈結果変換部453は、「SCAN EXECUTE」の解釈結果を、MFP_#1に対する「原稿の読取りの実行」を示す命令に変換する。同様に、解釈結果変換部453は、「EMAIL EXECUTE」の解釈結果を、MFP_#1に対する「emailの送信」を示す命令に変換する。同様に、解釈結果変換部453は、「STORE EXECUTE」の解釈結果を、MFP_#1に対する「ストレージサービスへの保存」を示す命令に変換する。
すなわち、AIアシスタントサーバ装置4の解釈結果変換部453は、解釈結果のアクション又はインテントに含まれる情報で、MFP_#1に対する読取命令の種類を判断し、パラメータに含まれる値を読取命令に対する設定値と判断して、解釈結果を読取命令に変換する。
なお、実行判定部454は、は、HDD44等の記憶部に表1とは異なる所定の処理の実行命令を含むテーブルデータを記憶し、そのテーブルデータを用いて、解釈結果変換部453で解釈した解釈結果をスマートスピーカ2にフィードバックしてもよい。
<読取命令の変換処理>
次に、AIアシスタントサーバ装置4で実行される読取命令への変換について説明する。解釈結果変換部453は、ステップS108で補完された情報から、例えば、MFP_#1で実行される読取命令に変換して、通信制御部451を介してMFP_#1に送信する(ステップS111)。このときの読取命令は、第一の読取要求の一例である。この場合、例えば、ユーザが発話等によって指示した「これスキャンして」、「これを田中さん宛にスキャンして」、「これを1000dpiでスキャンして」等の指示内容に相当する読取命令が、クラウドサービス装置5(又はAIアシスタントサーバ装置4)から通信制御部451を介してMFP_#1に送信される。なお、通信制御部451は、通信手段の一例である。
図10は、第1の実施形態における読取命令の変換及び送信の一例を示すフローチャートである。
図10では、解釈結果変換部453及び実行判定部454は、スマートスピーカ2で取得されたユーザの発話によって与えられる音声データ、スマートスピーカ2を識別するデバイスID、原稿の読取りに係る属性情報及びMFP6を識別する装置IDを含む情報に基づいて、原稿の読取りを継続させるための読取条件が存在するか否かを判断し、その判断結果に応じて読取命令に変換する一連の処理を行う。
まず、解釈結果変換部453は、充足された必須パラメータを取得して読取命令に変換する(ステップS1101)。例えば、発話にスキャンなどの読取を指示する内容が含まれていた場合は読取命令に変換する。更に、「次」や「続けて」など明示的に読取を指示する内容が発話中に含まれていない場合であっても、直前の指示が読取命令であった場合には、読取命令に変換することができる。例えば、実行判定部454は、スマートスピーカ2から取得した音声取得装置のデバイスIDに紐づく画像読取装置の装置IDを装置管理テーブル402bから特定する。特定した装置IDを含む命令が命令管理テーブル402cに含まれる一方で発話にジョブの種類が明示的に含まれていない場合は、実行判定部454は、読取命令であるものと判断することができる。
続いて、実行判定部454は、変換された読取命令について1回目の原稿の読取りであるか否かを判断する。転送された読取命令に対して原稿の読取りが1回目であるか否かの判断は、例えば、命令管理テーブル402cにて記憶、管理されている連続処理フラグの値を確認することで行われる。具体的には、実行判定部454は、連続処理フラグの値が『0』か『1』かのいずれであるかを判断する。つまり、実行判定部454は、スマートスピーカ2から取得した音声取得装置のデバイスIDに紐づく画像読取装置の装置IDを装置管理テーブル402bから特定する。続いて、実行判定部454は、特定した装置IDを含む命令を命令管理テーブル402cから特定し、特定した命令に含まれる連続処理フラグの値を確認する。この処理においては、実行判定部454は、連続処理フラグの値が『0』であることを確認する。このとき、連続処理フラグの値が『0』であれば、実行判定部454は原稿の読取りが1回目であると判断して原稿の読取りに係る属性情報で原稿の読取りを行うための処理を行う。一方、連続処理フラグの値が『1』であれば、実行判定部454は、原稿の読取りが2回目以降であると判断する。(ステップS1102)。したがって、連続処理フラグの値は、原稿の読取りを継続させるための読取条件の一例ということになる。なお、連続処理フラグの値は、ある原稿の読取りが行われる最初の状態では初期値として『0』が与えられてもよい。このように、ユーザから与えられた音声による指示を読取命令に変換する際に、原稿の読取りを連続(継続)して実行することを示す連続処理フラグをパラメータとして含めてもよい。
連続処理フラグの値を確認することで、1回目の原稿の読取りであると判断された場合(ステップS1102でYes)、すなわち、連続処理フラグが『0』と確認された場合、実行判定部454は、上述した原稿の読取りに係る属性情報に基づいて1回目の原稿の読取処理を実行するための読取命令を、通信制御部451を介してMFP_#1に送信する(ステップS1103)。さらに、実行判定部454は、連続処理フラグの値を『0』から『1』に変更する。
一方、連続処理フラグの値を確認することで、1回目の原稿の読取りでないと判断された場合(ステップS1102でNo)、すなわち、連続処理フラグが『1』と確認された場合、実行判定部454は、変換した読取命令がその原稿の読取りを終了させる内容であるか否かを判断する(ステップS1104)。このステップでは、実行判定部454は、例えば、読取命令に、「終了」、「以上」等の原稿読取を終了させる意味を持つことばを探す。この「終了」、「以上」等の発話を与えることは、周知の画像形成装置等におけるコピー、印刷、スキャン機能等を実行する際に操作部に配置もしくは表示される「#」記号を押下して最終原稿、最終ページであることを示す処理に相当する。なお、前回の音声データの取得から所定時間内にその原稿に対する原稿読取りの要求がなされた場合に、実行判定部454は、その原稿に対して継続した原稿読取りの要求であると判断してもよい。
読取命令に、「終了」、「以上」等の原稿の読取りを終了させる意味を持つことばが含まれていない場合(ステップS1104でNo)、実行判定部454は、直前に送信された読取命令をMFP_#1に再送してステップS1101に戻り、ユーザが原稿の読取りの終了を指示するまで繰り返す(ステップS1105)。このステップS1105において実行判定部454は、ユーザの指示が読取命令であった場合、つまり音声認識サーバ装置3が「次」、「続けて」のような音声データを受信した場合は、受信した音声データから生成されたパラメータに原稿の読取りに係る必須パラメータが含まれていない場合であっても、連続処理フラグが『1』であることを条件に原稿の読取りに係る必須パラメータが充足していると判断する。つまり、このステップS1105における処理では、実行判定部454は、直前に送信した読取命令とともに直前に送信した各種パラメータ等の読取条件もあわせてMFP_#1に再送する。このステップS1105から次のステップS1101までに実行される音声データの取得タイミングは、上述した第1のタイミングよりも後のタイミングである第2のタイミングの一例である。また、第2のタイミングで取得される音声データは、第2の音声データの一例である。さらに、第2の音声データのうち、「次」、「続けて」のように、直前に実行された読取命令を継続して実行可能な意味を持つ音声データが、所定の読取条件に基づく読取命令の実行を可能とする内容の一例となる。つまり、「次」、「続けて」のような音声データが、所定の読取条件を引き継いだ内容の一例でもある。
ただし、実行判定部454は、継続した原稿の読取である場合には各種パラメータは送信しなくてもよい。つまり、実行判定部454は、読取を実行する命令のみを送ってもよい。この場合、MFP6は、それ以前に取得した各種パラメータに基づいて読取を実行する。
なお、実行判定部454は、前回のインテントの受信から所定時間内に同一のインテントを取得した場合に、その原稿に対する継続した原稿の読取りであると判断してもよい。さらに、解釈結果変換部453は、「次」、「続けて」など発話にジョブの種類を明示的に含まない場合にはインテントとして「JOB_EXECUTE」を解釈結果として生成することができる。この場合、実行判定部454は、「JOB_EXECUTE」等のジョブの種類を明示しないインテントを受信した場合にも、継続した原稿の読取りであると判断してもよい。
一方、読取命令に、「終了」、「以上」等の原稿の読取りを終了させる意味を持つことばが含まれている場合(ステップS1104でYes)、実行判定部454は、原稿の読取りに係る終了要求を生成し、命令管理テーブル402cから対応する読取命令を削除するとともに連続処理フラグの値を『0』にしてこのフローを抜ける(ステップS1106)。ステップS1106の処理において、実行判定部454は、対応する読取命令を削除するだけでもよいし、連続処理フラグの値を『0』にしてから対応する読取命令を削除してもよい。また、実行判定部454は、所定時間以上ユーザから指示を受け付けなかった場合に終了要求を生成してもよい。なお、「終了」、「以上」等の原稿の読取りを終了させる意味を持つことばが含まれる読取命令は、第二の読取要求の一例である。
なお、本実施形態において、ユーザから発話される音声に原稿の読取りに無関係な意味を持つ内容が含まれていた場合、AIアシスタントサーバ装置4の実行判定部454は、図10のフローチャートを実行する前に、解釈結果変換部453と協働してユーザに対してフィードバック処理(図8bのステップS108)を実行するようにしてもよい。
また、本実施形態では、同一原稿の読取りにおいて、連続処理フラグの値が『0』のときに原稿の読取りが1回目であることを示し、『1』のときに原稿の読取りが2回目以降であることを示したが、これに限らない。例えば、同一原稿の読取りにおいて、『1』のときに原稿の読取りが1回目であることを示し、『0』のときに原稿の読取りが2回目以降であることを示してもよい。さらに、連続処理フラグの値を『0』、『1』に限らず、他の値及び文字列、記号等を用いて判断するようにしてもよい。
さらに、その原稿に対して2回目以降の読取りが行われる場合、次の原稿は、ユーザが原稿のページを更新した状態(ページを捲った状態、原稿の方向を変えた状態、等)で原稿台に載置されていることを前提とする。このような前提において、実行判定部454が連続処理フラグの値を確認することで1回目の原稿の読取りでないと判断された場合(ステップS1102でNo)、すなわち、連続処理フラグが『1』と確認された場合、実行判定部454は、ステップS1105で説明したように、直前に実行された原稿の読取りに係る属性情報を維持したまま、1回目の原稿の読取処理を実行するための読取命令と同じ命令を通信制御部451を介してMFP_#1に送信する。さらに、実行判定部454は、連続処理フラグの値を『1』に維持する。
なお、連続処理フラグの値については、同一原稿の読取りにおいて、『0』のときに読取りの実行が1回目であることを示し、『1』のときに読取りの実行が2回目以降であることを示したが、これに限らない。例えば、同一原稿の読取りにおいて、『1』のときに読取りの実行が1回目であることを示し、『0』のときに読取りの実行が2回目以降であることを示してもよい。さらに、連続処理フラグの値を『0』、『1』に限らず、他の値及び文字列、記号等を用いて判断するようにしてもよい。
<原稿の読取り及び継続処理>
図8bのシーケンス図に戻り、MFP_#1で実行される読取命令について説明する。ステップS111でAIアシスタントサーバ装置4から読取命令を受信したMFP_#1は、ネットワークI/F650で読取命令を受信し、CPU601で命令の内容に対応する各種制御信号を生成してエンジン制御部630に送信する。エンジン制御部630に送信された各種制御信号は、読取実行部654の制御の下、スキャナ部631で原稿を読み取るための各種駆動系を制御して原稿を読み取る。このようにして、受信した読取命令に基づいて原稿の読取処理及びその原稿に対する継続読取りの処理を行う(ステップS112)。このステップS112において、原稿の読取りの終了指示若しくは命令を受け付けた場合、MFP_#1の通信制御部651は、原稿の読取りによって生成したスキャンデータを自装置のHDD609等の記憶部に記憶、又は読取命令に含まれていた宛先に送信する。なお、読取命令に宛先が含まれていない場合は、MFP_#1は、自装置の操作部がユーザからの操作を受け付けることで、スキャンデータの送信先を示す宛先の指定を受け付けてもよい。
図10のステップS1102~S1106の処理で説明したように、AIアシスタントサーバ装置4から送信された読取命令の内容に応じて、MFP_#1の読取実行部654は、その原稿に対して、1回の原稿の読取りで終了する場合と2回以上継続して原稿の読取りを行う場合のそれぞれに対して原稿の読取処理を行う。
読取実行部654において所定の読取処理が終了したら、通知部655は、AIアシスタントサーバ装置4に対して、終了要求に対する終了通知を送信する(ステップS113)。なお、読取処理に係る終了要求は、MFP_#1の操作部がユーザの操作に応じて受け付けてもよいし、上述したように、ユーザがスマートスピーカ2に対して、例えば、「終了」と発話することによって終了させてもよい。この「終了」という発話内容によって、AIアシスタントサーバ装置4の通信制御部451は、操作音声変換プログラムで生成された「SCAN_END」又は「JOB_END」等の読取処理の終了を指示するインテントを取得し、読取命令に変換してMFP_#1に送信する。そして、MFP_#1の読取実行部654は、読取命令を受信してその原稿に対する読取りを実行して生成した複数のスキャンデータを複数ページからなる一つのファイルとして生成し、記憶・読出処理部を介してHDD609等の記憶手段に記憶、保存させることができる。さらに、読取実行部654は、通信制御部651と協働して、生成した複数ページからなる一つのファイルを外部装置にemail送信等により送信することもできる。
続いて、MFP_#1から終了通知を受信したAIアシスタントサーバ装置4は、通信制御部451からスマートスピーカ2に対して継続命令の有無判断及び発話要求を送信する(ステップS114)。
さらに、継続命令の有無判断及び発話要求を受信したスマートスピーカ2の取得部252及びフィードバック部253は、MFP_#1を使用するユーザに対して音声によるフィードバックを行い、一連の処理を終了する(ステップS115)。
なお、図10に示したフローチャートは一例であって、実行判定部454により実行される処理は上述した例に限らない。例えば、本実施形態に係る情報処理システムの置かれた環境及びシステムの用途等に応じて、上述したフローチャートの内容を適宜変えてもよい。
第1の実施形態において上述したような構成を備えることで、ユーザは、原稿を継続して読み取りたい場合に、原稿を読み取るための発話音声を原稿のページを変えたり原稿の方向を変えたりする度にすべて発話することなく、簡略化した発話音声を与えるだけで継続した読取りを行えるようになる。
<第2の実施形態>
図11a及び図11bは、第2の実施形態におけるユーザの発話に基づく読取処理の一例を示すシーケンス図である。第1の実施形態との相違点は、読取命令をMFP6が受信した後、AIアシスタントサーバ装置4から送信された読取命令に基づく原稿の読取りを継続させるための読取条件が存在するか否かをMFP6が判断し、原稿の読取りを継続させるための読取条件が存在する場合に、その読取条件を引き継いで原稿を読み取る処理を行う点である。具体的には、ユーザの発話によって与えられた原稿読取指示から変換された読取命令をMFP_#1が受信して自ら解釈、判断し、原稿の読取り及び継続した原稿の読取りを行う場合を例示する。以下にシーケンス図における各処理を示す。
<原稿の読取り及び継続処理>
図11a及び図11bのシーケンス図において、ステップS101~S110までは図8a及び図8bの場合と同様のため、詳細な説明を省略する。
第1の実施形態と同様に、AIアシスタントサーバ装置4の解釈結果変換部453は、ステップS108で補完された情報から、例えば、MFP_#1で実行される読取命令に変換して、通信制御部451を介してMFP_#1に送信する(ステップS211)。この場合、例えば、ユーザが発話等によって指示した「これスキャンして」、「これを田中さん宛にスキャンして」、「これを1000dpiでスキャンして」等の指示内容に相当する読取命令が、クラウドサービス装置5(又はAIアシスタントサーバ装置4)から通信制御部451を介してMFP_#1に送信される。
ステップS211でAIアシスタントサーバ装置4から読取命令を受信したMFP_#1は、受信した読取命令に基づいて原稿の読取処理及びその原稿に対する継続した読取りの処理を行う(ステップS212)。
第2の実施形態でも同様に、AIアシスタントサーバ装置4から送信された読取命令の内容に応じて、MFP_#1の読取実行部654は、その原稿に対して、1回の原稿の読取りで終了する場合と2回以上継続して原稿の読取りを行う場合のそれぞれに対して原稿の読取処理を行う。
図12は、第2の実施形態における読取命令の実行処理の一例を示すフローチャートである。図12のフローチャートは、上述した図8bのステップS111でAIアシスタントサーバ装置4の解釈結果変換部453から通信制御部451を介して送信された読取命令が、MFP_#1で原稿の読取処理として実行される例を示したものである。
まず、MFP_#1(MFP6)の命令受信部652は、AIアシスタントサーバ装置4から送信された読取命令を受信する(ステップS1201)。本実施形態では、命令受信部652は、読取命令受信手段の一例として機能する。
続いて、MFP_#1の判断部653は、命令受信部652から転送された読取命令に対して、原稿の読取りが1回目であるか否かを判断する。転送された読取命令に対して原稿の読取りが1回目であるか否かの判断は、例えば、MFP6に記憶される命令管理テーブル402cで記憶、管理されている連続処理フラグの値を確認することで行われる。この処理においては、判断部653は、連続処理フラグの値が『0』であることを確認する。このとき、連続処理フラグの値が『0』であれば、判断部653は原稿の読取りが1回目であると判断して原稿の読取りに係る属性情報に基づいて原稿の読取りを実行する。一方、連続処理フラグの値が『1』であれば、判断部653は、原稿の読取りが2回目以降であると判断する(ステップS1202)。したがって、連続処理フラグの値は、原稿の読取りを継続させるための読取条件の一例ということになる。なお、連続処理フラグの値は、ある原稿の読取りが行われる最初の状態では初期値として『0』が与えられてもよい。このように、ユーザから与えられた音声による指示から変換された読取命令に、原稿の読取りを継続(連続)して実行することを示す連続処理フラグがパラメータとして含まれてもよい。
連続処理フラグの値を確認することで、1回目の原稿の読取りであると判断された場合(ステップS1202でYes)、すなわち、連続処理フラグが『0』と確認された場合、判断部653は、上述した原稿の読取りに係る属性情報に基づいて1回目の原稿の読取処理を実行する(ステップS1203)。さらに、判断部653は、連続処理フラグの値を『0』から『1』に変更する。
一方、連続処理フラグの値を確認することで、1回目の原稿の読取りでないと判断された場合(ステップS1202でNo)、すなわち、連続処理フラグが『1』と確認された場合、判断部653は、変換した読取命令がその原稿の読取りを終了させる内容であるか否かを判断する(ステップS1204)。このステップでは、判断部653は、例えば、読取命令に、「終了」、「以上」等の原稿読取を終了させる意味を持つことばを探す。この「終了」、「以上」等の発話を与えることは、周知の画像形成装置等におけるコピー、印刷、スキャン機能等を実行する際に操作部に配置もしくは表示される「#」記号を押下して最終原稿、最終ページであることを示す処理に相当する。
読取命令に、「終了」、「以上」等の原稿の読取りを終了させる意味を持つことばが含まれていない場合(ステップS1204でNo)、判断部653は、直前に実行された読取命令を再度MFP_#1で実行してステップS1101に戻り、ユーザが原稿の読取りの終了を指示するまで繰り返す(ステップS1205)。このステップS1105において判断部653は、「次」、「続けて」のような音声データから取得したパラメータには必須パラメータが含まれていない場合であっても、連続処理フラグが『1』であることを条件に必須パラメータが充足していると判断する。なお、判断部653は、前回のインテントの受信から所定時間内に同一のインテントを取得した場合に、その原稿に対する継続した原稿の読取りであると判断してもよい。さらに、判断部653は、「JOB_EXECUTE」等の原稿の読取りであることを示すインテントを受信した場合にも、継続した原稿の読取りであると判断してもよい。
一方、読取命令に、「終了」、「以上」等の原稿の読取りを終了させる意味を持つことばが含まれている場合(ステップS1204でYes)、読取実行部654は、直前に実行された読取命令を実行し、判断部653は、原稿の読取りに係る終了要求の生成及び命令管理テーブル402cから対応する読取命令を削除するとともに連続処理フラグの値を『0』にしてこのフローを抜ける(ステップS1206)。ステップS1206の処理において、判断部653は、対応する読取命令を削除するだけでもよいし、連続処理フラグの値を『0』にしてから対応する読取命令を削除してもよい。なお、「終了」、「以上」等の原稿の読取りを終了させる意味を持つことばが含まれる読取命令は、第二の読取要求の一例である。
なお、本実施形態でも、同一原稿の読取りにおいて、連続処理フラグの値と原稿の読取りが何回目であるかの関係に制約は設けない。例えば、同一原稿の読取りにおいて、『1』のときに原稿の読取りが1回目であることを示し、『0』のときに原稿の読取りが2回目以降であることを示してもよい。さらに、連続処理フラグの値を『0』、『1』に限らず、他の値、文字列、記号等を用いて判断するようにしてもよい。
なお、その原稿に対して2回目以降の読取りが行われる場合、次の原稿は、ユーザが原稿のページを更新した状態(ページを捲った状態)で原稿台に載置されていることを前提とする。このような前提において、判断部653が連続処理フラグの値を確認することで1回目の原稿の読取りでないと判断された場合(ステップS1202でNo)、すなわち、連続処理フラグが『1』と確認された場合、読取実行部654は、ステップS1205で説明したように、直前に実行された原稿の読取りに係る属性情報を維持したまま、1回目の原稿の読取処理を実行するための読取命令と同じ命令を実行する。さらに、判断部653は、連続処理フラグの値を『1』に維持する。
上述したように、継続して読み取られる原稿は、ユーザが所望のページを更新した(開いた)状態で原稿台に載置されているものとして説明したが、原稿のページが更新されずに次の読取命令がMFP_#1で実行された場合の処理については、後ほど詳述する(重複した読取りに対する処理)。
また、AIアシスタントサーバ装置4から受信した読取命令に基づいて原稿の読取りを実行する場合、MFP_#1は、自装置の操作部に原稿の読取りに係る設定及びスキャンデータの送付先を示す宛先を表示する画面を表示してもよい。また、あわせて、読み取った原稿に対する印刷条件の変更を受け付けてもよいし、ユーザの許可を受け付けたことを条件に、読み取った原稿の外部装置へのファイル送信を実行してもよい。
さらに、MFP_#1は、その原稿から読み取られた各ページを1つのファイルとして生成し、生成したファイルを通信制御部651を介して外部装置に送信することもできる。この場合、通信制御部651は、ファイル送信手段としての機能を担う。なお、上述した命令受信部652は、AIアシスタントサーバ装置4から読取命令を受信する読取命令受信手段として機能すると説明したが、通信制御部651が読取命令受信手段の機能を兼用してもよい。
ここで図11bのシーケンス図に戻るが、ステップS213~S215までの処理は、図8bのステップS113~S115と同様のため、詳細の説明は省略する。
ここで、MFP_#1は、自装置が有する操作部に、原稿の読取りに係る各設定情報、読取処理によって取得したファイル名、自装置内部ストレージへの記憶設定、外部装置へのファイル送信条件及び印刷を実行することを示す画面等を表示してもよい。このときに、ユーザの許可を受け付けたことを条件に読み取った原稿の印刷処理を実行してもよい。
なお、MFP_#1は、クラウドサービス装置5(又はAIアシスタントサーバ装置4)から送信された読取命令に応じて、装置の電源及びネットワーク設定を起動し、原稿の読取りを開始するようにしてもよい。
また、本実施形態によれば、MFP_#1は、操作部による操作を受け付けることなく直ちにジョブを実行することができる。これにより、ユーザは音声操作のみで連続した原稿の読取りを指示することができる。
なお、図12に示したフローチャートは一例であって、判断部653により実行される処理は上述した例に限らない。例えば、本実施形態に係る情報処理システムの置かれた環境及びシステムの用途等に応じて、上述したフローチャートの内容を適宜変えてもよい。
(継続した原稿の読取りとして判断される条件)
上述したように、本実施形態におけるMFP_#1では、その原稿に対して継続した原稿の読取りであると判断される場合として、以下が考えられる。一つは、「次」、「続けて」のように、ユーザの発話から与えられた音声データに含まれるパラメータが、継続して原稿の読取りを行う意味として解釈可能な内容である場合である。
もう一つは、前回の原稿の読取りに係る音声データの取得から所定時間内に、その原稿に対する原稿の読取りに係る音声データを取得した場合である。
さらにもう一つは、あるユーザがMFP_#1にログインをした後、命令受信部652で読取命令を受信(又は解釈結果変換部453で読取命令に変換)してからそのユーザがログインをした状態で命令受信部652が次の読取命令を受信(又は解釈結果変換部453で次の読取命令に変換)した場合、又は命令受信部652で読取命令を受信してから所定時間内に命令受信部652が次の読取命令を受信した場合の少なくとも一つの場合に、継続した原稿の読取りであると判断してもよい。
但し、継続した原稿の読取りとして判断される条件は一例にすぎず、本実施形態において発明の要旨を逸脱しない範囲であれば、継続した原稿の読取りとして判断される条件に特に制約は設けない。
(重複した読取りに対する処理)
MFP_#1は、原稿を読み取る度に、既存の文字認識技術を用いて、原稿の読取りが完了したページ番号を特定してもよい。MFP_#1は、特定したページ番号をAIアシスタントサーバ装置4へ通知することができる。AIアシスタントサーバ装置4は、管理DB401又は紐づけ用DB402等に通知された情報を、デバイスID、装置ID及びユーザID等と紐づけて記憶する。これにより、AIアシスタントサーバ装置4は、スマートスピーカ2を介して原稿の読取り状況をユーザへ通知することができる。
例えば、同じページ番号を有する原稿が2回以上読み取られたと判断した場合、AIアシスタントサーバ装置4の通知部458は、スマートスピーカ2を介してユーザに音声又は画面表示によって、重複して読取処理が行われたことを警告することができる。また、連続したページ番号を有する原稿が読み取られたにも関わらず所定のページ番号を有する原稿だけ読み取られていないと判断した場合、通知部458は、スマートスピーカ2を介してユーザに音声又は画面表示によって、所定ページの読取り処理が行われなかったことを警告することができる。
また、ユーザがスマートスピーカ2に対して原稿の読取りの状況を発話によって問い合わせた場合、AIアシスタントサーバ装置4は、スマートスピーカ2を介してユーザに音声又は画面表示によって、原稿の読取りが完了したページ番号を通知することができる。この場合、例えば、操作音声変換プログラムの実行により機能する解釈部354は、「SCAN_PAGECONFIRM」などの原稿の読取りの状況を問い合わせるインテントを生成する。さらに、管理プログラムを実行することで機能する実行指示部456は、MFP_#1に原稿の読取り済みのページ番号を問い合わせることによって、又はMFP_#1から通知されているページ番号に基づいて、原稿の読取りの状況を確認する。そして、通知部458は、操作音声変換プログラムを介して、スマートスピーカ2に対して原稿読取り済みのページ番号を通知することができる。
本実施形態において、音声操作システム1は、例えば、過去のMFP_#1の原稿の読取りに係る履歴及び使用履歴、並びに図5、図6の紐づけ用DB402を構築する各管理テーブルの情報から、ユーザの発話等に伴う音声データついて、機械学習を利用して、MFP_#1における読取処理に加えて関連する処理も自動的に実行するような構成を備えていてもよい。
第2の実施形態において上述したような構成を備えることで、ユーザは、原稿を継続して読み取りたい場合に、原稿を読み取るための発話音声を原稿のページを変えたり原稿の方向を変えたりする度にすべて発話することなく、簡略化した発話音声を与えるだけで継続した読取りを行えるようになる。
〔実施形態の効果〕
以上の説明から明らかなように、本実施形態に係る音声操作システム1は、スマートスピーカ2に、プラットフォームアプリケーションプログラムとなる操作音声処理プログラム等を含むプログラムをインストールし、このプラットフォームアプリケーションプログラムによるクラウドサービス装置5との通信を行う。ユーザがスマートスピーカ2に設けられているマイクロホン部29に向かって音声操作を行うと、クラウドサービス装置5は、ユーザの発話内容を解析し、ユーザによって与えられた原稿読取指示及び所定の処理の実行指示に基づく各処理が行われるようにMFP6等の画像読取装置を操作する。
このような構成により、簡略化した音声指示を与えるだけで複数の原稿の読取り処理を継続的に行うようにすることが可能になる。つまり、連続する複数のジョブを音声によって画像形成装置に実行させる場合、その都度ジョブを実行させるための操作を簡略化することが可能になる。
これによって、タッチパネル27等のGUI(Graphical User Interface)による操作を不要とすることができる。このため、操作に慣れているユーザであっても、さらに迅速かつ簡単な入力操作を可能とすることができる。また、対話等による操作サポートによって、例えば、複雑なネットワーク設定、高度な処理の設定又は新規アプリの導入等が不要となる。その結果、高齢者又は機械操作に不慣れなユーザ等であっても、ユーザが希望する操作を迅速かつ簡単に実行可能とすることができ、利便性が向上する。さらに、原稿を読み取る際に原稿を手で押さえなければならない場合、操作部等への操作性が悪くなるといった場合が想定される。しかし、本実施形態に係る音声操作システム1によれば、読み取りをしたい原稿を原稿台に置いて必要最低限な発話をすれば継続的な原稿の読取りが実行されるため、操作性の向上が期待できる。
また、本実施形態によれば、ユーザの発話内容から得られたテキストデータに基づくユーザの意図の解析を、クラウドサービス装置5(又はAIアシスタントサーバ装置4)側で判断して処理することも可能となる。
なお、画像読取装置は、通信機能を備え繰返しの処理が可能な装置であれば画像形成装置(MFP)に限られない。つまり、画像読取装置は、例えば、PJ(Projector:プロジェクタ)、IWB(Interactive White Board:相互通信が可能な電子式の黒板機能を有する白板)、デジタルサイネージ等の出力装置、HUD(Head Up Display)装置、産業機械、撮像装置、集音装置、医療機器、ネットワーク家電、自動車(Connected Car)、ノートPC(Personal Computer)、携帯電話、スマートフォン、タブレット端末、ゲーム機、PDA(Personal Digital Assistant)、デジタルカメラ、ウェアラブルPCまたはデスクトップPC等であってもよい。
上述した実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサ、上述した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(Digital Signal Processor)、FPGA(Field Programmable Gate Array)及び従来の回路モジュール等のデバイスを含むものとする。
また、音声取得装置は、マイク機能、撮像機能、スピーカ機能、表示機能、操作機能及び通信機能等を備えた装置であれば、スマートスピーカに限られない。音声取得装置は、例えば、ノートPC(Personal Computer)、携帯電話、スマートフォン、タブレット端末、ゲーム機、PDA(Personal Digital Assistant)、デジタルカメラ、ウェアラブルPC、デスクトップPC又はイヤホン型の送受信装置であってもよい。このイヤホン型の送受信装置とは、例えば、ユーザの耳に装着された状態で発話したユーザ自身の音声を受信(取得)し、受信した音声を音声データに変換して所定のサーバ装置に送信し、所定のサーバ装置からフィードバック結果等を受信(取得)する機能を備えた通信装置をいう。
同様に、画像読取装置は、上述したMFP以外に、ネットワークを介してサーバ装置及び音声取得装置と通信可能で、製本された状態のブック原稿等の原稿を読取り可能な装置であればその種類を問わない。例えば、画像読取装置は、単体スキャナ等の電子機器であってもよい。
最後に、上述の実施形態は、一例として提示したものであり、本発明の範囲を限定することは意図していない。この新規な各実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置換え、変更を行うことも可能である。例えば、上述の第1の実施形態の説明では、音声認識サーバ装置3がユーザにより与えられた発話等に対応するテキストデータを生成し、生成したテキストデータに基づいて、AIアシスタントサーバ装置4がユーザの意図している操作を解釈した。しかし、音声取得装置側に、このような音声認識機能及び解釈機能を設け、スマートスピーカ2で、ユーザの発話から意図する操作を解釈してもよい。これにより、音声認識サーバ装置3及びAIアシスタントサーバ装置4を不要とすることができ、システム構成を簡素化することができる。
このような各実施形態及び各実施形態の変形は、発明の範囲及び要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。