JP2005027046A - Image processor and image processing method - Google Patents

Image processor and image processing method Download PDF

Info

Publication number
JP2005027046A
JP2005027046A JP2003190537A JP2003190537A JP2005027046A JP 2005027046 A JP2005027046 A JP 2005027046A JP 2003190537 A JP2003190537 A JP 2003190537A JP 2003190537 A JP2003190537 A JP 2003190537A JP 2005027046 A JP2005027046 A JP 2005027046A
Authority
JP
Japan
Prior art keywords
image information
image
address
corrected
corrected image
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.)
Withdrawn
Application number
JP2003190537A
Other languages
Japanese (ja)
Inventor
Nobuhiro Tsunashima
宣浩 綱島
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2003190537A priority Critical patent/JP2005027046A/en
Publication of JP2005027046A publication Critical patent/JP2005027046A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Studio Devices (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To make a corrected image after blurring correction processing equal to the size equal to the photographed range in an image processor and an imaging processing method for correcting blurring of an image obtained by picking up an object by image processing. <P>SOLUTION: In this image processor, an address converting part 32 converts a second address for specifying a pixel of the correction image obtained by correcting image blurring into a third address on the basis of a detected blurring amount, an interpolation image information generating part 34 reads a plurality of pieces of image information stored in accordance with a first address near the third address from image information stored in an image information storing part 31, performs an interpolation operation and generates interpolation image information corresponding to a second address. Further, the image processor updates the generated interpolation image information as correction image information in a correction image information storing part 33 and reads the whole correction image information stored in the correction image information storing part 33 corresponding to the second address in accordance with the end of updating processing of the correction image information for one frame. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、電子式の振れ補正に関するものであり、詳しくは、被写体を撮像した画像の振れを画像処理によって補正する画像処理装置及び画像処理方法に関する。
【0002】
【従来の技術】
ハンディタイプのカメラ装置では、小型化、軽量化、さらには倍率の高いズームレンズを搭載したことにより、撮影者の手振れに起因した撮像画像の振れが大きな問題となっている。この問題に対処すべく、様々な振れ補正技術が考案、実施されている。
【0003】
振れ補正技術は、光学式振れ補正技術と、電子式振れ補正技術とに大別することができる。光学式振れ補正技術とは、カメラ本体の振れに対して、レンズやCCD(Charge Coupled Device)の撮像面の位置を移動させることで振れを相殺し、振れのない画像を撮像する方式である(例えば、特許文献1参照。)。
【0004】
一方、電子式振れ補正技術とは、CCDや、画像信号を取り込んだメモリの読み出しアドレスを制御することで被写体を撮像した画像の画像処理を行い、振れを補正する技術である。具体的には、撮像されメモリに書き込まれた画像信号から、振れを相殺するため、メモリの所定の領域の画像信号を、あたかも画像を切り出すようにして読み出し、振れのない画像信号を取得する方式などが知られている(例えば、特許文献2参照。)。
【0005】
光学式振れ補正技術には、画像の振れ量を検出するセンサや、頂角可変プリズム(VAP)、CCDを駆動するためのアクチュエータが必要となるため、カメラ装置が大型化し、コストが増加してしまうといった問題がある。したがって、小型化、低コスト化が望まれるカメラ装置では、振れ補正技術として、部品点数の増加及びそれに伴うコストアップなどがない、電子式振れ補正技術が用いられることになる。
【0006】
【特許文献1】
特開平6−3726号公報
【特許文献2】
特開平11−195125号公報
【0007】
【発明が解決しようとする課題】
しかしながら、電子式振れ補正技術は、図10に示すように、カメラ装置が備えるCCDの撮像面で撮像された撮像画像G1の一部を切り出した出力画像G2を用いて振れ補正を行うため、カメラ装置から出力される画像が実際の撮像範囲より狭くなってしまう。
【0008】
したがって、このような電子式振れ補正を行うカメラ装置にて、大きな振れを補正しようとした場合、切り出す画像の範囲が非常に狭くなってしまうといった問題がある。また、逆に、切り出す画像のサイズを大きくしようとする場合、補正できる振れの範囲が非常に小さくなってしまうことになる。
【0009】
そこで、本発明は上述したような問題を解決するために案出されたものであり、電子式振れ補正技術において、出力画像のサイズを、撮像範囲と同等にするような振れ補正を行う画像処理装置及び画像処理方法を提供することを目的とする。
【0010】
【課題を解決するための手段】
上述の目的を達成するために、本発明に係る画像処理装置は、被写体を撮像する際に検出される振れ量を相殺するように、上記被写体を撮像した画像を画像処理することで振れ補正をする画像処理装置において、上記被写体を撮像した上記画像の画像情報を、上記画像の画素を特定する第1のアドレスに対応させて記憶する画像情報記憶手段と、上記画像の振れを補正した補正画像の補正画像情報を、上記補正画像の画素を特定する第2のアドレスに対応させて記憶する補正画像情報記憶手段と、検出された上記振れ量に基づいて、上記第2のアドレスを第3のアドレスに変換するアドレス変換手段と、上記画像情報記憶手段に記憶された上記画像の画像情報から、上記アドレス変換手段によって変換された上記第3のアドレスの近傍にある上記第1のアドレスに対応して記憶されている上記画像情報を複数読み出す画像情報読み出し手段と、上記画像情報読み出し手段よって読み出された上記複数の画像情報を用いて補間演算をし、上記アドレス変換手段による変換前の上記第2のアドレスに対応した補間画像情報を生成する補間画像情報生成手段と、上記補間画像情報生成手段によって生成された上記補間画像情報を、上記アドレス変換手段による変換前の上記第2のアドレスに対応させ、上記補正画像情報として上記補正画像情報記憶手段に更新する画像情報更新手段と、上記画像情報更新手段による、1フレーム分の上記補正画像情報の上記補正画像情報記憶手段への更新処理が終了したことに応じて、上記補正画像情報記憶手段に上記第2のアドレスに対応して記憶されている上記補正画像情報を全て読み出す補正画像情報読み出し手段とを備えることを特徴とする。
【0011】
また、上述の目的を達成するために、本発明に係る画像処理方法は、被写体を撮像する際に検出される振れ量を相殺するように、上記被写体を撮像した画像を画像処理することで振れ補正をする画像処理装置の画像処理方法において、上記被写体を撮像した上記画像の画像情報を、上記画像の画素を特定する第1のアドレスに対応させて画像情報記憶手段に記憶させる画像情報記憶ステップと、上記画像の振れを補正した補正画像の補正画像情報を、上記補正画像の画素を特定する第2のアドレスに対応させて補正画像情報記憶手段に記憶させる補正画像情報記憶ステップと、検出された上記振れ量に基づいて、上記第2のアドレスを第3のアドレスに変換するアドレス変換ステップと、上記画像情報記憶手段に記憶された上記画像の画像情報から、上記アドレス変換ステップで変換された上記第3のアドレスの近傍にある上記第1のアドレスに対応して記憶されている上記画像情報を複数読み出す画像情報読み出しステップと、読み出された上記複数の画像情報を用いて補間演算をし、変換前の上記第2のアドレスに対応した補間画像情報を生成する補間画像情報生成ステップと、生成された上記補間画像情報を、変換前の上記第2のアドレスに対応させ、上記補正画像情報として上記補正画像情報記憶手段に更新する画像情報更新ステップと、1フレーム分の上記補正画像情報の上記補正画像情報記憶手段への更新処理が終了したことに応じて、上記補正画像情報記憶手段に上記第2のアドレスに対応して記憶されている上記補正画像情報を全て読み出す補正画像情報読み出しステップとを備えることを特徴とする。
【0012】
また、上述の目的を達成するために、本発明に係る画像処理装置は、被写体を撮像する際に検出される振れ量を相殺するように、上記被写体を撮像した画像を画像処理することで振れ補正をする画像処理装置において、上記被写体を撮像したn(nは、2以上の自然数)フレームの上記画像の画像情報を、上記画像の画素を特定する第1のアドレスに対応させて記憶する画像情報記憶手段と、上記画像の振れを補正した補正画像の補正画像情報を、上記補正画像の画素を特定する第2のアドレスに対応させて記憶する補正画像情報記憶手段と、検出された上記振れ量に基づいて、上記第2のアドレスを第3のアドレスに変換するアドレス変換手段と、上記アドレス変換手段によって変換された上記第3のアドレスが、上記画像情報記憶手段に上記画像情報が記憶されている上記nフレームの上記画像上の任意の画素を特定するアドレスであるかどうかを判定する判定手段と、上記判定手段によって、上記第3のアドレスが、上記nフレームの上記画像上の任意の画素を特定するアドレスであると判定された場合、上記画像情報記憶手段に記憶されている上記画像画像情報から、上記アドレス変換手段によって変換された上記第3のアドレスの近傍にある上記第1のアドレスに対応して記憶されている上記画像情報を複数読み出す画像情報読み出し手段と、上記画像情報読み出し手段によって読み出された上記複数の画像情報を用いて補間演算をし、上記アドレス変換手段による変換前の上記第2のアドレスに対応した補間画像情報を生成する補間画像情報生成手段と、上記補間画像情報生成手段によって生成された上記補間画像情報を、上記アドレス変換手段による変換前の上記第2のアドレスに対応させ、上記補正画像情報として上記補正画像情報記憶手段に更新する画像情報更新手段と、上記画像情報更新手段による、1フレーム分の上記補正画像情報の上記補正画像情報記憶手段への更新処理が終了したことに応じて、上記補正画像情報記憶手段に上記第2のアドレスに対応して記憶されている上記補正画像情報を全て読み出す補正画像情報読み出し手段とを備えることを特徴とする。
【0013】
また、上述の目的を達成するために本発明に係る画像処理方法は、被写体を撮像する際に検出される振れ量を相殺するように、上記被写体を撮像した画像を画像処理することで振れ補正をする画像処理装置の画像処理方法において、上記被写体を撮像したn(nは、2以上の自然数)フレームの上記画像の画像情報を、上記画像の画素を特定する第1のアドレスに対応させて画像情報記憶手段に記憶させる画像情報記憶ステップと、上記画像の振れを補正した補正画像の補正画像情報を、上記補正画像の画素を特定する第2のアドレスに対応させて補正画像情報記憶手段に記憶させる補正画像情報記憶ステップと、検出された上記振れ量に基づいて、上記第2のアドレスを第3のアドレスに変換するアドレス変換ステップと、変換された上記第3のアドレスが、上記画像情報記憶手段に上記画像情報が記憶されている上記nフレームの上記画像上の任意の画素を特定するアドレスであるかどうかを判定する判定ステップと、上記第3のアドレスが、上記nフレームの上記画像上の任意の画素を特定するアドレスであると判定された場合、上記画像情報記憶手段に記憶されている上記画像情報から、上記第3のアドレスの近傍にある上記第1のアドレスに対応して記憶されている上記画像情報を複数読み出す画像情報読み出しステップと、読み出された上記複数の画像情報を用いて補間演算をし、変換前の上記第2のアドレスに対応した補間画像情報を生成する補間画像情報生成ステップと、生成された上記補間画像情報を、変換前の上記第2のアドレスに対応させ、上記補正画像情報として上記補正画像情報記憶手段に更新する画像情報更新ステップと、1フレーム分の上記補正画像情報の上記補正画像情報記憶手段への更新処理が終了したことに応じて、上記補正画像情報記憶手段に上記第2のアドレスに対応して記憶されている上記補正画像情報を全て読み出す補正画像情報読み出しステップとを備えることを特徴とする。
【0014】
また、上述の目的を達成するために本発明に係る画像処理装置は、被写体を撮像する際に検出される振れ量を相殺するように、上記被写体を撮像した画像を画像処理することで振れ補正をする画像処理装置において、上記被写体を撮像したn(nは、2以上の自然数)フレームの上記画像の画像情報を、上記画像の画素を特定する第1のアドレスに対応させて記憶する画像情報記憶手段と、上記画像情報記憶手段に上記画像情報が記憶された上記nフレームの上記画像のうち、第m(1≦m<n)番目に撮像された上記画像の振れを補正した補正画像の補正画像情報を、上記補正画像の画素を特定する第2のアドレスに対応させて記憶する補正画像情報記憶手段と、検出された上記振れ量に基づいて、上記第2のアドレスを第3のアドレスに変換するアドレス変換手段と、上記アドレス変換手段によって変換された上記第3のアドレスが、上記画像情報記憶手段に上記画像情報が記憶されている上記nフレームの上記画像のうち、上記m番目に撮像された画像以外の画像上の任意の画素を特定するアドレスであるかどうかを判定する判定手段と、上記判定手段によって、上記第3のアドレスが、上記nフレームの上記画像のうち、上記m番目に撮像された画像以外の画像上の任意の画素を特定するアドレスであると判定された場合、上記画像情報記憶手段に記憶されている上記画像画像情報から、上記アドレス変換手段によって変換された上記第3のアドレスの近傍にある上記第1のアドレスに対応して記憶されている上記画像情報を複数読み出す画像情報読み出し手段と、上記画像情報読み出し手段によって読み出された上記複数の画像情報を用いて補間演算をし、上記アドレス変換手段による変換前の上記第2のアドレスに対応した補間画像情報を生成する補間画像情報生成手段と、上記補間画像情報生成手段によって生成された上記補間画像情報を、上記アドレス変換手段による変換前の上記第2のアドレスに対応させ、上記補正画像情報として上記補正画像情報記憶手段に更新する画像情報更新手段と、上記画像情報更新手段による、1フレーム分の上記補正画像情報の上記補正画像情報記憶手段への更新処理が終了したことに応じて、上記補正画像情報記憶手段に上記第2のアドレスに対応して記憶されている上記補正画像情報を全て読み出す補正画像情報読み出し手段とを備えることを特徴とする。
【0015】
また、上述の目的を達成するために本発明に係る画像処理方法は、被写体を撮像する際に検出される振れ量を相殺するように、上記被写体を撮像した画像を画像処理することで振れ補正をする画像処理装置の画像処理方法において、上記被写体を撮像したn(nは、2以上の自然数)フレームの上記画像の画像情報を、上記画像の画素を特定する第1のアドレスに対応させて画像情報記憶手段に記憶させる画像情報記憶ステップと、上記画像情報記憶手段に上記画像情報が記憶された上記nフレームの上記画像のうち、第m(1≦m<n)番目に撮像された上記画像の振れを補正した補正画像の補正画像情報を、上記補正画像の画素を特定する第2のアドレスに対応させて補正画像情報記憶手段に記憶させる補正画像情報記憶ステップと、検出された上記振れ量に基づいて、上記第2のアドレスを第3のアドレスに変換するアドレス変換ステップと、変換された上記第3のアドレスが、上記画像情報記憶手段に上記画像情報が記憶されている上記nフレームの上記画像のうち、上記m番目に撮像された画像以外の画像上の任意の画素を特定するアドレスであるかどうかを判定する判定ステップと、上記第3のアドレスが、上記nフレームの上記画像のうち、上記m番目に撮像された画像以外の画像上の任意の画素を特定するアドレスであると判定された場合、上記画像情報記憶手段に記憶されている上記画像画像情報から、上記第3のアドレスの近傍にある上記第1のアドレスに対応して記憶されている上記画像情報を複数読み出す画像情報読み出しステップと、読み出された上記複数の画像情報を用いて補間演算をし、変換前の上記第2のアドレスに対応した補間画像情報を生成する補間画像情報生成ステップと、生成された上記補間画像情報を、変換前の上記第2のアドレスに対応させ、上記補正画像情報として上記補正画像情報記憶手段に更新する画像情報更新ステップと、1フレーム分の上記補正画像情報の上記補正画像情報記憶手段への更新処理が終了したことに応じて、上記補正画像情報記憶手段に上記第2のアドレスに対応して記憶されている上記補正画像情報を全て読み出す補正画像情報読み出しステップとを備えることを特徴とする。
【0016】
【発明の実施の形態】
以下、本発明に係る画像処理装置及び画像処理方法の実施の形態を図面を参照にして詳細に説明する。
【0017】
図1を用いて、本発明の実施の形態として示すカメラ装置20の構成について説明をする。
【0018】
カメラ装置20は、撮像レンズ1と、CCD(Charge Coupled Device)2と、サンプルホールド(S/H)回路3と、AGC(Auto Gain Controller)回路4と、A/D(Analog to Digital)コンバータ5と、Y/C分離部6と、カメラプロセス部7と、振れ量検出部8と、補正画像生成部9と、D/A(Digital to Analog)コンバータ10と、表示部11と、レコーダ部12とを備えており、被写体を動画像として撮像し、記録する撮像装置である。
【0019】
撮像レンズ1から入射された被写体からの光は、CCD2によって電気信号に変換される。CCD2の出力は、サンプルホールド(S/H)回路3を介して、AGC回路4に入力される。AGC回路4の出力は、A/Dコンバータ5によりデジタル信号に変換される。Y/C分離部6は、A/Dコンバータ5で変換されたデジタルビデオ信号を、色信号成分と輝度信号成分とに分離し、カメラプロセス部7に出力する。
【0020】
カメラプロセス部7は、Y/C分離回路6から出力されたデジタル信号の色信号成分と、輝度信号成分に対して、エッジ強調、ガンマ補正などを行う。カメラプロセス部7からの出力は、デジタルの画像信号として、振れ量検出部8、補正画像生成部9に供給される。
【0021】
振れ量検出部8は、カメラプロセス部7から供給された画像信号から振れ量を検出する。画像信号の振れ量には、撮影者の手振れなどによってカメラ装置20の撮像面が縦、横、斜めといった方向へぶれる撮像面内の水平垂直成分の振れ成分と、光軸を中心にカメラ装置20が回転することによって生じる回転成分とがある。一般に、手振れによる振れ量は、回転成分に較べて、水平垂直成分が多くなる。
【0022】
振れ量検出部8によって検出された振れ量は、補正画像生成部9に供給される。振れ量検出部8による振れ量の検出は、例えば、従来の技術として示した特開平11−195125号公報に記述されている動きベクトルを用いる手法などである。
【0023】
このように動きベクトルを用いて画像信号の振れ量を検出する場合、振れ量検出部8は、図2に示すような構成となる。図2に示すように、振れ量検出部8は、記憶部21と、動きベクトル検出部22と、信頼性評価部23と、動きベクトル決定部24と、回転成分抽出部25と、回転角決定部26とを備えている。
【0024】
記憶部21は、カメラプロセス部7から供給された画像信号を一時的に記憶する。動きベクトル検出部22は、記憶部21に記憶された画像信号と、カメラプロセス部7から供給される画像信号とを比較し、画像信号中の複数の検出領域(例えば、マクロブロック)で動きベクトルを検出する。
【0025】
信頼性評価部23は、動きベクトル検出部22で検出された動きベクトルの信頼性の判定や、移動物体があるかどうかの判定を行う。信頼性評価部23の出力は、動きベクトル決定部24及び回転成分抽出部25に供給される。
【0026】
動きベクトル決定部24は、動きベクトル検出部22で検出された複数の検出領域の各動きベクトルより、画像信号全体としての動きベクトルを決定する。動きベクトル決定部24で決定された画像信号全体としての動きベクトルは、回転成分抽出部25及び補正画像生成部9に供給される。この画像信号全体としての動きベクトルは、上述した振れ量の水平垂直成分に相当する。
【0027】
回転成分抽出部25は、信頼性評価部23で信頼性が確認された複数の動きベクトルから、動きベクトル決定部24より供給された画像信号全体としての動きベクトルを減算し、その結果を複数の動きベクトルの回転成分として抽出する。回転成分抽出部25で抽出された複数の動きベクトルの回転成分は、回転角決定部26に供給される。
【0028】
回転角決定部26は、回転成分抽出部25から供給された複数の動きベクトルの回転成分から、画像信号全体の回転角と、回転の中心位置とを決定する。回転角決定部26で決定された画像信号全体の回転角、回転の中心は補正画像生成部9に供給される。この画像信号全体の回転角は、上述した振れ量の回転成分に相当する。
【0029】
このようにして、振れ量検出部8で検出された画像信号全体の動きベクトルは、振れ量の水平垂直成分として、また、画像信号全体の回転角は、振れ量の回転成分として補正画像生成部9に供給される。
【0030】
なお、カメラ装置20では、振れ量検出部8を図2に示すような構成とし、動きベクトルから振れ量の水平垂直成分と、回転成分とを検出するようにしているが、例えば、加速度センサや、角速度センサをカメラ装置20に搭載させ、振れ量の水平垂直成分と、回転成分とを検出するようにしてもよい。
【0031】
再び、図1に戻りカメラ装置20の構成について説明を続ける。補正画像生成部9は、カメラプロセス部7から供給された画像信号を、振れ量検出部8から供給された振れ量を相殺するように補正して、D/A変換回路10に出力する。
【0032】
補正画像生成部9は、画像メモリ31と、座標計算部32と、補正画像記録部33と、補間画像生成部34とを備えている。
【0033】
画像メモリ31は、カメラプロセス部7から供給される画像信号をフレーム単位で一時的に格納するバッファメモリである。画像メモリ31に入力される画像信号には、上記画像信号に対応する画像の画素を直交座標上で特定するライトアドレス(X,Y)が与えられ、このライトアドレス(X,Y)に対応づけて画像信号が画像メモリ31に格納される。つまり、画像メモリ31に入力された画像信号は、画像メモリ31のメモリ領域内のアドレス(X,Y)に、輝度情報、色差情報を含んだ画像データとして格納されることになる。
【0034】
なお、ライトアドレス(X,Y)と、アドレス(X,Y)は、同じものである。ライトアドレス(X,Y)は、画像信号を画像メモリ31に書き込む際のアドレスであり、画像メモリ31に書き込まれた後においては、アドレス(X,Y)としている。
【0035】
座標計算部32は、振れ量検出部8から供給される振れ量に基づいて、補正後の画像の出力座標系に設定される正方格子、つまり補正後の画像の画素を特定するアドレスに対応した補正前の画像の画素を特定するアドレスを算出する。補正後の画像の画素を特定するアドレスをリードアドレス(x,y)と呼び、補正前の画像の画素を特定するアドレスをアドレス(xt−1,yt−1)と呼ぶ。
【0036】
具体的には、座標計算部32は、補正後の画像の画素を特定するリードアドレス(x,y)を振れ量検出部8によって検出された振れ量の水平垂直成分であるa,b及び回転成分であるθを用いて、(1)式に示す演算により、補正前の画像の画素を特定するアドレス(xt−1,yt−1)に変換する。このとき、カメラ装置20の演算部の簡略化、演算の高速化のために回転成分θが除去される場合もある。
【0037】
【数1】

Figure 2005027046
【0038】
そして、座標計算部32は、リードアドレス(x,y)から変換したアドレス(xt−1,yt−1)を補間画像生成部34に供給する。
【0039】
補間画像生成部34は、画像メモリ31に記憶された画像データを用いて、アドレス(xt−1,yt−1)に対応した画像データである補間画像データを生成する。
【0040】
補間画像生成部34における補間画像の生成処理は、座標計算部32で、リードアドレス(x,y)から変換したアドレス(xt−1,yt−1)に対応する画像データが、画像メモリ31に格納されていない場合に対処するために行われるものである。例えば、補間画像生成部34は、座標計算部32から供給されるアドレス(xt−1,yt−1)で指定される画素の近傍にある4画素の画像データを、画像メモリ31から読み出して線形補間したり、同じく、座標計算部32から供給されるアドレス(xt−1,yt−1)で指定される画素の近傍にある16画素の画像データを、画像メモリ31から読み出してSINC補間したりすることで、補間画像データを生成する。16画素の画像データを読み出してSINC補間する方が、4画素の画像データを読み出して線形補間する場合よりも生成される補間画像データの精度がよくなるが、演算量が膨大になるため、どちらの補間処理手法を行うかは状況に応じて適宜選択する。
【0041】
補間画像生成部34で生成された補間画像データは、リードアドレス(x,y)で特定される振れ補正後の画像の画像データとして、補正画像記録部33に順次出力される。
【0042】
例えば、図3に示すような、画像フレーム51と、画像フレーム52とを考える。画像フレーム51は、振れ補正前の画像であり、画像フレーム52は、振れ補正後の画像である。画像メモリ31は、図3に示す画像フレーム51に設定した正方格子点における画像データを格納している。補間画像生成部34は、座標計算部32で変換されたアドレス(xt−1,yt−1)で特定される画素の画像データを、画像メモリ31に格納されている画像データを用いて補間演算する。
【0043】
図3に示すように、画像フレーム51、画像フレーム52が、それぞれ4×6の格子点の画像データから構成されているとすると、画像フレーム52は、(1,1)成分、(1,2)成分・ ・ ・というように順次、水平走査方向にリードアドレス(x,y)が指定されることになる。座標計算部32は、このリードアドレス(x,y)の指定に応じて、振れ量検出部8によって検出された振れ量を用い、画像フレーム51のアドレス(xt−1,yt−1)を決定する。
【0044】
補間画像生成部34は、座標計算部32によって求められたアドレス(xt−1,yt−1)に対応する画像データを、画像メモリ31に記憶されている画像データのうち、アドレス(xt−1,yt−1)の近傍にある画素の画像データを用いて補間する。
【0045】
例えば、図3においては、振れ補正をした画像フレーム52を形成するために、リードアドレス(1,1)が指定されると、座標計算部32によって、アドレス(1.6,3.7)に変換される。座標計算部32のアドレス変換によって求められたアドレスに1対1で対応する画像データは画像メモリ31には格納されていないため、補間画像生成部34は、アドレス(1.6,3.7)の近傍にあるアドレス(1,3)、アドレス(1,4)、アドレス(2,3)、アドレス(2,4)の4つの画素の画像データを画像メモリ31から読み出し、線形補間することで補間画像データを生成する。補間画像生成部34で生成された補間画像データは、アドレス(1.6,3.7)の画素に対応する画像データとなる。
【0046】
また、リードアドレス(1,2)が指定されると、座標計算部32によって、アドレス(2.5,4.5)に変換され、座標計算部34は、アドレス(2,4)、アドレス(2,5)、アドレス(3,4)、アドレス(3,5)の4点の画素の画像データを画像メモリ31から読み出し、線形補間することで補間画像データを生成する。補間画像生成部34で生成された補間画像データは、アドレス(2.5,4.5)の画素に対応する画像データとなる。
【0047】
座標計算部32によってアドレス(2.5,4.5)に変換された場合、より精度の高い補間画像データを生成するために補間画像生成部34は、画像メモリ31からアドレス(1,3)、アドレス(1,4)、アドレス(1,5)、アドレス(1,6)、アドレス(2,3)、アドレス(2,4)、アドレス(2,5)、アドレス(2,6)、アドレス(3,3)、アドレス(3,4)、アドレス(3,5)、アドレス(3,6)、アドレス(4,3)、アドレス(4,4)、アドレス(4,5)、アドレス(4,6)の16点の画素の画像データを読み出し、SINC補間をしてもよい。
【0048】
このようにして、画像メモリ31に格納されている画像データから、振れ補正された画像である画像フレーム52の画素の画像データを、補間画像生成部34で生成し、補正画像記録部33に出力する。なお、振れ量検出部8からの振れ量によって振れ補正をした場合に、補間画像生成部34で補間画像データが生成されない場合もある。
【0049】
補正画像記録部33は、リードアドレス(x,y)をアドレスとするようなメモリ領域を備えており、補間画像生成部34から供給された補間画像データを、振れ補正が施された画像データとして格納していく。補正画像記録部33のメモリ領域には、各アドレスに、1フレーム以上前の古い画像データが補間画像生成部34から供給されて格納されている。したがって、新たに補間画像生成部34から画像データが供給された場合、補正画像記録部33のメモリ領域に格納されている古い画像データがアドレス毎に更新されていくことになる。
【0050】
振れ量検出部8によって検出された振れ量によっては、(1)式による変換によって求めたアドレス(xt−1,yt−1)が、画像メモリ31に格納された画像データに対応する画像の画素を特定するために設定した座標範囲を越えてしまうため、補間画像生成部34において、補間画像データを生成できない場合がある。
【0051】
このような場合、補正画像記録部33には、補間画像生成部34から画像データが供給されないため、当該補正画像記録部33に記録されている1フレーム以上前の古い画像データが更新されずそのまま残ることになる。
【0052】
補正画像記録部33は、補間画像生成部34から供給された画像データによって、メモリ領域の更新が終了すると、更新されたメモリ領域及び更新されなかったメモリ領域、つまり、当該補正画像記録部33のメモリ領域に格納されている画像データを全て、D/A変換回路10に出力する。
【0053】
例えば、図4に示すように、振れ補正前の画像を点線枠で示した補正前画像G3とし、振れ補正後の画像を実線枠で示した補正後画像G4とすると、領域S1に対応する補正画像記録部33のメモリ領域では、補間画像生成部34で生成された補間画像データが供給されて更新されることになる。
【0054】
つまり、図4において、補正前画像G3と、補正後画像G4とが重なっている領域S1は、画像メモリ31に記憶された画像データを用いて補間画像生成部34で生成される補間画像データによって、補正後画像G4の領域S1に対応する補正画像記録部33のメモリ領域を更新することで振れが補正されることを示している。補正前画像G3の領域S4の画像データは、振れ補正をする際に、無視され捨てられてしまう。
【0055】
補正後画像G4の領域S2は、補間画像生成部34で補間画像データが生成されない領域であり、領域S1の画像データのみを補正後の画像として出力させた場合、画像が表示されないブランク領域となってしまう。領域S2に対応する補正画像記録部33のメモリ領域には、1フレーム以上前の古い画像データが記憶されているので、補正画像記録部33から画像データを出力する場合、領域S1,領域S2に対応する補正画像記録部33のメモリ領域に格納されている画像データを全て出力させる。
【0056】
再び、図1に戻りカメラ装置20の構成について説明を続ける。補正画像生成部9からの出力は、D/A変換回路10によってアナログ信号に変換され、表示部11及びレコーダ部12に入力される。表示部11は、例えば、液晶ディスプレイなどであり、入力されたアナログの画像信号を画像として表示する。レコーダ部12は、入力されたアナログの画像信号を図示しない記録媒体に記録させる。また、レコーダ部12は、D/A変換回路10の前段にあってもよく、この場合は、デジタル画像信号を図示しない記録媒体に記録することになる。
【0057】
続いて、図5に示すフローチャートを用いて、カメラ装置20による振れ補正処理の動作について説明をする。
【0058】
まず、ステップS1において、座標計算部32は、振れ量検出部8から供給される振れ量の水平垂直成分及び回転成分を用いて、(1)式に示すようなリードアドレス(x,y)を、画像メモリ31に格納されている画像データに対応した画像に設定した直交座標上のアドレス(xt−1,yt−1)に変換する変換式を導出する。
【0059】
【数2】
Figure 2005027046
【0060】
ステップS2において、座標計算部32は、(1)式を用いて、リードアドレス(x,y)を、アドレス(xt−1,yt−1)に変換する。
【0061】
ステップS3において、座標計算部32は、(1)式によって変換されたアドレス(xt−1,yt−1)が、画像メモリ31に格納されている画像データに対応する画像上に設定した直交座標上のアドレスとして存在する場合は、工程をステップS4へと進め、存在しない場合は工程をステップS5へと進める。
【0062】
ステップS4において、座標計算部32は、(1)式によって変換されたアドレス(xt−1,yt−1)を補間画像生成部34に供給する。補間画像生成部34は、画像メモリ31に格納されている画像データから、供給されたアドレス(xt−1,yt−1)の近傍にある画素の画像データを、例えば、4画素分、又は16画素分読み出し、線形補間又はSINC補間により補間画像データを生成する。
【0063】
補間画像生成部34によって生成された補間画像データは、リードアドレス(x,y)をアドレスとする補正画像記録部33のメモリ領域に更新される。
【0064】
ステップS5において、補間画像生成部34は、画像メモリ31から画像データを読み出して、補間画像データを生成する処理を終了どうか判定をする。例えば、ステップS2において、座標計算部32でアドレス(xt−1,yt−1)に変換されたリードアドレス(x,y)が、図3に示す画像フレーム52のリードアドレス(4,6)である場合、補間画像生成部34による補間画像データの生成処理は終了となる。補間画像生成部34による補間画像データの生成処理が終了とならない場合には、工程はステップS2へと戻る。
【0065】
このような、カメラ装置20は、振れ量検出部8によって検出された振れ量の水平垂直成分及び回転成分に基づいて(1)式を導出する。そして、導出した(1)式を用いて変換したアドレス(xt−1,yt−1)に対応する画像データを、補正画像生成部9の画像メモリ31に格納された画像データを用いて補間画像生成部34で生成することで、振れ補正をすることができる。
【0066】
そして、振れ補正した画像データを補正画像記録部33に更新し、補正画像記録部33の更新した画像データと、更新されていない画像データを全て出力することで、画像信号の補正時に生ずるブランク部分を補間することができる。
【0067】
上述したような構成の補正画像生成部9を備えるカメラ装置20は、主にカメラ装置20本体の移動があまりない場合、つまり、当該カメラ装置20を手に持って、撮影者がほぼ定位置にて被写体を撮像する場合の手振れを抑制するのに特に有効な構成となっている。
【0068】
カメラ装置20が移動する場合、つまり、当該カメラ装置20を手に持って、撮影者が移動したり、パンやチルトなどによって撮影方向を変更した場合などには、補正画像生成部9の画像メモリ31の容量を2フレーム以上とする必要がある。撮影者がカメラ装置20を持って移動しながら撮影をする場合、画像信号の補正時に生ずるブランク部分を、補正画像記録部33に記録されている1フレーム前の画像データのみでは補間しきれないため、画像メモリ31のメモリ容量を増加し、過去数フレーム分の画像データを格納させ、この画像データを利用してブランク部分を補間するようにする。
【0069】
図6に示すフローチャートを用いて、上述したような画像メモリ31の容量を増加した構成とすることで、移動しながらの被写体の撮像に対応したカメラ装置20による振れ補正処理の動作について説明をする。
【0070】
まず、ステップS11において、座標計算部32は、振れ量検出部8から供給される振れ量の水平垂直成分及び回転成分を用いて、(2)式に示すようなリードアドレス(xt−(n−1),yt−(n−1))を、画像メモリ31に格納されている画像データに対応した画像に設定した直交座標上のアドレス(xt―n,yt―n)に変換する変換式を導出する。
【0071】
【数3】
Figure 2005027046
【0072】
ステップS12において、座標計算部32は、(2)式を用いて、リードアドレス(xt−(n−1),yt−(n−1))を、アドレス(xt−n,yt−n)に変換する。
【0073】
例えば、図7に示すように画像メモリ31に時刻t−1,t−2,t−3,t−4,t−5における画像フレームが5枚格納されている場合、まず、n=1、つまり、リードアドレス(x,y)が、時刻t−1の画像フレームのアドレス(xt−1,yt−1)に(2)式によって変換される。
【0074】
ステップS13において、座標計算部32は、(2)式によって変換されたアドレス(xt−n,yt−n)が、画像メモリ31に格納されている画像データに対応する画像上に設定した直交座標上のアドレスとして存在する場合は、工程をステップS14へと進め、存在しない場合は工程をステップS15へと進める。
【0075】
ステップS14において、座標計算部32は、(2)式によって変換されたアドレス(xt−n,yt−n)を補間画像生成部34に供給する。補間画像生成部34は、画像メモリ31に格納されている画像データから、供給されたアドレス(xt−n,yt−n)の近傍にある画素の画像データを、例えば、4画素分、又は16画素分読み出し、線形補間又はSINC補間により補間画像データを生成する。
【0076】
補間画像生成部34によって生成された補間画像データは、リードアドレス(xt−(n−1),yt−(n−1))をアドレスとする補正画像記録部33のメモリ領域に更新される。
【0077】
ステップS15において、補間画像生成部34は、画像メモリ31から画像データを読み出して、補間画像データを生成する処理を終了するかどうかを判定する。補間画像生成部34による補間画像データの生成処理が終了とならない場合には、工程はステップS12へと戻る。
【0078】
ステップS16において、座標計算部32は、ステップS13において、(2)式によって変換されたアドレス(xt−n,yt−n)が、画像メモリ31に格納されている画像データに対応する画像上に設定された直交座標上のアドレスでなかったことに応じて、1フレームだけ前の時刻の画像フレームを画像メモリ31から選択する。
【0079】
例えば、図7に示すような時刻の5枚の画像フレームが、画像メモリ31に格納されている場合において、(2)式によって変換されたアドレス(xt−1,yt−1)が、画像メモリ31に格納されている時刻t−1の画像フレームに設定された直交座標上のアドレスでなかったとすると、時刻t−2の画像フレームが選択されることになる。
【0080】
ステップS17において、座標計算部32は、(2)式を用いて、リードアドレス(xt−(n−1),yt−(n−1))を、ステップS16で選択された画像フレームのアドレス(xt−n,yt−n)に変換する。
【0081】
例えば、図7に示すような時刻の5枚の画像フレームが、画像メモリ31に格納されている場合において、n=2、つまり、リードアドレス(xt−1,yt−1)が、時刻t−2の画像フレームのアドレス(xt−2,yt−2)に(2)式によって変換される。
【0082】
ステップS18において、座標計算部32は、(2)式によって変換されたアドレス(xt−n,yt−n)が、画像メモリ31に格納されている画像データに対応する画像上に設定した直交座標上のアドレスとして存在する場合は、工程をステップS19へと進め、存在しない場合は工程ステップS16へと戻る。
【0083】
例えば、図7に示すような時刻の5枚の画像フレームが、画像メモリ31に格納されている場合において、時刻t−2の画像フレームにおいても、(2)式で変換されたアドレスがなかった場合、ステップS16からの工程を時刻t−3,t−4の画像フレームに対しても実行することになる。したがって、画像メモリ31の容量が多ければ多いほど、格納可能な画像フレーム数も増加するため、ブランク部分を補間するための画像データが増えることになり、より確実な補間処理をすることができる。
【0084】
ステップS19において、座標計算部32は、(2)式によって変換されたアドレス(xt−n,yt−n)を補間画像生成部34に供給する。補間画像生成部34は、画像メモリ31に格納されている画像データから、供給されたアドレス(xt−n,yt−n)の近傍にある画素の画像データを、例えば、4画素分、又は16画素分読み出し、線形補間又はSINC補間により補間画像データを生成する。
【0085】
補間画像生成部34によって生成された補間画像データは、リードアドレス(xt−(n−1),yt−(n−1))をアドレスとする補正画像記録部33のメモリ領域に更新される。
【0086】
ステップS19の工程が終了すると、ステップS15へと工程を進め終了判定を行う。
【0087】
このように、カメラ装置20は、補正画像生成部9の画像メモリ31の容量を増加し、数フレーム分の画像データを格納することで、振れ補正時のブランク部分を補間する画像データが増加するため、当該カメラ装置20を持って撮影者が移動撮影を行った場合でも、確実にブランク部分の補間をすることが可能となる。
【0088】
また、補正画像生成部9は、画像メモリ31に格納された過去の画像フレームを用いて、ブランク部分の補間をするばかりでなく、未来の画像フレームを用いて、ブランク部分の補間をすることもできる。これは、撮影者の手振れの量や、カメラの移動方向などによっては、過去の画像フレームを用いるより、未来の画像フレームを用いた方が、ブランク部分の補間ができることがあるためである。
【0089】
実際には撮像されていない未来の画像信号を用いることは当然できない。そこで、十分多くのフレーム数の画像信号を画像メモリ31に格納し、例えば、格納した画像フレームの時間的に中間となる画像フレームを現在の画像フレームとする。また、現在の画像フレームよりも時間的に先の画像フレームを未来の画像フレームとし、時間的に後の画像フレームを過去の画像フレームとする。
【0090】
このように定義された擬似的な未来の画像フレームを用いると、過去の画像フレームを用いた場合よりもブランク部分を補間する精度が非常に高くなるため、未来の画像フレームと、過去の画像フレームとを用いて、振れ補正処理をすることで、画像信号の振れ補正時に生ずるブランク部分を、より確実に補間することができる。もちろん、未来の画像フレームのみを用いてブランク部分の補間をすることも可能である。
【0091】
例えば、図8に示すように画像メモリ31に9フレーム分の画像フレームを格納する場合を考える。このとき実時間をTとすると、画像メモリ31には、時刻t−1,t−2,t−3,t−4,t−5,t−6,t−7,t−8,t−9における9枚の画像フレームが格納されることになる。擬似的な未来の画像フレームという概念を用いる場合、実時間Tに対する仮想時間をT’とすると、この9枚の画像フレームは、それぞれ、時刻t’+4,t’+3,t’+2,t’+1,t’,t’−1,t’−2,t’−3,t’−4における画像フレームとなる。このうち時刻t’+4,t’+3,t’+2,t’+1における画像フレームが擬似的な未来の画像フレームとなる。
【0092】
擬似的な未来の画像フレームを用いた場合の補正画像生成部9の動作は、図6に示したフローチャートを用いて説明した動作と全く同様であり、実時間Tにおける、時刻t−5の画像フレームを中心として、時間的に前後する画像フレームの画像データから読み出した画像データを用いて、補間画像生成部34でブランク部分を補う補間画像データを生成し、補正画像記録部33を更新していく。
【0093】
過去の画像フレームを用いる場合は、上述した(2)式を用いることになる。
【0094】
【数4】
Figure 2005027046
【0095】
また、未来の画像フレームを用いる場合は(3)式を用いて、画像メモリ31に格納されている画像フレームのアドレス(xt+n,yt+n)を算出することになる。
【0096】
【数5】
Figure 2005027046
【0097】
また、図6に示したフローチャートのステップS16における過去の画像フレームと、未来の画像フレームの選択ポリシーは、例えば、画像メモリ31に格納されている過去の画像フレームを全て選択し、該当する画像データがなかった場合に、未来の画像フレームを用いるようにしてもよいし、過去の画像フレームと、未来の画像フレームとを交互に選択するようにしてもよい。
【0098】
しかし、このように、画像メモリ31に格納した画像フレームから擬似的に生成した未来の画像フレームという概念を用いる場合、リアルタイム処理ができないことになる。これは、画像メモリ31には、当然のことだが、過去の画像フレームしか格納することはできず、現在のフレームとして定義した画像フレームは、過去の画像フレームであり、補正画像として出力する際にタイムラグが生ずるためである。
【0099】
ただし、一度撮影し、記録した画像を用いたオフライン処理にて、上述した擬似的に生成した未来の画像フレームを用いて振れ補正処理をする場合、時間遅れが問題とならないため、非常に有効な手法となる。例えば、カメラ装置20の表示部11には、リアルタイムに撮像された画像を表示させ、レコーダ12で記録媒体に記録させる画像信号を擬似的な未来の画像フレームを用いてブランク部分を補間した画像信号とすることで、実用上の問題も回避することができる。
【0100】
このように擬似的な未来の画像フレームを定義することで決まる現在の時刻において撮像された画像を、図9に示す画像G11とすると、カメラ装置20は、画像G11の振れ補正処理をする際に、上記現在の時刻に対して微小時間前後にある数フレームの画像データを用いて、補間画像生成部34で生成した補間画像データによってブランク部分B1を補った画像G12を、振れ補正処理後の画像として出力することができる。
【0101】
また、本発明の実施の形態として示したカメラ装置20は、従来の技術として説明した画像の一部を切り取って、手振れ補正処理する手法と組み合わせて用いてもよい。
【0102】
例えば、CCD2の撮像面は、NTSC(National Television System Standard Committee)方式のテレビジョン信号に対して、十分高い解像度となっている場合がある。つまり、このようなCCD2を搭載するカメラ装置20で、被写体を撮像した画像信号を、NTSC方式のテレビジョン信号とする場合には、振れ補正をするために従来の技術として用いられている撮像した画像の一部を切り取る手法を用いても、振れ量が少ない場合にはブランク部分を生じないことになる。
【0103】
しかし、カメラ装置20の振れ量が大きくなり、振れ補正に使用できるCCD2で撮像された画像信号のマージンを越えてしまった場合、つまり所定のしきい値以上の振れ量であった場合、画像の一部を切り取って振れ補正をする手法が適用できずブランク部分が生じてしまうことになる。
【0104】
このときに、上述した補正画像生成部9によるブランク部分の補間処理を実行することで、確実な振れ補正処理を行うことができる。
【0105】
【発明の効果】
以上の説明からも明らかなように、本発明は、撮像した被写体の画像情報を画像情報記憶手段に記憶し、記憶された上記画像情報のうち、振れ量に応じて指定される第3のアドレスの近傍にある画像情報を複数読み出し、読み出した複数の画像情報を用いて補間演算することで、上記第3のアドレスに対応する補間画像情報を生成する。この生成された補間画像情報を、補正画像情報記憶手段に第2のアドレスに対応させて更新して記憶させることで、振れ補正処理を施した補正画像情報を取得する。
【0106】
そして、補正画像情報記憶手段に記憶された補正画像情報を読み出す際、新たに更新されて記憶された画像情報だけでなく、補正画像情報記憶手段に既に記憶されている時間的に過去に撮像された画像情報も補正画像情報として読み出す。
【0107】
これにより、被写体を撮像した画像の振れ補正処理をする際に、補正処理後の補正画像の出力画像サイズを、撮像範囲とほぼ同等にすることが可能となる。また、振れ補正処理時に発生するブランク部分を、振れ補正の対象となる画像に対して微小時間前後に撮像された画像の画像情報を用いて補間をすることで、視覚的な違和感が少ない補正画像を出力させることを可能とする。
【0108】
さらに、撮像範囲と、補正画像の画像サイズがほぼ同等となるので、ビデオ機器などに搭載させた場合、オンラインの振れ補正処理のみだけではなく、オフライン時の振れ補正処理にも適用することが可能となる。
【図面の簡単な説明】
【図1】本発明の実施の形態として示すカメラ装置の構成を説明するための図である。
【図2】同カメラ装置が備える振れ量検出部の構成の一例を説明するための図である。
【図3】同カメラ装置が備える画像メモリから画像データを読み出す際の手法について説明するための図である。
【図4】同カメラ装置が備える補正画像記録部から出力される画像データについて説明するための図である。
【図5】同カメラ装置における振れ補正処理動作について説明するためのフローチャートである。
【図6】同カメラ装置において、画像メモリの容量を増加させた場合の振れ補正処理動作について説明するためのフローチャートである。
【図7】同カメラ装置において、容量が増加された画像メモリに格納された画像フレームを示した図である。
【図8】同カメラ装置において、擬似的な未来の画像フレームを用いる場合に、画像メモリに格納された画像フレームを示した図である。
【図9】同カメラ装置において、擬似的な未来の画像フレームを用いる場合に、出力される画像について説明するための図である。
【図10】従来の技術として示すカメラ装置における振れ補正処理の一例を説明するための図である。
【符号の説明】
7 カメラプロセス部、8 振れ量検出部、9 補正画像生成部、31 画像メモリ、32 座標計算部、33 補正画像記録部、34 補間画像生成部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to electronic shake correction, and more particularly to an image processing apparatus and an image processing method for correcting shake of an image obtained by imaging a subject by image processing.
[0002]
[Prior art]
In the handy-type camera device, the downsizing, the weight reduction, and the high-magnification zoom lens are mounted, so that the shake of the captured image due to the camera shake of the photographer becomes a big problem. In order to deal with this problem, various shake correction techniques have been devised and implemented.
[0003]
The shake correction technology can be broadly divided into an optical shake correction technology and an electronic shake correction technology. The optical shake correction technique is a method of capturing a non-shake image by canceling the shake by moving the position of the imaging surface of a lens or a CCD (Charge Coupled Device) with respect to the shake of the camera body ( For example, see Patent Document 1.)
[0004]
On the other hand, the electronic shake correction technique is a technique for correcting shake by performing image processing of an image obtained by capturing an image of a subject by controlling a read address of a CCD or a memory that has captured an image signal. Specifically, in order to cancel out the shake from the image signal that has been picked up and written in the memory, the image signal in a predetermined area of the memory is read out as if it were cut out to obtain an image signal without shake (For example, refer to Patent Document 2).
[0005]
The optical shake correction technology requires a sensor that detects the amount of shake of the image, a variable apex angle prism (VAP), and an actuator for driving the CCD, which increases the size of the camera device and increases the cost. There is a problem such as. Therefore, in a camera device that is desired to be reduced in size and cost, an electronic shake correction technique that does not increase the number of parts and increase the cost associated therewith is used as the shake correction technique.
[0006]
[Patent Document 1]
JP-A-6-3726
[Patent Document 2]
JP 11-195125 A
[0007]
[Problems to be solved by the invention]
However, as shown in FIG. 10, the electronic shake correction technology performs shake correction using an output image G2 obtained by cutting out a part of a captured image G1 imaged on the imaging surface of a CCD included in the camera device. The image output from the apparatus becomes narrower than the actual imaging range.
[0008]
Therefore, when a camera apparatus that performs such electronic shake correction attempts to correct a large shake, there is a problem that the range of an image to be cut out becomes very narrow. Conversely, when attempting to increase the size of the image to be cut out, the range of shake that can be corrected becomes very small.
[0009]
Accordingly, the present invention has been devised to solve the above-described problems, and in the electronic shake correction technology, image processing for performing shake correction so that the size of the output image is equivalent to the imaging range. An object is to provide an apparatus and an image processing method.
[0010]
[Means for Solving the Problems]
In order to achieve the above object, an image processing apparatus according to the present invention performs shake correction by performing image processing on an image obtained by imaging the subject so as to cancel out a shake amount detected when the subject is imaged. In the image processing apparatus, image information storage means for storing image information of the image obtained by imaging the subject in correspondence with a first address for specifying a pixel of the image, and a corrected image in which the shake of the image is corrected The corrected image information is stored in correspondence with the second address for specifying the pixel of the corrected image, and the second address is set to the third address based on the detected shake amount. Address conversion means for converting to an address and image information of the image stored in the image information storage means is in the vicinity of the third address converted by the address conversion means An image information reading means for reading a plurality of the image information stored corresponding to the first address, and an interpolation operation using the plurality of image information read by the image information reading means, and the address Interpolation image information generation means for generating interpolation image information corresponding to the second address before conversion by the conversion means, and the interpolation image information generated by the interpolation image information generation means before conversion by the address conversion means The corrected image information of the corrected image information for one frame by the image information updating unit that updates the corrected image information as the corrected image information in the corrected image information storage unit in correspondence with the second address. In response to the completion of the update process to the storage means, the correction image information storage means stores the corresponding to the second address. Characterized in that there and a correcting image information reading means for reading all of the corrected image information.
[0011]
In order to achieve the above-described object, the image processing method according to the present invention performs image processing by performing image processing on an image obtained by imaging the subject so as to cancel out the amount of shake detected when the subject is imaged. In the image processing method of the image processing apparatus that performs correction, an image information storage step of storing image information of the image obtained by capturing the subject in an image information storage unit in association with a first address that identifies a pixel of the image. A corrected image information storing step of storing the corrected image information of the corrected image obtained by correcting the shake of the image in the corrected image information storage unit in association with a second address for specifying a pixel of the corrected image; An address conversion step of converting the second address into a third address based on the shake amount; and image information of the image stored in the image information storage means. The image information reading step for reading a plurality of the image information stored corresponding to the first address in the vicinity of the third address converted in the address conversion step, and the plurality of the read plurality An interpolation image information generating step for performing interpolation calculation using the image information and generating the interpolation image information corresponding to the second address before conversion, and the generated interpolation image information for the second image before conversion. The image information updating step for updating the corrected image information as the corrected image information in the corrected image information storage unit and the update processing of the corrected image information for one frame to the corrected image information storage unit are completed. Correspondingly, the corrected image information is read out to read out all the corrected image information stored in the corrected image information storage means corresponding to the second address. Characterized in that it comprises a step.
[0012]
In order to achieve the above-described object, the image processing apparatus according to the present invention performs image processing by performing image processing on an image obtained by capturing the subject so as to cancel out the amount of shake detected when the subject is captured. In the image processing apparatus that performs correction, an image that stores the image information of the image of the n frame (n is a natural number of 2 or more) in which the subject is captured in association with a first address that identifies the pixel of the image Information storage means; corrected image information storage means for storing the corrected image information of the corrected image obtained by correcting the shake of the image in association with a second address for specifying a pixel of the corrected image; and the detected shake Based on the quantity, the second address is converted into a third address, and the third address converted by the address converter is stored in the image information storage means. Determination means for determining whether or not an address for identifying an arbitrary pixel on the image of the n frame in which the recorded image information is stored; and the determination means determines that the third address is the address of the n frame. When it is determined that the address specifies an arbitrary pixel on the image, the vicinity of the third address converted by the address conversion unit from the image image information stored in the image information storage unit An image information reading means for reading a plurality of the image information stored corresponding to the first address in the image, and an interpolation operation using the plurality of image information read by the image information reading means, Interpolated image information generating means for generating interpolated image information corresponding to the second address before conversion by the address converting means, and the interpolated image Image information updating means for associating the interpolated image information generated by the information generating means with the second address before conversion by the address converting means, and updating the corrected image information storage means as the corrected image information; In response to the completion of the update processing of the corrected image information for one frame to the corrected image information storage means by the image information update means, the corrected image information storage means corresponds to the second address. Correction image information reading means for reading all of the stored correction image information.
[0013]
In order to achieve the above-described object, the image processing method according to the present invention performs shake correction by performing image processing on an image of the subject so as to cancel out the amount of shake detected when the subject is captured. In the image processing method of the image processing apparatus, the image information of the image of the n (n is a natural number of 2 or more) frame obtained by capturing the subject is associated with the first address that identifies the pixel of the image. The image information storage step to be stored in the image information storage unit and the corrected image information of the corrected image obtained by correcting the shake of the image are associated with the second address for specifying the pixel of the corrected image in the corrected image information storage unit. A corrected image information storage step to be stored; an address conversion step of converting the second address into a third address based on the detected shake amount; A determination step of determining whether or not an address of 3 is an address for identifying an arbitrary pixel on the image of the n frames in which the image information is stored in the image information storage unit; and the third address Is determined to be an address for identifying an arbitrary pixel on the image in the n frame, the image information stored in the image information storage means is used to determine the address in the vicinity of the third address. An image information read step for reading a plurality of the image information stored corresponding to the first address, and an interpolation operation is performed using the read plurality of image information, and the second address before conversion is set to the second address before conversion. An interpolated image information generating step for generating corresponding interpolated image information, and the generated interpolated image information are made to correspond to the second address before conversion, and the corrected image information is In response to the completion of the image information update step for updating the corrected image information storage means and the update processing of the corrected image information for one frame to the corrected image information storage means, the correction image information storage means And a corrected image information reading step of reading all the corrected image information stored corresponding to the second address.
[0014]
In order to achieve the above-described object, the image processing apparatus according to the present invention performs shake correction by performing image processing on an image obtained by capturing the subject so as to cancel out a shake amount detected when the subject is captured. In the image processing apparatus, the image information of the image of the n (n is a natural number of 2 or more) frame obtained by imaging the subject is stored in association with the first address that identifies the pixel of the image. A corrected image obtained by correcting shake of the mth (1 ≦ m <n) image of the n frames in which the image information is stored in the storage unit and the image information storage unit. Corrected image information storage means for storing corrected image information in correspondence with a second address for specifying a pixel of the corrected image, and based on the detected shake amount, the second address is changed to a third address. In An address conversion unit for converting and the third address converted by the address conversion unit are picked up in the m-th of the n frames of the image in which the image information is stored in the image information storage unit. Determining means for determining whether or not an address for identifying an arbitrary pixel on the image other than the selected image, and the determining means determines that the third address is the mth of the n frames of the images. When it is determined that the address specifies an arbitrary pixel on an image other than the image captured in the above, the image image information stored in the image information storage unit is converted by the address conversion unit. Image information reading means for reading a plurality of the image information stored corresponding to the first address in the vicinity of the third address; Interpolated image information generating means for performing interpolation calculation using the plurality of image information read by the information reading means, and generating interpolated image information corresponding to the second address before conversion by the address converting means; Image information update that associates the interpolated image information generated by the interpolated image information generating means with the second address before conversion by the address converting means and updates the corrected image information storage means as the corrected image information And the image information update means, the correction image information storage means sets the second address to the correction image information storage means in response to completion of the update processing of the corrected image information for one frame to the correction image information storage means. And a corrected image information reading means for reading all the corrected image information stored correspondingly.
[0015]
In order to achieve the above-described object, the image processing method according to the present invention performs shake correction by performing image processing on an image of the subject so as to cancel out the amount of shake detected when the subject is captured. In the image processing method of the image processing apparatus, the image information of the image of the n (n is a natural number of 2 or more) frame obtained by capturing the subject is associated with the first address that identifies the pixel of the image. An image information storage step to be stored in the image information storage means; and the m (1 ≦ m <n) -th image of the n frames in which the image information is stored in the image information storage means. A corrected image information storing step for storing the corrected image information of the corrected image obtained by correcting the shake of the image in the corrected image information storing unit in association with the second address for specifying the pixel of the corrected image; An address conversion step of converting the second address into a third address based on the shake amount, and the image information storage means stores the image information in the image information storage means. A determination step of determining whether or not the n-frame is an address for specifying an arbitrary pixel on an image other than the m-th captured image, and the third address is the n-number If it is determined that the address specifies an arbitrary pixel on an image other than the m-th captured image among the images of the frame, the image information stored in the image information storage unit is used. An image information reading step of reading a plurality of the image information stored corresponding to the first address in the vicinity of the third address; An interpolation image information generating step for performing interpolation calculation using a plurality of pieces of image information and generating interpolation image information corresponding to the second address before conversion, and the generated interpolation image information is converted into the first image before conversion. The image information update step for updating the corrected image information as the corrected image information in the corrected image information storage unit and the update processing of the corrected image information for one frame to the corrected image information storage unit are completed. And a corrected image information reading step of reading all of the corrected image information stored in the corrected image information storage means corresponding to the second address.
[0016]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of an image processing apparatus and an image processing method according to the present invention will be described below in detail with reference to the drawings.
[0017]
The configuration of a camera device 20 shown as an embodiment of the present invention will be described with reference to FIG.
[0018]
The camera device 20 includes an imaging lens 1, a CCD (Charge Coupled Device) 2, a sample hold (S / H) circuit 3, an AGC (Auto Gain Controller) circuit 4, and an A / D (Analog to Digital) converter 5. A Y / C separation unit 6, a camera process unit 7, a shake amount detection unit 8, a corrected image generation unit 9, a D / A (Digital to Analog) converter 10, a display unit 11, and a recorder unit 12. The imaging device captures and records a subject as a moving image.
[0019]
Light from the subject incident from the imaging lens 1 is converted into an electrical signal by the CCD 2. The output of the CCD 2 is input to the AGC circuit 4 via the sample hold (S / H) circuit 3. The output of the AGC circuit 4 is converted into a digital signal by the A / D converter 5. The Y / C separation unit 6 separates the digital video signal converted by the A / D converter 5 into a color signal component and a luminance signal component, and outputs them to the camera process unit 7.
[0020]
The camera process unit 7 performs edge enhancement, gamma correction, and the like on the color signal component and the luminance signal component of the digital signal output from the Y / C separation circuit 6. The output from the camera process unit 7 is supplied to the shake amount detection unit 8 and the corrected image generation unit 9 as a digital image signal.
[0021]
The shake amount detection unit 8 detects the shake amount from the image signal supplied from the camera process unit 7. As for the shake amount of the image signal, the camera device 20 centering on the optical axis and the shake component of the horizontal and vertical components in the image pickup surface in which the image pickup surface of the camera device 20 is shaken in the vertical, horizontal, and diagonal directions due to the camera shake of the photographer. There is a rotation component generated by the rotation. In general, the amount of shake due to camera shake has more horizontal and vertical components than rotation components.
[0022]
The shake amount detected by the shake amount detection unit 8 is supplied to the corrected image generation unit 9. The shake amount detection by the shake amount detection unit 8 is, for example, a technique using a motion vector described in Japanese Patent Laid-Open No. 11-195125 shown as a conventional technique.
[0023]
Thus, when detecting the shake amount of an image signal using a motion vector, the shake amount detection part 8 becomes a structure as shown in FIG. As shown in FIG. 2, the shake amount detection unit 8 includes a storage unit 21, a motion vector detection unit 22, a reliability evaluation unit 23, a motion vector determination unit 24, a rotation component extraction unit 25, and a rotation angle determination. Part 26.
[0024]
The storage unit 21 temporarily stores the image signal supplied from the camera process unit 7. The motion vector detection unit 22 compares the image signal stored in the storage unit 21 with the image signal supplied from the camera process unit 7, and motion vectors in a plurality of detection regions (for example, macroblocks) in the image signal. Is detected.
[0025]
The reliability evaluation unit 23 determines the reliability of the motion vector detected by the motion vector detection unit 22 and determines whether there is a moving object. The output of the reliability evaluation unit 23 is supplied to the motion vector determination unit 24 and the rotation component extraction unit 25.
[0026]
The motion vector determination unit 24 determines a motion vector as a whole image signal from each motion vector of the plurality of detection areas detected by the motion vector detection unit 22. The motion vector of the entire image signal determined by the motion vector determination unit 24 is supplied to the rotation component extraction unit 25 and the corrected image generation unit 9. The motion vector of the entire image signal corresponds to the horizontal and vertical components of the shake amount described above.
[0027]
The rotation component extraction unit 25 subtracts the motion vector as the entire image signal supplied from the motion vector determination unit 24 from the plurality of motion vectors whose reliability has been confirmed by the reliability evaluation unit 23, and obtains the result as a plurality of motion vectors. Extracted as a rotation component of a motion vector. The rotation components of the plurality of motion vectors extracted by the rotation component extraction unit 25 are supplied to the rotation angle determination unit 26.
[0028]
The rotation angle determination unit 26 determines the rotation angle of the entire image signal and the rotation center position from the rotation components of the plurality of motion vectors supplied from the rotation component extraction unit 25. The rotation angle and the center of rotation of the entire image signal determined by the rotation angle determination unit 26 are supplied to the corrected image generation unit 9. The rotation angle of the entire image signal corresponds to the rotation component of the shake amount described above.
[0029]
In this way, the motion vector of the entire image signal detected by the shake amount detection unit 8 is a horizontal / vertical component of the shake amount, and the rotation angle of the entire image signal is a rotation component of the shake amount. 9 is supplied.
[0030]
In the camera device 20, the shake amount detection unit 8 is configured as shown in FIG. 2, and the horizontal and vertical components of the shake amount and the rotation component are detected from the motion vector. Alternatively, an angular velocity sensor may be mounted on the camera device 20 to detect the horizontal / vertical component and the rotational component of the shake amount.
[0031]
Returning to FIG. 1 again, the description of the configuration of the camera device 20 will be continued. The corrected image generation unit 9 corrects the image signal supplied from the camera process unit 7 so as to cancel out the shake amount supplied from the shake amount detection unit 8, and outputs the corrected image signal to the D / A conversion circuit 10.
[0032]
The corrected image generation unit 9 includes an image memory 31, a coordinate calculation unit 32, a corrected image recording unit 33, and an interpolation image generation unit 34.
[0033]
The image memory 31 is a buffer memory that temporarily stores the image signal supplied from the camera process unit 7 in units of frames. The image signal inputted to the image memory 31 is given a write address (X, Y) for specifying the pixel of the image corresponding to the image signal on the orthogonal coordinates, and is associated with the write address (X, Y). Thus, the image signal is stored in the image memory 31. That is, the image signal input to the image memory 31 is stored as image data including luminance information and color difference information at the address (X, Y) in the memory area of the image memory 31.
[0034]
The write address (X, Y) and the address (X, Y) are the same. The write address (X, Y) is an address when an image signal is written to the image memory 31. After being written to the image memory 31, the write address (X, Y) is the address (X, Y).
[0035]
The coordinate calculation unit 32 corresponds to the square lattice set in the output coordinate system of the corrected image based on the shake amount supplied from the shake amount detection unit 8, that is, the address that specifies the pixel of the corrected image. An address for specifying the pixel of the image before correction is calculated. The address specifying the pixel of the image after correction is a read address (x t , Y t ) And the address that identifies the pixel of the image before correction is the address (x t-1 , Y t-1 ).
[0036]
Specifically, the coordinate calculation unit 32 reads the read address (x t , Y t ) Is used to specify the pixel of the image before correction by the calculation shown in equation (1) using a and b which are horizontal and vertical components of the shake amount detected by the shake amount detection unit 8 and θ which is the rotation component. Address (x t-1 , Y t-1 ). At this time, the rotation component θ may be removed in order to simplify the calculation unit of the camera device 20 and speed up the calculation.
[0037]
[Expression 1]
Figure 2005027046
[0038]
The coordinate calculation unit 32 then reads the read address (x t , Y t ) Converted from address (x t-1 , Y t-1 ) Is supplied to the interpolation image generation unit 34.
[0039]
The interpolated image generation unit 34 uses the image data stored in the image memory 31 to generate an address (x t-1 , Y t-1 Interpolated image data that is image data corresponding to () is generated.
[0040]
Interpolation image generation processing in the interpolation image generation unit 34 is performed by the coordinate calculation unit 32 in the read address (x t , Y t ) Converted from address (x t-1 , Y t-1 ) Is performed in order to cope with the case where the image data corresponding to () is not stored in the image memory 31. For example, the interpolated image generation unit 34 receives the address (x t-1 , Y t-1 ) Image data of four pixels in the vicinity of the pixel designated by () is read out from the image memory 31 and linearly interpolated, or the address (x t-1 , Y t-1 Interpolated image data is generated by reading out 16-pixel image data in the vicinity of the pixel specified in () from the image memory 31 and performing SINC interpolation. Reading 16-pixel image data and performing SINC interpolation improves the accuracy of the generated interpolated image data compared to reading out 4-pixel image data and performing linear interpolation. Whether to perform the interpolation processing method is appropriately selected according to the situation.
[0041]
The interpolated image data generated by the interpolated image generating unit 34 is the read address (x t , Y t ) Are sequentially output to the corrected image recording unit 33 as image data of the image after shake correction specified in (1).
[0042]
For example, consider an image frame 51 and an image frame 52 as shown in FIG. The image frame 51 is an image before shake correction, and the image frame 52 is an image after shake correction. The image memory 31 stores image data at square lattice points set in the image frame 51 shown in FIG. The interpolated image generation unit 34 uses the address (x t-1 , Y t-1 The image data of the pixel specified in () is interpolated using the image data stored in the image memory 31.
[0043]
As shown in FIG. 3, assuming that the image frame 51 and the image frame 52 are composed of image data of 4 × 6 grid points, the image frame 52 includes (1,1) component, (1,2, ) Component ・ ・ ・ Read address (x in the horizontal scanning direction) t , Y t ) Will be specified. The coordinate calculation unit 32 uses the read address (x t , Y t ) Using the shake amount detected by the shake amount detection unit 8 and the address (x t-1 , Y t-1 ).
[0044]
The interpolated image generation unit 34 receives the address (x t-1 , Y t-1 ), Image data corresponding to the address (x t-1 , Y t-1 ) Is interpolated using image data of pixels in the vicinity of.
[0045]
For example, in FIG. 3, when the read address (1, 1) is designated to form the image frame 52 with shake correction, the coordinate calculation unit 32 sets the address (1.6, 3.7). Converted. Since the image data corresponding to the address obtained by the address conversion of the coordinate calculation unit 32 on a one-to-one basis is not stored in the image memory 31, the interpolation image generation unit 34 uses the address (1.6, 3.7). Is read out from the image memory 31 and linearly interpolated by reading out the image data of the four pixels at address (1, 3), address (1, 4), address (2, 3), and address (2, 4) in the vicinity of Interpolated image data is generated. The interpolated image data generated by the interpolated image generating unit 34 is image data corresponding to the pixel at the address (1.6, 3.7).
[0046]
When the read address (1, 2) is designated, the coordinate calculation unit 32 converts the read address (1, 2) into the address (2.5, 4.5). The coordinate calculation unit 34 reads the address (2, 4), the address ( 2, 5), address (3, 4), and image data of the four pixels at address (3, 5) are read from the image memory 31 and subjected to linear interpolation to generate interpolated image data. The interpolated image data generated by the interpolated image generating unit 34 is image data corresponding to the pixel at the address (2.5, 4.5).
[0047]
When converted to the address (2.5, 4.5) by the coordinate calculation unit 32, the interpolation image generation unit 34 receives the address (1, 3) from the image memory 31 in order to generate more accurate interpolation image data. , Address (1,4), address (1,5), address (1,6), address (2,3), address (2,4), address (2,5), address (2,6), Address (3, 3), Address (3, 4), Address (3, 5), Address (3, 6), Address (4, 3), Address (4, 4), Address (4, 5), Address SINC interpolation may be performed by reading out image data of 16 pixels of (4, 6).
[0048]
In this manner, the image data of the pixels of the image frame 52 that is a shake-corrected image is generated by the interpolation image generation unit 34 from the image data stored in the image memory 31 and output to the corrected image recording unit 33. To do. When the shake correction is performed based on the shake amount from the shake amount detection unit 8, the interpolation image generation unit 34 may not generate the interpolation image data.
[0049]
The corrected image recording unit 33 reads the read address (x t , Y t ) As an address, and the interpolation image data supplied from the interpolation image generation unit 34 is stored as image data subjected to shake correction. In the memory area of the corrected image recording unit 33, old image data of one frame or more before is supplied from the interpolation image generation unit 34 and stored in each address. Therefore, when image data is newly supplied from the interpolated image generation unit 34, the old image data stored in the memory area of the corrected image recording unit 33 is updated for each address.
[0050]
Depending on the shake amount detected by the shake amount detection unit 8, the address (x t-1 , Y t-1 ) Exceeds the coordinate range set for specifying the pixel of the image corresponding to the image data stored in the image memory 31, and therefore the interpolation image generation unit 34 may not be able to generate the interpolation image data.
[0051]
In such a case, no image data is supplied to the corrected image recording unit 33 from the interpolated image generating unit 34. Therefore, the old image data of one frame or more before recorded in the corrected image recording unit 33 is not updated and is not changed. Will remain.
[0052]
When the update of the memory area is completed by the image data supplied from the interpolation image generation unit 34, the corrected image recording unit 33 updates the updated memory area and the non-updated memory area, that is, the corrected image recording unit 33. All the image data stored in the memory area is output to the D / A conversion circuit 10.
[0053]
For example, as shown in FIG. 4, if the image before shake correction is an uncorrected image G3 indicated by a dotted frame and the image after shake correction is an corrected image G4 indicated by a solid line frame, the correction corresponding to the region S1 is performed. In the memory area of the image recording unit 33, the interpolation image data generated by the interpolation image generation unit 34 is supplied and updated.
[0054]
That is, in FIG. 4, a region S <b> 1 where the pre-correction image G <b> 3 and the post-correction image G <b> 4 overlap is determined by the interpolation image data generated by the interpolation image generation unit 34 using the image data stored in the image memory 31. This shows that the shake is corrected by updating the memory area of the corrected image recording unit 33 corresponding to the area S1 of the corrected image G4. The image data in the region S4 of the uncorrected image G3 is ignored and discarded when shake correction is performed.
[0055]
The region S2 of the corrected image G4 is a region where the interpolation image data is not generated by the interpolation image generation unit 34, and when only the image data of the region S1 is output as a corrected image, it is a blank region where no image is displayed. End up. In the memory area of the corrected image recording unit 33 corresponding to the area S2, old image data of one frame or more before is stored. Therefore, when image data is output from the corrected image recording unit 33, the area S1 and the area S2 are displayed. All the image data stored in the memory area of the corresponding corrected image recording unit 33 is output.
[0056]
Returning to FIG. 1 again, the description of the configuration of the camera device 20 will be continued. The output from the corrected image generation unit 9 is converted into an analog signal by the D / A conversion circuit 10 and input to the display unit 11 and the recorder unit 12. The display unit 11 is, for example, a liquid crystal display, and displays an input analog image signal as an image. The recorder unit 12 records the input analog image signal on a recording medium (not shown). In addition, the recorder unit 12 may be in the preceding stage of the D / A conversion circuit 10, and in this case, the digital image signal is recorded on a recording medium (not shown).
[0057]
Next, the operation of shake correction processing by the camera device 20 will be described using the flowchart shown in FIG.
[0058]
First, in step S1, the coordinate calculation unit 32 uses a horizontal / vertical component and a rotation component of the shake amount supplied from the shake amount detection unit 8 to read a read address (x t , Y t ) In the Cartesian coordinates set in the image corresponding to the image data stored in the image memory 31 (x t-1 , Y t-1 ) Is derived.
[0059]
[Expression 2]
Figure 2005027046
[0060]
In step S2, the coordinate calculation unit 32 uses the equation (1) to read the read address (x t , Y t ) To address (x t-1 , Y t-1 ).
[0061]
In step S3, the coordinate calculation unit 32 converts the address (x t-1 , Y t-1 ) Exists as an address on the Cartesian coordinates set on the image corresponding to the image data stored in the image memory 31, the process proceeds to step S4. Otherwise, the process proceeds to step S5. Proceed.
[0062]
In step S4, the coordinate calculation unit 32 converts the address (x t-1 , Y t-1 ) Is supplied to the interpolation image generation unit 34. The interpolated image generation unit 34 uses the supplied address (x t-1 , Y t-1 4), for example, 4 pixels or 16 pixels are read out, and interpolation image data is generated by linear interpolation or SINC interpolation.
[0063]
The interpolated image data generated by the interpolated image generating unit 34 is the read address (x t , Y t ) Is updated to the memory area of the corrected image recording unit 33.
[0064]
In step S5, the interpolated image generation unit 34 reads out image data from the image memory 31, and determines whether or not to end the process of generating interpolated image data. For example, in step S2, the coordinate calculation unit 32 uses the address (x t-1 , Y t-1 ) Converted to read address (x t , Y t ) Is the read address (4, 6) of the image frame 52 shown in FIG. 3, the interpolation image data generation processing by the interpolation image generation unit 34 ends. If the interpolation image data generation process by the interpolation image generation unit 34 is not completed, the process returns to step S2.
[0065]
Such a camera device 20 derives the equation (1) based on the horizontal / vertical component and the rotational component of the shake amount detected by the shake amount detection unit 8. And the address (x converted using the derived equation (1)) t-1 , Y t-1 ) Is generated by the interpolated image generation unit 34 using the image data stored in the image memory 31 of the corrected image generation unit 9, and shake correction can be performed.
[0066]
Then, the image data that has undergone shake correction is updated in the corrected image recording unit 33, and the updated image data in the corrected image recording unit 33 and all of the image data that has not been updated are output. Can be interpolated.
[0067]
The camera device 20 including the corrected image generation unit 9 configured as described above is mainly used when the camera device 20 does not move much, that is, the camera device 20 is held in the hand and the photographer is almost in a fixed position. Thus, the configuration is particularly effective for suppressing camera shake when the subject is imaged.
[0068]
When the camera device 20 moves, that is, when the photographer moves while holding the camera device 20 in his hand or changes the shooting direction by panning or tilting, the image memory of the corrected image generating unit 9 The capacity of 31 needs to be 2 frames or more. When the photographer takes a picture while moving with the camera device 20, the blank portion generated when the image signal is corrected cannot be interpolated only by the image data of the previous frame recorded in the corrected image recording unit 33. The memory capacity of the image memory 31 is increased, the image data for the past several frames is stored, and the blank portion is interpolated using this image data.
[0069]
With reference to the flowchart shown in FIG. 6, the operation of the shake correction process by the camera device 20 corresponding to the imaging of the subject while moving by using the configuration in which the capacity of the image memory 31 is increased as described above will be described. .
[0070]
First, in step S11, the coordinate calculation unit 32 uses the horizontal / vertical component and the rotation component of the shake amount supplied from the shake amount detection unit 8 to read address (x) as shown in equation (2). t- (n-1) , Y t- (n-1) ) In the Cartesian coordinates set in the image corresponding to the image data stored in the image memory 31 (x t-n , Y t-n ) Is derived.
[0071]
[Equation 3]
Figure 2005027046
[0072]
In step S12, the coordinate calculation unit 32 uses the equation (2) to read the read address (x t- (n-1) , Y t- (n-1) ) To address (x t-n , Y t-n ).
[0073]
For example, as shown in FIG. 7, when five image frames at times t-1, t-2, t-3, t-4, and t-5 are stored in the image memory 31, first, n = 1, That is, the read address (x t , Y t ) Is the address (x t-1 , Y t-1 ) Is converted by the equation (2).
[0074]
In step S13, the coordinate calculation unit 32 converts the address (x t-n , Y t-n ) Exists as an address on the orthogonal coordinates set on the image corresponding to the image data stored in the image memory 31, the process proceeds to step S <b> 14, and if not, the process proceeds to step S <b> 15. Proceed.
[0075]
In step S14, the coordinate calculation unit 32 converts the address (x t-n , Y t-n ) Is supplied to the interpolation image generation unit 34. The interpolated image generation unit 34 uses the supplied address (x t-n , Y t-n 4), for example, 4 pixels or 16 pixels are read out, and interpolation image data is generated by linear interpolation or SINC interpolation.
[0076]
The interpolated image data generated by the interpolated image generating unit 34 is the read address (x t- (n-1) , Y t- (n-1) ) Is updated to the memory area of the corrected image recording unit 33.
[0077]
In step S <b> 15, the interpolated image generation unit 34 reads image data from the image memory 31 and determines whether to end the process of generating interpolated image data. If the interpolation image data generation process by the interpolation image generation unit 34 is not completed, the process returns to step S12.
[0078]
In step S16, the coordinate calculation unit 32 converts the address (x converted by the equation (2) in step S13. t-n , Y t-n ) Is not the address on the Cartesian coordinates set on the image corresponding to the image data stored in the image memory 31, the image frame at the previous time is selected from the image memory 31. To do.
[0079]
For example, when five image frames at the time as shown in FIG. 7 are stored in the image memory 31, the address (x) converted by the equation (2) t-1 , Y t-1 ) Is not the address on the Cartesian coordinates set in the image frame at time t-1 stored in the image memory 31, the image frame at time t-2 is selected.
[0080]
In step S17, the coordinate calculation unit 32 uses the equation (2) to read the read address (x t- (n-1) , Y t- (n-1) ) To the address (x of the image frame selected in step S16). t-n , Y t-n ).
[0081]
For example, when five image frames at the time as shown in FIG. 7 are stored in the image memory 31, n = 2, that is, the read address (x t-1 , Y t-1 ) Is the address (x t-2 , Y t-2 ) Is converted by the equation (2).
[0082]
In step S18, the coordinate calculation unit 32 converts the address (x t-n , Y t-n ) Exists as an address on the Cartesian coordinates set on the image corresponding to the image data stored in the image memory 31, the process proceeds to step S19, and if not, the process returns to process step S16. .
[0083]
For example, when five image frames at the time as shown in FIG. 7 are stored in the image memory 31, there is no address converted by the expression (2) even in the image frame at the time t-2. In this case, the process from step S16 is also performed on the image frames at times t-3 and t-4. Therefore, as the capacity of the image memory 31 is larger, the number of image frames that can be stored is also increased, so that the image data for interpolating the blank portion is increased, and more reliable interpolation processing can be performed.
[0084]
In step S <b> 19, the coordinate calculation unit 32 converts the address (x t-n , Y t-n ) Is supplied to the interpolation image generation unit 34. The interpolated image generation unit 34 uses the supplied address (x t-n , Y t-n 4), for example, 4 pixels or 16 pixels are read out, and interpolation image data is generated by linear interpolation or SINC interpolation.
[0085]
The interpolated image data generated by the interpolated image generating unit 34 is the read address (x t- (n-1) , Y t- (n-1) ) Is updated to the memory area of the corrected image recording unit 33.
[0086]
When the process of step S19 is completed, the process proceeds to step S15, and an end determination is made.
[0087]
As described above, the camera device 20 increases the capacity of the image memory 31 of the corrected image generation unit 9 and stores several frames of image data, thereby increasing image data for interpolating a blank portion during shake correction. Therefore, even when the photographer performs moving shooting with the camera device 20, the blank portion can be reliably interpolated.
[0088]
Further, the corrected image generation unit 9 not only interpolates the blank part using the past image frame stored in the image memory 31, but also interpolates the blank part using the future image frame. it can. This is because the blank portion may be interpolated using the future image frame rather than using the past image frame depending on the amount of camera shake of the photographer and the moving direction of the camera.
[0089]
Of course, it is not possible to use a future image signal that is not actually captured. Therefore, an image signal having a sufficiently large number of frames is stored in the image memory 31, and for example, an image frame that is temporally intermediate between the stored image frames is set as the current image frame. Also, an image frame that is temporally ahead of the current image frame is a future image frame, and an image frame that is temporally later is a past image frame.
[0090]
When using a pseudo-future image frame defined in this way, the accuracy of interpolating the blank portion is much higher than when using a past image frame. By performing the shake correction process using and, it is possible to more reliably interpolate the blank portion generated during the shake correction of the image signal. Of course, it is also possible to interpolate the blank portion using only future image frames.
[0091]
For example, consider a case where nine image frames are stored in the image memory 31 as shown in FIG. At this time, if the real time is T, the image memory 31 stores the times t-1, t-2, t-3, t-4, t-5, t-6, t-7, t-8, t-. 9 image frames in 9 are stored. When the concept of a pseudo future image frame is used, assuming that the virtual time with respect to the real time T is T ′, these nine image frames are time t ′ + 4, t ′ + 3, t ′ + 2, and t ′, respectively. Image frames at +1, t ′, t′−1, t′−2, t′−3, and t′−4. Among these, the image frame at time t ′ + 4, t ′ + 3, t ′ + 2, t ′ + 1 becomes a pseudo future image frame.
[0092]
The operation of the corrected image generation unit 9 when using a pseudo future image frame is exactly the same as the operation described with reference to the flowchart shown in FIG. 6, and the image at time t-5 in the real time T. Using the image data read from the image data of the image frames that are temporally forward and backward centered on the frame, the interpolation image generation unit 34 generates interpolation image data that compensates for the blank portion, and updates the correction image recording unit 33. Go.
[0093]
When using a past image frame, the above-described equation (2) is used.
[0094]
[Expression 4]
Figure 2005027046
[0095]
When a future image frame is used, the address of the image frame stored in the image memory 31 (x t + n , Y t + n ) Is calculated.
[0096]
[Equation 5]
Figure 2005027046
[0097]
Further, the selection policy of the past image frame and the future image frame in step S16 of the flowchart shown in FIG. 6 selects all the past image frames stored in the image memory 31, for example, and the corresponding image data If there is no image, a future image frame may be used, or a past image frame and a future image frame may be alternately selected.
[0098]
However, when the concept of a future image frame artificially generated from the image frame stored in the image memory 31 is used, real-time processing cannot be performed. As a matter of course, only the past image frame can be stored in the image memory 31, and the image frame defined as the current frame is the past image frame. This is because a time lag occurs.
[0099]
However, when the shake correction processing is performed using the above-described pseudo-generated future image frame in the offline processing using the image that has been shot once and recorded, it is very effective because the time delay does not become a problem. It becomes a method. For example, the display unit 11 of the camera device 20 displays an image captured in real time, and an image signal obtained by interpolating a blank portion using a pseudo future image frame for an image signal to be recorded on a recording medium by the recorder 12 By doing so, practical problems can also be avoided.
[0100]
Assuming that an image captured at the current time determined by defining a pseudo-future image frame in this manner is an image G11 shown in FIG. 9, the camera device 20 performs a shake correction process on the image G11. The image G12 in which the blank portion B1 is supplemented by the interpolated image data generated by the interpolated image generating unit 34 using the image data of several frames before and after the current time is used as the image after shake correction processing. Can be output as
[0101]
In addition, the camera device 20 shown as the embodiment of the present invention may be used in combination with a method for cutting out a part of an image described as a conventional technique and performing a camera shake correction process.
[0102]
For example, the imaging surface of the CCD 2 may have a sufficiently high resolution with respect to a television signal of the NTSC (National Television System Standard Committee) system. That is, in the case where the image signal obtained by imaging the subject with the camera device 20 equipped with such a CCD 2 is an NTSC television signal, the image is used as a conventional technique for correcting the shake. Even if a method of cutting out a part of an image is used, a blank portion does not occur when the shake amount is small.
[0103]
However, when the shake amount of the camera device 20 increases and exceeds the margin of the image signal captured by the CCD 2 that can be used for shake correction, that is, when the shake amount exceeds a predetermined threshold value, A method of correcting a shake by cutting out a part cannot be applied, and a blank portion is generated.
[0104]
At this time, by performing the blank portion interpolation processing by the correction image generation unit 9 described above, reliable shake correction processing can be performed.
[0105]
【The invention's effect】
As apparent from the above description, the present invention stores the image information of the captured subject in the image information storage means, and among the stored image information, the third address designated according to the shake amount Interpolated image information corresponding to the third address is generated by reading out a plurality of pieces of image information in the vicinity of, and performing an interpolation operation using the read out pieces of image information. The generated interpolated image information is updated and stored in the corrected image information storage unit in association with the second address, thereby acquiring corrected image information subjected to shake correction processing.
[0106]
When the corrected image information stored in the corrected image information storage unit is read out, not only the newly updated and stored image information, but also the image captured in the past in the time already stored in the corrected image information storage unit. The read image information is also read out as corrected image information.
[0107]
As a result, when the shake correction process is performed on the image obtained by capturing the subject, the output image size of the corrected image after the correction process can be made substantially equal to the imaging range. In addition, a blank image generated during shake correction processing is interpolated using image information of an image captured before and after a minute time with respect to an image subjected to shake correction, so that a corrected image with less visual discomfort Can be output.
[0108]
Furthermore, the image size and the image size of the corrected image are almost the same, so when mounted on video equipment, it can be applied not only to online shake correction processing but also to offline shake correction processing. It becomes.
[Brief description of the drawings]
FIG. 1 is a diagram for explaining a configuration of a camera device shown as an embodiment of the present invention.
FIG. 2 is a diagram for explaining an example of a configuration of a shake amount detection unit included in the camera apparatus.
FIG. 3 is a diagram for explaining a method for reading image data from an image memory included in the camera apparatus.
FIG. 4 is a diagram for describing image data output from a corrected image recording unit provided in the camera apparatus.
FIG. 5 is a flowchart for explaining a shake correction processing operation in the camera apparatus.
FIG. 6 is a flowchart for explaining a shake correction processing operation when the capacity of the image memory is increased in the camera apparatus.
FIG. 7 is a diagram showing image frames stored in an image memory having an increased capacity in the camera apparatus.
FIG. 8 is a diagram showing image frames stored in an image memory when a pseudo future image frame is used in the camera apparatus.
FIG. 9 is a diagram for explaining an image that is output when a pseudo future image frame is used in the camera apparatus.
FIG. 10 is a diagram for explaining an example of shake correction processing in a camera device shown as a conventional technique.
[Explanation of symbols]
7 camera process unit, 8 shake amount detection unit, 9 correction image generation unit, 31 image memory, 32 coordinate calculation unit, 33 correction image recording unit, 34 interpolation image generation unit

Claims (9)

被写体を撮像する際に検出される振れ量を相殺するように、上記被写体を撮像した画像を画像処理することで振れ補正をする画像処理装置において、
上記被写体を撮像した上記画像の画像情報を、上記画像の画素を特定する第1のアドレスに対応させて記憶する画像情報記憶手段と、
上記画像の振れを補正した補正画像の補正画像情報を、上記補正画像の画素を特定する第2のアドレスに対応させて記憶する補正画像情報記憶手段と、
検出された上記振れ量に基づいて、上記第2のアドレスを第3のアドレスに変換するアドレス変換手段と、
上記画像情報記憶手段に記憶された上記画像の画像情報から、上記アドレス変換手段によって変換された上記第3のアドレスの近傍にある上記第1のアドレスに対応して記憶されている上記画像情報を複数読み出す画像情報読み出し手段と、
上記画像情報読み出し手段よって読み出された上記複数の画像情報を用いて補間演算をし、上記アドレス変換手段による変換前の上記第2のアドレスに対応した補間画像情報を生成する補間画像情報生成手段と、
上記補間画像情報生成手段によって生成された上記補間画像情報を、上記アドレス変換手段による変換前の上記第2のアドレスに対応させ、上記補正画像情報として上記補正画像情報記憶手段に更新する画像情報更新手段と、
上記画像情報更新手段による、1フレーム分の上記補正画像情報の上記補正画像情報記憶手段への更新処理が終了したことに応じて、上記補正画像情報記憶手段に上記第2のアドレスに対応して記憶されている上記補正画像情報を全て読み出す補正画像情報読み出し手段とを備えること
を特徴とする画像処理装置。
In an image processing apparatus that performs shake correction by performing image processing on an image obtained by imaging the subject so as to cancel out a shake amount detected when the subject is imaged,
Image information storage means for storing image information of the image obtained by imaging the subject in association with a first address for specifying a pixel of the image;
Corrected image information storage means for storing corrected image information of a corrected image obtained by correcting the shake of the image in association with a second address for specifying a pixel of the corrected image;
Address converting means for converting the second address into a third address based on the detected shake amount;
The image information stored in correspondence with the first address in the vicinity of the third address converted by the address conversion means from the image information of the image stored in the image information storage means. A plurality of image information reading means for reading;
Interpolated image information generating means for performing interpolation using the plurality of image information read by the image information reading means, and generating interpolated image information corresponding to the second address before conversion by the address converting means. When,
Image information update that associates the interpolated image information generated by the interpolated image information generating means with the second address before conversion by the address converting means and updates the corrected image information storage means as the corrected image information Means,
In response to the completion of the update processing of the corrected image information for one frame to the corrected image information storage means by the image information update means, the corrected image information storage means corresponds to the second address. An image processing apparatus comprising: corrected image information reading means for reading all of the stored corrected image information.
振れ補正処理後の補正画像で要求される解像度よりも、高い解像度で上記被写体を撮像した画像を振れ補正処理する場合、上記補正画像情報更新手段による上記補正画像、1フレーム分の上記補正画像情報記憶手段への更新処理が終了したことに応じて、
上記補正画像情報読み出し手段は、上記振れ量が所定のしきい値よりも小さいとき、上記補正画像情報記憶手段に記憶されている、上記補正画像情報更新手段によって更新された上記補正画像情報を読み出し、
上記振れ量が所定のしきい値以上のとき、上記補正画像情報記憶手段に上記第2のアドレスに対応して記憶されている上記補正画像情報を全て読み出すこと
を特徴とする請求項1記載の画像処理装置。
In the case of performing shake correction processing on an image obtained by capturing the subject at a higher resolution than that required for a corrected image after shake correction processing, the corrected image by the corrected image information update unit and the corrected image information for one frame. In response to the completion of the update process to the storage means,
The corrected image information reading means reads the corrected image information updated by the corrected image information updating means stored in the corrected image information storage means when the shake amount is smaller than a predetermined threshold value. ,
2. The correction image information stored in the correction image information storage unit corresponding to the second address is read out when the shake amount is a predetermined threshold value or more. Image processing device.
被写体を撮像する際に検出される振れ量を相殺するように、上記被写体を撮像した画像を画像処理することで振れ補正をする画像処理装置の画像処理方法において、
上記被写体を撮像した上記画像の画像情報を、上記画像の画素を特定する第1のアドレスに対応させて画像情報記憶手段に記憶させる画像情報記憶ステップと、
上記画像の振れを補正した補正画像の補正画像情報を、上記補正画像の画素を特定する第2のアドレスに対応させて補正画像情報記憶手段に記憶させる補正画像情報記憶ステップと、
検出された上記振れ量に基づいて、上記第2のアドレスを第3のアドレスに変換するアドレス変換ステップと、
上記画像情報記憶手段に記憶された上記画像の画像情報から、上記アドレス変換ステップで変換された上記第3のアドレスの近傍にある上記第1のアドレスに対応して記憶されている上記画像情報を複数読み出す画像情報読み出しステップと、
読み出された上記複数の画像情報を用いて補間演算をし、変換前の上記第2のアドレスに対応した補間画像情報を生成する補間画像情報生成ステップと、
生成された上記補間画像情報を、変換前の上記第2のアドレスに対応させ、上記補正画像情報として上記補正画像情報記憶手段に更新する画像情報更新ステップと、
1フレーム分の上記補正画像情報の上記補正画像情報記憶手段への更新処理が終了したことに応じて、上記補正画像情報記憶手段に上記第2のアドレスに対応して記憶されている上記補正画像情報を全て読み出す補正画像情報読み出しステップとを備えること
を特徴とする画像処理方法。
In an image processing method of an image processing apparatus that performs shake correction by performing image processing on an image obtained by imaging the subject so as to cancel out a shake amount detected when the subject is imaged,
An image information storage step of storing image information of the image obtained by imaging the subject in an image information storage unit in association with a first address that identifies a pixel of the image;
A corrected image information storage step of storing corrected image information of the corrected image obtained by correcting the shake of the image in a corrected image information storage unit in association with a second address that identifies a pixel of the corrected image;
An address conversion step of converting the second address into a third address based on the detected shake amount;
From the image information of the image stored in the image information storage means, the image information stored corresponding to the first address in the vicinity of the third address converted in the address conversion step is A plurality of image information reading steps to be read;
An interpolation image information generation step for performing interpolation calculation using the plurality of read image information and generating interpolation image information corresponding to the second address before conversion;
An image information update step of causing the generated interpolated image information to correspond to the second address before conversion and updating the corrected image information storage unit as the corrected image information;
The corrected image stored in the corrected image information storage unit corresponding to the second address in response to the completion of the update process of the corrected image information for one frame to the corrected image information storage unit An image processing method comprising: a corrected image information reading step for reading all information.
被写体を撮像する際に検出される振れ量を相殺するように、上記被写体を撮像した画像を画像処理することで振れ補正をする画像処理装置において、
上記被写体を撮像したn(nは、2以上の自然数)フレームの上記画像の画像情報を、上記画像の画素を特定する第1のアドレスに対応させて記憶する画像情報記憶手段と、
上記画像の振れを補正した補正画像の補正画像情報を、上記補正画像の画素を特定する第2のアドレスに対応させて記憶する補正画像情報記憶手段と、
検出された上記振れ量に基づいて、上記第2のアドレスを第3のアドレスに変換するアドレス変換手段と、
上記アドレス変換手段によって変換された上記第3のアドレスが、上記画像情報記憶手段に上記画像情報が記憶されている上記nフレームの上記画像上の任意の画素を特定するアドレスであるかどうかを判定する判定手段と、
上記判定手段によって、上記第3のアドレスが、上記nフレームの上記画像上の任意の画素を特定するアドレスであると判定された場合、上記画像情報記憶手段に記憶されている上記画像画像情報から、上記アドレス変換手段によって変換された上記第3のアドレスの近傍にある上記第1のアドレスに対応して記憶されている上記画像情報を複数読み出す画像情報読み出し手段と、
上記画像情報読み出し手段によって読み出された上記複数の画像情報を用いて補間演算をし、上記アドレス変換手段による変換前の上記第2のアドレスに対応した補間画像情報を生成する補間画像情報生成手段と、
上記補間画像情報生成手段によって生成された上記補間画像情報を、上記アドレス変換手段による変換前の上記第2のアドレスに対応させ、上記補正画像情報として上記補正画像情報記憶手段に更新する画像情報更新手段と、
上記画像情報更新手段による、1フレーム分の上記補正画像情報の上記補正画像情報記憶手段への更新処理が終了したことに応じて、上記補正画像情報記憶手段に上記第2のアドレスに対応して記憶されている上記補正画像情報を全て読み出す補正画像情報読み出し手段とを備えること
を特徴とする画像処理装置。
In an image processing apparatus that performs shake correction by performing image processing on an image obtained by imaging the subject so as to cancel out a shake amount detected when the subject is imaged,
Image information storage means for storing image information of the image of n (n is a natural number greater than or equal to 2) frames in which the subject is imaged, in association with a first address that identifies a pixel of the image;
Corrected image information storage means for storing corrected image information of a corrected image obtained by correcting the shake of the image in association with a second address for specifying a pixel of the corrected image;
Address converting means for converting the second address into a third address based on the detected shake amount;
It is determined whether the third address converted by the address converting unit is an address for specifying an arbitrary pixel on the image of the n frames in which the image information is stored in the image information storing unit. Determination means to perform,
When it is determined by the determination means that the third address is an address that identifies an arbitrary pixel on the image of the n frame, from the image image information stored in the image information storage means Image information reading means for reading a plurality of the image information stored corresponding to the first address in the vicinity of the third address converted by the address converting means;
Interpolated image information generating means for performing interpolation using the plurality of image information read by the image information reading means and generating interpolated image information corresponding to the second address before conversion by the address converting means When,
Image information update that associates the interpolated image information generated by the interpolated image information generating means with the second address before conversion by the address converting means and updates the corrected image information storage means as the corrected image information Means,
In response to the completion of the update processing of the corrected image information for one frame to the corrected image information storage means by the image information update means, the corrected image information storage means corresponds to the second address. An image processing apparatus comprising: corrected image information reading means for reading all of the stored corrected image information.
振れ補正処理後の補正画像で要求される解像度よりも、高い解像度で上記被写体を撮像した画像を振れ補正処理する場合、上記補正画像情報更新手段による上記補正画像、1フレーム分の上記補正画像情報記憶手段への更新処理が終了したことに応じて、
上記補正画像情報読み出し手段は、上記振れ量が所定のしきい値よりも小さいとき、上記補正画像情報記憶手段に記憶されている、上記補正画像情報更新手段によって更新された上記補正画像情報を読み出し、
上記振れ量が所定のしきい値以上のとき、上記補正画像情報記憶手段に上記第2のアドレスに対応して記憶されている上記補正画像情報を全て読み出すこと
を特徴とする請求項4記載の画像処理装置。
In the case of performing shake correction processing on an image obtained by capturing the subject at a higher resolution than that required for a corrected image after shake correction processing, the corrected image by the corrected image information update unit and the corrected image information for one frame. In response to the completion of the update process to the storage means,
The corrected image information reading means reads the corrected image information updated by the corrected image information updating means stored in the corrected image information storage means when the shake amount is smaller than a predetermined threshold value. ,
5. The correction image information stored in the correction image information storage means corresponding to the second address is read out when the shake amount is equal to or greater than a predetermined threshold. Image processing device.
被写体を撮像する際に検出される振れ量を相殺するように、上記被写体を撮像した画像を画像処理することで振れ補正をする画像処理装置の画像処理方法において、
上記被写体を撮像したn(nは、2以上の自然数)フレームの上記画像の画像情報を、上記画像の画素を特定する第1のアドレスに対応させて画像情報記憶手段に記憶させる画像情報記憶ステップと、
上記画像の振れを補正した補正画像の補正画像情報を、上記補正画像の画素を特定する第2のアドレスに対応させて補正画像情報記憶手段に記憶させる補正画像情報記憶ステップと、
検出された上記振れ量に基づいて、上記第2のアドレスを第3のアドレスに変換するアドレス変換ステップと、
変換された上記第3のアドレスが、上記画像情報記憶手段に上記画像情報が記憶されている上記nフレームの上記画像上の任意の画素を特定するアドレスであるかどうかを判定する判定ステップと、
上記第3のアドレスが、上記nフレームの上記画像上の任意の画素を特定するアドレスであると判定された場合、上記画像情報記憶手段に記憶されている上記画像情報から、上記第3のアドレスの近傍にある上記第1のアドレスに対応して記憶されている上記画像情報を複数読み出す画像情報読み出しステップと、
読み出された上記複数の画像情報を用いて補間演算をし、変換前の上記第2のアドレスに対応した補間画像情報を生成する補間画像情報生成ステップと、
生成された上記補間画像情報を、変換前の上記第2のアドレスに対応させ、上記補正画像情報として上記補正画像情報記憶手段に更新する画像情報更新ステップと、
1フレーム分の上記補正画像情報の上記補正画像情報記憶手段への更新処理が終了したことに応じて、上記補正画像情報記憶手段に上記第2のアドレスに対応して記憶されている上記補正画像情報を全て読み出す補正画像情報読み出しステップとを備えること
を特徴とする画像処理方法。
In an image processing method of an image processing apparatus that performs shake correction by performing image processing on an image obtained by imaging the subject so as to cancel out a shake amount detected when the subject is imaged,
An image information storage step for storing image information of the image of n (n is a natural number of 2 or more) frames in which the subject is imaged in an image information storage unit in association with a first address that identifies a pixel of the image. When,
A corrected image information storage step of storing corrected image information of the corrected image obtained by correcting the shake of the image in a corrected image information storage unit in association with a second address that identifies a pixel of the corrected image;
An address conversion step of converting the second address into a third address based on the detected shake amount;
A determination step of determining whether or not the converted third address is an address that identifies an arbitrary pixel on the image of the n frames in which the image information is stored in the image information storage unit;
When it is determined that the third address is an address that identifies an arbitrary pixel on the image of the n frame, the third address is determined from the image information stored in the image information storage unit. An image information reading step of reading a plurality of the image information stored corresponding to the first address in the vicinity of
An interpolation image information generation step for performing interpolation calculation using the plurality of read image information and generating interpolation image information corresponding to the second address before conversion;
An image information update step of causing the generated interpolated image information to correspond to the second address before conversion and updating the corrected image information storage unit as the corrected image information;
The corrected image stored in the corrected image information storage unit corresponding to the second address in response to the completion of the update process of the corrected image information for one frame to the corrected image information storage unit An image processing method comprising: a corrected image information reading step for reading all information.
被写体を撮像する際に検出される振れ量を相殺するように、上記被写体を撮像した画像を画像処理することで振れ補正をする画像処理装置において、
上記被写体を撮像したn(nは、2以上の自然数)フレームの上記画像の画像情報を、上記画像の画素を特定する第1のアドレスに対応させて記憶する画像情報記憶手段と、
上記画像情報記憶手段に上記画像情報が記憶された上記nフレームの上記画像のうち、第m(1≦m<n)番目に撮像された上記画像の振れを補正した補正画像の補正画像情報を、上記補正画像の画素を特定する第2のアドレスに対応させて記憶する補正画像情報記憶手段と、
検出された上記振れ量に基づいて、上記第2のアドレスを第3のアドレスに変換するアドレス変換手段と、
上記アドレス変換手段によって変換された上記第3のアドレスが、上記画像情報記憶手段に上記画像情報が記憶されている上記nフレームの上記画像のうち、上記m番目に撮像された画像以外の画像上の任意の画素を特定するアドレスであるかどうかを判定する判定手段と、
上記判定手段によって、上記第3のアドレスが、上記nフレームの上記画像のうち、上記m番目に撮像された画像以外の画像上の任意の画素を特定するアドレスであると判定された場合、上記画像情報記憶手段に記憶されている上記画像画像情報から、上記アドレス変換手段によって変換された上記第3のアドレスの近傍にある上記第1のアドレスに対応して記憶されている上記画像情報を複数読み出す画像情報読み出し手段と、
上記画像情報読み出し手段によって読み出された上記複数の画像情報を用いて補間演算をし、上記アドレス変換手段による変換前の上記第2のアドレスに対応した補間画像情報を生成する補間画像情報生成手段と、
上記補間画像情報生成手段によって生成された上記補間画像情報を、上記アドレス変換手段による変換前の上記第2のアドレスに対応させ、上記補正画像情報として上記補正画像情報記憶手段に更新する画像情報更新手段と、
上記画像情報更新手段による、1フレーム分の上記補正画像情報の上記補正画像情報記憶手段への更新処理が終了したことに応じて、上記補正画像情報記憶手段に上記第2のアドレスに対応して記憶されている上記補正画像情報を全て読み出す補正画像情報読み出し手段とを備えること
を特徴とする画像処理装置。
In an image processing apparatus that performs shake correction by performing image processing on an image obtained by imaging the subject so as to cancel out a shake amount detected when the subject is imaged,
Image information storage means for storing image information of the image of n (n is a natural number greater than or equal to 2) frames in which the subject is imaged, in association with a first address that identifies a pixel of the image;
Among the images of the n frames in which the image information is stored in the image information storage means, corrected image information of a corrected image obtained by correcting shake of the image captured at the mth (1 ≦ m <n) th Corrected image information storage means for storing in correspondence with a second address for specifying a pixel of the corrected image;
Address converting means for converting the second address into a third address based on the detected shake amount;
The third address converted by the address converting unit is an image other than the m-th imaged image of the n frames in which the image information is stored in the image information storing unit. Determining means for determining whether or not the address specifies an arbitrary pixel of
When the determination unit determines that the third address is an address that identifies an arbitrary pixel on an image other than the m-th imaged image among the images of the n frames, A plurality of the image information stored in correspondence with the first address in the vicinity of the third address converted by the address conversion unit from the image image information stored in the image information storage unit. Image information reading means for reading;
Interpolated image information generating means for performing interpolation using the plurality of image information read by the image information reading means and generating interpolated image information corresponding to the second address before conversion by the address converting means When,
Image information update that associates the interpolated image information generated by the interpolated image information generating means with the second address before conversion by the address converting means and updates the corrected image information storage means as the corrected image information Means,
In response to the completion of the update processing of the corrected image information for one frame to the corrected image information storage means by the image information update means, the corrected image information storage means corresponds to the second address. An image processing apparatus comprising: corrected image information reading means for reading all of the stored corrected image information.
振れ補正処理後の補正画像で要求される解像度よりも、高い解像度で上記被写体を撮像した画像を振れ補正処理する場合、上記補正画像情報更新手段による上記補正画像、1フレーム分の上記補正画像情報記憶手段への更新処理が終了したことに応じて、
上記補正画像情報読み出し手段は、上記振れ量が所定のしきい値よりも小さいとき、上記補正画像情報記憶手段に記憶されている、上記補正画像情報更新手段によって更新された上記補正画像情報を読み出し、
上記振れ量が所定のしきい値以上のとき、上記補正画像情報記憶手段に上記第2のアドレスに対応して記憶されている上記補正画像情報を全て読み出すこと
を特徴とする請求項7記載の画像処理装置。
In the case of performing shake correction processing on an image obtained by capturing the subject at a higher resolution than that required for a corrected image after shake correction processing, the corrected image by the corrected image information update unit and the corrected image information for one frame. In response to the completion of the update process to the storage means,
The corrected image information reading means reads the corrected image information updated by the corrected image information updating means stored in the corrected image information storage means when the shake amount is smaller than a predetermined threshold value. ,
8. The correction image information stored in the correction image information storage unit corresponding to the second address is read out when the shake amount is a predetermined threshold value or more. Image processing device.
被写体を撮像する際に検出される振れ量を相殺するように、上記被写体を撮像した画像を画像処理することで振れ補正をする画像処理装置の画像処理方法において、
上記被写体を撮像したn(nは、2以上の自然数)フレームの上記画像の画像情報を、上記画像の画素を特定する第1のアドレスに対応させて画像情報記憶手段に記憶させる画像情報記憶ステップと、
上記画像情報記憶手段に上記画像情報が記憶された上記nフレームの上記画像のうち、第m(1≦m<n)番目に撮像された上記画像の振れを補正した補正画像の補正画像情報を、上記補正画像の画素を特定する第2のアドレスに対応させて補正画像情報記憶手段に記憶させる補正画像情報記憶ステップと、
検出された上記振れ量に基づいて、上記第2のアドレスを第3のアドレスに変換するアドレス変換ステップと、
変換された上記第3のアドレスが、上記画像情報記憶手段に上記画像情報が記憶されている上記nフレームの上記画像のうち、上記m番目に撮像された画像以外の画像上の任意の画素を特定するアドレスであるかどうかを判定する判定ステップと、
上記第3のアドレスが、上記nフレームの上記画像のうち、上記m番目に撮像された画像以外の画像上の任意の画素を特定するアドレスであると判定された場合、上記画像情報記憶手段に記憶されている上記画像画像情報から、上記第3のアドレスの近傍にある上記第1のアドレスに対応して記憶されている上記画像情報を複数読み出す画像情報読み出しステップと、
読み出された上記複数の画像情報を用いて補間演算をし、変換前の上記第2のアドレスに対応した補間画像情報を生成する補間画像情報生成ステップと、
生成された上記補間画像情報を、変換前の上記第2のアドレスに対応させ、上記補正画像情報として上記補正画像情報記憶手段に更新する画像情報更新ステップと、
1フレーム分の上記補正画像情報の上記補正画像情報記憶手段への更新処理が終了したことに応じて、上記補正画像情報記憶手段に上記第2のアドレスに対応して記憶されている上記補正画像情報を全て読み出す補正画像情報読み出しステップとを備えること
を特徴とする画像処理方法。
In an image processing method of an image processing apparatus that performs shake correction by performing image processing on an image obtained by imaging the subject so as to cancel out a shake amount detected when the subject is imaged,
An image information storage step for storing image information of the image of n (n is a natural number of 2 or more) frames in which the subject is imaged in an image information storage unit in association with a first address that identifies a pixel of the image. When,
Among the images of the n frames in which the image information is stored in the image information storage means, corrected image information of a corrected image obtained by correcting shake of the image captured at the mth (1 ≦ m <n) th A corrected image information storing step for storing the corrected image information in the corrected image information storage unit in correspondence with the second address for specifying the pixel of the corrected image
An address conversion step of converting the second address into a third address based on the detected shake amount;
The converted third address is an arbitrary pixel on an image other than the m-th captured image among the n frames of the image in which the image information is stored in the image information storage unit. A determination step of determining whether the address is specified;
When it is determined that the third address is an address that identifies an arbitrary pixel on an image other than the m-th imaged image among the images of the n frames, the image information storage unit stores An image information reading step of reading out a plurality of the image information stored corresponding to the first address in the vicinity of the third address from the stored image image information;
An interpolation image information generation step for performing interpolation calculation using the plurality of read image information and generating interpolation image information corresponding to the second address before conversion;
An image information update step of causing the generated interpolated image information to correspond to the second address before conversion and updating the corrected image information storage unit as the corrected image information;
The corrected image stored in the corrected image information storage unit corresponding to the second address in response to the completion of the update process of the corrected image information for one frame to the corrected image information storage unit An image processing method comprising: a corrected image information reading step for reading all information.
JP2003190537A 2003-07-02 2003-07-02 Image processor and image processing method Withdrawn JP2005027046A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003190537A JP2005027046A (en) 2003-07-02 2003-07-02 Image processor and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003190537A JP2005027046A (en) 2003-07-02 2003-07-02 Image processor and image processing method

Publications (1)

Publication Number Publication Date
JP2005027046A true JP2005027046A (en) 2005-01-27

Family

ID=34188393

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003190537A Withdrawn JP2005027046A (en) 2003-07-02 2003-07-02 Image processor and image processing method

Country Status (1)

Country Link
JP (1) JP2005027046A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007104516A (en) * 2005-10-07 2007-04-19 Sony Corp Image processor, image processing method, program, and recording medium
JP2007122232A (en) * 2005-10-26 2007-05-17 Casio Comput Co Ltd Image processor and program
US20110135158A1 (en) * 2009-12-08 2011-06-09 Nishino Katsuaki Image processing device, image processing method and program
JP2012034361A (en) * 2010-07-30 2012-02-16 Fujitsu Ltd Camera shake correction method and camera shake correction device
JP2015020012A (en) * 2013-07-23 2015-02-02 Mediaedge株式会社 Operation part imaging device
JP2015079329A (en) * 2013-10-16 2015-04-23 キヤノン株式会社 Image processor, image processing method and program
US20220053125A1 (en) * 2020-08-17 2022-02-17 Axis Ab Wearable camera and a method for encoding video captured by the wearable camera

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007104516A (en) * 2005-10-07 2007-04-19 Sony Corp Image processor, image processing method, program, and recording medium
JP4661514B2 (en) * 2005-10-07 2011-03-30 ソニー株式会社 Image processing apparatus, image processing method, program, and recording medium
JP2007122232A (en) * 2005-10-26 2007-05-17 Casio Comput Co Ltd Image processor and program
US20110135158A1 (en) * 2009-12-08 2011-06-09 Nishino Katsuaki Image processing device, image processing method and program
US8630453B2 (en) * 2009-12-08 2014-01-14 Sony Corporation Image processing device, image processing method and program
JP2012034361A (en) * 2010-07-30 2012-02-16 Fujitsu Ltd Camera shake correction method and camera shake correction device
JP2015020012A (en) * 2013-07-23 2015-02-02 Mediaedge株式会社 Operation part imaging device
JP2015079329A (en) * 2013-10-16 2015-04-23 キヤノン株式会社 Image processor, image processing method and program
US20220053125A1 (en) * 2020-08-17 2022-02-17 Axis Ab Wearable camera and a method for encoding video captured by the wearable camera
US11683595B2 (en) * 2020-08-17 2023-06-20 Axis Ab Wearable camera and a method for encoding video captured by the wearable camera

Similar Documents

Publication Publication Date Title
JP4509917B2 (en) Image processing apparatus and camera system
JP4446193B2 (en) Image processing apparatus and method, and program
JP4509925B2 (en) Image processing apparatus, camera system, image processing method, and moving image display method
JP3103894B2 (en) Apparatus and method for correcting camera shake of video data
JP5764740B2 (en) Imaging device
JP6385212B2 (en) Image processing apparatus and method, imaging apparatus, and image generation apparatus
JP2006295626A (en) Fish-eye image processing apparatus, method thereof and fish-eye imaging apparatus
KR101109532B1 (en) Image capturing device, image capturing method, and a storage medium recording thereon a image capturing program
JP2860702B2 (en) Motion vector detection device
US7260271B2 (en) Digital image data correction apparatus, digital image data correction method and digital image pickup apparatus
JP2005027046A (en) Image processor and image processing method
KR20100046544A (en) Image distortion compensation method and apparatus
JP6980480B2 (en) Imaging device and control method
JP2003078808A (en) Device and method for detecting motion vector, device and method for correcting camera shake and imaging apparatus
JP2004186901A (en) Image pickup device and method, program and recording medium
JP6223135B2 (en) Imaging apparatus and control method thereof
JP6257289B2 (en) Image processing apparatus, imaging apparatus including the same, and image processing method
JPH06197261A (en) Image pickup device
JPH11155096A (en) Image pickup device, computer readable storage medium and image processor
JP3200089B2 (en) Motion vector detection device and shake correction device
JP2885010B2 (en) Image motion compensation device
JPH0846856A (en) Hand shake correcting device
JP2011135537A (en) Imaging apparatus and control method of the same
JP2007266771A (en) Camera shake detector and digital camera
KR100562334B1 (en) Image distortion compensation method and devices for CMOS Image Sensor

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060905