(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5756455
(24)【登録日】2015年6月5日
(45)【発行日】2015年7月29日
(54)【発明の名称】画像処理装置および画像処理方法
(51)【国際特許分類】
H04N 5/232 20060101AFI20150709BHJP
【FI】
H04N5/232 Z
【請求項の数】18
【全頁数】18
(21)【出願番号】特願2012-500753(P2012-500753)
(86)(22)【出願日】2011年6月2日
(86)【国際出願番号】JP2011003105
(87)【国際公開番号】WO2011155161
(87)【国際公開日】20111215
【審査請求日】2013年11月14日
(31)【優先権主張番号】特願2010-133623(P2010-133623)
(32)【優先日】2010年6月11日
(33)【優先権主張国】JP
(73)【特許権者】
【識別番号】514136668
【氏名又は名称】パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ
【氏名又は名称原語表記】Panasonic Intellectual Property Corporation of America
(74)【代理人】
【識別番号】100109210
【弁理士】
【氏名又は名称】新居 広守
(74)【代理人】
【識別番号】100137235
【弁理士】
【氏名又は名称】寺谷 英作
(74)【代理人】
【識別番号】100131417
【弁理士】
【氏名又は名称】道坂 伸一
(72)【発明者】
【氏名】大宮 淳
(72)【発明者】
【氏名】山田 整
【審査官】
吉川 康男
(56)【参考文献】
【文献】
国際公開第2009/001512(WO,A1)
【文献】
国際公開第2009/001510(WO,A1)
【文献】
特開平07−037103(JP,A)
【文献】
国際公開第2010/027654(WO,A2)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 5/232
(57)【特許請求の範囲】
【請求項1】
画像取得部と、
前記画像取得部で取得した画像の各画素に対して、画像の傾きを推定するための複数の傾き情報を算出する傾き情報算出部と、
前記傾き情報算出部で算出した複数の傾き情報を用いて、その傾き角度ごとの度数分布である角度ヒストグラムを生成する角度ヒストグラム生成部と、
前記複数の傾き情報と、その情報が得られた画像上の位置との対応を記録する傾き情報−位置記録部と、
前記傾き情報とその前記位置から、傾き情報の分布度を算出する傾き情報分布度算出部と、
前記傾き情報の分布度から、前記傾き情報のうち傾き推定に使用できるものと使用できないものとを判定する偽情報判定部と、
前記偽情報判定部の判定結果にもとづいて、使用できる前記角度ヒストグラムの最大値あるいは極大値を抽出するピーク検出部と、
前記ピーク検出部が検出した前記最大値あるいは前記極大値が示す傾き角度から画像の傾き角度を推定する傾き推定部と
からなる画像処理装置。
【請求項2】
前記画像の傾きを推定するための複数の傾き情報は、前記画像中の線分をその傾斜角とともに算出されたものであり、
前記傾き情報算出部は、前記画像の予め定められた範囲を予め定められた画素間隔について前記算出処理を行う
請求項1に記載の画像処理装置。
【請求項3】
前記画像の傾きを推定するための複数の傾き情報は、前記画像中の輝度情報を所定の演算式に代入して演算を行って、前記輝度情報の輝度勾配を求めて算出されたものであり、
前記傾き情報算出部は、前記画像の予め定められた範囲を予め定められた画素間隔について前記算出処理を行う
請求項1に記載の画像処理装置。
【請求項4】
前記傾き情報算出部は、前記画像の予め定められた範囲における輝度勾配から得られる傾き角度と±90°をなす方向に同一の傾き角度を持つ画素があるかどうかを調べることで前記算出処理を行う
請求項3に記載の画像処理装置。
【請求項5】
前記角度ヒストグラム生成部は、各傾き角度情報に対する重み付けを行い、その重みは前記画像から検出された線分の長さが長いほど大きくする
請求項2に記載の画像処理装置。
【請求項6】
前記角度ヒストグラム生成部は、各傾き角度情報に対する重み付けを行い、その重みは前記画像から検出された輝度勾配が垂直に近いほど大きくする
請求項3に記載の画像処理装置。
【請求項7】
前記傾き情報の分布度は、同一あるいは予め定められた範囲内にある傾き角度ごとの位置についての分散あるいは標準偏差である
請求項1に記載の画像処理装置。
【請求項8】
前記偽情報判定部は、前記傾き情報分布度算出部の算出結果と予め設定された値とを比較して、ある同一あるいは予め定められた範囲内にある傾き角度が偽情報であるか否かを判断し、
前記傾き推定部は前記角度ヒストグラム生成部において予め定められた基準を満たす傾き角度のうち、前記偽情報判定部において偽情報でないと判断された傾き角度を選択する
請求項1に記載の画像処理装置。
【請求項9】
前記傾き推定部は前記角度ヒストグラム生成部において予め定められた基準を満たす度数を有する傾き角度のうち、前記偽情報判定部において偽情報でないと判断された傾き角度の中で最も高い度数を有する傾き角度を選択する
請求項1に記載の画像処理装置。
【請求項10】
前記傾き推定部が出力する前記傾き情報にしたがって画像を補正する画像補正部
をさらに備える請求項1に記載の画像処理装置。
【請求項11】
取得した画像を記憶する画像蓄積部と、
前記画像蓄積部に記憶された画像のうち、少なくとも2つの画像を選択して読み出し、この画像を結合してパノラマ画像を作成するパノラマ画像作成部と、
をさらに備え、
前記傾き情報算出部は、前記パノラマ画像の各画素に対して所定の演算を行って、前記パノラマ画像の傾きを推定するための複数の情報を抽出する
請求項1に記載の画像処理装置。
【請求項12】
前記傾き推定部は前記パノラマ画像についての傾き角度を推定し、
前記パノラマ画像を構成する2つ以上の画像間の相対的な回転角度を用いて、前記パノラマ画像を構成する2つ以上の画像それぞれの傾き角度を算出する
請求項11に記載の画像処理装置。
【請求項13】
撮像部の動きを計測するセンサ部からのデータを取得するセンサ取得部
をさらに備え、
前記センサ取得部は、前記傾き角度から画像の傾き角度を推定するための補助情報を算出する
請求項1に記載の画像処理装置。
【請求項14】
前記偽情報判定部は、前記センサ取得部から得られた前記補助情報を用いて、鉛直方向が
画像のどの方向であるかを推定し、画像から抽出された線分あるいは画素の傾き角度のいずれが垂直線であるかを決定する
請求項13に記載の画像処理装置。
【請求項15】
画像取得ステップと、
前記画像取得ステップで取得した画像の各画素に対して、画像の傾きを推定するための複数の傾き情報を算出する傾き情報算出ステップと、
前記傾き情報算出ステップで算出した複数の傾き情報を用いて、その傾き角度ごとの度数分布である角度ヒストグラムを生成する角度ヒストグラム生成ステップと、
前記複数の傾き情報と、その情報が得られた画像上の位置との対応を記録する傾き情報−位置記録ステップと、
前記傾き情報とその前記位置から、傾き情報の分布度を算出する傾き情報分布度算出ステップと、
前記傾き情報の分布度から、前記傾き情報のうち傾き推定に使用できるものと使用できないものとを判定する偽情報判定ステップと、
前記偽情報判定ステップの判定結果にもとづいて、使用できる前記角度ヒストグラムの最大値あるいは極大値を抽出するピーク検出ステップと、
前記ピーク検出ステップで検出した前記最大値あるいは前記極大値が示す傾き角度から画像の傾き角度を推定する傾き推定ステップと
からなる画像処理方法。
【請求項16】
請求項1に記載の画像処理装置を含む集積回路。
【請求項17】
請求項15に記載の画像処理方法をコンピュータに実行させるためのプログラム。
【請求項18】
請求項17に記載のプログラムを記憶した記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は画像処理装置及び画像処理方法に関し、特に画像補正の技術に関するものである。
【背景技術】
【0002】
近年、カメラ、ムービーなどの撮影装置における手ブレ補正技術において、画像の傾きを補正する技術が提案されている。
【0003】
特許文献1には、撮像装置に加速度センサを設け、加速度センサにより重力加速度を測定することで撮像装置の地軸に対する傾きを検出し、検出した傾き角度に基づいて撮影した画像の傾きを補正する方法が開示されている。また特許文献2には、撮像画像の上部に存在する線分を検出し、それらの線分の傾き角から画像全体の傾き角を推定し、撮像画像の傾きを補正する方法が開示されている。また特許文献3にはセンサと画像処理とを組み合わせて使用することで、傾き角度算出の精度を向上させる手法が示されている。
【0004】
さらに特許文献4には、画像処理を用いて画像の傾き角度を算出する際に、画像を小ブロックに分割し、個々のブロックにおけるテクスチャが示す方向性を判定し、そのテクスチャが一方向性を有する領域のみを対象として傾き角度を算出する方法が示されている。この方法は画像中の構造物のみから傾き情報を抽出することと等価であり、傾き角度算出の精度と安定性の向上に寄与するものである。
【0005】
しかしながら、特許文献1に開示されているセンサを用いる方式では、センサの出力値に慣性ノイズや他軸感度などの変動成分が含まれるため、ムービーなど撮影者が移動しながら撮像を行う場合には高精度な傾き補正が困難である。また、特許文献2では撮像された画像の構図に制限があり、一般的な使用状況では実用的ではない。
【0006】
特許文献3および特許文献4では上記の欠点を補うため、センサと画像処理を組み合わせて使用することが提案されている。すなわち、センサ情報を用いて複数の傾き角度候補の中からある一定の基準を満たす角度成分を選択する方法が示されているが、センサの出力値に変動成分が重畳している場合にはその精度の低下は避けられない。加えて特許文献4には、傾き角度推定の際に変動成分となりうる非構造物からの傾き角度情報を予め除去することでその精度向上を図る方式が示されているが、構造物からの傾き角度情報そのものが変動成分となる場合には効果を示すことができない。
【0007】
図1A、
図1Bは、構造物からの傾き角度情報が変動成分となる一例を説明するための図である。
図1Aは魚眼レンズのような広角レンズを使用して撮影した映像である。一般に、広角撮影された映像には歪が存在するため、正しい画像処理結果を得るためにはキャリブレーションあるいはレンズの射影方式から逆算することによって、広角撮影画像の一部領域を切り出して歪の少ない映像を作成する必要がある。
図1Bは、
図1Aの中心付近を切り出してひずみ補正を行った画像の例である。
図1A、
図1Bのような構図においては、構造物の水平線は手前から奥行き方向に向かって伸びており、本来は平行線であるものが消失点に向かって収束していることがわかる。また、正しい傾き角度情報を提供する構造物の垂直線は、水平線に比べて相対的に少なく、そのため正しい傾き角度情報の検出が困難となる。
図2は、
図1Bに示した画像の画素毎の輝度勾配を、横軸に角度、縦軸に頻度をとった角度ヒストグラムである。この画像が角度θだけ傾いているとしたとき、本来であればθのbinの度数が最頻値をとることが望ましいが、構造物の水平線から得られた角度のbinの度数がそれを上回っていることがわかる。この特性は特に広角映像によって顕著になるため、特許文献4に開示された非構造物を予め除去する方法では解決が不可能である。
【0008】
特許文献5には、消失点候補と画像から抽出したエッジとを線分で結び、所定の基準を満たす線分の傾き角度の頻度を累積したヒストグラムを作成し、消失点候補を次々と変えながらこのヒストグラムを求め、最も大きな頻度を示す消失点候補を消失点とする方法が示されている。この消失点が決定できれば、構造物の水平線を特定できることになり、構造物からの変動成分を除去できる。しかしながら、特許文献5に示された方法を利用すると、構造物の垂直線も除去してしまう可能性がある。また、予め所定の基準を定めておかなければならず、どのような傾き角度で撮影が行われるか想定できない場合には使用することができない。
【0009】
本発明は、画像から得られるエッジ成分およびその傾き角度から、画像の傾き角度の推定に使用できる情報を選択することによって傾き角度推定を可能にし、画像の傾きを補正することを目的とする。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特開2006−245726号公報
【特許文献2】特許第3676360号公報
【特許文献3】国際公開第2009−001512号
【特許文献4】国際公開第2009−008174号
【特許文献5】特開昭63−106875号公報
【発明の概要】
【0011】
本発明の画像処理装置は、画像取得部と、画像取得部で取得した画像の各画素に対して、画像の傾きを推定するための複数の傾き情報を算出する傾き情報算出部と、傾き情報算出部で算出した複数の傾き情報を用いて、その傾き角度ごとの度数分布である角度ヒストグラムを生成する角度ヒストグラム生成部と、複数の傾き情報と、その情報が得られた画像上の位置との対応を記録する傾き情報−位置記録部と、傾き情報とその位置から、傾き情報の分布度を算出する傾き情報分布度算出部と、傾き情報の分布度から、傾き情報のうち傾き推定に使用できるものと使用できないものとを判定する偽情報判定部と、偽情報判定部の判定結果にもとづいて、使用できる角度ヒストグラムの最大値あるいは極大値を抽出するピーク検出部と、ピーク検出部が検出した最大値あるいは極大値が示す傾き角度から画像の傾き角度を推定する傾き推定部と、推定された傾き角度を用いて画像の傾きを補正する画像補正部とからなる。
【0012】
かかる構成によって、画像の傾き角度を推定する際に、画像から抽出した複数のエッジ及びその傾き角度から、傾き角度の推定に使用することのできる情報を選択することが可能になる。
【0013】
また、前記画像処理装置において、前記傾きを推定するための複数の傾き情報は、前記画像中の線分をその傾斜角とともに算出されたものであり、前記傾き情報算出部は、前記画像の予め定められた範囲を予め定められた画素間隔について前記算出処理を行う、としてもよい。
【0014】
また、前記画像処理装置において、前記傾きを推定するための複数の傾き情報は、前記画像中の輝度情報を所定の演算式に代入して演算を行って、前記輝度情報の輝度勾配を求めて算出されたものであり、前記傾き情報算出部は、前記画像の予め定められた範囲を予め定められた画素間隔について前記算出処理を行う、としてもよい。
【0015】
この構成により、傾き情報算出部の処理負荷、あるいは傾き情報算出部以降の処理負荷を軽減することが可能となる。
【0016】
また、前記画像処理装置において、前記角度ヒストグラム生成部は、各傾き角度情報に対する重み付けを行い、その重みは前記画像から検出された線分の長さが長いほど大きくする、としてもよい。
【0017】
また、前記画像処理装置において、前記角度ヒストグラム生成部は、各傾き角度情報に対する重み付けを行い、その重みは前記画像から検出された輝度勾配が垂直に近いほど大きくする、としてもよい。
【0018】
信頼できる水平線、垂直線成分、輝度勾配の重みを大きくすることで、傾き角度の推定と補正を正確に行うことが可能となる。
【0019】
また、前記画像処理装置において、前記傾き情報の分布度は、同一あるいは予め定められた範囲内にある傾き角度ごとの位置についての分散あるいは標準偏差である、としてもよい。
【0020】
また、前記画像処理装置において、前記偽情報判定部は、前記傾き情報分布度算出部の算出結果と予め設定された値とを比較して、ある同一あるいは予め定められた範囲内にある傾き角度が偽情報であるか否かを判断し、前記傾き推定部は前記角度ヒストグラム生成部において予め定められた基準を満たす傾き角度のうち、前記偽情報判定部において偽情報でないと判断された傾き角度を選択する、としてもよい。
【0021】
また、前記画像処理装置において、前記傾き推定部は前記角度ヒストグラム生成部において予め定められた基準を満たす度数を有する傾き角度のうち、前記偽情報判定部において偽情報でないと判断された傾き角度の中で最も高い度数を有する傾き角度を選択する、としてもよい。
【0022】
また、前記画像処理装置において、前記傾き推定部が出力する前記傾き情報にしたがって画像を補正する画像補正部をさらに備えるとしてもよい。
【0023】
この構成により、傾き推定部で推定した傾き情報に基づいた画像の補正が可能となる。
【0024】
また、前記画像処理装置において、取得した画像を記憶する画像蓄積部と、前記画像蓄積部に記憶された画像のうち、少なくとも2つの画像を選択して読み出し、この画像を結合してパノラマ画像を作成するパノラマ画像作成部と、をさらに有し、前記傾き情報算出部は、前記パノラマ画像の各画素に対して所定の演算を行って、前記パノラマ画像の傾きを推定するための複数の情報を抽出する、としてもよい。
【0025】
この構成により、画像中の線分、あるいは画素の傾き角度毎の局所性がより明確になるため、傾き角度の推定精度が向上する。
【0026】
また、前記画像処理装置において、前記傾き推定部は前記パノラマ画像についての傾き角度を推定し、前記パノラマ画像を構成する2つ以上の画像間の相対的な回転角度を用いて、前記パノラマ画像を構成する2つ以上の画像それぞれの傾き角度を算出する、としてもよい。
【0027】
本発明の画像処理装置によれば、画像の傾き角度を推定する際に、例えば広角レンズを用いて撮影され、構造物の水平成分が支配的となる画像であっても、画像の傾き角度を表す情報を選択することができ、正しく傾き角度の推定と補正が可能になる。
【図面の簡単な説明】
【0028】
【
図1A】
図1Aは、構造物からの傾き角度情報が変動成分となる一例を説明するための、広角レンズを用いて撮影された画像を示す図である。
【
図1B】
図1Bは、構造物からの傾き角度情報が変動成分となる一例を説明するための、
図1Aの中心付近を切り出し、歪を除去した画像を示す図である。
【
図3】
図3は、本発明の実施の形態1における画像処理装置の構成を示す図である。
【
図4】
図4は、本発明の実施の形態1における画像処理方法を示すフローチャートである。
【
図5】
図5は、線分上の点における輝度勾配を説明する図である。
【
図6A】
図6Aは、Sobelフィルタで用いられる係数行列を示す図である。
【
図6B】
図6Bは、Sobelフィルタで用いられる係数行列を示す図である。
【
図7A】
図7Aは、Hough変換における線分を特徴付けるパラメータを説明する図である。
【
図7B】
図7Bは、Hough変換における線分を特徴付けるパラメータを説明する図である。
【
図8】
図8は、画像から抽出したエッジとそのパラメータを記録するフォーマットの一例を説明する図である。
【
図9A】
図9Aは、構造物の垂直線と水平線の空間的分布特性の違いを示す図である。
【
図9B】
図9Bは、構造物の垂直線と水平線の空間的分布特性の違いを示す図である。
【
図9C】
図9Cは、構造物の垂直線と水平線の空間的分布特性の違いを示す図である。
【
図9D】
図9Dは、構造物の垂直線と水平線の空間的分布特性の違いを示す図である。
【
図10】
図10は、本発明の実施の形態2における画像処理装置の構成を示す図である。
【
図11A】
図11Aは、複数の画像からパノラマ画像を作成した例と本発明の実施の形態2におけるパノラマ画像を用いる利点を説明する図である。
【
図11B】
図11Bは、複数の画像からパノラマ画像を作成した例と本発明の実施の形態2におけるパノラマ画像を用いる利点を説明する図である。
【
図12】
図12は、本発明の実施の形態3における画像処理装置の構成を示す図である。
【
図13】
図13は、加速度センサの3軸の出力値の一例を示す図である。
【
図14】
図14は、加速度センサを用いて傾き検出を行う際のx方向、y方向の出力値の一例を示す図である。
【発明を実施するための形態】
【0029】
以下、本発明の実施の形態の構成と動作について、図面を参照しながら説明する。
【0030】
(実施の形態1)
図3は、本発明の実施の形態1における画像処理装置の構成を示す図である。また、
図4は、本発明の実施の形態1における画像処理方法を示すフローチャートである。
【0031】
画像取得部301は、撮像部307で取得した画像データを画像処理装置300に取り込み、傾き情報算出部302に送る(S401)。傾き情報算出部302では、取り込んだ画像に対して傾き情報を算出する(S402)。その手法としては、画像をグレースケール変換し、画素ごとに縦方向、横方向のSobelフィルタを作用させ、その結果を合成して勾配ベクトルを算出する方法や、画像から線分抽出を行うHough変換を作用させ、線分長さとその傾き角度を算出する方法などがあるが、本発明はこれに限定するものではない。
【0032】
例えば、画像から線分抽出を行う際に、画像を複数の小領域に分割し、各小領域に判断対象となる傾きを持った線分、あるいは画素が含まれるかどうかを調べる(すなわち、予め定められた範囲の予め定められた画素間隔について判断対象となる傾きを持った線分、あるいは画素が含まれるかどうかを調べる)としてもよい。この構成により、傾き情報算出部302の処理負荷、あるいは傾き情報算出部302以降の処理負荷を軽減することが可能となる。
【0033】
ここで、勾配ベクトルの算出について
図5、
図6A、
図6Bを用いて説明する。
図5において位置Pにおける画像の画素値をI(P)とし、Pにおけるx方向、y方向のコントラスト変化をそれぞれdx、dyとしたとき、
dx=∂I(P)/∂x、dy=∂I(P)/∂y
と表せる。このとき、コントラスト変化の方向をθとすると、
θ=tan^(−1)(dy/dx)
が成り立ち、これが前述の勾配ベクトルの方向に相当する。dx、dyを求めるには
図6A、
図6Bに示すSobelフィルタを用いる。
図6Aおよび
図6Bはそれぞれx方向、y方向のコントラスト変化を測定するためのフィルタ要素である。次にHough変換による線分検出について
図7A、
図7Bを用いて説明する。
図7Aにおいて、点(x_i、y_i)を通る直線は次式を満たす。
【0034】
ρ=x_i・cosθ+y_i・sinθ
なお、ρは直線と原点との距離、θは原点から直線への垂線とx軸のなす角を表す。
【0035】
これは点(x_i、y_i)を通る直線群が
図7Bにおける一本の曲線に対応付けられることを意味する。いっぽう、同じ直線状にある複数の点について同様の対応を行うと、得られる複数の曲線は一点で交わり、この交点(ρ、θ)がこれらの点を通る直線を示している。すなわち、あるθに着目し、ρの数をカウントすることで傾きθの線分の数が取得できる。
【0036】
角度ヒストグラム生成部303は、勾配ベクトルのうち同じ方向成分を持つものを累積する、あるいはHough変換で求めた線分のうち同じ方向成分を持つものをその長さ分加算する、といった処理を行うことによって角度ヒストグラムを生成する(S403)。この角度ヒストグラムは「ある角度方向のエッジがどれほど存在するか」を表す指標となり、一般に画像に傾きがない状態で構造物のみが写っている場合(歪がない場合)には水平線や垂直線成分が多くなるため、0度および90度の角度ヒストグラムの値が強いピークを持つ形状となる。
図1Aおよび
図1Bのようにθだけ傾いた画像であれば、
図2のように傾きがない場合の角度ヒストグラムがθだけ平行移動した角度ヒストグラムが得られる。
【0037】
なお、本実施の形態では、画素ごとに輝度勾配を求める例を説明したが、本発明はこれに限定するものではない。例えば、画像から輝度勾配を求める際に、画像を複数の小領域に分割し、各小領域において、そこで得られた傾き角度と±90゜をなす方向に同一の傾き角度を持つ画素があるかどうかを調べる(すなわち、予め定められた範囲の予め定められた画素間隔について得られた傾き角度と±90゜をなす方向に同一の傾き角度を持つ画素が含まれるかどうかを調べる)としてもよい。この構成により、傾き情報算出部302の処理負荷、あるいは傾き情報算出部302以降の処理負荷を軽減することが可能となる。
【0038】
従来の画像処理による傾き角度推定では、ピーク検出部304によって角度ヒストグラムの最大値を示す角度を探索し、傾き推定部305によって角度ヒストグラムの最大値を示す角度をそのまま画像の傾き角度として、画像補正部306においてその傾き角度を補正する処理を行っていた。あるいはピーク検出部304によって最大値を含む極大値数点を選択し、傾き推定部305ではその極大値を滑らかにつなぐような包絡線を多項式内挿、最少二乗法、勾配法などで算出したうえで最大値を解析的に算出し、これを画像の傾き角度として、画像補正部306においてその傾きを補正していた。一般に画像補正部306ではアフィン変換によって回転が補正される。本発明においても角度ヒストグラムからの傾き角度の推定とアフィン変換による補正は同様の処理を行う。
【0039】
傾き情報−位置記録部310では、傾き情報算出部302で求めた傾き情報と、その画像中の位置を関連付けて記録する(S411)。
図8は、傾き情報とその画像中の位置を表す座標とを関連付けて記録した例である。なお、傾き情報の画像中の位置は、座標に限定されるものではなく、位置を表せればベクトルデータ等であってもよい。例えばフレームID、エッジID、x/y方向エッジ成分、角度、エッジ強度、座標などが関連付けられて記録されるが、このデータベースに構造物から得られたエッジであるか否か、あるいは特徴点抽出を行った際の特徴量などを追加してもよいし、エッジID、x/y方向エッジ、座標のみ、あるいはエッジID、角度、座標のみといった最小構成としてもよい。傾き情報分布度算出部311では前記データベースから所定の角度幅の範囲内にある角度を持つ複数の傾き情報を抽出し、それらの座標に関する分散あるいは標準偏差を計算する(S412)。x/y方向の座標の分散をそれぞれV_x/y、x/y方向の標準偏差をそれぞれσ_x/yとしたとき、Vおよびσは以下の式で表現できる。
【0040】
(式1) V_x=(1/n)Σ(x−x_n)^2,V_y=(1/n)Σ(y−y_n)^2
(式2) σ_x=√(V_x),σ_y=√(V_y)
ここでx、yはそれぞれの座標の平均値であり、nはそのエッジ数である。このデータベースに登録された傾き情報はいずれかの角度範囲の集合に属し、そのすべての集合に対して座標についての標準偏差あるいは分散が求められる。なお、ある集合の分散度合を求める計算方法であればこれに限定するものではない。
【0041】
ここで、正しい傾き角度を与える構造物の垂直線と、偽情報となる構造物の水平線との画像上の幾何的な配置特性について論じる。
図9Aから
図9Dは、
図1Bに示した画像から同じ傾き角度を持つ線分、あるいは画素を抽出したものである。
図9Aは、構造物の垂直線であり、画像上の幅広い位置に分散して配置されていることがわかる。これに対し、
図9Bから
図9Dは、構造物の水平線を抽出したものである。構造物の水平線が画像上で同じ傾き角度となるのは、同一の水平線のみ(
図9Dの場合)か、最大でも消失点に対して反対側にある構造物の水平線の傾き角度と偶然一致するとき(
図9Bまたは
図9Cの場合)であり、最大で2箇所にしか現れず、画像上の非常に狭い範囲に分布していることがわかる。この局所性を検出することができれば、画像の傾き角度推定に使用できるかどうかの判断ができることになる。
【0042】
偽情報判定部312では、前述のような構造物エッジの特徴を利用し、ある注目する傾き角度の局所性を判断することによって、偽情報であるか否かを判定する(S413からS415)。局所性の判断の具体的な方法は、エッジの傾き角度だけ回転した座標を算出したうえで式1あるいは式2を求め、
図9Bから
図9Dのような局所性を持った傾き角度の集合は回転後のx方向あるいはy方向の分散あるいは標準偏差が非常に小さい値となるが、
図9Aではx方向、y方向のいずれもある程度の大きさを持つ、という特性を利用する方法がある。さらに、画像を複数の小領域に分割し、各小領域に判断対象となる傾きを持った線分、あるいは画素が含まれるかどうかを調べると言った方法などが考えられる。または、輝度勾配を求める際にそこで得られた傾き角度と±90゜をなす方向に同一の傾き角度を持つ画素があるかどうかを調べたり、Hough変換の結果をそのまま利用してもよい。局所性判断の方法は、ここに述べた方法に限定するものではなく、画像中における特徴量の局所性を判断できる方法であればどのような方法を利用してもよい。
【0043】
ピーク検出部304、傾き推定部305は、前記角度ヒストグラム生成部303における角度ヒストグラムの極大値を複数を与える傾き角度、あるいは最頻値を与える傾き角度といった情報と、前記偽情報判定部312による傾き角度ごとの判定結果を受け取る。このとき、例えば偽情報でないと判断された傾き角度のうち最頻値を与える角度を傾き推定角度と設定し、この情報を画像補正部306へ送る(S404,S405)。画像補正部306では例えばアフィン変換などを行って、画像全体を回転させることよって画像間の回転移動量を補正することができる。ここで、傾き推定部305は、前述の方法で設定した傾き推定角度が直前に推定された傾き角度と大きく異なっている場合、推定結果を無視し直前に推定された角度を傾き角度としてもよい。あるいは、傾き推定部305が直前に推定した傾き角度に対して適当な誤差許容範囲(例えば±1゜など)を設定し、この範囲内での偽情報でないと判定された傾き角度のうち最頻値を与える傾き角度を選択し、これを推定角度としてもよい。いずれの場合も最終的に画像補正部306において画像全体を回転させることによって、目的の画像の補正が完了する(S406)。
【0044】
補正後の画像は記憶部308に格納した後、図示しないモニタ装置に表示したり、図示しない外部記憶装置にファイルとして保存したり、してもよい。また、ネットワークを介して送出してもよい。
【0045】
以上が本発明の実施の形態1における画像処理装置300の構成と動作である。
【0046】
なお、角度ヒストグラム生成部303は、各傾き角度情報に対する重み付けを行い、その重みは前記画像から検出された線分の長さが長いほど大きくする、としてもよい。線分の長さが長いほど、信頼できる水平線あるいは垂直線成分である可能性が高いためである。
【0047】
また、角度ヒストグラム生成部303は、各傾き角度情報に対する重み付けを行い、その重みは前記画像から検出された輝度勾配が垂直に近いほど大きくする、としてもよい。
【0048】
なお、傾き角度を推定するために必要な情報を保有していない画像に対しては、何も処理を行わないようにしてもよい。たとえば、人物や自然物が画面いっぱいに映っている画像では、構造物情報が存在しないために傾き情報の算出が行えない。このような場合には視覚的にも画像の傾きについての感度が低くなる(傾いていても品質の低下を感じにくくなる)ため、人物や自然物から抽出した不安定かつ確度の低い傾き推定角度を用いて補正を行うよりも、補正自体をキャンセルしたほうがよい。
【0049】
なお、推定された傾き角度を保存するバッファを設けてもよい。このバッファには時系列で算出された推定傾き角度を保存しておき、ある一枚の画像の傾き角度の算出が不可であった場合に、その前後の傾き角度推定が成功した結果を用いた補間を行うことで推定を行ってもよい。ムービーなど連続した画像を取得する機器においては、画像の傾き角度は連続的に変化することが一般的であるためであり、この性質を用いることで、過去の傾き角度推定結果から外挿処理を用いて対象画像の傾き角度を推定することも可能である。
【0050】
(実施の形態2)
図10は、本発明の実施の形態2における画像処理装置の構成を示す図である。
図10において、
図3と同じ構成要素については同じ符号を用い、説明を省略する。
【0051】
画像蓄積部1001は、画像取得部301で得た画像データを所定の時間幅だけ記録する。FIFOと同様の構成を持つものとする。パノラマ画像作成部1002は画像蓄積部1001に記録されている画像データを順次読み出し、パノラマ画像を作成する。パノラマ画像の作成自体は公知の方式を用いてよい。パノラマ画像を作成する際にはその元データとなる複数の画像データ間の相対的な傾き角度は除去されるものとする。パノラマ画像は傾き情報算出部302に送られ、以降、実施の形態1と同様の方法で、傾き角度の推定とパノラマ画像の傾き補正が行われる。
【0052】
パノラマ画像を作成することで、画像中の線分、あるいは画素の傾き角度毎の局所性がより明確になる。
図11A、
図11Bはパノラマ画像の例である。
図11Aは、4枚の画像を合成して1枚のパノラマ画像を作成したことを示しており、画像1から画像4の重なっている部分を検出し、その部分のズレがなくなるように合成することで一枚のパノラマ画像を作成している。
図11Bはパノラマ画像から抽出した線分あるいは画素の同じ傾き角度を持つものの一例である。例えば
図11Bの画像3のように、実線で表された構造物の垂直線と点線で表された構造物の水平線が空間的な分布の局所性に差がないような場合がある。このような場合には本発明での偽情報判定が困難であるが、パノラマ画像にすることによってその局所性が顕著になっていることがわかる。
【0053】
これにより、仮に単一の画像において偽情報判定が不可能であった場合であっても、パノラマ画像を作成することによってパノラマ画像における偽情報を明らかにすることができ、傾き角度推定ができる。そして、その情報を単一画像にフィードバックすることによって個々の画像の傾き角度を決定することが可能となる。すなわち、パノラマ画像作成部1002ではパノラマ画像を作成する際の基準画像に対する傾き角度、あるいは隣接する画像に対する傾き角度を保存しておき、傾き推定部305で得られた結果に対して相対角度分を加減算することによって、複数の画像毎の傾き角度補正を行う。
【0054】
以上が本発明における実施の形態2における画像処理装置1000の構成と動作である。
【0055】
(実施の形態3)
図12は、本発明の実施の形態3における画像処理装置の構成を示す図である。
図12において、
図3と同じ構成要素については同じ符号を用い、説明を省略する。
【0056】
センサ部1201は撮像部307の内部あるいは外部に設置され、撮像部307の動きを所定の周期で計測、出力する。
図13はセンサ出力の一例である。一般に撮像部307が画像をキャプチャするときに同期して、その動きを計測するのがよい。センサ部1201は加速度センサ、ジャイロセンサ、方位センサなどで構成されており、理想的には撮像部307の動きすべてを計測できるよう、それぞれ3軸の計測軸を持つことが求められるが、必ずしもすべての軸を必要とはしない。画像データとセンサデータは、画像処理装置1200の内部では同期するように扱われる。センサ取得部1202は取得したセンサデータを処理し、推定傾き角度を算出するための補助情報を算出する。具体的には、センサ値に対してフィルタリングを施して、所望に帯域成分を抽出したり、予め強化学習によって構成された識別器を用いてセンサ群の振る舞いから動き方向を推定したりすることが可能である。これらの情報は、偽情報判定部312や傾き推定部305に送られる。偽情報判定部312は、センサ取得部1202からの情報を用いて、鉛直方向が画像のどの方向であるかを推定し、画像から抽出された線分あるいは画素の傾き角度のいずれが構造物の垂直線である可能性が高いかを決定する。具体的にはセンサ情報から得た鉛直方向を示す単位ベクトルと、画像から抽出された傾き角度を持つ単位ベクトルとの内積を求め、その結果が1(傾き角度が法線ベクトルで表されている場合は0)に近いものが垂直線の可能性が高い、と判断できる。また、傾き推定部305では、例えば加速度センサ、ジャイロセンサを用いて撮像部307の傾き角度をセンサによって大まかに推定し、傾き推定部305で推定傾き角度を算出する際の制約条件とすることもできる。
図14はx方向、y方向の加速度の変化を示した一例である。(a)、(b)、(c)のタイミングでそれぞれの方向の加速度を取得し、2次元平面にマッピングしてベクトル化したものを
図14に示す。(a)、(b)、(c)のベクトルは、その方向が撮像部307の撮像時の鉛直方向に対する傾き角度を示しているため、これが鉛直方向を向くように画像を回転させることで傾きを除去できる。ところで、歩きながらの撮影では、センサの値が慣性ノイズや他軸感度などで正確でなくなる場合がある。その場合には本発明で明らかにした方法での補正が必要となるが、センサによって計測された傾き方向を傾き推定部305に入力することにより、本発明の効果をさらに高めることができる。すなわち、センサによって示された方向が画像の真の鉛直方向である可能性が高いとし、センサの示す方向を中心として所定の範囲を設定し、角度ヒストグラム生成部303において求めた角度ヒストグラムからその設定された範囲内の頻度の最頻値を傾き角度とする。なお、範囲設定は固定値でも変動値でもよく、変動値の場合には動きの大きさ、すなわちセンサの振幅や安定度(所定時間範囲内の分散値などが利用できる)によって変化させてもよい。その場合は動きが小さいときはセンサの出力値の誤差は小さいと判断して範囲を狭く設定し、動きが大きいときは誤差が大きいと判断して範囲を広く設定する。その変化は連続的でもよいし、2段階以上の離散値であってもよい。あるいは、画像から推定角度を算出するための情報が得られない場合は、過去の推定結果、あるいは前後の推定結果と、センサ値とから推定角度を算出してもよい。その場合、時系列上で連続的に取得された画像であれば傾き角度も連続的に変化する、という仮定を適用し、すでに推定済みの角度に対して許容値を設定して、その範囲内にセンサ値が収まっていればその値を補正値とする、といった方式が考えられる。
【0057】
以上が本発明における実施の形態3における画像処理装置1200の構成と動作である。
【0058】
(その他変形例)
なお、本発明を上記実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下のような場合も本発明に含まれる。
【0059】
(1)上記の各装置は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記RAMまたはハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
【0060】
(2)上記の各装置を構成する構成要素の一部または全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしてもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAMなどを含んで構成されるコンピュータシステムである。前記RAMには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、システムLSIは、その機能を達成する。
【0061】
(3)上記の各装置を構成する構成要素の一部または全部は、各装置に脱着可能なICカードまたは単体のモジュールから構成されているとしてもよい。前記ICカードまたは前記モジュールは、マイクロプロセッサ、ROM、RAMなどから構成されるコンピュータシステムである。前記ICカードまたは前記モジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、前記ICカードまたは前記モジュールは、その機能を達成する。このICカードまたはこのモジュールは、耐タンパ性を有するとしてもよい。
【0062】
(4)本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。
【0063】
また、本発明は、前記コンピュータプログラムまたは前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray Disc)、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている前記デジタル信号であるとしてもよい。
【0064】
また、本発明は、前記コンピュータプログラムまたは前記デジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
【0065】
また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしてもよい。
【0066】
また、前記プログラムまたは前記デジタル信号を前記記録媒体に記録して移送することにより、または前記プログラムまたは前記デジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
【0067】
(5)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
【産業上の利用可能性】
【0068】
本発明にかかる画像処理装置は、撮影装置あるいは画像表示装置、映像表示装置へ組み込むことで、取得した画像の傾きを補正し、正しい向きの画像を生成することができる。従来の画像処理を用いた傾き補正装置では困難であった画像であっても、複数の画像情報を統合することで所望の画像の傾き情報を抽出することができる。また、本発明は撮影装置、表示装置のみではなく、映像を扱うプリンタやスキャナなどの電子媒体以外の傾き補正への応用も可能である。
【符号の説明】
【0069】
301 画像取得部
302 傾き情報算出部
303 角度ヒストグラム生成部
304 ピーク検出部
305 傾き推定部
306 画像補正部
307 撮像部
308 記憶部
310 傾き情報−位置記録部
311 傾き情報分布度算出部
312 偽情報判定部
1001 画像蓄積部
1002 パノラマ画像作成部
1201 センサ部
1202 センサ取得部