説明

画像処理装置及び画像処理プログラム

【課題】動画像の流れを把握しやすく、かつ、その内容を把握しやすい画像を生成する。
【解決手段】動画像を構成するすべてのフレーム画像のうち、先頭フレーム画像及び最終フレーム画像と、これらの間を8等分した各等分位置の7個のフレーム画像とからなる計9個のフレーム画像を基準フレーム画像に設定する。そして、9個の基準フレーム画像のそれぞれについて、その前後の所定数の周辺フレーム画像を含めた抽出対象範囲を互いに重複しないように設定し、こうして設定した9個の抽出対象範囲のそれぞれから、フレーム配置画像に配置すべき代表フレーム画像を1つずつ選択する。具体的には、抽出対象範囲に含まれるフレーム画像(基準フレーム画像及び周辺フレーム画像)のうち、その抽出対象範囲よりも時系列的に1つ前の抽出対象範囲から既に選択された代表フレーム画像との差分が最も大きいものを代表フレーム画像として選択する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、動画像から複数のフレーム画像を抽出して配置した画像を生成するための画像処理装置及び画像処理プログラムに関するものである。
【背景技術】
【0002】
従来、動画像ファイル(複数のフレーム画像により動画像を表す画像データ)の表す動画像から所定数のフレーム画像を抽出し、それらを同一ページに配置した画像を生成して印刷することが可能な印刷装置が提案されている。例えば特許文献1には、動画像の全フレーム数を、同一ページに配置するフレーム画像の数で除したフレーム数ごとに、フレーム画像を抽出する構成が示されている。このような構成では、動画像において時系列的に等間隔な関係にあるフレーム画像が抽出されるため、動画像の流れが把握しやすくなる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2001−78127号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、前述したように時系列的に等間隔な関係にあるフレーム画像を抽出する構成では、類似する内容のフレーム画像が重複して抽出されることもあり、複数のフレーム画像を配置する利点が十分に生かされないことがある。例えば、動画像が短いシーンを含む場合であっても、シーンの切り替わりのタイミングによっては、1枚もそのシーンに含まれるフレーム画像が抽出されない場合がある。このような場合、動画像の内容が把握しにくいものとなってしまうという問題がある。
【0005】
本発明は、こうした問題にかんがみてなされたものであり、動画像の流れを把握しやすく、かつ、動画像の内容を把握しやすい画像を生成することのできる画像処理装置及び画像処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【0006】
上記目的を達成するためになされた本発明の請求項1に記載の画像処理装置は、動画像を構成する複数のフレーム画像において複数の抽出対象範囲を互いに重複しないように設定する設定手段と、設定手段により設定された複数の抽出対象範囲のそれぞれから1つずつ抽出すべき代表フレーム画像を選択する選択手段と、選択手段により選択された複数の代表フレーム画像を時系列的な規則性を持つように配置したフレーム配置画像を生成する配置画像生成手段とを備えている。
【0007】
具体的には、設定手段は、時系列的に互いに等間隔な関係にある複数の基準フレーム画像が1つずつ含まれるように複数の抽出対象範囲を設定する。そして、選択手段は、抽出対象範囲のフレーム画像のうち、時系列的に1つ前又は1つ後の抽出対象範囲から選択された代表フレーム画像に対する変化量が最大となるものを代表フレーム画像として選択する。
【0008】
このように、本発明の画像処理装置では、時系列的に互いに等間隔な関係にある複数の基準フレーム画像が1つずつ含まれるように設定された複数の抽出対象範囲のそれぞれから代表フレーム画像を1つずつ抽出するようにしているため、フレーム配置画像に配置される代表フレーム画像が時系列的に片寄らないようにすることができる。
【0009】
しかも、抽出対象範囲のフレーム画像のうち、時系列的に1つ前又は1つ後の抽出対象範囲から選択された代表フレーム画像に対する変化量が最大となるものを代表フレーム画像として選択するようにしているため、フレーム配置画像に配置される代表フレーム画像が内容的にも片寄らないようにすることができる。
【0010】
したがって、本発明の画像処理装置によれば、動画像の流れを把握しやすく、かつ、内容を把握しやすいフレーム配置画像を生成することができる。
なお、時系列的に先頭の基準フレーム画像と最終の基準フレーム画像との間に存在するフレーム画像の数によっては、厳密な意味での等間隔にはならない場合も考えられるが、ここでいう等間隔とはそのような厳密性が要求されるものではなく、可能な限りで等間隔であればよい。例えば、0フレーム目から9フレーム目までの範囲を等間隔に二分するフレーム画像としては4フレーム目及び5フレーム目のいずれも該当する。
【0011】
ところで、代表フレーム画像の選択は、具体的には、例えば請求項2に記載のように行うことができる。すなわち、請求項2に記載の画像処理装置では、選択手段は、最初に選択する代表フレーム画像については他の代表フレーム画像に対する変化量に関係なく選択し、残りの代表フレーム画像については、選択済の代表フレーム画像に対する変化量が最も大きいフレーム画像を、その選択済の代表フレーム画像が選択された抽出対象範囲よりも時系列的に1つ前又は1つ後の抽出対象範囲から選択する。
【0012】
ここで、最初に選択する代表フレーム画像については、例えば請求項3に記載のように、基準フレーム画像を代表フレーム画像として選択するようにすれば、最初に選択する代表フレーム画像を簡易的に選択することができる。
【0013】
また、例えば請求項4に記載のように、最初に選択する代表フレーム画像については、抽出対象範囲のフレーム画像のうち画素値の分散が最も大きいものを代表フレーム画像として選択するようにすれば、真っ暗な画像や手ぶれのひどい画像など、動画像の内容を把握する上で適切でないフレーム画像が代表フレーム画像として選択されにくくすることができる。
【0014】
また、例えば請求項5に記載のように、最初に選択する代表フレーム画像については、抽出対象範囲のフレーム画像のうち画素値のヒストグラム分布範囲が最も広いものを代表フレーム画像として選択するようにしても、請求項4と同様、動画像の内容を把握する上で適切でないフレーム画像が代表フレーム画像として選択されにくくすることができる。
【0015】
一方、本発明の画像処理装置では、複数の基準フレーム画像が1つずつ含まれるように複数の抽出対象範囲が設定されるが、具体的には例えば請求項6に記載のように、基準フレーム画像を中心とする複数のフレーム画像群からなる範囲を抽出対象範囲として設定するとよい。このようにすれば、時系列的に等間隔な関係にできるだけ近いフレーム画像を複数の代表フレーム画像として抽出することができる。
【0016】
なお、抽出対象範囲のフレーム画像の数によっては、厳密に中心となるフレーム画像が存在しない場合も考えられるが、ここでいう中心とはそのような厳密性が要求されるものではなく、可能な限りで中心であればよい。例えば、0フレーム目から9フレーム目までの抽出対象範囲の中心となるフレーム画像としては4フレーム目及び5フレーム目のいずれも該当する。
【0017】
ところで、単位時間当たりのフレーム数は動画像によって異なり得るため、例えば抽出対象範囲に含まれるフレーム画像の数を動画像に関係なく固定数とした場合、抽出対象範囲に相当する時間(期間)が動画像によって異なり得ることになる。
【0018】
そこで、例えば請求項7に記載の画像処理装置では、設定手段は、単位時間当たりのフレーム数が多い動画像ほど抽出対象範囲に含まれるフレーム画像の数を多くする。このような画像処理装置によれば、動画像によって単位時間当たりのフレーム数が異なっても、抽出対象範囲に相当する時間を同様の時間に設定することが可能となる。
【0019】
また、代表フレーム画像は、基準フレーム画像及びその周辺の(時系列的に近い)フレーム画像の中から抽出されることから、動画像の全体的な流れを把握しやすい代表フレーム画像が抽出されるようにするためには、動画像の全体的な流れを把握しやすい位置に基準フレーム画像を設定することが好ましい。
【0020】
そこで、例えば請求項8に記載の画像処理装置では、設定手段は、動画像を構成する先頭のフレーム画像、最終のフレーム画像及びそれらの間を等分割するフレーム画像を基準フレーム画像として複数の抽出対象範囲を設定する。このような画像処理装置によれば、動画像の全体的な流れを把握するのに好適な代表フレーム画像を抽出することができる。
【0021】
なお、請求項9に記載の画像処理プログラムによれば、請求項1に記載の画像処理装置としてコンピュータを機能させることができ、これにより前述した効果を得ることができる。
【図面の簡単な説明】
【0022】
【図1】実施形態の複合機の概略構成を表すブロック図である。
【図2】(a)は基準フレーム画像の設定方法の説明図、(b)は代表フレーム画像の選択方法の説明図である。
【図3】(a)は入力画像情報記憶領域の説明図、(b)は動画像情報記憶領域の説明図である。
【図4】(a)は基準フレーム情報記憶領域の説明図、(b)は抽出フレーム情報記憶領域の説明図である。
【図5】(a)はフレーム配置画像の説明図、(b)はフレーム差分情報記憶領域の説明図である。
【図6】メディア画像印刷処理のフローチャートである。
【図7】印刷画像選択処理のフローチャートである。
【図8】出力画像生成処理のフローチャートである。
【図9】抽出フレーム選択処理のフローチャートである。
【発明を実施するための形態】
【0023】
以下、本発明が適用された実施形態について、図面を用いて説明する。
[1.全体構成]
図1は、実施形態の画像処理装置としての複合機10の概略構成を表すブロック図である。
【0024】
この複合機10は、プリンタ機能の他、スキャナ機能やコピー機能等を有する多機能装置であり、CPU11、ROM12、内部メモリ(RAM)13、スキャナ読取部14、印刷制御部15、液晶表示部16、操作入力部17及びメディアカードスロット18を備えており、これらは信号線を介して接続されている。
【0025】
CPU11は、複合機10におけるすべての演算を行うための装置である。
ROM12は、後述する処理(図6〜図9)をCPU11に実行させるためのプログラムがあらかじめ記憶されている装置である。
【0026】
内部メモリ13は、CPU11による演算結果や入力データなどを一時的に記憶しておくための装置である。なお、内部メモリ13の記憶領域の詳細については後述する。
印刷制御部15は、印刷命令が出された画像データを印刷するための装置であり、CMYKの色材(トナーやインク等)によりカラー画像を印刷可能なものである。
【0027】
液晶表示部16は、小型のカラー液晶ディスプレイに画像(メッセージ等の文字列を表す画像を含む。)を表示するための装置である。
操作入力部17は、ユーザによって押操作される各種操作キーが配置され、操作に基づく情報を入力するための装置である。具体的には、上下左右操作を行うための上キー、下キー、左キー及び右キーと、決定操作を行うためのOKキーとを備えている。
【0028】
メディアカードスロット18は、SDカードやCFカード等のメディアカード(不揮発性の可搬型記憶媒体)を挿入可能に構成されている。そして、複合機10は、メディアカードスロット18に挿入された状態のメディアカードから画像ファイルを直接読み出し、読み出した画像ファイルの表す画像を印刷する機能(いわゆるダイレクトプリント機能)を有している。
【0029】
ここで、画像ファイルとしては、静止画像を表す静止画像ファイルだけでなく、動画像を表す動画像ファイルも対象となる。具体的には、印刷対象の画像ファイルが静止画像ファイルの場合には、その静止画像ファイルの表す静止画像のみを1ページに印刷する。一方、印刷対象の画像ファイルが動画像ファイルの場合には、その動画像ファイルの表す動画像を構成するすべてのフレーム画像のうち、あらかじめ決められた抽出フレーム数(本実施形態では9個)のフレーム画像を抽出し、抽出したフレーム画像を同一ページに時系列順に配置したフレーム配置画像(図5(a)参照)を生成して印刷する。
【0030】
具体的には、図2(a)に示すように、動画像を構成するすべてのフレーム画像のうち、先頭フレーム画像及び最終フレーム画像と、これらの間を8等分した各等分位置(正確に等分できない場合は近似位置)の7個のフレーム画像とからなる計9個のフレーム画像を基準フレーム画像(基準点)に設定する。つまり、動画像において時系列的に互いに等間隔な関係にある9個のフレーム画像を基準フレーム画像として設定する。
【0031】
そして、9個の基準フレーム画像のそれぞれについて、その前後の所定数の周辺フレーム画像を含めた抽出対象範囲を互いに重複しないように設定し、こうして設定した9個の抽出対象範囲のそれぞれから、フレーム配置画像に配置すべき代表フレーム画像を1つずつ選択する。具体的には、図2(b)に示すように、抽出対象範囲に含まれるフレーム画像(基準フレーム画像及び周辺フレーム画像)のそれぞれについて、その抽出対象範囲よりも時系列的に1つ前の抽出対象範囲から既に選択された代表フレーム画像との差分を算出し、その差分が最も大きいものを代表フレーム画像として選択する。つまり、N番目の抽出対象範囲の代表フレーム画像として、N−1番目の抽出対象範囲から既に選択された代表フレーム画像との差分が最も大きいフレーム画像を選択する。ただし、最初に代表フレーム画像を選択する抽出対象範囲については、差分を求める対象となる代表フレーム画像が存在しないため、本実施形態では基準フレーム画像(先頭フレーム画像)をそのまま代表フレーム画像とする。
【0032】
なお、複合機10は、メディアカードに記憶されている複数の画像ファイルの中から印刷対象の画像ファイルをユーザに選択させるため、画像ファイルの表す画像の印刷イメージを把握可能なプレビュー画像を液晶表示部16に表示し、ユーザにより選択されたプレビュー画像に対応する画像ファイルの表す画像を印刷するようになっている。
【0033】
[2.内部メモリの記憶領域]
次に、内部メモリ13の記憶領域について説明する。
図1に示すように、内部メモリ13には、各種情報を記憶するための記憶領域として、入力画像情報記憶領域31、動画像情報記憶領域32、基準フレーム情報記憶領域33、抽出フレーム情報記憶領域34、フレーム差分情報記憶領域35、出力画像データ記憶領域36、プレビュー画像データ記憶領域37、フレーム画像データ記憶領域38、印刷データ記憶領域39及び一時変数記憶領域40が用意されている。
【0034】
入力画像情報記憶領域31は、メディアカードに記憶されている画像ファイルの情報を記憶するための領域である。具体的には、図3(a)に示すように、入力画像情報記憶領域31は、入力画像ID記憶領域51、入力画像ファイル名記憶領域52及び入力画像ファイルサイズ記憶領域53を備えている。
【0035】
入力画像ID記憶領域51は、メディアカードに記憶されている画像ファイルの数に応じて0から順に振り分けた画像ファイルのID(以下「入力画像ID」という。)を記憶するための領域である。具体的には、メディアカードから読み出された画像ファイルに対し、読み出された順に入力画像IDが割り振られる。
【0036】
入力画像ファイル名記憶領域52は、メディアカードに記憶されている画像ファイルのファイル名を記憶するための領域である。具体的には、256バイトの領域の中に256文字(1文字/バイト)の文字データ(文字無しの情報も含む)が格納される。
【0037】
入力画像ファイルサイズ記憶領域53は、メディアカードに記憶されている画像ファイルのファイルサイズを数値(この例ではキロバイト単位の数値)として記憶するための領域である。
【0038】
図1に戻り、動画像情報記憶領域32は、メディアカードに記憶されている画像ファイルのうち、処理対象となっている動画像ファイルの情報を一時的に記憶しておくための領域である。具体的には、図3(b)に示すように、動画像情報記憶領域32は、フォーマット種別記憶領域61、コーデック種別記憶領域62、横方向サイズ記憶領域63、縦方向サイズ記憶領域64及び総フレーム数記憶領域65を備えている。
【0039】
フォーマット種別記憶領域61は、処理対象となっている動画像ファイルのファイルフォーマットの種別を記憶する領域である。本実施形態では、3種類のファイルフォーマットに対応付けられた数値(例えば、AVIフォーマットであれば「0」、MOVフォーマットであれば「1」、MPEGフォーマットであれば「2」)が記憶される。
【0040】
コーデック種別記憶領域62は、処理対象となっている動画像ファイルのコーデックの種別を記憶する領域である。本実施形態では、3種類のコーデックに対応付けられた数値(例えば、MotionJPEGコーデックであれば「0」、MPEG1コーデックであれば「1」、DivXコーデックであれば「2」)が記憶される。
【0041】
横方向サイズ記憶領域63は、処理対象となっている動画像ファイル(フレーム画像)の横方向のピクセルサイズを数値データとして記憶する領域である。
縦方向サイズ記憶領域64は、処理対象となっている動画像ファイル(フレーム画像)の縦方向のピクセルサイズを数値データとして記憶する領域である。
【0042】
総フレーム数記憶領域65は、処理対象となっている動画像ファイルを構成するフレーム画像データの総数(総フレーム数)を数値データとして記憶する領域である。
図1に戻り、基準フレーム情報記憶領域33は、基準フレーム画像の情報を記憶するための領域である。具体的には、図4(a)に示すように、基準フレーム情報記憶領域33は、基準フレーム情報管理番号記憶領域71、基準フレーム番号記憶領域72、抽出対象範囲開始フレーム番号記憶領域73及び抽出対象範囲終了フレーム番号記憶領域74を備えている。
【0043】
基準フレーム情報管理番号記憶領域71は、基準フレーム画像の情報の格納領域に対応した管理番号(0〜8の番号)があらかじめ記憶された領域である。
基準フレーム番号記憶領域72は、各基準フレーム画像が動画像ファイルの何フレーム目に当たるかを示す数値(フレーム番号)を記憶するための領域である。なお、先頭フレーム画像を0フレーム目とする。
【0044】
抽出対象範囲開始フレーム番号記憶領域73は、抽出対象範囲において最も小さい値のフレーム番号(以下「抽出対象範囲開始フレーム番号」という。)を格納するための領域である。
【0045】
抽出対象範囲終了フレーム番号記憶領域74は、抽出対象範囲において最も大きい値のフレーム番号(以下「抽出対象範囲終了フレーム番号」という。)を格納するための領域である。
【0046】
図1に戻り、抽出フレーム情報記憶領域34は、代表フレーム画像の情報を記憶するための領域である。具体的には、図4(b)に示すように、抽出フレーム情報記憶領域34は、抽出フレーム情報管理番号記憶領域81及び抽出フレーム番号記憶領域82を備えている。
【0047】
抽出フレーム情報管理番号記憶領域81は、代表フレーム画像の情報の格納領域に対応した管理番号(0〜8の番号)があらかじめ記憶された領域である。この管理番号は、図5(a)に示す各配置領域の番号に対応している。
【0048】
抽出フレーム番号記憶領域82は、各代表フレーム画像が動画像ファイルの何フレーム目に当たるかを示す数値(フレーム番号)を記憶するための領域である。
図1に戻り、フレーム差分情報記憶領域35は、差分を記憶するための領域である。具体的には、図5(b)に示すように、フレーム差分情報記憶領域35は、抽出対象フレーム数記憶領域91、フレーム差分記憶領域92及び対応フレーム番号記憶領域93を備えている。
【0049】
抽出対象フレーム数記憶領域91は、抽出対象範囲に含まれるフレーム画像の数(以下「抽出対象フレーム数」という。)を記憶するための領域である。なお、後述するように、実際に抽出対象範囲に含まれるフレーム画像の数は、この抽出対象フレーム数に基づき決定されるが、この抽出対象フレーム数と一致するとは限らない。
【0050】
フレーム差分記憶領域92は、フレーム画像間の差分(絶対値)を一時的に記憶しておくための領域である。
対応フレーム番号記憶領域93は、フレーム差分記憶領域92に記憶されている差分を算出したフレーム画像が動画像ファイルの何フレーム目に当たるかを示す数値(フレーム番号)を一時的に記憶しておくための領域である。
【0051】
図1に戻り、出力画像データ記憶領域36は、画像ファイルに基づく印刷用画像を表す出力画像データを一時的に記憶しておくための領域である。具体的には、静止画像ファイルに基づく印刷用画像は1つの画像からなるため、この1つの画像を表す画像データが出力画像データ記憶領域36の全体に配置される。一方、動画像ファイルに基づく印刷用画像は9個の画像からなるため、9等分された各配置領域に各フレーム画像を表す画像データが配置されることとなる(図5(a)参照)。
【0052】
プレビュー画像データ記憶領域37は、デコードデータをあらかじめ決められたプレビュー画像のサイズに変換(拡大又は縮小)処理したプレビュー画像データを一時的に記憶しておくための領域である。
【0053】
フレーム画像データ記憶領域38は、動画像ファイルから抽出したフレーム画像データを記憶するための領域である。なお、フレーム画像データは、動画像ファイルの種類によっては固有の形式(例えばJPEG形式、MPEG形式など)で圧縮された状態で記憶される。
【0054】
印刷データ記憶領域39は、印刷処理をするための画像データ(印刷データ(ラスタデータ)を生成するための中間処理データ及び印刷データ(ラスタデータ))を一時的に記憶しておくための領域である。
【0055】
一時変数記憶領域40は、変数やカウンタなど、一時的な情報を記憶するための領域である。
[3.CPUが実行する処理]
次に、画像ファイルの記憶されているメディアカードがメディアカードスロット18に挿入されている状態で、「メディア画像印刷」モードを選択する操作が操作入力部17で行われることにより、複合機10のCPU11が実行するメディア画像印刷処理について、図6のフローチャートを用いて説明する。
【0056】
CPU11は、このメディア画像印刷処理を開始すると、まずS101で、メディアカードに記憶されている画像ファイルごとにファイル名及びファイルサイズを読み出し、入力画像情報記憶領域31の入力画像ファイル名記憶領域52及び入力画像ファイルサイズ記憶領域53に順に記憶するメディア情報抽出処理を行う。なお、このメディア情報抽出処理では、メディアカードから読み出された情報に対して入力画像IDが0から順に割り振られて入力画像ID記憶領域51に記憶される。
【0057】
続いて、S102では、メディアカードに記憶されている画像ファイルの表す画像の印刷イメージを把握可能なプレビュー画像を液晶表示部16に表示して、印刷対象の画像ファイルをユーザに選択させる印刷画像選択処理を実行する。
【0058】
ここで、印刷画像選択処理の詳細について図7のフローチャートを用いて説明する。
CPU11は、この印刷画像選択処理を開始すると、まずS201で、メディアカードに記憶されている画像ファイルの中から、液晶表示部16にプレビュー画像を表示する1つの画像ファイルを決定する。具体的には、初期値(印刷画像選択処理開始時の値)が0のプレビューIDカウンタを一時変数記憶領域40にあらかじめ用意しておき、プレビューIDカウンタの値に対応する入力画像ID(入力画像ID記憶領域51に記憶された値)の画像ファイルを、プレビュー画像を表示する画像ファイルとして決定する。なお、後述するように、操作入力部17の上キー、下キー、左キー又は右キーの押操作に応じて液晶表示部16に表示されるプレビュー画像を他の画像ファイルのものに変更し、OKキーの押操作時に表示されているプレビュー画像に対応する画像ファイルを印刷対象として選択する。
【0059】
続いて、S202では、S201で決定した画像ファイルに基づく印刷用画像を表す出力画像データを生成する出力画像生成処理を実行する。
ここで、出力画像生成処理の詳細について図8のフローチャートを用いて説明する。
【0060】
CPU11は、この出力画像生成処理を開始すると、まずS301で、液晶表示部16にプレビュー画像を表示する画像ファイルの入力画像ID(プレビューIDカウンタの値)を読み出す。
【0061】
続いて、S302では、S301で読み出した入力画像IDの画像ファイルの種類が静止画像ファイル及び動画像ファイルのうちのいずれに分類されるものであるかを判定する。
【0062】
そして、S302で、画像ファイルの種類が動画像ファイルであると判定した場合には、S303へ移行し、この動画像ファイルの動画像パラメータの抽出処理を実行する。この抽出処理により、動画像ファイルのフォーマット種別情報、コーデック種別情報、横方向サイズ情報、縦方向サイズ情報及び総フレーム数情報が得られる。こうして得られた各情報は、動画像情報記憶領域32内のフォーマット種別記憶領域61、コーデック種別記憶領域62、横方向サイズ記憶領域63、縦方向サイズ記憶領域64及び総フレーム数記憶領域65にそれぞれ記憶される。
【0063】
続いて、S304では、動画像ファイルの表す動画像から抽出するフレーム画像(代表フレーム画像)を選択するための抽出フレーム選択処理を実行する。
ここで、抽出フレーム選択処理の詳細について図9のフローチャートを用いて説明する。
【0064】
CPU11は、この抽出フレーム選択処理を開始すると、まずS401で、抽出対象フレーム数を算出する。本実施形態では、処理対象となっている動画像ファイルの1秒間に再生するフレーム数であるFPS(Frames Per Second)の値に1(基準フレーム画像の数)を加えた値を抽出対象フレーム数とする。つまり、周辺フレーム画像の数が1秒間分のフレーム数となるように抽出対象フレーム数を算出する。
【0065】
続いて、S402では、S401で算出した抽出対象フレーム数(FPS+1であり、例えば31)を、フレーム差分情報記憶領域35の抽出対象フレーム数記憶領域91に記憶する。
【0066】
続いて、S403では、9個の基準フレーム画像のフレーム番号(以下「基準フレーム番号」という。)を算出する。本実施形態では、動画像ファイルの総フレーム数を先頭フレーム画像から最終フレーム画像までの間で8等分した各等分位置の7個のフレーム画像と、先頭フレーム画像及び最終フレーム画像との計9個のフレーム画像を基準フレーム画像とする。具体的には、「総フレーム数−1」を「抽出フレーム数−1」(9−1=8)で除した値ごとに基準フレーム画像を設定する。なお、「総フレーム数−1」が「抽出フレーム数−1」で割り切れない場合には、その値の近傍(例えば小数点以下を切り捨てた値に対応するフレーム番号)のフレーム画像を基準フレーム画像として設定すればよい。
【0067】
続いて、S404では、S403で算出した基準フレーム番号を基準フレーム番号記憶領域72に記憶する。具体的には、基準フレーム番号の小さいものから順に、基準フレーム情報管理番号記憶領域71の管理番号が小さい方から格納される。
【0068】
続いて、S405では、9個の基準フレーム画像のそれぞれについて、抽出対象範囲開始フレーム番号(抽出対象範囲において最も小さい値のフレーム番号)及び抽出対象範囲終了フレーム番号(抽出対象範囲において最も大きい値のフレーム番号)を下記(1)及び(2)の手順で求める。
【0069】
(1)抽出対象範囲開始フレーム番号の算出
まず、基準フレーム番号を基点にして、基準フレーム画像よりも時系列的順序が前の周辺フレーム画像の個数である前方周辺フレーム数を求める。具体的には、次の(A)及び(B)のうちいずれか小さい方の値を前方周辺フレーム数とする(小数点以下は切り捨てる)。
【0070】
(A)「(抽出対象フレーム数−1)/2」の値
(B)「(現在の基準フレーム番号−1つ前の基準フレーム番号−1)/2」の値
なお、(B)の値は、抽出対象範囲が互いに重複しないようにするための制限値である。すなわち、(A)の値(0.5秒間分のフレーム数)は(B)の値よりも小さくなることが通常であるが、動画像ファイルの表す動画像が極端に短いような場合には(A)の値が(B)の値を上回る可能性もあるため、(A)及び(B)のうちいずれか小さい方の値を前方周辺フレーム数とすることで抽出対象範囲が互いに重複しないようにしている。この点は、後述する後方周辺フレーム数についても同様である。
【0071】
そして、次の式から抽出対象範囲開始フレーム番号を算出する。
抽出対象範囲開始フレーム番号=基準フレーム番号−前方周辺フレーム数
(2)抽出対象範囲終了フレーム番号の算出
まず、基準フレーム番号を基点にして、基準フレーム画像よりも時系列的順序が後の周辺フレーム画像の個数である後方周辺フレーム数を求める。具体的には、次の(C)及び(D)のうちいずれか小さい方の値を後方周辺フレーム数とする(小数点以下は切り捨てる)。
【0072】
(C)「(抽出対象フレーム数−1)/2」の値
(D)「(1つ後の基準フレーム番号−現在の基準フレーム番号−1)/2」の値
そして、次の式から抽出対象範囲終了フレーム番号を算出する。
【0073】
抽出対象範囲終了フレーム番号=基準フレーム番号+後方周辺フレーム数
なお、先頭フレーム画像については、抽出対象範囲終了フレーム番号のみを算出し、抽出対象範囲開始フレーム番号は基準フレーム番号と同一の値とする。同様に、最終フレーム画像については、抽出対象範囲開始フレーム番号のみを算出し、抽出対象範囲終了フレーム番号は基準フレーム番号と同一の値とする。
【0074】
続いて、S406では、S405で9個の基準フレーム画像のそれぞれについて算出した抽出対象範囲開始フレーム番号及び抽出対象範囲終了フレーム番号を、基準フレーム情報記憶領域33の抽出対象範囲開始フレーム番号記憶領域73及び抽出対象範囲終了フレーム番号記憶領域74にそれぞれ記憶する。
【0075】
続いて、S407では、基準フレーム情報記憶領域33における最初の(管理番号が0の)基準フレーム番号(先頭フレーム画像のフレーム番号)を、抽出フレーム情報記憶領域34における管理番号が0の抽出フレーム番号記憶領域82に記憶する。つまり、最初に選択する代表フレーム画像については、基準フレーム画像をそのまま代表フレーム画像とする。
【0076】
以下、S408〜S417のループ処理は、基準フレーム情報記憶領域33における管理番号が1〜8の基準フレーム画像について順に実行される。具体的には、初期値(抽出フレーム選択処理開始時の値)が1の基準フレームカウンタを一時変数記憶領域40にあらかじめ用意しておき、この基準フレームカウンタの値に対応する管理番号の基準フレーム画像を処理対象としてS408〜S417の処理を行う。なお、S417からS408に戻る際に基準フレームカウンタの値に1を加算する。
【0077】
S408では、1つ前の代表フレーム画像(抽出フレーム情報記憶領域34における管理番号が「基準フレームカウンタ−1」の代表フレーム画像)との差分を算出するフレーム画像(以下「差分算出フレーム」という。)を設定する。具体的には、初期値(抽出フレーム選択処理開始時の値)が0の差分フレームカウンタを一時変数記憶領域40にあらかじめ用意しておき、抽出対象範囲開始フレーム番号に差分フレームカウンタの値を加えた値を差分算出フレームのフレーム番号として設定する。
【0078】
続いて、S409では、一時変数記憶領域40にあらかじめ用意した差分カウンタを0に初期化する。
続いて、S410〜S412では、1つ前の代表フレーム画像と差分算出フレームとの差分を算出する。すなわち、これら2つのフレーム画像データに伸張(デコード)処理を施し、各座標位置単位で画素値の差分絶対値を算出する。これを、RGBそれぞれについて全座標分算出し、この合計値を差分とする。具体的には、処理対象のピクセルについてピクセル差分を算出し(S410)、その絶対値を差分カウンタに加算する(S411)という処理を、ピクセルの総数分繰り返す(S412)。
【0079】
続いて、S413では、差分カウンタの値(1つ前の代表フレーム画像と差分算出フレームとの差分)が、フレーム差分記憶領域92に記憶されている値よりも大きいか否かを判定する。なお、抽出フレーム選択処理開始時の初期値は0である。
【0080】
そして、S413で、差分カウンタの値がフレーム差分記憶領域92に記憶されている値よりも大きいと判定した場合には、S414へ移行し、差分カウンタの値をフレーム差分記憶領域92に記憶(上書き)し、差分算出フレームのフレーム番号を対応フレーム番号記憶領域93に記憶(上書き)する。その後、S415へ移行する。
【0081】
一方、S413で、差分カウンタの値がフレーム差分記憶領域92に記憶されている値以下であると判定した場合には、そのままS415へ移行する。
S415では、抽出対象範囲に含まれるすべてのフレーム画像(処理対象の基準フレーム及びその周辺フレーム)について差分を算出したか否かを判定する。具体的には、抽出対象範囲開始フレーム番号に差分フレームカウンタの値を加えた値(差分算出フレームのフレーム番号)が抽出対象範囲終了フレーム番号に達した場合に、すべてのフレーム画像について差分を算出したと判定する。
【0082】
そして、S415で、差分を算出していないフレーム画像が抽出対象範囲に存在すると判定した場合には、差分フレームカウンタの値に1を加算してS408に戻る。
一方、S415で、抽出対象範囲に含まれるすべてのフレーム画像について差分を算出したと判定した場合には、S416へ移行し、抽出フレーム情報記憶領域34における管理番号が基準フレームカウンタの値の抽出フレーム番号記憶領域82に、対応フレーム番号記憶領域93の値を記憶する。つまり、1つ前の代表フレーム画像との差分が最も大きかったフレーム画像を代表フレーム画像として選択し、そのフレーム番号を抽出フレーム番号記憶領域82に記憶する。
【0083】
続いて、S417では、基準フレーム情報記憶領域33における管理番号が1〜8の基準フレーム画像のすべてについてその基準フレーム画像が含まれる抽出対象範囲から代表フレーム画像を選択したか否かを判定する。
【0084】
そして、S417で、代表フレーム画像を選択していない基準フレーム画像が存在すると判定した場合には、基準フレームカウンタの値に1を加算してS408に戻る。
一方、S417で、管理番号が1〜8の基準フレーム画像のすべてについて代表フレーム画像を選択したと判定した場合には、本抽出フレーム選択処理を終了する。
【0085】
続いて、図8に戻り、S305〜S309のループ処理を実行する。このループ処理は、抽出フレーム情報記憶領域34における管理番号が0〜8の代表フレーム画像について順に実行される。具体的には、初期値(出力画像生成処理開始時の値)が0の代表フレームカウンタを一時変数記憶領域40にあらかじめ用意しておき、この代表フレームカウンタの値に対応する管理番号の代表フレーム画像を処理対象としてS305〜S309の処理を行う。なお、S309からS305に戻る際に代表フレームカウンタの値に1を加算する。
【0086】
S305では、代表フレーム画像のフレーム番号に対応するフレーム画像データを動画像ファイルから抽出する処理を行う。
続いて、S306では、S305で抽出したフレーム画像データ(伸張処理前の画像データ)を、フレーム画像データ記憶領域38に記憶する。
【0087】
続いて、S307では、S306でフレーム画像データ記憶領域38に記憶したフレーム画像データに伸張処理を施すことにより、フレーム画像データをピクセル演算が可能な形式(ピクセルごとにRGB値をそれぞれ0〜255の値で表した画像データ)に変換する。
【0088】
続いて、S308では、伸張処理後のフレーム画像データを、出力画像データ記憶領域36における対応する配置領域(図5(a))に配置(記憶)する。
続いて、S309では、管理番号が0〜8の代表フレーム画像のすべてを出力画像データ記憶領域36に配置したか否かを判定する。具体的には、代表フレームカウンタの値が8に達した場合に、代表フレーム画像のすべてを出力画像データ記憶領域36に配置したと判定する。
【0089】
そして、S309で、配置していない代表フレーム画像が存在すると判定した場合には、代表フレームカウンタの値に1を加算してS305に戻る。
一方、S309で、代表フレーム画像のすべてを出力画像データ記憶領域36に配置したと判定した場合には、本出力画像生成処理を終了する。なお、この時点で出力画像データ記憶領域36に記憶されている画像データが、動画像ファイルの出力画像データである。
【0090】
また、前述したS302で、画像ファイルの種類が静止画像ファイルであると判定した場合には、S310へ移行し、この静止画像ファイルに伸張処理を施し、データをピクセル演算が可能な形式に変換する。
【0091】
続いて、S311では、伸張処理後の画像データを出力画像データ記憶領域36に記憶した後、本出力画像生成処理を終了する。つまり、静止画像ファイルの場合には、動画像ファイルと異なり、静止画像は出力画像データ記憶領域36に1つしか配置されない。なお、この時点で出力画像データ記憶領域36に記憶されている画像データが、静止画像ファイルの出力画像データである。
【0092】
続いて、図7に戻り、S203では、出力画像データ記憶領域36に記憶されている出力画像データ(デコードデータ)に対し、プレビュー画像のサイズ(固定のサイズであり本実施形態では160×120ピクセル)となるようにニアレストネイバー法で縮小処理又は拡大処理を行い、プレビュー画像データ記憶領域37に記憶する。
【0093】
続いて、S204では、プレビュー画像データ記憶領域37に記憶されている画像データ(プレビュー画像データ)の表す画像(プレビュー画像)を、液晶表示部16に表示する。
【0094】
続いて、S205では、ユーザによって操作入力部17で行われた操作キーの押操作の情報を入力し、続くS206では、入力した情報に基づき、押されたキーがOKキーであるかそれ以外のキー(具体的には、上キー、下キー、左キー又は右キー)であるかを判定する。
【0095】
そして、S206で、押されたキーがOKキー以外のキーであると判定した場合には、S207へ移行し、プレビューIDカウンタの値を更新する。具体的には、押されたキーが下キー又は右キーの場合には、プレビュー画像を表示する画像ファイルを入力画像IDの値が1つ大きい画像ファイルに変更するため、プレビューIDカウンタの値に1を加算する。一方、押されたキーが上キー又は左キーの場合には、プレビュー画像を表示する画像ファイルを入力画像IDの値が1つ小さい画像ファイルに変更するため、プレビューIDカウンタの値から1を減算する。このS207の処理の後、S201に戻る。これにより、液晶表示部16に表示されるプレビュー画像が他の画像ファイルのものに変更されることになる。ただし、上記演算(加算又は減算)の結果、プレビューIDカウンタの値が入力画像IDの値の範囲(0〜「メディアカードに記憶されている画像ファイルの数−1」)を超える場合には、演算を行わずに値を維持する。なお、この場合には液晶表示部16に表示されるプレビュー画像は変更されないので、S201に戻るのではなくS205に戻るようにしてもよい。
【0096】
一方、S206で、押されたキーがOKキーであると判定した場合、つまり、この時点で表示されているプレビュー画像に対応する画像ファイルが印刷対象として選択された場合には、本印刷画像選択処理を終了して図6のS103へ移行する。
【0097】
S103では、S102で選択された印刷対象の画像ファイルの表す画像を印刷するための画像印刷処理を実行する。この印刷処理では、出力画像データ記憶領域36に記憶されている出力画像データを、1ライン単位で印刷データ記憶領域39にコピーし、色変換処理(RGB→CMYK)及び二値化処理を行った後、印刷制御部15へ出力する。これにより、印刷制御部15で二値データに基づく印刷が行われる。その後、本メディア画像印刷処理を終了する。
【0098】
[4.効果]
以上説明したように、本実施形態の複合機10は、動画像を構成するすべてのフレーム画像において9個の抽出対象範囲を互いに重複しないように設定し(S401〜S406)、各抽出対象範囲から1つずつ抽出すべき代表フレーム画像を選択して(S407〜S417)、それらを時系列的な規則性を持つように配置したフレーム配置画像を生成する(S305〜S309)。
【0099】
具体的には、動画像を構成する先頭フレーム画像、最終フレーム画像及びこれらの間を8等分した等分位置のフレーム画像を基準フレーム画像として設定し(S401〜S404)、これら時系列的に互いに等間隔な関係にある9個の基準フレーム画像が1つずつ含まれるように9個の抽出対象範囲を設定する(S405,S406)。
【0100】
そして、最初に選択する代表フレーム画像については、他の代表フレーム画像に対する差分に関係なく、基準フレーム画像を代表フレーム画像として選択する(S407)。一方、残りの代表フレーム画像については、選択済の代表フレーム画像に対する差分が最も大きいフレーム画像を、その選択済の代表フレーム画像が選択された抽出対象範囲よりも時系列的に1つ後の抽出対象範囲から選択する(S408〜S417)。
【0101】
このような複合機10によれば、フレーム配置画像に配置される代表フレーム画像が時系列的にも内容的にも片寄らないようにすることができるため、動画像の流れを把握しやすく、かつ、内容を把握しやすいフレーム配置画像を生成することができる。
【0102】
特に、本実施形態の複合機10では、基準フレーム画像を中心とする複数のフレーム画像群からなる範囲を抽出対象範囲として設定するようにしているため、時系列的に等間隔な関係にできるだけ近いフレーム画像を代表フレーム画像として抽出することができる。
【0103】
加えて、本実施形態の複合機10では、単位時間当たりのフレーム数が多い動画像ほど抽出対象範囲に含まれるフレーム画像の数を多くしているため、動画像によってFPSが異なっても、抽出対象範囲に相当する時間を同様の時間に設定することができる。
【0104】
[5.特許請求の範囲との対応]
なお、本実施形態の複合機10では、S401〜S406の処理を実行するCPU11が設定手段に相当し、S407〜S417の処理を実行するCPU11が選択手段に相当し、S305〜S309の処理を実行するCPU11が配置画像生成手段に相当する。
【0105】
[6.他の形態]
以上、本発明の実施形態について説明したが、本発明は、上記実施形態に限定されることなく、種々の形態を採り得ることは言うまでもない。
【0106】
例えば、上記実施形態では、フレーム画像間の変化量として差分(具体的には、各座標位置単位での画素値の差分絶対値の合計値)を例示したが、これに限定されるものではなく、フレーム画像の変化量が反映される値であればよい。
【0107】
また、上記実施形態では、ピクセル単位の差分の絶対値の合計を「差分」としたが、これに限らず、例えば、公知のオプティカルフロー法などで算出したフレーム間の「動きベクトルの大きさ」を差分算出に用いてもよい。
【0108】
一方、上記実施形態の複合機10では、最初に選択する代表フレーム画像については他の代表フレーム画像との差分を算出することができないため、基準フレーム画像をそのまま代表フレーム画像としているが(S407)、これに限定されるものではない。
【0109】
例えば、抽出対象範囲に含まれるフレーム画像のそれぞれについて画素値の分散を算出し、算出した分散が最も大きいフレーム画像を代表フレーム画像として選択してもよい。ここで、各フレーム画像の分散は、例えば下記式(1)から算出することができる。下記式(1)において、Dfsは分散(標本分散)、pはフレーム画像の画素数、iは画素値、E(i)は画素値の平均(相加平均)である。なお、画素数pに3を乗じているのは、RGB3プレーンのそれぞれについて平均画素値と各画素の画素値との差を算出するからである。
【0110】
【数1】

【0111】
このように、最初に選択する代表フレーム画像については、抽出対象範囲のフレーム画像のうち画素値の分散が最も大きいものを代表フレーム画像として選択するようにすれば、真っ暗な画像や手ぶれのひどい画像など、動画像の内容を把握する上で適切でないフレーム画像が選択されにくくすることができる。
【0112】
また例えば、抽出対象範囲に含まれるフレーム画像のそれぞれについてヒストグラム分布を算出し、この分布範囲が最も広いフレーム画像を代表フレーム画像として選択してもよい。このようにすれば、色分布としてバランスのとれたフレーム画像を代表フレーム画像とすることができ、分散の場合と同様、動画像の内容を把握する上で適切でないフレーム画像が選択されにくくすることができる。
【0113】
さらに、上記実施形態の複合機10では、時系列的な順序が最も前の抽出対象範囲から順に代表フレーム画像を設定するようにしているが、これに限定されるものではなく、例えばこれとは逆に、時系列的な順序が最も後の抽出対象範囲から順に代表フレーム画像を設定するようにしてもよい。また、時系列的な順序が中間の抽出対象範囲から前後方向へ順に代表フレーム画像を設定することも可能である。
【0114】
一方、上記実施形態の複合機10では、まず基準フレーム画像を設定し、次に基準フレーム画像を中心に抽出対象範囲を設定するようにしているが、これに限定されるものではなく、基準フレーム画像を設定することなく抽出対象範囲を設定することも可能である。
【0115】
また、上記実施形態の複合機10では、動画像ファイルから9個のフレーム画像を代表フレーム画像として抽出するようにしているが、これに限定されるものではなく、9個よりも少ない数又は多い数にすることも可能である。また、個数は固定である必要もなく、例えば、ユーザに指定させるようにしてもよい。
【0116】
さらに、上記実施形態では、複合機10(具体的には複合機10で実行されるプログラム)に本発明を適用した構成を例示したが、これに限定されるものではなく、例えば、複合機以外の印刷装置(例えばスキャナ機能を有しない印刷装置)などにも適用することができる。また、画像を印刷しない装置であってもよく、例えばパーソナルコンピュータなどの情報処理装置やその情報処理装置で実行されるプログラムにも本発明を適用することができる。
【符号の説明】
【0117】
10…複合機、11…CPU、12…ROM、13…内部メモリ、15…印刷制御部、16…液晶表示部、17…操作入力部、18…メディアカードスロット、31…入力画像情報記憶領域、32…動画像情報記憶領域、33…基準フレーム情報記憶領域、34…抽出フレーム情報記憶領域、35…フレーム差分情報記憶領域、36…出力画像データ記憶領域、37…プレビュー画像データ記憶領域、38…フレーム画像データ記憶領域、39…印刷データ記憶領域、40…一時変数記憶領域

【特許請求の範囲】
【請求項1】
動画像を構成する複数のフレーム画像において複数の抽出対象範囲を互いに重複しないように設定する設定手段と、
前記設定手段により設定された複数の抽出対象範囲のそれぞれから1つずつ抽出すべき代表フレーム画像を選択する選択手段と、
前記選択手段により選択された複数の代表フレーム画像を時系列的な規則性を持つように配置したフレーム配置画像を生成する配置画像生成手段と、
を備え、
前記設定手段は、時系列的に互いに等間隔な関係にある複数の基準フレーム画像が1つずつ含まれるように前記複数の抽出対象範囲を設定し、
前記選択手段は、前記抽出対象範囲のフレーム画像のうち時系列的に1つ前又は1つ後の抽出対象範囲から選択された代表フレーム画像に対する変化量が最大となるものを前記代表フレーム画像として選択すること
を特徴とする画像処理装置。
【請求項2】
前記選択手段は、最初に選択する代表フレーム画像については他の代表フレーム画像に対する変化量に関係なく選択し、残りの代表フレーム画像については、選択済の代表フレーム画像に対する変化量が最も大きいフレーム画像を、その選択済の代表フレーム画像が選択された抽出対象範囲よりも時系列的に1つ前又は1つ後の抽出対象範囲から選択すること
を特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記選択手段は、最初に選択する代表フレーム画像については前記基準フレーム画像を代表フレーム画像として選択すること
を特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記選択手段は、最初に選択する代表フレーム画像については、前記抽出対象範囲のフレーム画像のうち画素値の分散が最も大きいものを代表フレーム画像として選択すること
を特徴とする請求項2に記載の画像処理装置。
【請求項5】
前記選択手段は、最初に選択する代表フレーム画像については、前記抽出対象範囲のフレーム画像のうち画素値のヒストグラム分布範囲が最も広いものを代表フレーム画像として選択すること
を特徴とする請求項2に記載の画像処理装置。
【請求項6】
前記設定手段は、前記基準フレーム画像を中心とする複数のフレーム画像群からなる範囲を前記抽出対象範囲として設定すること
を特徴とする請求項1から請求項5までのいずれか1項に記載の画像処理装置。
【請求項7】
前記設定手段は、単位時間当たりのフレーム数が多い動画像ほど前記抽出対象範囲に含まれるフレーム画像の数を多くすること
を特徴とする請求項1から請求項6までのいずれか1項に記載の画像処理装置。
【請求項8】
前記設定手段は、動画像を構成する先頭のフレーム画像、最終のフレーム画像及びそれらの間を等分割するフレーム画像を前記基準フレーム画像として前記複数の抽出対象範囲を設定すること
を特徴とする請求項1から請求項7までのいずれか1項に記載の画像処理装置。
【請求項9】
動画像を構成する複数のフレーム画像において複数の抽出対象範囲を互いに重複しないように設定する設定手段と、
前記設定手段により設定された複数の抽出対象範囲のそれぞれから1つずつ抽出すべき代表フレーム画像を選択する選択手段と、
前記選択手段により選択された複数の代表フレーム画像を時系列的な規則性を持つように配置したフレーム配置画像を生成する配置画像生成手段
としてコンピュータを機能させるための画像処理プログラムであって、
前記設定手段は、時系列的に互いに等間隔な関係にある複数の基準フレーム画像が1つずつ含まれるように前記複数の抽出対象範囲を設定し、
前記選択手段は、前記抽出対象範囲のフレーム画像のうち時系列的に1つ前又は1つ後の抽出対象範囲から選択された代表フレーム画像に対する変化量が最大となるものを前記代表フレーム画像として選択すること
を特徴とする画像処理プログラム。

【図1】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図2】
image rotate