(58)【調査した分野】(Int.Cl.,DB名)
前記バッチ処理を実行するステップは、前記複数の処理単位の少なくとも1つについて、前記画像処理後の前記複数の静止画を含む動画ファイルを生成するステップを含む、
請求項1から4のいずれかに記載の画像処理プログラム。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1の方式では、バッチ処理に要する時間が著しく長くなることが考えられる。例えば、余りに多数の静止画が処理対象とされたり、各静止画に対して負荷の高い画像処理がプログラムされたりするような場合である。かかる場合、ユーザは、ある進行中のバッチ処理のせいで、別の作業を進められなくなったり、逆に、別の作業を進めるために、進行中のバッチ処理を中止しなければならなくなったりする等の問題が生じ得る。かかる問題は、ユーザが効率よく画像処理の作業を行うことを妨げ得る。
本発明は、ユーザによる画像処理の作業の効率性を向上させる画像処理プログラムおよび画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【0005】
本発明の第1観点に係る画像処理プログラムは、予約受付ステップと、バッチ処理を実行するステップとをコンピュータに実行させる。予約受付ステップは、複数の処理単位の各々について、画像処理の予約をユーザから受け付けるステップである。バッチ処理では、複数の処理単位についての複数の予約に従って、複数の処理単位が一括して画像処理される。各処理単位は、複数の静止画を含む。バッチ処理時に、各処理単位に含まれる複数の静止画は、別々に画像処理される。
【0006】
ここでは、ユーザは、複数の処理単位の各々について、画像処理を予約することができる。1の処理単位には、複数の静止画が含まれる。例えば、ユーザは、複数の静止画を処理単位として指定し、かつ、それらの複数の静止画に施す画像処理を指定する予約の作業を行う。そして、ユーザは、複数回、同様の予約の作業を繰り返す。複数の予約の後、それらの複数の予約に従って、複数の処理単位がバッチ処理される。バッチ処理中、1の処理単位に含まれる複数の静止画に対し、別々に画像処理がされる。
【0007】
つまり、ユーザは、様々な処理単位に対して様々な画像処理を予約しておくことができる。その結果、昼休みや夜間等の空き時間中に、画像処理を進めることが可能になる。従って、ユーザによる画像処理の作業の効率性が向上する。
【0008】
また、バッチ処理は、予約受付ステップの終了後に実行されてもよいし、予約受付ステップと並列に実行されてもよい。後者の態様とは、例えば、先行する処理単位についての予約の終了後にバッチ処理が開始し、バッチ処理と並列に次の処理単位についての予約を行うような場合である。
【0009】
なお、上記のとおり、特許文献1にも、「バッチ処理」の考え方を読み取ることができる。しかし、特許文献1のバッチ処理と、本発明に係るバッチ処理とは、性質が異なる。具体的には、特許文献1のバッチ処理とは、1の処理単位に含まれる複数の静止画に対して、同じ態様で画像処理するものである。一方、本発明に係るバッチ処理とは、複数の処理単位に対して、それぞれの態様で画像処理するものである。
【0010】
本発明の第2観点に係る画像処理プログラムは、第1観点に係る画像処理プログラムであって、複数の処理単位の少なくとも1つは、複数の静止画ファイルの集合である。
【0011】
ここでは、複数の静止画ファイルの集合に対し、画像処理を予約することができる。なお、本明細書において、静止画ファイルとは、静止画形式のデータファイルのことを言う。
【0012】
本発明の第3観点に係る画像処理プログラムは、第1観点又は第2観点に係る画像処理プログラムであって、複数の処理単位の少なくとも1つは、動画ファイルである。
【0013】
ここでは、動画ファイルに含まれる複数の静止画のフレームに対し、画像処理を予約することができる。なお、本明細書において、動画ファイルとは、動画形式のデータファイルのことを言う。
【0014】
本発明の第4観点に係る画像処理プログラムは、第1観点から第3観点のいずれかに係る画像処理プログラムであって、定義受付ステップをさらにコンピュータに実行させる。定義受付ステップは、1以上の画像処理モジュールをユーザに選択させることにより、予約に用いられる画像処理の定義をユーザから受け付けるステップである。
【0015】
ここでは、ユーザは、1以上の画像処理モジュールを選択することにより、予約に用いられる画像処理を定義することができる。従って、ユーザは、画像処理の予約を簡単に行うことができる。画像処理モジュールとは、例えば、ノイズ除去、シャープネス、明るさ/コントラスト/彩度調整、又はモザイクの付加等の画像処理を実行するモジュールである。
【0016】
なお、定義受付ステップは、予約受付ステップに先立って実行されてもよいし、予約受付ステップと並列に実行されてもよい。言い換えると、ユーザは、画像処理の予約の前に、又は予約中に、1以上の画像処理モジュールの組み合わせに係る画像処理を定義することができる。
【0017】
本発明の第5観点に係る画像処理プログラムは、第1観点から第4観点のいずれかに係る画像処理プログラムであって、バッチ処理を実行するステップは、動画ファイル生成ステップを含む。動画ファイル生成ステップは、複数の処理単位の少なくとも1つについて、画像処理後の複数の静止画を含む動画ファイルを生成するステップである。
【0018】
ここでは、画像処理後の複数の静止画が、1の動画ファイルとして生成される。従って、ユーザは、画像処理後の動画を簡単に確認したり、利用したりすることができる。
【0019】
本発明の第6観点に係る画像処理プログラムは、第1観点から第5観点のいずれかに係る画像処理プログラムであって、選択受付ステップをさらにコンピュータに実行させる。選択受付ステップは、複数の処理単位についての複数の予約の中から、任意の予約の選択を受け付けるステップである。バッチ処理では、任意の予約に係る複数の処理単位が一括して画像処理される。
【0020】
ここでは、ユーザは、登録済みの予約の中から、実際に実行したい任意の予約を選択することができる。その結果、例えば、ユーザは、特定の予約をよく使用する予約のテンプレートとして登録しておき、そのテンプレートを使用したくない場合には、その予約を実行しないという選択が可能である。従って、画像処理の作業の効率性がさらに向上する。
【0021】
本発明の第7観点に係る画像処理装置は、予約受付部と、画像処理部とを備える。予約受付部は、複数の処理単位の各々について、画像処理の予約をユーザから受け付ける。画像処理部は、バッチ処理を実行する。バッチ処理では、複数の処理単位についての複数の予約に従って、複数の処理単位が一括して画像処理される。各処理単位は、複数の静止画を含む。画像処理部は、バッチ処理時に、各処理単位に含まれる複数の静止画を別々に画像処理する。
【0022】
ここでは、ユーザは、複数の処理単位の各々について、画像処理を予約することができる。1の処理単位には、複数の静止画が含まれる。例えば、ユーザは、複数の静止画を処理単位として指定し、かつ、それらの複数の静止画に施す画像処理を指定する予約の作業を行う。そして、ユーザは、複数回、同様の予約の作業を繰り返す。複数の予約の後、それらの複数の予約に従って、複数の処理単位がバッチ処理される。バッチ処理中、1の処理単位に含まれる複数の静止画に対し、別々に画像処理がされる。
【0023】
つまり、ユーザは、様々な処理単位に対して様々な画像処理を予約しておくことができる。その結果、昼休みや夜間等の空き時間中に、画像処理を進めることが可能になる。従って、ユーザによる画像処理の作業の効率性が向上する。
【発明の効果】
【0024】
本発明によれば、ユーザは、様々な処理単位に対して様々な画像処理を予約しておくことができる。その結果、昼休みや夜間等の空き時間中に、画像処理を進めることが可能になる。従って、ユーザによる画像処理の作業の効率性が向上する。
【発明を実施するための形態】
【0026】
以下、図面を参照しつつ、本発明の一実施形態に係る画像処理プログラムおよび画像処理装置について説明する。
【0027】
<1.画像処理装置の概要>
図1に示す画像処理装置1は、本発明に係る画像処理装置の一実施形態である。画像処理装置1は、汎用のパーソナルコンピュータである。画像処理装置1には、本発明に係る画像処理プログラムの一実施形態である画像処理プログラム2がインストールされている。画像処理プログラム2は、動画および静止画に対する画像処理を支援するためのアプリケーションソフトウェアである。画像処理プログラム2は、画像処理装置1に後述する動作に含まれるステップを実行させる。
【0028】
画像処理装置1は、ディスプレイ10、入力部20、記憶部30および制御部40を有する。ディスプレイ10と、入力部20と、記憶部30と、制御部40とは、互いにバス線5で接続されており、相互に通信可能である。本実施形態では、ディスプレイ10は、液晶ディスプレイである。入力部20は、マウスおよびキーボート等から構成される。記憶部30は、ハードディスク等から構成される。制御部40は、CPU、ROMおよびRAM等から構成される。
ディスプレイ10は、後述する画面等をユーザに対し表示する。入力部20は、画像処理装置1に対するユーザからの操作を受け付ける。
【0029】
記憶部30内には、画像処理プログラム2が格納されている。記憶部30内には、ソフトウェア管理領域50が確保されている。ソフトウェア管理領域50は、画像処理プログラム2が使用する領域である。ソフトウェア管理領域50内には、オリジナル画像領域51、加工ファイル領域52、ヒストリー領域53、プラン領域54および表示フレーム領域55が確保されている。ソフトウェア管理領域50内には、予約管理テーブル56が格納されている。各領域51〜55およびテーブル56の役割については、後述する。
【0030】
制御部40は、記憶部30内に格納されている画像処理プログラム2を読み出して実行することにより、仮想的に画像処理部41、プラン定義部42および予約管理部43として動作する。各部41〜43の動作については、後述する。
【0031】
<2.画像処理装置の構成および動作の詳細>
制御部40は、ユーザが入力部20を介して所定の操作を行ったことを検知すると、画像処理プログラム2を起動する。画像処理プログラム2が起動されると、基本画面W1(
図2参照)がディスプレイ10上に表示される。なお、制御部40は、ディスプレイ10上に表示される画面、ウィンドウ、ボタンその他の全ての要素の表示を制御する。
【0032】
<2−1.画像データの取り込み>
基本画面W1は、オリジナル画像領域51への画像データの取り込みの命令をユーザから受け付ける。オリジナル画像領域51へ取り込まれた画像データは、後述する画像処理の対象になる。制御部40は、静止画ファイル又は動画ファイルから、オリジナル画像領域51へ画像データを取り込む。
【0033】
静止画ファイルから画像データを取り込む場合、ユーザは、入力部20を操作することにより、1の静止画ファイルを指定するか、又は1のフォルダを指定する。前者の場合、制御部40は、その静止画ファイルの記憶部30内のアドレスパスおよびファイル名をユーザに入力させる。後者の場合、制御部40は、そのフォルダの記憶部30内のアドレスパスおよびフォルダ名をユーザに入力させる。その後、制御部40は、指定された1の静止画ファイル又は指定された1のフォルダ内の全ての静止画ファイルを、オリジナル画像領域51へ静止画ファイル群として取り込む。なお、本明細書において、「群」という場合には、その要素数は複数とは限らず、1つであってもよい。
【0034】
一方、動画ファイルから画像データを取り込む場合、ユーザは、入力部20を操作することにより、1の動画ファイルの記憶部30内のアドレスパスおよびファイル名を入力する。制御部40は、ユーザが動画ファイルを指定したことを検知すると、基本画面W1上に動画取込みウィンドウ(図示されない)を重ねて表示させる。動画取込みウィンドウは、指定された動画ファイルの全タイムラインのうち、任意の長さのタイムラインの選択をユーザから受け付ける。制御部40は、ユーザが入力部20を介して任意の長さのタイムラインの選択を行ったことを検知すると、その選択に対応する静止画ファイル群を生成する。この静止画ファイル群は、ユーザの選択に係るタイムラインの動画に含まれるフレーム群に1対1で対応している。その後、制御部40は、この静止画ファイル群をオリジナル画像領域51へ取り込む。
【0035】
従って、本実施形態では、後述する画像処理の対象は、動画ファイルではなく、静止画ファイルである。静止画ファイルは、オリジナル画像領域51へファイル単位、フォルダ単位、あるいは動画ファイルの全部又は一部のタイムライン単位で取り込まれる。
【0036】
<2−2.静止画ファイル群の再生>
オリジナル画像領域51へ静止画ファイル群が取り込まれると、制御部40は、基本画面W1上に表示ウィンドウW2(
図3参照)を重ねて表示させる。表示ウィンドウW2は、オリジナル画像領域51への静止画ファイル群の取り込み動作の数だけ、表示される。
【0037】
表示ウィンドウW2内には、まず、オリジナル画像領域51へ取り込まれた静止画ファイル群に含まれる1の静止画ファイル(例えば、タイムライン上で先頭のフレームに対応する静止画ファイル)が表示される。なお、制御部40は、静止画ファイル群が動画ファイルに由来するものではなく、静止画ファイルに由来するものであっても、静止画ファイル群に含まれる静止画ファイルをタイムラインに沿って配列されているものと認識する。配列は、ファイルの属性(ファイル名、作成日時、更新日時等)から自動的に判断される。従って、以下では、静止画をフレームと呼ぶ。
【0038】
後述するとおり、表示ウィンドウW2内に表示されるフレームは、ユーザの操作を受けて切り替わる。制御部40は、表示ウィンドウW2内に現在表示されているフレームの識別情報(例えば、そのフレームに対応する静止画ファイルの記憶部30内のアドレスパスおよびファイル名など)を、表示フレーム領域55内でリアルタイムに管理する。
【0039】
制御部40は、オリジナル画像領域51へ取り込まれた静止画ファイル群を、表示ウィンドウW2内で動画として再生可能である。
図3に示すとおり、基本画面W1上には、ウィンドウ選択プルダウンメニューT1、再生ボタンT2、コマ送りボタンT3、コマ戻しボタンT4およびタイムラインバーT5が配置されている。
【0040】
表示ウィンドウW2が複数存在する場合であっても、アクティブな表示ウィンドウW2は1つである。ウィンドウ選択プルダウンメニューT1は、どの表示ウィンドウW2をアクティブとするかの選択をユーザから受け付ける。以下、アクティブな表示ウィンドウW2に対応する静止画ファイル群を、アクティブファイル群と呼ぶ。
【0041】
再生ボタンT2は、アクティブファイル群の動画としての再生の命令をユーザから受け付ける。制御部40は、ユーザが入力部20を介して再生ボタンT2を押下したことを検知すると、アクティブな表示ウィンドウW2内に、アクティブファイル群に含まれるフレームをタイムラインに沿って順次コマ送りの形式で表示させる。また、再生ボタンT2は、再生の停止の命令をユーザから受け付ける。制御部40は、再生中にユーザが入力部20を介して再生ボタンT2を押下したことを検知すると、アクティブな表示ウィンドウW2内の表示を、その時表示されていたフレームに固定する。
【0042】
コマ送りボタンT3、コマ戻しボタンT4はそれぞれ、アクティブな表示ウィンドウW2内の表示を、アクティブファイル群のタイムラインに沿って1つ後、1つ前のフレームへ切り替える命令をユーザから受け付ける。
【0043】
タイムラインバーT5は、アクティブファイル群のタイムラインを図式的に表す。タイムラインバーT5は、そのバーが延びる方向に、アクティブファイル群に含まれるフレーム数で等分に分割されている。タイムラインバーT5上の左からn番目の分割領域は、アクティブファイル群のタイムライン上でn番目のフレームに対応する(nは、自然数)。
【0044】
図3に示すように、タイムラインバーT5は、選択フレーム群に対応する分割領域A1と、非選択フレーム群に対応する分割領域A2とを異なる態様で表示する。選択フレーム群とは、アクティブファイル群に含まれるフレームのうち、現在選択されている1以上のフレームである。非選択フレーム群とは、アクティブファイル群に含まれるフレームのうち、現在選択されていない1以上のフレームである。本実施形態では、領域A1は、薄いトーンの色で表示され、領域A2は、濃いトーンの色で表示される。ユーザは、入力部20を介してタイムラインバーT5を操作することにより、アクティブファイル群に含まれるフレームうち、任意のフレームを任意の数だけ選択することができる。具体的には、ユーザは、タイムラインバーT5上で選択したいフレームに対応する分割領域を選択する。分割領域は、同時に複数選択が可能である。制御部40は、選択フレーム群を後述される画像処理の対象として認識する。なお、ユーザによりタイムラインバーT5上の分割領域が選択される度に、アクティブな表示ウィンドウW2内の表示は、最新に選択された分割領域に対応するフレームに切り替わる。
【0045】
<2−3.画像処理>
以下、選択フレーム群に対する画像処理について説明する。
画像処理部41は、ノイズ除去、シャープネス、超解像、明るさ/コントラスト/彩度調整、階調の反転、画像平均、画像解像度、回転、文字/矢印/モザイクの付加、超解像拡大/連続などの複数の画像処理モジュールを実行可能である。画像処理モジュールは、画像処理プログラム2に組み込まれている。
【0046】
ユーザは、入力部20を介して基本画面W1を操作することにより、画像処理モジュールの中から任意のものを、任意の順番に、任意の回数だけ選択することが可能である。必要であれば、ユーザは、画像処理モジュールの選択に併せて、その画像処理モジュールの実行時に用いられるパラメータを入力する。画像処理部41は、ユーザが画像処理モジュールを1つ選択したことを検知する度に、選択フレーム群に対しその画像処理モジュールを実行する。なお、選択フレーム群に対し画像処理モジュールを実行するとは、選択フレーム群に含まれる各フレームに対しその画像処理モジュールを実行することである。
【0047】
選択フレーム群に対し画像処理モジュールが1回、2回、3回,・・・と、順次実行されてゆくにつれて、選択フレーム群は、第1次、第2次、第3次,・・・と、順次加工されてゆく。第0次選択フレーム群とは、オリジナル画像領域51に保存されている選択フレーム群である。第(n+1)次選択フレーム群とは、第n次選択フレーム群に対し画像処理モジュールを実行した後の選択フレーム群である(nは、0以上の整数)。第2次以降の選択フレーム群に対応する静止画ファイルはそれぞれ、加工ファイル領域52内に別のファイルとして保存される。
【0048】
選択フレーム群のヒストリーの情報は、その選択フレーム群に対応する静止画ファイルに関連付けて、ヒストリー領域53内に保存される。ヒストリーとは、画像処理モジュールの実行の履歴である。ヒストリーの情報とは、どの画像処理モジュールがどの順番でどのようなパラメータを用いて実行されたのかを示す情報である。従って、ヒストリー領域53を参照することにより、加工ファイル領域52内に保存されている静止画ファイルがどのような画像処理を経て生成されたものであるかが判断可能である。
【0049】
なお、ユーザの操作を受けて、選択フレーム群の選択の状態が解除されたとしても、加工ファイル領域52およびヒストリー領域53内のその選択フレーム群の静止画ファイルおよびヒストリーの情報は、削除されない。
【0050】
図2および
図3に示すように、制御部40は、基本画面W1上にヒストリーウィンドウW3を重ねて表示可能である。ヒストリーウィンドウW3内には、アクティブな表示ウィンドウW2内に現在表示されているフレームのヒストリーの詳細が表示される(
図4参照)。アクティブな表示ウィンドウW2内に現在表示されているフレームは、表示フレーム領域55を参照することにより判断される。ヒストリーウィンドウW3内に表示されるヒストリーの詳細は、ヒストリー領域53を参照することにより判断される。
【0051】
<2−4.プランの登録および実行>
ユーザは、入力部20を操作することにより、プランを登録することが可能である。プランとは、1以上の画像処理モジュールを特定の順番で、その実行時に用いられる特定のパラメータとともに組み合わせたものである。プラン定義部42は、ユーザがプランの登録の操作を行ったことを検知すると、プランの定義ファイルを作成し、プラン領域54内に保存する。プランの定義ファイルとは、どの画像処理モジュールをどの順番でどのようなパラメータを用いて実行するのかを示す情報である。
【0052】
図2および
図3に示すように、制御部40は、基本画面W1上にプランウィンドウW4を重ねて表示可能である。プランウィンドウW4内には、登録済みの全てのプランの詳細が表示される(
図5参照)。プランウィンドウW4内に表示されるプランの詳細は、プラン領域54を参照することにより判断される。
【0053】
ユーザは、プランの登録時に、ヒストリーを援用することが可能である。具体的には、ユーザは、入力部20を操作することにより、アクティブな表示ウィンドウW2内に、援用するヒストリーを有するフレームを表示させる。これに伴い、ヒストリーウィンドウW3内には、援用するヒストリーの詳細が表示される。この状態で、ユーザがプランウィンドウW4上の機能ボタンT6に対し所定の操作を行うと、援用するヒストリーと同じ画像処理モジュールを同じ順番で同じパラメータとともに組み合わせたプランが登録される。
【0054】
ユーザは、入力部20を操作することにより、プランを変更および削除することも可能である。プラン定義部42は、ユーザがプランウィンドウW4上でプランの変更又は削除の操作を行ったことを検知すると、そのプランの定義ファイルを更新し、又はプラン領域54内から削除する。
【0055】
ユーザは、入力部20を操作することにより、選択フレーム群に対し、登録済のプランの中の任意のものを選択し、実行することが可能である。画像処理部41は、ユーザがプランウィンドウW4上でプランを1つ選択し、その実行を命令したことを検知すると、選択フレーム群に対し、そのプランの定義に係る画像処理を実行する。具体的には、画像処理部41は、プラン領域54を参照し、そのプランの定義ファイルにより定義されるとおりの画像処理モジュールを定義されるとおりの順番で定義されるとおりのパラメータを用いて実行する。
【0056】
プランは、一度登録されると、様々な選択フレーム群に繰り返し適用することができる。従って、ユーザは、よく使用する、特定の態様での画像処理モジュールの組み合わせをプランとして登録しておくことにより、画像処理の作業を簡易に行うことができる。
【0057】
<2−5.画像処理の予約およびバッチ処理>
ユーザは、入力部20を操作することにより、様々な処理単位に対して様々な画像処理を予約し、予約された画像処理をバッチ処理することが可能である。なお、本実施形態では、1の処理単位とは、1のフォルダ内の静止画ファイル群を意味する。1の予約とは、静止画ファイル群が格納される1のフォルダを指定し、その静止画ファイル群に対する画像処理として1のプランを指定することである。
【0058】
以下、
図6を参照しつつ、画像処理の予約からバッチ処理が終了するまでの処理について説明する。基本画面W1は、ディスプレイ10上に予約一覧ウィンドウW8(
図8参照)を表示させる命令をユーザから受け付ける。
図6の処理は、予約一覧ウィンドウW8が表示された時に開始する。
【0059】
予約一覧ウィンドウW8上には、追加ボタンT81、実行ボタンT82、削除ボタンT83、編集ボタンT85および予約一覧テーブルT84が配置されている。予約一覧テーブルT84は、登録済みの予約の一覧を表示する。また、予約一覧テーブルT84は、登録済みの予約の中から、実際に実行する予約の選択をユーザから受け付ける。具体的には、ユーザは、
図8に示される予約一覧テーブルT84の名称欄のチェックボックス内でチェックを追加する又は外すことにより、登録済みの各予約について、実際に実行するか否かを指示することができる。追加ボタンT81は、ユーザが新たな予約を1つ登録したい時に押すボタンである。実行ボタンT82は、ユーザが登録済みの予約(ただし、予約一覧テーブルT84内でチェックされているものに限る。)をバッチ処理したい時に押すボタンである。削除ボタンT83は、ユーザが登録済みの予約を削除したい時に押すボタンである。編集ボタンT85は、ユーザが登録済みの予約を編集したい時に押すボタンである。
【0060】
まず、ステップS1では、制御部40は、条件C1、条件C2、条件C3又は条件C4のいずれが満たされるかを判定する。条件C1とは、ユーザにより追加ボタンT81が押下されたことである。条件C2とは、1以上の予約が登録されている状態で、ユーザにより実行ボタンT82が押下されたことである。条件C3とは、1以上の予約が選択されている状態で、ユーザにより削除ボタンT83が押下されたことである。条件C4とは、1の予約が選択されている状態で、ユーザにより編集ボタンT85が押下されたことである。予約の選択は、予約一覧テーブル84上の、その予約の詳細を表示しているエリアを選択することにより行われる。実行ボタンT82は、登録済みの予約が存在しない状態では、無効化される。削除ボタンT83は、予約が選択されていない状態では、無効化される。条件C1が満たされる場合には、処理がステップS2に進み、条件C2が満たされる場合には、処理がステップS3に進み、条件C3が満たされる場合には、処理がステップS4に進み、条件C4が満たされる場合には、処理がステップS5に進む。条件C1〜C4がいずれも満たされない場合には、ステップS1が繰り返される。
【0061】
ステップS2では、制御部40は、ディスプレイ10上に予約詳細ウィンドウW9(
図9参照)を表示させる。予約詳細ウィンドウW9は、新たな1の予約の登録をユーザから受け付ける。予約詳細ウィンドウW9上には、予約名称入力エリアD1、プラン選択エリアD2、入力フォルダ選択エリアD3、出力フォルダ選択エリアD4、出力ファイル名設定エリアD5、動画出力選択エリアD6、FPS設定エリアD7、動画名設定エリアD8、登録ボタンD9およびキャンセルボタンD10が配置されている。
【0062】
予約名称入力エリアD1は、現在登録しようとしている予約の名称の入力をユーザから受け付ける。プラン選択エリアD2は、プランの定義ファイルの記憶部30内のアドレスパスおよびファイル名の入力をユーザから受け付ける。エリアD2で指定されるプランは、プラン領域54内に登録済みのプランの中から選択される任意の1のプランである。入力フォルダ選択エリアD3は、1のフォルダの記憶部30内のアドレスパスの入力をユーザから受け付ける。エリアD3で指定されるフォルダは、処理前ファイル群が格納されているフォルダである。処理前ファイル群とは、現在登録しようとしている予約に係る画像処理の対象となる静止画ファイル群である。出力フォルダ選択エリアD4は、1のフォルダの記憶部30内のアドレスパスの入力をユーザから受け付ける。エリアD4で指定されるフォルダは、処理後ファイル群が出力されるべきフォルダである。処理後ファイル群とは、現在登録しようとしている予約に係る画像処理の実行結果となる静止画ファイル群である。
【0063】
出力ファイル名設定エリアD5は、文字列およびその文字列が付される位置(前又は後)の設定をユーザから受け付ける。エリアD5で設定される情報は、処理後ファイル群の静止画ファイルの命名に用いられる。動画出力選択エリアD6は、動画ファイルの出力の有無の選択をユーザから受け付ける。FPS設定エリアD7は、動画ファイルの出力が選択された場合に、その動画ファイルに係る動画のフレームレートの設定をユーザから受け付ける。動画名設定エリアD8は、動画ファイルの出力が選択された場合に、その動画ファイルの出力先となる記憶部30内のアドレスパスおよびファイル名の入力をユーザから受け付ける。
【0064】
続いて、予約管理部43は、ユーザがエリアD1〜D8に適切な情報を入力した後、登録ボタンD9を押したことを検知すると、予約管理テーブル56(
図7参照)内にレコードを1つ追加する。予約管理テーブル56内のレコードは、登録済みの予約の数に1対1で対応する。予約管理テーブル56は、ID、予約名称、プランファイル、入力フォルダ、出力フォルダ、文字列、前後フラグ、動画出力フラグ、フレームレート、動画ファイルおよび実行フラグのフィールドを有する。
【0065】
IDフィールドには、予約管理部43が自動的に付与する予約のID番号が格納される。予約名称フィールドには、予約名称入力エリアD1で指定された予約の名称が格納される。プランファイルフィールドには、プラン選択エリアD2で指定されたプランの定義ファイルのアドレスパスおよびファイル名が格納される。入力フォルダフィールドには、入力フォルダ選択エリアD3で指定されたフォルダのアドレスパスが格納される。出力フォルダフィールドには、出力フォルダ選択エリアD4で指定されたフォルダのアドレスパスが格納される。文字列フィールドには、出力ファイル名設定エリアD5で指定された文字列が格納される。前後フラグフィールドには、出力ファイル名設定エリアD5で指定された文字列が付される位置が格納される。動画出力フラグフィールドには、動画出力選択エリアD6で指定された動画ファイルの出力の有無を示すフラグが格納される。フレームレートフィールドには、FPS設定エリアD7で指定されたフレームレートが格納される。動画ファイルフィールドには、動画名設定エリアD8で指定された動画ファイルの出力先となるアドレスパスおよびファイル名が格納される。実行フラグフィールドには、予約名称入力エリアD1で指定された予約を実際に実行するか否かを示すフラグが格納される。実行フラグフィールドのデフォルト値は、実際に実行することを示す「1」である。その後、ユーザが予約一覧テーブルT84を操作し、その予約に対応するチェックボックスのチェックを外すと、実行フラグフィールドの値は「0」に変更され、再度チェックを追加すると、「1」に変更される。
【0066】
ステップS2の終了後、処理はステップS1に戻る。従って、ステップS1でユーザが追加ボタンT81を再度押し、続くステップS2で予約の登録を繰り返すことにより、複数の予約が登録される。その結果、予約管理テーブル56内には、複数のレコードが格納される。
【0067】
ステップS3では、画像処理部41は、バッチ処理を実行する。バッチ処理とは、登録済みの1以上の予約に係る画像処理を一括して実行する処理である。具体的には、まず、画像処理部41は、予約管理テーブル56からレコードを1つ取り出す。続いて、画像処理部41は、そのレコードの内容に従って、画像処理を実行する。その後、画像処理部41は、予約管理テーブル56内の残りのレコードについて、同様の処理を繰り返す。
【0068】
1のレコードに係る画像処理は、以下のように実行される。まず、画像処理部41は、実行フラグフィールドを参照し、そのレコードに対応する予約を実際に実行するか否かを判断する。画像処理部41は、実際に実行すると判断した場合には、以下の処理を実行し、実行しないと判断した場合には、予約管理テーブル56から次のレコードを取り出す。画像処理部41は、プランファイルフィールドを参照し、プランを特定する。次に、画像処理部41は、入力フォルダフィールドを参照し、処理前ファイル群を特定する。その後、画像処理部41は、特定された処理前ファイル群に対し、特定されたプランに係る画像処理を実行する。具体的には、画像処理部41は、プラン領域54を参照し、特定されたプランの定義ファイルにより定義されるとおりの画像処理モジュールを定義されるとおりの順番で定義されるとおりのパラメータを用いて実行する。この時、処理前ファイル群に含まれる静止画ファイルはそれぞれ、別々に画像処理される。
【0069】
その結果、処理前ファイル群と1対1で対応する処理後ファイル群が生成される。画像処理部41は、出力フォルダフィールドの値より特定されるフォルダ内に、処理後ファイル群を保存する。画像処理部41は、処理後ファイル群の静止画ファイルに、前か後に共通の文字列を含むようなファイル名を付与する。共通の文字列および前か後かは、それぞれ文字列フィールドおよび前後フラグフィールドを参照して判断される。
【0070】
その後、画像処理部41は、動画出力フラグフィールドを参照し、動画ファイルの出力の有無を判断する。画像処理部41は、動画ファイルを出力すると判断した場合には、フレームレートフィールドを参照し、フレームレートを特定する。続いて、画像処理部41は、特定されたフレームレートで、処理後ファイル群に含まれる静止画ファイルをタイムラインに沿って合成した動画ファイルを生成する。タイムラインは、静止画ファイルの属性(ファイル名、作成日時、更新日時等)から判断される。次に、画像処理部41は、動画ファイルフィールドを参照し、動画ファイルの出力先となるフォルダおよびファイル名を特定する。画像処理部41は、特定されたフォルダ内に生成された動画ファイルを保存し、特定されたファイル名を付与する。
ステップS3の終了後、
図6の処理は終了する。
【0071】
ステップS4では、予約管理部43は、予約の削除を行う。具体的には、予約管理部43は、予約管理テーブル56から、予約一覧テーブルT84上で選択されている予約に対応するレコードを削除する。ステップS4の終了後、処理はステップS1に戻る。
【0072】
ステップS5では、予約管理部43は、予約の編集を行う。具体的には、予約管理部43は、予約管理テーブル56から、予約一覧テーブルT84上で選択されている予約に対応するレコードを取り出す。制御部40は、ディスプレイ10上に予約詳細ウィンドウW9を表示させる。この時表示されるエリアD1〜D8には、デフォルト値として、取り出されたレコードに格納されている値に従った情報が表示される。その後、予約管理部43は、ユーザがエリアD1〜D8の値を変更したことを検知すると、取り出されたレコードのフィールドの値を適宜変更する。ステップS5の終了後、処理はステップS1に戻る。
【0073】
<3.用途>
上記のとおり、画像処理プログラム2は、静止画又は動画ファイルのどちらから画像データを取り込もうとも、その後、画像データを静止画ファイル群として管理する。従って、画像処理プログラム2は、同じタイムラインの中の任意のフレームを任意に画像処理したいというユーザの要望に容易に応えることができる。また、画像処理プログラム2は、静止画ファイル群を動画として再生する機能を有している。その結果、画像データが画像処理プログラム2内で静止画ファイル群として取り扱われようとも、ユーザは、その画像データを動画として認識することができる。従って、画像処理プログラム2は、動画の解析や編集等を行う場面で特に有用である。
【0074】
画像処理プログラム2は、多種多様な動画に対する画像処理を取り扱うことができるが、例えば、警察等の機関が防犯カメラ等の画像を解析するのにも利用され得る。本実施形態に係る画像処理の予約およびバッチ処理の機能は、同じ又は異なる事件の捜査のために、同時に多数の防犯カメラの映像が解析されなければならないような場合等に活用され得る。
【0075】
<4.特徴>
<4−1>
上記実施形態では、画像処理装置1は、ステップS2を複数回実行し、その後、ステップS3を実行することができる。複数回のステップS2は、複数のフォルダの各々について、プランの予約をユーザから受け付けるステップである。ステップS3では、複数のフォルダについての複数の予約に従って、複数のフォルダ内の静止画ファイルが一括して画像処理される。バッチ処理中、各フォルダに含まれる複数の静止画ファイルは、別々に画像処理される。
【0076】
ユーザは、複数のフォルダの各々について、プランを予約することができる。例えば、ユーザは、複数のフォルダを用意し、各フォルダに複数の静止画ファイルを格納する。次に、ユーザは、用意した複数のフォルダの1つを指定し、かつ、プランを1つ指定する予約の作業を行う。そして、ユーザは、複数回、同様の予約の作業を繰り返す。その後、それらの複数の予約に従って、複数のフォルダ内の全ての静止画ファイルがバッチ処理される。
【0077】
つまり、ユーザは、様々なフォルダに対して様々なプランを予約しておくことができる。その結果、昼休みや夜間等の空き時間中に、画像処理を進めることが可能になる。従って、ユーザによる画像処理の作業の効率性が向上する。
【0078】
<4−2>
上記実施形態では、画像処理プログラム2は、予約に用いられるプランの定義をユーザから受け付けるステップを画像処理装置1に実行させることができる。このステップでは、まず、1以上の画像処理モジュールをユーザに選択させることにより、ヒストリーが記録される。続いて、ヒストリーを援用する形で、プランが作成される。従って、ユーザは、画像処理の予約を簡単に行うことができる。
【0079】
<4−3>
上記実施形態では、画像処理プログラム2は、ステップS3の中で、動画ファイルを生成するステップを画像処理装置1に実行させることができる。この動画ファイルは、1の予約に係る画像処理後の静止画をフレームとして含む。なお、動画ファイルを生成するか否かは、各予約について、ユーザが任意に選択することができる。従って、ユーザは、画像処理後の動画を簡単に確認したり、利用したりすることができる。
【0080】
<4−4>
上記実施形態では、画像処理プログラム2は、登録済みの予約の中から、任意の予約の選択を受け付けるステップを画像処理装置1に実行させることができる。ステップS3では、登録済みの全ての予約のうち、選択された任意の予約に係るフォルダ内の静止画ファイルが一括して画像処理される。
【0081】
ユーザは、登録済みの予約の中から、実際に実行したい任意の予約を選択することができる。その結果、例えば、ユーザは、特定の予約を、よく使用する予約のテンプレートとして登録しておくことができる。そして、ユーザは、そのテンプレートを使用したくない場合には、予約一覧ウィンドウW8上でその予約に対応するチェックボックスのチェックを外すことにより、その予約を実行しないという選択をすることができる。一方、そのテンプレートを使用したい場合には、ユーザは、予約一覧ウィンドウW8上でその予約に対応するチェックボックスをチェックされている状態にすることにより、その予約を実行するという選択をすることができる。また、後者の場合、ユーザは、ステップS85の予約の編集を実行することにより、テンプレートとして登録されている予約をカスタマイズすることができる。
【0082】
<5.変形例>
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて、種々の変更が可能である。例えば、以下の変更が可能である。
【0083】
<5−1>
上記実施形態では、ステップS3のバッチ処理は、予約の受付の終了後に実行されるようになっていた。しかしながら、ステップS3のバッチ処理は、予約の受付の処理と並列に実行されてもよい。例えば、先行する予約の受付の終了後にバッチ処理が開始し、開始したバッチ処理と並列に次の予約の受付の処理が実行されてもよい。
【0084】
<5−2>
上記実施形態では、オリジナル画像領域51へ取り込まれた画像データは、全て静止画ファイルとして保存されるようになっていた。しかしながら、オリジナル画像領域51へ取り込まれた画像データを、動画ファイルとして保存するようにしてもよい。オリジナル画像領域51内の画像データの形式を静止画形式とするか動画形式とするかは、ユーザが選択できるようにしてもよいし、取り込み元の画像データの形式等に応じて自動的に決定されるようにしてもよい。
さらに、その後、動画ファイルに対して画像処理が施される場合には、その画像処理後の画像データも動画ファイルの形式で保存するようにしてもよい。
【0085】
<5−3>
上記実施形態では、予約時の画像処理の指定は、1のプランを指定することにより行われた。しかしながら、予約時の画像処理の指定の態様は、これに限定されない。例えば、予約時に、複数のプランの任意の組み合わせを指定できるようにしてもよい。あるいは、予約時に、1以上の画像処理モジュールの任意の組み合わせを指定できるようにしてもよいし、1以上のヒストリーの任意の組み合わせを指定できるようにしてもよい。さらに、予約時に、画像処理モジュールとプランとヒストリーとの任意の組み合わせを指定できるようにしてもよい。
【0086】
本変形例について別の見方をすると、予約に用いられる画像処理の定義を、予約時に行っていることになる。つまり、予約に用いられる画像処理を定義するステップは、上記実施形態のように、予約を受け付けるステップに先立って実行されてもよいし、本変形例のように、予約を受け付けるステップと並列に実行されてもよい。言い換えると、ユーザは、画像処理の予約を行う前に、又は予約中に、1以上の画像処理モジュールを組み合わせて画像処理を定義することができる。
【0087】
<5−4>
上記実施形態では、プランは、ヒストリーを援用することにより登録されるようになっていた。しかしながら、プランの登録の態様は、これに限定されない。例えば、プランは、任意の画像処理モジュールを任意の順番で任意の数だけ組み合わせることにより登録されるようになっていてもよい。
【0088】
<5−5>
上記実施形態では、予約される画像処理の対象は、1のフォルダ内の全ての静止画ファイルであった。しかしながら、予約される画像処理の対象は、これに限定されない。例えば、予約時に、1又は複数の動画ファイルを指定できるようにしてもよい。さらに、静止画ファイルと動画ファイルとの任意の組み合わせを指定できるようにしてもよい。