(57)【要約】【課題】本発明は、画像処理方法、装置、電子デバイスおよびコンピュータ読み取り可能な記録媒体を提供する。【解決手段】本発明の画像処理方法は、対象フレーム画像を取得するステップと、前記対象フレーム画像に対して移動推定を行い、移動経路を取得するステップと、前記移動経路に基づき前記対象フレーム画像に所望を満たす変動があるかどうかを確定するステップと、を含み、前記対象フレーム画像に所望を満たす変動が存在する場合、前記対象フレーム画像を利用して、取得された各フレーム画像にフレーム間移動推定を行うための参照フレーム画像とする。本発明は取得された手振れ補正結果の効果を向上させることができる。【選択図】図１
2018206365.tif 000002
【特許請求の範囲】
【請求項１】
対象フレーム画像を取得するステップと、
前記対象フレーム画像に対して移動推定を行い、移動経路を取得するステップと、
前記移動経路に基づき前記対象フレーム画像に所望を満たす変動の存在を確定するステップと、
前記対象フレーム画像に所望を満たす変動が存在する場合、前記対象フレーム画像を利用して、取得された各フレーム画像にフレーム間移動推定を行うための参照フレーム画像とするステップと、を含むことを特徴とする画像処理方法。
【請求項２】
前記対象フレーム画像に対して移動推定を行い、移動経路を取得するステップは、
前記対象フレーム画像に対して、それぞれフレーム間移動推定および実際移動推定を行い、フレーム間移動軌跡と実際移動軌跡を取得することを含む、ことを特徴とする請求項１に記載の方法。
【請求項３】
前記移動経路に基づき前記対象フレーム画像に所望を満たす変動の存在を確定するステップは、
前記フレーム間移動軌跡と前記実際移動軌跡とにおいて所望を満たす変動の存在を判断することを含む、ことを特徴とする請求項２に記載の方法。
【請求項４】
前記移動経路に基づき前記対象フレーム画像に所望を満たす変動の存在を確定するステップの後に、前記方法はさらに、
前記フレーム間移動軌跡と前記実際移動軌跡とに所望を満たす変動が存在する場合、前記変動の前記フレーム間移動軌跡と前記実際移動軌跡における第一持続時間と第二持続時間とをそれぞれ取得することを含み、
前記対象フレーム画像を利用して参照フレーム画像にすることは具体的に、
前記第一持続時間と前記第二持続時間とがともに予めに設定した閾値より大きい場合、前記対象フレーム画像を利用して参照フレーム画像にする、ことを特徴とする請求項３に記載の方法。
【請求項５】
前記移動経路に基づき前記対象フレーム画像に所望を満たす変動の存在を確定するステップは、
前記実際移動軌跡に所望を満たす変動の存在を判断することを含む、ことを特徴とする請求項２に記載の方法。
【請求項６】
前記移動経路に基づき前記対象フレーム画像に所望を満たす変動の存在を確定するステップの後に、前記方法はさらに、
前記実際移動軌跡に所望を満たす変動が存在する場合、前記変動の前記実際移動軌跡における持続時間を取得することを含み、
前記対象フレーム画像を利用して参照フレーム画像にすることは具体的に、
前記持続時間が予めに設定した閾値より大きい場合、前記対象フレーム画像を利用して参照フレーム画像にする、ことを特徴とする請求項５に記載の方法。
【請求項７】
前記方法はさらに、
前記参照フレーム画像に対して垂直矯正を行うステップであって、垂直矯正後の参照フレーム画像は取得された各フレーム画像に対してフレーム間移動推定を行うために用いられるステップと、
前記移動経路に対してスムージング処理を行うステップと、
スムージング処理後の移動経路に基づいて移動補償を行うステップと、含む、ことを特徴とする請求項２に記載の方法。
【請求項８】
前記参照フレーム画像に対して垂直矯正を行うステップは、
前記実際移動軌跡における各サンプリング時間区間内の平均移動レベルパラメータを確定することと、
前記参照フレーム画像に対応する3D参照フレーム画像を取得することと、
前記平均移動レベルパラメータに基づき、回転後の3D参照フレーム画像に対応する2D展開図をユーザー視線と垂直させるように、前記3D参照フレーム画像を回転することと、を含む、ことを特徴とする請求項７に記載の方法。
【請求項９】
前記移動経路に対してスムージング処理行うステップは、
メジアンフィルタリング方法を用いて、前記移動経路に対して平滑化処理を行うことを含む、ことを特徴とする請求項７に記載の方法。
【請求項１０】
前記スムージング処理後の移動経路に基づいて移動補償を行うステップは、
前記対象フレーム画像を三次元球座標系に投影して、三次元球体画像を取得することと、
前記三次元球体画像内の画素点を座標変換して、手振れ補正後の三次元球体画像を取得することと、
前記手振れ補正後の三次元球体画像を二次元画像に変換することと、を含む、ことを特徴とする請求項７に記載の方法。
【請求項１１】
対象フレーム画像を取得する画像取得モジュールと、
前記対象フレーム画像に対して移動推定を行い、移動経路を取得する移動推定モジュールと、
前記移動経路に基づき前記対象フレーム画像に所望を満たす変動の存在を確定する確定モジュールと、
前記対象フレーム画像に所望を満たす変動が存在する場合、前記対象フレーム画像を利用して、参照フレーム画像とする選択モジュールと、を含む、ことを特徴とする画像処理装置。
【請求項１２】
プロセッサーとメモリとを含み、
前記メモリにコンピュータプログラムコマンドが格納され、
前記コンピュータプログラムコマンドは、前記プロセッサーにより実行されるときに、前記プロセッサーに、請求項１〜１０の任意の１項に記載の方法を実行させる、ことを特徴とする電子デバイス。
【請求項１３】
コンピュータに、請求項１〜１０の任意の１項に記載の方法を実行させるためのプログラム。
【請求項１４】
請求項１３に記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理技術分野に関し、特に画像処理方法、装置、電子デバイスおよびコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
技術の発展に伴って、カメラを内蔵するハンドヘルドデバイスまたはモバイルプラットフォームがますます普及している。しかし、このようなデバイスにより得られたビデオシーケンスは一般に振れが存在する。
【０００３】
上記課題を解決するために、従来技術では、安定なビデオシーケンスを得るために、通常、以下の2種類の方法がある。実際移動経路に基づく処理と、相対移動経路に基づいた処理である。
【０００４】
実際の移動経路に基づく処理方法では、ハンドヘルドデバイスのワールド座標系における姿勢（例えば、ジャイロスコープによって姿勢パラメータを取得）を算出し、かつそれを垂直状態に変換して手振れ補正後のビデオシーケンスが得られる。しかし、この方法は本質において、単に一回の垂直変換のみが行われて、得られた手振れ補正シーケンスに計算誤差のため依然としてぶれが存在する。
【０００５】
相対移動経路に基づいた処理では、現在各フレーム画像の姿勢を参照フレーム画像の姿勢と一致するように変換することで、手振れ補正後のビデオシーケンスを得る。手振れ補正とは、画像におけるぶれを除去して主移動を保留させるプロセスである。この方法はフレーム間移動推定を用いたので、計算誤差による影響を減らしたが、累積誤差が依然として存在するため、取得されたビデオシーケンスの手振れ補正効果がよくない。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
これを鑑みて、本発明は、画像処理方法、装置、電子デバイスおよびコンピュータ読み取り可能な記録媒体を提供し、取得されたビデオシーケンスの手振れ補正効果を向上させる。
【課題を解決するための手段】
【０００７】
上記の技術課題を解決するために、本発明の実施例より提供された画像処理方法は、
対象フレーム画像を取得するステップと、
前記対象フレーム画像に対して移動推定を行い、移動経路を取得するステップと、
前記移動経路に基づき前記対象フレーム画像に所望を満たす変動の存在を確定するステップと、
前記対象フレーム画像に所望を満たす変動が存在する場合、前記対象フレーム画像を利用して、取得された各フレーム画像にフレーム間移動推定を行うための参照フレーム画像とするステップと、を含む。
【０００８】
ここで、前記対象フレーム画像に対して移動推定を行い、移動経路を取得する前記ステップは、
前記対象フレーム画像に対して、それぞれフレーム間移動推定および実際移動推定を行い、フレーム間移動軌跡と実際移動軌跡を取得する。
【０００９】
ここで、前記移動経路に基づき前記対象フレーム画像に所望を満たす変動があるかどうかを確定する前記ステップは、
前記フレーム間移動軌跡と前記実際移動軌跡とにおいて所望を満たす変動があるかどうかを判断する。
【００１０】
ここで、前記移動経路に基づき前記対象フレーム画像に所望を満たす変動があるかどうかを確定する前記ステップの後に、前記方法はさらに、
前記フレーム間移動軌跡と前記実際移動軌跡とに所望を満たす変動が存在する場合、前記変動の前記フレーム間移動軌跡と前記実際移動軌跡における第一持続時間と第二持続時間とをそれぞれ取得する。
【００１１】
前記対象フレーム画像を利用して参照フレーム画像にすることは具体的に、
前記第一持続時間と前記第二持続時間とがともに予めに設定した閾値より大きければ、前記対象フレーム画像を利用して参照フレーム画像にする。
【００１２】
ここで、前記移動経路に基づき前記対象フレーム画像に所望を満たす変動があるかどうかを確定する前記ステップは、
前記実際移動軌跡に所望を満たす変動があるかどうかを判断する。
【００１３】
ここで、前記移動経路に基づき前記対象フレーム画像に所望を満たす変動があるかどうかを確定するステップの後に、前記方法はさらに、
前記実際移動軌跡に所望を満たす変動が存在する場合、前記変動の前記実際移動軌跡における持続時間を取得する。
【００１４】
前記対象フレーム画像を利用して参照フレーム画像にすることは具体的に、
前記持続時間が予めに設定した閾値より大きければ、前記対象フレーム画像を利用して参照フレーム画像にする。
【００１５】
ここで、前記方法はさらに、
前記参照フレーム画像に対して垂直矯正（correction）を行うステップであって、垂直矯正後の参照フレーム画像は取得された各フレーム画像に対してフレーム間移動推定を行うために用いられるステップと、
前記移動経路に対してスムージング処理を行うステップと、
スムージング処理後の移動経路に基づいて移動補償を行うステップと、を含む。
【００１６】
ここで、前記参照フレーム画像に対して垂直矯正を行う前記ステップは、
前記実際移動軌跡における各サンプリング時間区間内の平均移動レベルパラメータを確定することと、
前記参照フレーム画像に対応する3D参照フレーム画像を取得することと、
前記平均移動レベルパラメータに基づき、回転後の3D参照フレーム画像に対応する2D展開図をユーザー視線と垂直させるように、前記3D参照フレーム画像を回転することと、を含む。
【００１７】
ここで、前記移動経路に対してスムージング処理行う前記ステップは、
メジアンフィルタリング方法を用いて、前記移動経路に対して平滑化処理を行う。
【００１８】
ここで、前記スムージング処理後の移動経路に基づいて移動補償を行う前記ステップは、
前記対象フレーム画像を三次元球座標系に投影して、三次元球体画像を取得することと、
前記三次元球体画像内の画素点を座標変換して、手振れ補正後の三次元球体画像を取得することと、
前記手振れ補正後の三次元球体画像を二次元画像に変換することと、を含む。
【００１９】
次に、本発明の実施例より提供される画像処理装置は、
対象フレーム画像を取得する画像取得モジュールと、
前記対象フレーム画像に対して移動推定を行い、移動経路を取得する移動推定モジュールと、
前記移動経路に基づき前記対象フレーム画像に所望を満たす変動の存在を確定する確定モジュールと、
前記対象フレーム画像に所望を満たす変動が存在する場合、前記対象フレーム画像を利用して、参照フレーム画像とする選択モジュールと、を含む。
【００２０】
ここで、前記移動推定モジュールは、
前記対象フレーム画像に対してフレーム間移動推定を行い、移動経路を取得するフレーム間移動推定サブモジュールと、
前記対象フレーム画像に対して実際移動推定を行い、実際移動軌跡を取得する実際移動推定サブモジュールと、を含む。
【００２１】
ここで、具体的に、前記確定モジュールは、前記フレーム間移動軌跡と前記実際移動軌跡とにおいて所望を満たす変動の存在を判断する。
【００２２】
ここで、前記装置はさらに、
前記フレーム間移動軌跡と前記実際移動軌跡とに所望を満たす変動が存在する場合、前記変動の前記フレーム間移動軌跡と前記実際移動軌跡における第一持続時間と第二持続時間とをそれぞれ取得する第一時間取得モジュールを含み、
前記選択モジュールは、前記第一持続時間と前記第二持続時間とがともに予めに設定した閾値より大きい場合、前記対象フレーム画像を利用して参照フレーム画像にする。
【００２３】
ここで、具体的に、前記確定モジュールは、前記実際移動軌跡に所望を満たす変動の存在を判断する。
【００２４】
ここで、前記装置はさらに、
前記実際移動軌跡に所望を満たす変動が存在する場合、前記変動の前記実際移動軌跡における持続時間を取得する第二時間取得モジュールを含み、
前記選択モジュールは、前記持続時間が予めに設定した閾値より大きい場合、前記対象フレーム画像を利用して参照フレーム画像にする。
【００２５】
ここで、前記装置はさらに、
前記参照フレーム画像に対して垂直矯正を行い、垂直矯正後の参照フレーム画像を取得された各フレーム画像とフレーム間移動推定を行う画像矯正モジュールと、
前記移動経路に対してスムージング処理を行うスムージングモジュールと、
スムージング処理後の移動経路に基づいて移動補償を行う移動補償モジュールと、含む。
【００２６】
ここで、前記画像矯正モジュールは、
前記実際移動軌跡における各サンプリング時間区間内の平均移動レベルパラメータを確定する確定サブモジュールと、
前記参照フレーム画像に対応する3D参照フレーム画像を取得する取得サブモジュールと、
前記平均移動レベルパラメータに基づき、回転後の3D参照フレーム画像に対応する2D展開図をユーザー視線と垂直させるように、前記3D参照フレーム画像を回転する処理サブモジュールと、を含む。
【００２７】
ここで、前記スムージング処理モジュールは、メジアンフィルタリング方法を用いて、前記移動経路に対して平滑化処理を行う。
【００２８】
ここで、前記移動補償モジュールは、
前記対象フレーム画像を三次元球座標系に投影して、三次元球体画像を取得する画像獲得サブモジュールと、
前記三次元球体画像内の画素点を座標変換して、手振れ補正後の三次元球体画像を取得する座標変換サブモジュールと、
前記手振れ補正後の三次元球体画像を二次元画像に変換する移動補償サブモジュールと、を含む。
【００２９】
次に、本発明の実施例より提供される電子デバイスは、プロセッサーとメモリとを含み、前記メモリにコンピュータプログラムコマンドが格納され、
前記コンピュータプログラムコマンドが前記プロセッサーにより実行される時に、前記プロセッサーに、
対象フレーム画像を取得するステップと、
前記対象フレーム画像に対して移動推定を行い、移動経路を取得するステップと、
前記移動経路に基づき前記対象フレーム画像に所望を満たす変動の存在を確定するステップと、
前記対象フレーム画像に所望を満たす変動が存在する場合、前記対象フレーム画像を利用して、参照フレーム画像とするステップと、
前記参照フレーム画像に対して垂直矯正を行い、垂直矯正後の参照フレーム画像を取得された各フレーム画像とフレーム間移動推定を行うステップと、を実行させる。
【００３０】
次に、本発明の実施例よりコンピュータ読み取り可能な記録媒体が提供され、前記コンピュータ読み取り可能な記録媒体はコンピュータプログラムを格納し、前記コンピュータプログラムが前記プロセッサーにより実行される時に、前記プロセッサーに、
対象フレーム画像を取得するステップと、
前記対象フレーム画像に対して移動推定を行い、移動経路を取得するステップと、
前記移動経路に基づき前記対象フレーム画像に所望を満たす変動の存在を確定するステップと、
前記対象フレーム画像に所望を満たす変動が存在する場合、前記対象フレーム画像を利用して、参照フレーム画像とするステップと、
前記参照フレーム画像に対して垂直矯正を行い、垂直矯正後の参照フレーム画像を取得された各フレーム画像とフレーム間移動推定を行うステップと、実行させる。
【００３１】
本発明の上記技術方案には以下の有益な効果がある。
【００３２】
本発明の実施例では、対象フレーム画像を判断してそれが参照フレーム画像であるかどうかを判断する。参照フレーム画像に所望を満たす変動が存在するので、参照フレーム画像を基準にしてフレーム間移動推定を行うことは、大きな変動の手振れ補正結果に対する影響を減少でき、取得された手振れ補正結果の効果を向上させることができる。
【図面の簡単な説明】
【００３３】
【図１】本発明の実施例に係る画像処理方法のフローチャートである。
【図２】フレーム間移動軌跡と実際移動軌跡を示す図である。
【図３】ハンドヘルドデバイスの姿勢によるフレーム間移動軌跡変動と実際移動軌跡変動を示す図である。
【図４】本発明の実施例に係る画像処理方法のフローチャートである。
【図５】垂直矯正を示す図である。
【図６】移動軌跡スムージング処理前とスムージング処理後を示す比較図である。
【図７】手振れ補正前と手振れ補正後を示す図である。
【図８】本発明の実施例に係る画像処理装置を示す図である。
【図９】本発明の実施例に係る移動推定モジュールを示す図である。
【図１０】本発明の実施例に係る画像処理装置を示すほかの図である。
【図１１】本発明の実施例に係る画像処理装置を示すほかの図である。
【図１２】本発明の実施例に係る画像処理装置を示すほかの図である。
【図１３】本発明の実施例に係る画像矯正モジュールを示す図である。
【図１４】本発明の実施例に係る移動補償モジュールを示す図である。
【図１５】本発明の実施例に係る電子デバイスを示す図である。
【発明を実施するための形態】
【００３４】
以下、図面と実施例と合わせて、本発明の具体的な実施形態についてさらに詳細に説明する。以下の実施例は本発明の説明に用いられるが、本発明の範囲を制限するものではない。
【００３５】
図1に示すように、本発明の実施例に係る画像処理方法は以下のステップを含む。
【００３６】
まず、対象フレーム画像を取得するステップ１０１を含む。
【００３７】
ここで、前記対象フレーム画像は入力された第二フレーム以後の任意のフレーム画像を指す。第一フレーム画像について、下記のステップにおいて実際移動推定のみを行うことが可能である。
【００３８】
そして、前記対象フレーム画像に対して移動推定を行い、移動経路を取得するステップ１０２を含む。
【００３９】
本発明の実施形態では、前記対象フレーム画像に対して、それぞれフレーム間移動推定および実際移動推定を行い、フレーム間移動軌跡と実際移動軌跡を取得する。
【００４０】
その内、フレーム間移動推定のプロセスはあるフレーム画像を参照画像にして、後継の各フレームの参照画像の当該参照画像に対する回転角度を評価するプロセスを意味する。例えば、第一フレームの参照画像を例として、入力された第二フレーム、第三フレーム画像などが第一フレームに対する回転角度を計算する。図２（a）と図２（b）に示したのは、取得されたフレーム間移動軌跡を示す図である。参照フレームに基づいて算出されるフレーム間移動経路は計算誤差の影響を軽減できるが、累積誤差が導入される。
【００４１】
実際移動推定には、センサーパラメータを取得と、アルゴリズム推定とによる二種類があり、例えば、消失点推定と無限ホモグラフィとを結合させる方法である。実際移動パラメータはハンドヘルドデバイスがワールド座標系における姿勢を表し、計算時に通常算出誤差が出るが、累積誤差が現れない。図２（c）と図２（d）に示したのは、取得された実際移動軌跡を示す図である。
【００４２】
次に、前記移動経路に基づき前記対象フレーム画像に所望を満たす変動があるかどうかを確定するステップ１０３を含む。
【００４３】
本発明の実施例では、以下の方法によって前記対象フレーム画像に所望を満たす変動があるかどうかを確定することができる。
【００４４】
（１）前記フレーム間移動軌跡と前記実際移動軌跡とにおいて所望を満たす変動があるかどうかを判断する。
【００４５】
（２）前記実際移動軌跡に所望を満たす変動があるかどうかを判断する。
【００４６】
その内、前記所望を満たす変動は変動幅がある予定値を超える変動であってもよい。その内、当該予定値は±5°であることが可能である。例えば、ある移動軌跡内において、現在時間区間内の移動軌跡と直前の時間区間内の移動軌跡と比べて、5°を超える変動があれば、当該移動軌跡内に所望を満たす変動があると考える。
【００４７】
上記に基づき、判断の正確性をさらに向上させるために、本発明の実施例では、上記方法（１）と方法（２）とにおいて、移動軌跡に所望を満たす変動が存在することを確定できれば、方法（１）に対して、さらに前記変動の前記フレーム間移動軌跡と前記実際移動軌跡における第一持続時間と第二持続時間とをそれぞれ取得できる。方法（２）に対して、さらに前記変動の前記実際移動軌跡における持続時間を取得できる。よって、変動の大きさと持続時間の長さにより、軌跡に存在した変動が要求に満たすかどうかをさらに確定する。
【００４８】
さらに、前記対象フレーム画像に所望を満たす変動が存在する場合、前記対象フレーム画像を利用して、取得された各フレーム画像にフレーム間移動推定を行うための参照フレーム画像とするステップ１０４を含む。
【００４９】
前記対象フレーム画像に所望を満たす変動が存在する場合、前記対象フレーム画像を利用して、参照フレーム画像とする。
【００５０】
上記に基づき、判断の正確性をさらに向上させるために、本発明の実施例では、ステップ１０３における方法（１）に対して、前記第一持続時間と前記第二持続時間とがともに予めに設定した閾値より大きければ、前記対象フレーム画像を利用して参照フレーム画像にする。ステップ１０３における方法（２）に対して、前記持続時間が予めに設定した閾値より大きければ、前記対象フレーム画像を利用して参照フレーム画像にする。
【００５１】
ここで、当該予定値は任意に設置でき、例えば、30フレーム画像の処理時間に設定することができる。
【００５２】
ハンドヘルドデバイスに対して、ユーザーの無意識時の短い変動は手振れ補正の補正に影響しないが、ユーザーが意識的に機器の姿勢を調整すれば、この場合に対して適切に参照フレームを更新、累積誤差を減少する必要がある。
【００５３】
図３（a）〜図３（d）は、ハンドヘルドデバイスの姿勢が図３（a）に示す状態から図３（c）に示す状態まで変換された時、フレーム間移動軌跡（図３（b））と実際移動軌跡（図３（d））において現れる変動を示す図である。図３（b）を例として、移動軌跡が直前の時刻においてピークの位置から谷の位置に変化して、ピークと谷との間の角度差は（-5）度より小さいので、図３（b）に所望を満たす変動があったと認定する。
【００５４】
参照フレーム画像を確定した後、参照フレーム画像を用いて取得された各フレーム画像に対してフレーム間移動推定を行うことができる。
【００５５】
上記過程では、取得された各対象フレーム画像に対して、すべて上記の方法に従ってそれを参照フレーム画像にすることができるかどうかを確定できることによって、参照フレーム画像を絶えずに更新することができる。
【００５６】
以上から分かるように、本発明の実施例では、対象フレーム画像を判断してそれが参照フレーム画像であるかどうかを判断する。参照フレーム画像に所望を満たす変動が存在するので、参照フレーム画像を基準にしてフレーム間移動推定を行うことは、大きな変動の手振れ補正結果に対する影響を減少でき、取得された手振れ補正結果の効果を向上することができる。
【００５７】
図４に示すように、本発明の実施例の画像処理方法は以下のステップを含む。
【００５８】
ステップ２０１では、対象フレーム画像を取得する。
【００５９】
ステップ２０２では、前記対象フレーム画像に対して移動推定を行い、移動経路を取得する。
【００６０】
ステップ２０３では、前記移動経路に基づき前記対象フレーム画像に所望を満たす変動があるかどうかを確定する。
【００６１】
ステップ２０４では、前記対象フレーム画像に所望を満たす変動が存在する場合、前記対象フレーム画像を利用して、参照フレーム画像とする。
【００６２】
ここで、ステップ２０１〜２０４のプロセスは前記図１に示した実施例の説明を参照できる。
【００６３】
そして、ステップ２０５では、前記参照フレーム画像に対して垂直矯正を行い、垂直矯正後の参照フレーム画像は取得された各フレーム画像に対してフレーム間移動推定を行う。
【００６４】
具体的には、当該プロセスにおいて、前記実際移動軌跡における各サンプリング時間区間内の平均移動レベルパラメータを確定して、前記参照フレーム画像に対応する3D参照フレーム画像を取得し、前記平均移動レベルパラメータに基づき、回転後の3D参照フレーム画像に対応する2D展開図をユーザー視線と垂直させるように、前記3D参照フレーム画像を回転する。ここで、各サンプリング時間区間はハンドヘルドデバイスの揺動角度が一定範囲を超えない時に対応する時間長さを意味する。各サンプリング時間区間内において、ハンドヘルドデバイスの平均移動レベルパラメータはハンドヘルドデバイスがこの区間内の基本的な姿勢を表し、ブレが発生したとしても、ブレが当該基本姿勢の近傍のみに生じた。この時間区間内のハンドヘルドデバイスの回転角度に対して平均値を算出し、かつ当該平均値に基づき、ハンドヘルドデバイスの姿勢を地面と垂直する姿勢に逆変換すれば、得られたビデオシーケンスに大きなねじれが現れない。
【００６５】
ハンドヘルドデバイスのぶれはある位置を中心としたものであり、当該中心はこの時のハンドヘルドデバイスの基準姿勢を意味し、図５（b）の破線1は図５（a）に示すぶれの基準を表し、破線2は図５（c）に示すぶれの基準を表す。図中の矢印は基準が所在する位置であり、これらの基準によれば、ハンドヘルドデバイスの姿勢を地面と垂直する状態（図5（d）、図5（e）に示すように）に調整することができる。
【００６６】
さらに、ステップ２０６では、前記移動経路に対してスムージング処理を行う。
【００６７】
このステップでは、メジアンフィルタリング方法を用いて、前記移動経路に対して平滑化処理を行い、すなわち、フレーム間移動軌跡と実際移動軌跡に対して、メディアンフィルタ方法を用いてスムージング処理を行う。
【００６８】
図６に示すように、曲線1は算出されたハンドヘルドデバイスの移動軌跡であって、スムージング処理された移動軌跡は曲線2に示される。スムージング後の軌跡にはハンドヘルドデバイスの主移動が保留され、かつぶれが除去された。
【００６９】
ステップ２０７では、スムージング処理後の移動経路に基づいて移動補償を行う。
【００７０】
このステップでは、前記対象フレーム画像を三次元球座標系に投影して、三次元球体画像を取得してから、前記三次元球体画像内の画素点を、下式に従って座標変換を行い、手振れ補正後の三次元球体画像を取得する。
【００７１】
Stable(Image)=Rsmooth*Rnoise*Unstable(Image)+T
ここで、Stable(Image)は、手振れ補正された三次元球体の画像を示し、Rsmoothは、スムージング化された移動経路で、Rnoiseは、スムージング化されていない移動経路であり、Tは、平行移動行列であり、Unstable(Image)は、入力された画像を示す。
【００７２】
最後に、前記手振れ補正された三次元球体の画像を逆変換して、二次元画像に変換する。
【００７３】
上記方法によって手振れ補正シーケンスを取得する。
【００７４】
図７（a）と図７（b）はそれぞれ手振れ補正前の画像（左側）と手振れ補正後の画像（右側）を示す。図から分かるように、手振れ補正後の画像がよりユーザーの視野に一致する。
【００７５】
本発明は、移動推定段階で適時に参照フレームを更新することで大きな変動の手振れ補正結果に対する影響を軽減させると同時に、ハンドヘルドデバイスの姿勢を矯正して手振れ補正後のビデオがユーザー視線に垂直することを確保する。最終的には、本発明が奏でる効果はユーザーに安定かつ視野感受に適する手振れ補正結果を提供する。
【００７６】
図８に示すように、本発明の実施例の画像処理装置は、
対象フレーム画像を取得する画像取得モジュール８０１と、前記対象フレーム画像に対して移動推定を行い、移動経路を取得する移動推定モジュール８０２と、前記移動経路に基づき前記対象フレーム画像に所望を満たす変動があるかどうかを確定する確定モジュール８０３と、前記対象フレーム画像に所望を満たす変動が存在する場合、前記対象フレーム画像を利用して、参照フレーム画像とする選択モジュール８０４と、を含む。
【００７７】
図９に示すように、前記移動推定モジュール８０２は、前記対象フレーム画像に対して、フレーム間移動推定を行い、フレーム間移動軌跡を取得するフレーム間移動推定サブモジュール８０２１と、前記対象フレーム画像に対して、実際移動推定を行い、実際移動軌跡を取得する実際移動推定サブモジュール８０２２と、を含む。
【００７８】
具体的に、前記確定モジュール８０３は、前記フレーム間移動軌跡と前記実際移動軌跡とにおいて所望を満たす変動があるかどうかを判断する。この時、図１０に示すように、前記装置はさらに、
前記フレーム間移動軌跡と前記実際移動軌跡とに所望を満たす変動が存在する場合、前記変動の前記フレーム間移動軌跡と前記実際移動軌跡における第一持続時間と第二持続時間とをそれぞれ取得する第一時間取得モジュール８０５を含み、前記選択モジュール８０４は、前記第一持続時間と前記第二持続時間とがともに予めに設定した閾値より大きければ、前記対象フレーム画像を利用して参照フレーム画像にする。
【００７９】
具体的に、前記確定モジュール８０３は、前記実際移動軌跡に所望を満たす変動があるかどうかを判断する。この時、図１１に示すように、前記装置はさらに、前記実際移動軌跡に所望を満たす変動が存在する場合、前記変動の前記実際移動軌跡における持続時間を取得する第二時間取得モジュール８０６を含み、前記選択モジュール８０４は、前記持続時間が予めに設定した閾値より大きければ、前記対象フレーム画像を利用して参照フレーム画像にする。
【００８０】
図12に示すように、得られたビデオの効果をさらに高めるために、図8〜図11の構成に加えて、前記装置はさらに、
前記参照フレーム画像に対して垂直矯正を行い、垂直矯正後の参照フレーム画像を用いて取得された各フレーム画像に対してフレーム間移動推定を行う画像矯正モジュール８０８と、前記移動経路に対してスムージング処理を行うスムージング処理モジュール８０９と、スムージング処理後の移動経路に基づいて移動補償を行う移動補償モジュール８０１０と、を含む。
【００８１】
図１３に示すように、前記画像矯正モジュール８０８は、
前記実際移動軌跡における各サンプリング時間区間内の平均移動レベルパラメータを確定する確定サブモジュール８０８１と、前記参照フレーム画像に対応する3D参照フレーム画像を取得する取得サブモジュール８０８２と、前記平均移動レベルパラメータに基づき、回転後の3D参照フレーム画像に対応する2D展開図をユーザー視線と垂直させるように、前記3D参照フレーム画像を回転する処理サブモジュール８０８３と、を含む。
【００８２】
ここで、前記スムージング処理モジュール８０９は、メジアンフィルタリング方法を用いて、前記移動経路に対して平滑化処理を行う。
【００８３】
図１４に示すように、前記移動補償モジュール８０１０は、
前記対象フレーム画像を三次元球座標系に投影して、三次元球体画像を取得する画像獲得サブモジュール８０１０１と、前記三次元球体画像内の画素点を座標変換して、手振れ補正後の三次元球体画像を取得する座標変換サブモジュール８０１０２と、前記手振れ補正後の三次元球体画像を二次元画像に変換する移動補償サブモジュール８０１０３と、を含む。
【００８４】
以上から分かるように、本発明の実施例では、対象フレーム画像を判断してそれが参照フレーム画像であるかどうかを判断する。そして、対象フレーム画像が参照フレーム画像である場合、前記参照フレーム画像に対して垂直矯正を行い、かつ垂直矯正後の参照フレーム画像を取得された各フレーム画像とフレーム間移動推定を行う。参照フレーム画像に所望を満たす変動が存在するので、垂直矯正後の参照フレーム画像を基準にしてフレーム間移動推定を行うことは、大きな変動が手振れ補正結果に対する影響を減少でき、取得された手振れ補正結果の効果を向上することができる。同時に、ハンドヘルドデバイスの姿勢を矯正して手振れ補正後のビデオがユーザー視線に垂直することを確保でき、最終的に、ユーザーに安定かつ視野感受に適する手振れ補正結果を提供する。
【００８５】
図１５に示すように、本発明の実施例は電子デバイス１５００を提供し、本実施例は、プロセッサー１５０１と、コンピュータプログラムコマンドが格納されるメモリ１５０２と、を含み、前記コンピュータプログラムコマンドが前記プロセッサーにより実行される時に、前記プロセッサー１５０１は、
対象フレーム画像を取得するステップと、前記対象フレーム画像に対して移動推定を行い、移動経路を取得するステップと、前記移動経路に基づき前記対象フレーム画像に所望を満たす変動があるかどうかを確定するステップと、を含み、前記対象フレーム画像に所望を満たす変動が存在する場合、前記対象フレーム画像を利用して、取得された各フレーム画像にフレーム間移動推定を行うための参照フレーム画像とする。
【００８６】
さらに、図１５に示すように、電子デバイスはさらにネットワークインターフェース１５０３と、入力手段１５０４と、ハードディスク１５０５と、表示デバイス１５０６と、を含む。
【００８７】
上記各インターフェースとデバイスとの間にはバスアーキテクチャーを介して連接し合う。バスアーキテクチャーは任意数のコンポーネントインターコネクトされるバスとブリッジとを含むことができる。具体的には、プロセッサー１５０１が代表する一つまたは複数の中央プロセッサー（CPU）、およびメモリ１５０２が代表する一つまたは複数のメモリーの各種回路が連接されている。バスアーキテクチャーは周辺デバイス、定電圧器と電源管理回路などの各種ほかの回路を一緒に連接させることができる。理解できるように、バスアーキテクチャーはこれらのユニットの間の連接通信を実現するために用いられる。バスアーキテクチャーはデータバスのほか、電源バスと、制御バスと、状態信号バスとを含むことは当分野において公知され、詳細な説明を省略する。
【００８８】
前記ネットワークインターフェース１５０３はネットワーク（例えばインターネット、ローカルエリアネットワークなど）に接続されて、ネットワークから関連するデータを取得し、かつハードディスク１５０５に保存することができる。
【００８９】
前記入力手段１５０４は作業員より入力された各種のコマンドを受け取り、かつプロセッサー１５０１に発送して実行される。前記入力手段１５０４はキーボードまたはクリックデバイス（例えばマウス、軌跡球（トラックボール）、接触感知板またはタッチスクリーンなど）を含む。
【００９０】
前記表示デバイス１５０６はプロセッサー１５０１がコマンドを実行して得た結果を表示できる。
【００９１】
前記メモリ１５０２は、システム稼動時に必須なプログラムとデータ、およびプロセッサー１５０１の計算過程における中間結果などのデータを記憶するように用いられ。
【００９２】
理解できるように、本発明の実施例におけるメモリ１５０２は揮発性メモリーまたは不揮発性メモリでもよく、あるいは揮発性メモリーと不揮発性メモリとの両者を含むことが可能である。ここで、不揮発性メモリは読み出し専用メモリ（ＲＯＭ）で、プログラマブル読み出し専用メモリ（ＰＲＯＭ）で、消去可能なプログラマブル読み出し専用メモリ（ＥＰＲＯＭ）で、電気的に消去可能なプログラマブル読み出し専用メモリ（ＥＥＰＲＯＭ）でもよい。揮発性メモリーはランダムアクセスメモリ（ＲＡＭ）でもよく、外部キャッシュとして用いられる。本明細書に記載の装置と方法のメモリ１５０２はこれらおよび任意のほかの適合類型のメモリを含むが、限られることではない。
【００９３】
いくつかの実施形態において、メモリ１５０２は以下の要素を記憶しており、即ち、実行可能なモジュールまたはデータ構造、あるいはそれらのサブ集合または拡張集合、オペレーティングシステム１５０２１、及びアプリケーションプログラム１５０１５である。
【００９４】
ここで、オペレーティングシステム１５０２１は各種の基礎業務およびハードウェアに基づくタスクを実現するように、例えば枠組層、コアー層、駆動層など各種のシステムプログラムを含む。アプリケーションプログラム１５０１５は各種のアプリケーション業務を実現するように、例えばブラウザー（ブラウザー）などの各種アプリケーションプログラムを含む。本発明の実施例の方法を実現するプログラムはアプリケーションプログラム１５０１５に含まれることが可能である。
【００９５】
上記プロセッサー１５０１によって前記メモリ１５０２に格納されたアプリケーションプログラムとデータ、具体的には、アプリケーションプログラム１５０１５に格納されたプログラムまたはコマンドを呼び出しかつ実行する場合は、対象フレーム画像を取得する。前記対象フレーム画像に対して移動推定を行い、移動経路を取得する。前記移動経路に基づき前記対象フレーム画像に所望を満たす変動があるかどうかを確定する。前記対象フレーム画像に所望を満たす変動が存在する場合、前記対象フレーム画像を利用して、取得された各フレーム画像にフレーム間移動推定を行うための参照フレーム画像とする。
【００９６】
本発明の上記実施例による方法はプロセッサー１５０１に応用でき、あるいはプロセッサー１５０２によって実現できる。プロセッサー１５０１は信号の処理能力を有する集積回路チップであってもよい。実現過程では、上記方法の各ステップはプロセッサー１５０１内のハードウェアの集積ロジック回路またはソフトウェア形式のコマンドによって完成できる。上記プロセッサー１５０１は汎用プロセッサーで、デジタル信号処理器（ＤＳＰ）で、特定用途向け集積回路（ＡＳＩＣ）で、現場で構成可能な回路アレイ（ＦＰＧＡ）で、個別ゲートまたはトランジスタロジックデバイスで、個別ハードウェアユニットであってもよく、本発明の実施例に公開された各方法、ステップおよびロジックブロック図を実現または実行できる。汎用プロセッサーはマイクロプロセッサーまたはいかなる常用的なプロセッサーであっても良い。本発明の実施例より公開された方法のステップと結合して直接にできるのは、ハードウェアデコーダプロセッサーより実行して完成、またはデコーダプロセッサー内のハードウェアおよびソフトウェアモジュールの組み合わせによって実行して完成することである。ソフトウェアモジュールはランダムメモリ、フラッシュメモリ、読み出し専用メモリ、プログラマブル読み出し専用メモリまたは電気的に消去可能なプログラマブルメモリ、レジスタなどの当分野において成熟された記録媒体に位置することが可能である。当該記録媒体はメモリ１５０２にあり、プロセッサー１５０１はメモリ１５０２内の情報を読み取って、そのハードウェアと結合して上記方法のステップを完成する。
【００９７】
理解できるのは、本明細書に記載されたこれらの実施例に、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコードまたはその組み合わせによって実現できる。ハードウェアの実現について、プロセスユニットはひとつまたは複数の特定用途向け集積回路（ＡＳＩＣ）、デジタル信号処理器（ＤＳＰ）、デジタル信号処理デバイス（ＤＳＰＤ）、プログラマブルロジックデバイス（ＰＬＤ）、フィールド  プログラマブル  ゲート  アレイ（ＦＰＧＡ）、汎用プロセッサー、コントローラ、マイクロコントローラ、マイクロプロセッサー、本願の前記機能を実現するためのほかの電子モジュールまたは組み合わせに実現可能である。
【００９８】
ソフトウェアの実現について、本明細書に記載された前記機能を実行するモジュール（例えばプロセス、関数など）によって本明細書の前記技術を実現できる。ソフトウェアコードはメモリに記憶、かつプロセッサーによって実行することが可能である。メモリはプロセッサー内またはプロセッサー外部において実現できる。
【００９９】
具体的に、プロセッサー１５０１は、前記対象フレーム画像に対して、それぞれフレーム間移動推定および実際移動推定を行い、フレーム間移動軌跡と実際移動軌跡を取得する。
【０１００】
具体的に、プロセッサー１５０１は、前記フレーム間移動軌跡と前記実際移動軌跡とにおいて所望を満たす変動があるかどうかを判断する。
【０１０１】
具体的に、プロセッサー１５０１は、前記フレーム間移動軌跡と前記実際移動軌跡とに所望を満たす変動が存在する場合、前記変動の前記フレーム間移動軌跡と前記実際移動軌跡における第一持続時間と第二持続時間とをそれぞれ取得する。前記第一持続時間と前記第二持続時間とがともに予めに設定した閾値より大きければ、前記対象フレーム画像を利用して参照フレーム画像にする。
【０１０２】
具体的に、プロセッサー１５０１は、前記実際移動軌跡に所望を満たす変動があるかどうかを判断する。
【０１０３】
具体的に、プロセッサー１５０１は、前記実際移動軌跡に所望を満たす変動が存在する場合、前記変動の前記実際移動軌跡における持続時間を取得する。前記持続時間が予めに設定した閾値より大きければ、前記対象フレーム画像を利用して参照フレーム画像にする。
【０１０４】
具体的に、プロセッサー１５０１は、前記参照フレーム画像に対して垂直矯正を行い、垂直矯正後の参照フレーム画像を用いて取得された各フレーム画像に対してフレーム間移動推定を行い、前記移動経路に対してスムージング処理を行い、スムージング処理後の移動経路に基づいて移動補償を行う。
【０１０５】
具体的に、プロセッサー１５０１は、前記実際移動軌跡における各サンプリング時間区間内の平均移動レベルパラメータを確定して、前記参照フレーム画像に対応する3D参照フレーム画像を取得し、前記平均移動レベルパラメータに基づき、回転後の3D参照フレーム画像に対応する2D展開図をユーザー視線と垂直させるように、前記3D参照フレーム画像を回転する。
【０１０６】
具体的に、プロセッサー１５０１は、メジアンフィルタリング方法を用いて、前記移動経路に対して平滑化処理を行う。
【０１０７】
具体的に、プロセッサー１５０１は、前記対象フレーム画像を三次元球座標系に投影して、三次元球体画像を取得し、前記三次元球体画像内の画素点を座標変換して、手振れ補正後の三次元球体画像を取得して、前記手振れ補正後の三次元球体画像を二次元画像に変換する。
【０１０８】
本発明の前記装置のメカニズムは前記仕様実施例の記述を参照することが可能である。
【０１０９】
本発明の実施例はさらにコンピュータプログラムを格納するコンピュータ読み出し可能な記録媒体を提供でき、前記コンピュータプログラムはプロセッサーによって以下のステップを実現できる：対象フレーム画像を取得するステップと、前記対象フレーム画像に対して移動推定を行い、移動経路を取得するステップと、前記移動経路に基づき前記対象フレーム画像に所望を満たす変動があるかどうかを確定するステップと、を含み、前記対象フレーム画像に所望を満たす変動が存在する場合、前記対象フレーム画像を利用して、取得された各フレーム画像にフレーム間移動推定を行うための参照フレーム画像とする。
【０１１０】
その内、前記対象フレーム画像に対して移動推定を行い、移動経路を取得する前記ステップは、
前記対象フレーム画像に対して、それぞれフレーム間移動推定および実際移動推定を行い、フレーム間移動軌跡と実際移動軌跡を取得する。
【０１１１】
その内、前記移動経路に基づき前記対象フレーム画像に所望を満たす変動があるかどうかを確定する前記ステップは、
前記フレーム間移動軌跡と前記実際移動軌跡とにおいて所望を満たす変動があるかどうかを判断する。
【０１１２】
前記移動経路に基づき前記対象フレーム画像に所望を満たす変動があるかどうかを確定する前記ステップの後に、前記方法はさらに、
前記フレーム間移動軌跡と前記実際移動軌跡とに所望を満たす変動が存在する場合、前記変動の前記フレーム間移動軌跡と前記実際移動軌跡における第一持続時間と第二持続時間とをそれぞれ取得することを含む。
【０１１３】
前記対象フレーム画像を利用して参照フレーム画像にすることは具体的に、
前記第一持続時間と前記第二持続時間とがともに予めに設定した閾値より大きければ、前記対象フレーム画像を利用して参照フレーム画像にする。
【０１１４】
ここで、前記移動経路に基づき前記対象フレーム画像に所望を満たす変動があるかどうかを確定する前記ステップは、
前記実際移動軌跡に所望を満たす変動があるかどうかを判断する。
【０１１５】
前記移動経路に基づき前記対象フレーム画像に所望を満たす変動があるかどうかを確定するステップの後に、前記方法はさらに、
前記実際移動軌跡に所望を満たす変動が存在する場合、前記変動の前記実際移動軌跡における持続時間を取得することを含む。
【０１１６】
前記対象フレーム画像を利用して参照フレーム画像にすることは具体的に、
前記持続時間が予めに設定した閾値より大きければ、前記対象フレーム画像を利用して参照フレーム画像にする。
【０１１７】
ここで、前記方法はさらに、
前記参照フレーム画像に対して垂直矯正を行い、垂直矯正後の参照フレーム画像は取得された各フレーム画像に対してフレーム間移動推定を行うこと、
前記移動経路に対してスムージング処理を行うこと、及び
スムージング処理後の移動経路に基づいて移動補償を行うことを含む。
【０１１８】
ここで、前記参照フレーム画像に対して垂直矯正を行う前記ステップは、
前記実際移動軌跡における各サンプリング時間区間内の平均移動レベルパラメータを確定することと、
前記参照フレーム画像に対応する3D参照フレーム画像を取得することと、
前記平均移動レベルパラメータに基づき、回転後の3D参照フレーム画像に対応する2D展開図をユーザー視線と垂直させるように、前記3D参照フレーム画像を回転することと、を含む。
【０１１９】
ここで、前記移動経路に対してスムージング処理行う前記ステップは、
メジアンフィルタリング方法を用いて、前記移動経路に対して平滑化処理を行う。
【０１２０】
ここで、前記スムージング処理後の移動経路に基づいて移動補償を行う前記ステップは、
前記対象フレーム画像を三次元球座標系に投影して、三次元球体画像を取得することと、
前記三次元球体画像内の画素点を座標変換して、手振れ補正後の三次元球体画像を取得することと、
前記手振れ補正後の三次元球体画像を二次元画像に変換することと、を含む。
【０１２１】
本願より提供する複数の実施例において、記載された方法と装置をほかの方法でも実現できることは言うまでも無い。例えば、上記記述された装置実施例は例示的のみであり、たとえば、前記モジュールの区画はロジック機能区画のみであり、実際ではほかの区画方法で実現することも可能である。例えば、複数のモジュールまたはユニットで結合またはほかのシステムに集成して、あるいはある特徴が無視でき、または実行されなくてもよい。もう1つ、示しまたは議論された相互間の結合または直接結合または通信連接はインターフェース、装置またはモジュールを介した間接結合または通信連接であってもよし、電気的、機械またはほかの形式であってもよい。
【０１２２】
また、本発明の各実施例における各機能的なモジュールをひとつのプロセスユニットに集成することも可能が、各モジュールが単独で物理的に含むことも可能で、または二つあるいは二つ以上のモジュールが1つのモジュールに集成することも可能である。上記集成されたモジュールはハードウェアの形式で実現することもできれば、ハードウェアプラスソフトウェア機能モジュールの形成実現することもできる。
【０１２３】
上記ソフトウェア機能モジュールの形成で実現する集成モジュールはコンピュータの読み取る可能な記録媒体に保存することもできる。上記ソフトウェア機能モジュールは記録媒体に保存されて、若干のコマンドを含んで一台のコンピュータデバイス（パーソナルコンピュータ、サーバまたはネットワークデバイスなど）を本願の各実施例の前記通信方法の一部のステップを実行させる。前記の記録媒体は以下を含む：USB、移動ハードディスク、読み出し専用メモリ（Read-Only  Memory：ROM）、ランダムアクセスメモリ（Random  Access  Memory：RAM）、磁気ディスクまたは光ディスクなど各種のプログラムコーどうかを貯蔵できる媒体である。
【０１２４】
以上は、本発明の最適な実施形態に過ぎない。当業者にとって、本発明の前記技術思想から逸脱しない場合、若干の改良と修正を行うことが可能であり、これらの改良と修正も本発明の保護範囲内にあると見なすべきである。
【図１】
2018206365.tif 000003
【図２】
2018206365.tif 000004
【図３】
2018206365.tif 000005
【図４】
2018206365.tif 000006
【図５】
2018206365.tif 000007
【図６】
2018206365.tif 000008
【図７】
2018206365.tif 000009
【図８】
2018206365.tif 000010
【図９】
2018206365.tif 000011
【図１０】
2018206365.tif 000012
【図１１】
2018206365.tif 000013
【図１２】
2018206365.tif 000014
【図１３】
2018206365.tif 000015
【図１４】
2018206365.tif 000016
【図１５】
2018206365.tif 000017