JP4665737B2 - 画像処理装置及びプログラム - Google Patents

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

Info

Publication number
JP4665737B2
JP4665737B2 JP2005345798A JP2005345798A JP4665737B2 JP 4665737 B2 JP4665737 B2 JP 4665737B2 JP 2005345798 A JP2005345798 A JP 2005345798A JP 2005345798 A JP2005345798 A JP 2005345798A JP 4665737 B2 JP4665737 B2 JP 4665737B2
Authority
JP
Japan
Prior art keywords
image
motion vector
image frame
feature point
unit
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.)
Expired - Fee Related
Application number
JP2005345798A
Other languages
English (en)
Other versions
JP2007151008A (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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer 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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2005345798A priority Critical patent/JP4665737B2/ja
Publication of JP2007151008A publication Critical patent/JP2007151008A/ja
Application granted granted Critical
Publication of JP4665737B2 publication Critical patent/JP4665737B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Adjustment Of Camera Lenses (AREA)
  • Television Signal Processing For Recording (AREA)
  • Studio Devices (AREA)

Description

本発明は、動画像の手ぶれを補正する画像処理装置及びプログラムに関する。
従来、デジタルカメラ等の撮像装置として、動画像の撮像により生じた手ぶれを画像処理にて補正する、所謂、手ぶれ補正を行うものが知られている。
手ぶれ補正を行う上で、画像フレームの全体動きベクトルを算出するためには、例えば、細分化した小さなブロック毎に算出した複数の動きベクトルを用いるようになっている。これにより、動く被写体成分などの手ぶれ成分以外の動き成分を排除した、画像フレームに最適な補正成分だけを算出するようになっている。
ところで、細分化した全てのブロックの動きベクトルを算出すると、演算処理負荷が重く、また、算出した動きベクトルに信頼性が低いブロックについては、誤検出や冗長な処理の原因となるので、信頼性の高い動きベクトルを算出できるブロックを選出し、そのブロックにおける動きベクトルを算出することによって、処理負荷を軽減するようになっている。
例えば、図17に示すように、滑り台201や空(背景)202のように、のっぺりとした部分(ブロック)は、動きベクトルがなかったり、実際の手ぶれ成分とは異なる動きベクトルを算出してしまう虞がある。
そこで、被写体の中で似たような特徴の絵柄が多数ある場合に、動きベクトルが誤って算出される虞があることを考慮して、動きベクトルの分類(選別)を行う装置が開発されている(例えば、特許文献1参照)。
また、画像フレームの特徴量の多さに基づいて、動きをトラッキングし易いブロックを選択する方法も提案されている。
ここで、特徴量は、例えば、線が交差する部分、模様を含む部分や物体の頂点などの画像として特徴を有する特徴点の所定領域における量を言うものである。この特徴量の算出方法は、画像データに対してフィルタ演算を行うのが一般的であるが、ここでは、Harrisオペレータを用いた方法を例示する。
Harrisオペレータは、以下に示す一般式(1)により表される。
Figure 0004665737
〔なお、detは、行列式を示し、trは、トレースを示す。また、kは、所定の係数であり、好ましくは、0.04〜0.08程度である。fx、fyは、水平、垂直方向の勾配値(微分値)であり、G(・)は、領域内のf値の和を示す。〕
Harrisオペレータによる評価値は、勾配方向に広がり、かつ、勾配が大きい点に対してより大きな値となる。例えば、線による境界部分では大きな値とならず、画素分布に大きな凹凸がある部分で大きな値をとるようになっている。
特開平7−177425号公報
しかしながら、Harrisオペレータにより算出された特徴量に基づいて、特徴量の多いブロックを選択して動きベクトルを算出するようにすると、例えば、図17にあっては、滑り台201を滑り降りる子供の部分203は、動きベクトルが算出されるブロックとして集中して選択されることとなる。つまり、動きベクトルの算出にあたって、手ぶれ成分ではなく、動く被写体成分に係るブロックが集中して選択されてしまうといった問題がある。
一方、Harrisオペレータによる評価値の低いブロックは、特徴量が少なく動きベクトルの計算自体を誤り易いため、評価値を全く無視してブロックを選択することはできないといった問題もある。
そこで、本発明の課題は、特定の被写体への偏りを回避して全体動きベクトルを算出することができ、これにより、手ぶれ補正を精度良く行うことができる画像処理装置及びプログラムを提供することである。
請求項1に記載の発明の画像処理装置(例えば、図1の撮像装置100等)は、
動画像情報を構成する複数の画像フレーム(例えば、図2の画像フレームF等)のうち、少なくとも何れか一の画像フレームを構成する複数の画像ブロックから、特徴点として所定数の画像ブロック(例えば、図5の選択特徴点C等)を抽出する特徴点抽出手段(例えば、図1の対象ブロック選択部42等)と、
前記特徴点抽出手段により抽出された一の特徴点を中心とする所定範囲を指定する範囲指定手段(例えば、図1の対象ブロック選択部42等)と、
前記特徴点抽出手段により抽出された前記特徴点を前記一の画像フレームの前後のうちの何れか一方の画像フレームにて追跡して、前記一の画像フレームの全体動きベクトルを算出する全体動きベクトル算出手段(例えば、図1のぶれ量算出部44等)と、
前記全体動きベクトル算出手段により算出された前記全体動きベクトルに基づいて、前記動画像の手ぶれ補正を行う手ぶれ補正手段(例えば、図1の手ぶれ補正処理部4等)と、
を備える画像処理装置であって、
前記特徴点抽出手段は、前記範囲指定手段で指定された所定範囲からは既に抽出されている画像ブロックである中心の特徴点とは異なる他の特徴点の抽出を行わない(例えば、図7の第二の選択特徴点C2等)
ことを特徴としている。
請求項に記載の発明は、請求項1に記載の画像処理装置において、
前記特徴点抽出手段により抽出された前記一の画像フレームの前記特徴点の数が所定数に達しているか否かを判定する特徴点数判定手段(例えば、図1の対象ブロック選択部42等)を備え、
前記全体動きベクトル算出手段は、前記特徴点数判定手段により前記特徴点の数が所定数に達していないと判定された前記画像フレームからは前記全体動きベクトルの算出を行わないことを特徴としている。
請求項に記載の発明は、請求項1又は2に記載の画像処理装置において、
前記全体動きベクトル算出手段は、
前記特徴点抽出手段により抽出された複数の前記特徴点の各々の動きベクトルを算出する動きベクトル算出手段(例えば、図1の動きベクトル検出部43等)と、
前記全体動きベクトルの算出に際して、前記動きベクトル算出手段により算出された前記複数の動きベクトルを小数点以下の値による票割れを考慮して集計する動きベクトル集計手段(例えば、図1のぶれ量算出部44等)と、を備えることを特徴としている。
請求項に記載の発明のプログラムは、
画像処理を行うコンピュータに、
動画像情報を構成する複数の画像フレーム(例えば、図2の画像フレームF等)のうち、少なくとも何れか一の画像フレームを構成する複数の画像ブロックから、特徴点として所定数の画像ブロック(例えば、図5の選択特徴点C等)を抽出する機能と、
抽出された画像ブロックである一の特徴点を中心とする所定範囲を指定する機能と、
抽出された前記特徴点を前記一の画像フレームの前後のうちの何れか一方の画像フレームにて追跡して、前記一の画像フレームの全体動きベクトルを算出する機能と、
算出された前記全体動きベクトルに基づいて、前記動画像の手ぶれ補正を行う機能と、
を実現させるためのプログラムであって、
指定された所定範囲からは既に抽出されている画像ブロックである中心の特徴点とは異なる他の特徴点の抽出を行わない
ことを特徴としている。
請求項1に記載の発明によれば、動画像の手ぶれ補正を行う上で、全体動きベクトルの算出に係る画像ブロックである特徴点の抽出において、動画像情報を構成する一の画像フレームから抽出された画像ブロックである一の特徴点を中心とする所定範囲を指定し、指定された所定範囲からは画像ブロックである他の特徴点を抽出しないようにしたので、特徴点を当該画像フレーム内の特定の被写体に偏ることなく所定数抽出することができる。即ち、一の画像フレームにて、特徴量の多い所定の被写体等に集中して特徴点が選択されるといったことがなくなって、当該画像フレーム全体から偏りなく特徴点を選択して抽出することができることとなる。これにより、特定の被写体への偏りを回避して全体動きベクトルを算出することができ、結果として、手ぶれ補正を精度良く行うことができる。
請求項に記載の発明によれば、請求項1に記載の発明と同様の効果が得られるのは無論のこと、特に、所定数の特徴点が抽出された画像フレームのみ全体動きベクトルを算出することができることから、誤検出される虞のある画像フレームの全体動きベクトルの算出を行わないこととなって、動画像の手ぶれ補正をより適正に行うことができる。
請求項に記載の発明によれば、請求項1又は2の発明と同様の効果が得られるのは無論のこと、特に、複数の特徴点の動きベクトルを小数点以下の値による票割れを考慮して集計することができることとなって、全体動きベクトルの誤検出を好適に防止することができる。
請求項に記載の発明によれば、動画像の手ぶれ補正を行う上で、全体動きベクトルの算出に係る画像ブロックである特徴点の抽出において、動画像情報を構成する一の画像フレームから抽出された画像ブロックである一の特徴点を中心とする所定範囲を指定し、指定された所定範囲からは画像ブロックである他の特徴点を抽出しないようにしたので、特徴点を当該画像フレーム内の特定の被写体に偏ることなく所定数抽出することができる。即ち、一の画像フレームにて、特徴量の多い所定の被写体等に集中して特徴点が選択されるといったことがなくなって、当該画像フレーム全体から偏りなく特徴点を選択して抽出することができることとなる。これにより、特定の被写体への偏りを回避して全体動きベクトルを算出することができ、結果として、手ぶれ補正を精度良く行うことができる。
以下に、本発明について、図面を用いて具体的な態様を説明する。ただし、発明の範囲は、図示例に限定されない。
ここで、図1は、本発明を適用した画像処理装置の一実施形態として例示する撮像装置100の要部構成を示すブロック図である。
撮像装置100は、例えば、デジタルカメラ等が適用され、撮像された動画像を記録するための符号化標準であるMPEG(Moving Picture Experts Group)4等の情報圧縮方式により符号化して記録するとともに、記録された動画像データを読み出して再生するものである(図10及び図15参照)。具体的には、撮像装置100は、例えば、図1に示すように、撮像部1と、映像信号処理部2と、画像メモリ3と、手ぶれ補正処理部4と、エンコード部5と、デコード部6と、記録媒体7と、表示部8と、制御回路9等を備えている。
撮像部1は、被写体の動画像や静止画像の撮像を行うものであり、例えば、撮像レンズ群を通過した被写体像を二次元の画像信号に変換するCCD(Charge Coupled Device)やCMOS(Complementary Metal-oxide Semiconductor)等を備えている。
映像信号処理部2は、撮像部1から出力される動画像等に係る画像信号に対して所定の画像処理を施すものである。具体的には、映像信号処理部2は、例えば、撮像部1から出力される動画像を構成する複数の画像フレームF、…(図2参照)の各々に対して所定の画像処理を施すようになっている。
なお、画像処理が施された画像フレームFは、画像メモリ3に送られて一時的に記憶されるようになっている。
手ぶれ補正処理部(手ぶれ補正手段)4は、例えば、画像メモリ3に記憶される動画像データに対して手ぶれ補正処理を施すものであり、具体的には、評価値計算部41と、対象ブロック選択部42と、動きベクトル検出部43と、ぶれ量算出部44と、ぶれ補正量算出部45と、データ切出部46等を備えている。
評価値計算部41は、動画像データの記録時や再生時にて、画像メモリ3から所定の画像フレームFを取得して、当該画像フレームFを複数の画像ブロックに分けて、各ブロックの特徴量を評価値として計算する評価計算処理を行うものである。
なお、特徴量とは、例えば、線が交差する部分、模様を含む部分や物体の頂点などの画像として特徴を有する特徴点の所定領域における量を言うものとする。
以下に、評価値計算処理について、図2及び図3を参照して詳細に説明する。
ここで、図2及び図3は、評価値計算処理に係る画像フレームFを模式的に示した図であり、このうち、図3は、画像フレームFにおけるウインドウWの移動を模式的に表したものである。なお、図2並びに図4〜図7(後述)にあっては、各ウインドウW内の評価値を表す上で、模式的にウインドウWの中心点に相当する位置を評価点Pとして表すものとする。
評価値計算部41は、例えば、Harrisオペレータにより評価値を計算するものであり、具体的には、画像フレームF上に所定の大きさ(例えば、16×16画素)のウインドウWを設定して、当該ウインドウW内のHarrisオペレータの評価値を計算するようになっている(図2参照)。
即ち、評価値計算部41は、ウインドウWを左上隅部から1/2ウインドウ幅ずつ右に移動させながら、当該ウインドウW内のHarrisオペレータの評価値を順次計算していく(図3参照)。そして、ウインドウWが右端まで到達すると、評価値計算部41は、ウインドウWを左端に戻し、1/2ウインドウ下方に移動させて、上記と同様に右端までウインドウWを移動させながら評価値を計算する処理を行う。そして、評価値計算部41は、これらの処理をウインドウWが画像フレームFの右下隅部まで移動するまで行う。
対象ブロック選択部42は、評価値計算部41による画像フレームFの評価の結果に基づいて、当該画像フレームFから動きベクトル検出部43による動きベクトルの検出に適したブロックを選択するブロック選択処理を行うものである。
以下に、ブロック選択処理について、図4〜図7を参照して詳細に説明する。
ここで、図4〜図7は、ブロック選択処理に係る画像フレームFを模式的に示した図である。このうち、図5は、画像フレームFにて、評価値の最も高い評価点Pを第一の選択特徴点C1として選択した状態を表し、図6は、選択特徴点Cを中心とする非選択範囲Rを指定した状態を表し、図7は、非選択範囲R内の評価点Pを除いて第二の選択特徴点C2を選択した状態を表すものである。
対象ブロック選択部42は、例えば、評価値計算部41から出力されて入力される画像フレームFの各々について、画像フレームFの評価点Pを順次比較していき、その中でHarrisオペレータによる評価値が最大である評価点P(例えば、上から4行目、左から7列目の評価点P等)を第一の選択特徴点(ブロック)C1として選択する(図4及び図5参照)。
また、対象ブロック選択部42は、選択した第一の選択特徴点C1を中心とする所定範囲(例えば、一辺が評価点P間の数倍程度からなる領域)を評価点Pの選択を行わない非選択範囲Rとして指定する(図6参照)。そして、対象ブロック選択部42は、非選択範囲R内の評価点Pを選択特徴点Cの選択対象から除く処理を行った後、残った評価点Pの中で評価値が最大である評価点P(例えば、上から6行目、左から14列目の評価点P等)を第二の選択特徴点C2として選択する(図7参照)。その後、第一の選択特徴点C1に対する処理と略同様の処理を順次繰り返して行う。
このように、対象ブロック選択部42は、特徴点抽出手段として、一の画像フレームFにて、抽出される一の選択特徴点Cを含む非選択範囲R内からは他の特徴点の抽出を行わないことによって、当該一の画像フレームF内から特定の被写体、特に、特徴量の多い動く被写体に偏ることなく選択特徴点Cを所定数抽出するようになっている。
さらに、対象ブロック選択部42は、特徴点数判定手段として、上記のようにして抽出される選択特徴点Cの数が所定数に達しているか否かを判定するようになっている。
ここで、選択特徴点Cの数が所定数に達したと判定されると、動きベクトル検出部43に移行して、当該動きベクトル検出部43にて、動きベクトル検出処理が行われる。
動きベクトル検出部43は、動きベクトル算出手段として、例えば、動画像を構成する複数の画像フレームF、…のうち、選択特徴点Cの数がともに所定数に達している二つの隣接画像フレームF、Fを用い(図8(a)参照)、過去の画像フレームFを参照して現在の画像フレームFの複数の選択特徴点Cの各々の動きベクトルを算出するようになっている。
具体的には、動きベクトル検出部43は、例えば、現画像フレームにて、参照画像フレームの選択特徴点(ブロック)Cとの誤差が最小となるブロック(特徴点)を追跡して、当該ブロックの水平方向及び垂直方向の移動量を表すベクトルを動きベクトルとして検出するようになっている。
ぶれ量算出部44は、動きベクトル検出部43により検出された画像フレームFを構成する複数の特徴点の動きベクトルに基づいて、動画像を構成する複数の画像フレームF、…の各々の全体動きベクトル(ぶれ量)を算出する全体動きベクトル算出処理を行うものである。
以下に、全体動きベクトル算出処理について、図8及び図9を参照して詳細に説明する。
ここで、図8(a)及び図8(b)は、全体動きベクトル算出処理に係る複数の画像フレームF、…を模式的に示した図である。また、図9は、全体動きベクトル算出処理に係る動きベクトルの投票箱Bを模式的に示した図である。
なお、図8(a)及び図8(b)にあっては、全体動きベクトルを白抜きの矢印で表し、図8(b)にあっては、2分割された全体動きベクトルを破線で表す。また、複数の画像フレームF、…のうち、選択特徴点Cの数が所定数に達しているものには「○」を付し、所定数に達していないものには「×」を付すものとする。
ぶれ量算出部44は、動きベクトル検出部43により動きベクトルが検出された画像フレームFについては、投票箱Bを用いて選択特徴点Cの動きベクトルを重複投票していき、投票数の最も多い動きベクトルを全体動きベクトルとして算出するようになっている(図9参照)。
具体的には、例えば、図9に示すように、一の選択特徴点Cの動きベクトルが(2,−1)であった場合には、この(2,−1)に加えて、その周囲の(1,−2)、(2,−2)、(3,−2)、(1,−1)、(3,−1)、(1,0)、(2,0)、(3,0)にも重複して投票する。そして、全ての選択特徴点Cについて、この投票を終えた時点で最も多い票を得た特徴量の値を当該画像フレームFの全体動きベクトルとするようになっている。これにより、動きベクトルの検出精度限界による誤動作を防止することができるようになっている。
つまり、動きベクトルの検出は、ピクセル単位で行うため、例えば、10個の動きベクトルが(0,1.5)に近い値を持っていた場合、これらは(0,1)と(0,2)に概ね5票ずつ投票されることとなる。ここで、仮に、同じ画像フレームFにて、例えば、6個の動きベクトルが(2,1)に近い値を持っていた場合、票の分散は生じず(2,1)に6票投票されることとなるため、実際には、(0,1.5)が10個あるため、この値に近い(0,1)若しくは(0,2)が全体動きベクトルとして選ばれるべきであるにも拘わらず、当該画像フレームFの代表ベクトル(全体動きベクトル)は、(2,1)となってしまう虞がある。
そこで、本実施形態にあっては、ぶれ量算出部44は、動きベクトル集計手段として、動きベクトルの近傍の投票箱Bに対しても重複して投票を行うことで、複数の特徴点の動きベクトルを小数点以下の値による票割れを考慮して集計することができることとなって、全体動きベクトルの誤検出を防止することができる。
また、選択特徴点Cの数が所定数に達していない未達画像フレームF0が存在する場合については、動きベクトル検出部43は、未達画像フレームF0より前の選択特徴点Cの数が所定数に達している所定の隣設画像フレームF1を参照画像フレーム、未達画像フレームF0より後の選択特徴点Cの数が所定数に達している隣設画像フレームF1を現画像フレームとして現画像フレーム上の複数の選択特徴点Cの各々の動きベクトルを算出するようになっている(図8(b)参照)。
そして、ぶれ量算出部44は、隣設画像フレームF1の全体動きベクトルの算出を上記と同様に投票箱Bによる重複投票により行うようになっている。
このようにして、算出される隣設画像フレームF1の全体動きベクトルは、当該隣設画像フレームF1と未達画像フレームF0の両方を加味した分であることから、2分割することで各画像フレームFの全体動きベクトルとするようになっている。
なお、m〔m≧2〕個以上の連続する未達画像フレームF0が隣設画像フレームF1により挟まれる場合には、算出される全体動きベクトルを(m+1)の値で除算することにより、未達画像フレームF0の全体動きベクトルを各々算出することができる。
ぶれ補正量算出部45は、例えば、ぶれ量算出部44により算出された複数の画像フレームF、…の各々のぶれ量に基づいて、各画像フレームFのぶれ補正量を算出するものである。
データ切出部46は、動画像の記録時及び再生時において、ぶれ補正量算出部45にて算出された所定の画像フレームFのぶれ補正量に基づいて、当該画像フレームFの画像領域を表示部8の表示領域にあわせて切り出す処理を行うものである。具体的には、データ切出部46は、例えば、現画像フレームのぶれ補正量に基づいて、当該現画像フレームに先行する参照画像フレームに対してぶれ補正量の分だけ現画像フレームが移動するように、その画像領域を切り出すようになっている。
なお、切り出された画像フレームFは、動画像データの記録(撮像)時には、表示部8及びエンコード部5に対して出力され、また、動画像データの再生時には、表示部8に対して出力されるようになっている。
エンコード部5は、例えば、MPEG4等の動き補償を行う情報圧縮方式により動画像データを符号化して符合化動画像データを作成するものである。具体的には、エンコード部5は、例えば、データ切出部46から出力され入力された動画像データに対して、動画像を構成する画像フレームF間の時間的な相関関係を利用して符号量を削減するMC(Motion Compensation;動き補償)や、各画像フレームFの空間的な相関関係を利用して符号量を削減するDCT(Discrete Cosine Transform;離散コサイン変換)等の情報圧縮符号化処理を実行するようになっている。
また、エンコード部5は、例えば、DCTにより算出されるDCT変換係数を視覚特性を考慮した所定のQ値で除算する量子化を行うようにしても良い。
デコード部6は、動画像の再生に際して、記録媒体7に記録される符号化動画像データを復号して、複数の画像フレームF、…が所定の順序で並んだビットストリーム(動画像データ)を作成するものである。具体的には、復号部4は、例えば、符号化動画像データを復号して量子化係数や動きベクトルを算出し、さらに、量子化係数をDCT係数に変換する逆量子化を行い、また、DCT係数に基づいて8×8画素のブロックを単位として画素値(画素値間の差分)を算出する逆DCTを行い、さらに、画素値間の差分と動きベクトルにより補償されたブロックを加算することにより、ビットストリームを復号するようになっている。
表示部8は、例えば、液晶表示装置等により構成され、データ切出部46から出力され入力された手ぶれ補正後の動画像データに基づいて、所定の動画像を表示するようになっている。
なお、表示部8は、例えば、手ぶれ補正処理前の動画像データも入力可能に構成され、当該動画像データに基づいて、手ぶれ補正処理前の動画像を表示することができるようにしても良い。
記録媒体7は、例えば、エンコード部5にて符号化された符合化動画像データを記録するものである。
ここで、符号化動画像データには、例えば、記録時に手ぶれ補正処理が施されずに符号化された動画像データも含まれ、この動画像データは、再生時に手ぶれ補正処理が行われるようになっている(再生時手ぶれ補正処理)。
なお、記録媒体7は、例えば、装置本体と一体となって不揮発性の内蔵メモリであっても良いし、着脱自在な不揮発性のメモリカード等であっても良い。
制御回路9は、例えば、映像信号処理部2、画像メモリ3、データ切出部46、エンコード部5、デコード部6、記録媒体7、表示部8等に接続され、これら各部間のデータの受渡を制御するようになっている。
次に、記録時手ぶれ補正処理について、図10〜図14を参照して説明する。
ここで、図10は、記録時手振れ補正処理における画像データの流れを模式的に示した図であり、図11は、記録時手ぶれ補正処理に係る動作の一例を示すフローチャートである。
撮像部1にて被写体の動画像の撮像が行われると、映像信号処理部2により画像処理された動画像データが画像メモリ3に一時的に記憶される(図10参照)。
そして、図11に示すように、評価値計算部41は、画像メモリ3から動画像データを構成する所定の画像フレームFを取得して(ステップS1)、当該画像フレームFについて評価値計算処理を行う(ステップS2)。
以下に、評価値計算処理について、図12を参照して詳細に説明する。ここで、図12は、評価値計算処理に係る動作の一例を示すフローチャートである。
図12に示すように、評価値計算部41は、先ず、画像フレームFを複数の画像ブロックに分けて、当該画像フレームF上に所定の大きさのウインドウWを設定する(ステップS21;図2参照)。続けて、評価値計算部41は、設定されたウインドウW内のHarrisオペレータの評価値を計算する(ステップS22)。
次に、評価値計算部41は、画像フレームFの終端、即ち、右下隅部に対応するウインドウW内の評価を行ったか否かを判定する(ステップS23)。ここで、画像フレームFの終端まで評価を行っていないと判定されると(ステップS23;NO)、評価値計算部41は、画像フレームF上のウインドウWを所定方向に移動させて(ステップS24;図3参照)、ステップS22に移行した後、新たなウインドウW内のHarrisオペレータの評価値を計算する処理を行う。
一方、ステップS23にて、画像フレームFの終端まで評価を行ったと判定されると(ステップS23;YES)、評価値計算処理を終了する。
評価値計算処理が終了すると、評価値計算部41による画像フレームFの評価の結果に基づいて、対象ブロック選択部42は、当該画像フレームFについてブロック選択処理を行う(ステップS3;図11参照)。
以下に、ブロック選択処理について、図13を参照して詳細に説明する。ここで、図13は、ブロック選択処理に係る動作の一例を示すフローチャートである。
図13に示すように、対象ブロック選択部42は、評価値計算部41から出力されて入力される各画像フレームFについて、評価すべきブロック(評価点P)が残っている場合には(ステップS31;YES)、ブロックを順次比較していき、その中でHarrisオペレータによる評価値が最大であるブロック(例えば図5にあっては、上から4行目、左から7列目の評価点P等)を選択特徴点Cとして選択する(ステップS32;図4及び図5参照)。続けて、対象ブロック選択部42は、選択された選択特徴点Cの評価値が予め指定された所定の閾値以上であるか否かを判定する(ステップS33)。
ここで、選択特徴点Cの評価値が所定の閾値以上であると判定されると(ステップS33;YES)、対象ブロック選択部42は、選択した選択特徴点Cを中心とする非選択範囲Rを指定して、当該非選択範囲R内の評価点Pを選択特徴点Cの選択対象から除外する処理を行う(ステップS34;図6及び図7参照)。
なお、ステップS33にて、選択特徴点Cの評価値が所定の閾値以上ではないと判定されると(ステップS33;NO)、対象ブロック選択部42は、ブロック選択処理を終了する。
次に、対象ブロック選択部42は、選択された選択特徴点(ブロック)Cの数が所定数に達したか否かを判定する(ステップS35)。
ここで、選択特徴点Cの数が所定数に達していないと判定されると(ステップS35;NO)、対象ブロック選択部42は、ステップS31に移行して、それ以降の処理の実行を制御する。
一方、選択特徴点Cの数が所定数に達していると判定されると(ステップS35;YES)、対象ブロック選択部42は、選択特徴点(ブロック)Cの数をマーク(記憶)して(ステップS36)、ブロック選択処理を終了する。
ブロック選択処理が終了すると、対象ブロック選択部42は、ブロック選択処理が行われた画像フレームFについて、選択された選択特徴点(ブロック)Cの数が所定数に達しているか否かを判定する(ステップS4;図11参照)。
ここで、対象ブロック選択部42により選択特徴点Cの数が所定数に達していないと判定されると(ステップS4;NO)、ステップS1に移行して、他の画像フレームFについて、それ以降の処理が行われる。
一方、対象ブロック選択部42により選択特徴点Cの数が所定数に達していると判定されると(ステップS4;YES)、当該画像フレームFについて全体動きベクトル算出処理が行われる(ステップS5)。
以下に、全体動きベクトル算出処理について、図14を参照して詳細に説明する。ここで、図14は、全体動きベクトル算出処理に係る動作の一例を示すフローチャートである。
なお、以下に説明する全体動きベクトル算出処理にあっては、便宜的に、現画像フレームに対して、一つ前の画像フレームF若しくは二つ前の画像フレームFの何れかを参照画像フレームとして設定するものとする(図8参照)。このとき、二つ前の画像フレームFは、選択特徴点Cの数が所定数に達しているものとする。
図14に示すように、動きベクトル検出部43は、先ず、全体動きベクトルの算出に係る現画像フレーム(例えば、図8(a)における「n−1」番目や「n+2」番目の画像フレームF、或いは、図8(b)における「n+1」番目の画像フレームF等)の一つ前の画像フレームFの選択特徴点Cの数が所定数に達しているか否かを判定する(ステップS51)。
ここで、選択特徴点Cの数が所定数に達していると判定されると(ステップS51;YES)、動きベクトル検出部43は、一つ前の画像フレームF(前画像フレーム;例えば、図8(a)における「n−2」番目や「n+1」番目の画像フレームF)を参照画像フレームとして設定する(ステップS52;図8(a)参照)。
一方、選択特徴点Cの数が所定数に達していないと判定されると(ステップS51;NO)、動きベクトル検出部43は、二つ前の画像フレームF(前前画像フレーム;例えば、図8(b)における「n−1」番目の画像フレームF)を参照画像フレームとして設定する(ステップS53)。
続けて、動きベクトル検出部43は、現画像フレームと参照画像フレームを用いて、現画像フレームの複数の選択特徴点(ブロック)C、…の各々の動きベクトルを算出する(ステップS54)。
次に、ぶれ量算出部44は、現画像フレームについて複数の選択特徴点Cの動きベクトルを所定の投票箱Bを用いて重複投票する(ステップS55)。
その後、ぶれ量算出部44は、投票数の最も多い動きベクトルを全体動きベクトルとして算出する(ステップS56)。
そして、ぶれ量算出部44は、前の画像フレームFの選択特徴点Cの数が所定数に達しているか否かを判定する(ステップS57)。
ここで、選択特徴点Cの数が所定数に達していると判定されると(ステップS57;YES)、ぶれ量算出部44は、ステップS56にて算出された全体動きベクトルを当該現画像フレーム(例えば、図8(a)における「n−1」番目や「n+2」番目の画像フレームF)の全体動きベクトルとして設定して、処理を終了する。
一方、選択特徴点Cの数が所定数に達していないと判定されると(ステップS57;NO)、ぶれ量算出部44は、算出された全体動きベクトルを2分割して、その値を現画像フレーム及び前画像フレーム(例えば、図8(b)における「n」或いは「n+1」番目の画像フレームF)の各々の全体動きベクトルとして設定する(ステップS58)。
全体動きベクトル算出処理の終了後、処理対象となる他の画像フレームFが画像メモリ3に存している場合には(ステップS6;YES)、ステップS1に移行して、それ以降の処理が行なわれる。
一方、処理対象となる他の画像フレームFが画像メモリ3に存していないと判定されると(ステップS6;NO)、ぶれ補正量算出部45は、ぶれ量算出部44にて算出された全体動きベクトルに基づいて、各画像フレームFのぶれ補正量を算出し、続けて、データ切出部46は、算出されたぶれ補正量に基づいて、所定の画像領域を切り出して当該画像フレームFの手ぶれ補正を行う(ステップS7)。
その後、手ぶれ補正された画像フレームFからなる動画像データは、表示部8に表示されるとともに、エンコード部5にて符号化された後、符号化動画像データとして記録媒体7に記録される。
次に、再生時手ぶれ補正処理について、図15を参照して説明する。ここで、図15は、再生時手ぶれ補正処理における画像データの流れを模式的に示した図である。
なお、以下に説明する再生時手ぶれ補正処理にあっては、撮像記録時に手ぶれ補正処理が施されずに符号化された符号化動画像データが記録媒体7に記録されているものとする。
図15に示すように、再生時手ぶれ補正処理にあっては、先ず、記録媒体7に記録されている符号化動画像データがデコード部6により取得されて、復号されることで複数の画像フレームF、…からなるビットストリーム(動画像データ)が作成される。ここで、作成されたビットストリームは、画像メモリ3に一時的に記憶される。
そして、評価値計算部41は、記録時手ぶれ補正処理におけるステップS1と同様に、画像メモリ3からビットストリームを構成する所定の画像フレームFを順次取得していく。
そして、評価値計算部41、対象ブロック選択部42、動きベクトル検出部43、ぶれ量算出部44、ぶれ補正量算出部45、データ切出部46等の各部は、記録時手ぶれ補正処理と略同様に、評価値計算処理(ステップS2)、ブロック選択処理(ステップS3)、選択特徴点Cの数の判定(ステップS4)、全体動きベクトル算出処理(ステップS5)、処理対象となる画像フレームFの有無の判定(ステップS6)等を順次行う。
そして、データ切出部46は、手ぶれ補正した複数の画像フレームF、…からなる動画像データを順次表示部8に出力していき、表示部8に動画像が表示される。
以上のように、本実施形態の撮像装置100によれば、動画像の手ぶれ補正を行う上で、全体動きベクトルの算出に係る特徴点の抽出において、動画像データを構成する一の画像フレームFにて、抽出される所定の選択特徴点Cを含む非選択範囲R内からは他の評価点Pの抽出を行わないようにすることで、当該一の画像フレームFから特定の被写体に偏らせることなく特徴点を適正に所定数抽出することができる。つまり、一の画像フレームFにて、特徴量の多い動く被写体成分などに集中して特徴点が選択されるといったことがなくなって、当該画像フレームF全体から偏りなく特徴点を選択して抽出することができることとなる。
これによって、特定の被写体への偏りを回避して全体動きベクトルを算出することができることとなり、結果として、動画像の手ぶれ補正を精度良く行うことができる。
さらに、特徴点の抽出において、所定数の特徴点が抽出された画像フレームFのみ全体動きベクトルを算出するので、誤検出される虞のある画像フレームFの全体動きベクトルの算出を行わないこととなって、動画像の手ぶれ補正をより適正に行うことができる。
なお、本発明は、上記実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲において、種々の改良並びに設計の変更を行っても良い。
例えば、上記実施形態では、画像フレームFから一の選択特徴点Cを選択した後は、当該選択特徴点Cの周囲からは他の特徴点の抽出を行わないようにすることで、画像フレームF内の特定の被写体に偏ることなく特徴点の抽出を行うようにしたが、特徴点の抽出方法はこれに限られるものではない。
即ち、例えば、変形例1の撮像装置にあっては、画像フレームF2を複数のブロックに分割して、数個〜数十個からブロックなる領域(例えば、80×80画素程度)Sを設定し、各領域S毎に抽出される特徴点の上限を設定するようにしても良い(図16参照)。即ち、一の画像フレームF2を構成する複数の画像ブロック毎に、それぞれから抽出される特徴点の数を略一定とすることによって、画像フレームF2内の特定の被写体に対する偏りを回避することができるようになっている。
これにより、一の画像フレームF2から特定の被写体に偏らせることなく特徴点を適正に抽出することができることとなって、特定の被写体への偏りを回避して全体動きベクトルを適正に算出することができる。
また、上記実施形態では、再生時手ぶれ補正処理にて、撮像記録時に手ぶれ補正処理が施されずに記録された符号化動画像データを用いるようにしたが、手ぶれ補正処理に係る動画像データは、これに限られるものではなく、例えば、他の撮像装置や画像処理装置にて記録されて着脱自在な記録媒体7を介して当該撮像装置100が取得した動画像データであっても良い。
これにより、他の撮像装置や画像処理装置にて手ぶれ補正処理が施されることなく取得された動画像データであっても、当該撮像装置100を用いることによって、手ぶれ補正処理を適正に行うことができることとなり、より魅力的な撮像装置100を提供することができる。
加えて、上記実施形態では、本発明に係る画像処理装置として、画像の撮像及び撮像された静止画像や動画像を表示(再生)する撮像装置100を例示したが、これに限られるものではなく、少なくとも動画像の撮像後の所定の画像処理を行うことができる装置であれば如何なるものであっても良い。例えば、画像処理装置としてのパーソナルコンピュータ(PC;図示略)等に動画ファイルを取り込み、当該PCによる所定のプログラムの実行に基づいて、特徴点の抽出処理、全体動きベクトルの算出処理及び動画像の手ぶれ補正処理等を実施することにより、本発明を実現するようにしても良い。
本発明を適用した画像処理装置の一実施形態として例示する撮像装置の要部構成を示すブロック図である。 図1の撮像装置による評価値計算処理に係る画像フレームを模式的に示した図である。 図2の評価値計算処理に係る画像フレームを模式的に示した図である。 図1の撮像装置によるブロック選択処理に係る画像フレームを模式的に示した図である。 図4のブロック選択処理に係る画像フレームを模式的に示した図である。 図4のブロック選択処理に係る画像フレームを模式的に示した図である。 図4のブロック選択処理に係る画像フレームを模式的に示した図である。 図1の撮像装置による全体動きベクトル算出処理に係る複数の画像フレームを模式的に示した図である。 図8の全体動きベクトル算出処理に係る動きベクトルの投票箱を模式的に示した図である。 図1の撮像装置による記録時手振れ補正処理における画像データの流れを模式的に示した図である。 図10の記録時手振れ補正処理に係る動作の一例を示すフローチャートである。 図10の記録時手振れ補正処理における評価値計算処理に係る動作の一例を示すフローチャートである。 図10の記録時手振れ補正処理におけるブロック選択処理に係る動作の一例を示すフローチャートである。 図10の記録時手振れ補正処理における全体動きベクトル算出処理に係る動作の一例を示すフローチャートである。 図1の撮像装置による再生時手ぶれ補正処理における画像データの流れを模式的に示した図である。 変形例1の撮像装置による特徴点抽出処理に係る画像フレームを模式的に示した図である。 撮像装置により撮像される被写体を動画像を模式的に示した図である。
符号の説明
100 撮像装置(画像処理装置)
4 手ぶれ補正処理部(手ぶれ補正手段)
42 対象ブロック選択部(特徴点抽出手段、特徴点数判定手段)
43 動きベクトル検出部(動きベクトル算出手段)
44 ぶれ量算出部(全体動きベクトル算出手段、動きベクトル集計手段)
B 投票箱
F 画像フレーム
R 非選択範囲
W ウインドウ

Claims (4)

  1. 動画像情報を構成する複数の画像フレームのうち、少なくとも何れか一の画像フレームを構成する複数の画像ブロックから、特徴点として所定数の画像ブロックを抽出する特徴点抽出手段と、
    前記特徴点抽出手段により抽出された画像ブロックである一の特徴点を中心とする所定範囲を指定する範囲指定手段と、
    前記特徴点抽出手段により抽出された前記特徴点を前記一の画像フレームの前後のうちの何れか一方の画像フレームにて追跡して、前記一の画像フレームの全体動きベクトルを算出する全体動きベクトル算出手段と、
    前記全体動きベクトル算出手段により算出された前記全体動きベクトルに基づいて、前記動画像の手ぶれ補正を行う手ぶれ補正手段と、
    を備える画像処理装置であって、
    前記特徴点抽出手段は、前記範囲指定手段で指定された所定範囲からは既に抽出されている画像ブロックである中心の特徴点とは異なる他の特徴点の抽出を行わない
    ことを特徴とする画像処理装置。
  2. 前記特徴点抽出手段により抽出された前記一の画像フレームの前記特徴点の数が所定数に達しているか否かを判定する特徴点数判定手段を備え、
    前記全体動きベクトル算出手段は、前記特徴点数判定手段により前記特徴点の数が所定数に達していないと判定された前記画像フレームからは前記全体動きベクトルの算出を行わないことを特徴とする請求項1に記載の画像処理装置。
  3. 前記全体動きベクトル算出手段は、
    前記特徴点抽出手段により抽出された複数の前記特徴点の各々の動きベクトルを算出する動きベクトル算出手段と、
    前記全体動きベクトルの算出に際して、前記動きベクトル算出手段により算出された前記複数の動きベクトルを小数点以下の値による票割れを考慮して集計する動きベクトル集計手段と、を備えることを特徴とする請求項1又は2に記載の画像処理装置。
  4. 画像処理を行うコンピュータに、
    動画像情報を構成する複数の画像フレームのうち、少なくとも何れか一の画像フレームを構成する複数の画像ブロックから、特徴点として所定数の画像ブロックを抽出する機能と、
    抽出された画像ブロックである一の特徴点を中心とする所定範囲を指定する機能と、
    抽出された前記特徴点を前記一の画像フレームの前後のうちの何れか一方の画像フレームにて追跡して、前記一の画像フレームの全体動きベクトルを算出する機能と、
    算出された前記全体動きベクトルに基づいて、前記動画像の手ぶれ補正を行う機能と、
    を実現させるためのプログラムであって、
    指定された所定範囲からは既に抽出されている画像ブロックである中心の特徴点とは異なる他の特徴点の抽出を行わない
    ことを特徴とするプログラム。
JP2005345798A 2005-11-30 2005-11-30 画像処理装置及びプログラム Expired - Fee Related JP4665737B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005345798A JP4665737B2 (ja) 2005-11-30 2005-11-30 画像処理装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005345798A JP4665737B2 (ja) 2005-11-30 2005-11-30 画像処理装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2007151008A JP2007151008A (ja) 2007-06-14
JP4665737B2 true JP4665737B2 (ja) 2011-04-06

Family

ID=38211828

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005345798A Expired - Fee Related JP4665737B2 (ja) 2005-11-30 2005-11-30 画像処理装置及びプログラム

Country Status (1)

Country Link
JP (1) JP4665737B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5394296B2 (ja) * 2010-03-25 2014-01-22 富士フイルム株式会社 撮像装置及び画像処理方法
JP5516662B2 (ja) * 2011-12-05 2014-06-11 株式会社ニコン 撮像装置
JP6028665B2 (ja) * 2013-04-12 2016-11-16 三菱電機株式会社 画像対応付け装置および画像対応付け方法
KR102072014B1 (ko) 2013-09-16 2020-01-31 에스케이 텔레콤주식회사 영상 흔들림 보정을 이용한 영상 안정화 장치 및 방법
CN111091513B (zh) * 2019-12-18 2023-07-25 Oppo广东移动通信有限公司 图像处理方法、装置、计算机可读存储介质及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01264372A (ja) * 1988-04-15 1989-10-20 Canon Inc 画面ぶれ検出装置
JPH04180370A (ja) * 1990-11-14 1992-06-26 Matsushita Electric Ind Co Ltd 画像の動きベクトル検出装置及び揺れ補正装置
JP2000099744A (ja) * 1998-09-24 2000-04-07 Sharp Corp 画像動きベクトル検出方法およびその装置
JP2005295495A (ja) * 2003-10-02 2005-10-20 Kazuo Iwane カメラベクトル演算装置と、このカメラベクトル演算装置に備えられる揺れ成分検出装置,画像安定化装置,位置姿勢安定化装置,目的対象物ロックオン装置及び実写対象物属性呼出装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01264372A (ja) * 1988-04-15 1989-10-20 Canon Inc 画面ぶれ検出装置
JPH04180370A (ja) * 1990-11-14 1992-06-26 Matsushita Electric Ind Co Ltd 画像の動きベクトル検出装置及び揺れ補正装置
JP2000099744A (ja) * 1998-09-24 2000-04-07 Sharp Corp 画像動きベクトル検出方法およびその装置
JP2005295495A (ja) * 2003-10-02 2005-10-20 Kazuo Iwane カメラベクトル演算装置と、このカメラベクトル演算装置に備えられる揺れ成分検出装置,画像安定化装置,位置姿勢安定化装置,目的対象物ロックオン装置及び実写対象物属性呼出装置

Also Published As

Publication number Publication date
JP2007151008A (ja) 2007-06-14

Similar Documents

Publication Publication Date Title
US7916177B2 (en) Image-capturing apparatus, image-capturing method and program for detecting and correcting image blur
JP4887750B2 (ja) 画像処理装置、制御方法及びプログラム
CN101971621B (zh) 图像处理装置及搭载该装置的摄像装置
US20090046160A1 (en) Camera shake correcting device
US20110188583A1 (en) Picture signal conversion system
US7742647B2 (en) Image processing device and program
WO2013024703A1 (ja) 画像処理装置、画像処理方法、撮像装置、電子機器、及び、プログラム
JP4665737B2 (ja) 画像処理装置及びプログラム
US20080240503A1 (en) Image Processing Apparatus And Image Pickup Apparatus Mounting The Same, And Image Processing Method
JP2008278467A (ja) 画像処理装置および画像処理方法
JP2011527841A (ja) 画像処理装置およびそれを用いた撮像装置
CN111182307A (zh) 一种用于k12教育阶段基于视频影像超低码流无损压缩方法
US9111363B2 (en) Video playback apparatus and video playback method
JP5044922B2 (ja) 撮像装置及びプログラム
US20130208984A1 (en) Content scene determination device
JP2008109270A (ja) 手振れ補正機能付き動画再生装置
JP4235209B2 (ja) 動きベクトル検出装置および動きベクトル検出方法
JP4979623B2 (ja) 画像処理装置
JP4420061B2 (ja) 静止画合成装置、及び動画像からの静止画合成方法
US20220337752A1 (en) Image processing device, image processing method, non-transitory computer-readable storage medium
Vo et al. Automatic video deshearing for skew sequences capturedby rolling shutter cameras
JP2006041648A (ja) 動画像処理ユニット
JP4453716B2 (ja) 静止画合成装置、及び動画像からの静止画合成方法
JP2011015161A (ja) 静止画取得装置、静止画取得方法及び静止画取得プログラム
JP2008544666A (ja) 画像シーケンスでフェードを検出するための手順及び装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081121

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101021

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101026

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101124

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20101124

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: 20101214

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101227

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140121

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4665737

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees