(57)【要約】【課題】ユーザの意図に沿って変化する画像を得ることができる画像処理装置を提供する。【解決手段】画像処理装置は、補正の対象となる複数の画像を選択する選択手段と、複数の画像のうちの第１の画像の第１の傾きと、複数の画像のうちの第１の画像より後に撮影された第２の画像の第２の傾きとを算出する算出手段と、第１の傾きと第２の傾きとの差分と、複数の画像の各々の撮影順とに基づいて、第１の画像から第２の画像における傾きが徐々に変化するように第１の画像と第２の画像との間にある画像をそれぞれ補正する補正手段とを備える。【選択図】図１
2017098846.tif 000002
【特許請求の範囲】
【請求項１】
補正の対象となる複数の画像を選択する選択手段と、
前記複数の画像のうちの第１の画像の第１の傾きと、前記複数の画像のうちの前記第１の画像より後に撮影された第２の画像の第２の傾きとを算出する算出手段と、
前記第１の傾きと前記第２の傾きとの差分と、前記複数の画像の各々の撮影順とに基づいて、前記第１の画像から前記第２の画像における傾きが徐々に変化するように前記第１の画像と前記第２の画像との間にある画像をそれぞれ補正する補正手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記補正手段は、前記第１の画像から前記第２の画像までの画像間における傾きの変化量が均等になるように前記第１の画像と前記第２の画像との間にある画像をそれぞれ補正することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記補正手段は、前記第１の画像から前記第２の画像までの画像間における傾きの変化量が撮影の時間間隔に比例するように前記第１の画像と前記第２の画像との間にある画像をそれぞれ補正することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記複数の画像のうちの少なくとも一部は、連続的に撮影された画像であることを特徴とする請求項１〜３のいずれか１項に記載の画像処理装置。
【請求項５】
補正の対象となる複数の画像を選択するステップと、
前記複数の画像のうちの第１の画像の第１の傾きと、前記複数の画像のうちの前記第１の画像より後に撮影された第２の画像の第２の傾きとを算出するステップと、
前記第１の傾きと前記第２の傾きとの差分と、前記複数の画像の各々の撮影順とに基づいて、前記第１の画像から前記第２の画像における傾きが徐々に変化するように前記第１の画像と前記第２の画像との間にある画像をそれぞれ補正するステップと
を含むことを特徴とする画像処理方法。
【請求項６】
コンピュータに、
補正の対象となる複数の画像を選択するステップ、
前記複数の画像のうちの第１の画像の第１の傾きと、前記複数の画像のうちの前記第１の画像より後に撮影された第２の画像の第２の傾きとを算出するステップ、
前記第１の傾きと前記第２の傾きとの差分と、前記複数の画像の各々の撮影順とに基づいて、前記第１の画像から前記第２の画像における傾きが徐々に変化するように前記第１の画像と前記第２の画像との間にある画像をそれぞれ補正するステップ
を実行させるためのプログラム。
【請求項７】
請求項６に記載のプログラムを記憶したコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、連写機能を搭載しているデジタルカメラが提案されており、このようなデジタルカメラは１秒間に数枚から数十枚のデジタル画像を生成することができる。また、手ブレ補正機能や傾きを補正する機能を有するデジタルカメラが提案されており、このようなデジタルカメラは、撮影画像の被写体から水平、垂直方向の傾きを自動的に算出し、画像の傾きを自動的に修正する機能を有している。傾き補正に関しては、デジタルカメラの画像をパーソナルコンピュータ等の情報機器に取り込み、アプリケーションプログラム等を用いて実施することも可能である。
【０００３】
連写画像の補正を行なう技術として、特許文献１には、連写画像の手ぶれを補正する画像処理装置が提案されている。特許文献１に記載された画像処理装置では、連写画像の複数の画像の中から手ぶれによる角速度、移動量、手ぶれ方向等が最小となる画像を検出し、検出した画像を用いて指定された画像の手ぶれを補正する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−２４７４４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１のような画像処理装置では、撮影者が意図するような連写画像が得られない場合があった。
【０００６】
本発明の目的は、ユーザの意図に沿って変化する画像を得ることができる画像処理装置及び画像処理方法を提供することにある。
【課題を解決するための手段】
【０００７】
本発明に係る画像処理装置は、補正の対象となる複数の画像を選択する選択手段と、前記複数の画像のうちの第１の画像の第１の傾きと、前記複数の画像のうちの前記第１の画像より後に撮影された第２の画像の第２の傾きとを算出する算出手段と、前記第１の傾きと前記第２の傾きとの差分と、前記複数の画像の各々の撮影順とに基づいて、前記第１の画像から前記第２の画像における傾きが徐々に変化するように前記第１の画像と前記第２の画像との間にある画像をそれぞれ補正する補正手段とを備える。
【発明の効果】
【０００８】
本発明によれば、ユーザの意図に沿って変化する画像を得ることができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の第１実施形態による画像処理装置の構成を示すブロック図である。
【図２】本発明の第１実施形態による撮像装置の構成を示すブロック図である。
【図３】本発明の第１実施形態による画像処理装置の表示部に表示される画面の一例を示す図である。
【図４】本発明の第１実施形態による画像処理装置によって行われる傾き補正処理を示すフローチャートである。
【図５】本発明の第１実施形態による被写体の水平線のずれの一例を示す図である。
【図６】本発明の第１実施形態による被写体の垂直線のずれの一例を示す図である。
【図７】本発明の第１実施形態による画像の傾きを補正する処理の一例を示す図である。
【図８】本発明の第２実施形態による画像処理装置によって行われる傾き補正処理を示すフローチャートである。
【図９】本発明の第２実施形態による画像処理装置の表示部に表示される画面の一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態に係る画像処理装置について図面を参照しながら説明する。ただし、この実施形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。
【００１１】
＜第１実施形態＞
図１は、本発明の第１実施形態による画像処理装置１００を示すブロック図である。画像処理装置１００は、表示部１０１、ＶＲＡＭ（Video RAM）１０２、ＢＭＵ（Bit Move Unit）１０３、キーボード１０４、及びポインティングデバイス（ＰＤ）１０５を備えている。また、画像処理装置１００は、ＣＰＵ（Central Processing Unit）１０６、ＲＯＭ（Read Only Memory）１０７、及びＲＡＭ（Randam Access Memory）１０８をさらに備えている。また、画像処理装置１００は、ＨＤＤ（Hard Disk Drive）１０９、ＦＤＤ（Floppy Disk Drive）１１０、及びネットワークＩ／Ｆ（インターフェース）１１１をさらに備えている。
【００１２】
表示部１０１は、例えば一般的な液晶ディスプレイ等から構成される。表示部１０１は、例えば画像処理装置１００が保持する画像データ、編集情報、アイコン、メッセージ、メニュー、ユーザインタフェース情報等を表示する。ＶＲＡＭ１０２は、表示部１０１に表示するための画像データを保持する。ＶＲＡＭ１０２に保持された画像データは、所定のタイミング信号に従って表示部１０１に転送され、これにより表示部１０１に画像が表示される。ＢＭＵ１０３は、例えば、メモリ間（例えば、ＶＲＡＭ１０２と他のメモリとの間）のデータ転送を制御する。また、ＢＭＵ１０３は、メモリと各Ｉ／Ｏデバイス（例えば、ネットワークＩ／Ｆ１１１）との間のデータ転送も制御する。キーボード１０４は、画像の編集指示及び画像の操作指示を入力するための各種キーを有する。ポインティングデバイス１０５は、例えば一般的なマウスであり、表示部１０１に表示されたアイコン、メニューその他のコンテンツを指定し、オブジェクトを選択するためのものである。なお、ポインティングデバイス１０５として、例えば位置入力機能を備えたタッチパネル（図示せず）を表示部１０１に設けてもよい。
【００１３】
ＣＰＵ１０６は、入力される信号に応じた処理を実行することによって画像処理装置１００の各部を制御する。また、ＣＰＵ１０６は、ＲＯＭ１０７、ＨＤＤ１０９、または図示しないフレキシブルディスク等に格納された制御プログラムを実行することによって、画像処理装置１００の各部を制御する。ＲＯＭ１０７は、各種制御プログラム及び各種データを保持する。ＲＡＭ１０８は、ＣＰＵ１０６のワーク領域、エラー処理時のデータの退避領域、及び制御プログラムのロード領域等を有する。ＨＤＤ１０９は、画像処理装置１００によって実行される各制御プログラムや画像データ等を格納する。ＦＤＤ１１０は、フロッピー（登録商標）ディスク等に代表されるフレキシブルディスクに対するアクセスを制御する。
【００１４】
ネットワークＩ／Ｆ１１１は、インターネット等のネットワーク回線１１３に画像処理装置１００を接続するためのインターフェースであり、他の情報処理装置等と通信を行う。ＣＰＵバス１１２は、アドレスバス、データバス及びコントロールバスを含む。ＶＲＡＭ１０２、ＢＭＵ１０３、キーボード１０４、ＰＤ１０５、ＣＰＵ１０６、ＲＯＭ１０７、ＲＡＭ１０８、ＨＤＤ１０９、ＦＤＤ１１０、及びネットワークＩ／Ｆ１１１は、ＣＰＵバス１１２に接続されている。ＶＲＡＭ１０２、ＢＭＵ１０３、キーボード１０４、ＰＤ１０５、ＣＰＵ１０６、ＲＯＭ１０７、ＲＡＭ１０８、ＨＤＤ１０９、ＦＤＤ１１０、及びネットワークＩ／Ｆ１１１は、ＣＰＵバス１１２を介して互いにデータの読み込みや書き込みを行う。ＣＰＵ１０６に対する制御プログラムの提供は、ＲＯＭ１０７、ＨＤＤ１０９、ＦＤＤ１１０から行うこともでき、ネットワークＩ／Ｆ１１１を介してネットワーク経由で他の情報処理装置等から行うこともできる。
【００１５】
図２は、本実施形態による撮像装置２００の構成を示すブロック図である。撮像装置２００は、被写体にピントを合わせながら連続的に撮影する連写機能を備え、例えば１０コマ／秒、５コマ／秒等の連写速度で被写体を撮影する。撮像装置２００は、撮像部２０１、Ａ／Ｄ変換部２０２、エンコーダ２０３、画像データ記憶部２０４、記憶媒体２０５、ネットワーク接続部２０６、システム制御部２０７、ＲＯＭ２０８、ＲＡＭ２０９、及び操作部２１０を備えている。撮像装置２００はさらに、デコーダ２１１、Ｄ／Ａ変換部２１２、及び表示部２１３を備えている。
【００１６】
撮像部２０１は、図示しないレンズと、ＣＣＤ素子またはＣＭＯＳ素子等で構成される撮像素子等とを含み、被写体の光学像を電気信号に変換する。Ａ／Ｄ変換部２０２は、撮像部２０１から出力されるアナログ信号をデジタル信号に変換する。エンコーダ２０３は、Ａ／Ｄ変換部２０２から出力されるデジタル画像データを圧縮符号化する（例えば、ＪＰＥＧ（Joint Photographic Experts Group）形式等）。画像データ記憶部２０４は、画像データのファイル（画像ファイル）を作成して記憶媒体２０５に格納する。記憶媒体２０５は、ランダムアクセスが可能な記憶媒体であり、画像データ等のデジタルデータを記憶する。
【００１７】
ネットワーク接続部２０６は、撮像装置２００を画像処理装置１００に接続するためのものであり、画像データ等のデジタルデータの送信を行う。撮像装置２００と画像処理装置１００との接続は、ネットワークＩ／Ｆ１１１を介して行なってもよいし、ＵＳＢ（Universal Serial Bus）ケーブル等を用いて行ってもよい。システム制御部２０７は、ＣＰＵを備え、ＲＯＭ２０８に記録された制御プログラム等を実行することによって撮像装置２００の全般的な動作を制御する。また、システム制御部２０７は、画像データ記憶部２０４から画像データを読み出してデコーダ２１１に入力する。ＲＯＭ２０８は、制御プログラムや各種データを保存する。ＲＡＭ２０９は、制御プログラムのロード領域等を有する。
【００１８】
操作部２１０は、図示しないシャッターボタン、操作パネル、及びリモコン等を含み、ユーザによる操作に応じた各種データやコマンドをシステム制御部２０７に入力する。シャッターボタンの操作に応じて、所定の連写速度で被写体が撮影される。デコーダ２１１は、圧縮符号化されたデジタルデータを復号し、Ｄ／Ａ変換部２１２にデジタルデータを入力する。操作パネルは、例えば位置入力の機能を備えたタッチパネル（図示せず）を表示部２１３に設けることによって構成される。タッチパネルは、接触位置に応じた座標情報を出力する。Ｄ／Ａ変換部２１２は、Ａ／Ｄ変換部２０２またはデコーダ２１１から入力されたデジタル信号をアナログ信号に変換し、表示部２１３へ出力する。表示部２１３は、例えば液晶モニタで構成され、画像や各種情報等を表示する。本実施形態では、撮像装置２００で撮影した画像データを画像処理装置１００によって補正する場合を例に説明するが、撮像装置２００において画像データを補正するようにしてもよい。
【００１９】
図３は、本実施形態による画像処理装置１００の表示部１０１に表示される画面３００の一例を示す図である。図３（ａ）に示す画像は連写撮影により取得された画像であり、補正前の状態を示している。画面３００には、画像３０１〜３１８、範囲指定メニュー３１９、補正メニュー３２０、ＯＫボタン３２１、及びキャンセルボタン３２２が表示されている。画面３００に表示されている画像３０１〜３１８は、連写撮影された画像であり、時系列に表示されている。画像３０１〜３１８は、１度に連写された画像でもよく、複数回にわたって連写された画像でもよい。画像３０１〜３１８は、意図的に徐々に傾けながら撮影された画像であるが、画像３０１〜３１８の中には手ぶれが生じた際の画像も含まれている。このため、画像３０１〜３１８全体として傾きにばらつきがあり、画像の傾きの変化が均等ではない。
【００２０】
範囲指定メニュー３１９は、指定範囲内というサブメニュー３１９ａと、全指定というサブメニュー３１９ｂとを有している。指定範囲内というサブメニュー３１９ａは、補正する画像の範囲をユーザが任意に指定するためのサブメニューであり、全指定というサブメニュー３１９ｂは、すべての画像を補正することを指示するためのサブメニューである。ユーザは、指定範囲内のサブメニュー３１９ａまたは全指定のサブメニュー３１９ｂを選択できる。
【００２１】
補正メニュー３２０は、画像の補正の種類を設定するためのメニューである。補正メニュー３２０は、単純手ブレ補正というサブメニュー３２０ａと、均等傾き補正というサブメニュー３２０ｂと、時間間隔加味補正というサブメニュー３２０ｃとを有している。単純手ブレ補正のサブメニュー３２０ａが選択されている場合、ＣＰＵ１０６は、範囲指定メニュー３１９で選択された補正対象の画像の傾きを単純に補正する、つまり、手ぶれまたは構えの傾きによるものとして画像の傾きを単純に補正する。例えば、被写体の垂直線が傾いている場合には、被写体が垂直になるように補正する。均等傾き補正のサブメニュー３２０ｂが選択されている場合、ＣＰＵ１０６は、画像の傾きが画像間で均等に変化するように補正する。時間間隔加味補正のサブメニュー３２０ｃが選択される場合、ＣＰＵ１０６は、各画像間における撮影の時間間隔を加味して画像の傾きを補正する。ユーザは、単純手ブレ補正のサブメニュー３２０ａ、均等傾き補正のサブメニュー３２０ｂ、または時間間隔加味補正のサブメニュー３２０ｃを選択できる。ＯＫボタン３２１は補正後の画像を保存するためのボタンであり、キャンセルボタン３２２は補正処理をキャンセルするためのボタンである。
【００２２】
図３（ｂ）は補正対象画像の範囲が選択された状態を示す図である。範囲指定メニュー３１９において指定範囲内のサブメニュー３１９ａを選択することによって、画像３０１〜３１８内から画像を選択することが可能になる。ユーザは、ポインティングデバイス１０５を用いて、例えば画像３０２を選択する。選択された画像３０２はハイライト表示され、ユーザは画像が選択されたことを容易に認識することができる。なお、選択された画像３０２は、補正が開始される画像、即ち、第１の画像としての先頭画像となる。次に、ユーザは、ポインティングデバイス１０５を用いて、例えば画像３１３を選択する。選択された画像３１３もハイライト表示され、画像３１３は補正が終了する画像、即ち、第２の画像としての最終画像となる。このように２つの画像が選択されることによって、画像補正が行なわれる範囲を示す先頭画像３０２と最終画像３１３とが設定される。
【００２３】
図３（ｃ）は、補正メニュー３２０において均等傾き補正のサブメニュー３２０ｂが選択された後の状態を示している。画面３００には、画像の傾きが均等に補正された後の画像３０３ａ〜３１２ａを含む画像３０１〜３１８が表示される。先頭画像３０２、先頭画像３０２よりも前に撮影された画像、最終画像３１３、及び最終画像３１３よりも後に撮影された画像は、傾きを補正することなく画面３００に表示される。また、補正後の画像３０３ａ〜３１２ａは、同じ方向に徐々に傾いており、傾きの変化は均等になっている。なお、図３（ａ）〜図３（ｃ）では、説明の簡略化のため、画像３０１〜３１８における被写体の傾きのみが分かるように示しているが、画像の背景も被写体と同じように傾いている。
【００２４】
次に、画像処理装置１００によって行われる傾き補正処理について図４を用いて説明する。図４は、本実施形態による画像処理装置１００によって行われる傾き補正処理を示すフローチャートである。なお、図４に示す補正処理は、画像処理装置１００のＣＰＵ１０６がＲＯＭ１０７に格納されているプログラムを実行することによって行われる。
【００２５】
ステップＳ４０１では、ＣＰＵ１０６は、範囲指定された複数の画像のうちの先頭の画像である先頭画像３０２を把握する。図３（ｂ）では、ユーザによって選択された画像３０２が先頭画像に該当する。ステップＳ４０２では、ＣＰＵ１０６は、範囲指定された複数の画像のうちの最終の画像である最終画像を把握する。図３（ｂ）では、ユーザによって選択された画像３１３が最終画像に該当する。ステップＳ４０３では、ＣＰＵ１０６は、補正を行なう画像の数、即ち、補正画像数Ｎを算出する。補正画像数Ｎは先頭画像３０２と最終画像３１３との間に存在する画像の数、即ち補正対象画像の数である。図３（ｂ）では、画像３０３〜３１２が補正対象画像に該当し、Ｎ＝１０になる。
【００２６】
ステップＳ４０４では、ＣＰＵ１０６は指定範囲内の先頭画像３０２の第１の傾きである傾きαを算出する。傾きαは、先頭画像３０２内の被写体から本来水平になるべき線を識別し、識別された線の水平線に対する傾きを求めることによって得ることができる。詳しくは、図５を用いて説明する。図５は本実施形態の被写体５０１の水平線のずれの一例を示す図であり、図５（ａ）は先頭画像３０２における被写体５０１及び水平線５０３の一例を示す図、図５（ｂ）は図５（ａ）の部分拡大図である。被写体５０１の輪郭線の一部である横方向の線５０１ａは本来水平になるべき線である。線５０１ａは水平線５０３に対して傾きαを有している。ＣＰＵ１０６は、水平線５０３に対する線５０１のずれ量、即ち、傾きαを算出する。
【００２７】
また、傾きαは、先頭画像３０２内の被写体から本来垂直になるべき線を識別し、識別された線の垂直線に対する傾きを求めることによっても得ることができる。詳しくは、図６を用いて説明する。図６は本実施形態の被写体５０１の垂直線のずれの一例を示す図であり、図６（ａ）は先頭画像３０２における被写体５０１及び垂直線６０１の一例を示す図、図６（ｂ）は図６（ａ）の部分拡大図である。被写体５０１の輪郭線の一部である縦方向の線５０１ｂは本来垂直になるべき線である。ＣＰＵ１０６は、垂直線６０１に対する線５０１ｂのずれ量、即ち、傾きαを算出する。このように、例えば建物の柱や壁面等から、本来水平になるべき線や本来垂直になるべき線を抽出することが可能である。なお、傾きαを求める方法はこれらに限られず種々の方法を用いることが可能である。ステップＳ４０５では、ＣＰＵ１０６は最終画像の第２の傾きとしての傾きβを算出する。傾きβは、傾きαと同様の方法で算出される。
【００２８】
ステップＳ４０６では、ＣＰＵ１０６は、補正対象画像の数を数えるための作業変数Ｗを１で初期化する。ステップＳ４０７では、ＣＰＵ１０６は、補正対象画像の傾きの変化を設定するための単位変化量Ｉを算出する。単位変化量Ｉは、以下の式（１）によって算出される。
Ｉ＝（β−α）／（Ｎ＋１）    ・・・（１）
単位変化量Ｉは各画像間の傾きの変化量に対応している。各画像間における傾きの変化量が単位変化量になるように補正対象画像のそれぞれを補正することによって、先頭画像３０２から最終画像３１３までの各画像間の傾きの変化量が均等になる。式（１）に示すように、単位変化量Ｉは、先頭画像３０２の傾きαと最終画像３１３の傾きβとの差分を、補正対象画像の数に１を加えた数、即ち、Ｎ＋１で除算した値になる。補正対象画像の数に１を加えた数、即ち、Ｎ＋１で除算する理由は、先頭画像３０２から最終画像３１３まで均等に傾きが変化するように補正するためである。例えば、傾きα、βの差分を補正画像数Ｎで除算すると、最終画像の１つ前の画像（図３（ｃ）の補正後の画像３１２ａ）の傾きが最終画像（図３（ｃ）の画像３１３）の傾きと等しくなり、画像の傾きの変化が均等でなくなるからである。
【００２９】
ステップＳ４０８では、ＣＰＵ１０６は、作業変数Ｗが補正画像数Ｎを越えたか否かを判定する。作業変数Ｗが補正画像数Ｎを越えた場合（ステップＳ４０８：Ｙｅｓ）、ＣＰＵ１０６は補正対象画像の補正処理が終了したと判定し、処理を終了する。作業変数Ｗが補正画像数Ｎ以下の場合（ステップＳ４０８：Ｎｏ）、ＣＰＵ１０６は補正対象画像の補正処理はまだ終了していないと判定し、先頭画像３０２から数えてＷ番目の画像の傾きＪを算出する（ステップＳ４０９）。ステップＳ４０９では、ＣＰＵ１０６は、先頭画像３０２の傾きα、単位変化量Ｉ、及び作業変数Ｗから補正後の傾きＪを算出する。補正後の傾きＪは以下の式（２）から算出される。
Ｊ＝α＋Ｉ×Ｗ    ・・・（２）
補正後の傾きＪは、先頭画像３０２の次の画像３０３から数えてＷ番目の補正対象画像の補正後の傾きである。このように、補正対象画像の傾きは、単位変化量Ｉずつ変化するように補正される。
【００３０】
ステップＳ４１０では、ＣＰＵ１０６は先頭画像３０２の次の画像３０３から数えてＷ番目の補正対象画像を取得する。ステップＳ４１１では、ＣＰＵ１０６は、先頭画像３０２の次の画像３０３から数えてＷ番目の画像の傾きがステップＳ４０９で算出された傾きＪとなるように傾きを補正する。画像の傾きは、例えば補正対象画像に線形変換やアフィン変換等を行うことによって補正できる。詳しくは、図７を用いて説明する。図７は本実施形態による画像の傾きを補正する処理の一例を示す図である。補正前の画像における画素の座標（ｘ，ｙ）を以下の式（３）により座標変換し、補正後の画素の座標（ｘ’，ｙ’）を算出する。
【数１】
2017098846.tif 000003
補正後の画素の座標（ｘ’，ｙ’）は、画素の座標（ｘ，ｙ）から傾きα、即ち、角度α回転した位置の座標になる。ＣＰＵ１０６は対象の画素に補正後の座標（ｘ’，ｙ’）を代入する。このように、ＣＰＵ１０６は、補正対象画像が補正後の傾きになるように、補正対象画像の各画素の座標を座標変換し、各画素に補正後の座標を代入することによって画像全体の傾きを補正する。なお、補正方法は、これに限らず、種々の方法を用いることが可能である。
【００３１】
ステップＳ４１２では、ＣＰＵ１０６は作業変数Ｗをインクリメントする。この後、ステップＳ４０８に戻り、ＣＰＵ１０６は、作業変数Ｗが画像の数Ｎを越えたか否かを判定する。こうして、傾きの補正が順次行われる。図３（ｃ）に示すように、画像３０２から画像３１３までの傾きの変化は、選択された範囲内の画像に対して均等になる。
【００３２】
このように、本実施形態では、傾きα、βの差分と、撮影順とに基づいて補正対象画像のそれぞれの傾きを補正する。これにより、手ぶれ等により傾きにばらつきがある場合であっても、撮影順に画像の傾きが徐々に均等に変化するような画像を得ることができ、撮影者の意図に沿って変化する画像を得ることができる。
【００３３】
＜第２実施形態＞
次に、本発明の第２実施形態による画像処理装置について、図８及び図９を用いて説明する。本実施形態による画像処理装置は、連写撮影した画像の傾きが、撮影の時間間隔に比例した変化量で変化するように画像の傾きを補正するものである。第１実施形態と同様の構成については同一の符号を付して説明を省略する。
【００３４】
図８は、本実施形態による画像処理装置１００によって行なわれる傾き補正処理を示すフローチャートである。図９は、本実施形態の表示部１０１に表示される画面３００の一例を示す図である。図９（ａ）は画面３００から補正対象画像の範囲を選択した状態を示す図、図９（ｂ）は補正メニュー３２０で時間間隔加味補正のサブメニュー３２０ｃが選択された後に表示される画面３００を示している。なお、ここでは、画像９０１〜９０５までを連写撮影し、この後時間をあけて画像９０６〜９１８を連写撮影した場合を例に説明する。画像９０５と画像９０６との間の撮影の時間間隔は、例えば連写撮影された画像９０１と画像９０２との間の撮影の時間間隔よりも長くなっている。
【００３５】
ステップＳ８０１では、ステップＳ４０１と同様に、ＣＰＵ１０６は範囲指定された複数の画像のうちの先頭画像を把握する。図９（ａ）では、ユーザによって選択された画像９０２が先頭画像になる。ステップＳ８０２では、ステップＳ４０２と同様に、ＣＰＵ１０６は範囲指定された複数の画像のうちの最終画像を把握する。図９（ａ）では、ユーザによって選択された画像９１３が最終画像になる。ステップＳ８０３では、ステップＳ４０３と同様に、ＣＰＵ１０６は補正を行なう補正画像数Ｎを算出する。図９（ａ）に示す例では、画像９０３〜９１２が補正の対象であり、補正画像数Ｎは１０である。ステップＳ８０４では、ステップＳ４０４と同様に、ＣＰＵ１０６は先頭画像９０２の傾きαを取得する。
【００３６】
ステップＳ８０５では、ＣＰＵ１０６は先頭画像９０２の撮影時刻Ｔ１を取得する。具体的には、ＣＰＵ１０６は、撮影開始画像のＥｘｉｆ（Exchangeable Image File Format）情報等に格納されている撮影時刻を取得する。ステップＳ８０６では、ステップＳ４０５と同様に、ＣＰＵ１０６は最終画像９１３の傾きβを算出する。ステップＳ８０７では、ＣＰＵ１０６は最終画像９１３の撮影時刻Ｔ２を取得する。撮影時刻の取得方法はステップＳ８０５と同様であり、最終画像のＥｘｉｆ情報等から撮影時刻を取得する。
【００３７】
ステップＳ８０８では、ステップＳ４０６と同様に、ＣＰＵ１０６は画像数を数える作業変数Ｗを１で初期化する。ステップＳ８０９では、ステップＳ４０８と同様に、ＣＰＵ１０６は作業変数Ｗが補正画像数Ｎを越えたか否かを判定する。作業変数Ｗが補正画像数Ｎを越えた場合（ステップＳ８０９：Ｙｅｓ）、ＣＰＵ１０６は補正対象画像の補正処理が終了したと判定して処理を終了する。作業変数Ｗが補正画像数Ｎ以下である場合（ステップＳ８０９：Ｎｏ）、ステップＳ４１０と同様に、補正対象画像の補正処理はまだ終了していないと判定して、先頭画像９０２の次の画像９０３から数えてＷ番目の補正対象画像を取得する（ステップＳ８１０）。
【００３８】
ステップＳ８１１では、ＣＰＵ１０６は、先頭画像９０２の次の画像９０３から数えてＷ番目の補正対象画像の撮影時刻Ｔを取得する。撮影時刻の取得方法はステップＳ８０５と同様であり、先頭画像９０２の次の画像９０３から数えてＷ番目の補正対象画像のＥｘｉｆ情報等から撮影時刻を取得する。ステップＳ８１２では、ＣＰＵ１０６は先頭画像９０２の次の画像９０３から数えてＷ番目の画像の傾きＪを算出する。画像の傾きＪは以下の式（４）から算出される。
Ｊ＝（β−α）×（Ｔ−Ｔ１）／（Ｔ２−Ｔ１）  ・・・（４）
このようにして算出される傾きＪで傾くように画像を補正することによって、撮影の時間間隔に比例した変化量で傾きが変化するように画像の傾きを設定することができる。
【００３９】
ステップＳ８１３では、ＣＰＵ１０６は、先頭画像９０２の次の画像９０３から数えたＷ番目の画像の傾きが、ステップＳ８１２で算出された傾きＪとなるように、Ｗ番目の画像の傾きを補正する。ステップＳ８１４では、ＣＰＵ１０６は、画像を数える作業変数Ｗをインクリメントする。この後、ステップＳ８０９に戻り、ＣＰＵ１０６は作業変数Ｗが補正画像数Ｎを越えたか否かを判定する。こうして、補正対象画像である画像９０３〜９１２に対して傾きの補正が順次行われる。図９（ｂ）に示すように、画像９０２から画像９１３までの各画像間における傾きの変化量は撮影の時間間隔に比例した変化量になる。
【００４０】
このように、本実施形態では、各画像間における傾きの変化量が撮影の時間間隔に比例した変化量となるように各画像の傾きを設定する。各画像の傾きをこのように変化させるようにしてもよい。
【００４１】
＜その他の実施形態＞
以上、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。上述の実施形態の一部を適宜組み合わせてもよい。
【００４２】
例えば、補正対象画像として、第１実施形態では、画像３０２から画像３１３までを選択し、第２実施形態では、画像９０２から画像９１３までを選択したが、これに限定されるものではない。例えば、表示されている画像内から２つ以上の範囲を選択するようにしてもよい。例えば、画像３０２から画像３０７までの範囲と、画像３１２から画像３１６までの範囲とを第１実施形態において選択するようにしてもよい。
【００４３】
また、第１実施形態では、画像３０２から画像３１３までを選択して先頭画像を画像３０２、最終画像を画像３１３に設定した。また、第２実施形態では、画像９０２から画像９１３までを選択して先頭画像を画像９０２、最終画像を画像９１３に設定したが、これに限定されるものではない。例えば、画像３０２から画像３１３までを選択し、補正を開始する先頭画像を画像３０２の次の画像３０３とし、補正を終了する最終画像を画像３１３の１つ前の画像３１２としてもよい。
【００４４】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００４５】
１００    画像処理装置
１０６    ＣＰＵ
【図１】
2017098846.tif 000004
【図２】
2017098846.tif 000005
【図３】
2017098846.tif 000006
【図４】
2017098846.tif 000007
【図５】
2017098846.tif 000008
【図６】
2017098846.tif 000009
【図７】
2017098846.tif 000010
【図８】
2017098846.tif 000011
【図９】
2017098846.tif 000012