(57)【要約】【課題】機器の検査を精度良く短時間で行えるようにする。【解決手段】  デジタルスチルカメラ１の表示部１１に表示される画像が、正しく表示されているか否を、ＰＣ２が検査を行う。ＰＣ２は、デジタルスチルカメラ１に対して、操作部１２が操作されたときと同等のデータを供給する。その供給されたデータに対応してデジタルスチルカメラ１は、表示部１１に表示される画像の画像データをＰＣ２に供給する。ＰＣ２は、本来表示部１１に表示されるべき画像を記憶しており、その画像と、供給された画像データに基づく画像とを比較し、相違点があるか否かを判断する。相違点がある場合、その相違点を不具合として、検査官に報告する。本発明は、所定の機器の不具合を検査する検査装置に適用することができる。【選択図】図２
2006197494.tif 000002
【特許請求の範囲】
【請求項１】
ユーザにより操作される操作手段を有する機器の不具合を検査する検査装置において、
前記操作手段が操作されたときに前記機器で行われる処理と同等の処理を実行させるための操作手順に関するデータを保持する第１の保持手段と、
前記機器に表示される画像に関する画像データを保持する第２の保持手段と、
前記第１の保持手段に保持されているデータを解釈する解釈手段と、
前記解釈手段により解釈された操作手順に基づく指示を生成し、前記機器への出力を制御する出力制御手段と、
前記出力制御手段により出力が制御された前記指示に応じて、前記機器から供給される画像データの入力を制御する入力制御手段と、
前記入力制御手段により入力が制御された前記画像データに基づく第１の画像と、その画像に対応し、前記第２の保持手段に保持されている前記画像データに基づく第２の画像を比較し、第１の画像と第２の画像が一致しているか否かを判断する判断手段と
を備えることを特徴とする検査装置。
【請求項２】
前記第２の保持手段により保持される画像データは、異なる言語毎に用意された画面に関する画像データである
ことを特徴とする請求項１に記載の検査装置。
【請求項３】
前記判断手段による判断結果を記憶する記憶手段を
さらに備えることを特徴とする請求項１に記載の検査装置。
【請求項４】
前記判断結果は、前記判断手段により一致していないと判断された箇所が明確にされた前記第１の画像、または、その第１の画像に対応する画像データが、前記機器から供給された前の時点までに出力制御手段により出力が制御された指示の内容のうちの、少なくとも一方を含む
ことを特徴とする請求項３に記載の検査機器。
【請求項５】
ユーザにより操作される操作ステップを有する機器の不具合を検査する検査装置の検査方法において、
前記操作手段が操作されたときに前記機器で行われる処理と同等の処理を実行させるための操作手順に関するデータを保持する第１の保持ステップと、
前記機器に表示される画像に関する画像データを保持する第２の保持ステップと、
前記第１の保持ステップの処理で保持されているデータを解釈する解釈ステップと、
前記解釈ステップの処理で解釈された操作手順に基づく指示を生成し、前記機器への出力を制御する出力制御ステップと、
前記出力制御ステップの処理により出力が制御された前記指示に応じて、前記機器から供給される画像データの入力を制御する入力制御ステップと、
前記入力制御ステップの処理により入力が制御された前記画像データに基づく第１の画像と、その画像に対応し、前記第２の保持ステップに保持されている前記画像データに基づく第２の画像を比較し、第１の画像と第２の画像が一致しているか否かを判断する判断ステップと
を含むことを特徴とする検査方法。
【請求項６】
ユーザにより操作される操作ステップを有する機器の不具合を検査する検査装置を制御するプログラムであって、
前記操作手段が操作されたときに前記機器で行われる処理と同等の処理を実行させるための操作手順に関するデータを保持する第１の保持ステップと、
前記機器に表示される画像に関する画像データを保持する第２の保持ステップと、
前記第１の保持ステップの処理で保持されているデータを解釈する解釈ステップと、
前記解釈ステップの処理で解釈された操作手順に基づく指示を生成し、前記機器への出力を制御する出力制御ステップと、
前記出力制御ステップの処理により出力が制御された前記指示に応じて、前記機器から供給される画像データの入力を制御する入力制御ステップと、
前記入力制御ステップの処理により入力が制御された前記画像データに基づく第１の画像と、その画像に対応し、前記第２の保持ステップに保持されている前記画像データに基づく第２の画像を比較し、第１の画像と第２の画像が一致しているか否かを判断する判断ステップと
を含むことを特徴とするプログラム。
【請求項７】
ユーザにより操作される操作ステップを有する機器の不具合を検査する検査装置を制御するコンピュータに、
前記操作手段が操作されたときに前記機器で行われる処理と同等の処理を実行させるための操作手順に関するデータを保持する第１の保持ステップと、
前記機器に表示される画像に関する画像データを保持する第２の保持ステップと、
前記第１の保持ステップの処理で保持されているデータを解釈する解釈ステップと、
前記解釈ステップの処理で解釈された操作手順に基づく指示を生成し、前記機器への出力を制御する出力制御ステップと、
前記出力制御ステップの処理により出力が制御された前記指示に応じて、前記機器から供給される画像データの入力を制御する入力制御ステップと、
前記入力制御ステップの処理により入力が制御された前記画像データに基づく第１の画像と、その画像に対応し、前記第２の保持ステップに保持されている前記画像データに基づく第２の画像を比較し、第１の画像と第２の画像が一致しているか否かを判断する判断ステップと
を含む処理を実行させるプログラムが記録されていることを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検査装置および方法、プログラム、並びに記録媒体に関し、特に、機器の検査を行う際に用いて好適な検査装置および方法、プログラム、並びに記録媒体に関する。
【背景技術】
【０００２】
近年、さまざまな機器が大量生産されるようになり、また、それらの機器の開発期間がさらに短縮化される傾向になりつつある。そのために、新たな製品が開発されたときに、その製品のバグなどを速急に発見し、対策をとることが必要となってきている。
【０００３】
例えば、所定の機器のバグなどを発見するには、図１に示すように、人為的に行われる処理が多かった。例えば、機器のボタンの耐久性や反応性を調べるために同一のボタンを操作し続けたり、バグが発生したときに、どのような状況で発生したのかを再現するために同一の操作を繰り返し行ったり、どの程度のショックなどに耐えられるかなど調べるために、一定の力を加え続けるといったようなことは、人手により行われていた。
【０００４】
また、表示画面に表示されるアイコンや言葉などの表示位置や見やすさなどは、人の目視により確認されていた。またボタンなどの操作により遷移する画面が、正しく遷移するかなどは、実際に人がボタンを操作し、そのときに表示される画面を確認することに検査が行われていた。
【０００５】
また、ＬＥＤやストロボといった発光する部分が、正確に発光するか否かの確認も、実際に人がボタンなどを操作し、発光させ、目視することにより確認が行われていた。さらに、機器に備えられているスピーカから発せられる音などは、人の耳により、音声処理する機器では、人の発話により、その機能が正しく作動するか否かが確認されていた。
【０００６】
しかしながら、このような確認作業が、人手により行われていると、大量生産できない、開発期間が長くなるといった問題があった。そこで、特許文献１に記載されているように、ロボットなどで、人手で行われていることが行えるようにすることが提案されている。
【特許文献１】特開２００１−２６８２０２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上述したように、従来のデジタルスチルカメラやビデオカメラなどの機器の不具合などの検出のうち、例えば、ＧＵＩ(グラフィカルユーザーインターフェース)表示部の組み込みソフトウェアの開発段階において、操作ボタン、レバーやダイアルスイッチなどの入力装置からの操作によって表示される本体上の液晶表示装置や外部表示機器の画面上のアイコンなどの図示や表示される外国語も含む文言が、本来期待されるべき表示と一致しているか否か、すなわち、大きさ、表示位置、色などが正しいか誤りかどうかの確認とソフトウェア検証作業は、人手による操作と目視による画面確認、聴覚による発信音確認、口や音声による集音確認に頼った方法で実施されてきた。
【０００８】
しかしながら、上記したようにデジタルスチルカメラの機能・搭載される言語・ラインナップの増加だけでなく、製品販売までの間隔が短くなり、限りある人員の中での短期商品開発とソフトウェア品質の維持が急務となってきている。また、検証の精度と人の熟練度・経験度による速度と確認の差を極力なくす手法が必要となってきている。
【０００９】
すなわち、より確実に短時間で検証、確認といった一連の処理が行われるようにするといった課題があった。
【００１０】
そこで、特許文献１のように、ロボットなどを用いて、人手で行われた検証、確認の処理を行うことが提案されているが、例えば、検査対象とされている機器のボタン配置に依存してロボット側のボタンを操作する部分は構成されている。すなわち、検査対象となる機器専用に、ロボット側の操作する部分は、構成される必要がある。よって、検査対処の機器のボタン配置が変更された場合、ロボット側の操作する部分にも変更を加えなくてはならなかった。
【００１１】
開発から製品販売までの間隔が短くなるということは、検査対象とされている商品のデザインなどに変更が加えられる間隔が短くなることを意味し、そのような検査対象の商品に変更が加えられることに応じて、ロボット側にも、その変更に対応した変更を加えなくてはならなかった。よって、短期間に、ロボット側も変更を加えなくてはならず、ロボット自体の変更に係る時間や労力が増加してしまい、効率が悪くなるといった課題があった。
【００１２】
本発明はこのような状況に鑑みてなされたものであり、所定の機器に対してその機器の不具合を検出し、確認するための処理を、より確実に、かつ、短時間で行えるようにすることを目的とする。
【課題を解決するための手段】
【００１３】
本発明の検査装置は、第１に、ユーザにより操作される操作手段を有する機器の不具合を検査する検査装置であって、操作手段が操作されたときに機器で行われる処理と同等の処理を実行させるための操作手順に関するデータを保持する第１の保持手段と、機器に表示される画像に関する画像データを保持する第２の保持手段と、第１の保持手段に保持されているデータを解釈する解釈手段と、解釈手段により解釈された操作手順に基づく指示を生成し、機器への出力を制御する出力制御手段と、出力制御手段により出力が制御された指示に応じて、機器から供給される画像データの入力を制御する入力制御手段と、入力制御手段により入力が制御された画像データに基づく第１の画像と、その画像に対応し、第２の保持手段に保持されている画像データに基づく第２の画像を比較し、第１の画像と第２の画像が一致しているか否かを判断する判断手段とを備えることを要旨とする。
【００１４】
第２に、前記第１の要旨に加え、前記第２の保持手段により保持される画像データは、異なる言語毎に用意された画面に関する画像データであることを要旨とする。
【００１５】
第３に、前記第１の要旨に加え、前記判断手段による判断結果を記憶する記憶手段をさらに備えることを要旨とする。
【００１６】
第４に、前記第３の要旨に加え、前記判断結果は、判断手段により一致していないと判断された箇所が明確にされた第１の画像、または、その第１の画像に対応する画像データが、機器から供給された前の時点までに出力制御手段により出力が制御された指示の内容のうちの、少なくとも一方を含むことを要旨とする。
【００１７】
本発明の検査方法は、ユーザにより操作される操作ステップを有する機器の不具合を検査する検査装置の検査方法であって、操作手段が操作されたときに機器で行われる処理と同等の処理を実行させるための操作手順に関するデータを保持する第１の保持ステップと、機器に表示される画像に関する画像データを保持する第２の保持ステップと、第１の保持ステップの処理で保持されているデータを解釈する解釈ステップと、解釈ステップの処理で解釈された操作手順に基づく指示を生成し、機器への出力を制御する出力制御ステップと、出力制御ステップの処理により出力が制御された指示に応じて、機器から供給される画像データの入力を制御する入力制御ステップと、入力制御ステップの処理により入力が制御された画像データに基づく第１の画像と、その画像に対応し、第２の保持ステップに保持されている画像データに基づく第２の画像を比較し、第１の画像と第２の画像が一致しているか否かを判断する判断ステップとを含むことを要旨とする。
【００１８】
本発明のプログラムは、ユーザにより操作される操作ステップを有する機器の不具合を検査する検査装置を制御するプログラムであって、操作手段が操作されたときに機器で行われる処理と同等の処理を実行させるための操作手順に関するデータを保持する第１の保持ステップと、機器に表示される画像に関する画像データを保持する第２の保持ステップと、第１の保持ステップの処理で保持されているデータを解釈する解釈ステップと、解釈ステップの処理で解釈された操作手順に基づく指示を生成し、機器への出力を制御する出力制御ステップと、出力制御ステップの処理により出力が制御された指示に応じて、機器から供給される画像データの入力を制御する入力制御ステップと、入力制御ステップの処理により入力が制御された画像データに基づく第１の画像と、その画像に対応し、第２の保持ステップに保持されている画像データに基づく第２の画像を比較し、第１の画像と第２の画像が一致しているか否かを判断する判断ステップとを含むことを要旨とする。
【００１９】
本発明の記録媒体は、ユーザにより操作される操作ステップを有する機器の不具合を検査する検査装置を制御するコンピュータに、操作手段が操作されたときに機器で行われる処理と同等の処理を実行させるための操作手順に関するデータを保持する第１の保持ステップと、機器に表示される画像に関する画像データを保持する第２の保持ステップと、第１の保持ステップの処理で保持されているデータを解釈する解釈ステップと、解釈ステップの処理で解釈された操作手順に基づく指示を生成し、機器への出力を制御する出力制御ステップと、出力制御ステップの処理により出力が制御された指示に応じて、機器から供給される画像データの入力を制御する入力制御ステップと、入力制御ステップの処理により入力が制御された画像データに基づく第１の画像と、その画像に対応し、第２の保持ステップに保持されている画像データに基づく第２の画像を比較し、第１の画像と第２の画像が一致しているか否かを判断する判断ステップとを含む処理を実行させるプログラムが記録されていることを要旨とする。
【００２０】
本発明の検査装置および方法、並びにプログラムにおいては、他の機器を操作するための操作手順が記載されているデータが保持されている。その保持されているデータに基づき、他の機器が操作される。その操作に応じて他の機器から画像データが供給される。また、他の機器において表示されるべき画像が保持されており、その保持されている画像と、他の機器から供給された画像とが一致しているか否かが判断されることにより、他の機器に不具合があるか否かが判断される。
【発明の効果】
【００２１】
本発明によれば、人手によらず、機器の検査を行うことが可能となる。
【００２２】
本発明によれば、手順操作を保存しておくことができる。すなわち、搭載する言語(外国語表示も含む)が所定の文言・所定の位置に表示をさせるためのキー・ボタン操作を、記憶媒体に保存し、呼び出して同じ操作を再現することができるようになる。
【００２３】
また、指示操作に基づき表示されるべき画像・文言の基準画像を、記憶媒体に保存し、呼び出すことにより、表示部に表示されるべき画像や文言の画像を生成することができるようになる。
【００２４】
また、検査官の人手によらず、指定された手順に従い、検査対象とされた装置に押下動作を行い所定の画面を表示させることができるようになる。
【００２５】
また、検査対象の機器から出力された画面を、表示させること、その画面を撮影すること、そして記録することができるようになる。
【００２６】
また、表示されるべき画像・文言の画像と現在の表示画面の比較・一致を判定することができるようになる。そして、正しい場所に正しい画像が表示画面に存在し、かつ一致しているかを判定し、誤っている場合は、相違点を図示し、記録することができるようになる。
【００２７】
また、判定結果の表示を行うことができるようになる。その判定結果は、記憶装置に保存しておくことができ、後の時点で、判定、検査結果とその相違点の画像を検査官などが確認することができ、再現操作ができるようになる。
【００２８】
このようなことから、人手に頼っていたソフトウェアの開発・検証作業が自動化する（人手に頼らずできるようにする）ことがきることから作業時間を軽減し、手間のかかる単純作業を自動的に実行でき、目視で行っていた画像の確認も精度を高めた上で自動的な実行が可能となる。
【００２９】
また、人を用いないことで、夜間なども連続して検査を実行できるようになる。すなわち、複数の操作手順を連続で自動実行するため、夜間・無人での作業も可能となる。同じ操作をしているつもりでも不具合を再現できないようなケースにおいても、操作手順を記録しており、再生実行させるだけで、容易に不具合の再現が可能となる。
【００３０】
さらに、人手によらず行うことができるので、検証・評価作業者間による評価差を減少させることができ、一定の精度を維持することが可能となる。すなわち、人の五感による作業では、経験差も含めて、作業完了までの時間や精度面で大きな開きが発生するが、本発明を適用することにより、この人的要因を排除することが可能となり、作業時間を短縮することができるだけでなく、精度面においても一定の基準を確保することができる。
【発明を実施するための最良の形態】
【００３１】
以下に本発明の最良の形態を説明するが、開示される発明と実施の形態との対応関係を例示すると、次のようになる。明細書中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
【００３２】
さらに、この記載は、明細書に記載されている発明の全てを意味するものではない。換言すれば、この記載は、明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現し、追加されたりする発明の存在を否定するものではない。
【００３３】
本発明の検査装置は、例えば、図５に示すＰＣ２である。本発明を適用した検査装置は、ユーザにより操作される操作手段を有する機器（例えば、図２のデジタルスチルカメラ１）の不具合を検査する検査装置であって、操作手段が操作されたときに機器で行われる処理と同等の処理を実行させるための操作手順に関するデータ（例えば、図５のシナリオファイル１０３）を保持する第１の保持手段（例えば、図５の記憶部１０２）と、機器に表示される画像に関する画像データ（例えば、図５のマスタ画像１０４）を保持する第２の保持手段（例えば、図５の記憶部１０２）と、第１の保持手段に保持されているデータを解釈する解釈手段（例えば、図５のシナリオ解釈部１０５）と、解釈手段により解釈された操作手順に基づく指示を生成し、機器への出力を制御する出力制御手段（例えば、図５の操作手順指示部１０６、出力制御手段１０９）と、出力制御手段により出力が制御された指示に応じて、機器から供給される画像データの入力を制御する入力制御手段（例えば、図５の入力制御部１０１）と、入力制御手段により入力が制御された画像データに基づく第１の画像と、その画像に対応し、第２の保持手段に保持されている画像データに基づく第２の画像を比較し、第１の画像と第２の画像が一致しているか否かを判断する判断手段（例えば、図５の比較判定部１１２）とを備える。
【００３４】
前記判断手段による判断結果を記憶する記憶手段（例えば、図５の記憶部１１５）をさらに備える。
【００３５】
以下に、本発明の実施の形態について図面を参照して説明する。
【００３６】
［システム構成］
図２は、本発明を適用したシステムの一実施の形態の構成を示す図である。図２に示したシステムは、所定の機器に対して、その機器のバグなどの不具合を検出する際に用いられる検査システムである。不具合が検出される対象となる所定の機器とは、ここでは、例えば、開発中の機器である。そのような開発の中の機器の不具合を検出し、対処することで、バグなどの不具合をなくす（改善する）ことができる。
【００３７】
また、不具合が検出される対象となる所定の機器とは、ここでは、商品として出荷される機器でもある。そのような商品として出荷される機器の不具合を検出することで、不具合が検出された不良品を、商品として出荷してしまうような不都合を回避することができる。
【００３８】
検査対象とされる所定の機器として、以下の説明においては、デジタルスチルカメラを例に挙げて説明するが、本発明は、デジタルスチルカメラにのみ適用されることを意味するのではない。すなわち、本発明が適用されたシステムにおける検査対象は、どのような機器であってもよい。
【００３９】
図２に示したシステムは、検査対象が、デジタルスチルカメラ１であり、そのデジタルスチルカメラ１を検査するのがＰＣ（Personal Computer）２とされている。このデジタルスチルカメラ１は、撮像された画像や、ユーザに対する情報などを表示する表示部１１と、ユーザからの指示が入力される操作部１２が設けられている。
【００４０】
デジタルスチルカメラ１とＰＣ２は、有線または無線で接続され、互いにデータの授受が行えるように構成されている。
【００４１】
［デジタルスチルカメラの内部構成例］
図３は、デジタルスチルカメラ１の内部構成例を示す図である。デジタルスチルカメラ１は、入力部３１を備え、その入力部３１は、ＰＣ２からのデータを入力し、通信解釈部３２に供給する構成とされている。通信解釈部３２は、入力部３１から供給されたＰＣ２からのデータを解析する。
【００４２】
ＰＣ２から供給されるデータは、デジタルスチルカメラ１の操作部１２（図１）を疑似的に操作するためのデータである。“疑似的”とは、ここでは、例えば、操作部１２は、押下されるボタンや回転操作されるダイヤルなどから構成されているが、そのような物理的に操作される操作部１２を、実際に物理的に操作していなくても（人為的に操作されなくても）、物理的に操作されたかのように扱う（人為的に操作されたかのように扱う）ことを意味するとする。
【００４３】
通信解釈部３２により解釈されたＰＣ２からのデータは、疑似キー操作部３３に供給される。疑似キー操作部３３は、操作部１２が疑似的に操作されたかのように、デジタルスチルカメラ１の各部を制御する。ここでは、疑似キー操作部３３による疑似的な操作（以下、単に、疑似キー操作部３３による操作と記述する）により、表示部１１（図２）に表示される画面のデータが生成される例を挙げて説明を続ける。
【００４４】
疑似キー操作部３３による操作は、記憶部３４に供給される。記憶部３４には、表示部１１に表示される画面を生成するためのデータが記憶されている。記憶部３４は、疑似キー操作部３３の操作に対応するデータを、画面データ生成部３５に供給する。画面データ生成部３５は、供給されたデータを基に画面データを生成し、出力部３６に供給する。出力部３６は、供給された画面データを、接続されているＰＣ２に対して出力する。
【００４５】
このように、デジタルスチルカメラ１は、ＰＣ２からデータが供給され、そのデータに基づき、画面データをＰＣ２に対して供給する。デジタルスチルカメラ１に対してデータを供給し、デジタルスチルカメラ１から画面データが供給されるＰＣ２の内部構成について説明を加える。
【００４６】
［ＰＣの内部構成例］
図４は、ＰＣ２の内部構成例を示す図である。ＰＣ２のＣＰＵ（Central Processing Unit）５１は、ＲＯＭ（Read Only Memory）５２に記憶されているプログラムに従って各種の処理を実行する。ＲＡＭ（Random Access Memory）５３には、ＣＰＵ５１が各種の処理を実行する上において必要なデータやプログラムなどが適宜記憶される。入出力インタフェース５５は、キーボードやマウスから構成される入力部５６が接続され、入力部５６に入力された信号をＣＰＵ５１に出力する。また、入出力インタフェース５５には、ディスプレイやスピーカなどから構成される出力部５７も接続されている。
【００４７】
さらに、入出力インタフェース５５には、ハードディスクなどから構成される記憶部５８、および、インターネットなどのネットワークを介して他の装置とデータの授受を行う通信部５９も接続されている。ドライブ６０は、磁気ディスク７１、光ディスク７２、光磁気ディスク７３、半導体メモリ７４などの記録媒体からデータを読み出したり、データを書き込んだりするときに用いられる。
【００４８】
デジタルスチルカメラ１とＰＣ２は、上述したように、データの授受を行う際、有線または無線により接続される。その接続は、デジタルスチルカメラ１の入力部３１とＰＣ２の出力部５７が接続され、デジタルスチルカメラ１の出力部３６とＰＣ２の入力部５６が接続されるように構成される。または、デジタルスチルカメラ１の入力部３１と出力部３６は、ＰＣ２の通信部５９と接続されるようにしても良い。
【００４９】
［ＰＣの機能について］
図５は、ＰＣ２の機能について説明するための機能ブロック図である。ＰＣ２は、デジタルスチルカメラ１から供給される画面データの入力を制御するための入力制御部１０１を備える。また、ＰＣ２は、記憶部１０２を備える。記憶部１０２には、シナリオファイル１０３とマスタ画像１０４が記憶されている。
【００５０】
シナリオファイル１０３には、図６を参照して後述するように、デジタルスチルカメラ１に疑似的な操作を行わせるためのコマンドや、画像処理に関するコマンドなどが書き込まれている。デジタルスチルカメラ１に疑似的な操作を行わせるためのコマンドとは、換言すれば、デジタルスチルカメラ１の操作部１１が操作されたときにデジタルスチルカメラ１側で行われる処理と同等の処理を、操作部１１を操作しないで状態で行わせるためのデータである。
【００５１】
マスタ画像１０４には、デジタルスチルカメラ１の表示部１１に表示される正しい画面（その画面の一部分）が書き込まれている。マスタ画像１０４として、複数の言語に対応した画面が、言語毎に用意されている（内容的には同一であるが、その内容を異なる言語で表した画面が、言語毎に用意されている）。
【００５２】
シナリオ解釈部１０５は、記憶部１０２に記憶されているシナリオファイル１０３を解釈するために設けられている。シナリオ解釈部１０５は、操作手順指示部１０６と画像処理指示部１０７を含む構成とされている。操作手順指示部１０６は、シナリオファイル１０３に基づき、デジタルスチルカメラ１が行う疑似的な操作に関する指示を出す（操作指示データを作成する）。画像処理指示部１０７は、シナリオファイル１０３で指示される画像の処理を行うように指示を出す（画像処理操作指示データを生成する）。
【００５３】
操作手順指示部１０６により生成された操作指示データは、操作指示部１０８に供給され、操作指示部１０８から出力制御部１０９にさらに供給される。出力制御部１０９は、供給された操作指示データを、デジタルスチルカメラ１に対して出力する際の制御を行う。
【００５４】
画像処理指示部１０７により生成された画像処理操作指示データは、表示画像データ生成部１１０とマスタ画像データ生成部１１１に供給される。表示画像データ生成部１１０には、入力制御部１０１により入力が制御されたデジタルスチルカメラ１からの画面データも供給される。マスタ画像データ生成部１１１には、記憶部１０２に記憶されているマスタ画像１０４も供給される。
【００５５】
表示画像データ生成部１１０は、操作手順指示部１０６から供給された操作指示データに基づき、その時点で必要となる（検査対象となる）画像を、入力制御部１０１から供給された画面データに基づく画面から切り出し、比較判定部１１２に供給する。同様にマスタ画像データ生成部１１１は、その時点で必要となる画像を、記憶部１０２に記憶されているマスタ画像１０４から切り出し、比較判定部１１２に供給する。
【００５６】
比較判定部１１２には、表示画像データ生成部１１０からの画像とマスタ画像データ生成部１１１からの画像が供給される。供給される画像は、同一の指示データに基づくものであり、基本的には同一の画像となる。すなわち、マスタ画像１０４から切り出された画像は、本来デジタルスチルカメラ１の表示部１１に表示されるべき画像（設計段階で、設計者が表示部１１に表示される画像として意図している画像）であり、デジタルスチルカメラ１の画像データから切り出された画像は、実際にデジタルスチルカメラ１の表示部１１に表示されている画像である。
【００５７】
比較判定部１１２は、それら２つの画像を比較し、一致しているか否かを判断する。一致していれば問題無いと判定されるが、一致していない場合、問題有り（不具合有り）と判定される。
【００５８】
表示画像データ生成部１１０、マスタ画像データ生成部１１１、および、比較判定部１１２から、それぞれ出力されるデータは、画面生成部１１３に供給される。画面生成部１１３は、供給されたデータを基に、図７を参照して後述するような画面の画面データを生成し、表示制御部１１４に供給する。表示制御部１１４は、供給された画面データに基づく表示の制御を行う。
【００５９】
比較判定部１１２により比較結果は、必要に応じて、記憶部１１５に記憶させることができる構成とされている。なお、図５に示した構成では、比較結果だけが記憶部１１５に記憶される構成とされているが、例えば、表示画像データ生成部１１０からの画像データなども記憶されるような構成とすることも勿論可能である。また、記憶部１１５に記憶される比較結果は、不具合が発生したときの画像や、そのときに行われた疑似的な操作に関する情報である。
【００６０】
なお、記憶部１１５は、ＰＣ２に内蔵されている記憶部５８（図４）などでも良いし、ＰＣ２に対して着脱自在の磁気ディスク７１、光ディスク７２、光磁気ディスク７３、半導体メモリ７４などでも良い。
【００６１】
［シナリオファイルについて］
図６は、シナリオファイル１０３の一例（一部分）を示す図である。シナリオファイル１０３は、デジタルスチルカメラ１に対する操作手順や、画像処理内容が記載されたファイルであり、デジタルスチルカメラ１の不具合などを検出する処理が実行される前の時点で、作成され、記憶部１０３に記憶されているファイルである。
【００６２】
デジタルスチルカメラ１に対する操作手順としては、例えば、シャッターの操作、電源のオン、オフの操作などがある。また、デジタルスチルカメラ１の状態確認のための指示、例えば、エラー状態、ＬＣＤの発光・点滅状態などを確認するための指示も記載されている。
【００６３】
画像処理関係の記載としては、例えば、画像比較範囲の設定、画像の照合と比較の指示などがある。また、シナリオファイル１０３には、シナリオファイル１０３自体を制御する（ＰＣ２を制御する）ための、例えば、実行しない行、コメント、任意に終了させるためのコマンド、繰り返し同一の処理を行わせるためのコマンドなども記載されている。
【００６４】
図６に示したシナリオファイル１０３中の左側の数値は、行番号を表し、その各行番号の右側（図中略中央）の記載は、コマンドを表す。また、図６に示したシナリオファイル１０３中の右側には、’（アポストロフィ：apostrophe）と、その後に文が記載されているが、このアポストロフィは、コメントであることを示している。このアポストロフィの意味は、コマンドの所でも同様の意味であり、コマンドの前にアポストロフィが記載されている場合には、そのコマンドはコメントであることを示す。
【００６５】
シナリオファイル１０３には、少なくとも、コマンドが記載されていれば良く、行番号やコメントは削除することが可能である（なくても良い）。特に、図中右側のコメントは、説明のためにふしたものであり、必ずしも、各行に何らかのコメントを付けなくてはならないことを示すものではない。
【００６６】
図６に示したシナリオファイル１０３を参照し、コマンドについて説明を加える。ただしここでは、図６に示したシナリオファイル１０３の３０行に関して全て説明を加えるのではなく、重複する説明などは適宜省略して説明を加える。
【００６７】
図６に示したシナリオファイル１０３の１行目を参照するに、１行目には、“’■DSC-W1  SETUP画面：日本語検証”との記載がある。１行目には、コメントであることを示すアポストロフィ（’）が記載されているため、１行目のコマンドは、コメントであることがわかる。そしてこの場合、このシナリオファイル１０３は、DSC-W1という型番の商品のSetup画面の、日本語表記の画面を検証するためのファイルであることを示すコメントであることがわかる。
【００６８】
２行目には、“POWER_ON”というコマンドが記載されている。このコマンドは、デジタルスチルカメラ１の電源をオンにするということを指示するコマンドである。３行目には、“NTSC”というコマンドが記載されている。このコマンドは、ビデオ出力をNTSC表示にするということを指示するコマンドである。４行目には、“LANG_JPN”というコマンドが記載されている。このコマンドは、複数の記憶されている言語の内、日本語表示に切り替えることを指示するコマンドである。
【００６９】
５行目には、“ModeSetup”というコマンドが記載されている。このコマンドは、Setupモードにすることを指示するコマンドである。２３行目には、“CommonRight”というコマンドが記載されている。このコマンドは、操作部１２（図２）を構成するコントロールボタンの右キーを操作する（操作したと疑似的に扱う）ことを指示するコマンドである。
【００７０】
７行目には、“Wait，3000”といコマンドが記載されている。このコマンドは、デジタルスチルカメラ１に対してモード切り替えのために、所定の時間（この場合、３秒（３０００）間）だけ待機せよというコマンドである。
【００７１】
このような、“POWER_ON”、“NTSC”、“LANG_JPN”、“ModeSetup”、“CommonRight”、“Wait”というコマンド（ただし、ここでは１例のみしか示していない）は、デジタルスチルカメラ１に対する操作指示コマンドである。
【００７２】
９行目の“’カメラ１タイトル”というコマンドは、シナリオファイル１０３の内容をわかりやすくするためのコメントであり、以下の行に記載されていることは、“カメラ１タイトル”に係わることであることを示している。このようなコメントは、デジタルスチルカメラ１側の動作やＰＣ２側の画像処理には影響を与えない記載である。
【００７３】
１０行目の“SetDir，c:/OsdFont/FONTFILES/MT”というコマンドは、マスタ画像１０４内に管理されているマスタ画像のうち、処理対象とされるマスタ画像が記憶されているファイルディレクトリを指示するコマンドであり、参照ディレクトリを設定するためのコマンドである。１１行目の“ReadImage，MTSET_CAMERA1_JJ”というコマンドは、そのファイルディレクトリに記憶されており、読み出されるマスタ画像のファイル名を示すコマンドである。
【００７４】
１２行目の“RectangleB，52，15，248，26”というコマンドは、検証範囲（比較対象となる範囲）を指定するコマンドであり、開始点のＸ座標、Ｙ座標、開始点から終了点までの縦と横の画素数がそれぞれ記載され、所定の領域を長方形の枠で絞り込むことを指示するコマンドである。同じようなコマンドであるが、１９行目には“Rectangle，53，44，187，68”とのコマンドがある。このコマンドは、検証範囲（比較対象となる範囲）を指定するコマンドであり、開始点のＸ座標、Ｙ座標、終了点のＸ座標、Ｙ座標がそれぞれ記載され、所定の領域を長方形の枠で絞り込むことを指示するコマンドである。
【００７５】
１３行目の“CreateMode，DarkGray”というコマンドは、マスタ画像の登録と文字の色（この場合、DarkGray）を指定するコマンドである。１４行目の“Matching”というコマンドは、上記行で指定された範囲内のマスタ画像とデジタルスチルカメラ１から取得される画像との比較、判定を行うことを指示するコマンドである。
【００７６】
このような“SetDir”、“ReadImage”、“RectangleB”、“Rectangle”、“CreateMode”、“Matching”というコマンド（ただし、ここでは１例のみしか示していない）は、画像処理に関するコマンドである。
【００７７】
シナリオファイル１０３は、このようなコマンドなどから構成される。
【００７８】
このようなシナリオファイル１０３を設け、以下に説明するようなシナリオファイル１０３に記載されているコマンドに従った処理が行われることにより、以下のような利点がある。
【００７９】
まず、シナリオファイル１０３として、手順操作を保存しておくことができる。すなわち、デジタルスチルカメラ１に搭載する言語(外国語表示も含む)が所定の文言・所定の位置に表示をさせるためのキー・ボタン操作を、疑似的に発生させるためのコマンドを、記憶部１０２に保存し、その保存されているシステムファイル１０３を呼び出して処理を実行させることにより、同じ操作を何度でも、再現することができるようになる。
【００８０】
また、シナリオファイル１０３に基づく処理が行われることにより、検査官の人手によらず、指定された手順に従い、検査対象とされた装置（この場合、デジタルスチルカメラ１）に押下動作を行い、所定の画面を表示させることができるようになる。
【００８１】
また、表示されるべき画像・文言の画像（マスタ画像１０４）と現在の表示画面（デジタルスチルカメラ１の表示部１１に表示される画像）の比較・一致を判定することができるようになる。そして、正しい場所に正しい画像が表示画面に存在し、かつ一致しているかを判定し、誤っている場合は、相違点を図示し、記憶部１１５に記録することができるようになる。
【００８２】
このような利点を有するシナリオファイル１０３に基づく処理が行われることにより、生成される画面（出力部５６（図４）としてのディスプレイ上に表示される画面）について説明を加える。
【００８３】
［画面の構成について］
図７は、ＰＣ２の出力部５７としてのディスプレイ上に表示される画面（検査官側に提供される画面）の一例を示す図である。画面の左上側には、検査を実行させるときに読み出されるシナリオファイル１０３を表示するための実行シナリオ表示部１６１が設けられている。図７に示した画面例では、実行シナリオ表示部１６１には、読み込みの実行を指示するボタンと、その右側に、例えば、“ＳＥＴＵＰ＿日本語．ｔｘｔ”といったようなシナリオファイル１０３のファイル名を表示するための欄が設けられている。
【００８４】
シナリオファイル１０３が複数存在しているような場合、どのシナリオファイル１０３が実行されるのか確認するために、また、どのシナリオファイル１０３を実行するのかを選択するために、実行シナリオ表示部１６１が設けられている。本実施の形態においては、シナリオファイル１０３を変えるだけで、さまざま検査対象に対応をとることが可能である。換言すれば、デジタルスチルカメラ１に対して検査を行った後、異なるタイプのデジタルスチルカメラに対して検査を行うことや、異なる機種、例えばデジタルビデオカメラに対して検査を行うことが、同一のＰＣ２を用いて、シナリオファイル１０３を変えるだけで実行させることが可能である。
【００８５】
よって、ＰＣ２には、さまざまなタイプの機器や、機種に対応するために、複数のシナリオファイル１０３を記憶させることが可能であり、複数のシナリオファイル１０３が記憶されている場合、どのシナリオファイル１０３を利用するのかを設定する（確認する）部分を、画面上に設けることは、検査官の使い勝手を向上させる点でも効果的であると考えられる。
【００８６】
ディスプレイ上に表示される画面の実行シナリオ表示部１６１の下側には、自動評価・検証実行中断ボタン部１６２が設けられている。なお、ここで、“自動”との意味は、ユーザ（検査官）側の手を煩わすことなく（人手で行われるのではなく）、ＰＣ２側で従来人手により行われていた評価や検証といった処理が実行されることを意味する。
【００８７】
自動評価・検証実行中断ボタン部１６２には、“実行”、“テスト中断”、“強制中断”という３つのボタンが設けられている。“実行”というボタンは、検査を開始させるときに操作されるボタンであり、“テスト中断”と“強制中断”というボタンは、実行されている検査を中断させるときに操作されるボタンである。
【００８８】
なお、検証処理が実行される前の時点では、“実行”というボタンのみが有効な状態とされ、“テスト中断”と“強制中断”というボタンは、無効な状態とされるている。そして、検証処理が実行されているときには、“実行”というボタンは、操作できない（無効）な状態とされる。また、検証処理が実行中のときに、“テスト中断”または“強制中断”のボタンが操作されると、“実行”というボタンは、有効な状態に切り換えられる。
【００８９】
自動評価・検証実行中断ボタン部１６２の右側には、動作状態表示部１６３が設けられている。動作状態表示部１６３には、その時点での動作状況を示すメッセージ、例えば、検査中であれば、図７に示したように“自動検証中”といったメッセージが表示される。
【００９０】
動作状況表示部１６３の右側には、自動評価全体状況表示部１６４が設けられている。自動評価全体状況表示部１６４は、検査官に対して処理の終了までどのくらいの時間がかかるのかなどの情報を提示するために設けられている。
【００９１】
例えば、図７に示した画面例では、全項目数に対して、その時点で処理済みの項目数を表す“消化項目数”、処理できなかった項目があったときの項目数を表す“ＮＧ数”、処理の開始時刻（実行ボタンが操作された時刻）を示す“開始時刻”、処理の開始から経過した時間を表す“経過時刻”、全ての処理が終了する予定時刻を表す“予測終了時間”、現在の時刻を表す“現在時刻”といった項目が設けられ、それらの情報が提示される例を示している。
【００９２】
なお、“予測終了時間”という項目は、検証処理が中断や終了したときには、“終了時刻”という表示に切り替えられ、その時点での時刻が表示される。検証処理が実行されているときには、“予測終了時間”という項目のところに表示される時刻は、リアルタイムに変動される。これは、図８のフローチャートを参照して後述するように、ステップＳ１４の処理として算出されるため、検証処理中には、リアルタイムに変動し、処理が進むにつれて、より精度が増すように構成されている。
【００９３】
また、この“予測終了時間”が“終了時刻”に切り替えられたときの時刻、すなわち、検証処理が中断または終了された時刻は、後述するように、ログファイルに記載される時刻とされる。
【００９４】
画面中央左側（実行シナリオ表示部１６１の下側）には、マスタ画像表示部１６５が設けられている。このマスタ画像表示部１６５には、その時点で、検査対象とされているマスタ画像（本来デジタルスチルカメラ１に表示部１１に表示されるべき画像）が表示される。
【００９５】
画面中央（マスタ画像表示部１６５の右側）には、パネル表示部１６６が設けられている。パネル表示部１６６には、その時点で、デジタルスチルカメラ１から供給された画面データに基づく画面（すなわち、ＰＣ２側からの指示によりデジタルスチルカメラ１の表示部１１（図２）に表示される画面）が表示される。
【００９６】
画面中央右側（パネル表示部１６６の右側）には、判定表示部１６７が設けられている。判定表示部１６７には、その時点での判定結果（エラーがあったか否かなどの結果）が表示される。
【００９７】
このような各表示部の下側（画面下側）には、シナリオ実行状況表示部１６８が設けられている。このシナリオ実行状況表示部１６８は、その時点で実行されているシナリオファイル１０３の内容を表示する。“その時点で実行されているシナリオファイル１０３の内容”とは、解釈結果の最新の内容（最終解釈結果の内容）である。また、図７のシナリオ実行状況表示部１６８においては、最終行が、最終解釈結果の内容を示している。すなわちこの場合、最終解釈結果が、表示末尾に、順次改行後に追加されていく構成とされている。
【００９８】
また、シナリオ実行状況表示部１６８に表示されている項目のうち、その時点で実行されている項目（コマンド）は、他の項目（コマンド）と区別がつくように、例えば、文字が反転された状態で表示される、下線が引かれた状態で表示されるなどされる。図７に示した例では、マッチングというコマンド（Matchingコマンド）が実行されているために、“マッチング実行”という項目が、他の項目と区別がつくような表示とされている。
【００９９】
なお、シナリオ実行状況表示部１６８には、既に実行されたシナリオファイル１０３の内容を表示させたいときに操作される縦スクロールバーも、図中右側に設けられている。このスクロールバーは、シナリオ実行状況表示部１６８に表示される最大の行数（図７では９行）以上の内容が表示されるときに、表示される。
【０１００】
図７に示した画面は、一例であり、図７では図示していないボタンなどを適宜表示させることは、勿論可能である。
【０１０１】
このような構成を有する画面が、検査官（ユーザ）側に提供される。
【０１０２】
［ＰＣ側の処理について］
次に、上記したような画面を提示しながら行われる検査を実行するＰＣ２の処理について図８のフローチャートを参照して説明する。ＰＣ２の処理とは、上記したように、デジタルスチルカメラ１の不具合を検査することである。
【０１０３】
検査官により、自動評価・検証実行中断ボタン部１６２の“実行”ボタンが操作されると、ステップＳ１１において、記憶部１０２にシナリオファイル１０３が記憶されているか否か（存在しているか否か）が確認される。記憶部１０２にシナリオファイル１０３が存在していなければ、ステップＳ１１以降の処理を実行することはできないので、図８に示した検証処理は終了される。
【０１０４】
ステップＳ１１において、シナリオファイル１０３の存在が確認されると、その確認されたシナリオファイル１０３が記憶部１０２から読み出される。シナリオファイル１０３が読み出される一方で、ステップＳ１２において、開始時刻の記録と初期化の処理が実行される。図４や図５には図示していないが、ＰＣ２は、計時する機能を有し、その計時機能により開始時刻が記録される。初期化の処理とは、例えば、図７に示した画面の内の自動評価全体表示部１６４内の各情報を初期化（例えば、開始時刻を先に記憶した時間に設定する）したり、マスタ画面表示部１６５などの表示部を初期化（例えば、何も表示されていない状態にする）したりする。
【０１０５】
ステップＳ１３において、自動評価・検証実行中断ボタン部１６２の“テスト中断”ボタンが操作されたか否かが判断される。ステップＳ１３において、“テスト中断”ボタンは操作されていないと判断された場合、ステップＳ１４に処理が進められる。ステップＳ１４において、シナリオファイル１０３内の１行あたりの処理にかかる所要時間が算出され、その１行あたりの所要時間が用いられて、予測終了時刻の算出が行われる。
【０１０６】
１行あたりの処理にかかる所要時間は、例えば、実際に処理が開始されたときに、１行あたりの処理にかかった時間を計測し、その平均値を求める（従って、処理が行われている間、繰り返し行われる処理とされる）ようにしたり、その処理にかかった時間そのものを利用したりしても良い。そして、予測終了時刻は、１行あたりの処理にかかる所要時間と、シナリオファイル１０３内の行数を乗算し、その値を開始時刻に加算することにより算出することができる。このようにして算出された予測終了時刻などは、後述する処理により自動評価全体状況表示部１６４の、例えば“予測終了時間”のところに表示される。
【０１０７】
後述するように、このステップＳ１４の処理は、ステップＳ１７で、中断や停止が指示されたと判断されるか、または、ステップＳ１９において、シナリオファイル１０３の行末まで処理が達したと判断（すなわち、検証処理は終了したと判断）されなければ、繰り返し行われる処理である。従って、上述したように、“予測終了時間”のところに表示される時刻は、検証処理が実行されている間、更新されることになる。
【０１０８】
ステップＳ１５において、入力ビデオ信号の状態が確認され、その確認結果に応じた設定に切り替えられる。ステップＳ１５において、ビデオ信号が、ＮＴＳＣ方式の信号であるかＰＡＬ方式の信号であるかが識別され、その識別結果に応じた方式に設定される。デジタルスチルカメラ１から画面データ（ビデオ信号）が供給されるが、そのデジタルスチルカメラ１が、ＰＡＬ方式の国に出荷されるものであれば、ＰＡＬ方式の画面データが供給されるため、ステップＳ１５のような処理が設けられる。
【０１０９】
このようなステップを設けることで、方式の異なる国々の製品を扱うことができるようになる。すなわち、本実施の形態においては、異なる方式のビデオ信号を扱うことできる。なお、ここでは、このようなステップを設け、デジタルスチルカメラ１側には出力部３６（図３）を設け、ＰＣ２側には入力制御部１０１を設けることにより、デジタルスチルカメラ１からのビデオ信号の授受が行われるとして説明するが、例えば、デジタルスチルカメラ１の表示部１１に表示されている画像を、図示していないカメラで撮像し、そのカメラで撮像された画像のデータが、ＰＣ２側に、デジタルスチルカメラ１からのビデオ信号のかわりに供給されるようにしても良い。
【０１１０】
ステップＳ１６において、コマンド実行処理が行われる。この処理は、シナリオファイル１０３を解析することにより行われる（シナリオファイル１０３に記載されているコマンドに従って行われる）。このステップＳ１６におけるコマンド実行処理については、図９に示すフローチャートを参照して後述する。
【０１１１】
ステップＳ１７において、自動評価・検証実行中断ボタン部１６２の“テスト中断”ボタンまたは“強制中断”ボタンのうちのいずれか一方のボタンが操作されたか否かが判断される。ステップＳ１７において、それらのボタンが操作されたと判断された場合、ステップＳ２０に処理が進められ、それらのボタンは操作されていないと判断された場合、ステップ１８に処理が進められる。
【０１１２】
ステップＳ１８において、シナリオファイル１０３内の解釈が１行分だけ進められる。すなわち、この図８に示したフローチャートに基づく検証処理は、シナリオファイル１０３に記載されている１行毎に行われる処理である。
【０１１３】
ステップＳ１９において、シナリオファイル１０３内の解釈が１行分だけ進められることにより、最後の行に達したか否かが判断される。ステップＳ１９において、シナリオファイル１０３の最後の行まで処理は終了されていないと判断された場合、ステップＳ１３に処理が戻され、それ以降の処理が繰り返される。
【０１１４】
一方、ステップＳ１９において、シナリオファイル１０３の最後の行まで処理は終了されたと判断された場合、ステップＳ２０に処理が進められる。ステップＳ２０への処理には、ステップＳ１３において、“テスト中断”ボタンが操作されたと判断された場合、ステップＳ１７において、“テスト中断”ボタンまたは“強制中断”ボタンが操作されたと判断された場合も来る。すなわち、シナリオファイル１０３に基づく処理が何らかの指示により終了された時点で、ステップＳ２０に処理が進められる。
【０１１５】
ステップＳ２０において、画面窓、表示部に対して結果表示が行われる。すなわち、検査官が視認できる画面として、エラー（バグ）が発生した部分を提示するための処理が実行される。また、ステップＳ２１において、検査にかかった所要時間や履歴の追加といった処理が行われる。
【０１１６】
このようにして、シナリオファイル１０３に基づき、デジタルスチルカメラ１に対する検査が行われる。
【０１１７】
ステップＳ１６において実行されるコマンド実行処理について、図９のフローチャートを参照して説明する。ステップＳ４１において、処理対象とされているシナリオファイル１０３の行に記載されているコマンドに対し整形の処理が施される。コマンドの整形とは、例えば、大文字や小文字を統一して大文字にする、全角や半角を統一して半角にする、空白を除去するなどの処理がある。
【０１１８】
ステップＳ４２において、整形が施されたシナリオファイル１０３内の行に記載されているコマンドの解釈が行われる。そして、その解釈に基づき、ステップＳ４３において、処理対象となっているシナリオファイル１０３の行に記載されていたコマンドは、コメントまたは改行であるか否かが判断される。コメントや改行は、操作指示を出すためのコマンドではなく、画像処理操作指示に関するコマンドでもないため、そのようなコマンドではないか否かが、ステップＳ４３において判断される。
【０１１９】
ステップＳ４３において、コマンドは、コメントまたは改行ではないと判断された場合、換言すれば、操作指示または画像処理操作指示を示すコマンドであると判断された場合、ステップＳ４４に処理が進められる。ステップＳ４４において、解釈されたコマンドに基づく指示コマンドのデータが生成され、そのコマンドによる処理が実行される。この処理で生成され、実行されるコマンド（コマンドデータ）は、［シナリオファイルについて］のところで説明したようなコマンドである。
【０１２０】
生成されたコマンドが、操作指示コマンドに関するものであった場合、出力制御部１０９（図５）からデジタルスチルカメラ１に対して出力され、画像処理操作指示コマンドに関するものであった場合、表示画像データ生成部１１０やマスタ画像データ生成部１１に対して出力される。そして、コマンドを受けた各部は、そのコマンドに対応する処理を実行する。
【０１２１】
このような処理が終了されると、または、ステップＳ４３において、解釈されコマンドはコメントまたは改行であると判断された場合、ステップＳ４５に処理が進められる。ステップＳ４５において、解釈されたコマンドの結果が、検査官側に提示される。すなわち、図７に示した画面を参照するに、シナリオ実行状況表示部１６８に、解釈されたコマンドの結果が表示される。
【０１２２】
なお、ステップＳ４２において、シナリオを解釈し、その解釈されたコマンドの処理が実行された後、ステップＳ４５において、解釈されたコマンドの結果を表示するようにしたのは、デジタルスチルカメラ１の処理能力とＰＣ２の処理能力が異なることを考慮し、別々に処理が行われるようにしている。このように、シナリオの解釈と表示を別々に行うことで、デジタルスチルカメラ１からの画像のとりこぼしを無くし、必ず、表示画像を比較対象とすることが可能となる。
【０１２３】
ステップＳ４５における処理が終了されると、ステップＳ４６において、画像照合の処理が行われたか否かが判断される。画像照合の処理とは、マスタ画像と、デジタルスチルカメラ１からの画像が一致するか否かを判断する処理である。また、この画像照合の処理は、シナリオファイル１０３内の“Matchingコマンド”が実行されたときに行われる処理である。従って、ステップＳ４６の処理は、“Matchingコマンド”が実行されたか否かを判断することにより行うことができる。
【０１２４】
ステップＳ４６において、画像照合をしたと判断された場合、ステップＳ４７に処理が進められ、画像照合はされていないと判断された場合、コマンド実行処理は終了される。
【０１２５】
ステップＳ４７において、比較判定の処理が実行される。すなわち、上記したように、マスタ画像と、デジタルスチルカメラ１からの画像が比較され、一致しているか否かが判定される。その判定結果なども含め、ステップＳ４８において、履歴、ログ、結果画像が、それぞれ作成され、保存される。
【０１２６】
このようにして、シナリオファイル１０３で規定される処理が実行される。なお、上記したように処理が行われ、１つのコマンドが出された後、その１つのコマンドだけで処理が実行され続けるような処理にはされていない。例えば、処理の開始を指示するコマンドだけを用意し、そのコマンドが実行されると、処理の最後まで（シナリオファイル１０３の最後の行まで）処理が行われるようには、上記したシナリオファイル１０３およびそのシナリオファイル１０３を用いた処理では設定されてはいない。
【０１２７】
換言すれば、上記した処理は、シナリオファイル１０３の行毎（コマンド毎）に解釈され、実行されるという処理が繰り返されるように設定されている。このように設定することで、以下のような利点がある。
【０１２８】
まず、開発段階の機器（この場合、デジタルスチルカメラ１）に対して検査を行う場合、ＰＣ２側のシナリオファイル１０３自体にバグがある可能性がある。シナリオファイル１０３自体にバグがあると、結果として、画面が凍ってしまう（ハングアップの状態になってしまう）、画面上に必要のない情報（ゴミ）が表示されてしまうなどの不具合が発生する可能性がある。またこのような不具合は、検査対象の機器（デジタルスチルカメラ１）側の不具合により発生する可能性も勿論ある。
【０１２９】
仮に、開始を指示する１つのコマンドにより最後まで処理が実行されるように設定されていると、バグが発生したときでも、そのまま、最後まで処理が継続されてしまう可能性があり、その結果、バグの発生を検査官が発見できないような不具合が発生する可能性がある。
【０１３０】
しかしながら、本実施の形態のように、１つのコマンド毎に処理が行われるようにすれば、あるコマンドが実行されることによりバグが発生した場合、そのコマンドでバグが発生したことを確認できる（コマンドが実行された時点で、バグを発見できる）ようになる。
【０１３１】
また、１つのコマンド毎に処理が行われるようにすることで、図７に示した画面内の表示が更新される、例えば、シナリオ実行状況表示部１６８の表示される文章が、コマンドが実行される毎に追加される（図７を参照して説明した例では、シナリオ実行状況表示部１６８内の最終行に、その時点で実行されているコマンドの内容が追加、表示される）ので、画面が凍り付いたように見えてしまうといった不都合を回避することができる。また、画面が更新されることにより、検査官は、検査が順調に行われている（検査の処理自体にはバグが発生していない）ということを確認することができる。
【０１３２】
勿論、シナリオ実行状況表示部１６８内の表示だけでなく、マスタ画像表示部１６５、パネル表示部１６６、判定表示部１６７などの表示も更新されるため、上記したように、検査官は、検査が順調に行われていることを確認することができる。
【０１３３】
［具体例による動作説明］
上記したフローチャートにおける処理（特に図９に示したコマンド実行処理）について、図１０を参照してさらに説明を加える。以下の説明においては、マスタ画像を基準画像、デジタルスチルカメラ１から供給される画面データに基づく画像を表示画像（比較対象画像）と、それぞれ適宜記述する。
【０１３４】
シナリオ解釈部１０５（図５）が、記憶部１０２に記憶されているシナリオファイル１０３から読み出し、処理対象とされた行に記載されているコマンドを、ReadImageコマンド（例えば、図６のシナリオファイル１０３の１８行目）であると解釈すると、そのコマンドで指示されているマスタ画像１０４が記憶部１０２から読み出される。
【０１３５】
この一連の処理は、まずステップＳ４２の処理で、処理対象とされた行に記載されているコマンドが、ReadImageコマンドであると解釈され、ステップＳ４３において、ReadImageコマンドであるので、コメントや改行のコマンドではないと判断され、ステップＳ４４に処理が進められる。そして、ステップＳ４４において、ReadImageコマンドに対応する指示コマンドデータが生成される。この場合、ReadImageコマンドで指示されたマスタ画像１０４を、記憶部１０２から読み出すという指示が、マスタ画像データ生成部１１１に出力される。
【０１３６】
そして、ステップＳ４５の処理として、コマンド解釈結果表示として、シナリオ実行状況表示部１６８（図７）に、“マスタ画像［MBSET AFMODE_JJ］を読む”といった表示がなされる。ステップＳ４６において、画像照合が行われたか否かが判断されるが、この場合、マスタ画像１０４を読み出しただけであり、画像照合は行っていないので、ＮＯと判断され、ReadImageコマンドに対する処理は終了される。
【０１３７】
図１０では、ReadImageコマンドに基づく処理が実行されることにより、マスタ画像として“ＡＦモード：”という文言の画像が読み出された例を示している。この“ＡＦモード：”という文言（画像）は、マスタ画像表示部１６５に表示される。
【０１３８】
この表示は、マスタ画像データ生成部１１１により生成された画像データを基に、画面生成部１１３が、マスタ画像表示部１６５に“ＡＦモード：”という画像が表示される画面の画面データを生成し、その生成された画面データを基に、表示制御部１１４がディスプレイ上の画面の表示を制御することにより行われる。
【０１３９】
次に、ステップＳ４２において解釈されたコマンドがCreateModelコマンド（例えば、図６のシナリオファイル１０３の２０行目）であった場合、マスタ画像１０４として読み出された画像（この場合、“ＡＦモード：”という文言）を、基準画像としてテンプレートに登録する処理が実行される。
【０１４０】
テンプレートとして登録されるのは、この場合、“ＡＦモード：”という文言（画像）そのものであっても良いが、この画像から特徴を抽出し、その抽出された特徴に関する情報が登録されるようにしても良い。ここでは、抽出された特徴に関する情報が、テンプレートして登録されるとして以下の処理を進める。
【０１４１】
このようにCreateModelコマンドというコマンドが実行された場合、マスタ画像（基準画像）の特徴が抽出され、その抽出された特徴に関する情報が、テンプレートとして登録される。また、このとき、背景の色や文字の色なども指定される（例えば、図６の２０行目を参照すると、LightGrayとの指示がある）。そのような登録の処理が、ステップＳ４４の処理として終了されると、ステップＳ４５における処理として、シナリオ実行状況表示部１６８に、例えば、“字体は薄灰色でテンプレート抽出”といった表示がなされる。
【０１４２】
この場合も、画像照合は行われていないので、ステップＳ４６における処理ではＮＯと判断され、コマンド実行処理は終了され、次の行のコマンドに処理対象が移される（ステップＳ１８（図８）の処理）。
【０１４３】
次に、ステップＳ４２において解釈されたコマンドがRectangleコマンド（例えば、図６のシナリオファイル１０３の１９行目）であった場合、表示画像（比較対象画像）から、比較対象となる画像が切り出される。なお、図６に示したシナリオファイル１０３に従えば、既に説明したCreateModelコマンドは、ここで説明しているRectangleコマンドより後に処理が行われるが、説明の都合上、ここでは、順番を入れ換えて説明を加えた。
【０１４４】
Rectangleコマンドは、デジタルスチルカメラ１から供給される画面データを基に作成された画面から、所定の領域内（この場合、図６の１９行目のコマンドに従えば、開始点（５３，４４）から終了点（１８７，６８）で囲まれる長方形の枠内）の画像を切り出すことを指示するコマンドである。例えば、図１０に示すように、また、図７に示すように、デジタルスチルカメラ１から供給される画面データを基に作成された画面は、パネル表示部１６６に表示される。
【０１４５】
このパネル表示部１６６に表示されている画面は、入力制御部１０１（図５）で入力が制御されたデジタルスチルカメラ１からの画面データを基に、表示画像データ生成部１１０（図５）により作成される。表示画像データ生成部１１０は、作成した画面データを画面生成部１１３に供給するとともに、シナリオ解釈部１０５の画像処理指示部１０７からの指示があったときには、その指示に基づく処理も実行する。
【０１４６】
この場合、画像処理指示部１０７からは、RectangleBコマンド（または、Rectangleコマンド）により設定された領域内の画像を切り出すという指示なので、その指示に基づいて、画像の切り出しを行う。図１０に示した例は、“ＡＦモード：”という文言（画像）が切り出された例である。また、切り出された画像の特徴が抽出され、その抽出された特徴の情報が、比較判定部１１２に供給される。
【０１４７】
このようにして、比較判定部１１２には、マスタ画像（基準画像）から抽出された特徴に関する情報と、表示画像（比較対象画像）から抽出された特徴に関する情報とが供給される。そのような状態のときに、シナリオファイル１０３の解析結果として、Matchingコマンド（例えば、図６のシナリオファイル１０３の２１行目）が入力されると、評価、判定の処理が実行される。
【０１４８】
すなわち、比較判定部１１２は、入力されている２つの画像の、それぞれの特徴に関する情報を用いて、パターンを見いだし、一致性の確認を行う。例えば、２つの画像のパターンマッチング（１ドット単位で明暗を比較するなど）を行うことにより、２つの画像の類似性、相違点が検出される。そして、その２つの画像が一致すれば、不具合はないと判断され、その２つの画像に相違点があれば、その点が不具合であるとして判断される。
【０１４９】
このように、Matchingコマンドが入力されると、画像照合が行われる。従って、ステップＳ４６（図９）において、画像照合したと判断され、ステップＳ４７に処理が進められ、比較と判定が行われる。そして、その結果が、ステップＳ４８において、比較判定部１１２から記憶部１１５に書き込まれる。
【０１５０】
このようにして、記憶部１１５には、画面照合が行われたときに、その結果が書き込まれる。記憶部１１５に書き込まれる結果としては、例えば、図１０に示すようなログ画像やログファイルがある。ログ画像とは、判定表示部１６７に表示されている画像（表示されていた画像）であり、ログファイルは、その画像を生成する過程で行われた操作指示のログである。
【０１５１】
ログファイルは、例えば、図１１に示すようなテキストが記載されたファイルである。図１１に示したログファイルは、図６に示したシナリオファイル１０３が実行されたときに作成されるファイルである。例えば、シナリオファイル１０３の１４行目に記載のMatchingコマンドが実行されたことにより、ログファイルとして作成されるのは、１乃至１６行目である。なお、行番号は、説明のために記載し、必ずしもログファイルに記載されていなくてはならない事項ではない。
【０１５２】
１つのMatchingコマンドが実行されることによりログファイルに記載される内容には、マッチングの結果（２行目）、実行日時（３行目）、マスタ画像が記憶されているディレクトリ（４行目）、ログ画像が記憶されているディレクトリ（５行目）、枠やラジオボタンが指定されていたか否かを示すデータ（６，７行目）、文字の色が指定されていたか否かを示すデータ（８行目）、シナリオファイル１０３の対応する部分にコメントが記載されていたときにはそのコメント（９行目）がある。
【０１５３】
またログファイルには、マッチングのときのマッチング率（１０行目）、マッチングのときに用いた画像の倍率（１１行目）、マッチングの処理にかかった時間（１２行目）、角度（１３行目）、マスタ画像と処理対象との画像との間で一致しなかったピクセルの数（１４行目）、扱った画像のビデオ出力の形式（１５行目）、カラー出力の形式（１６行目）なども記載される。
【０１５４】
なお、ここでは、ログファイルとログ画像は、別々のものとして記載したが、１つにまとめたファイル（例えば、ログファイルなかに、ログ画像のデータが含まれるようなファイル）として記憶されるようにしても良い。
【０１５５】
また、ログファイルやログ画像として記録するのは、マッチングを行った全ての結果と画像でも良いし、ＮＧ（エラー、不具合）が発生したときの結果と画像のみでも良い。
【０１５６】
このようなログ画像やログファイルを記録することで、検査官が、検査が行われた後の時点で、不具合が出た部分や、不具合が出たときの状況を確認することができるようになる。
【０１５７】
このようにMatchingコマンドが入力された時点で、画像照合が行われることにより、表示されるべき画像・文言の画像（マスタ画像１０４）と現在の表示画面（デジタルスチルカメラ１の表示部１１に表示される画像）の比較・一致を判定することができるようになる。
【０１５８】
そして、正しい場所に正しい画像が表示画面に存在し、かつ一致しているかが判定され、誤っている場合は、相違点が図示され、記憶部１１５に記憶されるので、すなわち、判定結果が、ログ画像やログファイルとして記憶されるので、検査終了後の時点でも、検査中の画面の表示を行うことができるようになる。よって、判定、検査結果とその相違点の画像などを、検査官などが確認することができる。また、不具合が発生したときの状況を、ログファイルに基づき、再現することが可能となる。
【０１５９】
［検証後の結果について］
図１２に、ログ画像の一例を示す。図１２に示したログ画像２０１は、不具合が検出されたときの画面であり、その不具合は、“Inteligente”という単語の表示に発生しているときの画面である。また、図１２に示したログ画像２０１は、ポルトガル語圏内のユーザ向けの画面であり、文言は、ポルトガル語で表示されている。
【０１６０】
図１２に示した例では、“Inteligente”という単語に不具合が発生しているため、その“Inteligente”という単語は、他の単語と区別がつくような表記がされる。例えば、“Inteligente”という単語は、赤色の四角で囲まれて表示される。ここで、赤色の四角としたのは、赤色は一般的に注意を向けされるときなどに用いられる色であり、不具合を検査官に認識させるには、適した色であると考えられる。勿論、他の色で囲まれるようにしても良い。
【０１６１】
また、不具合が発生している箇所には棒線（比較的太い下線など）が引かれるなどして、検査官が一目して不具合が発生している箇所を認識できるような表示を行うようにしても良い。換言すれば、不具合が発生している箇所（マスタ画像と一致しなかった箇所）が、明確になるような表示が行われるようにしてもよい。図１２に示した画面では、“Inteligente”という単語のなかの“g”という文字の下側に、下線が引かれている。
【０１６２】
図１３に、図１２に示した不具合が発生した“Inteligente”という単語の表示を拡大した画像を図示する。図１３の上側の画像は、マスタ画像（基準画像）であり、下側の画像は、表示上の画像（比較対象画像）である。マスタ画像は、既に説明しているように、本来表示されるべき正しい画像であり、そのマスタ画像と一致しない比較対象画像の部分が不具合と判断される。
【０１６３】
図１３に示した２枚の画像のうち、上側の基準画像の“ｇ”の部分の下側と、下側の比較対象画像の“ｇ”の部分の下側を見比べる。見比べることにより、比較対象画像の“ｇ”の部分の下側の丸みがある部分が欠けていることがわかる。基準画像と比較対象画像との、このような違いは、数ドット単位である。このような数ドット単位の違い（不具合）は、検査官が、目視で検査を行っているような場合には、見つけづらい不具合であり、見落としてしまう可能性が高い不具合である。
【０１６４】
また、ポルトガル語圏内の検査官が、ポルトガル語の画面を目視して不具合を発見するのと、日本語圏内の検査官が、外国語であるポルトガル語の画面を目視して不具合を発見するのとでは、同一の精度で検査が行われるとはいえず、明らかに、後者の方が精度が低いと考えられる。しかしながら、本発明を適用すれば、ＰＣ２側で不具合を発見し、検査官の目視などによらないなので、検査官が、ポルトガル語圏内の検査官であっても、日本語圏内の検査官であっても関係なく、同一の精度で、不具合の発見を行うことが可能となる。
【０１６５】
すなわち、本発明を適用することで、所定の機器に対する検証（検査）を、人手によらず行うことができるので、検証・評価作業者間による評価差を減少させることができ、一定の精度を維持することが可能となる。すなわち、人の五感による作業では、経験差も含めて、作業完了までの時間や精度面で大きな開きが発生するが、本発明を適用することにより、この人的要因を排除することが可能となり、作業時間を短縮することができるだけでなく、精度面においても一定の基準を確保することができる。
【０１６６】
また近年、商品化される製品は、さまざまな国に出荷される傾向にあるため、その出荷先の国の言語で、画面上の文言が表示される必要がある。そのため、１つの商品であっても、さまざまな言語に対応する画面を用意する必要があり、それらの画面毎に検査を行う必要がある。このような状況を考慮すると、上記したような異なる言語を、同一の精度で不具合を発見できるようにすることは、本発明を適用したときに期待できる大きな効果の１つである。
【０１６７】
このように、本発明によれば、人手に頼っていたソフトウェアの開発・検証作業が自動化する（人手に頼らずできるようにする）ことがきる。よって、そのような開発、検証などにかかる作業時間を短縮し、手間のかかる作業を自動的に実行でき、人の目視で行っていた画像の確認なども精度を高めた上で実行することが可能となる。
【０１６８】
また、人為的に検査などを行わないことにより、夜間なども連続して検査を実行できる（ＰＣ２に連続して処理を行わせることができる）ようになる。すなわち、複数の操作手順を連続で自動実行することが可能となるため、夜間、無人での作業も可能となる。
【０１６９】
また、人が同じ操作をしているつもりでも不具合を再現できないようなケースにおいても、本発明によれば、操作手順が記録されるため、再生実行させるだけで、容易に不具合の再現が可能となる。よって、上記したように、夜間などに無人で行われた作業も、後の時点で、検査官（人）による確認作業を行うことが可能となる。もって、検査の精度をより向上させることが可能となる。
【０１７０】
［記録媒体について］
上述した一連の処理は、それぞれの機能を有するハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
【０１７１】
記録媒体は、図４に示すように、ＰＣ２とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク７１（フレキシブルディスクを含む）、光ディスク７２（CD-ROM（Compact Disc-Read Only Memory），DVD（Digital Versatile Disc）を含む）、光磁気ディスク７３（MD（Mini-Disc）（登録商標）を含む）、若しくは半導体メモリ７４などよりなるパッケージメディアにより構成されるだけでなく、コンピュータに予め組み込まれた状態でユーザに提供される、プログラムが記憶されているＲＯＭ５２や記憶部５８が含まれるハードディスクなどで構成される。
【０１７２】
なお、本明細書において、媒体により提供されるプログラムを記述するステップは、記載された順序に従って、時系列的に行われる処理は勿論、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１７３】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【図面の簡単な説明】
【０１７４】
【図１】従来の検査の仕方について説明するための図である。
【図２】本発明を適用したシステムの一実施の形態の構成を示す図である。
【図３】デジタルスチルカメラの内部構成例を示す図である。
【図４】ＰＣの内部構成例を示す図である。
【図５】ＰＣの機能を示すブロック図である。
【図６】シナリオファイルについて説明するための図である。
【図７】ディスプレイ上に表示される画面例を示す図である。
【図８】検証に係わる処理について説明するためのフローチャートである。
【図９】ステップＳ１６のコマンド実行処理の詳細について説明するためのフローチャートである。
【図１０】一連の処理について説明するための図である。
【図１１】ログファイルの一例を示す図である。
【図１２】ログ画像を示す図である。
【図１３】ログ画像の一部を拡大した画像を示す図である。
【符号の説明】
【０１７５】
１  デジタルスチルカメラ，  ２  ＰＣ，  １１  表示部，  １２  操作部，  ３１  入力部，  ３２  通信解釈部，  ３３  疑似キー操作部，  ３４  記憶部，  ３５  画像データ生成部，  ３６  出力部，  １０１  入力制御部，  １０２  記憶部，  １０３  シナリオファイル，  １０４  マスタ画像，  １０５  シナリオ解釈部，  １０６  操作手順指示部，  １０７  画像処理指示部，  １０８  操作指示部，  １０９  出力制御部，  １１０  表示画像データ生成部，  １１１  マスタ画像データ生成部，  １１２  比較判定部，  １１３  画像生成部，  １１４  表示制御部，  １１５  記憶部
【図１】
2006197494.tif 000003
【図２】
2006197494.tif 000004
【図３】
2006197494.tif 000005
【図４】
2006197494.tif 000006
【図５】
2006197494.tif 000007
【図６】
2006197494.tif 000008
【図７】
2006197494.tif 000009
【図８】
2006197494.tif 000010
【図９】
2006197494.tif 000011
【図１０】
2006197494.tif 000012
【図１１】
2006197494.tif 000013
【図１２】
2006197494.tif 000014
【図１３】
2006197494.tif 000015