(57)【特許請求の範囲】
【請求項１】
画像の処理を実行可能な画像処理ユニットと、
前記画像処理ユニットによる、処理毎の処理対象である画像データを保持可能な入力バッファおよび処理結果である画像データを保持可能な出力バッファを提供可能なメモリ部と、
前記画像処理ユニットに実行させる複数の種類の処理および当該複数の処理の実行順序をユーザに選択させる入力部と、
前記入力部を通してユーザにより選択された情報をもとに、前記メモリ部に前記処理毎の入力バッファおよび出力バッファを確保するとともに、これらのバッファ間の入出力の接続関係を設定し、前記設定された接続関係をもとに、前記画像処理ユニットにて順次実行される処理毎の前記入力バッファおよび前記出力バッファの前記メモリ部でのそれぞれのアドレス情報を前記画像処理ユニットに通知する制御部と
を具備する情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記入力部は、前記画像処理ユニットに実行させる複数の種類の処理のうち一部の処理をキャンセルする指示をユーザより受け付けることが可能とされ、
前記制御部は、前記入力された指示内容に従って前記バッファ間の入出力の接続関係を更新し、前記更新された接続関係をもとに、前記画像処理ユニットにて順次実行される処理毎の前記入力バッファおよび前記出力バッファの前記メモリ部でのそれぞれのアドレス情報を前記画像処理ユニットに通知する
情報処理装置。
【請求項３】
請求項１または２に記載の情報処理装置であって、
前記入力部は、前記画像処理ユニットに実行させる複数の処理の実行順序の変更の指示をユーザより受け付けることが可能とされ、
前記制御部は、前記入力された指示内容に従って前記バッファ間の入出力の接続関係を更新し、前記更新された接続関係をもとに、前記画像処理ユニットにて順次実行される処理毎の前記入力バッファおよび前記出力バッファの前記メモリ部でのそれぞれのアドレス情報を前記画像処理ユニットに通知する
情報処理装置。
【請求項４】
請求項１ないし３のいずれか１項に記載の情報処理装置であって、
前記画像処理ユニットが、画像の処理を当該画像を区分する単位毎に並列に実行可能なユニットである
情報処理装置。
【請求項５】
入力部が、画像の処理を実行可能な画像処理ユニットに実行させる複数の種類の処理および当該複数の処理の実行順序をユーザに選択させ、
制御部が、前記入力部を通してユーザにより選択された情報をもとに、前記画像処理ユニットによる、処理毎の処理対象である画像データを保持可能な入力バッファおよび処理結果である画像データを保持可能な出力バッファを提供可能なメモリ部に前記処理毎の入力バッファおよび出力バッファを確保するとともに、これらのバッファ間の入出力の接続関係を設定し、前記設定された接続関係をもとに、前記画像処理ユニットにて順次実行される処理毎の前記入力バッファおよび前記出力バッファの前記メモリ部でのそれぞれのアドレス情報を前記画像処理ユニットに通知する
情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、ＧＰＵ（Ｇｒａｐｈｉｃｓ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）などを用いて画像の処理を行う情報処理装置、情報処理方法に関する。
【背景技術】
【０００２】
近年、汎用のコンピュータ・ハードウェアの高性能化・高機能化は目覚しく、以前は専用のハードウェアでのみ実装可能であった画像処理が、汎用のコンピュータ・ハードウェアを利用して行うことが可能となってきた。汎用のコンピュータ・ハードウェアのうち特にＣＰＵ（Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）の高速化、主記憶として用いられるＲＡＭ（Ｒａｎｄｏｍ Ａｃｃｅｓｓ Ｍｅｍｏｒｙ）の高速化は目覚しく、これにより大容量の画像データに対して複雑なエフェクト処理を実用的な時間で処理することが可能となった。
【０００３】
また、並列演算処理に特化して設計された演算処理装置であるＧＰＵ（Ｇｒａｐｈｉｃｓ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）は、画像処理のさらなる高速化を可能とするものである。ＧＰＵによる並列演算処理は、複数の演算ユニットに対して同じ命令を発行することで、各演算ユニットがそれぞれ独立して同じ命令を実行するというメカニズムによって実現されるのに対し、ＣＰＵでは複数の演算ユニットにそれぞれ異なる命令が発行されることで、各演算ユニットがそれぞれ異なる命令を実行する。このため、ＧＰＵは画像処理のように一部の演算結果が他の部分に影響しないような処理で優れた性能を発揮し、ＣＰＵは逆に逐次型処理に適したものと言える。
【０００４】
また最近では、ＧＰＵを、画像処理のみならず、他の数値演算にも利用できるように設計されたＧＰＧＰＵ（Ｇｅｎｅｒａｌ−Ｐｕｒｐｏｓｅ ｃｏｍｐｕｔｉｎｇ ｏｎ Ｇｒａｐｈｉｃｓ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔｓ）という技術分野も存在する。
【０００５】
特許文献１には、ＧＰＵにデータのエフェクト処理を複数回実行させる際、システムメモリとＧＰＵとの間でのエフェクト処理毎のデータの授受の回数を低減するために、ＧＰＵによる複数回のエフェクト処理をＧＰＵメモリに設けられたバッファ間でのデータをやりとりを通じて実行させ、最終的なエフェクト処理の結果をＣＰＵメモリに転送する事項が記載されている。また、ＣＰＵは、ＧＰＵに実行させる複数のエフェクトの種類と順序をＧＰＵに通知することも記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−９８９１１号公報（段落［００５７］、［００６８］、［００７２］）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に記載された技術のように、ＧＰＵにデータのエフェクト処理を複数回実行させる場合、ＧＰＵメモリにエフェクト処理の対象となるデータを保持するバッファと、エフェクト処理の結果のデータを保持するバッファをそれぞれのエフェクト毎に確保し（ＧＰＵメモリの初期化）、各エフェクトの実行順序に従って各バッファの接続関係を設定する必要がある。
【０００８】
ところで、エフェクトの種類、数、実行順序など、エフェクト内容はユーザにより適宜変更され得る。エフェクト内容の変更は、エフェクトの数の増減時など、ＣＰＵメモリに確保すべきバッファの数の変更を伴う場合がある。この理由から、エフェクト内容の変更の都度、ＣＰＵメモリの初期化と各バッファの接続関係の設定を行うようにすると、複数のエフェクトのうちの１つをパスしたり、複数のエフェクトの実行順序だけを変更するなど軽微な変更によってもＣＰＵメモリの初期化と各バッファの接続関係の設定などの操作時間が発生し、全体的な効率が低下するおそれがある。
【０００９】
以上のような事情に鑑み、本発明の目的は、画像処理ユニットにて連続的に実行される複数のエフェクト処理の変更に伴う画像処理ユニットによる操作時間を短縮して全体的な効率の向上を図ることのできる情報処理装置、情報処理方法を提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するため、本発明の一形態に係る情報処理装置は、画像の処理を実行可能な画像処理ユニットと、前記画像処理ユニットによる、処理毎の処理対象である画像データを保持可能な入力バッファおよび処理結果である画像データを保持可能な出力バッファを提供可能なメモリ部と、前記画像処理ユニットに実行させる複数の種類の処理および当該複数の処理の実行順序をユーザに選択させる入力部と、前記入力部を通してユーザにより選択された情報をもとに、前記メモリ部に前記処理毎の入力バッファおよび出力バッファを確保するとともに、これらのバッファ間の入出力の接続関係を設定し、前記設定された接続関係をもとに、前記画像処理ユニットにて順次実行される処理毎の前記入力バッファおよび前記出力バッファの前記メモリ部でのそれぞれのアドレス情報を前記画像処理ユニットに通知する制御部とを具備する。
【００１１】
本発明によれば、画像データに対して画像処理ユニットにより複数の処理を連続してかける際、メモリ部上で各処理に割り当てられた入出力バッファ間で画像を入出力して複数の処理を連続して行うことで、画像処理ユニットと他の処理ユニットとの間での画像のやりとりを最小回数（２回）に抑えることができる。これにより、画像処理の高速化を図れる。また、本発明によれば、制御部が、メモリ部に確保された処理毎のバッファ間の入出力の接続関係を設定し、設定された接続関係をもとに、画像処理ユニットにて順次実行される処理毎の入力バッファおよび出力バッファのメモリ部でのそれぞれのアドレス情報を画像処理ユニットに通知するので、画像処理ユニットに実行させる処理の数を減らしたり、処理の実行順序を随時変更することができる。
【００１２】
前記入力部は、前記画像処理ユニットに実行させる複数の種類の処理のうち一部の処理をキャンセルする指示をユーザより受け付けることが可能とされ、前記制御部は、前記入力された指示内容に従って前記バッファ間の入出力の接続関係を更新し、前記更新された接続関係をもとに、前記画像処理ユニットにて順次実行される処理毎の前記入力バッファおよび前記出力バッファの前記メモリ部でのそれぞれのアドレス情報を前記画像処理ユニットに通知することとしてもよい。
【００１３】
また、前記入力部は、前記画像処理ユニットに実行させる複数の処理の実行順序の変更の指示をユーザより受け付けることが可能とされ、前記制御部は、前記入力された指示内容に従って前記バッファ間の入出力の接続関係を更新し、前記更新された接続関係をもとに、前記画像処理ユニットにて順次実行される処理毎の前記入力バッファおよび前記出力バッファの前記メモリ部でのそれぞれのアドレス情報を前記画像処理ユニットに通知するようにしてもよい。
【００１４】
本発明の別の観点に基づく情報処理方法は、入力部が、画像の処理を実行可能な画像処理ユニットに実行させる複数の種類の処理および当該複数の処理の実行順序をユーザに選択させ、制御部が、前記入力部を通してユーザにより選択された情報をもとに、前記画像処理ユニットによる、処理毎の処理対象である画像データを保持可能な入力バッファおよび処理結果である画像データを保持可能な出力バッファを提供可能なメモリ部に前記処理毎の入力バッファおよび出力バッファを確保するとともに、これらのバッファ間の入出力の接続関係を設定し、前記設定された接続関係をもとに、前記画像処理ユニットにて順次実行される処理毎の前記入力バッファおよび前記出力バッファの前記メモリ部でのそれぞれのアドレス情報を前記画像処理ユニットに通知することとしたものである。
【発明の効果】
【００１５】
本発明によれば、画像処理ユニットにて連続的に実行される複数のエフェクト処理の変更に伴う画像処理ユニットによる操作時間を短縮して全体的な効率の向上を図れる。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施形態に係る情報処理装置の構成を示す図である。
【図２】編集環境画面の例を示す図である。
【図３】デフォーカスのパラメータを設定するためのエフェクトＧＵＩウィンドウを表示した編集環境画面の例を示す図である。
【図４】ＣＰＵ部とＧＰＵ部との間でのエフェクト実行制御に関するシーケンス図である。
【図５】図４のシーケンスにおけるＣＰＵによるＧＰＵメモリの初期化処理の流れを示すフローチャートである
【図６】図４のシーケンスにおけるＣＰＵによるＧＰＵエフェクトの実行制御の流れを示すフローチャートである。
【図７】図４のシーケンスにおけるＧＰＵによるエフェクト処理の流れを示すフローチャートである。
【図８】各エフェクトの入出力バッファの接続関係の例を示す図である。
【図９】３つのエフェクト（Ａ）、エフェクト（Ｂ）、エフェクト（Ｃ）のうちエフェクト（Ｂ）がユーザからの指示でキャンセルされることによってエフェクト設定情報が変更された場合のＣＰＵ部とＧＰＵ部との間でのエフェクト実行制御に関するシーケンス図である。
【図１０】エフェクト設定情報が変更された場合のＣＰＵによるＧＰＵエフェクトの実行制御の流れを示すフローチャートである。
【図１１】更新された各エフェクトの入出力バッファの接続関係を示す図である。
【図１２】３つのエフェクト（Ａ）、エフェクト（Ｂ）、エフェクト（Ｃ）のうちエフェクト（Ａ）をキャンセルするようにエフェクトの数が変更された場合の各エフェクトの入出力バッファの接続関係を示す図である。
【図１３】３つのエフェクト（Ａ）、エフェクト（Ｂ）、エフェクト（Ｃ）のうちエフェクト（Ｃ）をキャンセルするようにエフェクトの数が変更した場合の各エフェクトの入出力バッファの接続関係を示す図である。
【図１４】３つのエフェクト（Ａ）、エフェクト（Ｂ）、エフェクト（Ｃ）においてエフェクト（Ｂ）とエフェクト（Ｃ）の実行順序を入れ替えた場合の各エフェクトの入出力バッファの接続関係を示す図である。
【発明を実施するための形態】
【００１７】
以下、図面を参照しながら、本発明の実施形態を説明する。
＜第１の実施形態＞
［情報処理装置の構成］
本実施形態は、ＣＰＵ（Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）とＧＰＵ（Ｇｒａｐｈｉｃｓ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）を搭載したコンピュータ上で、映像編集プログラムを実行させることにより、画像データに対して例えばエフェクトなどの画像処理を行うことのできる情報処理装置に関するものである。
【００１８】
図１は、本発明の一実施形態に係る情報処理装置の構成を示す図である。
同図に示すように、この情報処理装置１０は、ＣＰＵ部１１、ＧＰＵ部１２、表示インタフェース部１４、操作入力インタフェース部１５、記憶装置１６、これらを相互に接続するバス１７を備える。
【００１９】
ＣＰＵ部１１は、ＣＰＵ１１１（制御部）とメモリ（以下「ＣＰＵメモリ１１２」と記述する。）とを有する。ＣＰＵ１１１は、ＣＰＵメモリ１１２に格納された映像編集プログラムに基づき映像編集のための演算処理およびＧＰＵ部１２での画像データに対するエフェクト処理を制御する。ＣＰＵ１１１は、操作入力インタフェース部１５に接続された操作入力装置１８を通じてユーザより入力された各種の指令を映像編集プログラムの動作に反映させることができる。
【００２０】
ＧＰＵ部１２は、ＧＰＵ１２１（画像処理ユニット）とメモリ（以下「ＧＰＵメモリ１２２」と記述する。）（メモリ部）とを有する。ＧＰＵ１２１は、ＣＰＵ１１１による制御のもと、ＣＰＵメモリ１１２から読み出された画像データを、バス１７を通じてＧＰＵメモリ１２２に設けられたバッファに取り込み、この画像データに対するエフェクト処理を、画像を区分するスレッド等の単位毎に並列に実行することができる。
【００２１】
表示インタフェース部１４は、表示装置１９とのインタフェースであり、ＣＰＵ１部１１またはＧＰＵ部１２よりエフェクトが施された画像データを受け取って描画処理を行い、描画データを表示装置１９に供給する。
【００２２】
操作入力インタフェース部１５は、操作入力装置１８とのインタフェースであり、操作入力装置１８から入力されたユーザからのデータおよび指令をＣＰＵ１１１に供給する処理などを行う。
【００２３】
記憶装置１６は、編集前および編集後の動画を構成する各フレームの画像データを保存する。また、記憶装置１６には映像編集プログラムも格納されており、この記憶装置１６に格納された映像編集プログラムはＣＰＵ部１１のＣＰＵメモリ１１２にロードされ、ＣＰＵ１１１により解釈されて実行される。
【００２４】
［映像編集プログラムの構成］
映像編集プログラムは、映像編集メインプログラムと、エフェクト処理をＣＰＵ１１１に実行させるためのＣＰＵ用エフェクトプログラム、エフェクト処理をＧＰＵ１２１に実行させるためのＧＰＵ用エフェクトプログラムなどで構成される。ＣＰＵ用エフェクトプログラムおよびＧＰＵ用エフェクトプログラムはそれぞれエフェクトの種類毎に用意されている。これらのエフェクトプログラムは、映像編集プログラムに対して個別に且つ選択的に接続が可能なプラグインとして提供されたものでもよい。
【００２５】
映像編集メインプログラムは、エフェクト対象のフレーム、そのフレームの画像データに対して施すエフェクトの種類、そのエフェクト用のパラメータ、複数のエフェクトの実行順序などをユーザ選択させてエフェクト設定情報として入力するためのＧＵＩプログラムを含む。ユーザは、このＧＵＩプログラムをもとに表示装置１９の画面に表示された編集環境において、操作入力装置１８を使って上記のエフェクト設定情報を入力することができる。入力されたエフェクト設定情報はＣＰＵメモリ１１２に設けられた所定の領域に保持される。
【００２６】
なお、ユーザにより選択されたそれぞれエフェクトについて、ＣＰＵ用エフェクトプログラムとＧＰＵ用エフェクトプログラムのどちらを採用するかは、画像処理の領域が画像の一部である全体であるかどうか、あるいはＧＰＵメモリ１２２の消費率、ＣＰＵ１１１の負荷などによって選択される。例えば、画像の一部に対する処理の場合にはＣＰＵ用エフェクトプログラムが、画像全体に対する処理である場合にはＧＰＵ用エフェクトプログラムが選択される。また、ＧＰＵメモリ１２２の消費率、ＣＰＵ１１１の負荷などを考慮して、選択結果を修正することも行われる。
【００２７】
ここで、ＧＰＵ部１２にて複数のエフェクト処理が連続して実行される場合を考える。この場合、ＧＰＵ１２１は、ＧＰＵメモリ１２２にエフェクト毎に割り当てられた入出力バッファを用いて複数のエフェクト処理を連続的に実行する。このため、各エフェクトの入出力バッファの接続関係を管理する仕組みが必要となる。本実施形態では、映像編集プログラムが各エフェクトの入出力バッファの接続関係の管理をＣＰＵ１１１に実行させる。
【００２８】
［本実施形態の情報処理装置の動作について］
次に、本実施形態の情報処理装置の動作を説明する。
動作の説明は、
１．エフェクト設定
２．ＧＰＵメモリの初期化処理
３．エフェクト実行
４．エフェクトの数、実行順序の変更
の順で行う。
【００２９】
［１．エフェクト設定］
ＣＰＵ１１１は操作入力装置１８を使ってユーザより選択された
Ａ．エフェクトの種類（１以上）
Ｂ．エフェクト毎のパラメータ
Ｃ．複数のエフェクトの実行順序
などのエフェクト設定情報をＣＰＵメモリ１１２に保存する。
【００３０】
これらのエフェクト設定情報をユーザに選択させるための具体例を説明する。
まず、ＣＰＵ１１１は、ユーザからの指示に従って動画像におけるシーン選択のための情報を表示装置１９に表示する。シーン選択のための情報とは、例えば、そのシーンを代表するフレーム画像の解像度を下げた画像データ（サムネイル画像）などである。シーン選択のための情報の中から、マウスなどの操作入力装置１８を使ってエフェクトをかけたいシーンが選択されると、ＣＰＵ１１１は、その選択されたシーンに属する１以上のフレームの画像データを記憶装置１６からＣＰＵメモリ１１２に設けられた所定のバッファに読み出す。続いてＣＰＵ１１１は、ユーザからの拡大／縮小率、フレームレートなどの出力条件の入力を受け付ける。ＣＰＵ１１１は、ＣＰＵメモリ１１２のバッファに保持された画像データを、当該出力条件に従って出力するように表示インタフェース部１４に依頼する。この結果、表示装置１９の後述する編集環境画面に、出力条件に従って加工されたフレームの画像データがエフェクト対象の画像データとして表示される。
【００３１】
次に、操作入力装置１８を使ってユーザより編集開始の指示が入力される。ＣＰＵ１１１は編集開始の指示を受けると、表示装置１９の後述する編集環境画面に実行可能なエフェクト名のリストを表示する。このリストの中でユーザによって１つのエフェクト名が選択されると、その選択されたエフェクト名に対応するエフェクトプログラムが起動され、画像データに対するエフェクト処理が実行される。
【００３２】
図２は編集環境画面４０の例を示す図である。同図に示すように、この編集環境画面４０には、出力画像表示ウィンドウ４１、トラック表示ウィンドウ４２、およびエフェクト候補リスト４３などが表示される。出力画像表示ウィンドウ４１は、出力条件に従って拡大／縮小されたフレームの画像データがエフェクトの対象画像として表示されたり、エフェクトの結果画像が表示されるウィンドウである。トラック表示ウィンドウ４２は、ユーザにより選択されたシーンの一部に対応する連続する複数のフレームの画像データを同時に表示できるウィンドウである。このトラック表示ウィンドウ４２において水平方向は時間の向きとなっている。時間の位置を選択するスライダー（図示せず）が操作入力装置１８を使ってユーザによって右左水平方向に操作されることで、トラック表示ウィンドウ４２に同時に表示される複数のフレームの画像データの時間位置が移動される。この切り替えを通じてユーザは選択したシーンを構成するすべてのフレームの画像データを見ることができる。また、ユーザは操作入力装置１８を使って、トラック表示ウィンドウ４２に表示された複数のフレームの画像データの中から、出力画像表示ウィンドウ４１に表示させる１つのフレームの画像データを選択することができる。エフェクト候補リスト４３は、出力画像表示ウィンドウ４１に表示されたフレームの画像データにかけることのできるエフェクトの種類のリストである。ユーザは出力画像表示ウィンドウ４１に表示されたフレームの画像データにかけたいエフェクトの種類をマウスなどの操作入力装置１８を使って選択することができる。
【００３３】
エフェクト候補リスト４３で１つのエフェクト名が選択されると、ＣＰＵ１１１は、その選択されたエフェクト名に関する各種のパラメータを設定するためのエフェクトＧＵＩウィンドウを表示する。ユーザはマウス等の操作入力装置１８を用いて、エフェクトＧＵＩウィンドウにおいて項目毎のパラメータの調整を行うことができる。
【００３４】
例として、エフェクトの種類としてデフォーカスが選択された場合を説明する。デフォーカスが選択されると、図３に示すように、編集環境画面４０にデフォーカスのパラメータを設定するためのエフェクトＧＵＩウィンドウ４６が表示される。このデフォーカス用のエフェクトＧＵＩウィンドウ４６においてユーザはマウス等の操作入力装置１８を用いて、ボタン操作によるアイリスの形状の選択、スライダー操作による半径、角度、曲率等のパラメータの調整を行うことができる。
【００３５】
ＣＰＵ１１１は、エフェクトＧＵＩウィンドウ４６においてユーザにより選択されたパラメータに従って、出力画像表示ウィンドウ４１に表示されたフレームの画像データに対するエフェクト処理を実行する。このときエフェクト処理は、個々のパラメータの選択操作に対してリアルタイムに実行されて出力画像表示ウィンドウ４１に表示されたフレームの画像データに反映されることで、項目毎に最適なパラメータを効率的に選択することができる。
【００３６】
パラメータ調整が終了すると、ユーザは選択されたシーンを構成するすべてのフレームの画像データに対して、パラメータの調整結果を含むエフェクトの実行の指示を操作入力装置１８を用いてＣＰＵ１１１に入力することができる。この指示は編集環境画面４０に設けられた処理出力ボタンをクリックすることなどによって行われる。処理出力ボタンには、図２、図３に示すように、再生ボタン４４と記録ボタン４５とがある。再生ボタン４４がユーザによって操作されると、ユーザによって選択されたフレームの画像データにかけられたパラメータの調整結果を含むエフェクトが、シーンを構成する他のフレームの画像データに対しても同様にかけられて、そのシーンに対応する動画が出力画像表示ウィンドウ４１に出力される。ユーザは、この出力画像表示ウィンドウ４１に表示された動画をみてエフェクトの結果をシーン全体を通して確認することができる。また、記録ボタン４５がユーザによって操作されたときは、ユーザによって選択されたフレームの画像データにかけられたパラメータの調整結果を含むエフェクトが、シーンを構成する他のフレームの画像データに対しても同様にかけられて記憶装置１６に書き込まれる。
【００３７】
また、フレームの画像データに複数の種類のエフェクト処理を施す場合には、１つのエフェクトの選択とパラメータ調整が完了した後、続けて別の種類のエフェクトの選択とパラメータ調整の操作を繰り返せばよい。この場合、ユーザによるエフェクトの選択順がそのまま各エフェクトの実行順序として設定される。
【００３８】
以上のような操作により、エフェクトの種類（１以上）、エフェクト毎のパラメータ、複数のエフェクトの実行順序がエフェクト設定情報として設定される。このエフェクト設定情報はＣＰＵメモリ１１２の所定の領域に保存される。
【００３９】
ここで、個々のフレームの画像データに対して、連続的に３回のエフェクト処理がＧＰＵ１２１によって行われるように設定された場合を想定して、以降の動作を説明する。なお、３回のエフェクト処理はすべて異なる種類のエフェクト処理である必要はない。
【００４０】
以降の動作の説明は図４から図６のフローチャートを用いて行うこととする。
図４は、ＣＰＵ部１１とＧＰＵ部１２との間でのエフェクト実行制御に関するシーケンス図である。
図５は、図４のシーケンスにおけるＣＰＵ１１１によるＧＰＵメモリの初期化処理の流れを示すフローチャートである。
図６は、図４のシーケンスにおけるＣＰＵ１１１によるＧＰＵエフェクトの実行制御の流れを示すフローチャートである。
図７は、図４のシーケンスにおけるＧＰＵ１２１によるエフェクト処理の流れを示すフローチャートである。
【００４１】
［２．ＧＰＵメモリの初期化処理］
次に、上記のようにＧＰＵ１２１による複数のエフェクト処理が連続して実行されるように設定された場合のＧＰＵメモリ１２１の初期化処理について説明する。
【００４２】
ＣＰＵ１１１は、映像編集プログラムに基づいて次のように制御を行う。
まず、ＣＰＵ１１１はＧＰＵ部１２を確保する（図４：Ｓ４０１／Ｓ４０１Ｒ、図５：Ｓ５０１）。これにより、ＣＰＵ１１１はバス１７を通じて接続されているＧＰＵ部１２を認識し、ＧＰＵメモリ１２２の容量などの情報を取得する。
【００４３】
ここでＣＰＵ１１１は、何らかの理由により、ＧＰＵ部１２の認識の失敗したり、ＧＰＵメモリ１２２の容量などの情報の取得に失敗した場合（図５：Ｓ５０２のＮＯ）、その旨を表示するなど所定のエラー処理を行い（図５：Ｓ５０７）、映像編集プログラムを終了する。
【００４４】
ＣＰＵ１１１は、ＧＰＵ部１２の認識、ＧＰＵメモリ１２２の容量などの情報の取得に成功した場合（図５：Ｓ５０２のＹＥＳ）、上記複数のエフェクト毎の入出力バッファの領域をＧＰＵメモリ１２２内に確保することを試みる（図５：Ｓ５０３）。すなわち、ＣＰＵ１１１は、ＣＰＵメモリ１１２に保存されたエフェクト設定情報をもとに、エフェクト毎の入出力バッファの領域を確保するための要求を生成してＧＰＵ１２１に送る（図４：Ｓ４０２）。ＧＰＵ１２１は、この要求に応じてＧＰＵメモリ１２２内にエフェクト毎の入出力バッファの領域を確保し、各入出力バッファのアドレス情報をＣＰＵ１１１に通知する（図４：Ｓ４０２Ｒ）。何らかの理由により各入出力バッファの確保に失敗した場合（図５：Ｓ５０４のＮＯ）、ＣＰＵ１１１は、その旨を表示するなど所定のエラー処理を行い（図５：Ｓ５０７）、映像編集プログラムを終了する。また、ＣＰＵ１１１は、各入出力バッファの確保に成功した場合（図５：Ｓ５０４のＹＥＳ）、これらの入出力バッファを初期化する（図４：Ｓ４０３／Ｓ４０３Ｒ、図５：Ｓ５０５）。
【００４５】
続いて、ＣＰＵ１１１は、ＣＰＵメモリ１１２に保存されたエフェクト設定情報をもとに、エフェクト毎の入出力バッファの接続情報を設定してＣＰＵメモリ１１２に保存する（図５：Ｓ５０６）。エフェクト毎の入出力バッファの接続情報とは、それぞれのエフェクトがＧＰＵメモリ１２２のどのアドレス（バッファ）から画像データを取得し、エフェクト処理の結果をＧＰＵメモリ１２２のどのアドレス（バッファ）に書き出すかを示す情報である。
【００４６】
図８は、ＧＰＵ１２１により３つのエフェクト処理が連続して実行されるように設定された場合の各エフェクトの入出力バッファの接続関係の例を示す図である。
ここで、エフェクト（Ａ）、エフェクト（Ｂ）、エフェクト（Ｃ）は連続して実行されるように設定されたものである。ＣＰＵメモリ１１２には、画像データの出力バッファ２１−Ｏと入力バッファ２１−Ｉがそれぞれ映像編集プログラムによって割り当てられ、出力バッファ２１−Ｏにエフェクト対象の画像データが保存される。
【００４７】
図８に示す各エフェクトの入出力バッファの接続関係は以下の通りである。
エフェクト（Ａ）には入力バッファ３１−Ｉと出力バッファ３１−Ｏが割り当てられている。エフェクト（Ｂ）には入力バッファ３２−Ｉと出力バッファ３２−Ｏが割り当てられている。エフェクト（Ｃ）には入力バッファ３３−Ｉと出力バッファ３３−Ｏが割り当てられている。エフェクト（Ａ）に割り当てられた入力バッファ３１−Ｉには、ＣＰＵメモリ１１２に設けられた出力バッファ２１−Ｏに保持された画像データが転送される。この入力バッファ３１−Ｉに保持された画像データに対してＧＰＵ１２１によりエフェクト（Ａ）の処理が実行され、その結果は出力バッファ３１−Ｏに書き出される。出力バッファ３１−Ｏは、エフェクト（Ｂ）において入力バッファ３２−Ｉとして用いられる。この入力バッファ３２−Ｉに保存された画像データに対してＧＰＵ１２１によりエフェクト（Ｂ）の処理が実行され、その結果は出力バッファ３２−Ｏに書き出される。続いて、その出力バッファ３２−Ｏはエフェクト（Ｃ）において入力バッファ３３−Ｉとして用いられる。この入力バッファ３３−Ｉに保存された画像データに対してＧＰＵ１２１によりエフェクト（Ｃ）の処理が実行され、その結果は出力バッファ３３−Ｏに書き出される。そして出力バッファ３３−Ｏに保持された画像データは、ＣＰＵメモリ１１２に割り当てられた入力バッファ２１−Ｉに転送される。
【００４８】
ＣＰＵ１１１は、ＣＰＵメモリ１１２に保存されたエフェクト設定情報をもとに、上記のような各エフェクトの入出力バッファの接続関係を設定する。なお、ＣＰＵメモリ１１２に設けられた出力バッファ２１−Ｏと入力バッファ２１−Ｉは、エフェクト設定情報に拠らずに映像編集プログラムによって設定される。
【００４９】
この後、エフェクト対象の画像データに対してＧＰＵ１２１にエフェクト（Ａ）、エフェクト（Ｂ）、エフェクト（Ｃ）の各処理を実行させるための制御がＣＰＵ１１１によって次のようにして行われる。
【００５０】
［３．エフェクト実行］
ＣＰＵ１１１は、各バッファの接続関係の設定後、映像編集プログラムからのエフェクトの実行開始の指示を受けてエフェクト実行のためのサブルーチンを呼び出す。図６はこのエフェクト実行のためのサブルーチンのフローチャートである。
【００５１】
ＣＰＵ１１１は、映像編集プログラムから、エフェクト対象の画像データが保持されたＣＰＵメモリ１１２上の出力バッファ２１−Ｏのアドレスと、ＧＰＵ部１２からの戻りの画像データを保持するＣＰＵメモリ１１２上の入力バッファ２１−Ｏのアドレスを取得する（図４：Ｓ４０５、図６：Ｓ６０１）。
【００５２】
次に、ＣＰＵ１１１は、ＣＰＵメモリ１１２上の出力バッファ２１−Ｏからエフェクト（Ａ）に割り当てられた入力バッファ３２−Ｉにエフェクト対象の画像データを転送する（図４：Ｓ４０６／Ｓ４０６Ｒ、図６：Ｓ６０２）。
【００５３】
次に、ＣＰＵ１１１は、ＣＰＵメモリ１１２に保存された各エフェクトの入出力バッファの接続関係から、エフェクト（Ａ）に割り当てられた入出力バッファ３１−Ｉ，３１−Ｏのアドレス情報を抽出する（図６：Ｓ６０４）。続いて、ＣＰＵ１１１は、ＣＰＵメモリ１１２に保存されたエフェクト設定情報の中からエフェクト（Ａ）のパラメータを抽出する（図６：Ｓ６０５）。この後、ＣＰＵ１１１は、エフェクト（Ａ）のＧＰＵ用エフェクトプログラムを記憶装置１６から読み出し、このＧＰＵ用エフェクトプログラムに、入出力バッファ３１−Ｉ，３１−Ｏのアドレス情報、エフェクト（Ａ）のパラメータ、スレッド数、グリッド数などを引数として付加したエフェクト実行要求をＧＰＵ１２１に転送する（図４：Ｓ４０７、図６：Ｓ６０６）。
【００５４】
図７に示すように、ＧＰＵ１２１は、エフェクト（Ａ）の実行要求を受けると（図７：Ｓ７０１）、引数として取得した入出力バッファ３１−Ｉ，３１−Ｏのアドレスをもとに、スレッド毎のアクセス先のアドレスをそれぞれ算出する（図７：Ｓ７０２）。この後、ＧＰＵ１２１は、スレッドの単位で、それぞれのアクセス先として算出された入力バッファ３１−Ｉ上のアドレスのデータに対して、引数として与えられたパラメータを参照しつつ、ＧＰＵ用エフェクトプログラムに基づくエフェクト処理を並列に実行し、その結果をそれぞれの書き出し先として算出された出力バッファ３１−Ｏ上のアドレスに書き出す（図７：Ｓ７０３）。この後、ＧＰＵ１２１は、エフェクト（Ａ）の処理が完了した旨をバス１７を通じてＣＰＵ１１１に通知する（図４：Ｓ４０７Ｒ）。以上で、エフェクト（Ａ）の処理が完了となる。
【００５５】
ＣＰＵ１１１は、ＧＰＵ１２１よりエフェクト（Ａ）の処理が完了したことの通知を受けると、次のエフェクト（Ｂ）の処理をＧＰＵ１２１に実行させる。すなわち、ＣＰＵ１１１は、ＣＰＵメモリ１１２に保存された各エフェクトの入出力バッファの接続関係からエフェクト（Ｂ）に割り当てられた入出力バッファ３２−Ｉ，３２−Ｏのアドレス情報を抽出する（図６：Ｓ６０４）。続いて、ＣＰＵ１１１は、ＣＰＵメモリ１１２に保存されたエフェクト設定情報の中からエフェクト（Ｂ）のパラメータを抽出する（図６：Ｓ６０５）。そしてＣＰＵ１１１は、エフェクト（Ｂ）のＧＰＵ用エフェクトプログラムを記憶装置１６から読み出し、このＧＰＵ用エフェクトプログラムに、入出力バッファ３２−Ｉ，３２−Ｏの各アドレス情報、エフェクト（Ｂ）のパラメータ、スレッド数、グリッド数などを引数として付加したエフェクト実行要求をＧＰＵ１２１に転送する（図４：Ｓ４０８、図６：Ｓ６０６）。
【００５６】
ＧＰＵ１２１は、エフェクト（Ｂ）の実行要求を受けると（図７：Ｓ７０１）、引数として取得した入出力バッファ３２−Ｉ，３２−Ｏの各アドレス情報をもとに、スレッド毎のアクセス先のアドレスをそれぞれ算出する（図７：Ｓ７０２）。この後、ＧＰＵ１２１は、スレッドの単位で、それぞれのアクセス先として算出された入力バッファ３２−Ｉ上のアドレスのデータに対して、引数として与えられたパラメータを参照しつつ、ＧＰＵ用エフェクトプログラムに基づくエフェクト処理を並列に実行し、その結果をそれぞれの書き出し先として算出された出力バッファ３２−Ｏ上のアドレスに書き出す（図７：Ｓ７０３）。この後、ＧＰＵ１２１は、エフェクト（Ｂ）の処理が完了した旨をバス１７を通じてＣＰＵ１１１に通知する（図４：Ｓ４０８Ｒ）。以上で、エフェクト（Ｂ）の処理が完了となる。
【００５７】
ＣＰＵ１１１は、ＧＰＵ１２１よりエフェクト（Ｂ）の処理が完了したことの通知を受けると、前記と同様に、エフェクト（Ｃ）の処理をＧＰＵ１２１に同様の制御を通じて実行させるためのエフェクト実行要求をＧＰＵ１２１に転送する（図４：Ｓ４０９、図６：Ｓ６０６）。すなわち、ＣＰＵ１１１は、ＣＰＵメモリ１１２に保存された各エフェクトの入出力バッファの接続関係からエフェクト（Ｃ）に割り当てられた入出力バッファ３３−Ｉ，３３−Ｏのアドレス情報を抽出する（図６：Ｓ６０４）。続いて、ＣＰＵ１１１は、ＣＰＵメモリ１１２に保存されたエフェクト設定情報の中からエフェクト（Ｃ）のパラメータを抽出する（図６：Ｓ６０５）。そしてＣＰＵ１１１は、エフェクト（Ｃ）のＧＰＵ用エフェクトプログラムを記憶装置１６から読み出し、このＧＰＵ用エフェクトプログラムに、入出力バッファ３３−Ｉ，３３−Ｏのアドレス情報、エフェクト（Ｃ）のパラメータ、スレッド数、グリッド数などを引数として付加したエフェクト実行要求をＧＰＵ１２１に転送する（図４：Ｓ４０９、図６：Ｓ６０６）。
【００５８】
ＧＰＵ１２１は、このエフェクト実行要求を受けると、引数として取得した入出力バッファ３３−Ｉ，３３−Ｏの各アドレス情報をもとに、スレッド毎のアクセス先のアドレスをそれぞれ算出する（図７：Ｓ７０２）。この後、ＧＰＵ１２１は、スレッドの単位で、それぞれのアクセス先として算出された入力バッファ３３−Ｉ上のアドレスのデータに対して、引数として与えられたパラメータを参照しつつ、ＧＰＵ用エフェクトプログラムに基づくエフェクト処理を並列に実行し、その結果をそれぞれの書き出し先として算出された出力バッファ３３−Ｏ上のアドレスに書き出す（図７：Ｓ７０３）。この後、ＧＰＵ１２１は、エフェクト（Ｃ）の処理が完了した旨をバス１７を通じてＣＰＵ１１１に通知する（図４：Ｓ４０９Ｒ）。以上で、エフェクト（Ｃ）の処理が完了となる。
【００５９】
ＣＰＵ１１１は、エフェクト（Ｃ）の処理が完了したことの通知を受けると、出力バッファ３３−Ｏに保持された画像データを、映像編集プログラムによって設定されたＣＰＵメモリ１１２上の入力バッファ２１−Ｉに取り込む（図４：Ｓ４１０／Ｓ４１０Ｒ、図６：Ｓ６０７）。ＣＰＵメモリ１１２上の入力バッファ２１−Ｉに保持された画像データは記憶装置１６に記録される。
【００６０】
この後、ＣＰＵ１１１は記憶装置１６から次のフレームの画像データをＣＰＵメモリ１１２の出力バッファ２１−Ｏに読み込み、この出力バッファ２１−Ｏからエフェクト（Ａ）に割り当てられた入力バッファ３１−Ｉに画像データをバス１７を通じて転送する。以後、同様に、画像データに対してＧＰＵ部１２で各エフェクト処理が施され、ＣＰＵメモリ１１２の入力バッファ２１−Ｉに返ってくる。
【００６１】
［４．エフェクトの数、実行順序の変更］
次に、各エフェクトの入出力バッファの接続関係が一度設定された後でエフェクトの数、エフェクトの実行順序を変更する場合の動作を説明する。エフェクトの数、エフェクトの実行順序の変更は、例えば、次のような目的で行われる。たとえば、１つのシーン内の複数のフレーム映像に対して連続的にエフェクト処理が行われているとき、ＣＰＵ１１１はユーザからの指示に従ってエフェクト処理を停止させ、ユーザよりエフェクトの数、エフェクトの実行順序の変更内容を受け入れ、以降のフレームの画像データに対するエフェクト処理に変更内容を反映させる。
【００６２】
なお、エフェクトの数、エフェクトの実行順序の変更は表示装置１９の画面を通して行うことが可能である。例えば、ＣＰＵ１１１は、キャンネルするエフェクトをユーザに選択させたり、エフェクトの実行順序の変更の指示をユーザに入力させるための変更操作画面を表示する。ＣＰＵ１１１は、この変更操作画面上で操作入力装置１８を使ってユーザより入力された変更の指示に従って、ＣＰＵメモリ１１２に保存されたエフェクト設定情報を変更する。
【００６３】
図９は、３つのエフェクト（Ａ）、エフェクト（Ｂ）、エフェクト（Ｃ）のうちエフェクト（Ｂ）がユーザからの指示でキャンセルされることによってエフェクト設定情報が変更された場合のＣＰＵ部１１とＧＰＵ部１２との間でのエフェクト実行制御に関するシーケンス図である。
図１０は、エフェクト設定情報が変更された場合のＣＰＵ１１１によるＧＰＵエフェクトの実行制御の流れを示すフローチャートである。
【００６４】
仮にフレーム１からフレーム３００までの画像データをエフェクト対象の画像データとする。いまフレーム２００の画像データに対するエフェクト処理の実行中に、ユーザよりエフェクト処理の停止の指示が入力されたとする。ＣＰＵ１１１は、この指示を受けて、フレーム２００のエフェクト処理が完了したところでエフェクト処理を停止させる。
【００６５】
この後、ユーザより３つのエフェクト（Ａ）、エフェクト（Ｂ）、エフェクト（Ｃ）のうちエフェクト（Ｂ）をキャンセルするようにエフェクトの数を変更する要求が入力されたとする。ＣＰＵ１１１は、この変更要求に応じて、ＣＰＵメモリ１１２に保存されたエフェクト設定情報を変更する（図９：Ｓ９０１、図１０：Ｓ１００１）。ＣＰＵ１１１は、エフェクト設定情報が変更されると、この変更されたエフェクト設定情報をもとに、初期化処理でＧＰＵメモリ１２２に確保された入出力バッファをそのまま利用しつつ、それらの入出力バッファの接続情報のみを更新する（図１０：Ｓ１００２）。この後、エフェクト実行のためのサブルーチン（図６）が実行される。
【００６６】
図１１は更新された各エフェクトの入出力バッファの接続関係を示す図である。同図に示すように、更新後は、エフェクト（Ａ）に割り当てられた出力バッファ３１−Ｏの画像データがエフェクト（Ｃ）に割り当てられた入力バッファ３３−Ｉに転送されるように、出力バッファ３１−Ｏと入力バッファ３３−Ｉとの接続関係が設定される。
【００６７】
ＣＰＵ１１１は、フレーム２０１以降の画像データに対するエフェクト実行制御においては、更新された各エフェクトの入出力バッファの接続関係に基づいて各エフェクトの実行要求を生成する。したがって、エフェクト（Ｃ）のエフェクト実行要求時には、エフェクト（Ｃ）に割り当てられた入出力バッファ３３−Ｉ，３３−Ｏのアドレス情報ととともに、入力バッファ３３−Ｉへの画像データの入力元である出力バッファ３１−Ｏのアドレス情報がＧＰＵ１２１に通知される。これによりＧＰＵ１２１は、出力バッファ３１−Ｏの画像データを入力バッファ３３−Ｉに取り込み、この画像データに対してエフェクト処理を実行して、その結果を出力バッファ３３−Ｏに書き出すように制御を行うことが可能となる。
【００６８】
なお、複数のエフェクトのうち、キャンセルするエフェクトはどれでも自由に選択することができる。
図１２は３つのエフェクト（Ａ）、エフェクト（Ｂ）、エフェクト（Ｃ）のうちエフェクト（Ａ）をキャンセルするようにエフェクトの数が変更された場合の各エフェクトの入出力バッファの接続関係を示す図である。この場合には、ＣＰＵメモリ１１２の出力バッファ２１−らに保持された画像データがバス１７を通じてエフェクト（Ｂ）に割り当てられた入力バッファ３２−Ｉに転送されるように、ＣＰＵメモリ１１２の出力バッファ２１−Ｏと入力バッファ３２−Ｉとが接続される。
【００６９】
図１３は３つのエフェクト（Ａ）、エフェクト（Ｂ）、エフェクト（Ｃ）のうちエフェクト（Ｃ）をキャンセルするようにエフェクトの数が変更した場合の各エフェクトの入出力バッファの接続関係を示す図である。この場合には、エフェクト（Ｂ）に割り当てられた出力バッファ３２−Ｏに保持された画像データがＣＰＵメモリ１１２の入力バッファ２１−に転送されるように、出力バッファ３２−ＯとＣＰＵメモリ１１２の入力バッファ２１−Ｉとが接続される。
【００７０】
また、図１４は３つのエフェクト（Ａ）、エフェクト（Ｂ）、エフェクト（Ｃ）においてエフェクト（Ｂ）とエフェクト（Ｃ）の実行順序を入れ替えた場合の各エフェクトの入出力バッファの接続関係を示す図である。このように、複数のエフェクトの実行順序を変更する場合も同様に、変更されたエフェクト設定情報をもとに、初期化処理でＧＰＵメモリ１２２に確保された入出力バッファをそのまま利用しつつ、それらの入出力バッファの接続情報のみを変更すればよい。すなわち、ＣＰＵ１１１は、エフェクト（Ａ）に割り当てられた出力バッファ３１−Ｏに保持された画像データが、エフェクト（Ｃ）に割り当てられた入力バッファ３３−Ｉに転送されるように出力バッファ３１−Ｏと入力バッファ３３−Ｉとを接続する。また、ＣＰＵ１１１は、エフェクト（Ｃ）に割り当てられた出力バッファ３３−Ｏに保持された画像データが、エフェクト（Ｂ）に割り当てられた入力バッファ３２−Ｉに転送されるように出力バッファ３３−Ｏと入力バッファ３２−Ｉとを接続する。さらに、ＣＰＵ１１１は、エフェクト（Ｂ）に割り当てられた出力バッファ３２−Ｏに保持された画像データがＣＰＵメモリ１１２の入力バッファ２１−Ｉに転送されるように、出力バッファ３２−ＯとＣＰＵメモリ１１２の入力バッファ２１−Ｉとを接続する。その他の実行順序の変更の場合も同様に対応することができる。
【００７１】
以上のように、本実施形態によれば、画像データに対してＧＰＵ１２１により複数のエフェクト処理を連続してかける際、ＧＰＵメモリ１２２上で各エフェクトに割り当てられた入出力バッファ間で画像データを入出力して複数のエフェクトを連続して行うことことで、ＣＰＵメモリ１１２とＧＰＵメモリ１２２との間での画像データをやりとりを最小回数（２回）に抑えることができる。これにより、エフェクト処理の高速化を図れる。
また、本実施形態によれば、エフェクト毎の入出力バッファがＧＰＵメモリ１２２に確保された後で、ＧＰＵ１２１に実行させるエフェクトの数を減らしたり、エフェクトの実行順序を随時変更することができる。また、エフェクトの数の低減、エフェクトの実行順序の変更に際して、改めてＧＰＵメモリ１２２の初期化処理によって必要な入出力バッファを確保しなおす必要がないので、エフェクトの数の低減、エフェクトの実行順序の変更を実際のエフェクト処理に速やかに反映させることができ、編集処理全体の効率化を期待できる。
【００７２】
＜変形例１＞
上記の実施形態では、ＧＰＵ１２１に１回のエフェクト処理を実行させる毎に、そのエフェクトに割り当てられた入出力バッファのアドレス情報をＧＰＵ１２１に転送することとしたが、これに限定されない。例えば、ＧＰＵ１２１に実行させるすべてのエフェクトに割り当てられた各入出力バッファのアドレス情報を、初回のエフェクト処理の実行前、あるいはＣＰＵメモリ１１２からＧＰＵメモリ１２２にエフェクト対象の画像データが転送される前に、まとめてＧＰＵ１２１に通知してもよい。
【００７３】
なお、本発明は以上説明した実施の形態には限定されるものではなく、本発明の技術思想の範囲内で種々の変形が可能である。
【符号の説明】
【００７４】
１０    情報処理装置
１１    ＣＰＵ部
１２    ＧＰＵ部
１１１    ＣＰＵ
１１２    ＣＰＵメモリ
１２１    ＧＰＵ
１２２    ＧＰＵメモリ
【図１】
0005510120.tif 000002
【図２】
0005510120.tif 000003
【図３】
0005510120.tif 000004
【図４】
0005510120.tif 000005
【図５】
0005510120.tif 000006
【図６】
0005510120.tif 000007
【図７】
0005510120.tif 000008
【図８】
0005510120.tif 000009
【図９】
0005510120.tif 000010
【図１０】
0005510120.tif 000011
【図１１】
0005510120.tif 000012
【図１２】
0005510120.tif 000013
【図１３】
0005510120.tif 000014
【図１４】
0005510120.tif 000015