(57)【特許請求の範囲】
【請求項１】
複数枚の連続した静止画フレームを含む動画から動きの大きな所定枚数の静止画フレームを抽出する情報処理装置において、
隣接する静止画フレームを比較することで、静止画フレームごとに動きの量を算出するベクトル算出手段と、
前記ベクトル算出手段が算出した前記動きの量が所定の閾値を超える静止画フレームを抽出候補の静止画フレームとして選択する画像選択手段と、
前記画像選択手段により選択された前記抽出候補の静止画フレームの総数が前記所定枚数を超えることを条件に、前記動画中の前記抽出候補が密集して存在する区間は該動画中の他の区間よりも大きい抽出間隔を設定する抽出間隔設定手段と、
前記動画における前記抽出候補の静止画フレームから、前記抽出間隔設定手段が設定した抽出間隔に従い、前記所定枚数の静止画フレームを抽出する抽出手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記抽出間隔設定手段は、前記総数及び前記所定枚数に基づいて抽出間隔を設定する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記抽出間隔設定手段は、前記動画における出現位置の所定範囲ごと前記抽出間隔を設定し、
前記抽出手段は、前記所定範囲に属する前記抽出候補の静止画フレームから、当該範囲に応じた抽出間隔で静止画フレームを抽出する、
ことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記抽出手段は、前記動画における出現順序に応じて並べられた前記抽出候補の静止画フレームから、前記抽出間隔設定手段が設定した前記抽出間隔に従い、前記所定枚数の静止画フレームを抽出する、
ことを特徴とする請求項１から３の何れか１項に記載の情報処理装置。
【請求項５】
前記画像選択手段により選択された前記抽出候補の静止画フレームの総数に応じて前記所定の閾値を調整する閾値調整手段、を更に備え、
前記画像選択手段は、前記閾値調整手段により前記所定の閾値の調整が行われることを条件に、抽出候補の静止画フレームを再度選択する、
ことを特徴とする請求項１から４の何れか１項に記載の情報処理装置。
【請求項６】
前記動画の全長に応じて、前記抽出候補の静止画フレームとして選択可能な静止画フレームの許可数を設定する設定手段、を更に備え、
前記閾値調整手段は、前記抽出候補の静止画フレームの総数が前記許可数を満たさないことを条件に、前記所定の閾値を調整する、
ことを特徴とする請求項５に記載に情報処理装置。
【請求項７】
前記設定手段は、前記許可数として前記抽出候補の静止画フレームとして選択可能な静止画フレームの最大値を設定し、
前記閾値調整手段は、前記抽出候補の静止画フレームの総数が前記最大値を超えることを条件に、前記所定の閾値を高く調整する、
ことを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記設定手段は、前記許可数として前記抽出候補の静止画フレームとして選択可能な静止画フレームの最小値を設定し、
前記閾値調整手段は、前記抽出候補の静止画フレームの総数が前記最小値未満であることを条件に、前記所定の閾値を低く調整する、
ことを特徴とする請求項６又は７に記載の情報処理装置。
【請求項９】
情報処理装置が、複数枚の連続した静止画フレームを含む動画から動きの大きな所定枚数の静止画フレームを抽出する静止画フレーム抽出方法において、
隣接する静止画フレームを比較することで、静止画フレームごとに動きの量を算出するベクトル算出ステップと、
前記ベクトル算出ステップで算出した前記動きの量が所定の閾値を超える静止画フレームを抽出候補の静止画フレームとして選択する画像選択ステップと、
前記画像選択ステップで選択された前記抽出候補の静止画フレームの総数が前記所定枚数を超えることを条件に、前記動画中の前記抽出候補が密集して存在する区間は該動画中の他の区間よりも大きい抽出間隔を設定する抽出間隔設定ステップと、
前記動画における前記抽出候補の静止画フレームから、前記抽出間隔設定ステップで設定した抽出間隔に従い、前記所定枚数の静止画フレームを抽出する抽出ステップと、
を含むことを特徴とする静止画フレーム抽出方法。
【請求項１０】
コンピュータを、
動画を構成する複数枚の連続した静止画フレームの隣接する静止画フレームを比較することで、静止画フレームごとに動きの量を算出するベクトル算出手段、
前記ベクトル算出手段が算出した前記動きの量が所定の閾値を超える静止画フレームを抽出候補の静止画フレームとして選択する画像選択手段、
前記画像選択手段により選択された前記抽出候補の静止画フレームの総数が所定枚数を超えることを条件に、前記動画中の前記抽出候補が密集して存在する区間は該動画中の他の区間よりも大きい抽出間隔を設定する抽出間隔設定手段、
前記動画における前記抽出候補の静止画フレームから、前記抽出間隔設定手段が設定した抽出間隔に従い、前記所定枚数の静止画フレームを抽出する抽出手段、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数枚の連続した静止画フレームを含む動画から動きの大きな所定枚数の静止画フレームを抽出する情報処理装置、静止画フレーム抽出方法及びプログラムに関する。
【背景技術】
【０００２】
デジタル技術の発展に伴い撮像した画像をデジタルデータで管理する近年では、撮像した画像を加工する機能が組み込まれた撮像装置が知られており、例えば、モーションプリント（登録商標）機能を有するデジタルスチルカメラが知られている。なお、モーションプリント機能とは、所定のフレームレートで撮像した動画から１又は複数の静止画フレームを抽出して１枚の静止画の画像データを生成する機能である。
【０００３】
動画から複数の静止画フレームを抽出する方法としては、例えば、動画を構成する複数の静止画フレームを時間的に等間隔で抽出する方法が知られている。しかしながら、このような方法では、動きの少ない時間帯の多い動画では同じような静止画フレームばかり抽出されてしまう。
【０００４】
そのため、近年では、隣接する静止画フレーム間で動き（変化）の大きい静止画フレームを抽出する方法も知られている（特許文献１，２）。
ここで、動画を構成する複数の静止画フレームの中に動きの大きい静止画フレームが多く含まれると、想定よりも多くの静止画フレームが抽出されてしまう。そのため、特許文献１，２には、抽出する静止画フレームの数を調整する機能も開示されている。例えば、特許文献１には、抽出した静止画フレームのうち似通った静止画フレームを１つにまとめ、抽出数を減らすことが開示され、特許文献２には、動きの大きい順に所定枚数（２０枚）の静止画フレームを抽出することが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平０９−１０７５１７号公報
【特許文献２】特開２００９−１４１８８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１のように似通った静止画フレームを１つにまとめる場合、抽出した多くの静止画フレームの中に似通った静止画フレームが含まれない限り、抽出数を減らすことができない。更に、特許文献１の方法では、似通った静止画フレームを特定するといった画像認識を行わなければならず、複雑な処理が必要になり、装置の高額化や反応速度の低下につながる。
また、特許文献２のように動きの大きい順に所定枚数抽出する場合、動きの大きい時間帯に偏りのある動画、例えば６０分間の動画で最後の５分間だけ動きの大きい動画では、抽出される静止画フレームの動画中の位置が偏ってしまい、動画全体を表す静止画フレームを適切に抽出できない可能性がある。
【０００７】
本発明は、このような状況に鑑みてなされたものであり、複雑な処理を必要とすることなく動画全体を代表するより適切な静止画フレームを抽出する情報処理装置、静止画フレーム抽出方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係る端末制御システムは、複数枚の連続した静止画フレームを含む動画から動きの大きな所定枚数の静止画フレームを抽出する情報処理装置において、
隣接する静止画フレームを比較することで、静止画フレームごとに動きの量を算出するベクトル算出手段と、
前記ベクトル算出手段が算出した前記動きの量が所定の閾値を超える静止画フレームを抽出候補の静止画フレームとして選択する画像選択手段と、
前記画像選択手段により選択された前記抽出候補の静止画フレームの総数が前記所定枚数を超えることを条件に、前記動画中の前記抽出候補が密集して存在する区間は該動画中の他の区間よりも大きい抽出間隔を設定する抽出間隔設定手段と、
前記動画における前記抽出候補の静止画フレームから、前記抽出間隔設定手段が設定した抽出間隔に従い、前記所定枚数の静止画フレームを抽出する抽出手段と、
を備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、複雑な処理を必要とすることなく動画全体を代表するより適切な静止画フレームを抽出することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施形態に係る情報処理装置のハードウェアの構成を示すブロック図である。
【図２】図１の情報処理装置の機能的構成のうち、モーションプリント処理を実行するための機能的構成を示す機能ブロック図である。
【図３】図２の画像選択部の機能を説明する図である。
【図４】図２の抽出間隔設定部の機能を説明する図である。
【図５】図２の機能的構成を有する図１の情報処理装置が実行するモーションプリント処理の流れを説明するフローチャートである。
【図６】図５のモーションプリント処理の続きを説明するフローチャートである。
【図７】図５のモーションプリント処理により生成されるモーションプリント画像の一例を示す図である。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態について、図面を用いて説明する。
図１は、本発明の一実施形態に係る情報処理装置１のハードウェアの構成を示すブロック図である。情報処理装置１は、例えばデジタルスチルカメラとして構成される。
【００１２】
情報処理装置１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１３と、バス１４と、入出力インターフェース１５と、表示部１６と、入力部１７と、撮像部１８と、記憶部１９と、通信部２０と、ドライブ２１と、を備えている。
【００１３】
ＣＰＵ１１は、ＲＯＭ１２に記録されているプログラム、又は、記憶部１９からＲＡＭ１３にロードされたプログラムにしたがって各種の処理を実行する。
【００１４】
ＲＡＭ１３には、ＣＰＵ１１が各種の処理を実行する上において必要なデータ等も適宜記憶される。
【００１５】
ＣＰＵ１１、ＲＯＭ１２及びＲＡＭ１３は、バス１４を介して相互に接続されている。このバス１４にはまた、入出力インターフェース１５も接続されている。入出力インターフェース１５には、表示部１６、入力部１７、撮像部１８、記憶部１９、通信部２０及びドライブ２１が接続されている。
【００１６】
表示部１６は、ディスプレイにより構成され、撮像部１８により撮像された画像や動画等を表示する。
入力部１７は、ユーザの指示操作に応じて各種情報を入力する。
【００１７】
撮像部１８は、撮像素子やＡＦＥ（Ａｎａｌｏｇ  Ｆｒｏｎｔ  Ｅｎｄ）等から構成される光学式のカメラである。
撮像素子は、本実施形態ではＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）センサ型の光電変換素子から構成される。撮像素子には、ベイヤ配列等の色フィルタが装着されている。撮像素子は、一定時間ごとに、その間に入射されて蓄積された被写体像の光信号を光電変換（撮像）して、その結果得られるアナログの電気信号をＡＦＥに順次供給する。ＡＦＥは、当該アナログの電気信号に対して、Ａ／Ｄ（Ａｎａｌｏｇ／Ｄｉｇｉｔａｌ）変換処理等の各種信号処理を施し、その結果得られるデジタル信号を、撮像部１８の出力信号として出力する。
ここで、本実施形態における撮像部１８は、静止画に加え、所定のフレームレートの動画を撮像可能に構成される。以下、静止画を表すデジタル信号を「画像データ」と呼び、動画を表すデジタル信号を「動画データ」と呼ぶ。なお、動画データには、動画を構成するフレーム単位の静止画の画像データ（以下、「静止画フレーム」と呼ぶ）が含まれるものとする。撮像部１８から出力された画像データや動画データは、自動的に又はユーザの指示に応じて記憶部１９に記憶され、ＣＰＵ１１等により適宜読み出される。
【００１８】
記憶部１９は、ハードディスク或いはＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で構成され、各種の画像データの他、アプリケーションプログラム等の各種プログラム等を記憶する。
通信部２０は、インターネットを含むネットワークを介して他の装置（図示せず）との間で行う通信を制御する。
【００１９】
ドライブ２１には、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリ等よりなる、リムーバブルメディア４１が適宜装着される。ドライブ２１によってリムーバブルメディア４１から読み出されたプログラムは、必要に応じて記憶部１９にインストールされる。また、リムーバブルメディア４１は、記憶部１９に記憶されている画像のデータ等の各種データも、記憶部１９と同様に記憶することができる。
【００２０】
図２は、このような情報処理装置１の機能的構成のうちモーションプリント処理、即ち所定のフレームレートで撮像した動画から１又は複数の静止画フレームを抽出して１枚の静止画の画像データを生成する処理、を実行するための機能的構成を示す機能ブロック図である。なお、本実施形態では、モーションプリント処理において、動画から９枚の静止画フレームを抽出して１枚の静止画の画像データを生成することとしている。以下において、モーションプリント処理において生成された１枚の静止画の画像データを「モーションプリント画像」と呼ぶことがある。
【００２１】
ＣＰＵ１１においては、モーションプリント処理の実行が制御される場合、動画取得部１１１と、ベクトル算出部１１２と、画像選択部１１３と、閾値調整部１１４と、設定部１１５と、抽出間隔設定部１１６と、抽出部１１７と、が機能する。
【００２２】
動画取得部１１１は、動画データを記憶する記憶部１９やリムーバブルメディア４１から、動画データを取得する。動画取得部１１１が取得した動画データは、モーションプリント処理の対象として、ベクトル算出部１１２乃至抽出部１１７に供給される。
【００２３】
ベクトル算出部１１２は、動画データを構成する静止画フレームを抽出し、隣接する静止画フレームを比較することで、静止画フレームごとに動きの量（以下、「ベクトル」と呼ぶ）を算出する。なお、隣接する静止画フレームとは、動画を構成する連続的な静止画フレームのうちのｎ枚目（ｎは１以上の整数値）の静止画フレームと、ｎ−１（又はｎ＋１）枚目の静止画フレームとをいう。
静止画フレームのベクトルを算出する方法は、これまで公知の方法を採用することができ、例えば、処理対象（ｎ枚目）の静止画フレームを所定数の領域に分割した上で当該領域ごとに特徴点を算出し、隣接する静止画フレームにおいて当該特徴点がどの様に移動したかを算出することで行う。即ち、ｎ枚目の静止画フレームの中から複数の特徴点を検出すると、検出したｎ枚目の静止画フレームの特徴点の中からｎ−１枚目の静止画フレームの特徴点と対応する対応点を特定し、ｎ−１枚目の静止画フレームの特徴点からｎ枚目の静止画フレームの対応点までのベクトルを算出することで行う。
【００２４】
画像選択部１１３は、ベクトル算出部１１２が算出したベクトルが所定の閾値を超える静止画フレームを抽出候補の静止画フレーム（以下「マーキングフレーム」と呼ぶ。）として選択する。即ち、画像選択部１１３は、動画データを構成する静止画フレームのうち、動きの大きい静止画フレームをマーキングフレームとして選択する。
ところで、動画中の静止画フレームの動きは動画の種別によって異なり、動きの小さな動画もあれば、動きの大きな動画もある。例えば、定点カメラによる風景動画等は動きの小さな動画であり、スポーツ中継等の動画は動きの大きな動画である。そのため、様々な種別の動画に対応すべく、動きの大きさを判別する所定の閾値は適宜調整可能とすることが好ましい。
【００２５】
閾値調整部１１４は、この所定の閾値を適宜調整する。一例として、閾値調整部１１４は、画像選択部１１３により選択されたマーキングフレームの数が少なすぎる場合には閾値を下げ、より多くの静止画フレームがマーキングフレームとして選択されるように所定の閾値の調整を行う。他方、閾値調整部１１４は、画像選択部１１３により選択されたマーキングフレームの数が多すぎる場合には閾値を上げ、選択されるマーキングフレームを絞り込むように所定の閾値の調整を行う。言い換えると、閾値調整部１１４は、マーキングフレーム数がＭｉｎ値（最小値）未満である場合に閾値を下げ、マーキングフレーム数がＭａｘ値（最大値）を超える場合に閾値を上げる。
閾値調整部１１４が閾値の調整を行うと、画像選択部１１３は、調整された所定の閾値に基づいてマーキングフレームの選択を再度行う。
ところで、所定の閾値に基づいてマーキングフレームを選択する構成では、選択されるマーキングフレーム数は、動画の長さに略比例する。例えば、同じスポーツを撮像した３０分の動画と６０分の動画とを比較すると、６０分の動画からは３０分の動画の約２倍の数のマーキングフレームが選択されることになる。その結果、動画が長いほど閾値の調整やマーキングフレームの選択が繰り返されることになり、処理負担が増大する。
【００２６】
そこで、設定部１１５は、動画の全長に応じて、マーキングフレームとして選択可能な静止画フレームの許可数（Ｍｉｎ値及びＭａｘ値）を設定することとしてもよい。具体的には、設定部１１５は、動画の全長が短い場合にはＭｉｎ値及びＭａｘ値を低く設定し、動画の全長が長い場合にはＭｉｎ値及びＭａｘ値を高く設定する。なお、動画の全長とは、動画の時間的な長さであってもよく、また、動画を構成する総フレーム数であってもよい。また、本実施形態では、最終的に９枚の静止画フレームを抽出することから、Ｍｉｎ値は９以上であることが好ましい。
このように、動画の全長に応じてＭｉｎ値及びＭａｘ値を設定することで、閾値の調整やマーキングフレームの選択の繰り返しを低減することができる。
【００２７】
抽出間隔設定部１１６は、画像選択部１１３により選択されたマーキングフレームから最終的に抽出する９枚の静止画フレームを抽出するための抽出条件を設定する。ここで、本実施形態では、抽出条件として、マーキングフレームから９枚の静止画フレームを抽出する間隔（以下、「スキップ数」と呼ぶ）を設定することとしている。なお、抽出間隔設定部１１６によるスキップ数の設定の詳細は、図４で後述する。
【００２８】
抽出部１１７は、抽出間隔設定部１１６が設定したスキップ数に基づいて、画像選択部１１３により選択されたマーキングフレームから９枚の静止画フレームを抽出する。例えば、スキップ数「２」マーキングフレーム数「１８」とした場合、抽出部１１７は、１８枚のマーキングフレームの動画における出現順序に応じて９枚の静止画フレームを２枚間隔で抽出する。即ち、１番目や３番目等の奇数番目に出現するマーキングフレームを抽出せず、２番目や４番目等の偶数番目に出現するマーキングフレームを抽出することで９枚の静止画フレームを抽出する。もちろん、奇数番目に出現するマーキングフレームを抽出し、偶数番目に出現するマーキングフレームを抽出しないこととしてもよい。
抽出部１１７により抽出された９枚の静止画フレームは、記憶部１９に記憶され、ＣＰＵ１１等の制御のもと表示部１６に適宜表示される。
【００２９】
続いて、モーションプリント処理の実行機能について、図３及び図４を参照して具体的に説明する。図３は、画像選択部１１３の機能を説明するための図であり、図４は、抽出間隔設定部１１６の機能を説明するための図である。
【００３０】
マーキングフレームを選択する画像選択部１１３には、ベクトル算出部１１２から静止画フレームのベクトルが供給される。一例として、画像選択部１１３には、図３（Ａ）に示すような静止画フレームの領域ごとの特徴点のベクトルが供給される。
図３（Ｂ）を参照して、画像選択部１１３は、特徴点のベクトルの大きさを領域ごとに判定し、所定値以上の大きさのベクトルが算出された領域の数を特定する。
続いて、図３（Ｃ）を参照して、画像選択部１１３は、特定した領域の数が判定値を超えるものである否かを判定する。このとき、画像選択部１１３は、判定値を超える場合に当該静止画フレームをマーキングフレームとして選択し、判定値以下である場合に当該静止画フレームをマーキングフレームとして選択しない。
【００３１】
以上のように、画像選択部１１３は、ベクトルの大きさが所定値以上である領域の数に基づいて、マーキングフレームを選択する。そのため、画像選択部１１３がマーキングフレームを選択する基準となる所定の閾値は、領域ごとのベクトルの大きさ（所定値）を用いることとしてもよく、また、領域の数（判定値）を用いることとしてもよく、また、両者を用いることとしてもよい。
なお、図３に示すマーキングフレームの選択は、一例に過ぎずその他の任意の方法により選択することを妨げるものではない。即ち、例えば、領域ごとのベクトルから静止画フレーム全体のベクトルを算出し、当該全体のベクトルの大きさに基づいてマーキングフレームを選択することとしてもよい。
【００３２】
続いて、図４を参照して、抽出間隔設定部１１６によるスキップ数の設定について説明する。本実施形態における抽出間隔設定部１１６は、略均等間隔のスキップ数（図４（Ａ））や、マーキングフレームの動画中の密集度合いに応じたスキップ数（図４（Ｂ））や、動画中の出現位置に応じたスキップ数（図４（Ｃ））を設定する。
【００３３】
図４（Ａ）を参照して、略均等間隔のスキップ数を設定する場合、抽出間隔設定部１１６は、画像選択部１１３が選択したマーキングフレーム数を最終的に抽出する静止画フレームの数（以下、「抽出数」と呼ぶ）で除算した値をスキップ数として設定する。このように設定されたスキップ数を用いてマーキングフレームから９枚の静止画フレームを抽出することで、動きの大きな静止画フレームを動画全体から抽出することができる。
ところで、図４（Ａ）（ａ）のようにスキップ数が整数値である場合には均等間隔で静止画フレームを抽出することができるものの、マーキングフレーム数によっては図４（Ａ）（ｂ）のようにスキップ数に端数が生じる場合がある。このような場合には、抽出部１１７は、略均等間隔になるように適宜スキップ数ｍ（ｍは整数値で、ｍ＜スキップ数＜ｍ＋１の関係を満たす）とスキップ数ｍ＋１とを用いて静止画フレームを抽出する。
【００３４】
図４（Ｂ）を参照して、マーキングフレームの密集度合いに応じてスキップ数を設定する場合、図４（Ｂ）（ａ）に示すように抽出間隔設定部１１６は、初めに、動画中にマーキングフレームの密集部分があるか否かを判定し、その位置を特定する。密集部分の特定は、任意の方法により行うことができ、例えば、抽出間隔設定部１１６は、任意の時間内の総フレーム数に対してマーキングフレーム数が所定割合以上である時間帯を密集部分として特定する。
抽出間隔設定部１１６は、密集部分を特定すると図４（Ｂ）（ｂ）に示すように、密集度合いに応じてスキップ数を設定する。ここで、図４（Ｂ）（ｂ）では、密集部分のみに略均等間隔のスキップ数を設定することとしている。即ち、密集部分以外に６枚のマーキングフレームがあることから、密集部分から３枚の静止画フレームを抽出するようにスキップ数を６と設定している。その結果、抽出部１１７は、密集部分以外からは１枚間隔で静止画フレームを抽出し、密集部分からは６枚間隔で静止画フレームを抽出する。このように密集度合いに応じてスキップ数を設定することで、動画中の一連の場面（シーン）から多数の静止画フレームを抽出することがないため、動画全体を代表する適切な静止画フレームを抽出することができる。
なお、図４（Ｂ）（ｂ）では、密集部分以外のマーキングフレームを全て抽出することとしているがこれに限られるものではない。密集部分のマーキングフレームよりも密集部分以外のマーキングフレームを抽出し易ければ足り、密集部分以外について１を超えるスキップ数を設定することとしてもよい。即ち、密集部分に応じたスキップ数とは、密集部分ほど大きな間隔のスキップ数を設定することを意味し、密集部分のみにスキップ数を設定することではない。
【００３５】
図４（Ｃ）を参照して、動画中の出現位置に応じたスキップ数を設定する場合、図４（Ｃ）（ａ）に示すように、抽出間隔設定部１１６は、初めに、動画を所定範囲に区分けし、マーキングフレームの動画中の出現位置に基づいて当該所定範囲内に属するマーキングフレームを特定する。動画の区分けは、任意に設定することができ、例えば、前後半のように動画を時間的に区分けすることとしてもよく、また、動画の場面（シーン）に応じて区分けすることとしてもよい。なお、図４（Ｃ）（ａ）では、時間的に動画の前半、中盤、後半の３つに区分けすることとしている。
抽出間隔設定部１１６は、区分けした所定範囲に属するマーキングフレームを特定すると図４（Ｃ）（ｂ）に示すように、属するマーキングフレーム数に応じて所定範囲ごとにスキップ数を設定する。図４（Ｃ）のように動画を３つの所定範囲に区分けする場合には、例えば、夫々の所定範囲から３枚の静止画フレームを抽出するスキップ数を設定する。図４（Ｃ）（ｂ）では、６枚のマーキングフレームが属する前半部分にはスキップ数として２を設定し、９枚のマーキングフレームが属する中盤部分にはスキップ数として３を設定し、３枚のマーキングフレームが属する後半部分にはスキップ数として１を設定している。このように、動画中の出現位置に応じたスキップ数を設定することで、動画全体から動きの大きな静止画フレームを適切に抽出することができる。
なお、図４（Ｃ）（ｂ）では、所定範囲から抽出する静止画フレームを全て同じ（３枚ずつ）としているが、これに限られるものではなく、動画を区分けした所定範囲に応じて抽出する静止画フレームの数を異ならせることとしてもよい。
【００３６】
以上、モーションプリント処理を実行する際のＣＰＵ１１の機能について説明した。続いて、図２の機能的構成の情報処理装置１（ＣＰＵ１１）が実行するモーションプリント処理について説明する。
図５及び図６は、図２の機能的構成を有する図１の情報処理装置１が実行するモーションプリント処理の流れを説明するフローチャートである。情報処理装置１によりモーションプリント処理が実行されると、ＣＰＵ１１において図２の各機能ブロックが機能して、次のような処理が行われる。即ち、以下の各ステップの処理の動作主体は、ハードウェアではＣＰＵ１１が該当する。但し、本発明の理解を容易なものとすべく、ＣＰＵ１１において機能する各機能ブロックが動作主体であるものとして、以下の各ステップの処理の説明をする。
【００３７】
モーションプリント処理は、入力部１７を介してユーザから開始指示を受け付けることを契機に開始される。
初めに、ステップＳ１において、動画取得部１１１は、記憶部１９から動画データを取得する。続いて、ステップＳ２において、設定部１１５は、取得した動画データの全長に応じて、マーキングフレーム数のＭｉｎ値及びＭａｘ値を設定する。
【００３８】
続いて、ステップＳ３において、ベクトル算出部１１２は、ステップＳ１で取得した動画データを構成する静止画フレームを処理対象として読み込み、続いて、ステップＳ４において、ベクトル算出部１１２は、１枚前の静止画フレームがあるか否か、即ち、読み込んだ静止画フレームが２枚目以降であるか否かを判定する。このとき、１枚前の静止画フレームがない場合には、ステップＳ４においてＮＯと判定されて、処理はステップＳ３に戻され、次の静止画フレームが読み込まれる。他方、１枚前の静止画フレームがある場合には、ベクトル算出部１１２は、続いて、ステップＳ３で読み込んだ静止画フレームと１枚前の静止画フレームとを比較し、ベクトルを算出する（ステップＳ５）。
【００３９】
続いて、ステップＳ６において、画像選択部１１３は、ステップＳ３で読み込んだ静止画フレームが動きのあるフレームであるか否かを判定する。即ち、画像選択部１１３は、ステップＳ５で算出したベクトルの大きさや数が所定の閾値を超えるか否かを判定する。このとき、画像選択部１１３は、所定の閾値を超える静止画フレームについては、マーキングフレームとして選択し、マーキングフレーム数を１加算する。他方、所定の閾値以下である静止画フレームについては、画像選択部１１３は、マーキングフレームとして選択することなく、処理をステップＳ８に移す。
【００４０】
ステップＳ８において、画像選択部１１３は、次の静止画フレームがあるか否かを判定する。即ち、動画データを構成する静止画フレームの全てについて、ステップＳ３〜ステップＳ７の処理を行ったか否かを判定する。このとき、画像選択部１１３は、次の静止画フレームがある場合には処理をステップＳ３に移し、次の静止画フレームがない場合には処理をステップＳ９に移す。
【００４１】
ステップＳ９において、閾値調整部１１４は、ステップＳ７で選択されたマーキングフレームの数がステップＳ２で設定したＭｉｎ値以上Ｍａｘ値以下であるか否かを判定する。このとき、マーキングフレーム数がＭｉｎ値以上Ｍａｘ値以下である場合には、閾値調整部１１４は、処理を図６のステップＳ１４に移し、マーキングフレーム数がＭｉｎ値以上Ｍａｘ値以下でない場合には、閾値調整部１１４は、処理をステップＳ１０に移す。
【００４２】
ステップＳ１０において、閾値調整部１１４は、マーキングフレーム数がＭｉｎ値未満であるか否かを判定する。このとき、マーキングフレーム数がＭｉｎ値未満である場合には、閾値調整部１１４は、処理をステップＳ１１に移し、マーキングフレーム数がＭｉｎ値未満でない、即ちマーキングフレーム数がＭａｘ値を超える場合には、閾値調整部１１４は、処理をステップＳ１２に移す。
【００４３】
マーキングフレーム数がＭｉｎ値未満である場合、ステップＳ１１において、閾値調整部１１４は、より多くの静止画フレームがマーキングフレームとして選択されるように所定の閾値を低く調整する。他方、マーキングフレーム数がＭａｘ値を超える場合、ステップＳ１２において、閾値調整部１１４は、マーキングフレームとして選択される静止画フレームを絞るように所定の閾値を高く調整する。ステップＳ１１又はステップＳ１２に続いて、閾値調整部１１４は、マーキングフレーム数をクリアし（ステップＳ１３）、処理をステップＳ３に移す。これにより、画像選択部１１３は、調整した閾値に基づいて再度マーキングフレームを選択する。なお、静止画フレームごとのベクトルは既に算出されていることから、ステップＳ１３からステップＳ３に移った場合には、ベクトルを算出するステップＳ４，Ｓ５の処理を省略することとしてもよい。
【００４４】
続いて、図６を参照して、マーキングフレーム数がＭｉｎ値以上Ｍａｘ値以下である場合、ステップＳ１４において、抽出間隔設定部１１６は、スキップ数の設定を行う。なお、抽出間隔設定部１１６によるスキップ数の設定は、図４で上述した通りである。
【００４５】
続いて、ステップＳ１５では、抽出部１１７は、ステップＳ７で画像選択部１１３が選択したマーキングフレームを読み込む。ここで、抽出部１１７は、動画における出現順序に沿ってマーキングフレームを読み込む。続いて、ステップＳ１６において、抽出部１１７は、ステップＳ１５で読み込んだマーキングフレームがスキップ対象のマーキングフレームであるか否かを判定する。このとき、スキップ対象のマーキングフレームである場合には、抽出部１１７は、当該マーキングフレームを抽出することなく、処理をステップＳ１９に移す。
【００４６】
他方、スキップ対象のマーキングフレームでない場合には、抽出部１１７は、当該マーキングフレームをモーションプリント画像に用いる静止画フレームとして抽出する（ステップＳ１７）。続いて、ステップＳ１８において、抽出部１１７は、抽出したマーキングフレームを、モーションプリント画像の規定位置に貼り付け、処理をステップＳ１９に移す。
ここで、図７は、モーションプリント処理によって生成されるモーションプリント画像の一例である。図７に示すように、モーションプリント画像は、９枚の静止画フレームにより構成される。抽出部１１７により抽出された静止画フレームは、モーションプリント画像の左上から順に貼り付けられる。即ち、最初に抽出された静止画フレームは、左上に貼り付けられ、２番目に抽出された静止画フレームは、その右隣に貼り付けられる。その後、４番目に抽出された静止画フレームが右上に貼り付けられると、５番目に抽出された静止画フレームは、中央部分に貼り付けられる。そして、６番目から９番目に抽出された静止画フレームは、左下から順に貼り付けられる。なお、中央部分に貼り付けられる静止画フレームは、他の静止画フレームよりも大きくすることとしてもよい。
【００４７】
図６に戻り、ステップＳ１９において、抽出部１１７は、次のマーキングフレームがあるか否かを判定する。即ち、抽出部１１７は、ステップＳ７で画像選択部１１３が選択したマーキングフレームの全てに対して、ステップＳ１５〜ステップＳ１８の処理を行ったか否かを判定する。このとき、抽出部１１７は、次のマーキングフレームがある場合には、処理をステップＳ１５に移し、次のマーキングフレームがない場合には、モーションプリント処理を終了する。
【００４８】
以上説明したように、本実施形態の情報処理装置１は、動きの大きい静止画フレームをマーキングフレームとして選択しておき、選択したマーキングフレームがモーションプリント画像の生成に必要となる９枚よりも多い場合に、不要なマーキングフレームをスキップする（抽出しない）こととしている。これにより、動きのある静止画フレームを抽出することができ、同じような静止画フレームばかり抽出されてしまうことを防止できる。
このとき、本実施形態の情報処理装置１では、マーキングフレーム数と抽出数とに基づいて、静止画フレームを抽出する間隔（スキップ数）を設定することとしている。これにより、モーションプリント画像の生成に必要となる静止画フレームを、動画全体から所定の間隔で抽出することになるため、抽出される静止画フレームの動画中の出現位置が偏ることがなく、また、画像認識のような複雑な処理を行う必要がない。その結果、本実施形態の情報処理装置１によれば、動画全体を代表するより適切な静止画フレームを抽出することができる。
【００４９】
なお、静止画フレームを抽出する間隔は、略均等間隔としてもよく、また、マーキングフレームの動画中の密集度合いに応じた間隔としてもよく、また、動画中の出現位置に応じた間隔としてもよい。このような様々な間隔を用いて静止画フレームを抽出することで、多種多様な動画から適切な静止画フレームを抽出することができる。
【００５０】
このとき、情報処理装置１では、マーキングフレームを選択する基準となる所定の閾値（即ち静止画フレームの動きの大きさ）を、選択されたマーキングフレームの数に応じて適宜調整することとしている。これにより、動画の種別に関わらず、即ち風景動画等のような動きの小さな動画であってもスポーツ中継等のような動きの大きな動画であっても、当該動画を代表する静止画フレームを適切に抽出することができる。
【００５１】
また、情報処理装置１では、所定の閾値を調整する契機となるマーキングフレームの数を、動画の全長に応じて設定することとしている。即ち、動画の全長が長い場合には、選択されるマーキングフレームの数も多くなることから、閾値調整のマーキングフレームの数を多く設定する一方で、動画の全長が短い場合には、選択されるマーキングフレームの数が少なくなることから、閾値調整のマーキングフレームの数を少なく設定する。これにより、閾値の調整やマーキングフレームの選択が繰り返されることを防止でき、処理負担の軽減を図ることができる。
【００５２】
なお、本発明は、上述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。
【００５３】
上述の実施形態では、本発明が適用される情報処理装置１は、デジタルスチルカメラを例として説明したが、特にこれに限定されない。例えば、本発明は、動画データを加工する機能を有する電子機器一般に適用することができる。具体的には、例えば、本発明は、ノート型のパーソナルコンピュータ、デジタルビデオカメラ、テレビジョン受像機、携帯型ナビゲーション装置、携帯電話機、ポータブルゲーム機等に適用可能である。
【００５４】
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。
換言すると、図２の機能的構成は例示に過ぎず、特に限定されない。即ち、上述した一連の処理を全体として実行できる機能が情報処理装置１に備えられていれば足り、この機能を実現するためにどのような機能ブロックを用いるのかは特に図２の例に限定されない。
また、１つの機能ブロックは、ハードウェア単体で構成してもよいし、ソフトウェア単体で構成してもよいし、それらの組み合わせで構成してもよい。
【００５５】
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、コンピュータ等にネットワークや記録媒体からインストールされる。
コンピュータは、専用のハードウェアに組み込まれているコンピュータであってもよい。また、コンピュータは、各種のプログラムをインストールすることで、各種の機能を実行することが可能なコンピュータ、例えば汎用のパーソナルコンピュータであってもよい。
【００５６】
このようなプログラムを含む記録媒体は、ユーザにプログラムを提供するために装置本体とは別に配布される図１のリムーバブルメディア４１により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される記録媒体等で構成される。リムーバブルメディア４１は、例えば、磁気ディスク（フロッピディスクを含む）、光ディスク、又は光磁気ディスク等により構成される。光ディスクは、例えば、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ），ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等により構成される。光磁気ディスクは、ＭＤ（Ｍｉｎｉ−Ｄｉｓｋ）等により構成される。また、装置本体に予め組み込まれた状態でユーザに提供される記録媒体は、例えば、プログラムが記録されている図１のＲＯＭ１２や、図１の記憶部１９に含まれるハードディスク等で構成される。
【００５７】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的或いは個別に実行される処理をも含むものである。
【００５８】
以上、本発明のいくつかの実施形態について説明したが、これらの実施形態は、例示に過ぎず、本発明の技術的範囲を限定するものではない。本発明はその他の様々な実施形態を取ることが可能であり、更に、本発明の要旨を逸脱しない範囲で、省略や置換等種々の変更を行うことができる。これら実施形態やその変形は、本明細書等に記載された発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【００５９】
以下に、本願の出願当初の特許請求の範囲に記載された発明を付記する。
［付記１］
複数枚の連続した静止画フレームを含む動画から動きの大きな所定枚数の静止画フレームを抽出する情報処理装置において、
隣接する静止画フレームを比較することで、静止画フレームごとに動きの量を算出するベクトル算出手段と、
前記ベクトル算出手段が算出した前記動きの量が所定の閾値を超える静止画フレームを抽出候補の静止画フレームとして選択する画像選択手段と、
前記画像選択手段により選択された前記抽出候補の静止画フレームの総数が前記所定枚数を超えることを条件に、前記総数及び前記所定枚数に基づいて抽出間隔を設定する抽出間隔設定手段と、
前記動画における出現順序に応じて並べられた前記抽出候補の静止画フレームから、前記抽出間隔設定手段が設定した抽出間隔に従い、前記所定枚数の静止画フレームを抽出する抽出手段と、
を備えることを特徴とする情報処理装置。
［付記２］
前記抽出間隔設定手段は、前記総数を前記所定枚数で除算した値を前記抽出間隔として設定する、
ことを特徴とする付記１に記載の情報処理装置。
［付記３］
前記抽出間隔設定手段は、前記動画における前記抽出候補の静止画フレームの出現位置の密集度合いに応じて異なる抽出間隔を設定する、
ことを特徴とする付記１に記載の情報処理装置。
［付記４］
前記抽出間隔設定手段は、前記動画における出現位置の所定範囲ごと前記抽出間隔を設定し、
前記抽出手段は、前記所定範囲に属する前記抽出候補の静止画フレームから、当該範囲に応じた抽出間隔で静止画フレームを抽出する、
ことを特徴とする付記１に記載の情報処理装置。
［付記５］
前記画像選択手段により選択された前記抽出候補の静止画フレームの総数に応じて前記所定の閾値を調整する閾値調整手段、を更に備え、
前記画像選択手段は、前記閾値調整手段により前記所定の閾値の調整が行われることを条件に、抽出候補の静止画フレームを再度選択する、
ことを特徴とする付記１乃至４の何れか１つに記載の情報処理装置。
［付記６］
前記動画の全長に応じて、前記抽出候補の静止画フレームとして選択可能な静止画フレームの許可数を設定する設定手段、を更に備え、
前記閾値調整手段は、前記抽出候補の静止画フレームの総数が前記許可数を満たさないことを条件に、前記所定の閾値を調整する、
ことを特徴とする付記５に記載に情報処理装置。
［付記７］
前記設定手段は、前記許可数として前記抽出候補の静止画フレームとして選択可能な静止画フレームの最大値を設定し、
前記閾値調整手段は、前記抽出候補の静止画フレームの総数が前記最大値を超えることを条件に、前記所定の閾値を高く調整する、
ことを特徴とする付記６に記載の情報処理装置。
［付記８］
前記設定手段は、前記許可数として前記抽出候補の静止画フレームとして選択可能な静止画フレームの最小値を設定し、
前記閾値調整手段は、前記抽出候補の静止画フレームの総数が前記最小値未満であることを条件に、前記所定の閾値を低く調整する、
ことを特徴とする付記６又は７に記載の情報処理装置。
［付記９］
情報処理装置が、複数枚の連続した静止画フレームを含む動画から動きの大きな所定枚数の静止画フレームを抽出する静止画フレーム抽出方法において、
隣接する静止画フレームを比較することで、静止画フレームごとに動きの量を算出するベクトル算出ステップと、
前記ベクトル算出ステップで算出した前記動きの量が所定の閾値を超える静止画フレームを抽出候補の静止画フレームとして選択する画像選択ステップと、
前記画像選択ステップで選択された前記抽出候補の静止画フレームの総数が前記所定枚数を超えることを条件に、前記総数及び前記所定枚数に基づいて抽出間隔を設定する抽出間隔設定ステップと、
前記動画における出現順序に応じて並べられた前記抽出候補の静止画フレームから、前記抽出間隔設定ステップで設定した抽出間隔に従い、前記所定枚数の静止画フレームを抽出する抽出ステップと、
を含むことを特徴とする静止画フレーム抽出方法。
［付記１０］
コンピュータを、
動画を構成する複数枚の連続した静止画フレームの隣接する静止画フレームを比較することで、静止画フレームごとに動きの量を算出するベクトル算出手段、
前記ベクトル算出手段が算出した前記動きの量が所定の閾値を超える静止画フレームを抽出候補の静止画フレームとして選択する画像選択手段、
前記画像選択手段により選択された前記抽出候補の静止画フレームの総数が所定枚数を超えることを条件に、前記総数及び前記所定枚数に基づいて抽出間隔を設定する抽出間隔設定手段、
前記動画における出現順序に応じて並べられた前記抽出候補の静止画フレームから、前記抽出間隔設定手段が設定した抽出間隔に従い、前記所定枚数の静止画フレームを抽出する抽出手段、
として機能させることを特徴とするプログラム。
【符号の説明】
【００６０】
１・・・情報処理装置、１１・・・ＣＰＵ、１２・・・ＲＯＭ、１３・・・ＲＡＭ、１４・・・バス、１５・・・入出力インターフェース、１６・・・表示部、１７・・・入力部、１８・・・撮像部、１９・・・記憶部、２０・・・通信部、２１・・・ドライブ、４１・・・リムーバブルメディア、１１１・・・動画取得部、１１２・・・ベクトル算出部、１１３・・・画像選択部、１１４・・・閾値調整部、１１５・・・設定部、１１６・・・抽出間隔設定部、１１７・・・抽出部
【図１】
0006019647.tif 000002
【図２】
0006019647.tif 000003
【図３】
0006019647.tif 000004
【図４】
0006019647.tif 000005
【図５】
0006019647.tif 000006
【図６】
0006019647.tif 000007
【図７】
0006019647.tif 000008