図1に、本実施形態の制御が適用される機器の一例として、画像処理装置の構成を例示する。
この画像処理装置は、スキャンや印刷、コピーなどの機能を併せ持つ装置(いわゆる複合機)であり、スキャナ12、プリンタ14、表示部16、入力部18、CPU(中央演算装置)20、メモリ22、ネットワークIF24、各種センサ25、UI制御部26、機器制御部28を含む。スキャナ12は、紙等の媒体上の原稿画像を光学的に読み取る装置である。プリンタ14は、画像データを用紙等の媒体上に印刷する装置である。表示部16は、UI(ユーザインタフェース)のための画面を表示する装置である。入力部18は、画像処理装置に対するユーザの指示等の入力を受け付ける装置である。画像処理装置がタッチパネル表示装置を備える場合、この表示装置は表示部16と入力部18の役割を果たす。また、入力部18は、スタートボタンやテンキー等の機械的なボタンやスイッチ等を含んでいてもよい。また、用紙トレイやカバー等、ユーザが開閉可能な部分も入力部18の一例である。用紙トレイやカバーには、開閉を検知するセンサが設けられており、このセンサの信号が画像処理装置の制御やUI画面の表示に反映される。
CPU20は、不揮発性記憶装置(図示省略)にインストールされた制御プログラムを、メモリ22を作業領域として用いながら実行することで、画像処理装置の各部を制御し、各種の機能を実現する。ネットワークIF(インタフェース)24は、LAN(ローカルエリアネットワーク)等のネットワークと接続するためのインタフェース装置である。各種センサ25は、画像処理装置内の各部に設けられたセンサである。特に本実施形態との関係では、プリンタ14のための用紙トレイの開閉を検知するセンサ、詰まった紙の除去やトナーやインクの交換等で画像処理装置の内部にアクセスする際に開くカバーの開閉を検知するセンサ、トナーカートリッジ等の取り外しのためのレバーの状態を検知するセンサ、等が各種センサ25の一例である。また、画像処理装置の前の人の有無を検知する人感センサも、各種センサ25の一例である。
UI制御部26は、表示部16に対するUI画面の表示制御と、入力部18に対するユーザの入力の受け付け制御を実行する。
UI画面の表示制御には、メニュー画面、コピー画面、スキャン画面、装置設定画面、各種のエラー画面、等といった各種のUI画面を生成する処理、生成したUI画面のデータを表示部16に表示するか、表示せずに背面(バックグラウンド)で保持するかの制御、前面(表示されているもの)と背面の画面の切り替え等が含まれる。また、UI制御部26は、UI画面の全部又は一部にアニメーションを表示する機能を備える(例えば画面内の一部領域内で動画ファイルを再生する)。ここでのアニメーションには、線画等の二次元画像の動画であるいわゆるアニメーションに加え、3次元CG(コンピュータグラフィックス)で生成した動画、実世界の実写した動画等も含まれる。
また、UI制御部26は、表示するUI画面に視覚効果を適用する機能を有する。視覚効果には、例えば、フェードイン・フェードアウト表示、スライド表示、透明表示、陰影表示がある。フェードイン表示は、画面や画面内の画面要素(例えばアイコン)を新たに表示する際にその表示の濃度を順に濃くしていく処理である。フェードアウト表示は、画面や画面内の画面要素を消す際にその表示の濃度を順に薄くしていく処理である。スライド表示は、画面や画面内の画面要素を新たに表示する際や消去する際に、それら画面又は画面要素を表示領域端部からスライドしつつ出現させたり、表示領域端部へとスライドしつつ消滅するようにする処理である。透明表示は、画面内に表示する画面要素を半透明とし、背景が透けて見えるようにする処理である。陰影表示は、画面内の画面要素に対して影を表示する処理である。なお、ここに挙げた視覚効果はあくまで一例に過ぎず、UI制御部26はこれら例示した視覚効果のすべてを実装していなくてもよいし、例示したもの以外の視覚効果を実装していてもよい。
機器制御部28は、画像処理装置の動作を制御する。例えば機器制御部28は、各種センサ25からのセンサ信号に基づき画像処理装置の状態を管理すると共に、その状態や入力部18に対するユーザの入力に応じて、スキャナ12やプリンタ14等といった機能要素の動作を制御することで、ユーザに指示する処理を実行する。
例えば、ユーザが表示部16に表示されるコピー画面を入力部18で操作し、コピー機能のパラメータを設定し、スタートボタンの押下等の操作によりジョブの開始を指示したとする。すると、UI制御部26は、そのジョブの起動を機器制御部28に要求する。機器制御部28は、スキャナ12やプリンタ14を制御して、原稿を読み込み、印刷処理を実行する。そして、機器制御部28は、スキャナ12やプリンタ14を制御しながら原稿の読み込みの状況や印刷の実行状況をUI制御部26へ通知する。UI制御部26は、通知された情報を表示部16に表示することで、ジョブの実行状況をユーザに報知する。
また、ネットワークIF24を介して外部(例えばネットワーク上のパーソナルコンピュータ)から要求されたプリントジョブが機器制御部28で受信され、実行される。すると、コピーの場合と同様にそのジョブの実行状況がUI制御部26によって表示部16に表示される。
また、上に例示したコピーやプリントのジョブの実行中に紙詰まりなどの異常が発生すると、UI制御部26によってフォールト(障害)画面が表示され、そのリカバリー作業をユーザに促すことがある。UI制御部26は、そのフォールト画面の表示処理において、画面切り替えに視覚効果を用いたり、障害からの復旧方法をアニメーションを用いて表示したりする(視覚効果やアニメーションの利用の一例)。このような視覚効果やアニメーションの利用は、ユーザが視覚的に理解しやすくすることで画像処理装置の操作性を高める工夫の一例である。
UI制御部26及び機器制御部28は、CPU20が制御プログラムを実行することにより実現される。UI制御部26と機器制御部28は、CPU20やメモリ22、ネットワークIF24といったハードウエア資源を分け合いながら、各々の処理を実行する。
上述した視覚効果やアニメーションを利用した画面表示は、ユーザの理解を助け、ひいては操作性の向上をもたらすものである。しかし、その一方でCPU20等のハードウエア資源の処理負荷が大きい。CPU20の性能があまり高いものでない場合、この種の画面表示を行うと、ハードウエア資源の競合のために機器制御部28の処理能力を低下させてしまうことがある。これに対する対策として、CPU20等のハードウエア資源の処理負荷が高いときには、そのような高負荷の表示に代えて、低負荷の表示を行う方法が知られている。この方法では、現にユーザが表示部16を見ながら操作を行っているときでも、機器制御部28等の何らかの処理によりCPU20が高負荷であれば、低負荷の表示が成されることになる。低負荷の表示は、視覚効果やアニメーションが用いられないため、それらを利用した高負荷の表示よりもユーザにとって分かりにくい表示となりがちである。
これに対して本実施形態では、ユーザが画像処理装置を操作しているか否かを判定し、操作していると判定した場合には、視覚効果やアニメーションを利用した分かりやすい画面表示(「通常表示」と呼ぶ)を行う。一方、操作していないと判定した場合には、通常表示よりもCPU20等の処理負荷が低いモードの画面表示(「簡易表示」と呼ぶ)を行う。
簡易表示は、少なくとも以下の2種類がある。
第1の種類は、通常表示に用いられる視覚効果やアニメーションのうちの少なくとも1つを無効にしたものである。視覚効果は、画面の静止画像から画像処理により生成するものなので、これを無効化すると、静止画像の画面となる。アニメーションを無効化すると、例えばそのアニメーションの最初のフレームが静止画像で表示される。
簡易表示の画面は、通常表示の画面で利用するものとして設定されている視覚効果やアニメーションのすべてを無効化したものに限らず、一部を無効化したものであってもよい。例えば、ある障害についての報知用の通常表示の画面が、アニメーション表示と、視覚効果のうちのフェードイン表示と陰影表示を行うものである場合、それら3種の表示方式のすべてを無効化したものは簡易表示の代表例であるが、アニメーション表示を取りやめてフェードイン表示及び陰影表示を実行する場合も簡易表示の一例である。
第2の種類は、通常表示の画面や画面要素とは別に、表示処理の負荷が低い簡易表示専用の画面や画面要素を用意するものである。例えば、視覚効果を伴わない静止画の画面を簡易表示専用の画面とするなどである。
通常表示の画面とこれに対応する簡易表示専用画面の例を、図3及び図4に示す。図3及び図4は、紙詰まりの発生を知らせる画面についての通常表示画面(図3)と、簡易表示画面(図4)の例を模式的に示している。
図3の例では、紙詰まり報知の通常表示画面100には、紙詰まりを解消するための手順1〜3の3ステップの作業手順の説明102が表示される。またその通常表示画面100には、ユーザが手順1で行う作業を示すアニメーション(動画)104を表示し、次に手順2で行う作業を示すアニメーション106を表示し、更に手順3で行う作業を示すアニメーション108を表示する。紙詰まりが解消されるまで、これら3つのアニメーションの表示が繰り返される。ここで表示されるアニメーションは、実際にその画像処理装置と同じ機種の装置の紙詰まりを取り除く作業を行っている様子を実写した動画であってもよい。ユーザが画像処理装置の前にいる場合、このようなアニメーション表示は、紙詰まりを解決する作業を行うのに大きな助けとなる。その一方、アニメーション表示は、CPU20の負荷を高めてしまう。またそのアニメーションのデータをネットワーク上からダウンロードして表示する場合には、ネットワークIF24の負荷も高める。このようなことから、通常表示画面100の表示は、同時に行われる他の処理のためのCPU20やネットワークIF24等の処理能力を部分的に奪うことになり、それら他の処理を遅くしてしまう。紙詰まりの画面の表示と同時に行われる可能性がある「他の処理」としては、例えば、ネットワーク上のPCからのページ記述言語の印刷データの受信や、その印刷データをプリンタ14が取り扱い可能なビットマップ形式等の画像データに変換する処理、がある。
一方、図4に例示する紙詰まり報知用の簡易表示専用画面200は、表示部16の表示領域いっぱいに、紙詰まりを示すピクトグラム(絵文字)や文字列(「JAM」あるいは「紙詰まり」)を示す画像を示したものである。ここで、簡易表示専用画面200の画像として遠方視認性の高いものを用いてもよい。ここで視認性とは、ユーザがその画面の内容(意味)を視覚的に認知できることであり、遠方視認性とは遠方からの視認性のことである。遠方視認性が高い画面は、低い画面よりも、より遠い場所からその内容を視認できる。遠方視認性の高い簡易表示専用画面を用いれば、対応する通常表示画面より遠いところからその内容が視覚的に認識できる。もちろん、遠くに行くほど画面の画像は小さく見えるため、遠方視認性を高めるには画面の表示内容を単純化して情報量を減らす必要があるが、中核となる「ユーザに伝えたい情報」(例えば紙詰まり報知のための画面の場合、紙詰まりが発生したこと)は維持する。ユーザが遠方にいれば画像処理装置の入力部18(例えばタッチパネル)操作が行われることがないので、操作を受け付けるための要素を省略し、ユーザに伝えたい情報の表示に特化した簡易表示専用画面は十分な機能を果たす。簡易表示専用画面が、対応する通常表示画面よりも遠方視認性が高いということは、通常表示画面の内容の視認が困難な程度の遠方(オフィス環境を想定すれば、遠方といっても画像形成装置から数m程度の距離)において、簡易表示専用画面が示す「ユーザに伝えたい情報」が認識できることである。なお、簡易表示専用画面200は、通常表示画面100よりも表示のための処理負荷が低いことが第一義であり、遠方視認性が高いことは必須ではない。
この種の静止画の簡易表示専用画面は、アニメーションや視覚効果を用いるものよりも表示のためのCPU20の負荷がはるかに低い。このため、その画面の表示中に実行される機器制御部28の他の処理のために、通常表示画面を表示する場合より計算資源をより多く割り当てることができる。
ホーム画面、コピー画面、スキャン画面のように、ユーザから操作を受け付けることを主目的としており、情報伝達に重きが置かれていない画面の場合、簡易表示専用画面を用意する必要性は低い。一方、障害の発生時に表示されるフォールト画面のように、ユーザへの情報伝達が重要な目的である画面については、ユーザが画像処理装置の近くにいないときに簡易表示専用画面を表示することは、遠方のユーザに障害発生を知らせるという大きな意味を持つ。
トナーや用紙等の消耗品の欠乏等の軽微な障害を報知する画面についても、通常表示画面として復旧手順を示すアニメーションを含んだものを用意し、簡易表示専用画面としてその障害が発生したことを示すピクトグラム等の遠方視認性の高い画像を用意してもよい。
なお、簡易表示専用画面を遠方のユーザに気づかせるために、簡易表示専用画面の表示を点滅させるなど、よりユーザに対して目立つ表示態様を用いてもよい。
本実施形態では、ユーザが画像処理装置を操作しているか否かに応じて通常表示と簡易表示との切り替えを行う。ここで「ユーザが画像処理装置を操作している」状態は、ユーザが現に入力部18(タッチパネル、各種ボタン、用紙トレイ等)に触れている場合に限らない。ユーザが画像処理装置をローカルで(すなわちネットワーク経由ではなく、その場で直接)操作し得ると判断される状況は、「ユーザが画像処理装置を操作している」に該当する。以下では、「ユーザが画像処理装置を操作している」と判断される状態のことを「操作状態」と呼び、そうでない状態(ユーザが画像処理装置を操作していない状態)のことを「非操作状態」と呼ぶ。一つの例では、具体的には、入力部18がユーザの操作を検知した場合「操作状態」に移行し、その後、入力部18がユーザの操作を検知しない状態が所定(すなわち予め定めた)長さの時間継続した場合「非操作状態」に移行する。また別の例では、人感センサやカメラにより、画像処理装置の正面(表示部16や入力部18が存在する部分)近傍に人が検知された場合には「操作状態」と判定し、検知されない場合は「非操作状態」と判定する。
UI制御部26が行う「操作状態」、「非操作状態」の切替制御の例を図2に示す。図2の手順は、定期的に繰り返し実行される。この手順では、まずUI制御部26は、入力部18に対するユーザの操作があったかどうかを判定する(S10)。例えば、タッチパネルへのタッチが検知されたとき、テンキー等の機械的なボタンの押下が検知されたとき、用紙トレイやカバーが開いていることをセンサが検知しているとき、等にはS10の判定結果やYes(肯定)となる。S10の判定結果がYesの場合、UI制御部は、UI表示の制御のための状態変数の値を「操作状態」とする(S12)。既に「操作状態」である場合は、その値を維持する。またUI制御部26は、無操作時間を計測するタイマを初期値にリセットして計時を開始し(S14)、一定時間後にまたS10からの処理を行う。
S10の判定結果がNoの場合、UI制御部26は、タイマがタイムアウト(タイマに設定された時間が経過)したか否かを判定する(S16)。この判定結果がNoの場合、UI制御部26は、一定時間後にまたS10からの処理を行う。S16の判定結果がYesの場合、UI制御部26は、UI表示制御の状態変数の値を「非操作状態」に変更(既にその値であればそれを維持)し(S18)、一定時間後にまたS10からの処理を行う。
以上は、「操作状態」、「非操作状態」の切り替えを、入力部18へのユーザからの操作の有無に基づいて行う場合を例に取って説明した。人感センサやカメラで撮影した画像から画像処理装置の正面に人が居るか否かを検知し、その検知結果に基づいてその切り替えを行う場合にも同様の手順で処理を行えばよい。この場合、S10で、人感センサやカメラが人を検知しているか否かを判定すればよい。この場合、人感センサ等が画像処理装置正面近傍に人を検知しなくなった時点で「非操作状態」に変更してもよいし、図2の手順に示すように、人を検知しない状態が所定時間続く(タイマがタイムアウトする)のを待って「非操作状態」に変更してもよい。
また、入力部18に対するユーザの無操作時間による判定と、人感センサやカメラの人検知結果に基づく判定とを組み合わせてもよい。この場合、人感センサ等が画像処理装置正面近傍に人を検知している状況で、ユーザの無操作時間が閾値を超えている(すなわちタイマがタイムアウトしている)こともあり得る。このようなケースは、ユーザがたまたま画像処理装置の前にいる(例えばたまたまその場所で誰かと立ち話している)可能性が高いので、一つの例では、無操作時間による判定を優先して「非操作状態」であると判定する。また、タイマがタイムアウトする前に、それまで操作していたユーザが機器の前から離れた場合、人感センサ等が人を検知しなくなる。そこで、無操作時間が閾値を超えていない場合でも、人感センサ等が人を検知していない場合には、非操作状態であると判定してもよい。
次に、UI表示の制御のための状態変数(「操作状態」、「非操作状態」)に基づくUI表示の制御の手順の例を、図5を参照して説明する。図5の手順は、(1)表示部16に表示する画面を切り替える場合、及び(2)UI表示の制御のための状態変数の値が変化した場合(すなわち「操作状態」から「非操作状態」への変化、及びその逆の変化)に実行される。
ここで(1)の場合には、新たに画面の画像を生成して表示部16に表示する場合と、既に生成済みだが表示中の画面(前面の画面)のバックグラウンドに隠れて表示されていない画面を前面に出して表示する場合とが含まれる。また、表示部16に表示される画面全体が別の画面に切り替わる場合だけでなく、画面内の画面要素(アイコン等のオブジェクト)が別の画面要素に切り替わる場合も、上記(1)の場合に含めてもよい。
図5の手順では、UI制御部26は、UI表示制御のための状態変数の値が「操作状態」であるか否かを判定する(S20)。「操作状態」であれば(Yes)、UI制御部26は、通常表示を行う(S22)。すなわち、上記(1)(画面切り替え)の場合には、画面の切り替わりにフェードアウト・フェードイン表示又はスライド表示を利用する設定がなされていれば、それまで表示していた画面を消して新たな画面を表示する際に、その設定に従って、フェードアウト・フェードイン表示又はスライド表示を行う。また、そのようにして表示する新たな画面は、アニメーションや各種視覚効果のうちその画面で利用するものと設定された表示方式をすべて用いて表示する。また、上記(2)(状態変数の変化)の場合、それまで表示していた画面が簡易表示のものであれば、それを、対応する通常表示の画面(アニメーションや視覚効果を有効とした画面)に切り替える。また、それまで表示していた画面が通常表示の画面であれば、その表示を継続する。
S20で、現在の状態値が「操作状態」でない(すなわち「非操作状態」である)と判定した場合、UI制御部26は、表示部16に表示する画面を簡易表示とする。すなわち、上記(1)(画面切り替え)の場合には、フェードアウト・フェードイン表示及びスライド表示等の画面切り替わり時の視覚効果を用いずに、新たな画面を表示する。表示する新たな画面は、簡易表示の画面とする。また、上記(2)(状態変数の変化)の場合、それまで表示していた画面が通常表示のものであれば、それを、対応する簡易表示の画面に切り替える。また、それまで表示していた画面が簡易表示の画面であれば、その表示を継続する。
ここで、上述のように、簡易表示の画面には、通常表示の画面のうちアニメーションや各種視覚効果のうちの少なくとも1つを無効にしたもの(第1の種類)と、簡易表示専用の画像からなる画面(第2の種類)とがある。第1の種類は、UI制御部26が表示するすべての画面(例えばホーム画面、コピー画面、スキャン画面、設定画面、紙詰まり報知画面等の各種のフォールト画面)について適用可能であるが、第2の種類(簡易表示専用画面)については、それが用意されている画面と用意されていない画面があってもよい。
そこでUI制御部26は、S20の判定結果がNoの場合、表示する画面(上記(1)の場合は新たに表示する画面、(2)の場合は現在表示中の画面)に、簡易表示専用画面が用意されているか否かを判定する(S24)。用意されていれば、簡易表示専用画面を表示する(S26)。用意されていなければ、通常表示の画面からアニメーション又は各種視覚効果の一部を無効化した画面を表示する(S28)。
図5の処理手順によれば、例えば、紙詰まりが発生したときに画像処理装置が非操作状態であれば、図4に例示した簡易表示専用画面200が表示部16に表示される。そして、その簡易表示専用画面200に気づいた遠方のユーザが、紙詰まりの解消のために画像処理装置のところまで来て、表示部16(タッチパネル)にタッチすると、図3に示した通常表示画面100が表示される。ユーザは、通常表示画面100中の作業手順のアニメーション104〜108を参照しながら、詰まった紙を取り除く作業を行う。紙詰まりが解消されると、表示部16に表示される画面は、紙詰まり報知用の通常表示画面100から、初期画面であるホーム画面に切り替わる。
本実施形態によれば、ユーザが画像処理装置を操作している蓋然性が高い「操作状態」の場合、アニメーションや視覚効果を用いた通常表示の画面を表示するので、ユーザにとって分かりやすく、操作性が高められる。一方、「非操作状態」の場合には、通常表示の画面よりも処理負荷の低い簡易表示の画面を表示するので、CPU20等のハードウエア資源を表示以外の処理(例えば機器制御部28が実行する処理)により多く割り当てることが可能になる。
本実施形態では、操作状態である場合には、UI制御部26による通常表示の画面の表示処理に対して優先的に計算資源を割り当てるようにしてもよい。すなわち、この場合、UI制御部26が通常表示の画面を表示するのと並行して、機器制御部28が処理(例えばリモートから入力された印刷ジョブ)を実行することも起こりえるが、このときUI制御部26の通常表示に計算資源を優先的に割り当てる。これにより、機器制御部28の処理は多少遅くなるが、アニメーション表示のコマ落ち等と行った不完全な表示は抑制され、画像処理装置を操作しているユーザに対して良好なUIが提供される。
また、機器制御部28が実行する処理の中に、実行時期を機器制御部28が任意に選択可能な処理(「時期選択可能処理」と呼ぶ)がある場合、そのような時期選択可能処理は「操作状態」の時には実行せず、「非操作状態」の時を選んで実行するよう制御してもよい。時期選択可能処理の例としては、リモートのPCからネットワーク経由で入力された印刷ジョブがある。例えば、機器制御部28は、実行待ち状態である時期選択可能処理が存在する場合、UI制御部26が管理しているUI表示制御の状態を参照する。そして、その状態が「操作状態」であればその時期選択可能処理の実行を保留し、「非操作状態」であればその処理を実行する。この制御では、処理負荷の高い通常表示画面を表示する際には、機器制御部28が時期選択可能処理を実行しないので、通常表示画面の表示が不完全なものになる可能性が少なくなる。
出願人は過去に、ユーザが画像処理装置を操作中は自動プリントの起動を抑制する仕組みを提案した(例えば特開平8−223340号公報)。この自動プリントのジョブは、上述した時期選択可能処理の一例である。ユーザが画像処理装置を操作しているときに、自動プリントの実行を抑制する制御を行うことで、CPU20等のハードウエア資源を通常表示画面の表示に振り向けることができる。逆に、ユーザが画像処理装置を操作していないときは、簡易表示により表示処理の負荷を抑えた状態で、自動プリントのジョブを実行することができる。
以上では、複合機等の画像処理装置を例にとって説明したが、上記実施形態の制御は、画像処理装置以外の機器一般に適用可能である。
以上に例示した画像処理装置の情報処理機構は、例えば、内蔵されるコンピュータにそれら各装置の機能を表すプログラムを実行させることにより実現される。ここで、コンピュータは、例えば、ハードウエアとして、CPU等のマイクロプロセッサ、ランダムアクセスメモリ(RAM)およびリードオンリメモリ(ROM)等のメモリ(一次記憶)、HDD(ハードディスクドライブ)を制御するHDDコントローラ、各種I/O(入出力)インタフェース、ローカルエリアネットワークなどのネットワークとの接続のための制御を行うネットワークインタフェース等が、たとえばバスを介して接続された回路構成を有する。また、そのバスに対し、例えばI/Oインタフェース経由で、CDやDVDなどの可搬型ディスク記録媒体に対する読み取り及び/又は書き込みのためのディスクドライブ、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体に対する読み取り及び/又は書き込みのためのメモリリーダライタ、などが接続されてもよい。上に例示した各機能モジュールの処理内容が記述されたプログラムがCDやDVD等の記録媒体を経由して、又はネットワーク等の通信手段経由で、ハードディスクドライブ等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがRAMに読み出されCPU等のマイクロプロセッサにより実行されることにより、上に例示した機能モジュール群が実現される。