本開示の実施形態が、以下に添付図面を参照しながら、技術的事項、構造的特徴、達成された対象、及び効果に関して詳細に説明される。具体的には、本開示の実施形態における用語は、単に特定の実施形態の目的を説明するためのものであり、本発明を限定するものではない。
異なる図の間の同じ参照数字は、説明が他のものに適用される1つのものについて実質的に同じ要素を示す。
本明細書中で使用される「使用又は使用する」という用語は、対象物が工程を実行するために直接採用される場合、又は、対象物が少なくとも1つの介在する工程によって変更され、変更された対象物がその工程を実行するために直接採用される場合を指す。
いくつかの実施態様は、本明細書では閾値と関連して説明されている。値と閾値との関係を説明するために本明細書で使用される用語「より大きい」(又は同様の用語)は、用語「よりも大きいか又は等しい」、「以上」(又は同様の用語)と互換的に使用されてもよい。同様に、値と閾値との関係を説明するために本明細書で使用される用語「未満」(又は同様の用語)は、用語「未満又は等しい」、「以下」(又は同様の用語)と互換的に使用されてもよい。本明細書で使用される、閾値を「超える」(又は同様の用語)は、閾値が使用される文脈に応じて、「閾値より大きい」、「閾値よりも大きいか又は等しい」、「閾値より小さい」、「閾値よりも小さいか又は等しい」、あるいは他の同様の用語と互換的に使用されてもよい。
図1は、本開示の一実施形態に係る端末100における入力、処理、及び出力用のハードウェアモジュールを示すブロック図である。図1を参照すると、端末100は、カメラモジュール102と、プロセッサモジュール104と、メモリモジュール106と、ディスプレイモジュール108と、ストレージモジュール110と、有線又は無線通信モジュール112と、バス114とを含む。一実施形態では、端末100は、携帯電話、スマートフォン、タブレット、ノートブックコンピュータ、デスクトップコンピュータ、又は動き検出を実行するのに十分な計算能力を有する任意の電子デバイスであってもよい。
カメラモジュール102は、入力用ハードウェアモジュールであり、バス114を介してプロセッサモジュール104に送信されるべき複数のフレームを連続してキャプチャする(取り込む)ように構成されている。プロセッサモジュール104は、フレームを使用して、図2を参照して説明されるプレビューストリーム及びビデオストリームを生成する。一実施形態では、カメラモジュール102が通常のキャプチャ(取り込み)を行う場合、カメラモジュール102は30fps等の通常のフレームレートでキャプチャし、カメラモジュール102がスローモーションキャプチャを行う場合、カメラモジュール102は120fps、240fps、又は480fps等の高いフレームレートでキャプチャする。一実施形態では、カメラモジュール102は、RGBカメラ、又は、グレースケールカメラを含む。別の実施形態では、フレームは、ストレージモジュール110、又は有線又は無線通信モジュール112等の別の入力用ハードウェアモジュールを使用して取得されてもよい。ストレージモジュール110は、バス114を介してプロセッサモジュール104に送信されるべきフレームを格納するように構成されている。有線又は無線通信モジュール112は、有線又は無線の通信を介してネットワークからフレームを受信するように構成されており、フレームは、バス114を介してプロセッサモジュール104に送信されるべきものである。
メモリモジュール106は、プログラム命令を格納しており、このプログラム命令は、プロセッサモジュール104によって実行され、これにより、プロセッサモジュール104は、誤動作のない動き検出を実行する。一実施形態では、プロセッサモジュール104は、誤動作のない動き検出を使用してスローモーションキャプチャを自動的にトリガするスローモーションキャプチャリング方法を実行する。スローモーションキャプチャリング方法については、図2を参照して説明する。一実施形態では、メモリモジュール106は、少なくとも1つのメモリを含む一過性又は非一過性のコンピュータ可読媒体であってもよい。一実施形態では、プロセッサモジュール104は、バス114を介して、カメラモジュール102、メモリモジュール106、ディスプレイモジュール108、ストレージモジュール110、及び有線若しくは無線通信モジュール112に直接若しくは間接的に信号を送信し、並びに/又は、カメラモジュール102、メモリモジュール106、ディスプレイモジュール108、ストレージモジュール110、及び有線若しくは無線通信モジュール112から直接若しくは間接的に信号を受信する少なくとも1つのプロセッサを含む。一実施形態では、この少なくとも1つのプロセッサは、中央処理装置(CPU)(複数可)、グラフィックス処理装置(GPU)(複数可)、及び/又はデジタル信号プロセッサ(DSP)(複数可)であってもよい。上記CPUは、フレーム、プログラム命令の一部、及びその他のデータ又は命令を、バス114を介して、GPU(複数可)、及び/又はDSP(複数可)に送ってもよい。
ディスプレイモジュール108は、出力用ハードウェアモジュールであり、バス114を介してプロセッサモジュール104から受信したプレビューストリーム及び/又はビデオストリームを表示するように構成されている。別の実施形態では、プレビューストリーム及び/又はビデオストリームは、ストレージモジュール110、又は有線若しくは無線通信モジュール112等の別の出力用ハードウェアモジュールを使用して出力されてもよい。ストレージモジュール110は、バス114を介してプロセッサモジュール104から受信したビデオストリームを格納するように構成されている。有線又は無線通信モジュール112は、プレビューストリーム及び/又はビデオストリームを、有線又は無線の通信を介してネットワークに送信するように構成されており、このプレビューストリーム及び/又はビデオストリームは、バス114を介してプロセッサモジュール104から受信される。
端末100は、その構成要素のすべてがバス114によって一緒に統合されるコンピューティングシステムの1つのタイプである。カメラモジュール102の代わりにリモートカメラモジュールを有するコンピューティングシステム等の他のタイプのコンピューティングシステムは、本開示の企図された範囲内にある。
図2は、本開示の一実施形態に係るスローモーションキャプチャリング方法200を示すフローチャートである。図1及び図2を参照すると、スローモーションキャプチャリング方法200は、以下の工程を含む。
工程202において、ジャイロスコープからサンプルが取得される。サンプルは、カメラモジュール102についての回転運動があるか否かを示す。工程204において、カメラモジュール102についての回転運動がある場合には、工程206が進められ、そうでない場合には、工程208が進められる。工程206において、ユーザはポーズを修正することを案内される。カメラモジュール102についての回転運動は、例えば、カメラモジュール102がスローモーションキャプチャを実行するためにユーザが端末100を保持する際のユーザの手の震えによって生じることがある。スローモーションキャプチャを実行する際にカメラモジュール102についての回転運動があると、カメラモジュール102でキャプチャされたフレームにブレが含まれる可能性があるからである。それゆえ、工程208でスローモーションキャプチャがトリガされる前に、ユーザがポーズを修正するように案内される。
工程208において、スローモーションキャプチャを自動的にトリガするために、プレビューストリームを用いて誤動作のない動き検出が実施される。工程208は、図3~図22を参照して説明される。
工程210において、スローモーションキャプチャが実行され、ビデオストリームに反映され、検出結果がプレビューストリームに示される。工程208でスローモーションキャプチャがトリガされた後、プロセッサモジュール104は、カメラモジュール102にスローモーションキャプチャを実行させ、スローモーションキャプチャによってキャプチャされたフレームがビデオストリームに反映される。スローモーションキャプチャを反映したビデオストリームの一部は、例えば、ストレージモジュール110に記録されてもよい。スローモーション撮影の原因となる移動物体である検出結果がスローモーション撮影時に、プレビューストリームに表示される。プレビューストリームのフレームレートは、30fps等の通常のフレームレートで連続的に表示される。ユーザは、表示モジュール108を用いてプレビューストリームを閲覧することにより、検出結果をリアルタイムで閲覧することができる。工程212において、スローモーションキャプチャが所定の期間継続した場合、工程214が進められ、そうでない場合には、方法200は工程210にループバックする。上記所定の期間は、例えば、10秒であってもよい。工程214において、スローモーションキャプチャが終了される。
図3は、本開示の一実施形態に係るスローモーションキャプチャリング方法200において、スローモーションキャプチャを自動的にトリガするために、誤動作のない動き検出を実行する工程208を示すフローチャートである。図1~図3を参照すると、工程208は、以下の工程を含む。
工程302において、現在のフレームセットが取得される。現在のフレームセットは、連続する複数のフレームを含む。現在のフレームセットは、プレビューストリームを使用して取得される。
工程304において、現在のフレームセットにおける動き(モーション)又はシーン変化が検出されて、現在検出された動き又はシーン変化が生成される。現在のフレームセットは、互いに並置され、変化している第1のピクセルを含む。この第1のピクセルは、現在のフレームセットにおける移動物体の動き又は現在のフレームセットにおけるシーン変化を含んでもよい。シーン変化は、カメラモジュール102の動きによって引き起こされてもよい。一実施形態では、工程304は、ピクセル差分法等の動き検出法により、現在のフレームセットにおける動き又はシーン変化を識別する現在検出された動き又はシーン変化を生成する。別の実施形態では、現在検出された動き又はシーン変化は、動きベクトル法によって生成される。工程304は、動きをシーン変化から区別しない。工程304は、図4~図9を参照してさらに説明される。図4~図9を参照して説明される実施形態では、現在のフレームセットは3つのフレームを有している。別の実施形態では、現在のフレームセットは、連続する2つのフレームを有する。
工程306において、現在検出された動き又はシーン変化を使用して、連続的な動きの確認が実行される。工程306は、動きをシーン変化から区別する。工程306は、図10~図22を参照して説明される。工程308において、連続的な動きが検出された場合には、工程210が進められ、そうでない場合には、工程208が工程302にループバックして、次の反復のための現在のフレームセットを取得する。工程308は、図10の工程1014、図14の1414、又は図21の2116のスローモーションキャプチャ開始フラグに基づいて、連続的な動きが検出されたか否かを判断する。
図4は、本開示の一実施形態に係る、現在のフレームセットにおける動き又はシーン変化を検出する工程304を示すフローチャートである。工程304は、ピクセル差分法を使用して実行される。工程304は、以下の工程を含む。工程402において、現在のフレームセットにおける前々回のフレームと現在のフレームとの間の第1のピクセル差分画像が取得される。工程404において、現在のフレームセットにおける前回のフレームと現在のフレームとの間の第2のピクセル差分画像が取得される。工程406において、第1のピクセル差分画像及び第2のピクセル差分画像を用いてAND演算が実行され、現在検出された動き又はシーン変化を含む第1の画像が取得される。
図5は、本開示の実施形態に係る、現在のフレームセットにおいて動き又はシーン変化を検出する工程304における画像502~512を説明する図であり、工程304が移動物体の例に適用される図である。図4及び図5を参照すると、現在のフレームセットは、前々回のフレーム502と、前回のフレーム504と、現在のフレーム506とを連続して含む。前々回のフレーム502は、移動中の第1の位置にある移動物体のピクセル514を含む。前回のフレーム504は、移動中の第2の位置にある移動物体のピクセル516を含む。現在のフレーム506は、移動中の第3の位置にある移動物体のピクセル518を含む。前回のフレーム504及び現在のフレーム506におけるピクセル514並びにピクセル514と並置されたピクセル、前々回のフレーム502及び現在のフレーム506におけるピクセル516並びにピクセル516と並置されたピクセル、並びに前々回のフレーム502及び前回のフレーム504におけるピクセル518並びにピクセル518と並置されたピクセルは、変化しており、現在のフレームセットにおける移動物体の動きを含む。
工程402において、現在のフレームセットにおける前々回のフレーム502と現在のフレーム506との間の第1のピクセル差分画像508が取得される。第1のピクセル差分画像508は、それぞれが前々回のフレーム502における対応するピクセルのピクセル値と、この対応するピクセルと並置されている現在のフレーム506におけるピクセルのピクセル値との間の差の絶対値に等しいピクセル値を有する複数のピクセルを含む。一実施形態では、本開示全体にわたるすべてのピクセル値は、輝度値(例えば、ルーマ又はルミナンス)である。別の実施形態では、本開示全体にわたるすべてのピクセル値は、カラー値である。それゆえ、第1のピクセル差分画像508におけるピクセル520は、前々回のフレーム502及び現在のフレーム506における移動物体の動きに起因するピクセル差を示す。
工程404において、現在のフレームセットにおける前回のフレーム504と現在のフレーム506との間の第2のピクセル差分画像510が取得される。第2のピクセル差分画像510は、それぞれが、前回のフレーム504における対応するピクセルのピクセル値と、この対応するピクセルと並置されている現在のフレーム506におけるピクセルのピクセル値との間の差の絶対値に等しいピクセル値を有する複数のピクセルを含む。それゆえ、第2のピクセル差分画像510におけるピクセル522は、前回のフレーム504及び現在のフレーム506における移動物体の動きに起因するピクセル差を示す。
工程406において、第1のピクセル差分画像508及び第2のピクセル差分画像510を使用してAND演算が実行され、現在検出された動き又はシーン変化を含む第1の画像512が取得される。このAND演算は、ピクセル差を示している第1のピクセル差分画像508におけるピクセル520及び第2のピクセル差分画像510におけるピクセル522の交わり(共通部分)524を求める。第1のピクセル差分画像508におけるピクセル520及び第2のピクセル差分画像510におけるピクセル522との交わり524は、現在検出された動き又はシーン変化524を含む。
図6は、本開示の実施形態に係る、現在のフレームセットにおいて動き又はシーン変化を検出する工程304における画像602~612を説明する図であり、工程304が点滅(フリッカリング)の例に適用される図である。図4及び図6を参照すると、現在のフレームセットは、前々回のフレーム602と、前回のフレーム604と、現在のフレーム606とを連続して含む。前々回のフレーム602は、第1の光強度条件の照明下での静的シーンのピクセルを含む。前回のフレーム604は、第2の光強度条件の照明下での静的シーンのピクセルを含む。現在のフレーム606は、第1の光強度条件の照明下での静的シーンのピクセルを含む。第1の光強度条件は、点滅により第2の光強度条件とは異なる。
工程402において、現在のフレームセットにおける前々回のフレーム602と現在のフレーム606との間の第1のピクセル差分画像608が取得される。第1のピクセル差分画像608は、それぞれが、前々回のフレーム602における対応するピクセルのピクセル値と、対応するピクセルと並置されている現在のフレーム606におけるピクセルのピクセル値との間の差の絶対値に等しいピクセル値を有する複数のピクセルを含む。前々回のフレーム602及び現在のフレーム606のシーンは静止しており、同じ光量条件下にあるため、前回のフレーム604及び現在のフレーム606における動き又はシーン変化に起因するピクセル差を示す第1のピクセル差分画像608におけるピクセルは存在しない。
工程404において、現在のフレームセットにおける前回のフレーム604と現在のフレーム606との間の第2のピクセル差分画像610が取得される。第2のピクセル差分画像610は、それぞれが前回のフレーム604における対応するピクセルのピクセル値と、この対応するピクセルと並置されている現在のフレーム606におけるピクセルのピクセル値との間の差の絶対値に等しいピクセル値を有する複数のピクセルを含む。前々回のフレーム602及び現在のフレーム606のシーンは静止しており、異なる光量条件下にあるため、第2のピクセル差分画像610におけるすべてのピクセルは、前々回のフレーム604及び現在のフレーム606における動き又はシーン変化に起因するピクセル差を示す。
工程406において、第1のピクセル差分画像608及び第2のピクセル差分画像610を使用してAND演算が実行され、現在検出された動き又はシーン変化を含む第1の画像612が取得される。このAND演算は、ピクセル差を示している第1のピクセル差分画像608におけるピクセル及び第2のピクセル差分画像610におけるピクセルの交わりを求める。第1のピクセル差分画像608にはピクセル差を示すピクセルがないので、交わりは無(ヌル)である。それゆえ、点滅によるピクセル差を示す第2のピクセル差分画像610におけるピクセルが、スローモーションキャプチャを誤ってトリガすることはない。
図7は、本開示の一実施形態に係る、第1のピクセル差分画像及び第2のピクセル差分画像を使用してAND演算を行う工程406を示すフローチャートである。図7を参照すると、工程702において、第1のピクセル差分画像及び第2のピクセル差分画像に対してAND演算が実行され、AND画像が取得される。工程704において、このAND画像は縮小閾値を用いて2値化されて2値画像が取得され、この2値画像は第1の画像である。AND画像における各ピクセルについて、各ピクセルが縮小閾値よりも大きいピクセル値を有する場合、上記2値画像における対応するピクセルは255のピクセル値を有し、各ピクセルが縮小閾値より小さいか又は等しいピクセル値を有する場合、2値画像における対応するピクセルは0のピクセル値を有する。別の実施形態では、第1のピクセル差分画像及び第2のピクセル差分画像が最初に2値化されて2値化画像が生成され、その後、これらの2値化画像に対してAND演算が実行される。
図8は、本開示の一実施形態に係る、AND演算を実行する工程406の後に実行される浸食演算(消去操作、eroding operation)を実行する工程802を示すフローチャートである。図8を参照すると、工程406は、工程802をさらに含む。工程802において、浸食演算が第1の画像に対して実行されて、浸食された画像が取得され、現在検出された動き又はシーン変化が、この浸食された画像において示される。
図9は、本開示の一実施形態に係る、浸食演算を実行する工程802における画像902を示す図である。図5、図8、及び図9を参照すると、工程802において、浸食演算が第1の画像512に対して実行されて、浸食された画像902が取得され、現在検出された動き又はシーン変化904が、浸食された画像902において示される。一実施形態では、浸食演算は、クロス構造カーネル(十字構造カーネル)906を用いて実行される。一実施形態では、クロス構造カーネル906は、3×3のサイズを有する。別の実施形態では、クロス構造カーネルは、5×5のサイズを有し、1のピクセル値を有する中央行を有する。さらに別の実施形態では、クロス構造カーネルは、5×5のサイズを有し、1のピクセル値を有する中央3行を有する。クロス構造カーネル906と同じサイズを有する画像の領域に、クロス構造カーネル906を使用した浸食演算を適用することにより、その領域において、ピクセル値1を有するクロス構造カーネル906のピクセルに対応するすべてのピクセルがピクセル値255を有する場合には、クロス構造カーネル906のピクセル908に対応するピクセルが保持される。上記領域では、1のピクセル値を有するクロス構造カーネル906のピクセルに対応するピクセルのうち、255未満のピクセル値を有するものがあれば、クロス構造カーネル906のピクセル908に対応するピクセルは保持されない。検出された動き又はシーン変化904の一部は、ビュー910において拡大される。ビュー910では、各細い点線のボックスがピクセルである。太い点線は、第1画像512における交わり524の境界の一部である。太い実線は、検出された動き又はシーン変化902の境界の一部分である。ピクセル912からピクセル914に1つずつ移動する対応する中心を有する第1の画像512の複数の領域のそれぞれに、クロス構造カーネル906を使用して浸食演算を適用することにより、検出された動き又はシーン変化902の一部分の境界916は、太い点線から太い実線に移動する。浸食演算はさらに、最も大きく変化する現在のフレームセットにおけるピクセルを見つける。
図10は、本開示の実施形態に係る、現在のバウンディングボックスと前回のバウンディングボックスとの間の第1のサイズ差を使用して、連続的な動きの確認を実行する工程306を示すフローチャートであり、現在のバウンディングボックスは、現在検出された動き又はシーン変化をバウンディングする(その境界を画定する)。図3及び図10を参照すると、工程306は、以下の工程を含む。工程1002において、現在検出された動き又はシーン変化をバウンディングする現在のバウンディングボックスが取得される。工程1004において、現在のバウンディングボックスと、前回に検出された動き又はシーン変化をバウンディングする前回のバウンディングボックスとの間の第1のサイズ差が取得される。工程1006において、前回のフレームセットが現在のフレームセットになるように更新される。工程1008において、第1のサイズ差が第1の所定のサイズ差閾値よりも大きい場合には、工程1010が進められ、そうでない場合には、工程1012が進められる。工程1010において、満足回数変数が増分(インクリメント)される。工程1012において、満足回数変数が第1の所定の複数の回数よりも大きいか又は等しい場合、工程1014が進められ、そうでない場合には、工程308が進められる。工程1014において、スローモーションキャプチャ開始フラグがアサートされる。工程1014が実行された後、工程308が進められる。
図11は、本開示の実施形態に係る、現在のバウンディングボックス1108と前回のバウンディングボックス1106との間の第1のサイズ差を使用して連続的な動きの確認を実行する工程306における画像1102及び1104を示す図であり、現在のフレームセットにおける動き又はシーン変化が連続的な動きに属していると判断される図である。図11は、図5の移動物体の例に続く例を説明する。図3、図5、図9、図10、及び図11を参照すると、工程1002において、現在検出された動き又はシーン変化904をバウンディングする現在のバウンディングボックス1108が取得される。現在のバウンディングボックス1108の上側の境界は、現在検出された動き又はシーン変化904の上端のピクセルによって定義され、現在のバウンディングボックス1108の右側の境界は、現在検出された動き又はシーン変化904の右端のピクセルによって定義され、現在のバウンディングボックス1108の下側の境界は、現在検出された動き又はシーン変化904の下端のピクセルによって定義され、現在のバウンディングボックス1108の左側の境界は、現在検出された動き又はシーン変化904の左端のピクセルによって定義される。一実施形態では、現在のバウンディングボックス1108は、上側の境界及び左側の境界によって定義される左上の座標、並びに下側の境界と右側の境界によって定義される右下の座標のフォーマットを有する。
工程1004において、現在のバウンディングボックス1108と、前回に検出された動き又はシーン変化1110をバウンディングする前回のバウンディングボックス1106との間の第1のサイズ差が取得される。前回に検出された動き又はシーン変化1110は、(図3の)工程208が実行される前回の反復における現在検出された動き又はシーン変化である。現在(今回)の反復における現在のフレームセットは、前回の反復における現在のフレームセットに続く。すなわち、現在の反復における現在のフレームセットにおけるフレームが時刻t-2、t-1及びtのものである場合、前回の反復における現在のフレームセットにおけるフレームは、時刻t-5、t-4及びt-3のものである。前回のバウンディングボックス1106は、前回の反復における現在検出された動き又はシーン変化をバウンディングする現在バウンディングボックスである。一実施形態では、工程1004は、前回のバウンディングボックス1106の辺1112と、前回のバウンディングボックス1106の辺1112に平行な現在のバウンディングボックス1108の辺1114との間の第1の辺長差を取得することと、前回のバウンディングボックス1106の辺1116と、前回のバウンディングボックス1106の辺1116に平行な現在のバウンディングボックス1108の辺1118との間の第2の辺長差を取得することであって、辺1112が辺1116に対して垂直であることとを含む。第1のサイズ差は、第1の辺長差及び第2の辺長差を含む。
工程1006において、前回のフレームセットが、現在のフレームセットになるように更新される。工程1006は、前回のバウンディングボックスを現在のバウンディングボックス1108になるように更新することを含む。このようにして、工程1004は、次の反復で実行されてもよい。
工程1008において、第1のサイズ差が第1の所定のサイズ差閾値よりも大きい場合には、工程1010が進められ、そうでない場合には、工程1012が進められる。一実施形態では、第1の所定のサイズ差閾値は、第1の所定の辺長閾値及び第2の所定の辺長閾値を含む。一実施形態では、工程1008は、第1の辺長差が第1の所定の辺長閾値よりも大きく、かつ、第2の辺長差が第2の所定の辺長閾値よりも大きいか否かを判断することを含む。第1の辺長差が第1の所定の辺長閾値よりも大きく、かつ、第2の辺長差が第2の所定の辺長閾値よりも大きい場合には、工程1010が進められ、そうでない場合には、工程1012が進められる。一実施形態では、第1の所定の辺長閾値は、現在のフレームセットにおけるフレーム502の幅の10分の1に等しい。第2の所定の辺長閾値は、現在のフレームセットにおけるフレーム502の高さの10分の1に等しい。
上記実施形態では、第1の辺長差及び第2の辺長差は絶対的な差(絶対値差分)であり、それゆえ、第1の所定の辺長閾値及び第2の所定の辺長閾値は実数による。別の実施形態では、第1の辺長差及び第2の辺長差は、比率又は割合(%)による相対的な差(相対値差分)である。上記実施形態では、所定の辺長閾値は2つである。別の実施形態では、第1の辺長差と第2の辺長差の両方について、所定の辺長閾値は1つだけである。上記実施形態では、第1のサイズ差が第1の所定のサイズ差閾値よりも大きくなるためには、第1の辺長差及び第2の辺長差の両方が、第1の所定の辺長閾値及び第2の所定の辺長閾値よりも対応して大きくなる必要がある。別の実施形態では、第1のサイズ差が第1の所定のサイズ差閾値よりも大きくなるためには、第1の辺長差及び第2の辺長差のうちの少なくとも一方が、第1の所定の辺長閾値及び第2の所定の辺長閾値よりも対応して大きくなる必要がある。上記実施形態では、第1のサイズ差は、第1の辺長差及び第2の辺長差を含む。別の実施形態では、第1のサイズ差は、前回のバウンディングボックス1106及び現在のバウンディングボックス1108との間の面積差を含む。
工程1008において、一実施形態では、第1のサイズ差は絶対値である。別の実施形態では、第1のサイズ差は、現在のバウンディングボックス1108のサイズから前回のバウンディングボックス1106のサイズを減算することによって得られる非絶対値である。さらに別の実施形態では、第1のサイズ差は絶対値であり、工程306は、現在のバウンディングボックス1108のサイズから前回のバウンディングボックス1106のサイズを減算して第2のサイズ差を取得することをさらに含み、第2のサイズ差がゼロよりも大きい場合、工程1010が進められる。この第2のサイズ差は非絶対値である。
図11の例では、前回のフレームセット及び現在のフレームセットにおける移動物体の動きにより、第1のサイズ差は第1の所定のサイズ差閾値よりも大きく、第1のサイズ差は絶対値又は非絶対値である。第1のサイズ差及び第2のサイズ差を含む実施形態では、第2のサイズ差はゼロよりも大きい。それゆえ、工程1010が進められる。工程1010において、満足回数変数が増分される。満足回数変数は、工程1008の少なくとも1つの条件が満足される各回を追跡する。
上記の実施形態では、満足回数変数は、増分によって追跡される。別の実施形態では、満足回数変数は、減分(デクリメント)、乗算、又は除算によって追跡される。
工程1012において、満足回数変数が第1の所定の複数の回数よりも大きいか又は等しい場合には、工程1014が進められ、そうでない場合には、工程308が進められる。工程1014において、スローモーションキャプチャ開始フラグがアサートされる。以下の実施形態における第1の所定の複数の回数の数の理由は、図13を参照して説明される。一実施形態では、工程1008の条件が満たされたことに基づいてのみ、工程1010が実行される。さらに、第1のサイズ差が絶対値である実施形態では、第1の所定の複数の回数は、少なくとも3回である。第1の例では、連続する第1のフレームセットから第4のフレームセットまでの移動物体の動きにより、工程1008の少なくとも1つの条件は、前回のフレームセット及び現在のフレームセットが第1のフレームセット及び第2のフレームセットである場合、前回のフレームセット及び現在のフレームセットが第2のフレームセット及び第3のフレームセットである場合、前回のフレームセット及び現在のフレームセットが第3のフレームセット及び第4のフレームセットである場合に満たされる。第1の例は、図11の例を含み、工程1008の少なくとも1つの条件が満たされる他の回数(回)のそれぞれは、図11の例と同様である。それゆえ、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、連続的な動きに属していると判断される。スローモーションキャプチャ開始フラグがアサートされる。第1の複数の回数は、満足回数変数がゼロに等しい状態から始まり、満足回数変数が第1の所定の複数の回数に等しい状態で終了する。一例では、第1のフレームセット及び第2のフレームセットが処理される前には、満足回数変数はゼロに等しい。第1の複数の回数は3回である。別の例では、時折、移動物体の動きが、例えば、速度が低下し、その結果、工程1008の少なくとも1つの条件が満たされないことがある。この場合、満足回数変数は同じに保たれ、第1の複数の回数は3回より多く、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していると判断されてもよい。
第1のサイズ差が非絶対値である実施形態では、第1の所定の複数の回数は少なくとも2回である。第1の例では、第1フレームセットと第2フレームセット、第2フレームセットと第3フレームセット、及び第3フレームセットと第4フレームセットについて、工程1008の少なくとも1つの条件が3回満たされることと比較して、第2の例では、第1フレームセットと第2フレームセット、及び第2フレームセットと第3フレームセットについて、工程1008の少なくとも1つの条件が2回満たされる。それゆえ、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、連続的な動きに属していると判断される。一例では、第1のフレームセット及び第2のフレームセットが処理される前には、満足回数変数はゼロに等しい。第1の複数の回数は2回である。別の例では、時折、移動物体の動きが、例えば、速度が低下し、その結果、工程1008の少なくとも1つの条件が満たされないことがある。この場合、満足回数変数は同じに保たれ、第1の複数の回数は2回より多く、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していると判断されてもよい。
絶対値として第1のサイズ差を含み、非絶対値として第2のサイズ差を含む実施形態では、第1の所定の複数の回数は、少なくとも2回である。第1の例では、第1のフレームセットと第2のフレームセット、第2のフレームセットと第3のフレームセット、及び第3のフレームセットと第4のフレームセットについて、工程1008の少なくとも1つの条件が3回満たされることと比較して、第3の例では、第1のフレームセットと第2のフレームセット、及び第2のフレームセットと第3のフレームセットについて、工程1008の少なくとも1つの条件が2回満たされる。それゆえ、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、連続的な動きに属していると判断される。一例では、第1のフレームセット及び第2のフレームセットが処理される前には、満足回数変数はゼロに等しい。第1の複数の回数は2回である。別の例では、時折、移動物体の動きが、例えば、速度が低下し、その結果、工程1008の少なくとも1つの条件が満たされないことがある。この場合、満足回数変数は同じに保たれ、第1の複数の回数は2回より多く、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していると判断されてもよい。
図12~図13は、本開示の実施形態に係る、現在のバウンディングボックスと前回のバウンディングボックスとの間の第1のサイズ差を使用して連続的な動きの確認を実行する工程306における画像1302、1304、1206、1208、1310、及び1312を示す図であり、現在のフレームセットにおけるモーション又はシーン変化が連続的な動きに属していないと判断される図である。図13は、静止している状態から動いている状態になるカメラモジュール102、動いている状態から動いている状態になるカメラモジュール102、及び動いている状態から静止している状態になるカメラモジュール102の例を示す。図12は、図12の例が図11の例と比較されるために、図13の動いている状態から動いている状態になるカメラモジュール102を示す。図11の例と比較して、図12の例には以下のような違いがある。工程1002において、現在検出された動き又はシーン変化1216をバウンディングする現在のバウンディングボックス1212が取得される。カメラの動きは、シーン変化をもたらす全体的な動きの一種であるため、現在検出された動き又はシーン変化1216は、画像1208のほぼ全体を占める。図11の例における移動物体の動きは、局所的な動きの一種である。現在のバウンディングボックス1212は、現在検出された動き又はシーン変化1216をバウンディングするため、現在のバウンディングボックス1212は、画像1208の境界に近い。工程1004において、現在のバウンディングボックス1212と、前回に検出された動き又はシーン変化1214をバウンディングする前回のバウンディングボックス1210との間の第1のサイズ差が取得される。前回に検出された動き又はシーン変化1214は、カメラの動きのために、画像1206のほぼ全体を占める。前回のバウンディングボックス1210も、画像1206の境界に近い。工程1008において、現在のバウンディングボックス1212及び前回のバウンディングボックス1210の両方が、対応する画像1208及び1206の境界に近いため、第1のサイズ差は第1の所定のサイズ差閾値よりも大きくはない。それゆえ、図11の例における前回のフレームセット及び現在のフレームセットにおける動きが、前回のフレームセット及び現在のフレームセットにおけるシーン変化から区別されてもよい。
図13の第1の例では、工程1008における第1のサイズ差は、絶対値である。図11の例を含む第1の例と比較して、図13の第1の例には以下のような違いがある。カメラモジュール102が静止している状態から動いている状態になったことにより、第1のフレームセットのシーンは静止しており、第2のフレームセットのシーンはシーン変化を有する。カメラモジュール102が動いている状態から動いている状態になったことにより、第2のフレームセットにおけるシーンはシーン変化を有し、第3のフレームセットにおけるシーンはシーン変化を有する。カメラモジュール102が動いている状態から静止している状態になったことにより、第3のフレームセットにおけるシーンはシーン変化を有し、第4のフレームセットのシーンはシーン変化を有する。第1のフレームセットから第4のフレームセットまでは連続している。前回のフレームセット及び現在のフレームセットが第1のフレームセット及び第2のフレームセットである場合、前回のバウンディングボックスは無(ヌル)であり、現在のバウンディングボックス1314は画像1304の境界に近く、このため、第1のサイズ差は第1の所定のサイズ差閾値よりも大きくなる。前回のフレームセット及び現在のフレームセットが第2のフレームセット及び第3のフレームセットである場合、前回のバウンディングボックス1210は画像1206の境界に近く、現在のバウンディングボックス1212は画像1208の境界に近く、このため、第1のサイズ差は第1の所定のサイズ差閾値よりも小さいか又は等しくなる。前回のフレームセット及び現在のフレームセットが第3フレームセット及び第4フレームセットである場合、前回のバウンディングボックス1316が画像1310の境界に近く、現在のバウンディングボックスは無(ヌル)であるため、第1のサイズ差は第1の所定のサイズ差閾値よりも大きくなる。それゆえ、工程1008の少なくとも1つの条件が2回満たされる。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化が連続的な動きに属していないと判断されるためには、工程1012における第1の所定の複数の回数は、少なくとも3回である必要がある。それゆえ、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化が連続的な動きに属していないと判断される。工程306は、スローモーションキャプチャ開始フラグをアサートすることなく、工程308に進む。一例では、第1のフレームセット及び第2のフレームセットが処理される前には、満足回数変数はゼロに等しい。第1の複数の回数は3回である。別の例では、カメラモジュール102が動いている状態から動いている状態になるまでのフレームセットが多い場合、満足回数変数は同じに保たれる。第1の複数の回数は3回より多い。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していないと判断されてもよい。
図13の第2の例では、工程1008における第1のサイズ差は、非絶対値である。図13の第1の例と比較して、図13の第2の例には以下のような違いがある。前回のフレームセット及び現在のフレームセットが第1のフレームセット及び第2のフレームセットである場合、前回のバウンディングボックスが無(ヌル)であり、現在のバウンディングボックス1314が画像1304の境界に近く、このため、第1のサイズ差は第1の所定のサイズ差閾値よりも大きくなる。前回のフレームセット及び現在のフレームセットが第2のフレームセット及び第3のフレームセットである場合、前回のバウンディングボックス1210は画像1206の境界に近く、現在のバウンディングボックス1212は画像1208の境界に近く、このため、第1のサイズ差は第1の所定のサイズ差閾値よりも小さいか又は等しくなる。前回のフレームセット及び現在のフレームセットが第3フレームセット及び第4フレームセットである場合、前回のバウンディングボックス1316は画像1310の境界に近く、現在のバウンディングボックスは無(ヌル)であり、このため、第1のサイズ差は第1の所定のサイズ差閾値よりも小さいか又は等しくなる。それゆえ、工程1008の少なくとも1つの条件が1回満たされる。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化が連続的な動きに属していないと判断されるためには、工程1012における第1の所定の複数の回数は、少なくとも2回である必要がある。それゆえ、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化が連続的な動きに属していないと判断される。一例では、第1のフレームセット及び第2のフレームセットが処理される前には、満足回数変数はゼロに等しい。第1の複数の回数は3回である。別の例では、カメラモジュール102が動いている状態から動いている状態になるまでのフレームセットが多い場合、満足回数変数は同じに保たれる。第1の複数の回数は3回より多い。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していないと判断されてもよい。
図13の第3の例では、工程1008における第1のサイズ差及び第2のサイズ差は、対応して絶対値及び非絶対値である。図13の第1の例と比較して、図13の第3の例には以下のような違いがある。前回のフレームセット及び現在のフレームセットが第1のフレームセット及び第2のフレームセットである場合、前回のバウンディングボックスは無(ヌル)であり、現在のバウンディングボックス1314は画像1304の境界に近く、このため、第1のサイズ差は第1の所定のサイズ差閾値よりも大きくなり、第2のサイズ差はゼロよりも大きくなる。前回のフレームセット及び現在のフレームセットが第2のフレームセット及び第3のフレームセットである場合、前回のバウンディングボックス1210は画像1206の境界に近く、現在のバウンディングボックス1212は画像1208の境界に近く、このため、第1のサイズ差は第1の所定のサイズ差閾値よりも小さいか又は等しくなる。前回のフレームセット及び現在のフレームセットが第3のフレームセット及び第4のフレームセットである場合、前回のバウンディングボックス1316は画像1310の境界に近く、現在のバウンディングボックスは無(ヌル)であり、このため、第1のサイズ差は第1の所定のサイズ差閾値よりも大きくなり、第2のサイズ差がゼロよりも小さいか又は等しくなる。それゆえ、工程1008の少なくとも1つの条件が1回満たされる。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化が連続的な動きに属していないと判断されるためには、工程1012における第1の所定の複数の回数は、少なくとも2回である必要がある。それゆえ、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化が連続的な動きに属していないと判断される。一例では、第1のフレームセット及び第2のフレームセットが処理される前には、満足回数変数はゼロに等しい。第1の複数の回数は3回である。別の例では、カメラモジュール102が動いている状態から動いている状態になるまでのフレームセットが多い場合、満足回数変数は同じに保たれる。第1の複数の回数は3回より多い。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していないと判断されてもよい。
図14は、本開示の実施形態に係る、現在の特性値と前回の特性値との間の第1の特性値差を使用して、連続的な動きの確認を実行する工程306を示すフローチャートであり、現在の特性値は、現在検出された動き又はシーン変化によって影響を受けるすべてのピクセルを特徴づける。図3及び図14を参照すると、工程306は、以下の工程を含む。工程1402において、現在検出された動き又はシーン変化によって影響を受けるすべてのピクセルの現在の特性値が取得される。工程1404において、現在の特性値と、前回に検出された動き又はシーン変化によって影響を受けるすべてのピクセルの前回の特性値との間の第1の特性値差が取得される。工程1406において、前回のフレームセットが、現在のフレームセットになるように更新される。工程1408において、第1の特性値差が第1の所定の特性値閾値よりも大きい場合、工程1410が進められ、そうでない場合には、工程1412が進められる。工程1410において、満足回数変数が増分される。工程1412において、満足回数変数が第1の所定の複数の回数よりも大きいか又は等しい場合、工程1414が進められ、そうでない場合には、工程308が進められる。工程1014において、スローモーションキャプチャ開始フラグがアサートされる。工程1414が実行された後、工程308が進められる。
図15は、本開示の実施形態に係る、現在の特性値と前回の特性値との間の第1の特性値差を使用して、連続的な動きの確認を実行する工程306における画像1502及び1504を示す図であり、現在のフレームセットにおける動き又はシーン変化が連続的な動きに属していると判断される図である。図15は、図5の移動物体の例に続く例を示す。図3、図5、図9、図14、及び図15を参照すると、工程1402において、現在検出された動き又はシーン変化904によって影響を受けるすべてのピクセルの現在の特性値が取得される。一実施形態では、現在の特性値は、現在検出された動き又はシーン変化によって影響を受けるすべてのピクセルのピクセル数である。一実施形態では、現在の特性値は、現在検出された動き又はシーン変化904のすべてのピクセル1510のピクセル数である。現在の特性値は、現在検出された動き又はシーン変化904の正確なピクセル数を考慮する、現在検出された動き又はシーン変化904の特性であり、図9のパターンとは異なるパターンで満たされている現在検出された動き又はシーン変化904によって示される。別の実施形態では、現在の特性値は、画像1504の総ピクセル数における、現在検出された動き又はシーン変化904の全ピクセル1510のピクセルの割合(%)である。
工程1404において、現在の特性値と、前回に検出された動き又はシーン変化1508によって影響を受けるすべてのピクセルの前回の特性値との間の第1の特性値差が取得される。前回に検出された動き又はシーン変化1508は、(図3の)工程208が実行される前回の反復において現在検出された動き又はシーン変化である。現在の反復における現在のフレームセットは、前回の反復における現在のフレームセットに続く。すなわち、現在の反復における現在のフレームセットのフレームが時刻t-2、t-1及びtのものである場合、前回の反復における現在のフレームセットのフレームは時刻t-5、t-4及びt-3のものである。前回の特性値は、前回の反復において現在検出された動き又はシーン変化によって影響を受けるすべてのピクセルの現在の特性値である。
工程1406において、前回のフレームセットは現在のフレームセットになるように更新される。工程1406は、前回の特性値を現在の特性値になるように更新することを含む。このようにして、工程1404は、次の反復で実行されてもよい。
工程1408において、第1の特性値差が第1の所定の特性値閾値よりも大きい場合には、工程1410が進められ、そうでない場合には、工程1412が進められる。一実施形態では、第1の所定の特性値閾値は、現在のフレームセットのフレーム502の幅に現在のフレームセットのフレーム502の高さを掛けたものの800分の1に等しい。
上記実施形態では、第1の特性値差は絶対的な差であり、それゆえ、第1の特性値差は実数による。別の実施形態では、第1の特性値差は、比率又は割合(%)による相対的な差である。
工程1408において、一実施形態において、第1の特性値差は絶対値である。別の実施形態では、第1の特性値差は、現在の特性値から前回の特性値を減算することによって得られる非絶対値である。さらに別の実施形態では、第1の特性値差は絶対値であり、工程306は、現在の特性値から前回の特性値を減算して第2の特性値差を取得することをさらに含み、第2の特性値差がゼロより大きい場合、工程1410が進められる。この第2の特性値差は非絶対値である。
図15の例では、前回のフレームセット及び現在のフレームセットにおける移動物体の動きにより、第1の特性値差は第1の所定の特性値差閾値よりも大きく、第1の特性値差は絶対値又は非絶対値である。第1の特性値差及び第2の特性値差を含む実施形態では、第2の特性値差はゼロより大きい。それゆえ、工程1410が進められる。工程1410において、満足回数変数が増分される。満足回数変数は、工程1408の少なくとも1つの条件が満足される各回を追跡する。
上記の実施形態では、満足回数変数は、増分によって追跡される。別の実施形態では、満足回数変数は、減分、乗算、又は除算によって追跡される。
工程1412において、満足回数変数が第1の所定の複数の回数よりも大きいか又は等しい場合には、工程1414が進められ、そうでない場合には、工程308が進められる。工程1414において、スローモーションキャプチャ開始フラグがアサートされる。以下の実施形態における第1の所定の複数の回数の数の理由は、図17を参照して説明される。一実施形態では、工程1408の条件が満たされたことに基づいてのみ、工程1410が実行される。さらに、第1の特性値差が絶対値である実施形態では、第1の所定の複数の回数は、少なくとも3回である。第1の例では、連続する第1のフレームセットから第4のフレームセットまでの移動物体の動きにより、前回のフレームセット及び現在のフレームセットが第1のフレームセット及び第2のフレームセットである場合、前回のフレームセット及び現在のフレームセットが第2のフレームセット及び第3のフレームセットである場合、前回のフレームセット及び現在のフレームセットが第3のフレームセット及び第4のフレームセットである場合に、工程1408の少なくとも1つの条件が満たされる。第1の例は、図15の例を含み、工程1408の少なくとも1つの条件が満たされる他の回数(回)のそれぞれは、図15の例と同様である。それゆえ、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、連続的な動きに属していると判断される。スローモーションキャプチャ開始フラグがアサートされる。第1の複数の回数は、満足回数変数がゼロに等しい状態から始まり、満足回数変数が第1の所定の複数の回数に等しい状態で終了する。一例では、第1のフレームセット及び第2のフレームセットが処理される前には、満足回数変数はゼロに等しい。第1の複数の回数は3回である。別の例では、時折、移動物体の動きが、例えば、速度が低下し、その結果、工程1408の少なくとも1つの条件が満たされないことがある。この場合、満足回数変数は同じに保たれ、第1の複数の回数は3回より多く、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していると判断されてもよい。
第1の特性値差が非絶対値である実施形態では、第1の所定の複数の回数は少なくとも2回である。第1の例では、第1のフレームセットと第2のフレームセット、第2のフレームセットと第3のフレームセット、及び第3のフレームセットと第4のフレームセットについて、工程1408の少なくとも1つの条件が3回満たされることと比較して、第2の例では、第1のフレームセットと第2のフレームセット、及び第2のフレームセットと第3のフレームセットについて、工程1408の少なくとも1つの条件が2回満たされる。それゆえ、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、連続的な動きに属していると判断される。一例では、第1のフレームセット及び第2のフレームセットが処理される前には、満足回数変数はゼロに等しい。第1の複数の回数は2回である。別の例では、時折、移動物体の移動が、例えば、速度が低下し、その結果、工程1408の少なくとも1つの条件が満たされないことがある。この場合、満足回数変数は同じに保たれ、第1の複数の回数は2回より多く、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していると判断されてもよい。
絶対値として第1の特性値差を含み、非絶対値として第2の特性値差を含む実施形態では、第1の所定の複数の回数は、少なくとも2回である。第1の例では、第1のフレームセットと第2のフレームセット、第2のフレームセットと第3のフレームセット、及び第3のフレームセットと第4のフレームセットについて、工程1408の少なくとも1つの条件が3回満たされることと比較して、第3の例では、第1のフレームセットと第2のフレームセット、及び第2のフレームセットと第3のフレームセットについて、工程1408の少なくとも1つの条件が2回満たされる。それゆえ、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、連続的な動きに属していると判断される。一例では、第1のフレームセット及び第2のフレームセットが処理される前には、満足回数変数はゼロに等しい。第1の複数の回数は2回である。別の例では、時折、移動物体の移動が、例えば、速度が低下し、その結果、工程1408の少なくとも1つの条件が満たされないことがある。この場合、満足回数変数は同じに保たれ、第1の複数の回数は2回より多く、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していると判断されてもよい。
図16~図17は、本開示の実施形態に係る、現在の特性値と前回の特性値との間の第1の特性値差を使用して、連続的な動きの確認を実行する工程306における画像1702、1704、1606、1608、1710、及び1712を示す図であり、現在のフレームセットにおける動き又はシーン変化が連続的な動きに属していないと判断される図である。図17は、静止している状態から動いている状態になるカメラモジュール102、動いている状態から動いている状態になるカメラモジュール102、及び動いている状態から静止している状態になるカメラモジュール102の例を示す。図16は、図16の例が図15の例と比較されるために、図17の動いている状態から動いている状態になるカメラモジュール102を示す。図15の例と比較して、図16の例には以下のような違いがある。工程1402において、現在検出された動き又はシーン変化1616によって影響を受けるすべてのピクセルの現在の特性値が取得される。カメラの動きはシーン変化をもたらす全体的な動きの一種であるため、現在検出された動き又はシーン変化1616は、画像1608のほぼ全体を占める。図15の例における移動物体の動きは、局所的な動きの一種である。現在の特性値は、現在検出された動き又はシーン変化1616によって影響を受けるすべてのピクセル1612のピクセル数であるため、現在の特性値は、画像1608のピクセルの総数に近い。工程1404において、現在の特性値と、前回に検出された動き又はシーン変化1614によって影響を受けるすべてのピクセル1610の前回の特性値との間の第1の特性値差が取得される。前回に検出された動き又はシーン変化1614は、カメラの動きのために、画像1606のほぼ全体を占める。前回の特性値も、画像1606の総ピクセル数に近い。工程1408において、現在の特性値及び前回の特性値の両方が、対応する画像1608及び1606のピクセルの総数に近いため、第1の特性値差は第1の所定の特性値差閾値よりも大きくはない。それゆえ、図15の例における前回のフレームセット及び現在のフレームセットにおける動きが、前回のフレームセット及び現在のフレームセットにおけるシーン変化から区別されてもよい。
図17の第1の例では、工程1408における第1の特性値差は、絶対値である。図15の例を含む第1の例と比較して、図17の第1の例には以下のような違いがある。カメラモジュール102が静止している状態から動いている状態になったことにより、第1のフレームセットのシーンは静止しており、第2のフレームセットのシーンはシーン変化を有する。カメラモジュール102が動いている状態から動いている状態になったことにより、第2のフレームセットにおけるシーンはシーン変化を有し、第3のフレームセットにおけるシーンはシーン変化を有する。カメラモジュール102が動いている状態から静止している状態になったことにより、第3のフレームセットのシーンはシーン変化を有し、第4のフレームセットのシーンはシーン変化を有する。第1のフレームセットから第4のフレームセットまでは連続している。前回のフレームセット及び現在のフレームセットが第1のフレームセット及び第2のフレームセットである場合、前回の特性値はゼロであり、現在の特性値は画像1704の総ピクセル数に近く、このため、第1の特性値差は第1の所定の特性値差閾値よりも大きくなる。前回のフレームセット及び現在のフレームセットが第2のフレームセット及び第3のフレームセットである場合、前回の特性値は画像1606の総ピクセル数に近く、現在の特性値は画像1608の総ピクセル数に近く、このため、第1の特性値差は第1の所定の特性値差閾値よりも小さいか又は等しくなる。前回のフレームセット及び現在のフレームセットが第3フレームセット及び第4フレームセットである場合には、前回の特性値は画像1710の総ピクセル数に近く、現在の特性値はゼロであり、このため、第1の特性値差は第1の所定の特性値差閾値よりも大きくなる。それゆえ、工程1408の少なくとも1つの条件が2回満たされる。第1の複数の回数のそれぞれについて、前回のフレームセットの動き又はシーン変化、及び現在のフレームセットの動き又はシーン変化が連続的な動きに属していないと判断されるためには、工程1412における第1の所定の複数の回数は、少なくとも3回である必要がある。それゆえ、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、連続的な動きに属していないと判断される。工程306は、スローモーションキャプチャ開始フラグをアサートすることなく、工程308に進む。一例では、第1のフレームセット及び第2のフレームセットが処理される前には、満足回数変数はゼロに等しい。第1の複数の回数は3回である。別の例では、カメラモジュール102が動いている状態から動いている状態になるまでのフレームセットが多い場合、満足回数変数は同じに保たれる。第1の複数の回数は3回より多い。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していないと判断されてもよい。
図17の第2の例では、工程1408における第1の特性値差は、非絶対値である。図17の第1の例と比較して、図17の第2の例には以下のような違いがある。前回のフレームセット及び現在のフレームセットが第1フレームセット及び第2フレームセットである場合、前回の特性値はゼロであり、現在の特性値は画像1704の総ピクセル数に近く、このため、第1の特性値差は第1の所定の特性値差閾値よりも大きくなる。前回のフレームセット及び現在のフレームセットが第2のフレームセット及び第3のフレームセットである場合、前回の特性値は画像1606の総ピクセル数に近く、現在の特性値は画像1608の総ピクセル数に近く、このため、第1の特性値差は第1の所定の特性値差閾値よりも小さいか又は等しくなる。前回のフレームセット及び現在のフレームセットが第3フレームセット及び第4フレームセットである場合、前回の特性値は画像1710の総ピクセル数に近く、現在の特性値はゼロであるため、第1の特性値差は第1の所定の特性値差閾値よりも小さくなる。それゆえ、工程1408の少なくとも1つの条件が1回満たされる。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化が連続的な動きに属していないと判断されるためには、工程1412における第1の所定の複数の回数は、少なくとも2回である必要がある。それゆえ、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、連続的な動きに属していないと判断される。一例では、第1のフレームセット及び第2のフレームセットが処理される前には、満足回数変数はゼロに等しい。第1の複数の回数は3回である。別の例では、カメラモジュール102が動いている状態から動いている状態になるまでのフレームセットが多い場合、満足回数変数は同じに保たれる。第1の複数の回数は3回より多い。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していないと判断されてもよい。
図17の第3の例では、工程1408における第1の特性値差及び第2の特性値差は、対応して絶対値及び非絶対値である。図17の第1の例と比較して、図17の第3の例には以下のような違いがある。前回のフレームセット及び現在のフレームセットが第1フレームセット及び第2フレームセットである場合、前回の特性値はゼロであり、現在の特性値は画像1704の総ピクセル数に近く、このため、第1の特性値差が第1の所定の特性値差閾値よりも大きくなり、第2の特性値差がゼロよりも大きくなる。前回のフレームセット及び現在のフレームセットが第2フレームセット及び第3フレームセットである場合、前回の特性値は画像1606の総ピクセル数に近く、現在の特性値は画像1608の総ピクセル数に近く、このため、第1の特性値差は第1の所定の特性値差閾値よりも小さいか又は等しくなる。前回のフレームセット及び現在のフレームセットが第3フレームセット及び第4フレームセットである場合、前回の特性値は画像1710の総ピクセル数に近く、現在の特性値はゼロであり、このため、第1の特性値差は第1の所定の特性値差閾値よりも大きくなり、第2の特性値差はゼロよりも小さいか又は等しくなる。それゆえ、工程1408の少なくとも1つの条件が1回満たされる。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化が連続的な動きに属していないと判断されるためには、工程1412における第1の所定の複数の回数が、少なくとも2回である必要がある。それゆえ、第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、連続的な動きに属していないと判断される。一例では、第1のフレームセット及び第2のフレームセットが処理される前には、満足回数変数はゼロに等しい。第1の複数の回数は3回である。別の例では、カメラモジュール102が動いている状態から動いている状態になるまでのフレームセットが多い場合、満足回数変数は同じに保たれる。第1の複数の回数は3回より多い。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していないと判断されてもよい。
図18は、本開示のさらに別の実施形態に係る、現在の特性値と前回の特性値との間の第1の特性値差を使用して、連続的な動きの確認を実行する工程306を示すフローチャートである。図14の実施形態と比較して、図18の実施形態は、工程1406と工程1412との間に、いくつかの置き換えられた工程1408、工程1410、工程1802、及び工程1804を有する。工程1408において、第1の特性値差が第1の所定の特性値閾値よりも大きい場合、工程1410が進められ、そうでない場合には、工程1802が進められる。工程1802において、第1の特性値差がゼロよりも小さいか又は等しい場合、工程1804が進められ、そうでない場合には、工程1412が進められる。工程1804において、満足変数がゼロよりも大きい場合には、満足回数変数が減分される。
図18の実施形態では、第1の特性値差は、非絶対値である。一実施形態では、工程1408の条件が第1の複数の回数のうち少なくとも1つの第2の回数だけ満たされ、工程1802の条件が第1の複数の回数のうち少なくとも1つの第3の回数だけ満たされた場合、少なくとも1つの第2の回数は、少なくとも第1の所定の複数の回数だけ、少なくとも1つの第3の回数よりも多い。第1の所定の複数の回数は2回である。図15を参照して説明された第2の例において、工程1408の条件が満たされていない場合に満足回数変数が同じに保たれることと比較して、図18の例では、工程1802の条件が満たされているか否かに基づいて、満足回数変数が減分されてもよく、又は同じに保たれてもよい。このようにして、移動物体の動きが減速したことにより、少なくとも1つの第3の回数が1回である場合、第1の複数の回数は4回であり、少なくとも1つの第2の回数は3回である。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していると判断されてもよい。図17を参照して説明された第2の例において、工程1408の条件が満たされていない場合に満足回数変数が同じに保たれることと比較して、図18の例では、工程1802の条件が満たされているか否かに基づいて、満足回数変数が減分されてもよく、又は同じに保たれてもよい。このようにして、カメラモジュール102が動いている状態から動いている状態になったこと、及びカメラモジュール102が動いている状態から静止している状態になったことにより、少なくとも1つの第3の回数が2回である場合、第1の複数の回数は3回であり、少なくとも1つの第2の回数は1回である。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、連続的な動きに属していないと判断される。少なくとも1つの第3の回数が3回である場合、カメラモジュール102が動いている状態から動いている状態になるまでのフレームセットが多いときに、第1の複数の回数は4回であり、少なくとも1つの第2の回数は1回である。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していないと判断されてもよい。
図19は、本開示のさらに別の実施形態に係る、現在の特性値と前回の特性値との間の第1の特性値差を使用して、連続的な動きの確認を実行する工程306を示すフローチャートである。図5及び図19を参照すると、図18の実施形態と比較して、図19の実施形態は、工程1802に代わる工程1902を有する。工程1902において、第1の特性値差がゼロよりも小さいか又は等しく、第2の特性値差が第2の所定の特性値閾値よりも大きいか又は等しい場合には、工程1804が進められ、そうでない場合には、工程1412が進められる。一実施形態において、第2の所定の特性値閾値は、現在のフレームセットのフレーム502の幅に、現在のフレームセットのフレーム502の高さを掛けたものの1600分の1に等しい。
図19の実施形態では、第1の特性値差は非絶対値であり、第2の特性値差は第1の特性値差の絶対値である。一実施形態では、工程1408の条件が第1の複数の回数のうちの少なくとも1つの第2の回数で満たされた場合、そして工程1902の条件が第1の複数の回数のうちの少なくとも1つの第3の回数で満たされた場合、少なくとも1つの第2の回数は、少なくとも第1の所定の複数の回数だけ、少なくとも1つの第3の回数よりも多い。第1の所定の複数の回数は2回である。図18の例では、例えば移動物体の動きが減速したことにより、減少量に関わらず満足回数変数が減分されることと比較して、図19の例では、減速量が一定限度を超える場合にのみ満足回数変数が減分される。図18の例でカメラモジュール102が動いている状態から動いている状態になったことにより減分される満足回数変数と比較して、図19の例では、カメラモジュール102が動いている状態から動いている状態になった場合、満足回数変数は同じに保たれる。このように、カメラモジュール102が動いている状態から静止している状態になったことにより、少なくとも1つの第3の回数が1回である場合、第1の複数の回数は3回であり、少なくとも1つの第2の回数は1回である。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、連続的な動きに属していないと判断される。カメラモジュール102が動いている状態から動いている状態になるまでのフレームセットが多い場合、カメラモジュール102が動いている状態から静止している状態になったことにより、少なくとも1つの第3の回数はまだ1回であり、第1の複数の回数は4回であり、少なくとも1つの第2の回数は1回である。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していないと判断されてもよい。
図15を参照して説明された第2の例において、工程1408の条件が満たされていない場合に満足回数変数が同じに保たれることと比較して、図19では、工程1902の条件が満たされているか否かに基づいて、満足回数変数が減分されてもよく、又は同じに保たれてもよい。このようにして、移動物体の動きが減速したことにより、少なくとも1つの第3の回数が1回である場合、第1の複数の回数は4回であり、少なくとも1つの第2の回数は3回である。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していると判断されてもよい。図17を参照して説明された第2の例において、工程1408の条件が満たされていない場合に満足回数変数が同じに保たれることと比較して、図18では、工程1802の条件が満たされているか否かに基づいて、満足回数変数が減分されてもよく、又は同じに保たれてもよい。このように、カメラモジュール102が動いている状態から動いている状態になったことと、カメラモジュール102が動いている状態から静止している状態になったことにより、少なくとも1つの第3の回数が2回である場合、第1の複数の回数は3回であり、少なくとも1つの第2の回数は1回である。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、連続的な動きに属していないと判断される。カメラモジュール102が動いている状態から動いている状態になるまでのフレームセットが多いときに、少なくとも1つの第3の回数が3回である場合、第1の複数の回数は4回であり、少なくとも1つの第2の回数は2回である。第1の複数の回数のそれぞれについて、前回のフレームセットにおける動き又はシーン変化、及び現在のフレームセットにおける動き又はシーン変化は、依然として連続的な動きに属していないと判断されてもよい。
図20~図21は、それぞれ、本開示のさらに別の実施形態に係る、現在のバウンディングボックスと前回のバウンディングボックスとの間の第1のサイズ差、及び現在の特性値と前回の特性値との間の第1の特性値差を使用して、連続的な動きの確認を実行する工程306を示すフローチャートである。一実施形態では、図10及び図14、図18、又は図19の実施形態が組み合わされる。図10と図14、図18、又は図19の実施形態を組み合わせることにより、連続的な動きの確認は、例えば、小さな移動物体の動きをノイズから区別する誤動作のない動き検出をさらに確実にする。組み合わせた後、実施形態のすべての条件が絶対値のみを含む場合、第1の所定の複数の回数は少なくとも3回であり、実施形態の少なくとも1つの条件が非絶対値を含む場合、第1の所定の複数の回数は少なくとも2回である。図19の工程1406と1412の間の工程を図10の工程1008の「はい」の分岐に直接挿入することにより、図10及び図19の実施形態を組み合わせた実施形態と比較して、図20~図21の実施形態には以下のような違いがある。工程1008において、第1のサイズ差が第1の所定のサイズ差閾値よりも大きい場合、工程1408が進められ、そうでない場合には、図10の工程1012に進む代わりに、図21の工程2102が進められる。工程2102において、第1の特性値差が第2の所定の特性値閾値よりも大きい場合、工程1010が進められ、そうでない場合には、工程2104が進められる。図20の工程2002は、図10の工程1006と、図14の工程1406との組み合わせである。工程2104は、図19の工程1902と同様であり、図21の第3の所定の特性値閾値は、図19の第2の所定の特性値閾値である。一実施形態では、工程2102における第2の所定の特性値閾値は、現在のフレームセットのフレーム502の幅に現在のフレームセットのフレーム502の高さを掛けたものの400分の1に等しい。工程2102が含まれることで、同じ場所にある移動物体の動きが検出可能になり、スローモーションキャプチャをトリガすることが可能になる。図22は、本開示のさらに別の実施形態に係る、現在検出された動き又はシーン変化によって影響を受けるすべてのピクセルの現在の特性値をさらに使用して、連続的な動きの確認を実行する工程306を示すフローチャートである。図20及び図21の工程306と比較して、図22の工程306は、工程2002と工程1008の間に以下の工程をさらに含む。工程2202において、現在の特性値が所定の特性値閾値よりも大きい場合、工程1008が進められ、そうでない場合には、工程2204が進められる。工程2204において、スローモーションキャプチャ開始フラグがデアサートされ、満足回数変数がリセットされる。一実施形態では、所定の特性値閾値は、現在のフレームセットのフレーム502の幅の10分の1と、現在のフレームセットのフレーム502の高さの10分の1との最小値に等しい。
いくつかの実施形態は、以下の特徴及び/又は利点の1つ又は組み合わせを有する。関連技術では、フレームセットにおける変化が動きに属するか否かは、変化をバウンディングするバウンディングボックスがバウンディングボックス閾値よりも大きい周囲を有するか否かに基づいて判断される。この方法では、カメラモジュールが動いている状態から動いている状態になったことによるシーン変化は、移動物体の動きと区別することができない。この関連技術と比較して、本開示のいくつかの実施形態は、連続的な動きの確認を実行する。それゆえ、移動物体の動きは、カメラモジュールが静止している状態から動いている状態、カメラモジュールが動いている状態から動いている状態、及びカメラモジュールが動いている状態から静止している状態に起因するシーン変化から区別することができる。さらに、本開示のいくつかの実施形態は、ピクセル差分画像に対してAND演算を実行し、検出された動き又はシーン変化を生成する。それゆえ、検出された動き又はシーン変化は、点滅に起因しないであろう。当業者であれば、本開示の実施形態で説明及び開示されたシステム又はコンピュータ実装方法のユニット、モジュール、レイヤ、ブロック、アルゴリズム、及び工程のそれぞれが、ハードウェア、ファームウェア、ソフトウェア、又はそれらの組み合わせを使用して実現されることを理解する。機能がハードウェアで実行されるか、ファームウェアで実行されるか、ソフトウェアで実行されるかは、技術計画の適用条件や設計要件に依存する。当業者であれば、特定の応用例ごとに異なる方法を使用して機能を実現することができるが、そのような実現方法は本開示の範囲を超えないはずである。本開示の実施形態における開示されたシステム、及びコンピュータ実装方法は、他の方法で実現できることを理解されたい。上述した実施形態は、例示的なものに過ぎない。モジュールの分割は、単に論理的な機能に基づくものであり、現実には他の分割法が存在する。モジュールは物理的なモジュールであってもよく、又はなくてもよい。複数のモジュールが1つの物理的なモジュールに結合又は統合されることが可能である。いずれかのモジュールが複数の物理的なモジュールに分割されることも可能である。いくつかの特性が省略されたり、スキップされたりすることも可能である。他方、表示又は議論されている相互結合、直接結合、又は通信可能な結合は、電気的、機械的、又は他の種類の形態の方法によって、間接的又は通信的にかかわらず、いくつかのポート、デバイス、又はモジュールを介して動作する。
説明のための分離構成要素としてのモジュールは、物理的に分離されているか、又は分離されていない。モジュールは、一箇所に配置されているか、複数のネットワークモジュール上に分散して配置されている。モジュールの一部又は全部は、実施形態の目的に応じて使用される。ソフトウェア機能モジュールが実現され、製品として使用・販売される場合は、そのソフトウェア機能モジュールは、コンピュータ可読記憶媒体に記憶することができる。このような理解に基づき、本開示が提案する技術計画は、本質的に又は部分的にソフトウェア製品の形態として実現することができる。あるいは、従来技術に有益な技術計画の一部分を、ソフトウェア製品の形態として実現することができる。そのソフトウェア製品は、本開示の実施形態によって開示される工程のすべて又は一部を実行するために、システムの少なくとも1つのプロセッサに対する複数のコマンドを含めて、コンピュータ可読記憶媒体に記憶される。記憶媒体としては、USBディスク、モバイルハードディスク、リードオンリーメモリ(ROM)、ランダムアクセスメモリ(RAM)、フロッピーディスク(登録商標)、又はプログラム命令を記憶することができる他の種類の媒体が挙げられる。本開示は、最も実用的で好ましい実施形態と考えられるものに関連して説明されてきたが、本開示は、開示された実施形態に限定されるものではなく、添付の特許請求の範囲の最も広い解釈の範囲から逸脱しない範囲でなされた様々な変形例を包含することを意図していることが理解される。