JP2006246270A - 画像処理装置、画像表示装置、画像撮像装置、画像処理方法、プログラムおよび記録媒体 - Google Patents

画像処理装置、画像表示装置、画像撮像装置、画像処理方法、プログラムおよび記録媒体 Download PDF

Info

Publication number
JP2006246270A
JP2006246270A JP2005061726A JP2005061726A JP2006246270A JP 2006246270 A JP2006246270 A JP 2006246270A JP 2005061726 A JP2005061726 A JP 2005061726A JP 2005061726 A JP2005061726 A JP 2005061726A JP 2006246270 A JP2006246270 A JP 2006246270A
Authority
JP
Japan
Prior art keywords
image
fixed amount
motion vector
correction
amount
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005061726A
Other languages
English (en)
Inventor
Masafumi Kanai
政史 金井
Naoki Kuwata
直樹 鍬田
Makoto Ouchi
真 大内
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2005061726A priority Critical patent/JP2006246270A/ja
Publication of JP2006246270A publication Critical patent/JP2006246270A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Studio Devices (AREA)

Abstract

【課題】動きベクトルを求めたフレーム画像に対して手ぶれ補正をかけるのに必要なメモリ容量を最小にする。
【解決手段】画像処理装置は、動画像または時系列に連続する静止画像から一定量の画像を取得し、該取得した一定量の画像について、所定の画像を切り出して補正画像を生成する。画像取得部110によって、時系列順に一定量の画像毎に、動きベクトル検出部120によって、n(nは1以上の整数)番目の一定量の画像の動きベクトルが検出される。そして、次画像動きベクトル予測部によって、(n+1)番目の一定量の画像の予測動きベクトルが算出され、補正位置算出部によって、算出された(n+1)番目の一定量の画像の予測動きベクトルを用いて、前記(n+1)番目の一定量の画像について、前記所定の画像を切り出す位置を示す補正位置ベクトルが算出される。これらは、n番目の一定量の画像を取得している間に行われる。
【選択図】図2

Description

本発明は、動画像または時系列に連続する静止画像からフレーム画像を取得し、取得したフレーム画像から所定の画像を切り出して、補正フレーム画像を生成する画像処理技術に関する。
近年ビデオカメラやデジタルカメラ、さらに画像撮影機能を有する携帯電話などの撮影機器を用いて、運動会など所望する画像を動画像として撮影することが行われている。その際、撮影装置を手持ちで撮影したとき、手ぶれによって撮影画像に画像ぶれが生じてしまう。このため、従来より、撮影時の画像ぶれを補正する画像処理技術が提案されている(例えば、特許文献1)。
特許文献1には、撮像管で撮影した画像数フレーム分をフレームメモリに保存すると共に、動き検出回路で動きベクトルを求め、求めた動きベクトルに応じてフレーム画像の読み出し位置を変えて映像を出力するテレビジョン信号処理装置が開示されている。
特公平8−17454号公報
しかし、特許文献1に記載のテレビジョン信号処理装置の場合、所定のフレーム画像における動きベクトルは、少なくともそのフレーム画像の読み込みが終了するまで求めることができない。よって、特許文献1に記載のテレビジョン信号処理装置の場合、動き検出から手ぶれによる補正量を計算するまでに1フレーム以上の時間がかかる(特許文献1、図3参照)。このため、求めた動きベクトルの情報を用いて、動きベクトルを求めたフレーム画像に対して手ぶれ補正をかけるには、フレーム画像情報を1フレーム分以上保持するためのフレームメモリが必要である。
本発明は、このような課題を解決するためになされたもので、手ぶれ補正処理を行う際に必要な、フレーム画像を保持するためのメモリ量を抑えることのできる画像処理装置、画像表示装置、画像撮像装置、画像処理方法、プログラムおよび記録媒体を提供することを目的とする。
上記目的を達成するため、本発明の一態様による画像処理装置は、動画像または時系列に連続する静止画像から一定量の画像を取得し、該取得した一定量の画像について、所定の画像を切り出して補正画像を生成する画像処理装置であって、時系列順に一定量の画像毎に、当該一定量の画像を順次取得する画像取得部と、前記順次取得した一定量の画像のうち、n(nは1以上の整数)番目の一定量の画像の動きベクトルを、n番目の一定量の画像より時系列順で一つ前の(n−1)番目の一定量の画像を用いて検出する動きベクトル検出部と、当該検出されたn番目の一定量の画像の動きベクトルと、(n−1)番目の一定量の画像の動きベクトルとを用いて、n番目の一定量の画像より時系列順で一つ後の(n+1)番目の一定量の画像の予測動きベクトルを算出する次画像動きベクトル予測部と、当該算出された(n+1)番目の一定量の画像の予測動きベクトルを用いて、前記(n+1)番目の一定量の画像について、前記所定の画像を切り出す位置を示す補正位置ベクトルを算出する補正位置算出部と、を備え、前記動きベクトル検出部によるn番目の一定量の画像の動きベクトルの検出と、前記次画像動きベクトル予測部による(n+1)番目の一定量の画像の予測動きベクトルの算出と、前記補正位置算出部による(n+1)番目の一定量の画像についての補正位置ベクトルの算出とを、前記画像取得部がn番目の一定量の画像を取得している間に行うように構成される。
上記のように構成された画像処理装置によれば、前記画像取得部がn番目の一定量の画像を取得している間に、n番目の一定量の画像の動きベクトルの検出と、(n+1)番目の一定量の画像の予測動きベクトルの算出と、(n+1)番目の一定量の画像についての補正位置ベクトルの算出とを行うことができる。
ここで、「一定量の画像」は、実施形態における「フレーム画像」に対応しているが、フレーム画像には限定されない。
また、「画像取得部」が、実施形態における「フレーム画像取得部110」に対応し、「次動きベクトル予測部」が、実施形態における「次フレーム動きベクトル予測部124」に対応している。
上記本発明による画像処理装置によれば、前記算出された補正位置ベクトルに基づいて、前記取得された一定量の画像についての補正画像を生成する補正画像生成部をさらに備え、当該補正画像生成部は、前記画像取得部が(n+1)番目の一定量の画像を取得している間に、前記補正位置算出部によって算出された(n+1)番目の一定量の画像についての補正位置ベクトルを用いて、(n+1)番目の一定量の画像についての補正画像を生成することが好ましい。
ここで、「補正画像」が、実施形態における「補正フレーム画像」に対応している。
上記本発明による画像処理装置によれば、所定の補正画像の拡大率に基づいて、前記補正画像を拡大して出力する画像出力部をさらに備え、当該画像出力部は、前記画像取得部が(n+1)番目の一定量の画像を取得している間に、前記補正画像生成部によって生成されたn番目の一定量の画像についての補正画像を拡大して出力することが好ましい。
上記本発明による画像処理装置によれば、前記次画像動きベクトル予測部は、予測動きベクトルの算出において、
V(n+1)=V0(n)+α×(V0(n)−V0(n−1))
V(n+1)は、(n+1)番目の一定量の画像の予測動きベクトル
V0(n−1)は、(n−1)番目の一定量の画像の動きベクトル
V0(n)は、n番目の一定量の画像の動きベクトル
α:|V0(n)−V0(n−1)|を変数とする0以上1以下の値の補正係数
で示される演算式を用いて、(n+1)番目の一定量の画像の予測動きベクトルを求めることが好ましい。
上記本発明による画像処理装置によれば、変数|V0(n)−V0(n−1)|の値が大きくなるほど、補正係数αの値は同じか小さくなるようにすることが好ましい。
上記本発明による画像処理装置によれば、前記動きベクトル検出部は、(n−1)番目の一定量の画像における複数のサンプリングポイントのデータと、当該サンプリングポイントに対応するn番目の一定量の画像における差分算出領域内の各画素データとの差分値に基づき、n番目の一定量の画像の動きベクトルを検出することが好ましい。
上記本発明による画像処理装置によれば、前記差分値の絶対値を、各サンプリングポイントに対して同一の位置関係にある対応成分毎に加算して、加算結果が最小値となる成分のサンプリングポイントからの位置(ベクトル)を、n番目の一定量の画像の動きベクトルとして検出することが好ましい。
本発明の他の態様による画像表示装置は、動画像または時系列に連続する静止画像から一定量の画像を取得し、該取得した一定量の画像について、所定の画像を切り出して補正画像を生成して表示する画像表示装置であって、時系列順に一定量の画像毎に、当該一定量の画像を順次取得する画像取得部と、前記順次取得した一定量の画像のうち、n(nは1以上の整数)番目の一定量の画像の動きベクトルを、n番目の一定量の画像より時系列順で一つ前の(n−1)番目の一定量の画像を用いて検出する動きベクトル検出部と、当該検出されたn番目の一定量の画像の動きベクトルと、(n−1)番目の一定量の画像の動きベクトルとを用いて、n番目の一定量の画像より時系列順で一つ後の(n+1)番目の一定量の画像の予測動きベクトルを算出する次画像動きベクトル予測部と、当該算出された(n+1)番目の一定量の画像の予測動きベクトルを用いて、前記(n+1)番目の一定量の画像について、前記所定の画像を切り出す位置を示す補正位置ベクトルを算出する補正位置算出部と、を備え、前記動きベクトル検出部によるn番目の一定量の画像の動きベクトルの検出と、前記次画像動きベクトル予測部による(n+1)番目の一定量の画像の予測動きベクトルの算出と、前記補正位置算出部による(n+1)番目の一定量の画像についての補正位置ベクトルの算出とを、前記画像取得部がn番目の一定量の画像を取得している間に行うように構成される。
本発明のさらに他の態様による画像撮像装置は、動画像または時系列に連続する静止画像から一定量の画像を取得し、該取得した一定量の画像について、所定の画像を切り出して補正画像を生成する画像撮像装置であって、時系列順に一定量の画像毎に、当該一定量の画像を順次取得する画像取得部と、前記順次取得した一定量の画像のうち、n(nは1以上の整数)番目の一定量の画像の動きベクトルを、n番目の一定量の画像より時系列順で一つ前の(n−1)番目の一定量の画像を用いて検出する動きベクトル検出部と、当該検出されたn番目の一定量の画像の動きベクトルと、(n−1)番目の一定量の画像の動きベクトルとを用いて、n番目の一定量の画像より時系列順で一つ後の(n+1)番目の一定量の画像の予測動きベクトルを算出する次画像動きベクトル予測部と、当該算出された(n+1)番目の一定量の画像の予測動きベクトルを用いて、前記(n+1)番目の一定量の画像について、前記所定の画像を切り出す位置を示す補正位置ベクトルを算出する補正位置算出部と、を備え、前記動きベクトル検出部によるn番目の一定量の画像の動きベクトルの検出と、前記次画像動きベクトル予測部による(n+1)番目の一定量の画像の予測動きベクトルの算出と、前記補正位置算出部による(n+1)番目の一定量の画像についての補正位置ベクトルの算出とを、前記画像取得部がn番目の一定量の画像を取得している間に行うように構成される。
本発明のさらに他の態様による画像処理方法は、動画像または時系列に連続する静止画像から一定量の画像を取得し、該取得した一定量の画像について、所定の画像を切り出して補正画像を生成する画像処理方法であって、時系列順に一定量の画像毎に、当該一定量の画像を順次取得する画像取得工程と、前記順次取得した一定量の画像のうち、n(nは1以上の整数)番目の一定量の画像の動きベクトルを、n番目の一定量の画像より時系列順で一つ前の(n−1)番目の一定量の画像を用いて検出する動きベクトル検出工程と、当該検出されたn番目の一定量の画像の動きベクトルと、(n−1)番目の一定量の画像の動きベクトルとを用いて、n番目の一定量の画像より時系列順で一つ後の(n+1)番目の一定量の画像の予測動きベクトルを算出する次画像動きベクトル予測工程と、当該算出された(n+1)番目の一定量の画像の予測動きベクトルを用いて、前記(n+1)番目の一定量の画像について、前記所定の画像を切り出す位置を示す補正位置ベクトルを算出する補正位置算出工程と、を備え、前記動きベクトル検出工程によるn番目の一定量の画像の動きベクトルの検出と、前記次画像動きベクトル予測工程による(n+1)番目の一定量の画像の予測動きベクトルの算出と、前記補正位置算出工程による(n+1)番目の一定量の画像についての補正位置ベクトルの算出とを、前記画像取得工程がn番目の一定量の画像を取得している間に行うように構成される。
本発明のさらに他の態様によるプログラムは、動画像または時系列に連続する静止画像から一定量の画像を取得し、該取得した一定量の画像について、所定の画像を切り出して補正画像を生成する処理をコンピュータに実行させるためのプログラムであって、時系列順に一定量の画像毎に、当該一定量の画像を順次取得する画像取得処理と、前記順次取得した一定量の画像のうち、n(nは1以上の整数)番目の一定量の画像の動きベクトルを、n番目の一定量の画像より時系列順で一つ前の(n−1)番目の一定量の画像を用いて検出する動きベクトル検出処理と、当該検出されたn番目の一定量の画像の動きベクトルと、(n−1)番目の一定量の画像の動きベクトルとを用いて、n番目の一定量の画像より時系列順で一つ後の(n+1)番目の一定量の画像の予測動きベクトルを算出する次画像動きベクトル予測処理と、当該算出された(n+1)番目の一定量の画像の予測動きベクトルを用いて、前記(n+1)番目の一定量の画像について、前記所定の画像を切り出す位置を示す補正位置ベクトルを算出する補正位置算出処理と、を備え、前記動きベクトル検出処理によるn番目の一定量の画像の動きベクトルの検出と、前記次画像動きベクトル予測処理による(n+1)番目の一定量の画像の予測動きベクトルの算出と、前記補正位置算出処理による(n+1)番目の一定量の画像についての補正位置ベクトルの算出とを、前記画像取得処理がn番目の一定量の画像を取得している間に行うように構成される。
本発明のさらに他の態様による記録媒体は、動画像または時系列に連続する静止画像から一定量の画像を取得し、該取得した一定量の画像について、所定の画像を切り出して補正画像を生成する処理をコンピュータに実行させるためのプログラムを記録したコンピュータによって読取可能な記録媒体であって、時系列順に一定量の画像毎に、当該一定量の画像を順次取得する画像取得処理と、前記順次取得した一定量の画像のうち、n(nは1以上の整数)番目の一定量の画像の動きベクトルを、n番目の一定量の画像より時系列順で一つ前の(n−1)番目の一定量の画像を用いて検出する動きベクトル検出処理と、当該検出されたn番目の一定量の画像の動きベクトルと、(n−1)番目の一定量の画像の動きベクトルとを用いて、n番目の一定量の画像より時系列順で一つ後の(n+1)番目の一定量の画像の予測動きベクトルを算出する次画像動きベクトル予測処理と、当該算出された(n+1)番目の一定量の画像の予測動きベクトルを用いて、前記(n+1)番目の一定量の画像について、前記所定の画像を切り出す位置を示す補正位置ベクトルを算出する補正位置算出処理と、を備え、前記動きベクトル検出処理によるn番目の一定量の画像の動きベクトルの検出と、前記次画像動きベクトル予測処理による(n+1)番目の一定量の画像の予測動きベクトルの算出と、前記補正位置算出処理による(n+1)番目の一定量の画像についての補正位置ベクトルの算出とを、前記画像取得処理がn番目の一定量の画像を取得している間に行う、プログラムを記録したコンピュータによって読取可能な記録媒体である。
次に、本発明の実施の形態を説明する。図1は本発明の一実施形態としての画像処理装置の概略構成を示す説明図である。この画像処理装置は汎用のコンピュータであり、入力インターフェイス(I/F)101、CPU103、RAM102、ROM104、ハードディスク105および出力インターフェイス(I/F)106とを備え、これらはバス107を介して互いに接続されている。入力I/F101には、動画像を入力する装置としてのデジタルビデオカメラ200(画像撮像装置)およびDVDプレーヤ210が接続され、出力I/F106には動画像を出力する装置(画像表示装置)としてのビデオプロジェクタ300およびディスプレイ310が接続されている。その他、必要に応じて、動画像を記憶した記憶媒体からデータを読み出すことが可能な駆動装置や、動画像を出力することが可能な画像表示装置をそれぞれ接続することもできる。なお、動画像には時系列に連続する静止画像も含まれる。
また、上記画像撮像装置および画像表示装置が、それぞれ本発明による画像処理装置を備えるように構成することもできる。
入力I/F101は、所定の画素数とRGB形式など所定の画素値を有する動画像からフレーム画像を取得し、コンピュータ100で処理できるフレーム画像データに変換する。本実施形態では、フレーム画像を構成する所定枚数のフィールド画像から、フレーム画像データを取得するものとする。フレーム画像は、記録方式に応じて通常複数の所定枚数のフィールド画像によって構成されている。例えば、NTSC方式で記録された動画像の場合は、インターレース方式であり、毎秒60枚のフィールド画像によって毎秒30枚のフレーム画像が構成されている。従って、入力I/F101は、2つのフィールド画像の画素値を用いて1つのフレーム画像を取得する。もとより、1つのフィールド画像が1つのフレーム画像を構成しているプレグレッシブ方式(ノンインターレース方式)のような場合は、1つのフィールド画像を用いて1つのフレーム画像を取得することになる。
変換されたフレーム画像データは、RAM102又はハードディスク105に格納される。CPU103は格納されたフレーム画像データに対して所定の画像処理を実行し、補正フレーム画像データとして再びRAM102又はハードディスク105に格納する。補正フレーム画像データを生成するまでに行われる所定の画像処理に際し、必要に応じてRAM102やハードディスク105が画像処理データのワーキングメモリとして用いられる。そして、格納した補正フレーム画像データを、出力I/F106を介して所定の画像データに変換し、ビデオプロジェクタ300などに送出する。
所定の画像処理を記録したアプリケーションプログラムは、予めハードディスク105やROM104に格納されていることとしてもよいし、例えばCD−ROMなどのコンピュータが読み取り可能な記録媒体によって外部から供給され、図示しないDVD−R/RWドライブを介してハードディスク105に記憶することによって格納されるものとしてもよい。もとより、インターネットなどのネットワーク手段を介して、アプリケーションプログラムを供給するサーバー等にアクセスし、データをダウンロードすることによってハードディスク105に格納されるものとしてもよい。
CPU103は、バス107を介してハードディスク105またはROM104に格納されたアプリケーションプログラムを読み出し、この読み出したアプリケーションプログラムを所定のオペレーティングシステムのもとで実行することによって、画像処理装置として機能する。図2に、本発明の一実施形態としての画像処理装置の機能ブロック図を示す。図2に示すように、このアプリケーションプログラムが実行されることにより、CPU103は、フレーム画像取得部110、動きベクトル検出部120、次フレーム動きベクトル予測部124、メモリ126、補正位置算出部130、補正フレーム画像生成部140および画像出力部150として機能する。
各部はそれぞれ以下の処理を司る。フレーム画像取得部110は、コンピュータ100に入力した動画像から時系列順にフレーム画像を取得する。動きベクトル算出部120は、取得されたフレーム画像の移動ベクトルを算出して、メモリ126に格納するとともに、次フレーム動きベクトル予測部124に供給する。次フレーム動きベクトル予測部124は、前フレーム画像および現フレーム画像の動きベクトルに基づき次フレーム画像の動きベクトルを予測する。メモリ126は、種々のデータを格納する。補正位置算出部130は、動きベクトルなどを用いて、フレーム画像から所定の画像を切り出すための画像位置を補正位置ベクトルとして算出する。補正フレーム画像生成部140は、算出された補正位置ベクトルなどに基づいて補正フレーム画像を生成する。画像出力部150は、生成された補正フレーム画像を所定の画像データに変換して出力する。
次に、本実施形態の画像処理装置について各部が行う処理を、図3の処理フローチャートにより説明する。図3に示した処理が開始されると、まずステップS10にて、フレーム画像取得部110は、入力される動画像から時系列順に、フレーム画像F(n)をコンピュータ100に取り込む処理を行う。なお、本実施形態における以下の画像処理装置の説明において、(n)は時系列順でn番目(nは1以上の整数)であることを意味する。また、図3において、mは整数であり、nおよびmの初期値はそれぞれn=1、m=0とする。
本実施形態では、動画像の入力をトリガーにして、自動的にフレーム画像を時系列順で順次取り込むこととする。もとより、取り込むフレーム画像を指定することとしてもよい。フレーム画像の指定方法は、動画像からフレーム画像を取得してコンピュータ100に取り込む際、通常付加されるフレーム画像の識別番号を指定するようにしてもよい。あるいは、ユーザーがビデオカメラに備えられたモニターなどのディスプレイ(図示せず)に表示されるフレーム画像を見ながら画像を直接指定することとしてもよい。
次に、ステップS20において、フレーム画像取得部110は、コンピュータ100に取り込むことによって取得したフレーム画像F(n)が存在するか否かを判定する。動画像から取得したフレーム画像F(n)が存在すれば(YES)ステップS24に進む。一方、動画像から取得したフレーム画像F(n)が存在しなければ(NO)、ステップS22に進みmを更新して(m=m+1として)ステップS24に進む。
そして、ステップS24において、m=2か否かが判定され、m=2の場合(S24、YES)には画像処理装置における処理を終了する。
一方、m=2でない場合(S24、NO)、(A)S26、S30、S35およびS40における処理と、(B)S28およびS50における処理と、(C)S65およびS70における処理とが、S10において1フレーム分の情報を読み込む間に並行して行われる。
まず、S26、S30、S35、S40における処理について説明する。
(A)S26、S30、S35、S40における処理
ステップS26において、m=1か否かが判定され、m=1の場合(S26、YES)には、ステップS80に進む。
一方、m=1でない場合(S26、NO)、ステップS30において、動きベクトル検出部120は、取得したフレーム画像F(n)の動きベクトルV0(n)の検出処理を行う。時系列順n−1番目のフレーム画像F(n−1)に対するフレーム画像F(n)の相対位置を検出し、その相対位置にフレーム画像F(n)を配置する。そして、フレーム画像F(n−1)の画面位置に対するフレーム画像F(n)の画面位置のずれ量を、X,Y方向のそれぞれの画素数として検出する。このX方向の画素数をX成分、Y方向の画素数をY成分とするベクトルによって表したものが、フレーム画像F(n)の動きベクトルV0(n)となる。算出した動きベクトルV0(n)のデータV0(n)は、メモリ126(RAM102など)に格納される。
次に、図4及び図5を参照して、動きベクトル検出部120による、図3のS30におけるn番目のフレーム画像の動きベクトル検出処理を詳細に説明する。ここで、図4は、図3のS30におけるn番目のフレーム画像の動きベクトルの検出処理を詳細に説明するためのフローチャートである。また、図5は、図3のS30におけるn番目のフレーム画像の動きベクトルの検出処理を詳細に説明するための説明図である。
まず、動きベクトル検出部120は、以下で図5を参照して説明する差分値行列をリセットする(ステップS300)。すなわち、差分値行列の成分の値をすべて0にする。
次に、動きベクトル検出部120は、図5に示す差分算出領域の座標データの読み込む(ステップS302)。すなわち、動きベクトル検出部120は、各サンプリングポイント毎に設定されている、フレーム画像内における差分算出領域の範囲を示す座標データをメモリ126から読み込む。なお、当該実施形態において、「差分算出領域」とは、図5において点線で示される正方形状の領域で、以下で説明するステップS310〜S316における処理を行う領域である。各処理については後述する。
次に、動きベクトル検出部120は、(n−1)番目のフレーム画像のサンプリングポイントにおけるデータを読み込む(ステップS304)。すなわち、動きベクトル検出部120は、メモリ126から、(n−1)番目のフレーム画像におけるサンプリングポイント(図5に示す)の座標データおよび画素データを読み込む。当該実施形態において、読み込まれる画素データは、RGBいずれかのチャンネルの値または輝度値とする。
次に、動きベクトル検出部120は、n番目のフレーム画像における各画素データ(入力信号)およびその座標データを読み込む(ステップS306)。ここで、読み込まれる画素データは、RGBいずれかのチャンネルの値または輝度値であり、座標データは、フレーム画像内における各画素の位置を示す。読み込む順番は、図5に示すように、フレーム画像の左上から右横方向に読み込み、順次下方に1ライン毎読み込む。最終的にはフレーム画像の右下のポイントEP2まで到達し、当該読み込み処理を終了する。
次に、動きベクトル検出部120は、ステップS306において読み込まれた各画素が差分算出領域内に存在するか否かを判定する(ステップS308)。具体的には、ステップS306で読み込んだ画素の座標データと、ステップS302で読み込んだ差分算出領域の座標データを比較し、ステップS306で読み込んだ画素が差分算出領域内に存在するか否かを判定する。
判定の結果、ステップS306で読み込んだ画素が差分算出領域外ならば(ステップS308、No)、ステップS306に戻り、次の画素を読み込む。
判定の結果、ステップS306で読み込んだ画素が差分算出領域内に存在する場合(ステップS308、Yes)、動きベクトル検出部120は、ステップS306で読み込んだ画素の座標データと、ステップS304で読み込んだ(n−1)番目のフレーム画像におけるサンプリングポイントの座標データとが一致するか否かを判定する(ステップS310)。判定の結果、ステップS306で読み込んだ画素の座標データと、ステップS304で読み込んだ(n−1)番目のフレーム画像におけるサンプリングポイントの座標データとが一致すれば(ステップS310、Yes)、動きベクトル検出部120は、ステップS306で読み込んだn番目のフレーム画像における画素の画素データをサンプリングデータとしてメモリ126に保存する(S312)。
そして、ステップS312の処理の後、またはステップS310における判定の結果、ステップS306で読み込んだ画素の座標データと、ステップS304で読み込んだ(n−1)番目のフレーム画像におけるサンプリングポイントの座標データとが一致しない場合(ステップS310、No)、動きベクトル検出部120は、(n−1)番目のフレーム画像におけるサンプリングポイントのデータと、n番目のフレーム画像における画素データとの差分の絶対値を算出して(ステップS314)、当該算出された絶対値を差分値行列の対応成分に加算する(ステップS316)。
当該実施形態において、図5に示すように、差分値行列は差分算出領域内の全画素数と同数のデータを格納できるように構成され、差分値行列の中央の座標がサンプリングポイントの座標に相当する。差分値の絶対値を加算する成分は、差分値行列内のサンプリングポイントに対する位置関係において、ステップS306で読み込んだ画素座標と同じ位置にある成分である。
動きベクトル検出部120は、差分算出領域内の全画素の読み込みが終了したか否かの判定を行い(ステップS318)、ステップS306で読み込んだ画素の座標が図5の「差分値計算が終了するポイントEP1」か否かを判定する。差分算出領域内の全画素の読み込みが終了していない場合(ステップS318、No)、動きベクトル検出部120は、ステップS306〜S316の処理を繰り返す。
差分算出領域内の全画素の読み込みが終了し、ステップS306で読み込んだ画素の座標が図5の「差分値計算が終了するポイントEP1」に到達した場合(ステップS318、Yes)、フレーム画像取得部110がn番目のフレーム画像における残りの画素の読み込みを継続するとともに、動きベクトル検出部120は、n番目のフレーム画像の動きベクトルを検出する(ステップS320)。すなわち、動きベクトル検出部120は、差分値行列内における最小値の成分のサンプリングポイントからの位置(ベクトル)を求め、当該位置(ベクトル)をn番目のフレーム画像の動きベクトルとして検出して、メモリ126に保存する。
以上により図3のステップS30におけるn番目のフレーム画像の動きベクトル検出処理が終了して、図3のステップS35における(n+1)番目のフレーム画像の動きベクトルの予測処理が行われる。図6に、(n+1)番目のフレーム画像の動きベクトルの予測処理を説明するためのフローチャートを示す。
まず、次フレーム動きベクトル予測部124は、メモリ126に保存されている(n−1)番目のフレーム画像の動きベクトルおよびn番目のフレーム画像の動きベクトルを読み込む(ステップS350)。
次に、次フレーム動きベクトル予測部124は、ステップS10において入力されているn番目のフレーム画像の次のフレーム画像(以下、単に「次フレーム画像」と称する)である(n+1)番目のフレーム画像の予測動きベクトルを計算する(ステップS352)。
具体的には、次フレーム動きベクトル予測部124は、以下の式:
V(n+1)=V0(n)+α×(V0(n)−V0(n−1))
を用いて(n+1)番目のフレーム画像の予測動きベクトルを求める。
ここで、V(n+1)は、(n+1)番目のフレーム画像の予測動きベクトルであり、V0(n−1)、V0(n)は、それぞれ、(n−1)番目のフレーム画像の動きベクトル、n番目のフレーム画像の動きベクトルである。
また、補正係数αは|V0(n)−V0(n−1)|を変数とする0以上1以下の値で、変数|V0(n)−V0(n−1)|の値が大きくなるほど、αの値は同じか小さくなる(すなわち、単調減少する)。
以上により図3のステップS35における(n+1)番目のフレーム画像の動きベクトルの予測処理が終了して、図3のステップS40における(n+1)番目のフレーム画像の補正位置ベクトルS(n+1)の算出処理が行われる。
ここで、次のステップS40における補正位置ベクトルS(n+1)の算出処理、及び以下のステップS420における補正動きベクトルV1(n)の算出処理について、処理内容の説明についての理解を容易にするため、フレーム画像F(n)の動きベクトルV0(n)と補正位置ベクトルS(n)、及び補正動きベクトルV1(n)の関係について、図7および図8を用いて前もって説明する。
図7は、最初に取得される時系列順1番目のフレーム画像F(1)と、2番目、3番目のフレーム画像F(2)、F(3)をそれぞれ示している。本発明は、補正量に基づいてフレーム画像から所定の画像を切り出す補正処理によって補正フレーム画像を生成する画像処理技術を提供するものであり、補正処理が行われない場合、または補正量が0の場合に切り出されるフレーム画像は、それぞれ図7破線で示したフレーム画像FK(1)、FK(2)、FK(3)となる。
ここで、フレーム画像FK(n)は、図7に示したように、フレーム画像F(n)に対して所定の補正限界値Smax分小さい画面サイズとなる。詳しくは、X方向では左右それぞれ所定の補正限界値Sxmaxだけ、Y方向では上下それぞれ所定の補正限界値Symaxだけ画面サイズが小さい画像である。つまり、切り出される画像は、X方向では2×Sxmax分、Y方向では2×Symax分小さい画面サイズとなる。
所定の補正限界値Smax(X成分はSxmax、Y成分はSymax)は、本実施形態では、予めアプリケーションプログラムにデフォルトで所定の値が設定され、ハードディスク105などに格納されているものとする。もとより、ユーザーが、コンピュータ100に接続された入力手段(図示せず)を用いてデータ入力することによって設定し、格納するものとしてもよい。
同じく図7(下側)に、求められた相対位置に従って配置されたフレーム画像FK(1)、FK(2)、FK(3)を示した。図7より明らかなように、例えばフレーム画像F(2)の動きベクトルV0(2)は、フレーム画像FK(2)の動きベクトルと等しくなる。つまり、フレーム画像F(2)の動きベクトルV0(2)は、フレーム画像FK(1)に対するフレーム画像FK(2)の画面位置として求められる。フレーム画像FK(3)の動きベクトルV0(3)も同様にフレーム画像FK(2)に対するフレーム画像FK(3)の画面位置として求められる。動きベクトルV0(2)、V0(3)のX成分はX方向の画素数、Y成分はY方向の画素数で表される。
図7において、フレーム画像F(1)は、時系列順で一つ前のフレーム画像が存在しないため、本実施形態ではフレーム画像F(1)は動いていないものとして扱い、フレーム画像FK(1)の動きベクトルV0(1)は0とする。
次に、図8を用いてフレーム画像F(n)の補正位置ベクトルS(n)と動きベクトルV0(n)、及びステップS420(図9)にて算出される補正動きベクトルV1(n)の関係を説明する。図8は、図7(下部)に示したフレーム画像FK(1)〜FK(3)の左上隅部分を拡大して示した説明図である。ここで、補正フレーム画像HFG(2)は、ステップS40(図3)で算出されるフレーム画像F(2)の補正位置ベクトルS(2)によってフレーム画像FK(2)が補正された状態を示している。
図8から明らかなように、フレーム画像FK(2)は、動きベクトルV0(2)のX成分とY成分の画素数に従ってフレーム画像FK(1)の画面位置を移動したものであり、補正フレーム画像HFG(2)は、補正位置ベクトルS(2)のX成分とY成分の画素数に従ってフレーム画像FK(2)の画面位置を移動したものである。また、同様に、フレーム画像FK(3)は、動きベクトルV0(3)のX成分とY成分の画素数に従ってフレーム画像FK(2)の画面位置を移動したものであり、補正フレーム画像HFG(3)は、補正位置ベクトルS(3)のX成分とY成分の画素数に従って、フレーム画像FK(3)の画面位置を移動したものである。
また、図8に示したように、補正動きベクトルV1(2)は、フレーム画像FK(1)に対する補正フレーム画像HFG(2)の相対的な画面位置を示すものであり、補正動きベクトルV1(3)は、補正フレーム画像HFG(2)に対する補正フレーム画像HFG(3)の相対的な画面位置を示すものである。なお、動きベクトルV0(1)は0であることより補正位置ベクトルS(1)も0となる(後述する)。従って、フレーム画像FK(1)は補正フレーム画像HFG(1)と同じものになる。
ここで、動きベクトルV0(n)および補正動きベクトルV1(n)は、X成分は図面右方向をプラス、Y成分は図面上方向をプラスとするが、補正位置ベクトルS(n)は、移動量を補正する意味から動きベクトルと反対に、X成分は図面左方向をプラス、Y成分は図面下方向をプラスとする。従って、フレーム画像FK(2)、FK(3)の補正位置ベクトルS(2)、S(3)は、図8に示したように動きベクトルV0(2)、V0(3)と反対方向がプラス方向になる。
図8にて説明したように、補正位置ベクトルS(n+1)を、補正位置ベクトルS(n)と、動きベクトルV0(n+1)と、補正動きベクトルV1(n)との3つのベクトルから求めることができる。なお、当該実施形態では、動きベクトルV0(n+1)の代わりに、S35で求められた(n+1)番目のフレーム画像の動き予測ベクトルを用いる。
次に、図3に戻り、補正位置計算部130は、ステップS40において、補正位置ベクトルS(n+1)の算出処理を行う。ステップS40での処理については、図9のフローチャートを用いて詳しく説明する。
ステップS40の処理が開始されると、まずステップS410において、S35で求められた注目するフレーム画像F(n+1)の予測動きベクトルV(n+1)を入力する処理を行う。ここでは、ステップS35にて求められ、RAM102などのメモリ126に格納された予測動きベクトルV(n+1)を、CPU103が読み出すことによって入力処理を行う。
次に、ステップS420にて、注目するフレーム画像F(n+1)に対して時系列順で一つ前のフレーム画像(以下、単に「前フレーム画像」と称する)の補正動きベクトルV1(n)を入力する処理を行う。補正動きベクトルV1(n)は、X成分V1x(n)とY成分V1y(n)のベクトルとして以下の式を用いて算出する。
V1x(n)=V0x(n)−Sx(n)
V1y(n)=V0y(n)−Sy(n)
図7及び図8を参照して説明したように算出され、RAM102などのメモリ126に格納される。
また、ステップS430にて、フレーム画像F(n)の補正位置ベクトルS(n)を入力する処理を行う。具体的には、一つ前のフレーム画像F(n−1)が入力されている間のステップS40(図3)において算出され、RAM102などのメモリ126に格納された補正位置ベクトルS(n)を、CPU103が読み出すことによって入力処理を行う。
ステップS420及びステップS430において、「n=1」つまり時系列順1番目のフレーム画像の場合、前フレーム画像が存在しない。この場合は、前述したように本実施形態ではフレーム画像F(n)は動いていないものとし、その結果、補正動きベクトルV1(1)は0、また補正位置ベクトルS(1)も0となる。
次に、ステップS440にてX、Y各成分別に減衰係数K、Dの値の決定処理を行う。減衰係数K、Dは、次の処理ステップS490で用いる所定の演算式において使用する係数であり、補正位置ベクトルの大きさ、つまり補正量を決める係数となる。減衰係数K、Dとも、それぞれ1以下の小数である。
本実施形態では、次の3つの実施例のうち少なくとも一つの方法を用いて減衰係数K、Dの値を決定する。
「減衰係数決定方法の第1実施例」
前フレーム画像を補正した補正フレーム画像(以下、単に「前補正フレーム画像」と称する)について算出した画像の移動量と、注目するフレーム画像の移動量との大小によって、減衰係数K、Dの値を決定する。さらに、注目するフレーム画像の移動量が、前補正フレーム画像の移動量以上の場合、注目するフレーム画像の予測動きベクトルの方向と、前補正フレーム画像の補正動きベクトルの方向とに基づいて減衰係数K、Dの値を決定する方法。
「減衰係数決定方法の第2実施例」
補正可能範囲を示す補正限界値に対する前フレーム画像の補正量の比率と、前フレーム画像の補正量が「増加」か「減少」かの判断とによって、減衰係数K、Dの値を決定する方法。
「減衰係数決定方法の第3実施例」
補正可能範囲である補正限界値と、前フレーム画像の補正量との差分量に対して、注目するフレーム画像の予測動きベクトルと、前フレーム画像の補正動きベクトルとの差分量が、どれくらいの割合にあるかによって、減衰係数K、Dの値を決定する方法。
「第1の実施例」
まず、ステップS440(図9)にて行われる処理について、第1の実施例における減衰係数K、Dの決定処理の詳細を、図10に示した処理フローチャートを用いて説明する。第1の実施例での減衰係数K、Dの値の決定方法は、注目するフレーム画像の予測動きベクトルの大きさ及び向きと、時系列順一つ前の補正フレーム画像の大きさ及び向きとから補正量を算出し、予測動きベクトルの方向変化と大きさにあわせて注目するフレーム画像の補正量を算出しようとするものである。なお、ここでは、注目するフレーム画像のX成分についての処理を説明するが、処理ステップS440ではY成分についても図10に示したX成分の処理と同様の処理を行い、X成分、Y成分それぞれについて減衰係数K、Dの値を決定する。そして、後述する次の処理ステップS490(図9)において、補正位置ベクトルのX成分とY成分を所定の演算式にて算出する際、それぞれ決定した減衰係数K、Dの値を用いるのである。
ここでの処理が開始されると、まずステップS441において、S35で求められた注目するフレーム画像の予測動きベクトルV(n+1)のX成分Vx(n+1)の抽出処理を行う。X成分Vx(n+1)はX方向の画素数で示され、図8に示したようにベクトルの向きが図面右方向であればプラス、左方向であればマイナスとなる。なお注目するフレーム画像の予測動きベクトルV(n+1)のY成分Vy(n+1)については、図8に示したようにベクトルの向きが図面上方向であればプラス、下方向であればマイナスとなる。
次に、ステップS442にて、注目するフレーム画像に対して時系列順で一つ前のフレーム画像の補正動きベクトルV1(n)のX成分V1x(n)の抽出処理を行う。もとより、前述したように、V1x(0)=0である。
次に、ステップS443にて、Vx(n+1)の絶対値と、V1x(n)の絶対値とを算出する。そして、次の処理ステップS444にてVx(n+1)の絶対値がV1x(n)の絶対値以上か否かを判定する。ステップS444でNOの場合、つまり注目するフレーム画像の移動量が、前補正フレーム画像の移動量より小さい場合、ステップS445に進み、減衰係数K、Dの値をK1、D1に決定し、ステップS490(図9)に進む。
一方、ステップS444でYESの場合、つまり注目するフレーム画像の移動量が、前補正フレーム画像の移動量以上の場合、ステップS446に進み、Vx(n+1)とV1x(n)の積BSxを算出する。そして、次の処理ステップS447にて、BSxが0以上か否かを判定する。つまり、ここではベクトルVx(n+1)とベクトルV1x(n)とが同じ向き(0以上)なのか逆向き(0より小さい)なのかを調べるのである。
ステップS447にてNOの場合(つまり逆向きの場合)、ステップS448に進み、減衰係数K、Dの値をK2、D2に決定し、ステップS490(図9)に進む。ここで、K2の値はK1の値より大きく、D2の値はD1の値よりも大きい値である。
一方、ステップS447にてYESの場合(つまり同じ向きの場合)、ステップS449に進み、減衰係数K、Dの値をK3、D3に決定し、ステップS490(図9)に進む。ここで、K3の値はK2の値より大きく、D3の値はD2の値よりも大きい値である。
第1の実施例における減衰係数K、Dの値について、その一例を図11の減衰係数テーブルGKT1に示した。ここで、減衰係数Kの値は0.9≦K≦1の範囲で、K1<K2<K3を満たす値であることが望ましい。また、減衰係数Dの値は0.5≦D≦1の範囲で、D1<D2<D3を満たす値であることが望ましい。補正しようとするフレーム画像の移動量Vx(n+1)が、前補正フレーム画像の移動量V1x(n)より小さい場合、補正しようとするフレーム画像の移動量Vx(n+1)が前フレーム画像の移動量V1x(n)に対して減少しているということになる。従って、仮に、補正しようとするフレーム画像の補正フレーム画像の移動量V1x(n+1)が、前フレーム画像の移動量V1x(n)と同じであるように補正しようとするフレームの補正量Sx(n+1)を指定した(つまりK=D=1)とすると、補正量Sx(n+1)が補正限界値に達する確率は高くなる。そこで、小さい値の減衰係数を用いて補正量を少なくし、補正限界値に達しにくくするのである。
また、補正しようとするフレーム画像の移動量が、前補正フレーム画像の移動量以上である場合あっても、これら2つのフレーム画像の移動量が違う方向のときは、補正しようとするフレーム画像の補正フレーム画像の移動量V1x(n+1)が、前フレーム画像の移動量V1x(n)と同じであるように補正しようとするフレームの補正量Sx(n+1)を指定した(つまりK=D=1)とすると、補正量Sx(n+1)が補正限界値に達する確率は高くなる。そこで、同じ方向のときにくらべて減衰係数の値を小さくして、補正しようとするフレーム画像の補正量を少なくするのである。なお、減衰係数K1〜K3、D1〜D3の値は、本実施例に限らず、前述した条件を満たす値であれば何でもよい。
「第2の実施例」
次に、第2の実施例における減衰係数K、Dの決定処理の詳細を、図12に示した処理フローチャートを用いて説明する。第2の実施例での減衰係数K、Dの値の決定方法は、補正限界値に近いか否かを所定の比率RSによって補正量を算出し、さらに、所定の演算式によって補正量が増加か減少かを判断して注目するフレーム画像の補正量を算出しようとするものである。なお、ここでも、注目するフレーム画像のX成分についての処理を説明するが、処理ステップS440ではY成分についても図12に示したX成分の処理と同様の処理を行い、X成分、Y成分それぞれについて減衰係数K、Dの値を決定する。そして、後述する次の処理ステップS490(図9)にて、補正位置ベクトルのX成分とY成分を所定の演算式にて算出する際に、それぞれ決定した減衰係数K、Dの値を用いるのである。
ここでの処理が開始されると、まずステップS451にて補正限界値Sxmaxの入力処理を行う。具体的には、CPU103がハードディスク105などに格納されたSmaxのX成分についての値を読み出すことで行う。
次に、ステップS452にて、フレーム画像F(n)の補正位置ベクトルS(n)のX成分Sx(n)の抽出処理を行う。具体的には、S10において一つ前のフレーム画像F(n−1)が入力されている間のステップS40(図3)において算出され、RAM102などのメモリ126に格納された補正位置ベクトルS(n)を、CPU103が読み出すことによって入力処理を行う。ここで、前述したように、X成分Sx(n)は、画面左方向を正方向とする画素数で表される。もとよりY成分Sy(n)は、画面下方向を正とする画素数で表される。
次に、ステップS453にて、Sx(n)の絶対値をSxmaxで除した比率RSの値を算出する。RSの値が大きいほど、補正量が補正限界値に近い状態であることを示すことになる。
次にステップS454において、S35で求められた予測動きベクトルV(n+1)のX成分Vx(n+1)の抽出処理を行う。X成分Vx(n+1)はX方向の画素数で示され、図8に示したようにベクトルの向きが図面右方向であればプラス、左方向であればマイナスとなる。なお予測動きベクトルV(n+1)のY成分Vy(n+1)については、図8に示したようにベクトルの向きが図面上方向であればプラス、下方向であればマイナスとなる。
次に、ステップS455にて、フレーム画像F(n)の補正動きベクトルV1(n)のX成分V1x(n)の抽出処理を行う。なお、前述したように、n=1のときはV1x(1)=0である。
ステップS452、S454、S455にて抽出した各ベクトルを用いて、次のステップS456では、「式1」より傾向値KHxを算出する処理を行う。
KHx=Sx(n)×(Vx(n+1)−V1x(n))…「式1」
次に、ステップS457にて、傾向値KHxが0以上か否かの判定処理を行う。そして、YESの場合は、ステップS459にて補正は「増加」と判断し、NOの場合はステップS458にて「減少」と判断する処理を行う。Sx(n)つまり前フレーム画像の補正位置ベクトルに基づく補正方向と、Vx(n+1)−V1x(n)つまり注目するフレーム画像の予測動きベクトルと前フレーム画像の補正ベクトルとの差に基づく画像の移動方向とを比べて、それぞれの向きが逆方向の場合は増加、同じ方向の場合は減少と判断するのである。
次に、算出された比率RSと「増加」又は「減少」の判断情報から、ステップS460にて、減衰係数テーブルGKT2を用いて減衰係数K、Dの値を決定する処理を行う。減衰係数テーブルGKT2の一例を図13に示す。減衰係数テーブルはハードディスク105などに格納され、比率RSのデータと「増加」又は「減少」の情報とから、CPU103は、減衰係数テーブルGKT2より該当するアドレスの値を読み出し、減衰係数K、Dの値を決定する。
図13に示したように、第2の実施例では、減衰係数テーブルGKT2において、比率RSの値を、小数点第2位を四捨五入し0.1きざみの値とした。そして、減衰係数K、Dの値を、比率RSが大きい値になるに従って、前の値以下の小さい値になるよう設定した。さらに「増加」情報に対応する値を、「減少」情報に対応する値よりも小さい値に設定した。比率RSが同じ場合でも、増加と判断した場合は、補正方向と画像の移動方向とが逆方向であることから、減少と判断した場合よりも補正が補正限界値に達しやすいため、減衰係数K、Dを小さくして補正量を少なくするのである。もとより、比率RSの値はさらに細かいきざみ幅としたり、逆にもっと粗いきざみ幅としたりしてもよい。さらに、きざみ幅も同一でなく変化させたりしても差し支えない。
図13に示した減衰係数テーブルGKT2は、減衰係数K、Dの具体的な数値設定の一例を示したものであり、減衰係数Kの値は0.9≦K≦1の範囲で、減衰係数Dの値は0.5≦D≦1の範囲で、RSの値に合わせて変更してもよい。このとき、RSの値が大きい値になるに従って、減衰係数K、Dの値は前の値以下の小さい値になるよう設定することが好ましい。RSの値が大きい場合は、RSの値が小さい場合よりも補正量が補正限界値に近いことになるため、減衰係数を小さくして補正量を少なくするのである。
「第3の実施例」
次に、第3の実施例における減衰係数K、Dの決定処理の詳細を、図14に示した処理フローチャートを用いて説明する。第3の実施例での減衰係数K、Dの値の決定方法は、注目するフレーム画像の補正量を算出する際、時系列順で一つ前の補正フレーム画像の補正量で補正したとき、補正限界値まで何回補正可能かを調べて注目するフレーム画像の補正量を算出しようとするものである。なお、ここでも、注目するフレーム画像のX成分についての処理を説明するが、処理ステップS440ではY成分についても図14に示したX成分の処理と同様の処理を行い、X成分、Y成分それぞれについて減衰係数K、Dの値を決定する。そして、後述する次の処理ステップS490(図9)にて、補正位置ベクトルのX成分とY成分を所定の演算式にて算出する際に、それぞれ決定した減衰係数K、Dの値を用いるのである。
ここでの処理が開始されると、まずステップS461にて補正限界値Sxmaxの入力処理を行う。具体的には、CPU103がハードディスク105などに格納されたSmaxのX成分についての値を読み出すことで行う。
次にステップS462において、S35で求められた予測動きベクトルV(n+1)のX成分Vx(n+1)の抽出処理を行う。X成分Vx(n+1)はX方向の画素数で示され、図8に示したようにベクトルの向きが図面右方向であればプラス、左方向であればマイナスとなる。なお予測動きベクトルV(n+1)のY成分Vy(n+1)については、図8に示したようにベクトルの向きが図面上方向であればプラス、下方向であればマイナスとなる。
次に、ステップS463にて、補正動きベクトルV1(n)のX成分V1x(n)の抽出処理を行う。もとより、前述したように、n=1のときはV1x(1)=0である。
次に、ステップS464にて、補正位置ベクトルS(n)のX成分Sx(n)の抽出処理を行う。ここで、前述したように、X成分Sx(n)は、画面左方向を正方向とする画素数で表される。もとよりY成分Sy(n)は、画面下方向を正とする画素数で表される。
次に、ステップS465にて、「式2」よりベクトル差分値BSTの算出処理を行う。
BST=|Vx(n+1)−V1x(n)| …「式2」
次に、ステップS466にて、「式3」より補正残量値SZTの算出処理を行う。
SZT=Sxmax−|Sx(n)| …「式3」
次に、ステップS467にて、「式4」より補正限界フレーム数Tの算出処理を行う。
T=SZT÷BST …「式4」
ステップS467にて算出された補正限界フレーム数Tの値から、ステップS468にて、減衰係数テーブルGKT3を用いて減衰係数K、Dの値を決定する。減衰係数テーブルGKT3の一例を図15に示す。減衰係数テーブルGKT3はハードディスク105などに格納され、補正限界フレーム数Tのデータから、CPU103は、減衰係数テーブルGKT3より該当するアドレスの値を読み出し、減衰係数K、Dの値を決定する。
図15に示した減衰係数テーブルGKT3において、補正限界フレーム数Tは、小数点第一位を四捨五入して整数値化した値とした。また減衰係数テーブルGKT3は、具体的な数値設定の一例を示したものであり、減衰係数Kの値は0.9≦K≦1の範囲で、減衰係数Dの値は0.5≦D≦1の範囲で、補正限界フレーム数Tの値に合わせて変更してもよい。このとき、Tの値が大きい値になるに従って、減衰係数K、Dの値は大きい値になるよう設定することが好ましい。Tの値が大きい場合は、Tの値が小さい場合よりも補正限界値に達するまでの補正量に余裕があることになるため、減衰係数を大きくしてフレーム画像の補正量を多くするのである。
以上、第1から第3の実施例にて説明したX成分についての処理を、Y成分についても同様に行い、X、Y各成分別に減衰係数K、Dの値を決定して処理ステップS490に進む。
第1ないし第3の実施例によって減衰係数K、Dの値がX成分、Y成分について決定されると、ステップS490(図9)に戻り、所定の演算式を用いて補正位置ベクトルS(n+1)を算出する処理を行う。本実施形態では、所定の演算式として次の「式5」を用いる。
S(n+1)=K×S(n)+D×(V(n+1)−V1(n)) …「式5」
補正位置ベクトルS(n+1)は、具体的には「式5」を用いて、X成分およびY成分についての補正位置ベクトルSx(n+1)およびSy(n+1)をそれぞれ算出することによって求められる。
「式5」から明らかなように、予測動きベクトルV(n+1)と、フレーム画像F(n)を補正した補正フレーム画像HFG(n)の補正動きベクトルV1(n)との差分を求め、この差分に減衰係数Dを乗じた値を補正位置ベクトルS(n+1)の算出に用いるため、フレーム画像F(n+1)を補正した補正フレーム画像HFG(n+1)と前補正フレーム画像HFG(n)間について、画像の移動が滑らかになる確率が高くなる。
なお「式5」において、注目するフレーム画像が時系列順1番目(n=1)の場合、本実施形態では前述したようにフレーム画像F(1)は動いていないとしたことから、S(1)=0である。ちなみに、
n=2の場合は、S(2)=K×0+D×(V(2)−0)=D×V(2)
n=3の場合は、S(3)=K×S(2)+D×(V(3)−V1(2))
によって、補正位置ベクトルが算出される。
(B)S28およびS50における処理
次に、図3に戻り、前記(A)S26、S30、S35およびS40における処理および(C)S65およびS70における処理と並行して行われるS28およびS50における処理について説明する。
まず、ステップS28において、m=1か否かが判定され、m=1の場合(S28、YES)には、ステップS80に進む。
一方、m=1でない場合(S28、NO)、ステップS50において、補正フレーム画像生成部140が、補正フレーム画像HFG(n)の生成処理を行う。
図16に、n=3のときフレーム画像F(3)から所定の画像を切り出して生成される補正フレーム画像HFG(3)の例を示した。図16の上側に、補正がされない場合つまり補正量が0である場合において所定の画像となるフレーム画像FK(3)を破線で示した。そして、図16の下側に、ステップS40にて算出された補正位置ベクトルS(3)に従って、X方向にSx(3)、Y方向にSy(3)だけ画面位置を補正して切り出した補正フレーム画像HFG(3)を示した。
同様に、一般的に、S10において(n−1)番目のフレーム画像F(n−1)が入力されている間にステップS40において算出される補正位置ベクトルS(n)に従って、フレーム画像F(n)の画面位置をX方向にSx(n)、Y方向にSy(n)だけを補正して切り出して補正フレーム画像HFG(n)を生成する。
このように、画面位置を補正することによって、フレーム画像について画像の移動量が抑えられることになる。
(C)S65およびS70における処理
次に、図3に戻り、前記(A)S26、S30、S35およびS40における処理および(B)S28およびS50における処理と並行して行われるS65およびS70における処理について説明する。
まず、S65では、画像出力部150が、S10で(n−1)番目のフレーム画像F(n−1)が入力されている間にS50において生成された補正フレーム画像HFG(n−1)の拡大処理を、S10でn番目のフレーム画像F(n)が入力されている間に行う。
S50において生成される補正フレーム画像の画面サイズは、取得したフレーム画像の画面サイズに対して、横方向で2×Sxmax、縦方向で2×Symax分小さい画像であるが、当該実施形態においては、S50において生成される補正フレーム画像の画面サイズを、取得したフレーム画像と同じ画面サイズに拡大する。
画面の拡大は、補正フレーム画像の画素数をフレーム画像の画素数と同じにすることで行う。画像を構成する画素数の増加は、画素の補間処理によって実現することができる。補間処理は、バイ・リニア法のほか、バイ・キュービック法、ニアレストネイバ法など、周知の手法を用いる。
次に、ステップS70にて、画像出力部150が、S65において拡大された補正フレーム画像HFG(n−1)の出力処理を行う。本実施形態では、拡大された補正フレーム画像HFG(n−1)を、出力I/F106(図1)によってビデオプロジェクタ300などの画像表示装置が必要とする画像信号に変換し、補正フレーム画像を生成する毎に直ちに出力するものとする。こうすれば、補正対象となるフレーム画像の取得後から補正フレーム画像の出力までの時間が短くなり、補正をリアルタイムでおこなえる可能性がある。もとより、拡大された補正フレーム画像HFG(n−1)の出力先をRAM102やハードディスク105などに設けられた所定の画像ファイルとし、生成した一連の複数の補正フレーム画像を格納することとしてもよい。
以上でS26〜S70についての処理を終了し、ステップS80にてnを更新する(n=n+1とする)。そして、ステップS10に戻り、時系列順で一つ後のフレーム画像について同様の処理を繰り返し、取得される全てのフレーム画像について補正フレーム画像を出力する。
図17に、本発明の一実施形態による画像処理装置の動作タイミング図を示す。横軸は時間であり、「(1)入力画像信号」におけるn、n+1は、それぞれS10においてn番目および(n+1)番目のフレーム画像が入力されている間を示す。Δtは、図5に示すように、S306で読み込まれている画素が、EP1(差分値計算が終了するポイント)からEP2(当該フレームにおけるデータの読み込みが終了するポイント)に至るまでの時間であり、その間に次フレームの動きベクトルの予測処理および補正位置算出処理を行う。もし、現フレームの読み込みが終了してから(EP2)、次のフレームの読み込みが開始しされるまでの間に、垂直ブランキング期間などの時間が存在する場合には、次フレームの動きベクトルの予測処理および補正位置算出処理は、次フレームの読み込みが開始されるまでの間に行えば良い。「(2)差分算出領域」における各矢印は、各差分算出領域において図4のS310〜S318の処理が行われている間を示す。「(3)動きベクトル検出」における矢印{n−(n−1)}および{(n+1)−n}は、それぞれn番目および(n+1)番目のフレーム画像の動きベクトル検出処理(S30)が行われている間を示す。「(4)次フレーム動きベクトル予測」における矢印{(n+1)−n}および{(n+2)−(n+1)}は、それぞれ(n+1)番目および(n+2)番目のフレーム画像の動きベクトル予測処理(S35)が行われている間を示す。「(5)補正位置算出処理」における矢印{(n+1)−n}および{(n+2)−(n+1)}は、それぞれ(n+1)番目および(n+2)番目のフレーム画像の補正位置算出処理(S40)が行われている間を示す。「(6)フレーム画像切り出し」におけるn、n+1は、それぞれS10においてn番目および(n+1)番目のフレーム画像の切り出し処理(S50の補正フレーム画像の生成処理)が行われている間を示す。「(7)フレーム画像拡大」におけるn−1、nは、それぞれS10において(n−1)番目およびn番目のフレーム画像の拡大および出力処理(S65およびS70)が行われている間を示す。
図17から明らかなように、S10においてn番目のフレーム画像を読み込んでいる間に、n番目のフレーム画像以前の複数のフレーム画像に基づき求めた動きベクトルから、(n+1)番目のフレーム画像の予想動きベクトルを求めることができる。求めた(n+1)番目のフレーム画像の予想動きベクトルを用いて補正位置算出処理を行う。これによって、入力映像に対し手ぶれによる画像ぶれの補正を行う。
また、S10においてn番目のフレーム画像を読み込んでいる間に、n番目のフレーム画像の動きベクトル算出、(n+1)番目のフレーム画像の予想動きベクトルの算出、(n+1)番目のフレーム画像の読み出し位置の計算を行う。もし、n番目のフレーム画像と(n+1)番目のフレーム画像の間に垂直ブランキング期間などの時間が存在する場合には、(n+1)番目のフレーム画像の予測動きベクトルの算出と(n+1)番目のフレームの読み出し位置の計算は、(n+1)番目のフレーム画像の読み込みが開始されるまでの間に行えば良い。S10においてn番目のフレーム画像を読み込んでいる間に求めた(n+1)番目のフレーム画像の読み出し位置を用いて、(n+1)番目のフレーム画像を読み込むのと平行して、(n+1)番目のフレーム画像の切り抜き画像を出力することができる。
このようにして、n番目のフレーム画像以前の複数のフレーム画像に基づいてで求めた動きベクトルから、次のフレーム画像での動きベクトルを予測することができる。よって、動きベクトルの検出から次フレーム画像の動きベクトルの予測、次フレーム画像に対する補正量の計算までを、1フレーム画像分の情報を読み込む間に平行して行うことにより、手ぶれ補正処理などをリアルタイムで行う際に必要な、フレーム画像を保持するためのメモリの量を抑えつつリアルタイムの処理が可能になる。
以上、本発明の一実施形態を説明したが、本発明はこうした実施の形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内において様々な形態で実施し得ることは勿論である。
(変形例1)例えば、前記実施形態では、動画像から取得したフレーム画像F(n)の移動ベクトルを、フレーム画像F(n)とフレーム画像F(n−1)との相対的な位置関係から算出したが、動画像を撮影する際に、速度センサーや加速度センサーなど移動量を検出する手段によって、フレーム画像のメタデータとして画面位置データが存在する場合は、この画面位置データを用いて移動ベクトルを算出してもよい。こうすれば、画像のパターンマッチングや特徴点追跡といった画像処理を行う必要がなく、動きベクトルを算出に関する処理の負荷を軽減することができる。
(変形例2)また、前記実施形態における画像処理装置は、汎用のコンピュータで構成するようにしたが、本発明はこれに限定されるものでなく、モバイルコンピュータやワークステーションなどで構成するようにしてもよい。あるいは、デジタルカメラやビデオカメラ、DVD録画再生機、またはビデオプロジェクタやTV、あるいは携帯電話など、動画像を記録又は再生できる機器や、時系列順で静止画像を記録又は再生できる種々の機器に、本発明の画像処理装置を組み込んで構成するようにしてもよい。
(変形例3)また、前記実施形態における画像処理装置は、フレーム画像を構成する所定枚数のフィールド画像全てからフレーム画像を取得し、この取得したフレーム画像について所定の画像を切り出す位置を補正するものとしたが、これに限定せず、フレーム画像がN枚(Nは2以上の整数)のフィールド画像によって構成されている場合、これらN枚のフィールド画像のうち、1枚からN−1枚までのうち任意の枚数のフィールド画像から得られる画像をフレーム画像として、所定の画像を切り出す位置を補正するものとしても差し支えない。
本発明の一実施形態としての画像処理装置の概略構成を示す説明図である。 本発明の一実施形態としての画像処理装置の機能ブロック図である。 本発明の一実施形態としての画像処理装置における処理を説明するフローチャートである。 図3のS30におけるn番目のフレーム画像の動きベクトルの検出処理を詳細に説明するためのフローチャートである。 図3のS30におけるn番目のフレーム画像の動きベクトルの検出処理を詳細に説明するための説明図である。 (n+1)番目のフレーム画像の動きベクトルの予測処理を説明するためのフローチャートである。 フレーム画像の動きベクトルを説明するための説明図である。 フレーム画像の動きベクトルと補正動きベクトル、及び補正位置ベクトルの関係を説明するための説明図である。 補正位置ベクトルの算出処理を説明するフローチャートである。 第1の実施例における減衰係数の決定処理を説明するフローチャートである。 第1の実施例における減衰係数の値を説明するための減衰係数テーブルである。 第2の実施例における減衰係数の決定処理を説明するフローチャートである。 第2の実施例における減衰係数の値を説明するための減衰係数テーブルである。 第3の実施例における減衰係数の決定処理を説明するフローチャートである。 第3の実施例における減衰係数の値を説明するための減衰係数テーブルである。 フレーム画像から補正フレーム画像を生成する方法を説明する説明図である。 本発明の一実施形態による画像処理装置の動作タイミング図である。
符号の説明
100…コンピュータ、101…入力I/F、102…RAM、103…CPU、104…ROM、105…ハードディスク、106…出力I/F、107…バスライン、110…フレーム画像取得部、120…動きベクトル検出部、124…次フレーム動きベクトル予測部、126…メモリ126、130…補正位置算出部、140…補正フレーム画像生成部、150…画像出力部、200…ビデオカメラ、210…DVDプレーヤ、300…プロジェクタ、310…ディスプレイ、F(n)…フレーム画像、FK(n)…フレーム画像、HFG(1)…補正フレーム画像、Smax…補正限界値、Sxmax…補正限界値のX成分、Symax…補正限界値のY成分、V0(n)…動きベクトル、V1(n)…補正動きベクトル、S(n)…補正位置ベクトル、Sx(n)…補正位置ベクトルのX成分、Sy(n)…補正位置ベクトルのY成分、K…減衰係数、D…減衰係数、GKT1〜3…減衰係数テーブル。

Claims (12)

  1. 動画像または時系列に連続する静止画像から一定量の画像を取得し、該取得した一定量の画像について、所定の画像を切り出して補正画像を生成する画像処理装置であって、
    時系列順に一定量の画像毎に、当該一定量の画像を順次取得する画像取得部と、
    前記順次取得した一定量の画像のうち、n(nは1以上の整数)番目の一定量の画像の動きベクトルを、n番目の一定量の画像より時系列順で一つ前の(n−1)番目の一定量の画像を用いて検出する動きベクトル検出部と、
    当該検出されたn番目の一定量の画像の動きベクトルと、(n−1)番目の一定量の画像の動きベクトルとを用いて、n番目の一定量の画像より時系列順で一つ後の(n+1)番目の一定量の画像の予測動きベクトルを算出する次画像動きベクトル予測部と、
    当該算出された(n+1)番目の一定量の画像の予測動きベクトルを用いて、前記(n+1)番目の一定量の画像について、前記所定の画像を切り出す位置を示す補正位置ベクトルを算出する補正位置算出部と、
    を備え、
    前記動きベクトル検出部によるn番目の一定量の画像の動きベクトルの検出と、前記次画像動きベクトル予測部による(n+1)番目の一定量の画像の予測動きベクトルの算出と、前記補正位置算出部による(n+1)番目の一定量の画像についての補正位置ベクトルの算出とを、前記画像取得部がn番目の一定量の画像を取得している間に行う、画像処理装置。
  2. 請求項1に記載の画像処理装置であって、
    前記算出された補正位置ベクトルに基づいて、前記取得された一定量の画像についての補正画像を生成する補正画像生成部をさらに備え、
    当該補正画像生成部は、前記画像取得部が(n+1)番目の一定量の画像を取得している間に、前記補正位置算出部によって算出された(n+1)番目の一定量の画像についての補正位置ベクトルを用いて、(n+1)番目の一定量の画像についての補正画像を生成する、画像処理装置。
  3. 請求項1または2に記載の画像処理装置であって、
    所定の補正画像の拡大率に基づいて、前記補正画像を拡大して出力する画像出力部をさらに備え、
    当該画像出力部は、前記画像取得部が(n+1)番目の一定量の画像を取得している間に、前記補正画像生成部によって生成されたn番目の一定量の画像についての補正画像を拡大して出力する、画像処理装置。
  4. 請求項1乃至3のいずれか一項に記載の画像処理装置であって、
    前記次画像動きベクトル予測部は、予測動きベクトルの算出において、
    V(n+1)=V0(n)+α×(V0(n)−V0(n−1))
    V(n+1)は、(n+1)番目の一定量の画像の予測動きベクトル
    V0(n−1)は、(n−1)番目の一定量の画像の動きベクトル
    V0(n)は、n番目の一定量の画像の動きベクトル
    α:|V0(n)−V0(n−1)|を変数とする0以上1以下の値の補正係数
    で示される演算式を用いて、(n+1)番目の一定量の画像の予測動きベクトルを求める、画像処理装置。
  5. 請求項4に記載の画像処理装置であって、
    変数|V0(n)−V0(n−1)|の値が大きくなるほど、補正係数αの値は同じか小さくなる、画像処理装置。
  6. 請求項1乃至5のいずれか一項に記載の画像処理装置であって、
    前記動きベクトル検出部は、(n−1)番目の一定量の画像における複数のサンプリングポイントのデータと、当該サンプリングポイントに対応するn番目の一定量の画像における差分算出領域内の各画素データとの差分値に基づき、n番目の一定量の画像の動きベクトルを検出する、画像処理装置。
  7. 請求項6に記載の画像処理装置であって、
    前記差分値の絶対値を、各サンプリングポイントに対して同一の位置関係にある対応成分毎に加算して、加算結果が最小値となる成分のサンプリングポイントからの位置(ベクトル)を、n番目の一定量の画像の動きベクトルとして検出する、画像処理装置。
  8. 動画像または時系列に連続する静止画像から一定量の画像を取得し、該取得した一定量の画像について、所定の画像を切り出して補正画像を生成して表示する画像表示装置であって、
    時系列順に一定量の画像毎に、当該一定量の画像を順次取得する画像取得部と、
    前記順次取得した一定量の画像のうち、n(nは1以上の整数)番目の一定量の画像の動きベクトルを、n番目の一定量の画像より時系列順で一つ前の(n−1)番目の一定量の画像を用いて検出する動きベクトル検出部と、
    当該検出されたn番目の一定量の画像の動きベクトルと、(n−1)番目の一定量の画像の動きベクトルとを用いて、n番目の一定量の画像より時系列順で一つ後の(n+1)番目の一定量の画像の予測動きベクトルを算出する次画像動きベクトル予測部と、
    当該算出された(n+1)番目の一定量の画像の予測動きベクトルを用いて、前記(n+1)番目の一定量の画像について、前記所定の画像を切り出す位置を示す補正位置ベクトルを算出する補正位置算出部と、
    を備え、
    前記動きベクトル検出部によるn番目の一定量の画像の動きベクトルの検出と、前記次画像動きベクトル予測部による(n+1)番目の一定量の画像の予測動きベクトルの算出と、前記補正位置算出部による(n+1)番目の一定量の画像についての補正位置ベクトルの算出とを、前記画像取得部がn番目の一定量の画像を取得している間に行う、画像表示装置。
  9. 動画像または時系列に連続する静止画像から一定量の画像を取得し、該取得した一定量の画像について、所定の画像を切り出して補正画像を生成する画像撮像装置であって、
    時系列順に一定量の画像毎に、当該一定量の画像を順次取得する画像取得部と、
    前記順次取得した一定量の画像のうち、n(nは1以上の整数)番目の一定量の画像の動きベクトルを、n番目の一定量の画像より時系列順で一つ前の(n−1)番目の一定量の画像を用いて検出する動きベクトル検出部と、
    当該検出されたn番目の一定量の画像の動きベクトルと、(n−1)番目の一定量の画像の動きベクトルとを用いて、n番目の一定量の画像より時系列順で一つ後の(n+1)番目の一定量の画像の予測動きベクトルを算出する次画像動きベクトル予測部と、
    当該算出された(n+1)番目の一定量の画像の予測動きベクトルを用いて、前記(n+1)番目の一定量の画像について、前記所定の画像を切り出す位置を示す補正位置ベクトルを算出する補正位置算出部と、
    を備え、
    前記動きベクトル検出部によるn番目の一定量の画像の動きベクトルの検出と、前記次画像動きベクトル予測部による(n+1)番目の一定量の画像の予測動きベクトルの算出と、前記補正位置算出部による(n+1)番目の一定量の画像についての補正位置ベクトルの算出とを、前記画像取得部がn番目の一定量の画像を取得している間に行う、画像撮像装置。
  10. 動画像または時系列に連続する静止画像から一定量の画像を取得し、該取得した一定量の画像について、所定の画像を切り出して補正画像を生成する画像処理方法であって、
    時系列順に一定量の画像毎に、当該一定量の画像を順次取得する画像取得工程と、
    前記順次取得した一定量の画像のうち、n(nは1以上の整数)番目の一定量の画像の動きベクトルを、n番目の一定量の画像より時系列順で一つ前の(n−1)番目の一定量の画像を用いて検出する動きベクトル検出工程と、
    当該検出されたn番目の一定量の画像の動きベクトルと、(n−1)番目の一定量の画像の動きベクトルとを用いて、n番目の一定量の画像より時系列順で一つ後の(n+1)番目の一定量の画像の予測動きベクトルを算出する次画像動きベクトル予測工程と、
    当該算出された(n+1)番目の一定量の画像の予測動きベクトルを用いて、前記(n+1)番目の一定量の画像について、前記所定の画像を切り出す位置を示す補正位置ベクトルを算出する補正位置算出工程と、
    を備え、
    前記動きベクトル検出工程によるn番目の一定量の画像の動きベクトルの検出と、前記次画像動きベクトル予測工程による(n+1)番目の一定量の画像の予測動きベクトルの算出と、前記補正位置算出工程による(n+1)番目の一定量の画像についての補正位置ベクトルの算出とを、前記画像取得工程がn番目の一定量の画像を取得している間に行う、画像処理方法。
  11. 動画像または時系列に連続する静止画像から一定量の画像を取得し、該取得した一定量の画像について、所定の画像を切り出して補正画像を生成する処理をコンピュータに実行させるためのプログラムであって、
    時系列順に一定量の画像毎に、当該一定量の画像を順次取得する画像取得処理と、
    前記順次取得した一定量の画像のうち、n(nは1以上の整数)番目の一定量の画像の動きベクトルを、n番目の一定量の画像より時系列順で一つ前の(n−1)番目の一定量の画像を用いて検出する動きベクトル検出処理と、
    当該検出されたn番目の一定量の画像の動きベクトルと、(n−1)番目の一定量の画像の動きベクトルとを用いて、n番目の一定量の画像より時系列順で一つ後の(n+1)番目の一定量の画像の予測動きベクトルを算出する次画像動きベクトル予測処理と、
    当該算出された(n+1)番目の一定量の画像の予測動きベクトルを用いて、前記(n+1)番目の一定量の画像について、前記所定の画像を切り出す位置を示す補正位置ベクトルを算出する補正位置算出処理と、
    を備え、
    前記動きベクトル検出処理によるn番目の一定量の画像の動きベクトルの検出と、前記次画像動きベクトル予測処理による(n+1)番目の一定量の画像の予測動きベクトルの算出と、前記補正位置算出処理による(n+1)番目の一定量の画像についての補正位置ベクトルの算出とを、前記画像取得処理がn番目の一定量の画像を取得している間に行う、プログラム。
  12. 動画像または時系列に連続する静止画像から一定量の画像を取得し、該取得した一定量の画像について、所定の画像を切り出して補正画像を生成する処理をコンピュータに実行させるためのプログラムを記録したコンピュータによって読取可能な記録媒体であって、
    時系列順に一定量の画像毎に、当該一定量の画像を順次取得する画像取得処理と、
    前記順次取得した一定量の画像のうち、n(nは1以上の整数)番目の一定量の画像の動きベクトルを、n番目の一定量の画像より時系列順で一つ前の(n−1)番目の一定量の画像を用いて検出する動きベクトル検出処理と、
    当該検出されたn番目の一定量の画像の動きベクトルと、(n−1)番目の一定量の画像の動きベクトルとを用いて、n番目の一定量の画像より時系列順で一つ後の(n+1)番目の一定量の画像の予測動きベクトルを算出する次画像動きベクトル予測処理と、
    当該算出された(n+1)番目の一定量の画像の予測動きベクトルを用いて、前記(n+1)番目の一定量の画像について、前記所定の画像を切り出す位置を示す補正位置ベクトルを算出する補正位置算出処理と、
    を備え、
    前記動きベクトル検出処理によるn番目の一定量の画像の動きベクトルの検出と、前記次画像動きベクトル予測処理による(n+1)番目の一定量の画像の予測動きベクトルの算出と、前記補正位置算出処理による(n+1)番目の一定量の画像についての補正位置ベクトルの算出とを、前記画像取得処理がn番目の一定量の画像を取得している間に行う、プログラムを記録したコンピュータによって読取可能な記録媒体。
JP2005061726A 2005-03-07 2005-03-07 画像処理装置、画像表示装置、画像撮像装置、画像処理方法、プログラムおよび記録媒体 Pending JP2006246270A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005061726A JP2006246270A (ja) 2005-03-07 2005-03-07 画像処理装置、画像表示装置、画像撮像装置、画像処理方法、プログラムおよび記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005061726A JP2006246270A (ja) 2005-03-07 2005-03-07 画像処理装置、画像表示装置、画像撮像装置、画像処理方法、プログラムおよび記録媒体

Publications (1)

Publication Number Publication Date
JP2006246270A true JP2006246270A (ja) 2006-09-14

Family

ID=37052174

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005061726A Pending JP2006246270A (ja) 2005-03-07 2005-03-07 画像処理装置、画像表示装置、画像撮像装置、画像処理方法、プログラムおよび記録媒体

Country Status (1)

Country Link
JP (1) JP2006246270A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7956899B2 (en) 2007-08-29 2011-06-07 Sanyo Electric Co., Ltd. Imaging device and image processing apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7956899B2 (en) 2007-08-29 2011-06-07 Sanyo Electric Co., Ltd. Imaging device and image processing apparatus
US8411172B2 (en) 2007-08-29 2013-04-02 Sanyo Electric Co., Ltd. Imaging device and image processing apparatus

Similar Documents

Publication Publication Date Title
US8072511B2 (en) Noise reduction processing apparatus, noise reduction processing method, and image sensing apparatus
US8274570B2 (en) Image processing apparatus, image processing method, hand shake blur area estimation device, hand shake blur area estimation method, and program
US9743000B2 (en) Moving image processing apparatus, imaging apparatus, and moving image processing method
JP5189678B2 (ja) 動画像の手ぶれ補正装置及び方法
JP6500535B2 (ja) 画像処理装置、画像処理方法及びプログラム
US20050122403A1 (en) Image processing apparatus
JP4482933B2 (ja) 動きベクトル検出装置、画像表示装置、画像撮像装置、動きベクトル検出方法、プログラムおよび記録媒体
US20090323814A1 (en) Tracking point detection apparatus and method, program, and recording medium
JP5841345B2 (ja) 画像処理装置、画像処理方法、画像処理プログラム、及び、撮像装置
JP2007028251A (ja) 画像処理装置、画像処理方法、プログラムおよび記録媒体
US7522189B2 (en) Automatic stabilization control apparatus, automatic stabilization control method, and computer readable recording medium having automatic stabilization control program recorded thereon
JP5015089B2 (ja) フレームレート変換装置、フレームレート変換方法、テレビジョン受像機、フレームレート変換プログラムおよび該プログラムを記録した記録媒体
KR101012481B1 (ko) 동영상 손떨림 보정 장치 및 방법
JP5300413B2 (ja) 動きベクトル検出装置及び動きベクトル検出方法及び撮像装置及びプログラム
JP6245968B2 (ja) 画像処理装置、撮像装置および制御方法
JP2007267232A (ja) 電子的手振れ補正方法及びその装置並びに撮像装置
JP2006246270A (ja) 画像処理装置、画像表示装置、画像撮像装置、画像処理方法、プログラムおよび記録媒体
JP2003078808A (ja) 動きベクトル検出装置および方法、手振れ補正装置および方法、並びに撮像装置
JP2015079329A (ja) 画像処理装置、画像処理方法およびプログラム
JP2006285655A (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP2006235689A (ja) 画像処理装置、画像表示装置、画像撮像装置、画像処理方法、プログラムおよび記録媒体
JP4597073B2 (ja) 手ブレ補正方法、手ブレ補正装置、および撮像装置
KR20160036974A (ko) 고해상도 영상 획득 장치 및 방법
JP2006186762A (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP2017220800A (ja) 再生装置およびその制御方法、プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090602

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090616

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090811

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090901