JP4771186B2 - 移動量抽出装置及びプログラム、画像補正装置及びプログラム並びに記録媒体 - Google Patents

移動量抽出装置及びプログラム、画像補正装置及びプログラム並びに記録媒体 Download PDF

Info

Publication number
JP4771186B2
JP4771186B2 JP2010518003A JP2010518003A JP4771186B2 JP 4771186 B2 JP4771186 B2 JP 4771186B2 JP 2010518003 A JP2010518003 A JP 2010518003A JP 2010518003 A JP2010518003 A JP 2010518003A JP 4771186 B2 JP4771186 B2 JP 4771186B2
Authority
JP
Japan
Prior art keywords
image
frame image
frame
error function
movement amount
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
JP2010518003A
Other languages
English (en)
Other versions
JPWO2009154294A1 (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.)
Shizuoka University NUC
Original Assignee
Shizuoka University NUC
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 Shizuoka University NUC filed Critical Shizuoka University NUC
Priority to JP2010518003A priority Critical patent/JP4771186B2/ja
Application granted granted Critical
Publication of JP4771186B2 publication Critical patent/JP4771186B2/ja
Publication of JPWO2009154294A1 publication Critical patent/JPWO2009154294A1/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration by the use of more than one image, e.g. averaging, subtraction
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/77Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera
    • 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/20212Image combination
    • G06T2207/20221Image fusion; Image merging

Description

本発明は、移動量抽出装置及びプログラム、画像補正装置及びプログラム並びに記録媒体に関する。
近年集積化技術の進歩により、ビデオカメラは、小型化・低価格化が進んで一般に普及するようになり、様々な場所で使用されている。特に、小型のビデオカメラは、近年、災害時に素早く情報収集を行うために、人間が立ち入れない場所で被災者の探索を行うロボットや、上空から災害状況を確認する無人ヘリコプターなど、遠隔操作用のレスキューロボットなどにも搭載されている。
しかし、ビデオカメラが搭載されたロボットは、自身が振動したり、荒れた路面上や地震で障害物が散在する状況下で走行したりする。このため、ロボットに搭載されたカメラから送られてくる映像にはゆれが生じてしまう。
そのため、オペレータは、即座に状況判断をすることが困難になり、画面酔いして操作に影響が出る可能性がある。したがって、このような映像のゆれによる影響を抑えるためは、リアルタイムで動画像処理が行われ、映像のゆれが軽減される必要がある。
現在、デジタルカメラのために開発・研究されているゆれを軽減する手法は、電子式、 光学式、イメージセンサーシフト式、レンズユニットスイング式などの手ぶれ補正機能があげられる。しかし、これらの補正機能は、カメラに搭載されるものであり、そのカメラで撮影した映像だけしか補正することができない。このため、必然的にカメラの大型化、高価格化を招いてしまう。
近年では、デジタルカメラの普及やパーソナルコンピュータ(PC)の発達により、一般の家庭用PCでも動画像の処理などが簡単に行われ、汎用性を高めるために、PCを利用した安定化処理が望まれる。しかしながら、動画像はデータ量が多く、それらを処理するにはCPU(Central Processing Unit)では負荷が大きいため、リアルタイムでの処理は難しい。
そこで、高速なグラフィック処理を目的としたグラフィックスハードウェアであるGPU(Graphics Processing Unit)を用いることが考えられる。GPUは、一般的なPCにも搭載され、並列処理による高速演算が可能である。GPUの処理性能、特に浮動小数点演算性能は、CPUに比べて10倍以上の性能を示すものもある。
本願発明者らによる、GPUを用いたぶれ補正技術として「GPUを用いたビデオ映像の安定化」が開示されている(非特許文献1参照)。非特許文献1に記載された技術は、アフィン変換を用いてグローバルモーションを推定する際に、BFGS法(準ニュートン法)のアルゴリズムを使用し、推定したグローバルモーションに基づいてビデオ映像の振動を補正する。
藤澤、他2名、「GPUを用いたビデオ映像の安定化」、社団法人情報処理学会、情報処理学会論文誌Vol.49、No.2、p.1−8
しかし、非特許文献1に記載された技術は、収束時間が長く、BFGS法の計算回数が多くなってしまうため、グローバルモーション、すなわち、変化量の推定に時間がかかってしまう。このため、特許文献1の技術は、1秒当たり30枚のフレーム画像に対して4〜5枚分しかぶれ補正処理をすることができないため、実質的にはリアルタイムで動画像のぶれ補正を行うことができなかった。
本発明は、上述した課題を解決するために提案されたものである。
本発明の第1の態様の画像変化量抽出装置は、動画像を構成する複数のフレーム画像のうちの第1のフレーム画像に対して、平行移動量と回転移動量とを含んだアフィン変換パラメータを用いて画像変換処理を行って、第1の変換フレーム画像を生成する画像変換部と、前記画像変換部により前記平行移動量及び前記回転移動量にそれぞれ所定の値が設定されて前記第1の変換フレーム画像が生成される毎に、前記画像変換部により生成された第1の変換フレーム画像と、前記動画像を構成する複数のフレーム画像のうちの前記第1のフレーム画像と異なる第2のフレーム画像と、の同一座標の各画素値の差分の自乗値を演算し、前記第1の変換フレーム画像及び前記第2のフレーム画像が少なくとも重複するすべての同一座標についての自乗値を積算してエラー関数を導出するエラー関数導出部と、BFGS法を用いて前記エラー関数導出部により導出されたエラー関数の値が最小値となる場合を探索し、前記エラー関数の値が最小値となる場合のアフィン変換パラメータを第2のフレーム画像に対する前記第1のフレーム画像の変化量として抽出する変化量抽出部と、を備えている。
上記画像変化量抽出装置は、平行移動量及び回転移動量にそれぞれ所定の値が設定されて第1の変換フレーム画像が生成される毎に、第1の変換フレーム画像及び第2のフレーム画像が少なくとも重複するすべての同一座標についての自乗値を積算してエラー関数を導出し、BFGS法を用いてエラー関数の値が最小値となる場合を探索し、エラー関数の値が最小値となる場合のアフィン変換パラメータを第2のフレーム画像に対する前記第1のフレーム画像の変化量として抽出する。よって、探索時間を非常に短くして、第2のフレーム画像に対する前記第1のフレーム画像の変化量をリアルタイムで抽出できる。
本発明の第2の態様の画像補正装置は、上記画像変化量抽出装置と、第1のフレーム画像と前記画像変化量抽出装置により抽出された変化量とに基づいて、第1のフレーム画像と前記第2のフレーム画像とのずれが少なくなるように、前記第1のフレーム画像に対して補正処理を行う補正部と、を備えている。
また、本発明の第3の態様の画像補正装置は、上記画像変化量抽出装置と、第2のフレーム画像と前記画像変化量抽出装置により抽出された変化量とに基づいて、第1のフレーム画像と前記第2のフレーム画像とのずれが少なくなるように、前記第2のフレーム画像に対して補正処理を行う補正部と、を備えている。
上記各画像補正装置は、リアルタイムで抽出された画像の変化量を用いて、その変化量に応じた画像の補正をリアルタイムで行うことができる。
本発明の一態様である画像変化量抽出装置及びプログラムは、第1の変換フレーム画像及び第2のフレーム画像が少なくとも重複するすべての同一座標についての自乗値を積算してエラー関数を導出し、BFGS法を用いてエラー関数の値が最小値となる場合を探索して、エラー関数の値が最小値となる場合のアフィン変換パラメータを第2のフレーム画像に対する第1のフレーム画像の変化量として抽出する。これにより、エラー関数の値が最小値となる場合の探索時間を短くすることができ、動画像を構成する画像の変化量をリアルタイムで抽出することができる。
本発明の一態様である画像補正装置及びプログラムは、動画像を構成する画像の変化量をリアルタイムで抽出することにより、その変化量に応じた画像の補正をリアルタイムで行うことができる。
本発明の実施の形態に係る画像補正装置の構成を示すブロック図である。 グローバルモーションの推定を説明するための図である。 補正前と補正後(画像補正装置による補正済み)のフレーム数に対する移動量を示す図であり、(A)はX軸方向の移動量、(B)はY軸方向の移動量である。 第1から第3のフレーム画像の合成により生成された合成画像を示す図である。
以下、本発明の好ましい実施の形態について図面を参照しながら詳細に説明する。
[第1の実施形態:画像補正装置の構成]
図1は、本発明の実施の形態に係る画像補正装置の構成を示すブロック図である。画像補正装置は、被写体を撮像して画像を生成するカメラ10と、カメラ10で生成された画像のぶれをなくすように画像処理を行う画像処理装置20と、を備えている。
画像処理装置20は、カメラ10との間で信号のやりとりを行う入出力ポート21と、演算処理を行うCPU(Central Processing Unit)22と、画像やその他のデータを記憶するハードディスクドライブ23と、CPU22の制御プログラムを記憶するROM(Read Only Memory)24と、データのワークエリアであるRAM(Random Access Memory)25と、画像処理のための所定の演算処理を行うGPU26(Graphics Processing Unit)と、を備えている。
CPU22は、入出力ポート21を介して、カメラ10からの動画像を受信すると、動画像をGPU26に逐次転送し、GPU26に所定の演算処理を行わせて、動画像を構成する各フレーム画像から1フレーム毎にカメラ10の移動量を求める(グローバルモーションの推定)。なお、本実施形態では、振動の除去されたカメラ10の動きは緩やかで滑らかなものであると仮定する。そして、CPU22は、求めたカメラ10の移動量に基づいて、各フレーム画像に対して振動補正を行う。
[グローバルモーションの推定]
映像の安定化行うためにはグローバルモーションを知る必要がある。連続したフレーム間において、隣接したフレーム間での動きを求められれば、カメラ10がどのように動いたか知ることができる。
隣接したフレーム画像IとIn+1の間の変換をアフィン変換であると仮定すると、ピクセル座標x=(x,y)の変化は式(1)によって表すことができる。
Figure 0004771186
また、式(1)を変形すると式(2)となる。
Figure 0004771186
式(2)は、任意のフレームからカメラ10がどのように動いたかを表す。アフィン変換パラメータ
Figure 0004771186
は、次の式(3)のエラー関数の最小値Eminを求めることによって得られる。
Figure 0004771186
χは画面平面上全ての座標値を表す。式(3)は2枚のフレーム画像の輝度値の差の2乗を合計した値である。ここで、非特許文献1に記載されたエラー関数
Figure 0004771186
と比較する。上記のエラー関数は、フレーム間の差分計算においてフレーム間の輝度差の絶対値を取得するために用いられる。
仮に、上記式の絶対値を求めた場合(β→0)、合計計算をする前の式は厳密にフレーム間の差分画像の絶対値を得る。しかし、この式はルートを含んでおり、計算の上では非常に遅くなる。
そこで、本実施形態の式(3)は、ルート計算及びβを除いている。式(3)は、フレーム間の差分の2乗を合計したものであり、差分画像とは異なるものを表している。すなわち、式(3)が演算されても、人間が見ても何が写っているかわからない画像しか得られない。
本来、グローバルモーションは人間も見える全体の動きである。よって、非特許文献1に記載されているように、エラー関数は素直に画像を重ね合わせた場合の画素値の差分の積算値である、と考えるのが最も自然である。
これに対して、本実施形態の式(3)は、単なる2乗式であり、厳密には非特許文献1のエラー関数と同じ解が出るとは限らず、特殊であると考えられる。一方で、式(3)の解を用いて問題なく振動補正を行うことができる。すなわち、非特許文献1と本実施形態とでエラー関数の定義が異なるが、同じ結果を得ることができることがわかった。したがって、本実施形態の式(3) は、単なる2乗式にすることによって、ルートの計算がなくなる分計算が高速化することに加え、差分が大きくなり、 最小値への収束が速くなること、グローバルモーション補正の失敗が少なくなる、という利点がある。そこで、図1に示す画像処理装置20のCPU22及びGPU26は、次のような演算を行う。
図2は、グローバルモーションの推定を説明するための図である。カメラのぶれ量は、フレーム画像Iを基準にした場合のフレーム画像In+1の画像移動量(回転角θ、xy方向のそれぞれ移動量であるb1、b2)となる。そこで、図1に示すCPU22は、フレーム画像In+1の画像移動量の候補として、予め用意された複数のアフィン変換パラメータを記憶しており、フレーム画像In+1と共に複数のアフィン変換パラメータをGPU26に送信する。なお、フレーム画像In+1は、カメラ10で生成された動画像のうちの最新のフレーム画像であるのが好ましい。
そして、CPU22は、GPU26に各アフィン変換パラメータが用いられた場合のエラー値Eを演算させて、エラー値Eが最小となる場合のアフィン変換パラメータをカメラ10の移動量として抽出する。なお、CPU22は、アフィン変換パラメータ(θ、b1、b2)を単にGPU26に送信する代わりに、θからsinθ及びcosθを計算し、アフィン変換パラメータとして、b1、b2、sinθ及びcosθをGPU26に送信してもよい。
一方、GPU26は、CPU22から送信されたアフィン変換パラメータを受信すると、フレーム画像In+1に対して上述のアフィン変換パラメータを用いて変形処理を行う。
具体的には、GPU26は、フレーム画像Iと変形されたフレーム画像In+1との各々の同一座標についての画素値(輝度値)の差の2乗を演算する。なお、輝度値の差の2乗の演算は、すべての座標(例えば、少なくともフレーム画像I、In+1の重複する領域のすべての座標)で行われる。なお、GPU26は、重複する領域での各同一座標において、輝度値の差の2乗値を並列かつ独立に演算する。これにより、GPU26は、各座標で独立に演算できるので、並列演算処理を行って高速処理を実行できる。そして、GPU26は、すべての座標における輝度値の差の2乗を並列積算し、積算値をエラー値として求める。ここでは、GPU26が、ある程度、輝度値の差の2乗を並列積算し、CPU22が、残りの輝度値の差の2乗を順次積算してこれらの積算値を合計するとよい。アフィン変換パラメータが変更される毎に上述したエラー値を演算する。
ところで、フレーム画像In+1を変形させたときの座標(x′,y′)のピクセルとフレーム画像Iの座標(x,y)のピクセルが対応している場合、その輝度値の差は0になり、エラー値は小さくなる。エラー値が小さい程フレーム間において対応するピクセルが多いということになり、そのときのパラメータ(A、b)がフレーム間の動きとなる。
そこで、GPU26が、予め用意されたすべてのアフィン変換パラメータについて上述したエラー値を演算すると、次に、CPU22が、すべてのエラー値の中で最小のエラー値になったときのアフィン変換パラメータを選択し、選択したアフィン変換パラメータをフレーム間の動き、すなわちカメラの移動量として抽出する。
なお、ピクセル座標値のアフィン変換
Figure 0004771186
によって、輝度値が定義されていない領域(未定義域:フレーム画像I、In+1の重複していない領域)を参照する場合、CPU22は、そのピクセルについてはエラー値の計算から除外するために、そのピクセルの輝度値の差を0とする。そして、CPU22は、全ピクセルχに対し最終的に有効であったピクセル数χを用いて、次のようにエラー値Eを補正する。
Figure 0004771186
ただし、α=χ/χが小さい場合(例えば1/4)に正しい結果が出ない可能性がある。例えば、実際のカメラ10の動きが小さくても、最小化手法の反復の初期において変形量が大きく、αの値が小さくなることがある。そこで、本実施形態では、CPU22は、αが1/4未満(α<1/4)の場合、未定義域のピクセルの輝度値の差を0とみなしてエラー値を計算し、エラー値が意図的に大きくなるようにしている。なお、輝度値の差を0とみなすのは、αが1に比べて十分小さければよく、αが1/4未満の場合に限定されるものではない。
また、エラー関数の最小値の探索にはNUMERICAL RECIPESのBFGS法(準ニュートン法)のアルゴリズムが使用される。BFGS(Broyden,Fletcher,Goldfarb,Shanno)法のアルゴリズムは関数と導関数を用いて最小方向の探索を行うので、計算回数が少なく、収束時間が短い。BFGS法では導関数を必要とするので、導関数を求めるには式(3)を次の式(4)及び(5)のように変形する。
Figure 0004771186
ここから導関数を求めると、式(6)となる。
Figure 0004771186
また、次の式(7)も成り立つ。
Figure 0004771186
よって、すべての導関数は次の式(8)〜(13)のようになる。
Figure 0004771186
ここで、式(8)〜(10)においては式(14)が成立し、式(11)〜(13)においては(15)が成立する。
Figure 0004771186
本実施形態では、高速化のため画像の動きを平行移動と回転移動のみと仮定して、求めるアフィン変換パラメータを(θ、b、b)の3つとし、アフィン行列Tは式(16)とする。
Figure 0004771186
また、導関数は、次の式(17)〜(19)とする。
Figure 0004771186
ここで、式(*)と定義したとき式(20)〜(23)とする。
Figure 0004771186
すなわち、図1に示す画像処理装置20のCPU22は、式(16)のアフィン変換行列を用いて式(3)のエラー関数を定義し、このエラー関数の最小値を探索するために準ニュートン法の手法の1つであるBFGS法を用いる。ここで、BFGS法では導関数が必要となる。そこで、CPU22は、式(17)〜(19)(式(20)〜(23)を含む。)の導関数を用いて式(3)のエラー関数の最小値を探索し、最小値となったときのパラメータ(θ、b、b)を求め、これを画像移動量、すなわちカメラ10のぶれ量として抽出する。
なお、複数回のエラー関数の導出においては、1つのエラー関数が導出されると、新たなアフィン変換パラメータ(θ、b、bの少なくとも1つが所定量変化したもの)を用いて再びエラー関数が導出される。なお、これらのパラメータの変更の仕方は特に限定されるものではない。また、BFGS法については、Teukolsky, S.A., Vetterling, W.T. and Flannery, B.P.: Numerical Recipes in C++: The Art of Scientific Computing, Cambridge University Press (2002)に記載された手法を用いることができる。
[振動補正]
画面の動きを滑らかにするために、推定したグローバルモーションに基づく修正のための変換行列を求める必要がある。補正前のフレームから補正後のフレームまでの変換行列Sは、補正の対象となるフレームの前後kフレームまでのアフィン変換を用いて次の式(24)によって表される。
Figure 0004771186
ここで、
Figure 0004771186
はフレームnからmまでのアフィン変換行列である。また、
Figure 0004771186
はガウス・カーネルである。式(24)の星印は畳み込み演算子を表す。また√k=σである。
そこで、図1に示す画像処理装置20のCPU22は、得られた変換行列を用いて次の式(25)の演算を行うことで、フレーム画像間のずれが少なくなるように、対象となるフレーム画像に対して振動補正を行うことができる。
Figure 0004771186
ここで、隣り合うフレーム画像間の振動補正を行う場合は上述したn、mは連続した自然数となるが、基準となるフレーム画像に対して所定のフレーム画像の振動補正を行う場合は、n、mは連続した自然数でなくてもよい。
なお、本願発明者らが1フレームあたりのBFGS法の適用回数を計算したところ次の結果が得られた。非特許文献1に記載されたエラー関数を用いると、GPUが演算した場合は平均で42.87回、CPUが演算した場合は平均で11.43回となった。これに対して、本実施形態の式(3)のエラー関数を用いると、GPUが演算した場合は平均で7.707回、CPUが演算した場合は平均で6.481回となった。すなわち、式(3)のエラー関数を用いた方が、演算回数が少なくなり、短時間で演算することが可能になる。
図3は、補正前と補正後(画像補正装置による補正済み)のフレーム数に対する移動量を示す図であり、(A)はX軸方向の移動量、(B)はY軸方向の移動量である。同図に示すように、補正により移動量は非常に滑らかになった。
また、画像処理装置20のCPU22は、回転移動量及び平行移動量の少なく1つが補正されたフレーム画像を順次合成して、複数のフレームからなる合成画像を生成してもよい。
図4は、第1から第3のフレーム画像の合成により生成された合成画像を示す図である。ここでは、CPU22は、補正された最新のフレーム画像を、中心位置に対して水平になるように順次上に重ねる。これにより、中心付近は新しいフレーム画像で構成され、縁付近は古いフレーム画像で構成された、フレーム画像よりも大きい合成画像が生成される。
この場合、GPU26は、各座標において画像が存在するかの判定フラグを立てて、画像がある座標においてのみエラー関数Eを演算すればよい。この結果、フレーム画像の移動量の推定誤差が小さくなり、仮に、最新のフレーム画像とその1つ前のフレーム画像との重なる部分がほとんどなくても、グローバルモーション推定が可能になる。なお、GPU26は、累積誤差を防止するため、最新のフレーム画像よりも所定フレーム以前のフレーム画像については合成せず、順次破棄するとよい。
さらに、GPU26は、過去のフレーム画像I、In−1、In−2・・・の合成である合成画像をフレーム画像Iとし、次の最新のフレーム画像In+1を用いて、エラー関数Eを演算してもよい。これにより、カメラ10のぶれ量が大きい場合でも、合成されたフレーム画像Iと次の最新のフレーム画像In+1との重複範囲が大きくなるので、カメラのぶれ量が確実に検出される。
以上のように、本発明の実施形態に係る画像補正装置は、BFGS法を適用して式(3)のエラー関数の最小値を探索することにより、従来に比べて、非常に短時間でエラー関数が最小値となるときのアフィン変換パラメータを求め、このアフィン変換パラメータを用いて、リアルタイムで動画像のぶれを補正することができる。
BFGS法を用いた最小値探索では複数回の演算を繰り返して最小値を探索するので、個々の演算式の演算速度のわずかな違いでも、最終的な演算速度に大きく響いてくる。特に、本実施形態に係る画像補正装置は、画像の各画素についての演算を行うため、この違いは顕著である。非特許文献1では、個々の演算式に平方根が含まれているため、どうしても演算速度が遅くなってしまう。これに対して、本実施形態に係る画像補正装置は、エラー関数を工夫することにより、平方根の演算を用いることなく高速にエラー関数の最小値を探索することが可能となった。また、エラー関数を用いることにより、BFGS法を用いた最小値探索の繰り返し演算回数そのものを少なくできることも見出した。
さらに、上記画像補正装置は、補正されたフレーム画像を順次合成することで、フレーム画像よりもサイズの大きい合成画像を生成することができる。そして、上記画像補正装置は、サイズの大きい合成画像に対する最新のフレーム画像の移動量を抽出することで、カメラ10のぶれ量が大きい場合でも、そのぶれ量を確実に抽出して、ぶれを補正することができる。
なお、上記画像補正装置は、カメラ10がぶれた場合だけでなく、被写体がぶれた場合であっても、上述した式(3)を用いてリアルタイムで動画像の被写体ぶれを補正することができる。
[第2の実施形態:他のアフィン変換パラメータを用いた場合]
つぎに、本発明の第2の実施形態について説明する。なお、第1の実施形態と同一の部位には同一の符号を付し、重複する説明は省略する。
第1の実施形態では3変数であるアフィン変換パラメータ(θ、b、b)を用いたが、第2の実施形態では4変数であるアフィン変換パラメータ(θ、b、b、z)を用いる。なお、zはズーム方向のパラメータであり、画像の倍率を示している。ここで、エラー関数は、次の式(26)のように表される。
Figure 0004771186
式(26)においてχは画面平面上全ての座標値の集合である。I(x)はピクセルxの輝度値である。そして、4変数のアフィン変換パラメータを用いると、アフィン変換は、次の式(27)のように表される。
Figure 0004771186
このとき、導関数は、式(28)〜(31)のようになる。
Figure 0004771186
但し、導関数は、式(32)〜(38)を満たす。
Figure 0004771186
そこで、第2の実施形態では、図1に示す画像処理装置20のCPU22は、上述した4変数のアフィン変換パラメータを用いたエラー関数に対して、式(28)〜(31)(式(32)〜(38)を含む。)を用いてBFGS法を適用する。これにより、CPU22は、エラー値の最小値を短時間で探索し、このときのアフィン変換パラメータをフレーム間の動き、すなわちカメラの移動量として抽出する。そして、CPU22は、このアフィン変換パラメータを用いて第1の実施形態と同様にして画像を補正することができる。
以上のように、第2の実施形態に係る画像補正装置は、ズーム方向のパラメータを含んだアフィン変換パラメータを用いて移動量を抽出できるので、画像に現れる被写体の大きさが変化するほどカメラ10が振動しても、リアルタイムでその振動を抑制するように動画像を補正することができる。
また、本発明は、上述した実施の形態に限定されるものではなく、特許請求の範囲に記載された範囲内で設計上の変更をされたものにも適用可能であるのは勿論である。例えば、上述した実施形態では、フレーム画像Iに隣接したフレーム画像In+1の変換をアフィン変換パラメータで表したが、変換されるフレーム画像はフレーム画像Iに隣接していなくてもよい。例えば、基準フレーム画像に対して数フレーム離れた所定のフレーム画像をアフィン変換パラメータで表すことも可能である。
また、上述した実施形態では、画像処理装置20は、カメラ10で生成された動画像をリアルタイムで補正したが、ハードディスクドライブ23に予め記憶されている動画像についても同様に補正することができる。
10 カメラ
20 画像処理装置
22 CPU
26 GPU

Claims (13)

  1. 動画像を構成する複数のフレーム画像のうちの第1のフレーム画像に対して、平行移動量である第1方向への移動量x及び前記第1方向に直交する第2方向への移動量yと、回転移動量θとを含んだアフィン変換パラメータを用いて画像変換処理を行って、第1の変換フレーム画像を生成する画像変換部と、
    前記画像変換部により前記平行移動量及び前記回転移動量にそれぞれ所定の値が設定されて前記第1の変換フレーム画像が生成される毎に、前記画像変換部により生成された第1の変換フレーム画像と、前記動画像を構成する複数のフレーム画像のうちの前記第1のフレーム画像と異なる第2のフレーム画像と、の同一座標の各画素値の差分の自乗値を演算し、前記第1の変換フレーム画像及び前記第2のフレーム画像が少なくとも重複するすべての同一座標についての前記自乗値を積算してエラー関数を導出するエラー関数導出部と、
    BFGS法を用いて前記エラー関数導出部により導出されたエラー関数の値が最小値となる場合を探索し、前記エラー関数の値が最小値となる場合のアフィン変換パラメータを第2のフレーム画像に対する前記第1のフレーム画像の変化量として抽出する変化量抽出部と、
    を備え
    前記変化量抽出部は、前記エラー関数の最小値の探索の際にBFGS法で使用する導関数として、
    Figure 0004771186
    を用いる画像変化量抽出装置。
  2. 動画像を構成する複数のフレーム画像のうちの第1のフレーム画像に対して、平行移動量である第1方向への移動量x及び前記第1方向に直交する第2方向への移動量yと、回転移動量θ、ズーム方向の倍率zを含んだアフィン変換パラメータを用いて画像変換処理を行って、第1の変換フレーム画像を生成する画像変換部と、
    前記画像変換部により前記平行移動量及び前記回転移動量にそれぞれ所定の値が設定されて前記第1の変換フレーム画像が生成される毎に、前記画像変換部により生成された第1の変換フレーム画像と、前記動画像を構成する複数のフレーム画像のうちの前記第1のフレーム画像と異なる第2のフレーム画像と、の同一座標の各画素値の差分の自乗値を演算し、前記第1の変換フレーム画像及び前記第2のフレーム画像が少なくとも重複するすべての同一座標についての前記自乗値を積算してエラー関数を導出するエラー関数導出部と、
    BFGS法を用いて前記エラー関数導出部により導出されたエラー関数の値が最小値となる場合を探索し、前記エラー関数の値が最小値となる場合のアフィン変換パラメータを第2のフレーム画像に対する前記第1のフレーム画像の変化量として抽出する変化量抽出部と、
    を備え
    前記変化量抽出部は、前記エラー関数の最小値の探索の際にBFGS法で使用する導関数として、
    Figure 0004771186
    を用いる画像変化量抽出装置。
  3. 前記エラー関数導出部は、前記第1の変換フレーム画像と、前記第1のフレーム画像に隣接する第2のフレーム画像と、の同一座標の各画素値の差分の自乗値を演算する
    請求項1又は2に記載の画像変化量抽出装置。
  4. 前記エラー関数導出部は、前記第1の変換フレーム画像と前記第2のフレーム画像との各々の同一座標について、各画素値の差分の自乗値をそれぞれ独立して並列演算する
    請求項1又は2に記載の画像変化量抽出装置。
  5. 前記画像変換部は、動画像を構成する複数のフレーム画像のうちの最新の第1のフレーム画像に対して、前記画像変換処理を行って第1の変換フレーム画像を逐次生成し、
    前記エラー関数導出部は、前記画像変換部により逐次生成された第1の変換フレーム画像と、前記第1のフレーム画像の直前のフレームである第2のフレーム画像と、の同一座標の各画素値の差分の自乗値を演算する
    請求項1又は2に記載の画像変化量抽出装置。
  6. 請求項1又は2に記載の画像変化量抽出装置と、
    前記第1のフレーム画像と前記画像変化量抽出装置により抽出された変化量とに基づいて、第1のフレーム画像と前記第2のフレーム画像とのずれが少なくなるように、前記第1のフレーム画像に対して補正処理を行う補正部と、
    を備えた画像補正装置。
  7. 前記第2のフレーム画像に対して、前記補正部により補正処理された前記第1のフレーム画像を合成する画像合成部を更に備えた
    請求項に記載の画像補正装置。
  8. 請求項に記載の画像変化量抽出装置と、
    前記第1のフレーム画像と前記画像変化量抽出装置により抽出された変化量とに基づいて、第1のフレーム画像と前記第2のフレーム画像とのずれが少なくなるように、前記第1のフレーム画像に対して補正処理を行う補正部と、
    前記第2のフレーム画像に対して、前記補正部により補正処理された前記第1のフレーム画像を合成する画像合成部と、を備え、
    前記画像変化量抽出装置は、次の第1のフレーム画像に対して、前記画像合成部により合成された画像を前記第2のフレーム画像として、前記次の第1のフレーム画像の変化量を抽出する
    画像補正装置。
  9. 請求項1又は2に記載の画像変化量抽出装置と、
    前記第2のフレーム画像と前記画像変化量抽出装置により抽出された変化量とに基づいて、第1のフレーム画像と前記第2のフレーム画像とのずれが少なくなるように、前記第2のフレーム画像に対して補正処理を行う補正部と、
    を備えた画像補正装置。
  10. 前記第1のフレーム画像に対して、前記補正部により補正処理された前記第2のフレーム画像を合成する画像合成部を更に備えた
    請求項に記載の画像補正装置。
  11. コンピュータを、請求項または請求項に記載の画像補正装置の各部として機能させるための画像補正プログラム。
  12. コンピュータを、
    動画像を構成する複数のフレーム画像のうちの第1のフレーム画像に対して、平行移動量である第1方向への移動量x及び前記第1方向に直交する第2方向への移動量yと、回転移動量θとを含んだアフィン変換パラメータを用いて画像変換処理を行って、第1の変換フレーム画像を生成する画像変換手段、
    前記画像変換手段より前記平行移動量及び前記回転移動量にそれぞれ所定の値が設定されて前記第1の変換フレーム画像が生成される毎に、前記画像変換手段により生成された第1の変換フレーム画像と、前記動画像を構成する複数のフレーム画像のうちの前記第1のフレーム画像と異なる第2のフレーム画像と、の同一座標の各画素値の差分の自乗値を演算し、前記第1の変換フレーム画像及び前記第2のフレーム画像が少なくとも重複するすべての同一座標についての自乗値を積算してエラー関数を導出するエラー関数導出手段、及び、
    BFGS法を用いて前記エラー関数導出手段により導出されたエラー関数の値が最小値となる場合を探索し、前記エラー関数の値が最小値となる場合のアフィン変換パラメータを第2のフレーム画像に対する前記第1のフレーム画像の変化量として抽出する変化量抽出手段、
    として機能させるための画像変化量抽出プログラムであって、

    前記変化量抽出手段は、前記エラー関数の最小値の探索の際にBFGS法で使用する導関数として、
    Figure 0004771186
    を用いる画像変化量抽出プログラム。
  13. コンピュータを、
    動画像を構成する複数のフレーム画像のうちの第1のフレーム画像に対して、平行移動量である第1方向への移動量x及び前記第1方向に直交する第2方向への移動量yと、回転移動量θ、ズーム方向の倍率zを含んだアフィン変換パラメータを用いて画像変換処理を行って、第1の変換フレーム画像を生成する画像変換手段、
    前記画像変換手段より前記平行移動量及び前記回転移動量にそれぞれ所定の値が設定されて前記第1の変換フレーム画像が生成される毎に、前記画像変換手段により生成された第1の変換フレーム画像と、前記動画像を構成する複数のフレーム画像のうちの前記第1のフレーム画像と異なる第2のフレーム画像と、の同一座標の各画素値の差分の自乗値を演算し、前記第1の変換フレーム画像及び前記第2のフレーム画像が少なくとも重複するすべての同一座標についての自乗値を積算してエラー関数を導出するエラー関数導出手段、及び、
    BFGS法を用いて前記エラー関数導出手段により導出されたエラー関数の値が最小値となる場合を探索し、前記エラー関数の値が最小値となる場合のアフィン変換パラメータを第2のフレーム画像に対する前記第1のフレーム画像の変化量として抽出する変化量抽出手段、
    として機能させるための画像変化量抽出プログラムであって、
    前記変化量抽出手段は、前記エラー関数の最小値の探索の際にBFGS法で使用する導関数として、
    Figure 0004771186
    を用いる画像変化量抽出プログラム。
JP2010518003A 2008-06-20 2009-06-22 移動量抽出装置及びプログラム、画像補正装置及びプログラム並びに記録媒体 Expired - Fee Related JP4771186B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010518003A JP4771186B2 (ja) 2008-06-20 2009-06-22 移動量抽出装置及びプログラム、画像補正装置及びプログラム並びに記録媒体

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2008162477 2008-06-20
JP2008162477 2008-06-20
JP2010518003A JP4771186B2 (ja) 2008-06-20 2009-06-22 移動量抽出装置及びプログラム、画像補正装置及びプログラム並びに記録媒体
PCT/JP2009/061329 WO2009154294A1 (ja) 2008-06-20 2009-06-22 移動量抽出装置及びプログラム、画像補正装置及びプログラム並びに記録媒体

Publications (2)

Publication Number Publication Date
JP4771186B2 true JP4771186B2 (ja) 2011-09-14
JPWO2009154294A1 JPWO2009154294A1 (ja) 2011-12-01

Family

ID=41434205

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010518003A Expired - Fee Related JP4771186B2 (ja) 2008-06-20 2009-06-22 移動量抽出装置及びプログラム、画像補正装置及びプログラム並びに記録媒体

Country Status (3)

Country Link
US (1) US20110135206A1 (ja)
JP (1) JP4771186B2 (ja)
WO (1) WO2009154294A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010093040A1 (ja) 2009-02-13 2010-08-19 国立大学法人静岡大学 モーションブラー制御装置、方法、及びプログラム
US9886552B2 (en) * 2011-08-12 2018-02-06 Help Lighting, Inc. System and method for image registration of multiple video streams
JP5412692B2 (ja) * 2011-10-04 2014-02-12 株式会社モルフォ 画像処理装置、画像処理方法、画像処理プログラム及び記録媒体
US9020203B2 (en) 2012-05-21 2015-04-28 Vipaar, Llc System and method for managing spatiotemporal uncertainty
CN103020711A (zh) * 2012-12-25 2013-04-03 中国科学院深圳先进技术研究院 分类器训练方法及其系统
US9940750B2 (en) 2013-06-27 2018-04-10 Help Lighting, Inc. System and method for role negotiation in multi-reality environments
WO2016203282A1 (en) 2015-06-18 2016-12-22 The Nielsen Company (Us), Llc Methods and apparatus to capture photographs using mobile devices
WO2018097590A1 (ko) * 2016-11-22 2018-05-31 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
US11361407B2 (en) 2017-04-09 2022-06-14 Indiana University Research And Technology Corporation Motion correction systems and methods for improving medical image data
JP6423566B1 (ja) * 2018-06-21 2018-11-14 株式会社 ディー・エヌ・エー 画像処理装置、画像処理プログラム、及び、画像処理方法
CN109191489B (zh) * 2018-08-16 2022-05-20 株洲斯凯航空科技有限公司 一种飞行器着陆标志的检测跟踪方法与系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005309558A (ja) * 2004-04-19 2005-11-04 Sony Corp 画像処理方法および装置、並びにプログラム
JP2005331440A (ja) * 2004-05-21 2005-12-02 Rikogaku Shinkokai 光位相分布測定方法及び測定システム
JP2006520042A (ja) * 2003-03-07 2006-08-31 キネティック リミテッド スキャニング装置及び方法
JP2007035020A (ja) * 2005-06-22 2007-02-08 Konica Minolta Medical & Graphic Inc 領域抽出装置、領域抽出方法及びプログラム
JP2007041752A (ja) * 2005-08-02 2007-02-15 Casio Comput Co Ltd 画像処理装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006520042A (ja) * 2003-03-07 2006-08-31 キネティック リミテッド スキャニング装置及び方法
JP2005309558A (ja) * 2004-04-19 2005-11-04 Sony Corp 画像処理方法および装置、並びにプログラム
JP2005331440A (ja) * 2004-05-21 2005-12-02 Rikogaku Shinkokai 光位相分布測定方法及び測定システム
JP2007035020A (ja) * 2005-06-22 2007-02-08 Konica Minolta Medical & Graphic Inc 領域抽出装置、領域抽出方法及びプログラム
JP2007041752A (ja) * 2005-08-02 2007-02-15 Casio Comput Co Ltd 画像処理装置

Also Published As

Publication number Publication date
WO2009154294A1 (ja) 2009-12-23
US20110135206A1 (en) 2011-06-09
JPWO2009154294A1 (ja) 2011-12-01

Similar Documents

Publication Publication Date Title
JP4771186B2 (ja) 移動量抽出装置及びプログラム、画像補正装置及びプログラム並びに記録媒体
US10755428B2 (en) Apparatuses and methods for machine vision system including creation of a point cloud model and/or three dimensional model
KR102006043B1 (ko) 깊이 카메라를 이용한 머리 포즈 추적 기법
JP6170395B2 (ja) 撮像装置およびその制御方法
US11610331B2 (en) Method and apparatus for generating data for estimating three-dimensional (3D) pose of object included in input image, and prediction model for estimating 3D pose of object
WO2012063468A1 (ja) 画像処理装置、画像処理方法、およびプログラム
JP6736362B2 (ja) 画像処理装置、画像処理方法、プログラム
US11222409B2 (en) Image/video deblurring using convolutional neural networks with applications to SFM/SLAM with blurred images/videos
JP2009134509A (ja) モザイク画像生成装置及びモザイク画像生成方法
JP5388072B2 (ja) モーションブラー制御装置、方法、及びプログラム
CN113556464A (zh) 拍摄方法、装置及电子设备
JP7082713B2 (ja) ローリングシャッター画像/ビデオのsfm/slamに対するアプリケーションで畳み込みニューラルネットワークを用いる画像/ビデオにおけるローリングシャッター補正
JP6347610B2 (ja) 画像処理装置および3次元空間情報取得方法
US20230281750A1 (en) Method of plane tracking
JP4017578B2 (ja) 手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体
JP6154759B2 (ja) カメラパラメータ推定装置、カメラパラメータ推定方法及びカメラパラメータ推定プログラム
US11954801B2 (en) Concurrent human pose estimates for virtual representation
JP2011242134A (ja) 画像処理装置、画像処理方法、プログラム、及び電子装置
JP5590680B2 (ja) 映像合成装置、映像合成方法、および映像合成プログラム
US11756177B2 (en) Temporal filtering weight computation
JP2020120362A (ja) 画像処理装置、画像処理方法、及びプログラム
JP7074694B2 (ja) 情報端末装置及びプログラム
JP7164873B2 (ja) 画像処理装置及びプログラム
JP4286301B2 (ja) 手ぶれ補正装置、手ぶれ補正方法および手ぶれ補正プログラムを記録した記録媒体
JP2007072593A (ja) プログラム、数値計算装置及び数値計算方法

Legal Events

Date Code Title Description
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: 20110510

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

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

Free format text: PAYMENT UNTIL: 20140701

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4771186

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees