JP6658791B2 - パノラマ映像を処理する方法、装置、デバイス、コンピュータ読取り可能な記憶媒体 - Google Patents

パノラマ映像を処理する方法、装置、デバイス、コンピュータ読取り可能な記憶媒体 Download PDF

Info

Publication number
JP6658791B2
JP6658791B2 JP2018081943A JP2018081943A JP6658791B2 JP 6658791 B2 JP6658791 B2 JP 6658791B2 JP 2018081943 A JP2018081943 A JP 2018081943A JP 2018081943 A JP2018081943 A JP 2018081943A JP 6658791 B2 JP6658791 B2 JP 6658791B2
Authority
JP
Japan
Prior art keywords
motion
panoramic image
frame
image
dimensional
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018081943A
Other languages
English (en)
Other versions
JP2019004451A (ja
Inventor
リアン リンイェン
リアン リンイェン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Publication of JP2019004451A publication Critical patent/JP2019004451A/ja
Application granted granted Critical
Publication of JP6658791B2 publication Critical patent/JP6658791B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/698Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/207Analysis of motion for motion estimation over a hierarchy of resolutions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/681Motion detection
    • H04N23/6811Motion detection based on the image signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • H04N23/683Vibration or motion blur correction performed by a processor, e.g. controlling the readout of an image memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/95Computational photography systems, e.g. light-field imaging systems
    • H04N23/951Computational photography systems, e.g. light-field imaging systems by using two or more images to influence resolution, frame rate or aspect ratio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/60Noise processing, e.g. detecting, correcting, reducing or removing noise
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/144Movement detection
    • H04N5/145Movement estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/2622Signal amplitude transition in the zone between image portions, e.g. soft edges
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/2624Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects for obtaining an image which is composed of whole input images, e.g. splitscreen
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20172Image enhancement details
    • G06T2207/20201Motion blur correction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30241Trajectory

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Studio Devices (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Stereoscopic And Panoramic Photography (AREA)
  • Adjustment Of Camera Lenses (AREA)

Description

本発明は移動映像処理技術分野に関し、特に、パノラマ映像を処理する方法、装置、デバイス、コンピュータ読取り可能な記憶媒体に関する。
撮像装置や移動ネットワークの飛躍的な発展に伴い、携帯型撮像装置による映像撮影は我々の生活に増々密着するようになってきた。例えば、流行りの移動映像実況放送プラットフォームや、観光実況放送、ショッピング実況放送などがある。そこで、ユーザに良好な映像画質を提供するために、映像の手ぶれ補正は、実況映像処理において重要な一環になる。
従来の映像手ぶれ補正方式は、機械式処理、光学式処理、デジタル方式処理の3種類がある。機械式による映像手ぶれ補正方法では、付設するセンサ、例えば、ジャイロ、角度センサ等により取得されたカメラの手ぶれ情報を手ぶれ補正に使用する。また、光学式の手ぶれ補正方法では、光学部、例えば、レンズとプリズムとの間の方向や位置を変えることで、カメラの手ぶれを解消する。機械式による映像手ぶれ補正方法は、光学式による映像手ぶれ補正方法と同じく、付設するハードウェアに基づく手ぶれ処理方法であるために、高価な装置を必要とすると共に、移植性が悪い。一方、デジタル方式による映像手ぶれ補正方法はいかなる機械的または光学的な手段を必要とせず、画像処理方法により手ぶれの動き情報を取得し、画像補正処理方法により安定した映像画像配列を得ることができる。機械式又は光学式による映像手ぶれ補正方法に比べて、デジタル方式による映像手ぶれ補正方法は用途がより広い。
デジタル方式による映像手ぶれ補正方法は、手ぶれ補正された映像配列(sequence)がリアルタイムに得られたか否かによって、リアルタイム映像手ぶれ補正方法とオフライン映像手ぶれ補正方法の2種類に分類される。オフライン映像手ぶれ補正方法は映像を後処理するために、映像配列全体の動きの軌跡を取得することが可能のために、最適化された滑らかな軌跡が推定され、よりロバストで安定した映像の流れが得られる。一方、リアルタイム映像手ぶれ補正方法は、将来の動き情報を利用することができないため、オフライン映像手ぶれ補正方法に比べてロバスト性が悪いが、即時性が保たれる。オフライン映像手ぶれ補正方法かリアルタイム映像手ぶれ補正方法かにかかわらず、デジタル方式による映像手ぶれ補正方法は、カメラの動きの推定、カメラの動きの平滑化、及び手ぶれ補正の三つのステップを主に含む。動きの推定では初期の動き軌跡が推定される。動きの平滑化では初期の動き軌跡に基づいて動き軌跡の平滑化演算を行う。手ぶれ補正では推定された平滑な動き軌跡に基づいて初期映像に対して補正を行い、安定する映像配列が求められる。
一般的に、従来の映像手ぶれ補正方法は、二次元アフィン変換モデルに基づいて回転マトリクス及びオフセットマトリックスの動きを推定し、X軸およびY軸上でそれぞれ動き補正を行う。一方、360度パノラマカメラは、カメラ製造技術の進みにつれて品質が向上し、ビデオ監視やライブ放送等多くの分野に使用されるようになってきた。これに伴い、良好なパノラマ映像の画質の提供を可能にするパノラマ映像の手ぶれ補正技術は注目されてきた。ところが、球体画像の特殊性のために、パノラマ映像の手ぶれ補正において、パノラマ画像の動きの推定が従来の二次元動きモデルに対応せず、従来の手ぶれ補正技術がパノラマ映像の手ぶれ補正に適用されない問題がある。
上記問題を鑑みて、本発明は、パノラマ映像に対して映像手ぶれ補正を行う処理の方法、装置、デバイス、コンピュータ読取り可能な記憶媒体を提供することを目的とする。
上記問題を解決するために、本発明の実施例は、まず、パノラマ映像を処理する方法であって、複数フレームの二次元パノラマ画像を含むパノラマ映像を受信し;前記パノラマ映像において隣接する任意の2フレームの二次元パノラマ画像に対してフレーム間の動きを推定し;前記フレーム間の動きの推定の結果に基づいて、前記パノラマ映像の動き履歴軌跡を求め、且つ動き履歴軌跡を平滑化し;平滑化された動き履歴軌跡に基づいて、フレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算し;フレーム毎に動き補正回転マトリックスを用いて二次元パノラマ画像を再構成することより手ぶれ補正を行い、手ぶれ補正されたパノラマ映像を出力するステップを含むことを特徴とする方法を提供する。
また、前記パノラマ映像において隣接する任意の2フレームの二次元パノラマ画像に対してフレーム間の動きを推定することは、N+1番目フレームの二次元パノラマ画像における複数の特徴点をN番目のフレームの二次元パノラマ画像における複数の特徴点に一対一にマッチングし、Nは正の整数であり;すべてのマッチング点対から正しいマッチング点対を特定し、この正しいマッチング点対に基づいて、N+1番目フレームの二次元パノラマ画像からN番目フレームの二次元パノラマ画像までの回転マトリックスを計算するステップを含む。
また、前記したすべてのマッチング点対から正しいマッチング点対を特定することは、すべてのマッチング点対からマッチング点対をM対選択し、Mは1より大きい整数であり;選択されたM対のマッチング点対に基づいて、N+1番目フレームの二次元パノラマ画像からN番目フレームの二次元パノラマ画像までの第1回転マトリックスを計算し;前記第1回転マトリックスを用いて、M対のマッチング点対以外の他のマッチング点対の誤差値を計算し、算出された誤差値に基づいて、前記第1マトリックスをサポートするマッチング点対の数を確定し;前記第1回転マトリックスをサポートするマッチング点対の数が第1閾値よりも大きい場合に、選択されたM対のマッチング点対が正しいマッチング点対であることを判断し、前記第1回転マトリックスのマッチング点対の数が第1閾値以下の場合に、選択されたM対のマッチング点対が正しくないマッチング点対であることを判断するステップを含む。
また、前記した平滑化された動き履歴軌跡に基づいて、フレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算することは、平滑化された動き履歴軌跡に基づいて、二次元パノラマ画像の現フレームが前フレームに対する変化が、カメラの意図した動きによるものなのか否かを判断し;前記二次元パノラマ画像の現フレームが前フレームに対する変化がカメラの意図しないノイズ運動である場合に、前記現フレームが前フレームに対する動き補正回転マトリックスを計算し;前記二次元パノラマ画像の現フレームが前フレームに対する変化がカメラの意図した動きである場合に、参照フレームとなる二次元パノラマ画像を更新し、更新された参照フレームと現フレームに基づき、2フレーム間の動き補正回転マトリックスを算出するステップを含む。
また、平滑化された動き履歴軌跡に基づいて二次元パノラマ画像の現フレームが前フレームに対する変化がカメラの意図した動きによるものなのか否かを判断することは、前記動き履歴軌跡に基づいて、二次元パノラマ画像の現フレームが前フレームに対するノイズレベルを計算し;前記ノイズレベルが第2閾値以下である場合に、二次元パノラマ画像の現フレームが前フレームに対する変化が意図しないノイズ運動であると判断し;前記ノイズレベルが第2閾値よりも大きい場合に、二次元パノラマ画像の現フレームが前フレームに対する変化が意図した動きであると判断するステップを含み、そのうち、意図しないノイズ運動は、所定のノイズ許容範囲内にあるもの、及び所定のノイズ許容範囲を超えたものを含み、所定のノイズ許容範囲は、第2閾値よりも小さい第3閾値以下である。
そして、本発明の実施例は、パノラマ映像を処理する装置であって、複数フレームの二次元パノラマ画像を含むパノラマ映像を受信する受信モジュールと;前記パノラマ映像において隣接する任意の2フレームの二次元パノラマ画像に対してフレーム間の動きを推定する動き推定モジュールと;前記フレーム間の動きの推定の結果に基づいて、前記パノラマ映像の動き履歴軌跡を求め、且つ動き履歴軌跡を平滑化する動き履歴軌跡計算モジュールと;平滑化された動き履歴軌跡に基づいて、フレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算する動き補正回転マトリックス計算モジュールと;フレーム毎に動き補正回転マトリックスを用いて二次元パノラマ画像を再構成することより手ぶれ補正を行い、手ぶれ補正されたパノラマ映像を出力する再構築モジュールと、を含む装置を提供する。
さらに、本発明の実施例は、処理装置と、コンピュータプログラム指令を記憶する記憶装置とを備える電子デバイスであって、前記処理装置が前記コンピュータプログラム指令を実行することにより、複数フレームの二次元パノラマ画像を含むパノラマ映像を受信し;前記パノラマ映像において隣接する任意の2フレームの二次元パノラマ画像に対してフレーム間の動きを推定し;前記フレーム間の動きの推定の結果に基づいて、前記パノラマ映像の動き履歴軌跡を求め、且つ動き履歴軌跡を平滑化し;平滑化された動き履歴軌跡に基づいて、フレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算し;フレーム毎に動き補正回転マトリックスを用いて二次元パノラマ画像を再構成することより手ぶれ補正を行い、手ぶれ補正されたパノラマ映像を出力するステップが実行される電子デバイスを提供する。
最後に、本発明の実施例は、コンピュータプログラムが記憶されるコンピュータ読取り可能な記憶媒体であって、前記コンピュータプログラムを処理装置に実行させることより、複数フレームの二次元パノラマ画像を含むパノラマ映像を受信し;前記パノラマ映像において隣接する任意の2フレームの二次元パノラマ画像に対してフレーム間の動きを推定し;前記フレーム間の動きの推定の結果に基づいて、前記パノラマ映像の動き履歴軌跡を求め、且つ動き履歴軌跡を平滑化し;平滑化された動き履歴軌跡に基づいて、フレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算し;フレーム毎に動き補正回転マトリックスを用いて二次元パノラマ画像を再構成することより手ぶれ補正を行い、手ぶれ補正されたパノラマ映像を出力するステップが実行される記憶媒体を提供する。
本発明の実施例により、二次元パノラマ画像に対応する三次元球体パノラマ画像は、画像情報を失わずに任意の方向へ回転可能のために、2フレームの二次元パノラマ画像間に存在する回転ベクトルにより、前記2フレームの二次元パノラマ画像中の一方をもう一方に接近させることができる。本発明はフレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算し、算出される動き補正回転マトリックスで二次元パノラマ画像を再構築することより映像手ぶれ補正を行い、パノラマ映像の手ぶれ補正を実現する効果を奏する。
本発明の実施例にかかるパノラマ映像を処理する方法を示すフロー図である。 本発明の実施例にかかるパノラマ映像において隣接する任意2フレームのパノラマ画像のフレーム間動きを推定する処理を示すフロー図である。 本発明の実施例にかかる全てのマッチング点対から正しいマッチング点対を特定する処理を示すフロー図である。 本発明の実施例にかかるフレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算して算出された動き補正回転マトリックスを用いて二次元パノラマ画像を再構成する処理を示すフロー図である。 本発明の実施例にかかる前フレームの二次元パノラマ画像元に対するフレームの二次元パノラマ画像の変化がカメラの意図した動きか、それとも意図しないノイズ運動かを判断する処理を示すフロー図である。 本発明の実施例にかかるパノラマ映像を処理する装置のモジュール構成図である。 本発明の実施例にかかる動き推定モジュールを構成するモジュール構成図である。 本発明の実施例にかかる特定ユニットを構成するモジュール構成図である。 本発明の実施例にかかる動き補正回転マトリックス計算モジュールを構成するモジュール構成図である。 本発明の実施例にかかる判断モジュールを構成するモジュール構成図である。 本発明の実施例にかかるパノラマ映像を処理する電子デバイスを構成するモジュール構成図である。 本発明の実施例にかかる手ぶれ補正前後のパノラマ画像配列を示す図である。 本発明の実施例にかかるパノラマ映像を処理する方法のフロー図である。 本発明の実施例にかかる特徴点のマッチング処理を示すフロー図である。 本発明の実施例にかかる不安定な二次元パノラマ画像に対する補正を示す図である。
以下、本発明の実施例が解決しようとする課題、発明の構成及びメリットをより明確にするために、図面及び具体的な実施例を用いて詳細に説明する。
本発明の実施例は、パノラマ映像を処理する方法、装置、器具、コンピュータ可読記憶媒体を提供し、パノラマ映像に対して手ぶれ補正を行う。
<実施例1>
本発明の実施形態は、パノラマ映像を処理する方法を提供し、前記方法は図1に示すように、次のステップ101〜ステップ105を含む。
ステップ101:複数フレームの二次元パノラマ画像を含むパノラマ映像を受信する;
ステップ102:前記パノラマ映像において隣接する任意の2フレームの二次元パノラマ画像に対してフレーム間の動きを推定する;
ステップ103:前記フレーム間の動きの推定の結果に基づいて、前記パノラマ映像の動き履歴軌跡を求め、且つ動き履歴軌跡を平滑化する;
ステップ104:平滑化された動き履歴軌跡に基づいて、フレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算する;
ステップ105:フレーム毎に動き補正回転マトリックスを用いて二次元パノラマ画像を再構成することより手ぶれ補正を行い、手ぶれ補正されたパノラマ映像を出力する。
二次元パノラマ画像に対応する三次元球体パノラマ画像は、画像情報を失わずに任意の方向へ回転可能のために、2フレームの二次元パノラマ画像間に存在する回転ベクトルにより、前記2フレームの二次元パノラマ画像中の一方をもう一方に接近させることができる。本発明はフレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算し、算出される動き補正回転マトリックスで二次元パノラマ画像を再構築することより映像手ぶれ補正を行い、パノラマ映像の手ぶれ補正を実現する。
一例として、図2に示すように、前記ステップ102は、次のステップ1021〜ステップ1022を含む。
ステップ1021:N+1番目フレームの二次元パノラマ画像における複数の特徴点をN番目のフレームの二次元パノラマ画像における複数の特徴点に一対一にマッチングする。ここで、Nは正の整数である。
ステップ1022:すべてのマッチング点対から正しいマッチング点対を特定し、この正しいマッチング点対に基づいて、N+1番目フレームの二次元パノラマ画像からN番目フレームの二次元パノラマ画像までの回転マトリックスを計算する。
一例として、図3に示すように、前記ステップ1022は次のステップ10221〜ステップ10225を含む。
ステップ10221:すべてのマッチング点対からマッチング点対をM対選択する。ここで、Mは1より大きい整数である。
ステップ10222:選択されたM対のマッチング点対に基づいて、N+1番目フレームの二次元パノラマ画像からN番目フレームの二次元パノラマ画像までの第1回転マトリックスを計算する。
ステップ10223:前記第1回転マトリックスを用いて、M対のマッチング点対以外の他のマッチング点対の誤差値を計算し、算出された誤差値に基づいて、前記第1マトリックスをサポートするマッチング点対の数を確定する。
ステップ10224:前記第1回転マトリックスをサポートするマッチング点対の数が第1閾値よりも大きい場合に、選択されたM対のマッチング点対が正しいマッチング点対であることを判断する。
ステップ10225:前記第1回転マトリックスのマッチング点対の数が第1閾値以下の場合に、選択されたM対のマッチング点対が正しくないマッチング点対であることを判断し、ステップ10221に移行し、マッチング点対をM対選択し直す。
一例として、図4に示すように、ステップ104は次のステップ1041〜ステップ1043を含む。
ステップ1041:平滑化された動き履歴軌跡に基づいて、二次元パノラマ画像の現フレームが前フレームに対する変化が、カメラの意図した動きによるものなのか否かを判断する。
ステップ1042:二次元パノラマ画像の現フレームが前フレームに対する変化がカメラの意図しないノイズ運動である場合に、前記現フレームが前フレームに対する動き補正回転マトリックスを計算する。
ステップ1043:二次元パノラマ画像の現フレームが前フレームに対する変化がカメラの意図した動きである場合に、参照フレームとなる二次元パノラマ画像を更新し、更新された参照フレームと現フレームに基づき、2フレーム間の動き補正回転マトリックスを算出する。
ステップ105において、前記動き補正回転マトリックスに対して平滑処理を行い、平滑化された動き補正回転マトリックスを現フレームの二次元パノラマ画像に適用することにより、手ぶれ補正された二次元パノラマ画像が得られる。
一例として、図5に示すように、前記ステップ1041は次のステップ10411〜ステップ10413を含む。
ステップ10411:前記動き履歴軌跡に基づいて、二次元パノラマ画像の現フレームが前フレームに対するノイズレベルを計算する。
ステップ10412:前記ノイズレベルが第2閾値以下である場合に、二次元パノラマ画像の現フレームが前フレームに対する変化が意図しないノイズ運動であると判断する。
ステップ10413:前記ノイズレベルが第2の閾値よりも大きい場合に、二次元パノラマ画像の現フレームが前フレームに対する変化が意図した動きであると判断する。
なお、意図しないノイズ運動は、所定のノイズ許容範囲内にあるもの、及び所定のノイズ許容範囲を超えたものを含み、所定のノイズ許容範囲は、第2閾値よりも小さい第3閾値以下である。
<実施例2>
本発明の実施例は、パノラマ映像を処理する装置を提供する。その装置は、図6に示すように、次の各モジュール、即ち、
複数フレームの二次元パノラマ画像を含むパノラマ映像を受信する受信モジュール21;
前記パノラマ映像において隣接する任意の2フレームの二次元パノラマ画像に対してフレーム間の動きを推定する動き推定モジュール22;
前記フレーム間の動きの推定の結果に基づいて、前記パノラマ映像の動き履歴軌跡を求め、且つ動き履歴軌跡を平滑化する動き履歴軌跡計算モジュール23;
平滑化された動き履歴軌跡に基づいて、フレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算する動き補正回転マトリックス計算モジュール24;及び
フレーム毎に動き補正回転マトリックスを用いて二次元パノラマ画像を再構成することより手ぶれ補正を行い、手ぶれ補正されたパノラマ映像を出力する再構築モジュール25を含む。
二次元パノラマ画像に対応する三次元球体パノラマ画像は、画像情報を失わずに任意の方向へ回転可能のために、2フレームの二次元パノラマ画像間に存在する回転ベクトルにより、前記2フレームの二次元パノラマ画像中の一方をもう一方に接近させることができる。本発明はフレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算し、算出される動き補正回転マトリックスで二次元パノラマ画像を再構築することより映像手ぶれ補正を行い、パノラマ映像の手ぶれ補正を実現する。
一例として、図7に示すように、前記動き推定モジュール22は、次の各ユニット、即ち、
二次元パノラマ画像のN+1番目フレームにおける複数の特徴点とN番目フレームにおける複数の特徴点とが1一対一にマッチングするマッチングユニット221;
すべてのマッチング点対から正しいマッチング点対を特定する特定ユニット222;及び
前記正しいマッチング点対に基づいて、N+1番目フレームの二次元パノラマ画像からN番目フレームの二次元パノラマ画像までの回転マトリックスを計算する計算ユニット223を含む。ここで、Nは正の整数である。
一例として、図8に示すように、確定ユニット222は、次のサブモジュール、即ち、
すべてのマッチング点対からマッチング点対をM対選択する選択サブユニット2221;
選択されたM対のマッチング点対に基づいて、N+1番目フレームの二次元パノラマ画像からN番目フレームの二次元パノラマ画像までの第1回転マトリックスを計算する第1計算サブユニット2222;
第1回転マトリックスを用いて、M対のマッチング点対以外の他のマッチング点対の誤差値を計算し、算出された誤差値に基づいて、前記第1マトリックスをサポートするマッチング点対の数を確定する第2計算サブユニット2223;及び
第1回転マトリックスをサポートするマッチング点対の数が第1閾値よりも大きい場合に、選択されたM対のマッチング点対が正しいマッチング点対であることが確定され、第1回転マトリックスのマッチング点対の数が第1閾値以下の場合に、選択されたM対のマッチング点対が正しくないマッチング点対であることを判断する処理サブユニット2224を含む。
一例として、図9に示すように、前記動き補正回転マトリックスモジュール24は、以下のユニット、即ち、
平滑化された動き履歴軌跡に基づいて、二次元パノラマ画像の現フレームが前フレームに対する変化が、カメラの意図した動きによるものなのか否かを判断する判断ユニット241;及び
二次元パノラマ画像の現フレームが前フレームに対する変化は、カメラの意図しないノイズ運動である場合に、前記現フレームが前フレームに対する動き補正回転マトリックスを計算し、二次元パノラマ画像の現フレームが前フレームに対する変化は、カメラの意図した動きである場合に、参照フレームとなる二次元パノラマ画像を更新し、更新された参照フレームと現フレームに基づき、2フレーム間の動き補正回転マトリックスを算出する動き補正回転マトリックス計算ユニット242を含む。
前記再構築モジュール25は、具体的に、前記動き補正回転マトリックスに対して平滑処理を行い、平滑化された動き補正回転マトリックスを現フレームの二次元パノラマ画像に適用することにより、手ぶれ補正された二次元パノラマ画像を得る。
一例として、図10に示すように、前記判断ユニット241は、次のサブユニット、即ち、
前記動き履歴軌跡に基づいて、二次元パノラマ画像の現フレームが前フレームに対するノイズレベルを計算するノイズレベル計算サブユニット2411;及び
前記ノイズレベルが第2閾値以下である場合に、二次元パノラマ画像の現フレームが前フレームに対する変化が意図しないノイズ運動であると判断し、前記ノイズレベルが第2の閾値よりも大きい場合に、二次元パノラマ画像の現フレームが前フレームに対する変化が意図した動きであると判断する判断サブユニット2412を含む。
なお、意図しないノイズ運動は、所定のノイズ許容範囲内にあるもの、及び所定のノイズ許容範囲を超えたものを含み、所定のノイズ許容範囲は、第2閾値よりも小さい第3閾値以下である。
<実施例3>
本実施例はパノラマ映像を処理する電子デバイス30を提供すする。図11に示すように、電子デバイス30は、処理装置32と、コンピュータプログラム指令を記憶する記憶装置34とを有し、前記処理装置が前記コンピュータプログラム指令を実行することにより、次の各ステップが実行される。
複数フレームの二次元パノラマ画像を含むパノラマ映像を受信し;
前記パノラマ映像において隣接する任意の2フレームの二次元パノラマ画像に対してフレーム間の動きを推定し;
前記フレーム間の動きの推定の結果に基づいて、前記パノラマ映像の動き履歴軌跡を求め、且つ動き履歴軌跡を平滑化し;
平滑化された動き履歴軌跡に基づいて、フレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算し;
フレーム毎に動き補正回転マトリックスを用いて二次元パノラマ画像を再構成することより手ぶれ補正を行い、手ぶれ補正されたパノラマ映像を出力する。
また、図11に示すように、パノラマ映像処理を行う電子デバイス30は、ネットワーク31と、入力装置33と、ハードディスク35と、表示装置36とを備える。
上記各インタフェースはバスアーキテクチャを介して装置に接続される。バスアーキテクチャは互いに接続される任意数のバスとブリッジを含む。具体的に、処理装置32が代表とする1つ又は複数の中央処理器(CPU)と記憶装置34が代表する1つまたは複数の記憶装置の各種回路が接続される。バスアーキテクチャより、例えば外付け機器、レギュレータ―及び電力管理回路などの種々の別の回路が接続される。バスアーキテクチャよりこれらの機器が通信可能に接続される。バスアーキテクチャは、データバス以外に、電源バス、制御バス及び状態信号バスを含む。これらは公知技術であり、詳細な説明を省略する。
ネットワークインタフェース31は、ネットワーク(例えば、インターネットやLANなど)に接続され、ネットワークからパノラマカメラより撮影されるパノラマ映像等のデータを取得してハードディスク35に記憶させるインタフェースである。
入力装置33はユーザより入力される各種指令を受け付け、処理装置32に送信して実行させる手段である。また、入力装置33はキーボードやクリック手段であり、例えば、マウス、トラックボール、タッチボードやタッチパネル等がある。
表示装置36は処理装置32より指令を実行した結果表示する手段である。
記憶装置34はオペレティングシステムが実行するプログラムとデータ、及び処理装置32より計算された中間結果等のデータを記憶する記憶装置である。
本実施例にかかる記憶装置34は揮発性記憶手段又は非揮発性記憶手段、もしくは揮発性記憶手段と非揮発性記憶手段の両方である。その中の非揮発性記憶手段はROM、PROM、EPROM、EEPROM、フラッシュメモリである。揮発性記憶手段は、RAMであり、外付け高速バッファとする。しかし、本明細書に記載される装置及び方法に用いった記憶装置34はこれらの記憶手段に限定されず、他の適切な記憶装置でもよい。
一部の実施形態において、記憶装置34にモジュール又はデータ構成若しくはこれらのサブモジュールや買う超モジュールであるオペレティングシステム341及びアプリケーションプログラム342が記憶される。
その中に、オペレティングシステム341は、各種システムプログラム、例えばフレーム層、コア層、駆動層等を含み、各種操作業務及びハードウェアによる処理されるジョブを実現するためのものである。アプリケーションプログラム342は各種アプリケーションプログラム、例えばウェブブラウザ―等を含み、各種アプリケーション業務を実現するためのものである。本実施例にかかる方法は実行するプログラムはアプリケーションプログラム342に含む。
上記処理装置32は、記憶装置34に記憶されるアプリケーションプログラム及びデータ、例えばアプリケーションプログラム342で記述されるプログラムまたは指令、をアップロードして実行することにより、
複数フレームの二次元パノラマ画像を含むパノラマ映像を受信し;
前記パノラマ映像において隣接する任意の2フレームの二次元パノラマ画像に対してフレーム間の動きを推定し;
前記フレーム間の動きの推定の結果に基づいて、前記パノラマ映像の動き履歴軌跡を求め、且つ動き履歴軌跡を平滑化し;
平滑化された動き履歴軌跡に基づいて、フレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算し;
フレーム毎に動き補正回転マトリックスを用いて二次元パノラマ画像を再構成することより手ぶれ補正を行い、手ぶれ補正されたパノラマ映像を出力する。
上記本発明の実施例にかかる方法は処理装置32に適用し、または処理装置32によって実現される。処理装置32は集積回路基板であって、信号を処理する能力がある。上記方法の各ステップは処理装置32におけるハードウェアである集積論理回路又はソフトウェア形式の指令によって実現される。上記処理装置32は汎用処理器、DSP、ASIC、FPGA又はその他のPLD、ディスクリートまたはトランジスタ論理デバイス、ディスクリートハードウェア部品であり、本発明の実施例にかかる各方法、ステップ及び論理的モジュールを実現又は実行可能なものである。汎用処理器はマイクロプロセッサ又は任意の一般処理器などである。本発明の実施例にかかる方法の各ステップはハードウェアであるプロセッサより実行して実現され、またはプロセッサにお行けるハードウェアとソフトウェアの組み合わせによって実現される。ソフトウェアモジュールはRAM、フラッシュメモリ、ROM、PROM又はEPROM、レジスタ等従来の記憶媒体に記憶される。処理装置32はこのソフトウェアが記憶される記憶媒体を備える記憶装置34から情報を読出し、ハードウェアと組み合わせて上記のステップを実現する。
本実施例にかかるハードウェア、ソフトウェア、ファームウェア、中間ウェア、マイクロコード、またはこれらの組み合わせによって実現される。処理ユニットにおいてハードウェアによる実現はASIC、DSP、DSPD、PLD、FPGA、汎用プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサの中の一つ又は複数、及び本明細書に記載されて前記機能を実現する他の電子部品又は組み合わせで実行される。
また、ソフトウェアによる実現は、プログラムで記述される機能的モジュール(例えばプログラム、関数等)より実行する。ソフトウェアプログラムはメモリに記憶されてプロセッサによって実行される。メモリはプロセッサ内部又は外部で実現できる。
具体的に、処理装置32は、N+1番目フレームの二次元パノラマ画像における複数の特徴点をN番目のフレームの二次元パノラマ画像における複数の特徴点に一対一にマッチングする;すべてのマッチング点対から正しいマッチング点対を特定し、この正しいマッチング点対に基づいて、N+1番目フレームの二次元パノラマ画像からN番目フレームの二次元パノラマ画像までの回転マトリックスを計算する。ここで、Nは正の整数である。
具体的に、処理装置32は、すべてのマッチング点対からM対マッチング点対を選択し;選択されたM対のマッチング点対に基づいて、N+1番目フレームの二次元パノラマ画像からN番目フレームの二次元パノラマ画像までの第1回転マトリックスを計算し;前記第1回転マトリックスを用いて、M対のマッチング点対以外の他のマッチング点対の誤差値を計算し、算出された誤差値に基づいて、前記第1マトリックスをサポートするマッチング点対の数を確定し;前記第1回転マトリックスをサポートするマッチング点対の数が第1閾値よりも大きい場合に、選択されたM対のマッチング点対が正しいマッチング点対であることを判断する。
具体的に、処理装置32は、平滑化された動き履歴軌跡に基づいて、二次元パノラマ画像の現フレームが前フレームに対する変化が、カメラの意図した動きによるものなのか否かを判断し;二次元パノラマ画像の現フレームが前フレームに対する変化がカメラの意図しないノイズ運動である場合に、前記現フレームが前フレームに対する動き補正回転マトリックスを計算し;二次元パノラマ画像の現フレームが前フレームに対する変化がカメラの意図した動きである場合に、参照フレームとなる二次元パノラマ画像を更新し、更新された参照フレームと現フレームに基づき、2フレーム間の動き補正回転マトリックスを算出し;前記動き補正回転マトリックスに対して平滑処理を行い;平滑化された動き補正回転マトリックスを現フレームの二次元パノラマ画像に適用することにより、手ぶれ補正された二次元パノラマ画像が得られる。
具体的に、処理装置32は、前記動き履歴軌跡に基づいて、二次元パノラマ画像の現フレームが前フレームに対するノイズレベルを計算し;前記ノイズレベルが第2閾値以下である場合に、二次元パノラマ画像の現フレームが前フレームに対する変化が意図しないノイズ運動であると判断し;前記ノイズレベルが第2の閾値よりも大きい場合に、二次元パノラマ画像の現フレームが前フレームに対する変化が意図した動きであると判断する。
なお、意図しないノイズ運動は、所定のノイズ許容範囲内にあるもの、及び所定のノイズ許容範囲を超えたものを含み、所定のノイズ許容範囲は、第2閾値よりも小さい第3閾値以下である。
二次元パノラマ画像に対応する三次元球体パノラマ画像は、画像情報を失わずに任意の方向へ回転可能のために、2フレームの二次元パノラマ画像間に存在する回転ベクトルにより、前記2フレームの二次元パノラマ画像中の一方をもう一方に接近させることができる。本発明はフレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算し、算出される動き補正回転マトリックスで二次元パノラマ画像を再構築することより映像手ぶれ補正を行い、パノラマ映像の手ぶれ補正を実現する。
<実施例4>
本発明の実施例はコンピュータ読取り可能な記憶媒体を提供する。前記記憶媒体に記憶されるコンピュータプログラムを処理装置に実行させることより、次の各ステップが実行される。
複数フレームの二次元パノラマ画像を含むパノラマ映像を受信し;
前記パノラマ映像において隣接する任意の2フレームの二次元パノラマ画像に対してフレーム間の動きを推定し;
前記フレーム間の動きの推定の結果に基づいて、前記パノラマ映像の動き履歴軌跡を求め、且つ動き履歴軌跡を平滑化し;
平滑化された動き履歴軌跡に基づいて、フレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算し;
フレーム毎に動き補正回転マトリックスを用いて二次元パノラマ画像を再構成することより手ぶれ補正を行い、手ぶれ補正されたパノラマ映像を出力する。
<実施例5>
カメラ技術の進化に伴い、360度の視野を有するパノラマカメラは増々日常生活で使用されるようになった。通常のパノラマカメラは2つの魚眼レンズでパノラマ画像を撮像する。図12において、左側にパノラマカメラから取得した不安定なパノラマ画像の配列を示し、右側に本発明により得られた安定したパノラマ画像の配列を示す。二次元パノラマ画像に対応する三次元球体パノラマ画像は、画像情報を失わずに任意の方向へ回転可能のために、2フレームの二次元パノラマ画像間に存在する回転ベクトルにより、前記2フレームの二次元パノラマ画像中の一方をもう一方に接近させることができる。パノラマ映像の手ぶれ補正において、回転ベクトル即ち回転マトリックスの推定はキーポイントである。本発明は主に回転ベクトルの精密推定及び回転ベクトルの平滑化に重点を置く。
図13に示すように、本実施例にかかるパノラマ映像の処理方法は次の各ステップを備える。
ステップ401:複数二次元パノラマ画像を含むパノラマ映像を受信する。
具体的に、入力されたパノラマ映像は、例えば、パノラマカメラによる実況映像や予め記憶されるオフラインパノラマ映像等がある。
ステップ402:隣接する任意の2フレームの二次元パノラマ画像間の回転マトリックスを計算する。
本実施例で、二次元等距離円柱状投影図を二次元パノラマ画像とする。また、本発明の実施例で、特徴点に基づく方法により動きを推定する。具体的に、Harrisコーナー、FASTコーナー、SURFコーナー、SIFTコーナー等一般的なコーナー特徴を用いることができる。具体的には、図14に示すように、コーナー特徴に基づいて、前後2フレームの2次元パノラマ画像間で特徴点マッチングを行い、特徴点マッチングを白線によって接続して示し、正しい特徴点マッチング対を特定する。
図14にマッチング結果を示すように、多くのマッチングミス点対が存在する。このために、マッチングミス点対を取除く必要がある。従来の二次元画像の特徴点マッチング選択に、二次元アフィン変換モデルを用いる。しかし、二次元パノラマ画像は、その特殊性のために、二次元空間において二次元アフィン変換モデルに対応しない。このために、二次元アフィン変換モデルを二次元パノラマ画像特徴点対のマッチング選択に適用すると、多くの正しいマッチング点対が取除かれる一方、マッチングミス点対が逆に残される場合がある。このせいで、動きの推定の精度が大幅に低下する。そこで、本発明は二次元パノラマ画像の特殊性を考慮し、単位球体図に基づく特徴点マッチング対選択方法を開発した。即ち、球体空間上の回転動き一致性に基づく特徴点マッチング選択である。
具体的に、正しいマッチング点対の特定と、マッチングミス点対の取除きは、次の各ステップを含む。
(1)二次元空間における特徴点マッチング対を三次元単位球体空間座標系に変換し、三次元単位球体空間座標系において、2フレームのパノラマ画像間における全てのマッチング点対の動き方向を一致させる。
(2)上記すべてのマッチング点対からマッチング点対をM対ランダムに選択する。本実施例において、マッチング点対をランダムに4対選択して回転マトリックスの計算に用いる。
(3)ランダムに選択されたM対のマッチング点対に基づいて、隣接する2フレームのパノラマ画像に対してフレーム間の回転マトリックスを計算する。
(4)算出された回転マトリックスに基づいて、選択されたM対以外の残りのマッチング点対の誤差関数を計算し、これら残りのマッチング点対を回転マトリックスに入力させ、前記回転マトリックスに満たす誤差値を計算する。
(5)前記回転マトリックスを支持するマッチング点対を選択し、計算された誤差値が設定値未満の場合に、回転マトリックスを支持する当該マッチング点対とすることより、マトリックスを支持するマッチング点対がすべて得られる。
(6)現回転マトリックスが要求を満たすかを判断する。現回転マトリックスを支持するマッチング点対が十分に多ければ、選択されたM対のマッチング点対が正しいマッチング点対とし、逆の場合には、正しいマッチング点対を得るまで上記の(2)〜(5)を繰り返す。
図14の一番下の図に示すように、初期のマッチング結果に比べて、多くのマッチングミス点対が取り除かれた。その後、正しいマッチング点対に基づいて回転マトリックスを計算する。このように、選別されたマッチング点対により、より正確な回転マトリックスを算出することができる。カメラの主な動きとして、三次元空間においては回転運動と平行移動であるが、二次元パノラマ画像の場合には、二次元パノラマ画像のブレは、カメラの回転ブレ以外に平行移動ブレがある。二次元パノラマ画像の特殊性のために、平行移動はある程度、回転運動に近似することができる。このために、本発明は回転運動で用いてカメラブレの動きを表す。一般的な回転運動の計算方法として、回転マトリックス、オイラー角、単位四元数、および回転ベクトルを使用することができる。本発明においては、回転マトリックスで回転運動を表す。
ステップ403:前記フレーム間の回転マトリックスに基づいて、前記パノラマ映像の動き履歴軌跡を求め、前記動き履歴軌跡に基づいてパノラマ画像に対して動きの平滑化を行う。
パノラマ映像の動き履歴軌跡は前記フレーム間の回転マトリックスに基づいて求められる。動きの平滑化は手ぶれによるランダムなブレを除いて残される本来のカメラの動きを得るために行った。カメラの動きの中に、意図した動き以外の動きはノイズ運動とする。
本実施例において、回転マトリックスで動きを表し、オイラー角で動き軌跡を表した。一方、撮影において手ぶれにより撮像された画像を示す画面がぶれる。他方、安定した画像を示す画面に対して、カメラの手ぶれによるブレはノイズ運動そのものである。これらを鑑みて、本実施例はカメラのノイズ運動を取り除く方法によりオンライン動きの平滑化を行う。具体的に次のステップを含む。
現二次元パノラマ画像がぶれる原因となる動きが、ノイズ運動か、もしくはカメラの意図した動き(例えば、撮影者によるカメラの移動)か、を判断する。具体的に、動き履歴軌跡に基づいて、現二次元パノラマ画像がぶれる原因が、ノイズ運動か、もしくはカメラの意図した動きか、を判断する。主に前フレームのパノラマ画像に対する現フレームのパノラマ画像の相対的な動きパラメータの変化量に基づいて判断する。動きパラメータの変化量は、予め設定された閾値を超えた場合に、カメラの意図した動きであると判断し、逆に閾値より小さい場合に、無意識的なブレ、即ち無意識的なノイズ運動であると判断する。無意識的なノイズ運動が現フレームのパノラマ画像にブレを生じさせた場合に、ノイズ除去モデルに基づいて画像手ぶれ補正を行う。逆に、カメラの意図的な動きが現フレームのパノラマ画像にブレを生じさせた場合に、参照フレームのパノラマ画像で更新を行う。
angle_error=abs(angleinter_frame-mean(angle(n-size) noise,angle(n-size+1) noise,…,angle(n-1) noise)) (1)
anglen actual=anglen-mean(angle(n-size) noise,angle(n-size+1) noise,…,angle(n-1) noise) (3)
上記式(1)で、angle_errorは、カメラのノイズ運動であり、angleinter_frameは、2フレームのパノラマ画像間の動き角度であり、mean(angle(n-size) noise,angle(n-size+1) noise,…,angle(n-1) noise)は、所定のスライディング・ウィンドウ内のノイズ平均値であり、anglen smoothは、平滑化された動き角度である。また、anglesmoothは、手ぶれ補正された隣接する2フレームのパノラマ画像間の動きの差分である。nは、フレーム数である。
また、式(2)では、updatedParameterは、更新された参照フレームのパラメータであり、T2は、第2閾値であり、T1は、第3閾値である。angle_error≦T2の場合、カメラの動きは、意図しないノイズ運動であり、また、意図しないノイズ運動は、所定のノイズ許容範囲内にあるもの、及び所定のノイズ許容範囲を超えたものを含む。なお、所定のノイズ許容範囲は、第2閾値(T2)よりも小さい第3閾値(T1)以下であり、即ち、angle_error≦T1である。また、angle_error>T2の場合、カメラの動きは、ユーザの意図した動きによるものである。
実験から分かるように、隣接する2フレームのパノラマ画像間の動きは、動きオイラー角が[0,1]範囲内にある場合に、視覚的に感じられないブレである。このために、式(2)で、T1=1。angle_error≦T1の場合に、現フレームの二次元パノラマ画像の動きに対して行われる平滑化処理は前フレームの二次元パノラマ画像の動きに対して行われる平滑化処理と同様である。T1<angle_error≦T2の場合に、カメラの動きは、ノイズ許容範囲を超えており、現フレームの平滑化処理角度は、anglen actualに等しく、anglen actualは、式(3)で計算することができる。式(3)において、anglenは参照フレームの二次元パノラマ画像に対するカメラの実際の動き角度値である。angle_error>T2になると、カメラの動きはユーザの意図した動きにより生じたものである。この場合に現フレームの二次元パノラマ画像が基準二次元パノラマ画像に対して大きな差があるために、参照フレームの二次元パノラマ画像を更新する必要がある。ここで、T2は実験から得られる。本実施例においてT2を10に設定する。
ノイズを含んだ動きに対して平滑化処理を施す。即ち、オイラー角pitch/roll/yawに対してノイズ除去処理を施す。具体的に次の式を用いる。
平滑化された角度に基づいて動き補正回転マトリックスを計算する。
カレント平滑化フレームと一個前の平滑化フレームに基づいて回転角度誤差を計算し、算出された回転角度誤差を基づいて手ぶれ補正を評価する。周知のように、手ぶれ補正処理の間に、絶対的な安定はあり得ないため、ノイズの影響が避けられない。ノイズの影響を導入して平滑化された2フレーム間の回転角度ノイズの計算に用いて、後続の画像手ぶれ補正の評価に使用する。本発明はスライディング・ウィンドウでフレーム間ノイズ保存を行い、スライディング・ウィンドウ・サイズは、一般に、画像のフレームレートに応じて設定される。
上記式(2)により、カレントフレームの二次元パノラマ画像が突然に変化したと判断された場合に、累積誤差の増加を防ぐために、参照フレームの二次元パノラマ画像を更新する。一般的に、一番目のフレームのパノラマ画像を参照フレームのパノラマ画像として用いる。更新が必要の際に、カレントフレームのパノラマ画像で参照フレームのパノラマ画像を更新する。
ステップ404:パノラマ映像に対して手ぶれ補正を行う。
手ぶれ補正とは、動き平滑結果即ち動き補正回転マトリックスに基づいてパノラマ映像を再構成することである。従来の二次元映像の手ぶれ補正処理においては、パノラマ画像は、画像の切り取りにより画像を再構成して映像の手ぶれ補正を実現する。しかし、パノラマ画像の場合に、画像の切り取りにより360度の広角性が壊れる。一方、一般に画像は三次元空間においてパノラマ画像は球体画像である。球体画像の特性に基づいて、任意の方向に回転させて手ぶれ補正の効果が得られる。球体画像が任意の方向に回転することができるために、球体画像の手ぶれ補正は画像の切り取りが必要せず、回転動き補正により行う。図15において、左上に照準参照フレームの2次元パノラマ画像、左下に補正対象となるぶれる2次元パノラマ画像を示す。参照フレームの二次元パノラマ画像(左上の画像)及びぶれる二次元パノラマ画像(左下の画像)に基づいてフレーム間の動き補正回転マトリックスを計算し、オンライン動き平滑化計算により平滑化された回転マトリックスが求められる。そして、平滑化された動き補正回転マトリックスをカレントフレームの二次元パノラマ画像(右上の画像)に適用することにより、手ぶれ補正された二次元パノラマ画像(右下の画像)が得られる。補正された2次元パノラマ画像は参照フレームや補正前の2次元パノラマ画像に比べて、より安定的である。動き補正回転マトリックスRは次の式で表すことができる。
安定画像=Rsmooth*Rnoise*ぶれる画像+T (6)
ここで、式(5)において、Rは回転マトリックスであり、オイラー角計算より求められたtheta(x)、theta(y)、theta(z)はそれぞれグローバル座標系動き計算から得られるオイラー角roll、pitch、yawを表す。オイラー角roll、pitch、yawは参照フレームに対する現フレームの回転角度である。また、式(6)はぶれる画像から安定画像への変換に用いる計算式である。その中に、Rsmoothは平滑化された回転マトリックスで、Rnoiseは元の回転マトリックスである。Tは動きシフト量である。球体画像手ぶれ補正において、球体画像の動きは主に回転動きで表す。このために、Tを無視してもよい。
手ぶれ補正された映像を出力する。オンライン実況パノラマ映像が入力される場合に、オンライン実況パノラマ映像が出力される。オフラインパノラマ映像が入力される場合に、オフラインパノラマ映像が出力される。
本発明はパノラマ映像の手ぶれ補正方法を提供する。三次元パノラマ画像の球体特性のために、画像のブレを主に回転動きで表すことができる。これにより、本発明は回転動き補正に基づくパノラマ画像手ぶれ補正方法を提供する。本発明の手ぶれ補正方法により、従来の画像切り取りを必要とせず、任意方向上の球体画像回転により映像手ぶれ補正が実現される。実況動き平滑化処理において、複雑の三次元動きモデルが必要とせず、オイラー角に対して平滑化を行うと共に、実況の動き手ぶれ補正処理を行う。本発明は、意図した動きかどうかを判断すると共に、動きに対して角度平滑化計算を行い、現フレームが意図した動きであると判断する場合に、参照フレームを更新し、逆に、意図しない動きであるノイズ運動と判断する場合に、さらに、ノイズ運動が許容範囲内にあるかを判断し、ノイズ運動が許容範囲内の場合に、一個前のフレームの平滑化動きパラメータを用いてカレントフレームに対して動き平滑化処理を施し、逆に、ノイズ運動が許容範囲内にない場合に、現フレームのノイズを導入し、動き情報履歴に基づいて、動き平滑処理を行う。本発明より提供される方法は段階処理方式を用いて、従来の映像手ぶれ補正方法に比べて累積誤差が少ない。
以上、本発明の最適実施形態を説明した。本発明の主旨を逸脱しない限り、上述した実施例を変更、追加または削除することができるが、いずれの場合も本発明の範囲に属する。

Claims (8)

  1. パノラマ映像を処理する方法であって、
    複数フレームの二次元パノラマ画像を含む処理待ちのパノラマ映像を受信し;
    前記パノラマ映像において隣接する任意の2フレームの二次元パノラマ画像に対してフレーム間の動きを推定し;
    前記フレーム間の動きの推定の結果に基づいて、前記パノラマ映像の動き履歴軌跡を求め、且つ該動き履歴軌跡を平滑化し;
    平滑化された動き履歴軌跡に基づいて、フレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算し;及び
    フレーム毎に前記動き補正回転マトリックスを用いて二次元パノラマ画像を再構成することにより手ぶれ補正を行い、手ぶれ補正されたパノラマ映像を出力するステップを含み、
    平滑化された動き履歴軌跡に基づいて、フレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算するステップは、
    平滑化された動き履歴軌跡に基づいて、二次元パノラマ画像の現フレームの前フレームに対する変化が、カメラの意図した動きによるものなのか否かを判断し;
    前記二次元パノラマ画像の現フレームの前フレームに対する変化がカメラの意図しないノイズ運動である場合に、前記現フレームの前フレームに対する動き補正回転マトリックスを計算し;及び
    前記二次元パノラマ画像の現フレームの前フレームに対する変化がカメラの意図した動きである場合に、参照フレームとなる二次元パノラマ画像を現フレームの二次元パノラマ画像に更新し、更新された参照フレームと現フレームに基づき、2フレーム間の動き補正回転マトリックスを算出するステップを含む、ことを特徴とする方法。
  2. 前記パノラマ映像において隣接する任意の2フレームの二次元パノラマ画像に対してフレーム間の動きを推定するステップは、
    N+1番目フレームの二次元パノラマ画像における複数の特徴点をN番目のフレームの二次元パノラマ画像における複数の特徴点に一対一にマッチングし、Nは正の整数であり;及び
    すべてのマッチング点対から正しいマッチング点対を特定し、この正しいマッチング点対に基づいて、N+1番目フレームの二次元パノラマ画像からN番目フレームの二次元パノラマ画像までの回転マトリックスを計算するステップを含むことを特徴とする請求項1に記載の方法。
  3. すべてのマッチング点対から正しいマッチング点対を特定するステップは、
    すべてのマッチング点対からマッチング点対をM対選択し、Mは1より大きい整数であり;
    選択されたM対のマッチング点対に基づいて、N+1番目フレームの二次元パノラマ画像からN番目フレームの二次元パノラマ画像までの第1回転マトリックスを計算し;
    前記第1回転マトリックスを用いて、M対のマッチング点対以外の他のマッチング点対の誤差値を計算し、算出された誤差値に基づいて、前記第1回転マトリックスをサポートするマッチング点対の数を確定し;及び
    前記第1回転マトリックスをサポートするマッチング点対の数が第1閾値よりも大きい場合に、選択されたM対のマッチング点対が正しいマッチング点対であることを判断し、前記第1回転マトリックスのマッチング点対の数が第1閾値以下の場合に、選択されたM対のマッチング点対が正しくないマッチング点対であることを判断するステップを含むことを特徴とする請求項2に記載の方法。
  4. 平滑化された動き履歴軌跡に基づいて二次元パノラマ画像の現フレームの前フレームに対する変化がカメラの意図した動きによるものなのか否かを判断するステップは、
    前記動き履歴軌跡に基づいて、二次元パノラマ画像の現フレームの前フレームに対するノイズレベルを計算し;
    前記ノイズレベルが第2閾値以下である場合に、二次元パノラマ画像の現フレームの前フレームに対する変化が意図しないノイズ運動であると判断し;及び
    前記ノイズレベルが前記第2閾値より大きい場合に、二次元パノラマ画像の現フレームの前フレームに対する変化が意図した動きであると判断するステップを含むことを特徴とする請求項1に記載の方法。
  5. パノラマ映像を処理する装置であって、
    複数フレームの二次元パノラマ画像を含む処理待ちのパノラマ映像を受信する受信モジュールと;
    前記パノラマ映像において隣接する任意の2フレームの二次元パノラマ画像に対してフレーム間の動きを推定する動き推定モジュールと;
    前記フレーム間の動きの推定の結果に基づいて、前記パノラマ映像の動き履歴軌跡を求め、且つ該動き履歴軌跡を平滑化する動き履歴軌跡計算モジュールと;
    平滑化された動き履歴軌跡に基づいて、フレーム毎に二次元パノラマ画像の動き補正回転マトリックスを計算する動き補正回転マトリックス計算モジュールと;
    フレーム毎に前記動き補正回転マトリックスを用いて二次元パノラマ画像を再構成することにより手ぶれ補正を行い、手ぶれ補正されたパノラマ映像を出力する再構築モジュールと、を含み、
    前記動き補正回転マトリックス計算モジュールは、
    平滑化された動き履歴軌跡に基づいて、二次元パノラマ画像の現フレームの前フレームに対する変化が、カメラの意図した動きによるものなのか否かを判断し;
    前記二次元パノラマ画像の現フレームの前フレームに対する変化がカメラの意図しないノイズ運動である場合に、前記現フレームの前フレームに対する動き補正回転マトリックスを計算し;及び
    前記二次元パノラマ画像の現フレームの前フレームに対する変化がカメラの意図した動きである場合に、参照フレームとなる二次元パノラマ画像を現フレームの二次元パノラマ画像に更新し、更新された参照フレームと現フレームに基づき、2フレーム間の動き補正回転マトリックスを算出する、ことを特徴とする装置。
  6. プロセッサーとメモリとを含み、
    前記メモリにコンピュータプログラムコマンドが格納され、
    前記コンピュータプログラムコマンドは、前記プロセッサーにより実行されるときに、前記プロセッサーに、請求項1〜4の任意の1項に記載の方法を実行させることを特徴とする電子デバイス。
  7. コンピュータに、請求項1〜4の任意の1項に記載の方法を実行させるためのプログラム。
  8. 請求項7に記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
JP2018081943A 2017-06-09 2018-04-23 パノラマ映像を処理する方法、装置、デバイス、コンピュータ読取り可能な記憶媒体 Active JP6658791B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710432784.9 2017-06-09
CN201710432784.9A CN109040575B (zh) 2017-06-09 2017-06-09 全景视频的处理方法、装置、设备、计算机可读存储介质

Publications (2)

Publication Number Publication Date
JP2019004451A JP2019004451A (ja) 2019-01-10
JP6658791B2 true JP6658791B2 (ja) 2020-03-04

Family

ID=62148104

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018081943A Active JP6658791B2 (ja) 2017-06-09 2018-04-23 パノラマ映像を処理する方法、装置、デバイス、コンピュータ読取り可能な記憶媒体

Country Status (4)

Country Link
US (1) US10455152B2 (ja)
EP (1) EP3413265B1 (ja)
JP (1) JP6658791B2 (ja)
CN (1) CN109040575B (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108038820B (zh) * 2017-11-14 2021-02-02 影石创新科技股份有限公司 一种实现子弹时间拍摄效果的方法、装置及全景相机
CN109905590B (zh) * 2017-12-08 2021-04-27 腾讯科技(深圳)有限公司 一种视频图像处理方法及装置
TWI700000B (zh) * 2019-01-29 2020-07-21 威盛電子股份有限公司 全景影片影像穩定方法及裝置與影像穩定演算法評估方法
CN110519507B (zh) * 2019-07-23 2021-03-19 影石创新科技股份有限公司 一种相机镜头平滑处理方法、装置及便携式终端
CN112437248B (zh) * 2019-08-26 2024-05-17 株式会社理光 全景视频处理方法、装置和计算机可读存储介质
CN110619606A (zh) * 2019-09-19 2019-12-27 浙江大搜车软件技术有限公司 全景图像的确定方法、装置、计算机设备和存储介质
CN110572534A (zh) * 2019-09-19 2019-12-13 浙江大搜车软件技术有限公司 全景图像的数字视频稳像方法、装置、设备及存储介质
CN110856014B (zh) * 2019-11-05 2023-03-07 北京奇艺世纪科技有限公司 动态图像生成方法、装置、电子设备及存储介质
CN110933309A (zh) * 2019-12-03 2020-03-27 深圳市圆周率软件科技有限责任公司 一种多目全景相机全景防抖方法及系统
CN111242975B (zh) * 2020-01-07 2023-08-25 影石创新科技股份有限公司 自动调整视角的全景视频渲染方法、存储介质及计算机设备
US11443443B2 (en) * 2020-07-16 2022-09-13 Siemens Industry Software Inc Method and a data processing system for aligning a first panoramic image and a second panoramic image in a navigation procedure
CN112017215B (zh) * 2020-08-06 2023-08-25 影石创新科技股份有限公司 图像处理方法、装置、计算机可读存储介质及计算机设备
CN113286076B (zh) * 2021-04-09 2022-12-06 华为技术有限公司 拍摄方法及相关设备
GB2608583B (en) * 2021-05-25 2023-10-11 Opteran Tech Limited Unconstrained image stabilisation

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0227566D0 (en) * 2002-11-26 2002-12-31 British Telecomm Method and system for estimating global motion in video sequences
GB0227570D0 (en) * 2002-11-26 2002-12-31 British Telecomm Method and system for estimating global motion in video sequences
GB0227565D0 (en) * 2002-11-26 2002-12-31 British Telecomm Method and system for generating panoramic images from video sequences
CN1723477A (zh) * 2002-12-11 2006-01-18 皇家飞利浦电子股份有限公司 视频编码方法和相应的计算机程序
US8072496B2 (en) * 2008-09-29 2011-12-06 Intel Corporation Motion smoothing in video stabilization
US8823813B2 (en) * 2011-06-06 2014-09-02 Apple Inc. Correcting rolling shutter using image stabilization
CN102665032A (zh) * 2012-04-17 2012-09-12 西北工业大学 一种机载视频稳像方法
KR20150011938A (ko) 2013-07-24 2015-02-03 한국전자통신연구원 멀티-카메라 플랫폼 기반으로 캡쳐된 파노라마 영상의 안정화 방법 및 장치
CN104333675B (zh) * 2014-10-20 2017-09-05 长春理工大学 一种基于球面投影的全景电子稳像方法
US10341632B2 (en) * 2015-04-15 2019-07-02 Google Llc. Spatial random access enabled video system with a three-dimensional viewing volume
CN104902142B (zh) * 2015-05-29 2018-08-21 华中科技大学 一种移动终端视频的电子稳像方法
KR102331538B1 (ko) * 2015-09-16 2021-11-26 한화테크윈 주식회사 영상 안정화 방법, 장치 및 컴퓨터 기록매체
CN106027852B (zh) * 2016-06-24 2019-03-19 西北工业大学 一种用于微纳卫星的视频稳像方法

Also Published As

Publication number Publication date
US20180359415A1 (en) 2018-12-13
JP2019004451A (ja) 2019-01-10
US10455152B2 (en) 2019-10-22
CN109040575A (zh) 2018-12-18
EP3413265A1 (en) 2018-12-12
CN109040575B (zh) 2020-12-08
EP3413265B1 (en) 2024-05-08

Similar Documents

Publication Publication Date Title
JP6658791B2 (ja) パノラマ映像を処理する方法、装置、デバイス、コンピュータ読取り可能な記憶媒体
US8274570B2 (en) Image processing apparatus, image processing method, hand shake blur area estimation device, hand shake blur area estimation method, and program
Hu et al. Joint depth estimation and camera shake removal from single blurry image
JP6593484B2 (ja) 画像処理方法及び装置
JP5778187B2 (ja) 汎用プラットフォーム・ビデオ画像安定化
CN105409196B (zh) 用于视频稳定的自适应路径平滑
JP4926920B2 (ja) 防振画像処理装置及び防振画像処理方法
US8422827B2 (en) Image correction apparatus and image correction method
JP4345940B2 (ja) 手ぶれ画像補正方法、記録媒体及び撮像装置
JP5499050B2 (ja) 画像処理装置、撮像装置、及び画像処理方法
CN109618103B (zh) 无人机图传视频的防抖方法及无人机
CN111050150B (zh) 焦距调节方法、装置、投影设备及存储介质
CN111127347A (zh) 降噪方法、终端及存储介质
CN113556464B (zh) 拍摄方法、装置及电子设备
CN106550187A (zh) 用于图像稳定的设备和方法
JP2017175364A (ja) 画像処理装置、撮像装置および画像処理装置の制御方法
JP6332212B2 (ja) 姿勢推定装置、姿勢推定方法及びプログラム
JP6282133B2 (ja) 撮像装置、その制御方法、および制御プログラム
CN117014726A (zh) 基于多角度处理的视频稳像方法及系统
JP4017578B2 (ja) 手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体
JP6532328B2 (ja) 画像処理装置、その制御方法、および制御プログラム
CN114095659B (zh) 一种视频防抖方法、装置、设备及存储介质
JP5279453B2 (ja) 画像振れ補正装置、撮像装置及び画像振れ補正方法
CN113891005A (zh) 拍摄方法、装置及电子设备
JP4286301B2 (ja) 手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180423

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190409

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190423

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190614

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190730

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190826

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200107

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200120

R151 Written notification of patent or utility model registration

Ref document number: 6658791

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151