(57)【要約】【課題】ソフトウェアの部品毎にテストデータを簡単に作成できるようにする。【解決手段】処理モデル相違検出部１０１は、処理モデルに対応したテストデータが作成済みの基準処理モデルと、処理モデルに対応したテストデータが未作成である派生処理モデルとの、処理モデルに関する相違を検出する。検索部１０２は、検出した処理モデルの相違を検索キーとして、辞書手段からテストデータの変換処理方法を検索する。変換処理部１０３は、検索した変換処理方法に基づいて、基準処理モデルのテストデータを派生処理モデルに対応したテストデータに変換する。【選択図】図１
2016053751.tif 000002
【特許請求の範囲】
【請求項１】
処理モジュールより構成される処理モデルに対してテストデータが対応付け管理されている第１の処理モデルを用いて、新たに作成した第２の処理モデルに対応したテストデータを作成する情報処理装置であって、
前記第１の処理モデルと前記第２の処理モデルとの相違を検出する検出手段と、
前記第１の処理モデルとの相違とテストデータの変換処理方法とを対応付けて保持する辞書から、前記検出手段によって検出された相違に該当する辞書を検索する検索手段と、
前記検索手段によって検索された辞書を用いて前記第１の処理モデルに係るテストデータを前記第２の処理モデルに係るテストデータに変換する変換手段とを有することを特徴とする情報処理装置。
【請求項２】
前記検出手段は、トポロジー、処理モジュールの属性、ターゲットプラットフォーム、及び処理モデルに入出力されるデータサイズの中の少なくとも１つの相違を検出することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記検出手段は、検出方向に係る処理モジュールの属性に関する相違を検出し、
前記変換手段は、前記検索手段によって検索された辞書を用いて前記第１の処理モデルに係るテストデータの順序を前記第２の処理モデルに係るテストデータの順序に変換することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記検出手段は、さらにトポロジーに関する相違を検出することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記検出手段は、処理モデルに入出力されるデータサイズに関する相違を検出し、
前記変換手段は、前記検索手段によって検索された辞書を用いて前記第１の処理モデルに係るテストデータから前記第２の処理モデルに係るテストデータを抽出することを特徴とする請求項２に記載の情報処理装置。
【請求項６】
前記検出手段は、処理の範囲に係る処理モジュールの属性に関する相違を検出し、
前記変換手段は、前記検索手段によって検索された辞書を用いて前記第１の処理モデルに係るテストデータから前記第２の処理モデルに係るテストデータを抽出することを特徴とする請求項２に記載の情報処理装置。
【請求項７】
前記検出手段は、ターゲットプラットフォームに関する相違を検出し、
前記変換手段は、前記検索手段によって検索された辞書を用いて前記第１の処理モデルに係るテストデータの順序を前記第２の処理モデルに係るテストデータの順序に変換することを特徴とする請求項２に記載の情報処理装置。
【請求項８】
前記検索手段による検索の結果、前記検出手段によって検出された相違に該当する辞書が存在しない場合に、当該辞書を追加登録する登録手段をさらに有することを特徴とする請求項１〜７の何れか１項に記載の情報処理装置。
【請求項９】
処理モジュールより構成される処理モデルに対してテストデータが対応付け管理されている第１の処理モデルを用いて、新たに作成した第２の処理モデルに対応したテストデータを作成する情報処理方法であって、
前記第１の処理モデルと前記第２の処理モデルとの相違を検出する検出工程と、
前記第１の処理モデルとの相違とテストデータの変換処理方法とを対応付けて保持する辞書から、前記検出工程において検出された相違に該当する辞書を検索する検索工程と、
前記検索工程において検索された辞書を用いて前記第１の処理モデルに係るテストデータを前記第２の処理モデルに係るテストデータに変換する変換工程とを有することを特徴とする情報処理方法。
【請求項１０】
処理モジュールより構成される処理モデルに対してテストデータが対応付け管理されている第１の処理モデルを用いて、新たに作成した第２の処理モデルに対応したテストデータを作成する情報処理装置を制御するためのプログラムであって、
前記第１の処理モデルと前記第２の処理モデルとの相違を検出する検出工程と、
前記第１の処理モデルとの相違とテストデータの変換処理方法とを対応付けて保持する辞書から、前記検出工程において検出された相違に該当する辞書を検索する検索工程と、
前記検索工程において検索された辞書を用いて前記第１の処理モデルに係るテストデータを前記第２の処理モデルに係るテストデータに変換する変換工程とをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、特に、すでに対応付け管理されている処理モデルのテストデータから、新たに作成した処理モデルに対応するテストデータを作成するために用いて好適な情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、テストデータの活用方法としては、例えば特許文献１に記載の技術が知られている。具体的には、特許文献１には、複数のソフトウェア部品で構成されているソフトウェアに対して、ソフトウェア部品が組み合わされた状態で実施されるシステムテスト仕様を生成するシステムテスト仕様生成装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１１８６３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載の技術では、システム全体のテストは自動生成できるものの、ソフトウェア部品毎のテスト仕様はユーザが個別に作成する必要がある。このため、部品毎のテスト仕様を作成する場合には、テストデータを作成する際にユーザの労力が大きいという問題点がある。
【０００５】
本発明は前述の問題点に鑑み、ソフトウェアの部品毎にテストデータを簡単に作成できるようにすることを目的としている。
【課題を解決するための手段】
【０００６】
本発明に係る情報処理装置は、処理モジュールより構成される処理モデルに対してテストデータが対応付け管理されている第１の処理モデルを用いて、新たに作成した第２の処理モデルに対応したテストデータを作成する情報処理装置であって、前記第１の処理モデルと前記第２の処理モデルとの相違を検出する検出手段と、前記第１の処理モデルとの相違とテストデータの変換処理方法とを対応付けて保持する辞書から、前記検出手段によって検出された相違に該当する辞書を検索する検索手段と、前記検索手段によって検索された辞書を用いて前記第１の処理モデルに係るテストデータを前記第２の処理モデルに係るテストデータに変換する変換手段とを有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、ソフトウェアの部品毎にテストデータを簡単に作成することができる。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態において、テストデータ変換ツールにおいて実行されるテストデータ変換処理の機能構成例を示すブロック図である。
【図２】第１の実施形態に係るシステム構成例及び図形プログラミングの一例を示す図である。
【図３】第１及び第４の実施形態における基準処理モデルの一例を示す図である。
【図４】第１の実施形態の基準処理モデルにおける顔検出処理の概要を説明するための図である。
【図５】第１の実施形態における派生処理モデルの一例を示す図である。
【図６】第１の実施形態の派生処理モデルにおける顔検出処理の概要を説明するための図である。
【図７】第１の実施形態における処理モジュールのリスト及び結合リストの一例を示す図である。
【図８】第１の実施形態における辞書手段の具体的な構成例を示す図である。
【図９】第１の実施形態における変換処理モデルの一例を示す図である。
【図１０】第２の実施形態の基準処理モデルにおけるフィルタ処理の概要を説明するための図である。
【図１１】第２の実施形態における処理モジュールのリストの一例を示す図である。
【図１２】第２の実施形態における辞書手段の具体的な構成例を示す図である。
【図１３】第２の実施形態における変換処理モデルの一例を示す図である。
【図１４】第３の実施形態における処理モジュールのリストの一例を示す図である。
【図１５】第３の実施形態における辞書手段の具体的な構成例を示す図である。
【図１６】第３の実施形態における変換処理モデルの一例を示す図である。
【図１７】第４の実施形態の派生処理モデルにおける顔検出処理の概要を説明するための図である。
【図１８】第４の実施形態における処理モジュールのリストの一例を示す図である。
【図１９】第４の実施形態における辞書手段の具体的な構成例を示す図である。
【図２０】第４の実施形態における変換処理モデルの一例を示す図である。
【図２１】第５の実施形態の派生処理モデルにおける顔検出処理の概要を説明するための図である。
【図２２】第５の実施形態における処理モジュールのリストの一例を示す図である。
【図２３】第５の実施形態における辞書手段の具体的な構成例を示す図である。
【図２４】第５の実施形態における変換処理モデルの一例を示す図である。
【図２５】第６の実施形態におけるテスト変換処理ツールでの処理手順の一例を示すフローチャートである。
【図２６】新たにテストデータの変換処理モデルを指定して辞書手段に登録するための表示画面の一例を示す図である。
【発明を実施するための形態】
【０００９】
（第１の実施形態）
以下、図面を参照して本発明の第１の実施形態について説明する。本実施形態は、入出力端子を有する複数の処理モジュールが所定の配置またはトポロジーで結線された処理モデルを想定したものである。以下、この処理モデルに関して、すでに対応付け管理されている処理モデルのテストデータから、新たに作成した処理モデルに対応するテストデータを作成するテストデータ変換ツールを説明する。以下、テストデータが対応付け管理されている処理モデルから、後述するように類似する処理モデルを新たに作成するための、対応付け管理されている処理モデルを基準処理モデルと呼ぶ。また、新たに作成する処理モデルを派生処理モデルと呼ぶ。
【００１０】
まず、テストデータ変換ツールをより具体的に説明するために、本ツールを実行するシステム構成について説明する。
図２（ａ）は、本実施形態に係るシステム構成例を示す図である。
図２（ａ）に示すように、テストデータ変換ツールを実行するシステムは、モニタ５が接続されたパーソナルコンピュータ（ＰＣ）４と、データベース６が接続されたデータベースサーバ７とがネットワークを介して構成されている。情報処理装置であるＰＣ４には、図形プログラミングアプリケーションソフトがインストールされており、モニタ５から図形プログラミング工程をユーザに提示する。データベース６は、基準処理モデルやテストデータの情報を保持しており、データベースサーバ７は、データベース６を管理している。
【００１１】
本実施形態におけるテストデータ変換ツールは、この図形プログラミングアプリケーションソフトの一部として提供されるものである。なお、テストデータ変換ツールは、図形プログラミングアプリケーションソフトの一部としてではなく、独立したツールとして提供されるものであっても構わない。
【００１２】
ここで、図形プログラミングに関して簡単に説明する。図２（ｂ）に示すように、本実施形態における図形プログラミングでは、ユーザがマウス等を操作することにより、モニタ５上で、処理モジュール８を入力端子９および出力端子１０を介して接続し、所望の機能を実現する処理モデルを作成する。処理モデルは、それぞれを識別するために属性としてＩＤが設定され、処理モデルに含まれる各処理モジュールは、入力されたデータに対して所定の処理を実行することが設定されているため、処理モデルはコードにより表現されたプログラムと等価である。
【００１３】
図１は、本実施形態におけるＰＣ４の、テストデータ変換ツールにおいて実行されるテストデータ変換処理の機能構成例を示すブロック図である。
図１において、処理モデル相違検出部１０１は、処理モデルに対応したテストデータが作成済みの基準処理モデルと、処理モデルに対応したテストデータが未作成である派生処理モデルとの、処理モデルに関する相違を検出する。検索部１０２は、検出した処理モデルの相違を検索キーとして、辞書手段からテストデータの変換処理方法を検索する。変換処理部１０３は、検索した変換処理方法に基づいて、基準処理モデルのテストデータを派生処理モデルに対応したテストデータに変換する。
【００１４】
ここで、テストデータ変換ツールにおいて実行されるテストデータ変換処理の詳細を説明する前に、処理モデルについて説明する。
【００１５】
図３は、本実施形態における基準処理モデルの一例を示す図である。例えば図３に示した処理モデルは、フィルタ処理モジュール３０１と顔検出処理モジュール３０２との２つの処理モジュールから構成されている。フィルタ処理モジュール３０１には、画像データが入力され、画像データに対してフィルタ処理が実行された後に、フィルタ処理が適用された画像データが出力される。
【００１６】
また、前記フィルタ処理が適用された画像データは、続いて顔検出処理モジュール３０２に入力され、顔検出処理が適用された処理結果データが顔検出処理モジュール３０２より出力される。すなわち、図３に示す基準処理モデル全体として、入力された画像データに対してフィルタ処理および顔検出処理を実行し、両方の処理が適用された処理結果データを出力する処理を実行する。
【００１７】
ここで、前述した顔検出処理モジュール３０２において実行される処理に関してさらに詳細に説明する。顔検出処理モジュール３０２は、画像中に含まれる人物の顔の検出機能を有している。本実施形態の場合、例えば図４（ａ）に示すように、画像４０２中の２１×２１ピクセルの小領域４０１に対して顔検出処理を適用する。さらに小領域４０１に対する顔検出処理を画像の左上から右下方向に向けて、１ピクセルずつずらしながらラスタスキャンしていく。以下、入力データである画像４０２のサイズは、２００×１５０ピクセルとして説明する。なお、画像サイズは、処理モデルおよび処理モジュールに対応して変化するものとする。
【００１８】
また、小領域４０１を画像中でラスタスキャンする際には、例えばＣ言語におけるfor文を用いた２重ループにより逐次的に顔検出処理を実行する。また、顔検出処理自体の処理内容に関しては、公知の手法を用いるものとし、詳細な説明を省略する。
【００１９】
顔検出処理モジュール３０２では、上述したように入力画像に対してラスタスキャンにより顔検出処理を逐次実行し、人物の顔が検出された場合は、その小領域の画像における中心座標データを配列形式の出力データに順次格納していく。例えば図４（ｂ）に示すように、画像中の４か所で顔が検出された場合には、顔検出処理モジュール３０２は画像中をラスタスキャンしているため、４か所のアドレスは、図４（ｂ）に示す順番で配列データに格納される。なお顔検出処理モジュール３０２に対しては、作成者により事前に"（１）ラスタスキャン"という処理モジュール属性が設定されているものとする。
【００２０】
続いて、基準処理モデルに対して対応付け管理されるテストデータに関して説明する。一般的に、あるプログラムが誤りなく実装されているかどうかを判定するための手段として、テストデータを用いたテスト手法が採用されている。このテスト手法では、ある入力データに対して、出力されるべき出力データを正解データとして事前に算出しておく。そして、テスト対象のプログラムに前記入力データを入力して出力される出力データと正解データとが一致するかどうかによって、プログラムに誤りがあるかどうかを判定する。
【００２１】
本実施形態においては、テストデータは基準処理モデルとともにデータベース６に保持されており、それぞれのテストデータを識別するために属性としてＩＤが設定されている。また、本実施形態における基準処理モデルに対しては、事前に図４（ｂ）に示す画像データおよび出力データと同一のデータが、それぞれ入力データおよび正解データとして事前に対応付け管理されているものとする。なお、正解データは、処理モデルにより算出されたものではなく、事前に別途算出されたものである。
【００２２】
具体的には、データベース６上に保持されている基準処理モデルに対して、属性データとして対応するテストデータのＩＤが設定されることにより、基準処理モデルとテストデータとが対応付け管理される。この時、基準処理モデルに対して画像データが入力されると、図４（ｂ）で示したように正解データと同一の結果が出力されることから、基準処理モデルは誤りなく実装されているものと判定することができる。
【００２３】
なお、本実施形態では、説明を簡略化するためにテストデータを１セットの入力データおよび正解データの組み合わせとして説明する。一方、実際には基準処理モデルの複雑さに応じて、複数セットの入力データおよび正解データの組み合わせより構成されるものであってもよい。以上説明したように、図３及び図４で説明した基準処理モデルは、テストデータが対応付け管理されており、さらに誤りなく実装されていることが保証されているものとする。
【００２４】
続いて、派生処理モデルに関して説明する。本実施形態における派生処理モデルは、設計者が基準処理モデルを参照して、類似する処理を実現するために新規に作成したものを指す。具体的には、例えば図３及び図４で説明した基準処理モデルに対して、画像データから同一の顔検出処理を適用して人物の顔を検出するものであり、前述した小領域ごとの顔検出処理を並列に実行するものである。
【００２５】
図５は、派生処理モデルの一例を示す図である。図５に示すように、本実施形態における派生処理モデルは、まず、基準処理モデルと同一のフィルタ処理モジュール３０１が含まれている。続いて派生処理モデルにおいては、図５に示すようにフィルタ処理された画像データが、１０個の部分顔検出処理モジュール６０１に入力される。
【００２６】
ここで、それぞれの部分顔検出処理モジュール６０１ａ〜６０１ｊは、図６（ａ）に示すように、画像データの縦方向に連続する１０ピクセルの画素位置を顔検出小領域の中心位置とする顔検出処理を並列に実行する。それぞれの部分顔検出処理モジュール６０１ａ〜６０１ｊにおいて、小領域から顔を検出した結果（顔が検出された画像上の座標）は、データ統合モジュール６０２に入力される。
【００２７】
なお、図６に示す派生処理モデルにおける部分顔検出処理モジュール６０１に対しては、作成者により事前に"（２）列方向並列"という処理モジュール属性が設定されているものとする。また、派生処理モデルにおけるデータ統合モジュール６０２に対しては、作成者により事前に"（３）列方向統合"という処理モジュール属性が設定されているものとする。さらに、本派生処理モデルは、テストデータが対応付け管理されていないものとする。
【００２８】
データ統合モジュール６０２においては、顔が検出された画素位置の座標データが、部分顔検出処理モジュール６０１ａ〜６０１ｊの順番（図６（ａ）において矢印で示された順番）に配列データに格納される。なお、データ統合モジュール６０２は、部分顔検出処理モジュールから入力されたデータがＮＵＬＬ以外の値を持つ場合に、入力データを配列データに順番に格納する機能を有する。複数の部分顔検出処理モジュールからＮＵＬＬ以外の値を持つ入力があった場合には、部分顔検出処理モジュール６０１ａ〜６０１ｊの順番で配列データに格納する。
【００２９】
以上の処理を画像の縦一列分（本実施形態の場合は、１５０ピクセル÷１０ピクセル＝１５回）繰り返すと、右隣の列に移り同様の処理を繰り返す。そして、以上の処理を全ての画像データの列に対して実行したら（すなわち画像全体の顔検出処理が完了したら）、データ統合モジュール６０２は検出結果が格納された配列データを出力する。
【００３０】
ここで、例えば図６（ｂ）に示す例では、画像中の４か所で顔が検出されているが、派生処理モデルにおいて顔検出処理結果が出力データの配列に格納される順番は、図６（ｂ）に示すような順番となる。この順番は、図４（ｂ）に示す順番とは異なっており、基準処理モデルにおけるラスタスキャン方向とは異なることが分かる。
【００３１】
続いて、図１に示した本実施形態におけるテストデータの変換処理に係る各部の処理手順に関して説明する。前述したように、本実施形態におけるテストデータ変換ツールは、図形プログラミングアプリケーションソフトの一部として実行される。ユーザは、事前に作成済みの基準処理モデルに対して、前述した派生処理モデルを作成したものとする。また、以下の処理を行う前に、該当する基準処理モデルをデータベース６から予め取得しているものとする。
【００３２】
まず、派生処理モデルが誤りなく実装されているか否かを判定するために、テストを実行する。ここで、派生処理モデルはテストデータが対応付け管理されていないため、基準処理モデルのテストデータに対してテストデータ変換ツールにより変換処理を実行し、派生処理モデルに対応したテストデータを作成する。
【００３３】
テストデータ変換ツールにおいて、まず、処理モデル相違検出部１０１は、ユーザにより指定された基準処理モデルと派生処理モデルとの間の処理モデルの相違を検出する。本実施形態の場合は、基準処理モデルと派生処理モデルとを入力端子から順に処理モジュールを辿って行き、接続する処理モジュールの結合リストを作成する。基準処理モデルから作成した結合リストを図７（ｃ）に示し、また、派生処理モデルから作成した結合リストを図７（ｄ）に示す。
【００３４】
ここで、図７（ｃ）の結合リストによれば、フィルタ処理モジュールと顔検出処理モジュールとが直列に接続されていることが分かり、処理モデルの情報として、図７（ａ）に示す処理モジュールのリストが作成される。
【００３５】
一方、図７（ｄ）の結合リストによれば、フィルタ処理モジュールの後段に部分顔検出モジュールが複数接続されており、複数の部分顔検出処理モジュールのそれぞれの出力がデータ統合モジュールに接続されていることが分かる。また、それぞれの部分顔検出処理モジュールは同一種類の処理モジュールであり、１つのフィルタ処理モジュールの出力を入力として共有し、かつ１つの部分顔検出処理モジュールに対して結合する。このことから、同一処理を実行するグループとしてグルーピングされる。結果として、派生処理モデルに対する処理モデルの情報として、図７（ｂ）に示す処理モジュールのリストが作成される。
【００３６】
図３及び図５に示すように、それぞれの処理モデルはトポロジーおよび処理モジュール属性が互いに異なっており、処理モデルの相違は、処理モジュールのリストの相違として検出される。すなわち本工程においては、図７（ａ）および図７（ｂ）に示すリストを比較することにより、以下のように両方の処理モデルの相違点が検出される。
【００３７】
まず、フィルタ処理モジュールに関しては、両方のリストのデータが同一のため、相違点は検出されない。続いて、基準処理モデルは顔検出処理モジュールを有しており、処理カテゴリーが検出処理であり、検出対象が顔であり、検出方向がラスタスキャンと設定されている。
【００３８】
これに対して、派生処理モデルは部分顔検出処理モジュールを１０個有しており、処理カテゴリーが検出処理であり、検出対象が顔であることは基準処理モデルと同一である。ところが、検出方向（処理モジュール属性）が基準処理モデルと異なり列方向スキャンと設定されている。さらに派生処理モデルは、基準処理モデルが有していないデータ統合モジュールを１個含んでいることが分かる。
【００３９】
したがって、顔検出処理モジュール及び部分顔検出処理モジュールの処理カテゴリーが検出処理として同一であり、さらに処理モデルの相違が、処理モジュール属性、処理モジュール数、接続モジュール数の相違として検出される。
【００４０】
続いて、テストデータ変換ツールにおいて、図１に示す検索部１０２による処理が実行される。検索部１０２は、前述したように検出した処理モデルの相違および処理モジュールの処理カテゴリーを検索キーとして、辞書手段からテストデータの変換処理方法を検索する。
【００４１】
ここで、辞書手段に関して説明する。本実施形態における辞書手段は、図８に示すように、処理モデルの相違を検索キーとして保持し、それぞれの処理モデルの相違に対応するテストデータの変換処理方法をバリューとして保持する辞書として構成される。
【００４２】
ここで検索キーは、基準処理モデルと派生処理モデルとで共通する"検出処理"というラベルと、前述したそれぞれの処理モデルで相違する、処理モジュール属性、処理モジュール数、及び接続モジュール数とを羅列したデータとして記述されている。また、前述したように、派生処理モデルは基準処理モデルが有していないデータ統合モジュールを有しているが、この点に関しても処理モデルの相違事項として、図８に示すように派生処理モデルの検索キー欄に順に記述される。
【００４３】
なお、前述した処理カテゴリーに関する"検出処理"というラベルは、それぞれの処理モデルに関する相違点ではない。ところが、本実施形態で示す顔検出処理の処理方向の相違は、画像に対する検出処理全般に適用可能であるため、検索キーに汎用性を持たせるために情報として付加している。
【００４４】
なお、辞書手段は、ＰＣ４において不図示のハードディスク等の記憶媒体に保持されているものとするが、データベース６に保持されているものとしてもよい。また、辞書手段は、一般的なデータベースと同様に、検索キー（処理モデルの相違）が入力されると、それに対応するバリュー（所定の処理モデルのＩＤ）を出力する辞書としての機能を有する。したがって、検索処理において、処理モデルの相違を検索キーとして辞書手段に入力することにより、処理モデルの相違に対応する所定の処理モデルのＩＤの情報を得ることができる。
【００４５】
本実施形態において辞書手段に保持されている所定の処理モデルのＩＤの情報は、具体的には、基準処理モデルに対応付けられたテストデータに対する処理内容を実行する機能を有する処理モデルのＩＤを表したものである。辞書のバリューとしてＩＤが登録されている処理モデルは、前記テストデータを入力し、変換後のテストデータを出力する、テストデータの変換を行う処理モデル（以下、変換処理モデルとする）として定義されている。
【００４６】
以上のように、処理モデルの相違（例えば処理モジュール属性、処理モジュール数、接続モジュール数）を検索キーとして辞書手段に入力されると、図８に示すように検索キーに一致するＩＤ−ａｂｃとして登録された変換処理モデルが検索される。
【００４７】
続いて、テストデータ変換ツールにおいて、図１に示す変換処理部１０３による処理が実行される。変換処理部１０３は、検索したＩＤに対応する変換処理モデルによって、基準処理モデルのテストデータを派生処理モデルに対応したテストデータに変換する。
【００４８】
前述したように検索されたＩＤ−ａｂｃの変換処理モデルは、図９に示すように、配列順序変換処理モジュール１００１より構成される処理モデルとして登録されている。配列順序変換処理モジュール１００１は、基準処理モデルの出力データに対応する配列データを入力し、入力された配列データの要素の順番を派生処理モデルの出力データに対応する配列データの要素の順番に変換する。すなわち、配列順序変換処理モジュール１００１は、基準処理モデルに対応付けられたテストデータにおける正解データを入力した場合に、派生処理モデルのテストデータにおける正解データを出力するように設計されている。
【００４９】
具体的には、基準処理モデルにおいては、ラスタスキャン方向で検出処理を実行するため、図４（ｂ）に示したように、検出位置を示す画像上でのアドレスデータが、ｙ座標を優先した順番で配列データに格納されている。これに対し派生処理モデルでは、列方向優先で検出処理を実行するため、検出位置を示す画像上でのアドレスデータは、図６（ｂ）に示したように、ｘ座標を優先した順番で配列データに格納される。
【００５０】
そこで、本実施形態における変換処理モデルでは、入力された、配列データに格納されたアドレスデータを列方向検出処理に対応するようｘ座標を優先した順番でソートする。結果として、本実施形態では、変換処理部１０３により、基準処理モデルに対応付けられたテストデータにおける正解データが、図９に示すように派生処理モデルに対応する正解データに変換される。
【００５１】
すなわち前述したように、テストデータが対応付けられた基準処理モデルが存在し、かつ基準処理モデルを元にして、事前に辞書に登録されている検索キー（処理モデルの相違）に一致する派生処理モデルをユーザが新規作成する。この場合に、ユーザは派生処理モデルに対応するテストデータを基準処理モデルに対応するテストデータから生成することが可能となる。
【００５２】
以上説明したように本実施形態におけるテストデータ変換ツールにより、事前にテストデータが対応付けられた処理モデル（基準処理モデル）が存在する場合に、新規に作成した処理モデルに対するテストデータの新規作成の手間が軽減される。すなわち、ユーザが前記処理モデルを元にして、辞書に登録済みの処理モデルの相違を有する処理モデル（派生処理モデル）を新たに作成した場合、派生処理モデルに対するテストデータを自動的に生成することが可能となる。
【００５３】
（第２の実施形態）
以下、図面を参照しながら本発明の第２の実施形態を説明する。本実施形態におけるテストデータ変換ツールでは、基準処理モデルと派生処理モデルとの相違として、入力端子及び出力端子のデータサイズと処理モジュール属性とが検出される点が異なっている。また、それに伴い、テストデータの変換処理も異なっている。以下、本実施形態では、第１の実施形態と異なる点についてのみ説明し、共通する部分については説明を省略する。また、本実施形態に係るシステム構成及びＰＣの機能構成についても第１の実施形態と同様であるため、説明は省略する。
【００５４】
本実施形態における基準処理モデルは、１つのフィルタ処理モジュールから構成されている。このフィルタ処理モジュールは、画像データが入力されると、画像データに対してフィルタ処理を実行した後に、フィルタ処理が適用された画像データを出力する。すなわち、の基準処理モデル全体として、入力された画像データに対してフィルタ処理を実行し、フィルタ処理が適用された処理結果データを出力する処理を実行する。
【００５５】
ここで、前述したフィルタ処理モジュールにおいて実行される処理に関してさらに詳細に説明する。フィルタ処理モジュールにおいては、図１０（ａ）に示す３×３ピクセルのカーネル１２０１で表されるフィルタ演算が実行される。なお、図１０においては、入力される画像データの一部を示している。この時、例えば図１０（ｂ）に示すように画像１２０２中の一部の画素値がａ〜ｉの値である場合にフィルタ処理を適用すると、ｅの画素値を有する画素位置におけるフィルタ演算値Ｅは以下の式（１）により算出される。
Ｅ＝−ａ−２ｂ−ｃ＋ｇ＋２ｈ＋ｉ      ・・・（１）
【００５６】
フィルタ処理モジュールでは、入力された画像データの全面に対して上記フィルタ処理を実行し、処理結果をフィルタ処理が施された画像データとして出力する。なお、本実施形態においては、画像の外枠上の画素に対するフィルタ処理では、図１０（ｃ）に示すようにカーネル１２０１が画像１２０２（図１０（ｃ）には、画像データの左上角付近を示している。）からはみ出る部分の画素値を０として演算を行う。そして、出力される画像データの画像サイズは、入力された画像データのサイズと一致するようにする。また、フィルタ処理モジュールに対しては、作成者により事前に"（４）画像単位処理"という処理モジュール属性が設定されているものとする。
【００５７】
続いて、基準処理モデルに対して対応付け管理されるテストデータに関して説明する。本実施形態におけるテストデータは、入力データの画像データとともに、前記画像データに対して上述したカーネルによるフィルタ演算を適用した場合の演算結果である画像データが正解データとして用意されている。なお、正解データは、処理モデルにより算出されたものではなく、事前に算出されたものとする。本実施形態における基準処理モデルは、以上説明したようにテストデータが対応付け管理されており、また、誤りなく実装されていることが保証されているものとする。
【００５８】
続いて、派生処理モデルについて説明する。本実施形態における派生処理モデルは、８画素単位フィルタ処理モジュールで構成され、前述した基準処理モデルと比較して、画像データに対して式（１）で示されるフィルタ処理を実行する点は同様である。一方、入力されるデータのサイズが異なっている。すなわち、基準処理モデルにおいては、入力データのサイズは画像サイズであるのに対して、派生処理モデルにおいては、入力データのサイズは、フィルタ処理対象となる３×１０画素サイズである。
【００５９】
３×１０画素サイズは、８画素分のフィルタ処理を実行するために必要な入力画素サイズであり、派生処理モデルの出力データの画素サイズは８画素となる。なお、画像の外枠上の画素に対するフィルタ処理に関しては、基準処理モデルと同様に、カーネルが画像からはみ出る部分の画素値を０として演算を行う。すなわち、入力される３×１０画素データに関して、画像からはみ出る部分の画素値として０が代入される。また、派生処理モデルにおける８画素単位フィルタ処理モジュールに対しては、作成者により事前に"（５）８画素単位処理"という処理モジュール属性が設定されているものとする。そして、派生処理モデルは、テストデータが対応付け管理されていないものとする。
【００６０】
続いて、本実施形態におけるテストデータ変換ツールについて説明する。第１の実施形態と同様に、本実施形態におけるテストデータ変換ツールは、図形プログラミングアプリケーションソフトの一部として実行される。ユーザは、事前に作成済みの基準処理モデルに対して、前述した派生処理モデルを作成したものとする。
【００６１】
まず、テストデータ変換ツールにおいて、処理モデル相違検出部１０１は、ユーザにより指定された基準処理モデルと派生処理モデルとの間の処理モデルの相違を検出する。本実施形態の場合も同様に、接続する処理モジュールのリストを作成する。図１１（ａ）及び図１１（ｂ）は、基準処理モデル及び派生処理モデルから作成される処理モジュールのリストの一例を示している。
【００６２】
ここで、図１１（ａ）及び図１１（ｂ）に示すように、両方の処理モデルは、処理モジュール属性と、入力および出力データサイズとが異なっており、処理モデルの相違は、処理モジュールのリストの相違として検出される。具体的には、図１１（ａ）及び図１１（ｂ）より、まず、（４）画像単位処理と（５）８画素単位処理とが処理モジュール属性の相違として検出される。そして、画像サイズと３×１０画素サイズとが入力データサイズの相違として検出され、画像サイズと８画素サイズとが出力データサイズの相違として検出される。
【００６３】
続いて、テストデータ変換ツールにおいて、図１に示す検索部１０２による処理が実行される。検索部１０２は、第１の実施形態と同様に、処理モデルの相違を検索キーとして、辞書手段からテストデータの変換処理方法を検索する。処理モデルの相違（処理モジュール属性、入力および出力データサイズ）を検索キーとして入力した場合、図１２に示すように検索キーに一致するテストデータ変換処理方法として、ＩＤ−ｄｅｆとして登録された変換処理モデルが検索される。
【００６４】
続いて、テストデータ変換ツールにおいて、図１に示す変換処理部１０３による処理が実行される。変換処理部１０３では、検索した変換処理モデルに基づいて、基準処理モデルのテストデータを派生処理モデルに対応したテストデータに変換する。
【００６５】
前述したように検索されたＩＤ−ｄｅｆの変換処理モデルは、図１３に示すように、画像データ変換処理モジュール１６０１より構成される処理モデルとして登録されている。画像データ変換処理モジュール１６０１は、基準処理モデルの入力データまたは出力データに相当する画像データを入力し、派生処理モデルの入力データまたは出力データに相当する画像データを出力する。すなわち、画像データ変換処理モジュール１６０１は、基準処理モデルに対応付けられたテストデータを入力した場合に、派生処理モデルのテストデータを出力するように設計されている。
【００６６】
具体的には、入力されたテストデータにおける画像データから、３×１０画素サイズのデータを切り出す処理を実行し、入力されたテストデータにおける正解画像データから、１×８画素サイズの正解データを抽出する（切り出す）処理を実行する。切り出す処理においては、図１３に示すように、画像の左上に位置する画像を切り出す。結果として本実施形態では、変換処理部１０３は、基準処理モデルに対応付けられたテストデータにおける入力データおよび正解データを、図１３に示すように派生処理モデルに対応する入力データおよび正解データに変換する。
【００６７】
以上説明したように本実施形態におけるテストデータ変換ツールにより、事前にテストデータが対応付けられた処理モデル（基準処理モデル）が存在する場合に、新規に作成した処理モデルに対するテストデータの新規作成の手間が軽減される。すなわち、ユーザが前記処理モデルを元にして、辞書に登録済みの処理モデルの相違を有する処理モデル（派生処理モデル）を新たに作成した場合、派生処理モデルに対するテストデータを自動的に生成することが可能となる。
【００６８】
（第３の実施形態）
以下、図面を参照しながら本発明の第３の実施形態を説明する。本実施形態におけるテストデータ変換ツールでは、基準処理モデルと派生処理モデルとの相違として、処理モジュール属性がパディング処理の有無として検出される点が異なっている。また、それに伴い、テストデータの変換処理も異なっている。以下、本実施形態では、第１の実施形態と異なる点についてのみ説明し、共通する部分については説明を省略する。また、本実施形態に係るシステム構成及びＰＣの機能構成についても第１の実施形態と同様であるため、説明は省略する。
【００６９】
本実施形態における基準処理モデルは、１つのフィルタ処理モジュールから構成されている。フィルタ処理モジュールは、画像データが入力されると、画像データに対してフィルタ処理を実行した後に、フィルタ処理が適用された画像データを出力する。すなわち、基準処理モデル全体として、入力された画像データに対してフィルタ処理を実行し、フィルタ処理が適用された処理結果データを出力する処理を実行する。
【００７０】
なお、フィルタ処理モジュールによるフィルタ処理の概要は図１０に示したように第２の実施形態と同様であり、フィルタ処理モジュールにおいて実行される演算処理は、第２の実施形態と同様に、式（１）を用いて行われる。フィルタ処理モジュールでは、入力された画像データの全面に対して上記フィルタ処理を実行し、処理結果をフィルタ処理が施された画像データとして出力する。フィルタ処理モジュールに対しては、作成者により事前に"（６）パディング０"という処理モジュール属性が設定されているものとする。さらに、基準処理モデルに対して対応付け管理されるテストデータに関しても第２の実施形態と同様であり、本実施形態における基準処理モデルは、テストデータが対応付け管理されており、また誤りなく実装されていることが保証されているものとする。
【００７１】
続いて、派生処理モデルについて説明する。本実施形態における派生処理モデルはパディング無しフィルタ処理モジュールより構成され、前述した基準処理モデルと比較して、画像データに対して式（１）で示されるフィルタ処理を実行する点は同様である。一方、カーネルが画像からはみ出てしまう場合の画像の外周上の画素に対するフィルタ処理を実行しない点が基準処理モデルと異なっている。この結果、出力される画像データの画像サイズは、入力画像のサイズに対して縦サイズ、横サイズともに２画素分小さくなる。
【００７２】
なお、派生処理モデルを構成するパディング無しフィルタ処理モジュールに対しては、作成者により事前に"（７）パディング無し"という処理モジュール属性が設定されているものとする。そして、派生処理モデルは、テストデータが対応付け管理されていないものとする。
【００７３】
続いて、本実施形態におけるテストデータ変換ツールについて説明する。第１の実施形態と同様に、本実施形態におけるテストデータ変換ツールは、図形プログラミングアプリケーションソフトの一部として実行される。ユーザは、事前に作成済みの基準処理モデルに対して、前述した派生処理モデルを作成したものとする。
【００７４】
まず、テストデータ変換ツールにおいて、処理モデル相違検出部１０１は、ユーザにより指定された基準処理モデルと派生処理モデルとの間の処理モデルの相違を検出する。本実施形態の場合も同様に、接続する処理モジュールのリストを作成する。図１４（ａ）及び図１４（ｂ）は、基準処理モデル及び派生処理モデルから作成される処理モジュールのリストの一例を示している。
【００７５】
ここで、図１４（ａ）及び図１４（ｂ）に示すように、両方の処理モデルは、処理モジュール属性が異なっており、処理モデルの相違は、処理モジュールのリストの相違として検出される。本実施形態の場合は、図１４（ａ）及び図１４（ｂ）に示したように、相違点が処理モジュール属性として検出される。
【００７６】
続いて、テストデータ変換ツールにおいて、図１に示す検索部１０２による処理が実行される。検索部１０２は、第１の実施形態と同様に、処理モデルの相違を検索キーとして、辞書手段からテストデータの変換処理方法を検索する。処理モデルの相違（処理モジュール属性）を検索キーとして入力した場合、図１５に示すように検索キーに一致するテストデータの変換処理方法として、ＩＤ−ｇｈｉとして登録された変換処理モデルが検索される。
【００７７】
続いて、テストデータ変換ツールにおいて、図１に示す変換処理部１０３による処理が実行される。変換処理部１０３では、検索した変換処理モデルに基づいて、基準処理モデルのテストデータを派生処理モデルに対応したテストデータに変換する。
【００７８】
前述したように検索されたＩＤ−ｇｈｉの変換処理モデルは、図１６に示すように、画像データ変換処理モジュール２１０１より構成される処理モデルとして登録されている。画像データ変換処理モジュール２１０１は、基準処理モデルの出力データに相当する画像データを入力し、入力された画像データから画像の外周上の画素を取り除いた画像データを出力する。すなわち、画像データ変換処理モジュール２１０１は、基準処理モデルに対応付けられたテストデータにおける正解データを入力した場合に、派生処理モデルのテストデータにおける正解データを出力するように設計されている。
【００７９】
具体的には、入力された正解データから、画像の外周上の画素の範囲を取り除いた画像データを抽出する（切り出す）処理を実行する。結果として本実施形態では、変換処理部１０３は、基準処理モデルに対応付けられたテストデータにおける正解データを、図１６に示すように派生処理モデルに対応する正解データに変換する。
【００８０】
以上説明したように本実施形態におけるテストデータ変換ツールにより、事前にテストデータが対応付けられた処理モデル（基準処理モデル）が存在する場合に、新規に作成した処理モデルに対するテストデータの新規作成の手間が軽減される。すなわち、ユーザが前記処理モデルを元にして、辞書に登録済みの処理モデルの相違を有する処理モデル（派生処理モデル）を新たに作成した場合、派生処理モデルに対するテストデータを自動的に生成することが可能となる。
【００８１】
（第４の実施形態）
以下、図面を参照しながら本発明の第４の実施形態を説明する。本実施形態におけるテストデータ変換ツールでは、基準処理モデルと派生処理モデルとの相違として、処理モジュール属性が検出される点が異なっている。また、それに伴い、テストデータの変換処理も異なっている。以下、本実施形態では、第１の実施形態と異なる点についてのみ説明し、共通する部分については説明を省略する。また、本実施形態に係るシステム構成及びＰＣの機能構成についても第１の実施形態と同様であるため、説明は省略する。
【００８２】
本実施形態における基準処理モデルは、第１の実施形態において図３に示した基準処理モデルと全く同一の処理モデルであり、フィルタ処理モジュール３０１と顔検出処理モジュール３０２との２つの処理モジュールから構成されている。また、基準処理モデルに対して対応付け管理されるテストデータに関しても、第１の実施形態と同様であるものとする。
【００８３】
続いて、派生処理モデルについて説明する。本実施形態における派生処理モデルは、フィルタ処理モジュール３０１の後段に列方向顔検出処理モジュールを備えており、前述した基準処理モデルと比較して、画像データに対してフィルタ処理モジュール３０１による処理を実行する点は同様である。一方、列方向顔検出処理モジュールにおける顔検出処理が異なっている。
【００８４】
具体的には、基準処理モデルにおける顔検出処理モジュール３０２では、図４（ａ）に示すように顔検出処理をラスタスキャン方向に実行する。これに対して、派生処理モデルにおける列方向顔検出処理モジュールでは、図１７（ａ）に示すような方向で処理を実行する。したがって、例えば図１７（ｂ）に示すように、画像中の４か所で顔が検出されているが、その４か所のアドレスは、図１７（ｂ）に示す順番で配列データに格納される。なお、派生処理モデルにおける列方向顔検出処理モジュールに対しては、作成者により事前に"（８）列方向スキャン"という処理モジュール属性が設定されているものとする。また、派生処理モデルは、テストデータが対応付け管理されていないものとする。
【００８５】
続いて、本実施形態におけるテストデータ変換ツールについて説明する。第１の実施形態と同様に、本実施形態におけるテストデータ変換ツールは、図形プログラミングアプリケーションソフトの一部として実行される。ユーザは、事前に作成済みの基準処理モデルに対して、前述した派生処理モデルを作成したものとする。
【００８６】
まず、テストデータ変換ツールにおいて、処理モデル相違検出部１０１は、ユーザにより指定された基準処理モデルと派生処理モデルとの間の処理モデルの相違を検出する。本実施形態の場合も同様に、接続する処理モジュールのリストを作成する。図１８（ａ）及び図１８（ｂ）には、基準処理モデル及び派生処理モデルから作成される処理モジュールのリストの一例を示している。
【００８７】
ここで、図１８（ａ）及び図１８（ｂ）に示すように、両方の処理モデルは、処理モジュール属性が異なっており、処理モデルの相違は、処理モジュールのリストの相違として検出される。本実施形態の場合は、図１８（ａ）及び図１８（ｂ）に示したように、相違点が処理モジュール属性として検出される。
【００８８】
続いて、テストデータ変換ツールにおいて、図１に示す検索部１０２による処理が実行される。検索部１０２は、第１の実施形態と同様に、処理モデルの相違を検索キーとして、辞書手段からテストデータの変換処理方法を検索する。処理モデルの相違（処理モジュールの処理属性）を検索キーとして入力した場合、図１９に示すように検索キーに一致するテストデータ変換処理方法として、ＩＤ−ｊｋｌとして登録された変換処理モデルが検索される。
【００８９】
続いて、テストデータ変換ツールにおいて、図１に示す変換処理部１０３による処理が実行される。変換処理部１０３は、検索した変換処理モデルに基づいて、基準処理モデルのテストデータを派生処理モデルに対応したテストデータに変換する。
【００９０】
前述したように検索されたＩＤ−ｊｋｌの変換処理モデルは、図２０に示すように、配列順序変換処理モジュール２６０１より構成される処理モデルとして登録されている。配列順序変換処理モジュール２６０１は、基準処理モデルの出力データに対応する配列データを入力し、入力された配列データの要素の順番を派生処理モデルの出力データに対応する配列データの要素の順番に変換する。すなわち、配列順序変換処理モジュール２６０１は、基準処理モデルに対応付けられたテストデータにおける正解データを入力した場合に、派生処理モデルのテストデータにおける正解データを出力するように設計されている。
【００９１】
具体的には、正解データの配列データに保持される順番が、派生処理モデルにおけるスキャン方向に対応した順番に変換される。結果として本実施形態では、変換処理部１０３は、基準処理モデルに対応付けられたテストデータにおける正解データを、図２０に示すように派生処理モデルに対応する正解データに変換する。
【００９２】
以上説明したように本実施形態におけるテストデータ変換ツールにより、事前にテストデータが対応付けられた処理モデル（基準処理モデル）が存在する場合に、新規に作成した処理モデルに対するテストデータの新規作成の手間が軽減される。すなわち、ユーザが前記処理モデルを元にして、辞書に登録済みの処理モデルの相違を有する処理モデル（派生処理モデル）を新たに作成した場合、派生処理モデルに対するテストデータを自動的に生成することが可能となる。
【００９３】
（第５の実施形態）
以下、図面を参照しながら本発明の第５の実施形態を説明する。本実施形態におけるテストデータ変換ツールでは、基準処理モデルと派生処理モデルとの相違として、処理モジュール属性に設定されている実行ハードウェア環境（ターゲットプラットフォーム）が検出される点が異なっている。また、それに伴い、テストデータの変換処理も異なっている。以下、本実施形態では、第１の実施形態と異なる点についてのみ説明し、共通する部分については説明を省略する。また、本実施形態に係るシステム構成及びＰＣの機能構成についても第１の実施形態と同様であるため、説明は省略する。
【００９４】
本実施形態における基準処理モデルは、フィルタ処理モジュール３０１の後段にＣＰＵ顔検出処理モジュールを備えている。このように第１の実施形態で説明した基準処理モデルと比較して、画像データに対してフィルタ処理モジュール３０１による処理を実行する点は同様であるが、ＣＰＵ顔検出処理モジュールが異なっている。
【００９５】
基準処理モデルにおけるＣＰＵ顔検出処理モジュールに対しては、処理を実行する実行ハードウェア環境の"（９）シリアル処理ＣＰＵ"が設定されている。すなわち、ＣＰＵ顔検出処理モジュールは、シングルコアＣＰＵ上で動作するように設計されている。なお、処理内容に関しては、第１の実施形態と同様であり、また、対応付け管理されているテストデータに関しても第１の実施形態と同様であるため、説明を省略する。
【００９６】
続いて、派生処理モデルについて説明する。本実施形態における派生処理モデルは、フィルタ処理モジュール３０１の後段にＧＰＵ顔検出処理モジュールを備えている。前述した基準処理モデルと比較して、画像データに対してフィルタ処理モジュール３０１による処理を実行する点は同様であるが、ＧＰＵ顔検出処理モジュールが異なっている。
【００９７】
派生処理モデルにおけるＧＰＵ顔検出処理モジュールに対しては、作成者により事前に"（１０）並列処理順不定ＧＰＵ"という実行ハードウェア環境が、処理モジュール属性として設定されている。したがって、ＧＰＵ顔検出処理モジュールは、ＧＰＵ上で動作するように設計されている。また、派生処理モデルは、テストデータが対応付け管理されていないものとする。
【００９８】
ここで、ＧＰＵ上で並列に顔検出処理を実行する場合、並列実行される処理の順番を制御することができないことが多い。したがって、本実施形態におけるＧＰＵ顔検出処理モジュールによって、例えば図２１に示すように、画像中の４か所で顔が検出される場合に、４か所のアドレスが配列データに配置される順番を事前に把握することはできない。
【００９９】
続いて、本実施形態におけるテストデータ変換ツールについて説明する。第１の実施形態と同様に、本実施形態におけるテストデータ変換ツールは、図形プログラミングアプリケーションソフトの一部として実行される。ユーザは、事前に作成済みの基準処理モデルに対して、前述した派生処理モデルを作成したものとする。
【０１００】
まず、テストデータ変換ツールにおいて、処理モデル相違検出部１０１は、ユーザにより指定された基準処理モデルと派生処理モデルとの間の処理モデルの相違を検出する。本実施形態の場合も同様に、接続する処理モジュールのリストを作成する。図２２（ａ）及び図２２（ｂ）は、基準処理モデル及び派生処理モデルから作成される処理モジュールのリストの一例を示している。
【０１０１】
ここで、図２２（ａ）及び図２２（ｂ）に示すように、両方の処理モデルは、処理モジュール属性が異なっており、処理モデルの相違は、処理モジュールのリストの相違として検出される。具体的には、図２２（ａ）及び図２２（ｂ）に示したように、処理モジュール属性に関して、（９）シリアル処理ＣＰＵと（１０）並列処理順不定ＧＰＵとが相違点として検出される。
【０１０２】
続いて、テストデータ変換ツールにおいて、図１に示す検索部１０２による処理が実行される。検索部１０２は、第１の実施形態と同様に、処理モデルの相違を検索キーとして、辞書手段からテストデータの変換処理方法を検索する。処理モデルの相違（処理モジュールの処理属性）を検索キーとして入力した場合、図２３に示すように検索キーに一致するテストデータ変換処理方法として、ＩＤ−ｍｎｏとして登録された変換処理モデルが検索される。
【０１０３】
続いて、テストデータ変換ツールにおいて、図１に示す変換処理部１０３による処理が実行される。前述したように検索されたＩＤ−ｍｎｏの変換処理モデルは、図２４に示すように、配列順序変換処理モジュール３２０１より構成される処理モデルとして登録されている。配列順序変換処理モジュール３２０１は、基準処理モデルの出力データに対応する配列データを入力する。
【０１０４】
ここで、配列順序変換処理モジュール３２０１は、基準処理モデルに対応付けられたテストデータにおける正解データを入力した場合に、所定の処理を実行するように設計されている。具体的には、正解データが配列データに保持されている順番を、ラスタスキャン方向に顔検出処理を実行した場合の処理方向の順番にソート変換する。なお、本実施形態では、基準処理モデルにおけるＣＰＵ顔検出処理モジュールの顔検出処理方向がラスタスキャン方向に一致するため、正解データの配列データに保持される順番に変化はない。
【０１０５】
さらに本実施形態においては、派生処理モデルをテストする際に、正解データと比較する対象となる派生処理モデルの出力データに対しても、検出した変換処理方法を適用して、変換処理を施す。具体的には、図２４に示すように派生処理モデルの出力データが配列データに保持されている順番を、ラスタスキャン方向に顔検出処理を実行した場合の処理方向の順番にソート変換する。
【０１０６】
すなわち、本実施形態においては、派生処理モデルにおける顔検出処理を実行するハードウェア環境がＧＰＵであり、出力データの配列データに保持される順番を制御することができない。このため、正解データと、派生処理モデルの出力データとの双方を所定のソート手法でソーティングすることにより、基準処理モデルに対応付けられたテストデータを流用可能とする。
【０１０７】
以上説明したように本実施形態におけるテストデータ変換ツールにより、事前にテストデータが対応付けられた処理モデル（基準処理モデル）が存在する場合に、新規に作成した処理モデルに対するテストデータの新規作成の手間が軽減される。すなわち、ユーザが前記処理モデルを元にして、辞書に登録済みの処理モデルの相違を有する処理モデル（派生処理モデル）を新たに作成した場合、派生処理モデルに対するテストデータを自動的に生成することが可能となる。
【０１０８】
（第６の実施形態）
以下、図面を参照しながら本発明の第６の実施形態を説明する。
図２５は、本実施形態におけるテストデータ変換ツールにおいて実行されるテストデータの変換処理手順の一例を示すフローチャートである。Ｓ３３０１、Ｓ３３０２及びＳ３３０４の処理は、それぞれ前述の各実施形態で説明した処理モデル相違検出部１０１、検索部１０２及び変換処理部１０３が行う処理に該当する。したがって、これらの処理については説明を省略する。
【０１０９】
図２５に示すように、本実施形態のテストデータ変換ツールにおいては、第１〜第５の実施形態で説明した処理手順に、さらに辞書追加登録処理工程（Ｓ３３０５）が追加されている。すなわち、Ｓ３３０３において、検索部１０２は、検索の結果、検索キーが辞書手段に登録されているか否かを判断する。そして、検索キーが辞書手段に登録されている場合は、Ｓ３３０４に進み、前述した各実施形態で説明した変換処理を行う。
【０１１０】
一方、Ｓ３３０３の判断の結果、検索キーが辞書手段に登録されておらず、テストデータの変換処理方法を検索できなかった場合は、Ｓ３３０５に進む。そして、Ｓ３３０５において、検索部１０２は、ユーザの操作により新たにテストデータの変換処理モデルを指定し、辞書手段に登録を行う。
【０１１１】
具体的には、テストデータ変換ツールにおいて、図２６（ａ）に示すように、まずユーザに対して、派生処理モデルに対応するテストデータの自動変換が出来ない旨のメッセージ３４０１を画面上に表示する。これに対してユーザは、新たにテストデータを変換するための変換処理モデルを作成、もしくは既存の変換処理モデルを選択して、図２６（ｂ）に示すように、その変換処理モデルのＩＤを検索キーに対応付けて追加登録するように入力する。
【０１１２】
例えば、第１〜第５の実施形態では、それぞれの実施形態で説明した変換処理モデルが既に辞書手段に登録されているものとして説明したが、それらが辞書手段に未登録であった場合に、ユーザが新たに辞書手段に追加登録するケースが考えられる。また、第１〜第５の実施形態で説明したケース以外の検索キーに対して、新たに変換処理モデルを対応付けて登録するものであっても構わない。
【０１１３】
以上説明したように本実施形態におけるテストデータ変換処理ツールにおいては、基準処理モデルと派生処理モデルとの相違を検索キーとして、基準処理モデルに対応付けられたテストデータを変換する方法を辞書のバリューとして追加登録することができる。これにより、ユーザは辞書に登録されたテストデータの変換処理方法を随時増やしていくことが可能となるため、辞書の登録データの増加に伴い、テストデータの新規作成の手間が軽減されるケースを増やすことが可能となる。
【０１１４】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１１５】
１０１  処理モデル相違検出部
１０２  検索部
１０３  変換処理部
【図３】
2016053751.tif 000003
【図４】
2016053751.tif 000004
【図５】
2016053751.tif 000005
【図６】
2016053751.tif 000006
【図７】
2016053751.tif 000007
【図８】
2016053751.tif 000008
【図９】
2016053751.tif 000009
【図１０】
2016053751.tif 000010
【図１１】
2016053751.tif 000011
【図１２】
2016053751.tif 000012
【図１３】
2016053751.tif 000013
【図１４】
2016053751.tif 000014
【図１５】
2016053751.tif 000015
【図１６】
2016053751.tif 000016
【図１７】
2016053751.tif 000017
【図１８】
2016053751.tif 000018
【図１９】
2016053751.tif 000019
【図２０】
2016053751.tif 000020
【図２１】
2016053751.tif 000021
【図２２】
2016053751.tif 000022
【図２３】
2016053751.tif 000023
【図２４】
2016053751.tif 000024
【図２５】
2016053751.tif 000025
【図１】
2016053751.tif 000026
【図２】
2016053751.tif 000027
【図２６】
2016053751.tif 000028