(57)【要約】  撮像画像の傾きを補正するにあたって、ウェアラブル端末など正立した状態での撮影を前提としない撮像装置で撮影された画像は、どのような画像が撮影されているかを予想することができないので、画像の傾き角を推定するのに適していない領域から傾き角を推定し、間違って推定された傾き角を使って画像を補正してしまい、かえって画質を悪くしてしまうことがある。  本発明は、撮像画像を複数の領域に分割し、分割された個々の領域におけるテクスチャが示す方向性を判定し、テクスチャが一方向性を有する領域のみを対象として画像の傾き角を推定し、推定された傾き角を使って撮像画像を補正する。
2009008174.tif 000002
【特許請求の範囲】
【請求項１】
撮像画像を構成する複数の画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理装置であって、
個々の画素ブロックは、縦方向および横方向の画素数が予め定められたの画素の集まりであり、
各画素ブロックごとに、画素ブロック内の画素の位置情報と輝度情報とを所定の演算式に代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定手段と、
前記判定手段により、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択手段と、
選択された画素ブロックから、基準軸に対する撮像画像の傾き角を求め、補正する補正手段とを備える
ことを特徴とする画像処理装置。
【請求項２】
前記所定の演算式は、輝度勾配の方向分布を算出するものであり、
前記輝度勾配θは、
画像における任意の位置P(x,y)における画素の輝度をI(P)とした場合、
位置P(x,y)におけるx方向の輝度変化Δx=∂I(P)/∂xと、位置P(x,y)におけるy方向の輝度変化Δy=∂I(P)/∂yとを用いて、θ=tan-1(Δy/Δx)と表され、
前記輝度勾配の方向分布P(θ)は、輝度勾配の関数であり、輝度勾配がΔθの幅を許してθである画素の数を累積したものである
ことを特徴とする請求項1に記載の画像処理装置。
【請求項３】
前記判定手段は、前記輝度勾配を算出する際、周辺の画素に重みをつけて差分をとるフィルタ処理を行い、
インデックス(n,m)で示される位置における輝度変化ΔxおよびΔyは、
前記重み付けに用いられる係数行列の成分をa_i,jおよびb_i,jとすると、
次の(数1)および(数2)のように表される
【数１】
2009008174.tif 000009
【数２】
2009008174.tif 000010
ことを特徴とする請求項2に記載の画像処理装置。
【請求項４】
前記判定手段により画素ブロック内画像の傾きを推定するのに適していると判定される画素ブロックは、
前記輝度勾配の方向分布の分散が所定の値より小さい画素ブロックである
ことを特徴とする請求項3に記載の画像処理装置。
【請求項５】
前記判定手段により画素ブロック内画像の傾きを推定するのに適していると判定される画素ブロックは、
前記輝度勾配の方向分布において、最頻値を中心とする所定の角度範囲内にある割合が所定の値より大きい画素ブロックである
ことを特徴とする請求項3に記載の画像処理装置。
【請求項６】
前記画像処理装置は、複数の撮像画像の傾き角を連続して検出し、
前記所定の角度範囲は、前記補正手段が過去に採用した傾き角に基づいて決定される
ことを特徴とする請求項5に記載の画像処理装置。
【請求項７】
前記画像処理装置は、複数の撮像画像の傾き角を連続して検出し、
前記所定の角度範囲は、前記補正手段が直前に採用した傾き角に基づいて決定される
ことを特徴とする請求項5に記載の画像処理装置。
【請求項８】
前記所定の演算式は、輝度スペクトル強度の方向分布を算出するものであり、
前記輝度スペクトルは、
離散的な2次元座標(x,y)に対してある値Iをとる離散関数で表される画像の輝度I(x,y)に対して、2次元離散Fourier変換を施したものであり、
前記画像の輝度I(x,y)に対する輝度スペクトルF I(u,v)は、
前記画像の幅をW、高さをHとすると、(数3)のように表され、
【数３】
2009008174.tif 000011
前記輝度スペクトル強度の方向分布P(θ)は、
前記輝度スペクトルF I(u,v)を、極座標(r,θ)で表示した際における輝度スペクトルF I(r,θ)を、動径方向に関して2乗和をとることで(数4)と表される
【数４】
2009008174.tif 000012
ことを特徴とする請求項1に記載の画像処理装置。
【請求項９】
前記判定手段により画素ブロック内画像の傾きを推定するのに適していると判定される画素ブロックは、
前記輝度スペクトル強度の方向分布の分散が所定の値より小さい画素ブロックである
ことを特徴とする請求項8に記載の画像処理装置。
【請求項１０】
前記補正手段は、
前記選択手段によって選択された画素ブロックから輝度勾配の方向分布を算出し、
前記輝度勾配の方向分布における最頻値に基づいて撮像画像の傾き角を求める
ことを特徴とする請求項1に記載の画像処理装置。
【請求項１１】
前記補正手段は、
前記選択手段によって選択された画素ブロックから線分を検出し、
検出された線分の傾き角に基づいて撮像画像の傾き角を求める
ことを特徴とする請求項1に記載の画像処理装置。
【請求項１２】
前記線分の検出は、前記選択手段によって選択された画素ブロック全体を対象に行われ、
前記撮像画像の傾き角は、検出された線分の傾き角の最頻値である
ことを特徴とする請求項11に記載の画像処理装置。
【請求項１３】
前記線分の検出は、前記選択手段によって選択されたそれぞれの画素ブロックを対象に行われ、
前記画素ブロック内画像の傾き角は、検出された線分の傾き角の最頻値であり、
前記撮像画像の傾き角は、前記画素ブロック内画像の傾き角の最頻値である
ことを特徴とする請求項11に記載の画像処理装置。
【請求項１４】
前記画像の傾き角は、前記画素ブロック内画像の傾き角の最頻値が複数ある場合、
各画素ブロックにおいて画素ブロックの傾き角の方向に傾いた線分の長さが長いもの優先する
ことを特徴とする請求項13に記載の画像処理装置。
【請求項１５】
前記画像処理装置は、複数の撮像画像の傾き角を連続して補正し、
前記画像の傾き角は、前記画素ブロック内画像の傾き角の最頻値が複数ある場合、
前記画像補正手段が過去に採用した傾き角から予測される傾き角に近いものを優先する
ことを特徴とする請求項13に記載の画像処理装置。
【請求項１６】
前記画像処理装置は、複数の撮像画像の傾き角を連続して補正し、
前記画像の傾き角は、前記画素ブロック内画像の傾き角の最頻値が複数ある場合、
前記画像補正手段が直前に採用した傾き角から予測される傾き角に近いものを優先する
ことを特徴とする請求項13に記載の画像処理装置。
【請求項１７】
前記選択手段は、
前記画素ブロックのうち、輝度変化が所定の輝度変化より大きい画素の数の画素ブロックの全画素数に対する割合が所定の閾値より大きい画素ブロックを選択対象から除外する
ことを特徴とする請求項11の画像処理装置。
【請求項１８】
前記画像処理装置は、複数の撮像画像の傾き角を連続して補正し、
前記補正手段は、
前記選択手段によって選択された画素ブロック全体が画像に占める割合が所定の閾値より小さい場合、
前記補正手段が過去に採用した傾き角に基づいて画像の傾き角を推定する
ことを特徴とする請求項17に記載の画像処理装置。
【請求項１９】
前記画像処理装置は、複数の撮像画像の傾きを連続して補正し、
前記補正手段は、
前記選択手段によって選択された画素ブロック全体が画像に占める割合が所定の閾値より小さい場合、
前記画像補正手段が直前に採用した傾き角に基づいて画像の傾き角を推定する
ことを特徴とする請求項17に記載の画像処理装置。
【請求項２０】
前記画像処理装置は、
撮像時における水平面からの傾きを検知するセンサを備えた撮像装置に内蔵され、
前記画像補正手段は、
前記選択手段によって選択された画素ブロック全体が画像に占める割合が所定の閾値より小さい場合、
前記センサが出力する傾き角の変化量の所定時間内の合計が所定時間以下ならば、前記センサが出力する傾き角を用いて撮像画像を補正する
ことを特徴とする請求項17に記載の画像処理装置。
【請求項２１】
前記補正手段は、
前記選択手段によって選択された画素ブロック全体が画像に占める割合が所定の閾値より小さい場合、補正を行わない
ことを特徴とする請求項17に記載の画像処理装置。
【請求項２２】
前記画像処理装置は、複数の撮像画像の傾き角を連続して補正し、
前記補正手段は、
前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、
前記補正手段が過去に採用した傾き角に基づいて撮像画像の傾き角を推定する
ことを特徴とする請求項17に記載の画像処理装置。
【請求項２３】
前記画像処理装置は、複数の撮像画像の傾き角を連続して補正し、
前記補正手段は、
前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、
前記補正手段が直前に採用した傾き角に基づいて撮像画像の傾き角を推定する
ことを特徴とする請求項17に記載の画像処理装置。
【請求項２４】
前記画像処理装置は、
撮像時における水平面からの傾きを検知するセンサを備えた撮像装置に内蔵され、
前記補正手段は、
前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、
前記センサが出力する傾き角の変化量の所定時間内の合計が所定時間以下ならば、前記センサが出力する傾き角を用いて撮像画像を補正する
ことを特徴とする請求項17に記載の画像処理装置。
【請求項２５】
前記補正手段は、
前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、補正を行わない
ことを特徴とする請求項17に記載の画像処理装置。
【請求項２６】
前記センサは、加速度センサである
ことを特徴とする請求項20または24に記載の画像処理装置。
【請求項２７】
前記センサは、角速度センサである
ことを特徴とする請求項20または24に記載の画像処理装置。
【請求項２８】
前記センサが出力する傾き角の変化量の所定時間内の合計が所定時間以上ならば、補正を行わない
ことを特徴とする請求項20または24に記載の画像処理装置。
【請求項２９】
撮像画像を構成する複数の画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理方法であって、
個々の画素ブロックは、縦方向および横方向の画素数が予め定められたの画素の集まりであり、
各画素ブロックごとに、画素ブロック内の画素の位置情報と輝度情報とを所定の演算式に代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定ステップと、
前記判定手段により、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択ステップと、
選択された画素ブロックから、基準軸に対する撮像画像の傾き角を求め、補正する補正ステップとを含む
ことを特徴とする画像処理方法。
【請求項３０】
撮像画像を構成する複数の画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理処理をコンピュータに実行させる画像処理プログラムであって、
個々の画素ブロックは、縦方向および横方向の画素数が予め定められたの画素の集まりであり、
各画素ブロックごとに、画素ブロック内の画素の位置情報と輝度情報とを所定の演算式に代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定ステップと、
前記判定手段により、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択ステップと、
選択された画素ブロックから、基準軸に対する撮像画像の傾き角を求め、補正する補正ステップとをコンピュータに実行させる
ことを特徴とする画像処理プログラム。
【請求項３１】
撮像画像を構成する複数の画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理をコンピュータに実行させる画像処理プログラムを記録した記録媒体であって、
前記画像処理プログラムは、
個々の画素ブロックは、縦方向および横方向の画素数が予め定められたの画素の集まりであり、
各画素ブロックごとに、画素ブロック内の画素の位置情報と輝度情報とを所定の演算式に代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定ステップと、
前記判定手段により、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択ステップと、
選択された画素ブロックから、基準軸に対する撮像画像の傾き角を求め、補正する補正ステップとをコンピュータに実行させる
ことを特徴とする画像処理プログラムを記録した記録媒体。
【請求項３２】
撮像画像を構成する複数の画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理プロセッサであって、
個々の画素ブロックは、縦方向および横方向の画素数が予め定められたの画素の集まりであり、
各画素ブロックごとに、画素ブロック内の画素の位置情報と輝度情報とを所定の演算式に代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定手段と、
前記判定手段により、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択手段と、
選択された画素ブロックから、基準軸に対する撮像画像の傾き角を求め、補正する補正手段とを備える
ことを特徴とする画像処理プロセッサ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ウェアラブル端末で撮影した画像の補正技術に関する。
【背景技術】
【０００２】
近年、日常生活をライフログとして記録し続けることができるウェアラブル端末が登場しつつある。ウェアラブル端末とは、利用者が常時装着して使用する端末装置であり、カメラやマイクを備え、利用者が操作しなくても、常に記録を行うというものである。【０００３】
特許文献1には、カメラやマイクから取得した情報を、イベントごとに重要度を定義して記録することで、利用者の記憶と想起を補助するウェアラブル端末が開示されている。しかし、ウェアラブル端末は、常時装着され常時撮影が行われるという使用形態から、利用者の動きによって撮像画像の画質が著しく低下してしまうという問題がある。特に、ウェアラブル端末が水平面に対して傾いた状態で撮影が行われることよって、撮像画像が傾いてしまうという問題がある。【０００４】
一方、特許文献2には、撮像画像の上部に存在する線分を検出し、それらの線分の傾き角から画像全体の傾き角を推定し、撮像画像の傾きを補正する方法が開示されている。特許文献2に開示されている画像補正方法は、撮影者がほぼ正立した状態で撮影が行われることを前提とし、そのような状態で撮影が行われると、画像下部は地面や影の影響を受けて線分から水平方向を推定しにくい領域となり、画像上部は構造物などの水平方向を検出しやすい領域となることが期待される。撮像画像のこのような特徴を積極的に利用して画像を補正することが、特許文献2の方法の特徴である。
【特許文献１】特開2003-304486号公報
【特許文献２】特許第3676360号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、ウェアラブル端末で撮影した撮像画像に対して、特許文献2に開示されている画像補正を適用した場合、必ずしも期待する補正効果が得られない。ウェアラブル端末では、利用者が常時装着し常時撮影が行われるので、撮像画像は上部と下部にだけ分割して解析できるような単純な構図とは限らず、特許文献2の方法では不十分である。さらに、特許文献2の方法では、画像の傾きを検出するのに十分な特徴が得られない場合が考慮されておらず、そのような場合でも推定された傾き角を用いて機械的に画像補正がなされるので、画像の傾きがかえって悪化してしまう場合もある。【０００６】
上記の問題は、画像中からいかにして傾きの検出に適した領域を選択するかという問題に帰着される。すなわち、画像の傾きを画像中に存在する線分の傾きから推定する場合において、線分の向きが揃っている領域と、線分の向きがバラバラである領域とをいかにして判別するかということが問題となる。特許文献2の方法は、これを経験に基づいて単純に上下の領域に分割しているだけであるため、適用範囲が限定されてしまう。【０００７】
本発明は、任意の撮像画像に対して、特にウェアラブル端末で撮影された画像のように正立で撮影されるとは限らない撮像画像に対して、画像を解析することにより傾き角を推定し、画像の傾きを補正する画像処理装置を提供することである。【０００８】
ここで画像における領域とは、画像を構成する画素のうちの一部分で構成される画素ブロックである。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明に係る画像処理装置は撮像画像を構成する複数の画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理装置であって、個々の画素ブロックは、縦方向および横方向の画素数が予め定められたの画素の集まりであり、各画素ブロックごとに、画素ブロック内の画素の位置情報と輝度情報とを所定の演算式に代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定手段と、前記判定手段により、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択手段と、選択された画素ブロックから、基準軸に対する撮像画像の傾き角を求め、補正する補正手段とを備えることを特徴とする画像処理装置である。
【発明の効果】
【００１０】
上記の構成の画像処理装置によると、入力された画像を複数の領域に分割し、分割された領域においてテクスチャ(輝度変化)がどのような方向性を有するのかを判定し、その判定に基づいてテクスチャが一方向性を有する領域のみを選択し、選択された領域を対象として画像の傾き角を推定する。【００１１】
ここで、テクスチャとは、画像中のエッジ強度の大きい画素の集合として形成される模様であり、テクスチャが一方向性を有するとは、近接するエッジ強度の大きい画素を結ぶことによって形成される線分のうち、大部分がある特定の方向の周辺に向いていることをいう。テクスチャは、画像に含まれる画素の位置情報および輝度情報に対して演算を施すことで得られる。テクスチャが一方向性を有している場合は、領域内に建物等の構造物の縁が含まれていると考えられ、その方向が水平方向もしくは鉛直方向である可能性が高いので、それらの領域において、輝度のような画素情報を解析することによって、画像の傾き角を推定する。【００１２】
従って、線分の方向が揃った領域が画像の上部になくても、複数に分割された領域のうち、どれかに線分の方向が揃った領域が存在していれば、それらの領域を対象として傾き角の推定を行うことができる。撮像画像のうち、上部に限らずどこかに存在する線分の方向が揃った領域だけを選択し、線分の方向がバラバラの領域は予め除外されるので、傾き角の推定に適した領域と適さない領域とが混在した画像であっても、正しく傾き角を推定し、画像の傾きを補正することができる。【００１３】
ここで、前記判定手段は、輝度勾配の方向分布を算出するとしてもよい。【００１４】
画像中の線分は輝度の変化として認識することができ、線分の方向は輝度変化の方向、すなわち、輝度勾配として認識されるので、領域中の線分のそろい具合を輝度勾配の方向分布から判定することができる。【００１５】
ここで、前記判定手段は、輝度スペクトル強度の方向分布を算出するとしてもよい。【００１６】
輝度スペクトルは、元の画像の輝度分布の周波数特性を反映しているので、輝度スペクトルを解析することで元の画像における線分の分布を調べることができる。【００１７】
ここで、
前記選択手段は、前記複数の領域のうち、輝度変化が所定の輝度変化より大きい画素の数の領域の全画素数に対する割合が所定の閾値より大きい領域を選択対象から除外するとしてもよい。【００１８】
画像中の線分は輝度変化の大きな位置の近くにあると考えられるが、輝度変化の大きな位置が多いと、線分が密集してしまい、線分の方向を特定することが困難になる。輝度変化の大きい画素が多い領域は、予め選択対象から除くことで、線分の密集した領域から線分の方向を特定するという無駄な処理を行わなくてすむ。【００１９】
ここで、前記判定手段は、前記輝度勾配の方向分布の分散が所定の値より小さい領域を、領域の傾き角の推定に適した領域と判定するとしてもよい。【００２０】
輝度勾配の方向分布の分散は、領域に含まれる線分のバラツキの大きさを反映しているので、分散の小さい領域を領域の傾き角の推定に適した領域と判定することで、線分が揃っている領域を選択することができる。【００２１】
ここで、前記判定手段は、前記輝度勾配の方向分布において、輝度勾配の方向の最頻値を中心とする所定の角度範囲内にある割合が所定の値より大きい領域を、前記領域の傾き角の推定に適した領域と判定するとしてもよい。【００２２】
輝度勾配の方向分布が最頻値の周辺に度数を集中している場合、大部分の線分の傾き角が近い値をとっているので、領域の傾き角の推定に適した領域と判定することで、線分が揃っている領域を選択することができる。【００２３】
ここで、前記画像処理装置は、複数の撮像画像の傾きを連続して検出し、前記所定の角度範囲は、前記補正手段が過去に採用した傾き角に基づいて決定されるとしてもよい。【００２４】
連続して撮影された画像は、同じような傾き角で傾いていると予想されるので、過去に採用した傾き角をもとに、当該画像の傾き角にある程度の見当をつけ、それをもとに角度範囲を決定するので、傾き角推定の精度を高めることができる。【００２５】
ここで、前記所定の角度範囲は、前記補正手段が直前に採用した傾き角に基づいて決定されるとしてもよい。【００２６】
過去に採用された傾き角でも、時間的に離れている場合は同じ状況で撮影されたとは考えにくいので、直前に採用された傾き角のみに基づいて角度範囲を決定することで、傾き角推定の精度を高めることができる。【００２７】
ここで、前記判定手段は、前記輝度スペクトルの強度の方向分布の分散が所定の値より小さい領域を、前記領域の傾き角の推定に適した領域と判定するとしてもよい。【００２８】
輝度スペクトルの強度の方向分布の分散の小さい領域は、元の画像の線分のバラツキが小さい領域に対応するので、傾き角を推定するのに適した領域が選択される。【００２９】
ここで、前記推定手段は、前記選択手段によって選択された領域全体から線分を検出し、検出された線分の傾き角の最頻値を画像の傾き角とするとしてもよい。【００３０】
選択された領域全体から線分を検出し、傾き角の推定を行うので、線分検出処理および傾き推定処理をそれぞれ1回することで画像の傾き角の推定が完了できる。【００３１】
ここで、前記推定手段は、前記選択手段によって選択されたそれぞれの領域ごとに線分を検出し、各領域において検出された線分の傾き角の最頻値を領域の傾き角とし、領域の傾き角に基づいて画像の傾き角を決定するとしてもよい。【００３２】
選択された領域個別に線分の検出と傾き角の推定を行い、それぞれの領域の傾き角から画像の傾き角を推定する2段階の推定を行うことで、推定の精度を高めることができる。【００３３】
ここで、前記画像の傾き角は、前記領域の傾き角の最頻値であるとしてもよい。【００３４】
それぞれの領域で推定された傾き角のうち最頻値を画像の傾き角とすることで、最も確からしい傾き角を推定できる。【００３５】
ここで、前記画像の傾き角は、前記領域の傾き角の最頻値が複数ある場合、各領域において領域の傾き角の方向に傾いた線分の長さが長いもの優先するとしてもよい。【００３６】
最頻値が複数ある場合、長い線分に基づいた傾き角の方を優先することで、正しい傾き角を推定できる可能性が高くなる。【００３７】
ここで、前記画像処理装置は、複数の撮像画像の傾きを連続して補正し、前記画像の傾き角は、前記領域の傾き角の最頻値が複数ある場合、前記補正手段が過去に採用した傾き角から予測される傾き角に近いものを優先するとしてもよい。【００３８】
最頻値が複数ある場合、過去に採用した傾き角に近い方を優先することで、正しい傾き角を推定できる可能性が高くなる。【００３９】
ここで、前記推定手段が過去に検出した画像の傾き角から予測される傾き角は、前記推定手段が直前に検出した傾き角であるとしてもよい。【００４０】
最頻値が複数ある場合、直前に採用した傾き角に近い方を優先することで、正しい傾き角を推定できる可能性が高くなる。【００４１】
ここで、前記画像処理装置は、複数の撮像画像の傾きを連続して補正し、前記推定手段は、前記選択手段によって選択された領域全体が画像に占める割合が所定の閾値より小さい場合、前記補正手段が過去に採用した傾き角に基づいて画像の傾き角を推定するとしてもよい。【００４２】
選択された領域が少ない場合、画像から推定される傾き角の信頼度は低いので、過去に採用された傾き角に基づいて推定される傾き角を採用する。これにより、選択された領域が少ない場合でも画像の補正を行うことができる。【００４３】
ここで、前記推定手段が推定する画像の傾き角は、前記補正手段が直前に採用した傾き角であるとしてもよい。【００４４】
選択された領域が少ない場合、画像から推定される傾き角の信頼度は低いので、直前に採用された傾き角を採用する。これにより、選択された領域が少ない場合でも画像の補正を行うことができる。【００４５】
ここで、前記画像処理装置は、撮像時における水平面からの傾きを検知するセンサを備えた撮像装置に内蔵され、前記補正手段は、前記選択手段によって選択された領域全体が画像に占める割合が所定の閾値より小さい場合、前記センサが出力する傾き角を用いて撮像画像を補正するとしてもよい。【００４６】
選択された領域が少ない場合、画像から推定される傾き角の信頼度は低いので、センサで測定した撮影時の傾き角を採用する。これにより、選択された領域が少ない場合でも画像の補正を行うことができる。【００４７】
ここで、前記補正手段は、前記選択手段によって選択された領域全体が画像に占める割合が所定の閾値より小さい場合、補正を行わないとしてもよい。【００４８】
選択された領域が少ない場合、画像から推定される傾き角の信頼度は低いので、補正を行わないようにする。これにより、間違った傾き角で補正することによる画質の悪化を防止できる。【００４９】
ここで、前記画像処理装置は、複数の撮像画像の傾きを連続して補正し、前記推定手段は、前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、前記補正手段が過去に採用した傾き角に基づいて撮像画像の傾き角を推定するとしてもよい。【００５０】
画像が暗い場合、画像から傾き角を推定するのは困難であるので、過去に採用された傾き角に基づいて画像の傾き角を推定する。これにより、画像が暗い場合でも画像の補正を行うことができる。【００５１】
ここで、前記傾き角は、前記補正手段が直前に採用した傾き角であるとしてもよい。【００５２】
画像が暗い場合、画像から傾き角を推定するのは困難であるので、直前に採用された傾き角を推定する。これにより、画像が暗い場合でも画像の補正を行うことができる。【００５３】
ここで、前記画像処理装置は、撮像時における水平面からの傾きを検知するセンサを備えた撮像装置に内蔵され、前記補正手段は、前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、前記センサが出力する傾き角を用いて撮像画像を補正するとしてもよい。【００５４】
画像が暗い場合、画像から傾き角を推定するのは困難であるので、センサで測定した撮影時の傾き角を採用する。これにより、画像が暗い場合でも画像の補正を行うことができる。【００５５】
ここで、前記補正手段は、前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、補正を行わないとしてもよい。【００５６】
画像が暗い場合、画像から傾き角を推定するのは困難であるので、補正を行わないようにする。これにより、間違った傾き角で補正することによる画質の悪化を防止できる。【００５７】
ここで、前記センサは、加速度センサであるとしてもよい。【００５８】
センサとして加速度センサを用いることで、重力加速度を検知して撮影時の傾き角を測定することができる。【００５９】
ここで、前記センサは、角速度センサであるとしてもよい。【００６０】
センサとして角速度センサを用いることで、撮像装置の回転角を検知して撮影時の傾き角を測定することができる。
【図面の簡単な説明】
【００６１】
【図１】本発明の一例である画像処理装置を内蔵するウェアラブル端末の装着例。
【図２】本発明の一例である画像処理装置による画像補正処理例を示す図。
【図３】本発明の一例である画像処理装置の構成図。
【図４】本発明の一例である画像処理装置による画像分割および領域選択を説明する図。
【図５】線分上の点における輝度勾配を説明する図。
【図６】Sobelフィルタで用いられる係数行列を示す図。
【図７】本発明の一例である画像処理装置が作成する輝度勾配ヒストグラムを示す図。
【図８】いくつかの画像と対応する輝度スペクトルを示す図。
【図９】本発明の一例である画像処理装置における領域選択部の動作を示すフローチャート。
【図１０】本発明の一例である画像処理装置における方向性判定部の輝度勾配ヒストグラム作成処理を示すフローチャート。
【図１１】Hough変換法による線分検出の原理を説明する図。
【図１２】Hough変換法において線分を特徴付けるパラメータを説明する図。
【図１３】本発明の一例である画像処理装置における傾き推定部が作成する角度ヒストグラムを示す図。
【図１４】本発明の一例である画像処理装置における傾き推定部の動作を示すフローチャート。
【図１５】本発明の一例である画像処理装置における傾き推定部の線分検出処理の動作を示すフローチャート。
【図１６】本発明の一例である画像処理装置における傾き推定部の角度ヒストグラム作成処理の動作を示すフローチャート。
【図１７】図8の輝度スペクトルの断面を示す図。
【図１８】本発明の一例である画像処理装置のセンサによる傾き角検出方法を説明する図。
【図１９】本発明の一例である画像処理装置の動作を示すフローチャート。
【符号の説明】
【００６２】
100：画像処理装置
110：画像入力部
120：画像分割部
125：方向性判定部
130：領域選択部
140：傾き推定部
150：画像補正部
160：センサ
【発明を実施するための最良の形態】
【００６３】
本実施形態では、本発明の一例である画像処理装置がウェアラブル端末に内蔵され、カメラで撮影された画像の傾きを補正する例について説明する。【００６４】
ウェアラブル端末とは、図1のように、利用者が首からぶら下げるなどして常時身につけて使用する端末で、利用者の日常の出来事を記録するために例えばカメラを備えており、カメラによる撮影は、利用者による操作を特に必要とせずに行われる。従って、利用者の予期しないタイミングで撮影が行われる可能性があり、例えば、カメラが水平面に対して傾いた状態で撮影が行われると、図2(a)のように、撮影された画像は傾いてしまう。このような傾いた画像は見苦しいので、通常、人は図2(b)のように、画像を傾けて被写体の方向を正しい方向に戻そうとする。本発明は、人が傾きを補正せずとも、撮像画像を解析することで正しい方向を推定し、画像の傾きを補正する画像処理装置である。【００６５】
ここで、画像の傾きとは、被写体から判断できる画像の水平方向あるいは鉛直方向と、画像自体のフレームで決まる横方向あるいは縦方向とがそれぞれ平行でないことをいう。図2(a)のように壁を撮影した画像の場合は、壁の模様から容易に水平方向を推定することができ、画像は反時計回りにわずかに傾いていると知覚されるので、これを図2(b)のように補正することは容易である。しかし、図2(c)のように地面に生える雑草を撮影した画像の場合は、被写体から水平方向を推定することは困難である。これは、画像に含まれる線分がバラバラの方向を向いており、水平方向あるいは鉛直方向を示唆する線分が存在しないからである。本発明は、画像中のある領域が、上記のような容易に水平方向を推定できるのか、あるいは、水平方向の推定が困難なのかという特徴を解析することにより、高い確率で画像の正しい水平方向または鉛直方向を推定する。
《構成》
図3は、本発明の一例である画像処理装置の構成図である。本発明の一例である画像処理装置100は、画像入力部110、画像分割部120、方向性判定部125、領域選択部130、傾き推定部140、画像補正部150、および、センサ160から構成される。本実施形態では、本発明の一例である画像処理装置100が、撮像部および記憶部を備えたウェアラブル端末に内蔵され、撮像部で撮影された画像の傾きを補正し、記憶部に記憶する構成となっている。【００６６】
撮像部は、CCDやCMOSセンサ等の撮像素子を備えたカメラであり、映像を撮影して電気信号として出力する。【００６７】
記憶部は、SDカードやフラッシュメモリ等の記憶媒体であり、本発明の一例である画像処理装置100が出力する画像を保存する。
〈画像入力部110〉
画像入力部110は、画像処理装置100において補正する画像の入力を行う。本発明の一例である画像処理装置100は、補正を行う画像がいつ撮影されたものであるかは関知しない。本実施形態では、本発明の一例である画像処理装置100をウェアラブル端末に内蔵し、撮像画像をその場で補正する構成をとっているが、撮像装置とは別に本発明の一例である画像処理装置100を用意し、撮像画像を入力するような構成にしてもよい。ここで、画像の補正を行うためには、入力される画像は、例えば、通常のカメラで撮影された長方形状の写真のように、画像の縦方向および横方向が明確に規定される画像を前提とする。
〈画像分割部120〉
画像分割部120は、入力された画像を複数の領域に分割する。この分割は、入力画像を縦1/4、横1/5というように縦横共に入力画像に対する比で分割してもよいし、あるいは、縦横32画素というように固定の大きさで分割してもよい。例えば、画像分割部120は、図4(a)のような入力画像に対して、図4(b)のように20分割された領域を生成する。【００６８】
本実施形態では、分割された領域は同じ面積をもつとして説明を行うが、傾き推定部140において分割された領域の面積を考慮した推定を行えば、必ずしも同じ面積の領域に分割する必要はなく、また、長方形の領域に分割する必要もない。
〈方向性判定部125〉
方向性判定部125は、分割された領域ごとに、その領域が画像の傾き角を推定するのに適しているかどうかを判定する。画像の傾き角を推定するのに適しているかどうかというのは、画像中に含まれる線分の方向の揃い具合によって判定される。すなわち、線分が一方向に揃っている領域は画像の傾き角を推定するのに適しており、逆に線分の方向がバラバラの領域は画像の傾き角を推定するのに適していない。【００６９】
画像中の線分は、ミクロに捉えると、画素単位の輝度の変化として定量的に検出することができる。これは、輝度に差があることによって、画像中のある領域と別の領域との区別がなされ、その境界が線分として知覚されるからである。従って、領域内での線分の方向の揃い具合を判定するという問題は、領域内での画素の輝度の変化の方向がバラバラであるかどうかを判定するという問題に帰着される。【００７０】
このような画素の輝度の差によって知覚される線分の集合として形成される模様はテクスチャと呼ばれ、方向性判定部125は、分割された領域ごとに、その領域のテクスチャが一方向性をもつかどうかを判定する。ここで、一方向性とは、線分の方向が完全にある1つの方向に揃っている必要はなく、ある程度の幅を許して、大多数の線分の方向が近い方向を向いているという意味である。この幅は画像の傾き角の推定の精度を決めるもので、設計段階で決めた閾値を用いる。また、エッジ強度は輝度から求めるだけに限らず、色差等の画素情報から求めてもよい。
（輝度勾配）
次に、輝度の変化の方向、すなわち、輝度勾配を求める方法について説明する。【００７１】
図5は、線分上の点における輝度勾配を説明する図である。図5(a)は、左上の領域は輝度I=I_1であり、右下の領域は輝度I=I_2であり、I_1-1(Δy/Δx)と求められる。線分上では輝度は一定であるので、δI=0より、線分の傾きは-Δx=Δyとなる。すなわち、輝度勾配は、線分に直交する方向である。ここで、Δx=0かつΔy>0のときはθ=90°、Δx=0かつΔy<0のときはθ=-90°とし、Δx=0かつΔy=0のときは画素を無効とする。【００７２】
離散的な2元関数で表される輝度I(P)から、輝度変化Δx、Δyを求める際に、単純に差分をとると画像に含まれるノイズ等の影響で誤差が増大してしまうので、これを回避する方法として、例えば、Sobelフィルタを用いる方法がある。これは、ある画素における輝度勾配を算出するのに、周辺の画素に重みをつけて差分をとることでなされる。図6は、Sobelフィルタで重み付けに用いられる係数行列である。x成分の算出には図6(a)の行列を用い、y成分の算出には図6(b)の行列を用いる。図6(a)および(b)を要素にもつ行列をそれぞれaおよびbとすると、位置(n,m)における輝度変化ΔxおよびΔyは次の(数5)および(数6)のように表される。【００７３】
【数５】
2009008174.tif 000003
【００７４】
【数６】
2009008174.tif 000004
なお、ここでは、係数行列は3 x3行列としたが、もっと大きな行列を用いるようにしてもよい。係数行列は一般的には、kを2以上の整数として、(2k-1)x(2k-1)の正方行列となる。【００７５】
領域選択部130は、以上のようにして領域に含まれるすべての画素について輝度勾配を算出し、領域における線分の方向が揃っているかどうかを判定する。これは、図7のような輝度勾配の値ごとに画素数の累計をとった輝度勾配ヒストグラムを作成することでなされる。図7は、輝度勾配θを横軸とし、一定の幅Δθの範囲に輝度勾配をもつ画素の数Pを縦軸にとったヒストグラムである。【００７６】
方向性判定部125は、上記のような輝度勾配ヒストグラムを作成し、例えば、輝度勾配ヒストグラムの分散が、予め定めた閾値より小さい場合に、テクスチャが一方向性をもつと判定する。この判定の基準は、分散に基づくものだけに限らず、例えば、輝度勾配ヒストグラムにおいて、一定以上の度数をもつ輝度勾配を与える画素数が、予め定めた閾値より大きい場合に、線分の方向が揃っていると判定してもよい。【００７７】
領域内でまったく輝度に変化がないような場合は、輝度勾配の算出においてすべての画素が無効とされてしまい、輝度勾配ヒストグラムを作成することができないが、方向性判定部125は、このような領域をテクスチャが一方向性をもたない領域と同等に扱う。
（輝度スペクトル）
一方、画像に含まれる線分の方向性を判定する方法は、上述のように、画素単位で輝度勾配を算出するほかに、画像の周波数特性を利用する方法がある。【００７８】
すなわち、画像の輝度I(x,y)は、離散的な2次元座標(x,y)に対してある値I(x,y)をとる離散関数であるが、これを2次元離散Fourier変換した輝度スペクトルから方向性を判定する。画像の幅をW、高さをHとすると、画像の輝度I(x,y)の輝度スペクトルFI(u,v)は(数7)のように表される。【００７９】
【数７】
2009008174.tif 000005
このようにして算出される輝度スペクトルからどのようにして線分の方向性を判定できるかを、図8の画像を例に説明する。図8は、(a)雑草、(b)壁、(c)道路をそれぞれ撮影した画像である。これらの画像に対して、上記のFourier変換を適用すると、それぞれ図8の(d)、(e)、(f)のような輝度スペクトルが得られる。ここで、輝度スペクトルは直流成分が中央になるように平行移動されている。【００８０】
図8(a)のように、画像の向きを決める線分が存在しない画像の場合は、輝度スペクトルには図8(d)のように強いピークが現れない。図8(d)では、輝度スペクトルが平坦であるかのように示してあるが、これは図面の都合であって、実際には緩やかな起伏がある。このような画像に対して、画像の傾き角を推定することは困難である。【００８１】
図8(b)のように、壁の模様から明確に水平方向が判定できる画像の場合は、輝度スペクトルは図8(e)において縦方向の線で示したように強いピークを示す。図8(e)では、図
面の都合上、ピークの強さを線の太さで表している。一般的に、元の画像中の線分と輝度スペクトル中のピークとは直交する関係にあるので、輝度スペクトルが縦方向に強いピークを示せば、元の画像は横方向の線分を含んでいる傾向が強いと推定できる。【００８２】
図8(c)のように、道路と建物と人とが撮影された画像の場合は、輝度スペクトルは図8(f)のように縦方向の強いピークの他に複数の方向にピークを示している。これは、元の画像に、建物の窓や壁などさまざまな方向を向く線分が存在していることによる。【００８３】
以上のように、輝度スペクトルのパターンから元の画像における線分の方向性を判定することができる。【００８４】
方向性判定部125は、これを定量的に行うために、各方向ごとの輝度スペクトルの強度P(θ)を算出する。すなわち、座標(u,v)を極座標(r,θ)で表示すると、ある方向θでの輝度スペクトル強度P(θ)は、強度FI(r,θ)の動径方向に関する2乗和として(数8)のように表される。【００８５】
【数８】
2009008174.tif 000006
この輝度スペクトル強度P(θ)は、方向θに関する強度分布という意味で、上述の輝度勾配ヒストグラムと同等のものである。従って、方向性判定部125は、輝度勾配ヒストグラムを用いる場合と同様に、輝度スペクトル強度P(θ)の分散等の情報から方向性の判定を行うことができる。
〈領域選択部130〉
領域選択部130は、画像分割部120によって分割された領域から、方向性判定部125が一方向性を有すると判定した領域のみを選択する。例えば、図4の例では、図4(c)のように、壁の水平線が明瞭に現れている領域が選択され、全面が壁面で埋まってテクスチャが現れていない領域や、植木が大部分を占めてテクスチャが一方向性を有しない領域は除外される。
（領域選択部130の動作）
図9は、方向性判定部125によるテクスチャの方向性判定に基づいた領域選択部130による領域選択の動作を示すフローチャートである。領域選択部130は、まず、画像分割部120で分割された領域の数をN、領域を示すインデックスをi=1と初期化する(ステップS1001)。次に、領域選択部130は領域iの輝度勾配ヒストグラムを作成するように方向性判定部125に指示し、方向性判定部125は領域選択部130からの指示を受けて領域iの輝度勾配ヒストグラムを作成する(ステップS1002)。方向性判定部125が作成した輝度勾配ヒストグラムの分散が、予め決められた閾値より小さければ(ステップS1003 Y)、領域選択部130は領域iの選択フラグを設定し(ステップS1004)、ステップS1005に進む。方向性判定部125が作成した輝度勾配ヒストグラムの分散が、予め決められた閾値より小さくなければ(ステップS1003 N)、ステップS1005に進む。領域を示すインデックスiが、分割された領域の数N以上ならば(ステップS1006 Y)、領域選択を終了する。領域を示すインデックスiが、分割された領域の数N以上でなければ(ステップS1006 Y)、iを1だけ増大させて(ステップS1007)、ステップS1002に戻る。
（輝度勾配ヒストグラムの作成）
図10は、上記ステップS1002における方向性判定部125による輝度勾配ヒストグラム作成処理を示すフローチャートである。【００８６】
方向性判定部125は、まず、領域に含まれる画素数をK、画素を示すインデックをi=1、輝度勾配ヒストグラムをP(θ)=0と初期化する(ステップS1101)。次に、画素iにおける輝度勾配θ_iを算出を算出する(ステップS1102)。【００８７】
続いて、算出した輝度勾配を輝度勾配ヒストグラムに登録する。まず、走査開始角をθ=θ_1とする(ステップS1103)。画素iの輝度勾配θ_iが、θからθ+Δθに入っていれば(ステップS1104 Y)、輝度勾配ヒストグラムのθにおける値P(θ)を1だけ増大し(ステップS1105)、ステップS1106に進む。画素iの輝度勾配θ_iが、θからθ+Δθに入っていなけば(ステップS1104 Y)、ステップS1106に進む。角度θが、走査終了角θ_2以上なら(ステップS1106 Y)、ステップS1108に進む。角度θが、走査終了角θ_2以上でないなら(ステップS1106 N)、θをΔθだけ増大させて(ステップS1107)、ステップS1104に戻る。以上の処理で、画素iの輝度勾配ヒストグラムへの登録が終了する。【００８８】
画素を示すインデックスiが、領域の画素数K以上になれば(ステップS1108 Y)、輝度勾配ヒストグラム作成処理を終了する。画素を示すインデックスiが、領域の画素数K以上でないなら(ステップS1108 N)、iを1だけ増大させ(ステップS1109)、ステップS1102に戻る。以上の処理で輝度勾配ヒストグラムが完成する。【００８９】
なお、上では、領域中の画素すべてについて走査し輝度勾配ヒストグラムを作成するとしたが、Sobelフィルタを用いる場合は周囲の画素情報が必要となるので、領域の端の画素は処理対象から除く等の配慮は必要である。【００９０】
また、輝度勾配ヒストグラムP(θ)は、一定の角度幅Δθの範囲を許して輝度勾配の累積をとったデータ構造を指しているものであり、実際にディスプレイ等にグラフを描画する必要なない。
〈傾き推定部140〉
傾き推定部140は、領域選択部130で選択された領域に対して画素情報に基づいて領域の傾き角の推定を行う。傾き推定部140は、まず、領域から線分を検出し、次に、線分の傾き角の最頻値を領域の傾き角として推定する。傾き角の推定は、領域選択部130で選択された領域全体から線分を検出して画像の傾き角を推定するようにしてもよいし、領域選択部130で選択された領域ごとに個別に領域の傾き角を推定しておき、それらをもとに更に画像の傾き角を推定するようにしてもよい。
（線分検出）
傾き推定部140は、画像に含まれる線分を検出するために、Hough変換法を用いる。これは、画像中で線分の存在する可能性の高い箇所に特徴点を設定し、各特徴点を通りあらゆる方向に一定の確率で直線が存在すると仮定すると、複数の特徴点から伸びる直線の重ね合わせにより、実際に存在する線分の存在確率が高くなることを利用した検出方法である。例えば、図11(a)のように3つの特徴点があるとき、図11(b)のように、各特徴点からあらゆる方向に直線が伸びていると仮定すると、図11(c)のように、3点を結ぶ直線上では重ね合わせによって直線の存在確率が高くなるので、実際に線分が存在するとみなす。特徴点は、上述のSobelフィルタ等のエッジ検出フィルタを画像に適用することで抽出する。【００９１】
今、i番目の特徴点の座標を(x_i,y_i)とすると、この点を通る任意の直線は(数9)のように書ける。【００９２】
【数９】
2009008174.tif 000007
ここで、パラメータθおよびρは、図12(a)に示すように、それぞれ、原点から直線への垂線とx軸とのなす角、および、直線と原点との距離という幾何学的意味をもっている。特徴点(x_i,y_i)を通るという制約から、パラメータθとρは独立ではなく、例えば、θ=θ_1のときはρ=ρ_1となりline1が決定し、θ=θ_2のときはρ=ρ_2となりline2が決定する。これを図示すると図12(b)のようになる。図12(b)は、横軸にθ、縦軸にρをとり、3つの特徴点(x_i,y_i)(i=1,2,3)について、ρとθの関係をプロットした図である。図12において、異なる2つの曲線が交わる点は異なる2つの特徴点を通る同じ直線、すなわち、2つの特徴点を結ぶ直線を表している。同様に、異なる3つの曲線が1点で交わる点は、異なる3つの特徴点が同一直線上にあることを表している。【００９３】
Hough変換法では、すべての特徴点に関して、特徴点を通る直線を与えるパラメータの組(θ,ρ)の累積をとり、一定の閾値P_0を越える度数の直線を実際に存在する直線として検出する。
（傾き角推定）
傾き推定部140は、検出された線分から線分の傾き角についての累積をとり、最も度数の高い傾き角を領域の傾き角として推定する。【００９４】
上述の線分検出におけるパラメータθは原点から直線への垂線とx軸とのなす角であるので、直線と画像の横方向とのなす角はφ=θ-90°と書ける。傾き推定部140は、領域内の検出された線分すべてに対して、傾き角φに関する角度ヒストグラムを作成し、その最頻値を領域の傾き角とする。【００９５】
図14は、傾き推定部140の動作を示すフローチャートである。【００９６】
傾き推定部140は、領域選択部130で選択された領域全体から線分を検出し、一括して画像の傾き角を推定する場合は(ステップS2001 Y)、ステップS2014に進む。そうでない場合は(ステップS2001 N)、ステップS2002に進み、選択領域の数をN、領域を示すインデックスをi=1、ヒストグラムをQ(φ)=0と初期化する。【００９７】
以下、領域の傾き角をヒストグラムQ(φ)に登録する処理を行う。まず、領域iにおいて角度ヒストグラムを作成し(ステップS2004)、その最頻値を領域iの傾き角φ_iとする(ステップS2005)。走査開始角度をφ=φ_1に設定し(ステップS2006)、領域iの傾き角φ_iがφからφ+Δφの間に入っていれば(ステップS2007 Y)、Q(φ)を1だけ増大させ(ステップS2008)、ステップS2009に進む。走査開始角度をφ=φ_1に設定し(ステップS2006)、領域iの傾き角φ_iがφからφ+Δφの間に入っていなければ、ステップS2009に進む。角度φが、走査終了角度φ_2に対してφ≧φ_2になれば(ステップS2009 Y)、ステップS2011に抜け、φ<φ_2の間はステップS2010に進み、φをΔφだけ増大させて(ステップS2010)、ステップS2007に戻る。【００９８】
以上の処理を全ての領域について行う。領域のインデックスiが、選択された領域の数Nに対して、i≧Nになれば(ステップS2011 Y)、ステップS2013に進む。i  最後に、作成したヒストグラムQ(φ)から最頻値を選び出し、それを画像の傾き角の推定値とする(ステップS2013)。【００９９】
ステップS2001で、一括推定をすると判定された場合は、まず、領域選択部130で選択した領域を結合して1つの領域とする(ステップS2014)。結合された領域に対して線分を検出し(ステップS2015)、結合された領域に対して角度ヒストグラムを作成する(ステップS2016)。この角度ヒストグラムの最頻値を画像の傾き角の推定値とする(ステップS2017)。【０１００】
以上が、傾き推定部140による傾き推定処理の動作である。【０１０１】
次に、ステップS2003およびステップS2015における線分検出処理について説明する。【０１０２】
図15は、Hough変換法による線分検出を示すフローチャートである。【０１０３】
傾き推定部140は、まず、領域から特徴点を抽出し(ステップS2101)、特徴点の個数をN、特徴点を示すインデックスをi=1、ヒストグラムをP(θ,ρ)=0と初期化する(ステップS2102)。【０１０４】
以下、特徴点iを通る直線が、θ-ρ空間におけるθ_1からθ_2、かつ、ρ_1からρ_2の範囲内をΔθΔρのブロックで分割したときのどのブロックに属するかを調べていく。まず、特徴点iの座標(x_i,y_i)を取得する(ステップS2103)。パラメータθをθ_1に初期化し(ステップS2104)、θに対応するρ_iを算出する(ステップS2105)。パラメータρをρ_1に初期化し(ステップS2106)、ρ_iがρからρ+Δρの間に入っていれば(ステップS2107 Y)、P(θ,ρ)を1だけ増大させて(ステップS2108)、ステップS2109に進む。ρ_iがρからρ+Δρの間に入っていなければ(ステップS2107N)、ステップS2109に進む。ρがρ_2に達するまで(ステップS2109 N)、Δρずつ増やしながら(ステップS2110)、ρ方向に走査する。ρがρ_2達すれば(ステップS2109 Y)、θがθ_2に達するまで(ステップS2111 N)、Δθずつ増やしながら(ステップS2112)、θ方向に走査する。θがθ_2に達すれば(ステップS2111 Y)、特徴点iのヒストグラムR(θ,ρ)への登録は終了する。【０１０５】
以上の処理を、インデックスiが特徴点の数Nに達するまで(ステップS2113 N)、iを1ずつ増やしながら行う。インデックスiが特徴点の数Nに達したら(ステップS2113 Y)、傾き推定部140は、ヒストグラムP(θ,ρ)において、閾値P_0より大きい度数をもつ(θ,ρ)で表される線分が実際に存在する線分として検出する。【０１０６】
図16は、角度ヒストグラム作成のフローチャートである。傾き推定部140は、まず、領域内で検出された線分の数をNとし、線分を示すインデックスをi=1、角度ヒストグラムをR(φ)=0と初期化する(ステップS2201)。次に、線分iについて線分検出時に算出したパラメータ(θ_i,ρ_i)をメモリから読み込み(ステップS2202)、線分iの傾き角φ_iを算出する(ステップS2203)。【０１０７】
続いて、傾き角φ_iを角度ヒストグラムR(φ)に登録する。まず、走査開始角度をφ=φ_1とする(ステップS2204)。線分iの傾き角φ_iがφからφ+Δφの間にあれば(ステップS2205)、R(φ)の値を1だけ増やして(ステップS2205 Y)、ステップS2206に進む。線分iの傾き角φ_iがφからφ+Δφの間になければ(ステップS2205 N)、ステップS2206に進む。角度φが、走査終了角度φ_2以上ならば(ステップS2206 Y)、傾き角φ_iの登録を終了し、ステップS2209に進む。角度φが、走査終了角度φ_2より小さければ(ステップS2206 N)、角度φをΔφだけ増大させて(ステップS2208)、ステップS2205に戻る。【０１０８】
以上の処理をすべての線分について行う。すなわち、インデックスiが、線分の数N以上ならば(ステップS2209 Y)、角度ヒストグラムの作成を終了する。インデックスiが、線分の数Nより大きくなければ(ステップS2209 N)、インデックスiを1だけ増大させ(ステップS2210)、ステップS2202に戻る。【０１０９】
以上により、図13のような角度ヒストグラムが完成する。傾き推定部140は、角度ヒストグラムの最頻値を領域の傾き角と推定する。例えば、図13の場合、領域の傾き角はφ_0となる。【０１１０】
傾き推定部140が、領域選択部130で選択された領域全体から線分を検出して画像の傾き角を推定する場合は、上の領域の傾き角が、すなわち、画像の傾き角である。傾き推定部140が、領域ごとに個別に傾き角を推定し、その上で、画像の傾き角を推定する方法をとる場合は、上記のようにして、各領域の傾き角を推定したあと、更に領域の傾き角に関して累積をとり、最頻値を画像の傾き角として推定する。【０１１１】
上記では、角度ヒストグラムの作成において、どの角度も等価に取り扱うとして説明したが、画像解析とは異なる手段から予測される傾き角に応じて、重みを付けて角度ヒストグラムを作成するようにしてもよい。例えば、複数の画像が連続して撮影される場合は、傾き角も連続的に変化していると期待されるので、過去の傾き角から、当該画像の傾き角を予測し、その値に応じた重みを付けて角度ヒストグラムを作成することにより、推定の精度を高めることができる。撮像装置が激しく揺られていない状況を前提にすると、過去の傾き角のうち直前の傾き角が、当該画像の傾き角に最も近いと考えられる。直前の傾き角をθ_prevとしたとき、傾き角θに応じて(数10)のような重みw(θ)を課すようにしてもよい。【０１１２】
【数１０】
2009008174.tif 000008
また、角度ヒストグラムに複数の最頻値ある場合は、線分の特性に応じた重みを課すことにより、確からしい傾きが推定されるようにしてもよい。例えば、短い線分は壁に描かれた細かい模様等の可能性もあるのに対して、長い線分の方が壁の縁等の構造の一部である可能性が高く、長い線分が与える傾き角の重みを短い線分が与える傾き角の重みより重くすることで、より正確に水平方向あるいは鉛直方向を検出し、正しく画像の傾き角を推定できる。線分の長さは、Hough変換法によって検出された線分が通る特徴点のうち、最も端の2点間の距離として求めることができる。【０１１３】
また、水平方向よりも鉛直方向に向いた線分から決まる傾き角を優先するように重み付けを行ってもよい。これは、撮影された画像において、遠近関係により線分が水平方向あるいは鉛直方向から傾いてしまう可能性は、水平方向の線分の方が鉛直方向の線分より高いからである。例えば、図8(c)のような画像で左右に写っている建物の水平方向を示す線分は、実際にはすべて水平面に平行であるが、画像中では、遠近関係により放射状になってしまい、わずかづつ傾きが異なっている。それに対して、鉛直方向を示す線分は、画像中でもすべて鉛直方向に平行である。このような事情から、線分の方向に依存した重み付けを行うことは有効である。
（輝度スペクトルを利用した傾き角推定）
上では、傾き推定部140が、領域から線分を検出し、その線分の傾き角から領域の傾き角を推定する方法を述べたが、領域の輝度スペクトルを利用して傾き角を推定してもよい。【０１１４】
例えば、図17(a)の輝度スペクトルにおいて、(b)、(c)、(d)で示す方向の断面は、それぞれ図17(b)、(c)、(d)のようになる。(b)の方向は、図17(a)の中心で縦方向に伸びたピークの上を通るので、強い信号がフラットに続いて、ピークは見られない。(c)の方向は、図17(a)の縦方向の縞を横切る方向なので多数のピークが現れる。(d)の方向は、(b)と(c)の中間の方向であるので、(c)のピーク間隔が広がった形状となる。【０１１５】
以上から、輝度スペクトル強度の強い方向はピーク数の少ない方向であると考えられ、ピーク数の逆数で角度ヒストグラムを作るようにしてもよい。
（輝度勾配の方向分布に基づく傾き推定）
また、傾き推定部140は、輝度勾配の方向分布に基づいて傾き角を推定してもよい。具体的には、領域選択部130で選択された領域に属する画素について、輝度勾配の方向分布を算出し、その最頻値に対応する角度を利用して、傾き角を推定することができる。
〈センサ160〉
センサ160は、加速度センサあるいは角速度センサなどの重力の方向を検知するセンサであり、傾き推定部140による画像の傾き角の推定がうまくいかない場合に、センサ160により直接、ウェアラブル端末の傾き角を測定する。傾き推定部140による画像の傾き角の推定がうまくいかない場合とは、例えば、領域選択部130によって選択された領域が少ない場合や、画像が暗い場合がある。【０１１６】
傾き推定部140は、選択領域からのみ線分を検出して画像の傾き角を推定するので、画像中に線分の揃った領域が少なくて選択領域が少なくなってしまった場合は、正確に画像の傾き角を推定できない。また、傾き推定部140は輝度をもとに画像の傾き角を推定するので、画像全体が暗い場合も正確に画像の傾き角を推定できない。このような場合は、傾き推定部140により推定された画像の傾き角よりも、センサ160で検出した傾き角の方が画像の傾きを正確に反映していると考えられる。【０１１７】
センサ160は、例えば、ピエゾ抵抗型加速度センサのように印加される加速度を電気信号に変換するセンサを用い、図18に示すように、ウェアラブル端末のカメラの撮影方向に対して垂直な2方向の加速度を同時に検出できるように2軸加速度センサを用いる。【０１１８】
図18に示すように、ウェアラブル端末が傾いていないときの鉛直方向および水平方向にy軸およびx軸をとり、y方向およびx方向の加速度を検出できるようにセンサ160をウェアラブル端末に固定する。重力加速度をgとすると、x方向およびy方向の成分はそれぞれg_x=g sinθ、g_y=g cosθと書けるので、傾き角はθ=tan-1(g_x=g_y)となる。【０１１９】
なお、センサ160は、複数のセンサを設置してそれらの平均をとるなどして測定精度を上げてもよい。【０１２０】
センサ160は、傾き角そのものを出力しなくても、ある基準値からの差分値を出力するようにしてもよいし、直前の測定値からの差分値を出力するようにしてもよい。【０１２１】
上では、加速度センサを用いて重力を検出することにより撮影時の傾き角を検出する例を示したが、自機が回転する角速度を角速度センサを用いて検出し、時間的に積分することで傾き角を算出するようにしてもよい。【０１２２】
また、本発明の一例である画像処理装置100がウェアラブル端末に内蔵されない場合でも、撮影時にセンサ160で測定した傾き角をメモリに記録しておき、あとでそれを読み込んで画像補正に利用するようにしてもよい。
〈画像補正部150〉
画像補正部150は、傾き推定部140で推定された傾き角、もしくは、センサ160で検出された傾き角に応じて画像を回転する補正を行う。画像補正部150は、傾き推定部140が画像の傾き角の推定を行なった場合は、推定された傾き角を用いて画像の補正を行うが、傾き推定部140が画像の傾き角の推定を行うのに十分な情報が画像に含まれていない場合は、センサ160が検出した傾き角を用いて画像の補正を行う。ここで、画像の補正とは、図2で示したように、推定あるいは検出された画像の傾き角に対して、同じ角だけ逆の方向に画像を回転させることで行う。【０１２３】
図19は、本発明の一例である画像処理装置100の動作を示すフローチャートである。【０１２４】
画像処理装置100は、まず、画像入力部110において画像を読み込み(ステップS3001)、入力された画像の全画素数をN、輝度が閾値以上の画素数をMを初期化する。【０１２５】
比M=Nが閾値αより大きくなければ(ステップS3003 N)、ステップS3009に進む。比M=Nが閾値αより大きければ(ステップS3003 Y)、ステップS3004に進み、画像分割部120において画像を分割する(ステップS3004)。このとき画像の分割数をnとする。次に、方向性判定部125において判定される領域のテクスチャの方向性に基づいて、領域選択部130が線分の方向の揃った領域を選択する(ステップS3005)。このとき領域の選択数をmとする。【０１２６】
比m=nが閾値βより大きくなければ(ステップS3006 N)、ステップS3009に進む。比m=nが閾値βより大きければ(ステップS3006 Y)、ステップS3007に進み、傾き推定部140において画像の傾き角の推定を行う(ステップS3007)。【０１２７】
画像補正部150は、傾き推定部140で推定された傾き角だけ画像を回転させることで画像の補正を行う(ステップS3008)。ただし、ステップS3003もしくはステップS3006において、画像から傾き角を推定するのに適さないと判断された場合は、センサで傾き角を検出し(ステップS3009)、その値を用いて画像の補正を行う。【０１２８】
以上が、本発明の一例である画像処理装置100の動作である。【０１２９】
なお、センサ160は必須ではなく、センサ160を備えていない場合は、傾き角を推定するに足る情報を有していない画像に対しては何も処理を行わないようにしてもよい。そうすることで、間違って推定された傾き角に基づいた補正を行い、画質を悪くしてしまうことを防げる。【０１３０】
また、センサ160を備えていても、センサ160による傾き角の推定が困難である場合には、センサ160による傾き角の推定を行わないで、傾き角を推定するに足る情報を有していない画像に対しては何も処理を行わないようにしてもよい。ここで、センサ160による傾き角の推定が困難である場合とは、所定時間内のセンサ160の出力値の変化量が、所定の閾値以上である場合をいう。このようにすることで、間違って推定された傾き角に基づいた補正を行い、画質を悪くしてしまうことを防げる。【０１３１】
あるいは、ウェアラブル端末のように画像が連続して撮影されることがわかっている場合は、傾き角を推定するに足る情報を有していない画像に対して、過去に撮影された画像において推定された傾き角から、当該画像の傾き角を推定するようにしてもよい。すなわち、推定された画像の傾き角のうち最近のいくつかの履歴を記憶しておき、その推移を外挿することにより、当該画像の傾き角を推定するようにしてもよい。また、推定された画像の傾き角のうち直前の1つを記憶しておき、その傾き角をそのまま当該画像の傾き角とするようにしてもよい。これは、撮像装置の揺れが小さければ、連続して撮影された画像の傾き角は、連続的に変化するであろうという仮定に基づいた処理である。
【産業上の利用可能性】
【０１３２】
本発明の一例である画像処理装置を、ウェアラブル端末等に組み込むことで、撮影した画像の傾きを補正し、正しい向きの画像を記録や表示することができる。画像から傾き推定に適した領域だけを選択して傾き角の推定を行うので、正立に構えて撮影された画像でなくても、高い確率で正しい傾き角を推定することができる。
【図１】
2009008174.tif 000013
【図２】
2009008174.tif 000014
【図３】
2009008174.tif 000015
【図４】
2009008174.tif 000016
【図５】
2009008174.tif 000017
【図６】
2009008174.tif 000018
【図７】
2009008174.tif 000019
【図８】
2009008174.tif 000020
【図９】
2009008174.tif 000021
【図１０】
2009008174.tif 000022
【図１１】
2009008174.tif 000023
【図１２】
2009008174.tif 000024
【図１３】
2009008174.tif 000025
【図１４】
2009008174.tif 000026
【図１５】
2009008174.tif 000027
【図１６】
2009008174.tif 000028
【図１７】
2009008174.tif 000029
【図１８】
2009008174.tif 000030
【図１９】
2009008174.tif 000031
【手続補正書】
【提出日】平成21年3月9日(2009.3.9)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
撮像画像を構成する画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理装置であって、
画素ブロックは、縦方向および横方向の画素数が予め定められた画素の集まりであり、
方向分布を算出する演算式に、画素ブロック内の画素の位置情報と輝度情報とを代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定手段と、
前記判定手段により、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択手段と、
選択された画素ブロックから、前記演算の結果を用いて、基準軸に対する撮像画像の傾き角を求め、補正する補正手段とを備え、
前記方向分布は、画素ブロック内に写っている物のエッジ部分の画素が空間的に連続している方向の分布を示すものである
ことを特徴とする画像処理装置。
【請求項２】
複数の前記画素ブロックから構成される撮像画像の補正を行う画像処理装置であって、
各画素ブロックごとに、当該画素ブロック内の画像の傾きを推定するのに適しているかどうかを判定する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記方向分布は、輝度勾配の方向分布であり、
前記輝度勾配θは、
画像における任意の位置Ｐ（ｘ，ｙ）における画素の輝度をＩ（Ｐ）とした場合、
位置Ｐ（ｘ，ｙ）におけるｘ方向の輝度変化Δｘ＝∂Ｉ（Ｐ）／∂ｘと、位置Ｐ（ｘ，ｙ）におけるｙ方向の輝度変化Δｙ＝∂Ｉ（Ｐ）／∂ｙとを用いて、θ＝ｔａｎ−１（Δｙ／Δｘ）と表され、
前記輝度勾配の方向分布Ｐ（θ）は、輝度勾配の関数であり、輝度勾配がΔθの幅を許してθである画素の数を累積したものである
ことを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記判定手段は、前記輝度勾配を算出する際、周辺の画素に重みをつけて差分をとるフィルタ処理を行い、
インデックス（ｎ，ｍ）で示される位置における輝度変化ΔｘおよびΔｙは、
前記重み付けに用いられる係数行列の成分をａ＿ｉ，ｊおよびｂ＿ｉ，ｊとすると、
次の（数１）および（数２）のように表される
【数１】
2009008174.tif 000032
【数２】
2009008174.tif 000033
ことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記判定手段により画素ブロック内画像の傾きを推定するのに適していると判定される画素ブロックは、
前記輝度勾配の方向分布の分散が所定の値より小さい画素ブロックである
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記判定手段により画素ブロック内画像の傾きを推定するのに適していると判定される画素ブロックは、
前記輝度勾配の方向分布において、最頻値を中心とする所定の角度範囲内にある割合が所定の値より大きい画素ブロックである
ことを特徴とする請求項４に記載の画像処理装置。
【請求項７】
前記画像処理装置は、複数の撮像画像の傾き角を連続して検出し、
前記所定の角度範囲は、前記補正手段が過去に採用した傾き角に基づいて決定される
ことを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記画像処理装置は、複数の撮像画像の傾き角を連続して検出し、
前記所定の角度範囲は、前記補正手段が直前に採用した傾き角に基づいて決定される
ことを特徴とする請求項６に記載の画像処理装置。
【請求項９】
前記方向分布は、輝度スペクトル強度の方向分布であり、
前記輝度スペクトルは、
離散的な２次元座標（ｘ，ｙ）に対してある値Ｉをとる離散関数で表される画像の輝度Ｉ（ｘ，ｙ）に対して、２次元離散Ｆｏｕｒｉｅｒ変換を施したものであり、
前記画像の輝度Ｉ（ｘ，ｙ）に対する輝度スペクトルＦＩ（ｕ，ｖ）は、
前記画像の幅をＷ、高さをＨとすると、（数３）のように表され、
【数３】
2009008174.tif 000034
前記輝度スペクトル強度の方向分布Ｐ（θ）は、
前記輝度スペクトルＦＩ（ｕ，ｖ）を、極座標（ｒ，θ）で表示した際における輝度スペクトルＦＩ（ｒ，θ）を、動径方向に関して２乗和をとることで（数４）と表される
【数４】
2009008174.tif 000035
ことを特徴とする請求項１に記載の画像処理装置。
【請求項１０】
前記判定手段により画素ブロック内画像の傾きを推定するのに適していると判定される画素ブロックは、
前記輝度スペクトル強度の方向分布の分散が所定の値より小さい画素ブロックである
ことを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
前記補正手段は、
前記選択手段によって選択された画素ブロックから輝度勾配の方向分布を算出し、
前記輝度勾配の方向分布における最頻値に基づいて撮像画像の傾き角を求める
ことを特徴とする請求項１に記載の画像処理装置。
【請求項１２】
前記補正手段は、
前記選択手段によって選択された画素ブロックから線分を検出し、
検出された線分の傾き角に基づいて撮像画像の傾き角を求める
ことを特徴とする請求項１に記載の画像処理装置。
【請求項１３】
前記線分の検出は、前記選択手段によって選択された画素ブロック全体を対象に行われ、
前記撮像画像の傾き角は、検出された線分の傾き角の最頻値である
ことを特徴とする請求項１２に記載の画像処理装置。
【請求項１４】
前記線分の検出は、前記選択手段によって選択されたそれぞれの画素ブロックを対象に行われ、
前記画素ブロック内画像の傾き角は、検出された線分の傾き角の最頻値であり、
前記撮像画像の傾き角は、前記画素ブロック内画像の傾き角の最頻値である
ことを特徴とする請求項１２に記載の画像処理装置。
【請求項１５】
前記画像の傾き角は、前記画素ブロック内画像の傾き角の最頻値が複数ある場合、
各画素ブロックにおいて画素ブロックの傾き角の方向に傾いた線分の長さが長いもの優先する
ことを特徴とする請求項１４に記載の画像処理装置。
【請求項１６】
前記画像処理装置は、複数の撮像画像の傾き角を連続して補正し、
前記画像の傾き角は、前記画素ブロック内画像の傾き角の最頻値が複数ある場合、
前記画像補正手段が過去に採用した傾き角から予測される傾き角に近いものを優先する
ことを特徴とする請求項１４に記載の画像処理装置。
【請求項１７】
前記画像処理装置は、複数の撮像画像の傾き角を連続して補正し、
前記画像の傾き角は、前記画素ブロック内画像の傾き角の最頻値が複数ある場合、
前記画像補正手段が直前に採用した傾き角から予測される傾き角に近いものを優先する
ことを特徴とする請求項１４に記載の画像処理装置。
【請求項１８】
前記選択手段は、
前記画素ブロックのうち、輝度変化が所定の輝度変化より大きい画素の数の画素ブロックの全画素数に対する割合が所定の閾値より大きい画素ブロックを選択対象から除外する
ことを特徴とする請求項１２の画像処理装置。
【請求項１９】
前記画像処理装置は、複数の撮像画像の傾き角を連続して補正し、
前記補正手段は、
前記選択手段によって選択された画素ブロック全体が画像に占める割合が所定の閾値より小さい場合、
前記補正手段が過去に採用した傾き角に基づいて画像の傾き角を推定する
ことを特徴とする請求項１８に記載の画像処理装置。
【請求項２０】
前記画像処理装置は、複数の撮像画像の傾きを連続して補正し、
前記補正手段は、
前記選択手段によって選択された画素ブロック全体が画像に占める割合が所定の閾値より小さい場合、
前記画像補正手段が直前に採用した傾き角に基づいて画像の傾き角を推定する
ことを特徴とする請求項１８に記載の画像処理装置。
【請求項２１】
前記画像処理装置は、
撮像時における水平面からの傾きを検知するセンサを備えた撮像装置に内蔵され、
前記画像補正手段は、
前記選択手段によって選択された画素ブロック全体が画像に占める割合が所定の閾値より小さい場合、
前記センサが出力する傾き角の変化量の所定時間内の合計が所定閾値以下ならば、前記センサが出力する傾き角を用いて撮像画像を補正する
ことを特徴とする請求項１８に記載の画像処理装置。
【請求項２２】
前記補正手段は、
前記選択手段によって選択された画素ブロック全体が画像に占める割合が所定の閾値より小さい場合、補正を行わない
ことを特徴とする請求項１８に記載の画像処理装置。
【請求項２３】
前記画像処理装置は、複数の撮像画像の傾き角を連続して補正し、
前記補正手段は、
前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、
前記補正手段が過去に採用した傾き角に基づいて撮像画像の傾き角を推定する
ことを特徴とする請求項１８に記載の画像処理装置。
【請求項２４】
前記画像処理装置は、複数の撮像画像の傾き角を連続して補正し、
前記補正手段は、
前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、
前記補正手段が直前に採用した傾き角に基づいて撮像画像の傾き角を推定する
ことを特徴とする請求項１８に記載の画像処理装置。
【請求項２５】
前記画像処理装置は、
撮像時における水平面からの傾きを検知するセンサを備えた撮像装置に内蔵され、
前記補正手段は、
前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、
前記センサが出力する傾き角の変化量の所定時間内の合計が所定閾値以下ならば、前記センサが出力する傾き角を用いて撮像画像を補正する
ことを特徴とする請求項１８に記載の画像処理装置。
【請求項２６】
前記補正手段は、
前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、補正を行わない
ことを特徴とする請求項１８に記載の画像処理装置。
【請求項２７】
前記センサは、加速度センサである
ことを特徴とする請求項２１または２５に記載の画像処理装置。
【請求項２８】
前記センサは、角速度センサである
ことを特徴とする請求項２１または２５に記載の画像処理装置。
【請求項２９】
前記センサが出力する傾き角の変化量の所定時間内の合計が所定閾値以上ならば、補正を行わない
ことを特徴とする請求項２１または２５に記載の画像処理装置。
【請求項３０】
撮像画像を構成する画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理方法であって、
画素ブロックは、縦方向および横方向の画素数が予め定められた画素の集まりであり、
方向分布を算出する演算式に、画素ブロック内の画素の位置情報と輝度情報とを代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定ステップと、
前記判定ステップにより、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択ステップと、
選択された画素ブロックから、前記演算の結果を用いて、基準軸に対する撮像画像の傾き角を求め、補正する補正ステップとを含み、
前記方向分布は、画素ブロック内に写っている物のエッジ部分の画素が空間的に連続している方向の分布を示すものである
ことを特徴とする画像処理方法。
【請求項３１】
複数の前記画素ブロックから構成される撮像画像の補正を行う画像処理方法であって、
各画素ブロックごとに、当該画素ブロック内の画像の傾きを推定するのに適しているかどうかを判定する
ことを特徴とする請求項３０に記載の画像処理方法。
【請求項３２】
撮像画像を構成する画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理処理をコンピュータに実行させる画像処理プログラムであって、
画素ブロックは、縦方向および横方向の画素数が予め定められた画素の集まりであり、
方向分布を算出する演算式に、画素ブロック内の画素の位置情報と輝度情報とを代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定ステップと、
前記判定ステップにより、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択ステップと、
選択された画素ブロックから、前記演算の結果を用いて、基準軸に対する撮像画像の傾き角を求め、補正する補正ステップとをコンピュータに実行させ、
前記方向分布は、画素ブロック内に写っている物のエッジ部分の画素が空間的に連続している方向の分布を示すものである
ことを特徴とする画像処理プログラム。
【請求項３３】
複数の前記画素ブロックから構成される撮像画像の補正を行う画像処理処理をコンピュータに実行させる画像処理プログラムであって、
各画素ブロックごとに、当該画素ブロック内の画像の傾きを推定するのに適しているかどうかを判定する
ことを特徴とする請求項３２に記載の画像処理プログラム。
【請求項３４】
撮像画像を構成する画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理をコンピュータに実行させる画像処理プログラムを記録した記録媒体であって、
前記画像処理プログラムは、
画素ブロックは、縦方向および横方向の画素数が予め定められた画素の集まりであり、
方向分布を算出する演算式に、画素ブロック内の画素の位置情報と輝度情報とを代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定ステップと、
前記判定ステップにより、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択ステップと、
選択された画素ブロックから、前記演算の結果を用いて、基準軸に対する撮像画像の傾き角を求め、補正する補正ステップとをコンピュータに実行させ、
前記方向分布は、画素ブロック内に写っている物のエッジ部分の画素が空間的に連続している方向の分布を示すものである
ことを特徴とする画像処理プログラムを記録した記録媒体。
【請求項３５】
複数の前記画素ブロックから構成される撮像画像の補正を行う画像処理をコンピュータに実行させる画像処理プログラムを記録した記録媒体であって、
前記画像処理プログラムは、
各画素ブロックごとに、当該画素ブロック内の画像の傾きを推定するのに適しているかどうかを判定する
ことを特徴とする請求項３４に記載の画像処理プログラムを記録した記録媒体。
【請求項３６】
撮像画像を構成する画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理プロセッサであって、
画素ブロックは、縦方向および横方向の画素数が予め定められた画素の集まりであり、
方向分布を算出する演算式に、画素ブロック内の画素の位置情報と輝度情報とを代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定手段と、
前記判定ステップにより、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択手段と、
選択された画素ブロックから、前記演算の結果を用いて、基準軸に対する撮像画像の傾き角を求め、補正する補正手段とを備え、
前記方向分布は、画素ブロック内に写っている物のエッジ部分の画素が空間的に連続している方向の分布を示すものである
ことを特徴とする画像処理プロセッサ。
【請求項３７】
複数の前記画素ブロックから構成される撮像画像の補正を行う画像処理プロセッサであって、
各画素ブロックごとに、当該画素ブロック内の画像の傾きを推定するのに適しているかどうかを判定する
ことを特徴とする請求項３６に記載の画像処理プロセッサ。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００２
【補正方法】変更
【補正の内容】
【０００２】
発明の開示
発明が解決しようとする課題
［０００５］
しかしながら、ウェアラブル端末で撮影した撮像画像に対して、特許文献２に開示されている画像補正を適用した場合、必ずしも期待する補正効果が得られない。ウェアラブル端末では、利用者が常時装着し常時撮影が行われるので、撮像画像は上部と下部にだけ分割して解析できるような単純な構図とは限らず、特許文献２の方法では不十分である。さらに、特許文献２の方法では、画像の傾きを検出するのに十分な特徴が得られない場合が考慮されておらず、そのような場合でも推定された傾き角を用いて機械的に画像補正がなされるので、画像の傾きがかえって悪化してしまう場合もある。
［０００６］
上記の問題は、画像中からいかにして傾きの検出に適した領域を選択するかという問題に帰着される。すなわち、画像の傾きを画像中に存在する線分の傾きから推定する場合において、線分の向きが揃っている領域と、線分の向きがバラバラである領域とをいかにして判別するかということが問題となる。特許文献２の方法は、これを経験に基づいて単純に上下の領域に分割しているだけであるため、適用範囲が限定されてしまう。
［０００７］
本発明は、任意の撮像画像に対して、特にウェアラブル端末で撮影された画像のように正立で撮影されるとは限らない撮像画像に対して、画像を解析することにより傾き角を推定し、画像の傾きを補正する画像処理装置を提供することである。
［０００８］
ここで画像における領域とは、画像を構成する画素のうちの一部分で構成される画素ブロックである。
課題を解決するための手段
［０００９］
上記課題を解決するために、本発明に係る画像処理装置は撮像画像を構成する画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理装置であって、画素ブロックは、縦方向および横方向の画素数が予め定められた画素の集まりであり、方向分布を算出する演算式に、画素ブロック内の画素の位置情報と輝度情報とを代入して演算を行って、当該画素ブロック内画像の
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００３
【補正方法】変更
【補正の内容】
【０００３】
傾き角を推定するのに適しているかどうかを判定する判定手段と、前記判定手段により、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択手段と、選択された画素ブロックから、前記演算の結果を用いて、基準軸に対する撮像画像の傾き角を求め、補正する補正手段とを備え、前記方向分布は、画素ブロック内に写っている物のエッジ部分の画素が空間的に連続している方向の分布を示すものであることを特徴とする画像処理装置である。
発明の効果
［００１０］
上記の構成の画像処理装置によると、入力された画像を領域に分割し、分割された領域においてテクスチャ（輝度変化）がどのような方向性を有するのかを判定し、その判定に基づいてテクスチャが一方向性を有する領域のみを選択し、選択された領域を対象として画像の傾き角を推定する。
［００１１］
ここで、テクスチャとは、画像中のエッジ強度の大きい画素の集合として形成される模様であり、テクスチャが一方向性を有するとは、近接するエッジ強度の大きい画素を結ぶことによって形成される線分のうち、大部分がある特定の方向の周辺に向いていることをいう。テクスチャは、画像に含まれる画素の位置情報および輝度情報に演算を施すことで得られる。テクスチャが一方向性を有している場合は、領域内に建物等の構造物の縁が含まれていると考えられ、その方向が水平方向もしくは鉛直方向である可能性が高いので、それらの領域において、輝度のような画素情報を解析することによって、画像の傾き角を推定する。
［００１２］
従って、線分の方向が揃った領域が画像の上部になくても、分割された領域のうち、どれかに線分の方向が揃った領域が存在していれば、それらの領域を対象として傾き角の推定を行うことができる。撮像画像のうち、上部に限らずどこかに存在する線分の方向が揃った領域だけを選択し、線分の方向がバラバラの領域は予め除外されるので、傾き角の推定に適した領域と適さない領域とが混在した画像であっても、正しく傾き角を推定し、画像の傾きを補正することができる。
［００１３］
ここで、前記判定手段は、輝度勾配の方向分布を算出するとしてもよい。
［００１４］
画像中の線分は輝度の変化として認識することができ、線分の方向は輝度
【手続補正書】
【提出日】平成21年12月24日(2009.12.24)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ウェアラブル端末で撮影した画像の補正技術に関する。
【背景技術】
【０００２】
近年、日常生活をライフログとして記録し続けることができるウェアラブル端末が登場しつつある。ウェアラブル端末とは、利用者が常時装着して使用する端末装置であり、カメラやマイクを備え、利用者が操作しなくても、常に記録を行うというものである。
特許文献1には、カメラやマイクから取得した情報を、イベントごとに重要度を定義して記録することで、利用者の記憶と想起を補助するウェアラブル端末が開示されている。しかし、ウェアラブル端末は、常時装着され常時撮影が行われるという使用形態から、利用者の動きによって撮像画像の画質が著しく低下してしまうという問題がある。特に、ウェアラブル端末が水平面に対して傾いた状態で撮影が行われることよって、撮像画像が傾いてしまうという問題がある。
【０００３】
一方、特許文献2には、撮像画像の上部に存在する線分を検出し、それらの線分の傾き角から画像全体の傾き角を推定し、撮像画像の傾きを補正する方法が開示されている。特許文献2に開示されている画像補正方法は、撮影者がほぼ正立した状態で撮影が行われることを前提とし、そのような状態で撮影が行われると、画像下部は地面や影の影響を受けて線分から水平方向を推定しにくい領域となり、画像上部は構造物などの水平方向を検出しやすい領域となることが期待される。撮像画像のこのような特徴を積極的に利用して画像を補正することが、特許文献2の方法の特徴である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開2003-304486号公報
【特許文献２】特許第3676360号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ウェアラブル端末で撮影した撮像画像に対して、特許文献2に開示されている画像補正を適用した場合、必ずしも期待する補正効果が得られない。ウェアラブル端末では、利用者が常時装着し常時撮影が行われるので、撮像画像は上部と下部にだけ分割して解析できるような単純な構図とは限らず、特許文献2の方法では不十分である。さらに、特許文献2の方法では、画像の傾きを検出するのに十分な特徴が得られない場合が考慮されておらず、そのような場合でも推定された傾き角を用いて機械的に画像補正がなされるので、画像の傾きがかえって悪化してしまう場合もある。
【０００６】
上記の問題は、画像中からいかにして傾きの検出に適した領域を選択するかという問題に帰着される。すなわち、画像の傾きを画像中に存在する線分の傾きから推定する場合において、線分の向きが揃っている領域と、線分の向きがバラバラである領域とをいかにして判別するかということが問題となる。特許文献2の方法は、これを経験に基づいて単純に上下の領域に分割しているだけであるため、適用範囲が限定されてしまう。
【０００７】
本発明は、任意の撮像画像に対して、特にウェアラブル端末で撮影された画像のように正立で撮影されるとは限らない撮像画像に対して、画像を解析することにより傾き角を推定し、画像の傾きを補正する画像処理装置を提供することである。
ここで画像における領域とは、画像を構成する画素のうちの一部分で構成される画素ブロックである。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明に係る画像処理装置は撮像画像を構成する画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理装置であって、画素ブロックは、縦方向および横方向の画素数が予め定められた画素の集まりであり、方向分布を算出する演算式に、画素ブロック内の画素の位置情報と輝度情報とを代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定手段と、前記判定手段により、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択手段と、選択された画素ブロックから、前記演算の結果を用いて、基準軸に対する撮像画像の傾き角を求め、補正する補正手段とを備え、前記方向分布は、画素ブロック内に写っている物のエッジ部分の画素が空間的に連続している方向の分布を示すものであることを特徴とする画像処理装置である。
【発明の効果】
【０００９】
上記の構成の画像処理装置によると、入力された画像を領域に分割し、分割された領域においてテクスチャ(輝度変化)がどのような方向性を有するのかを判定し、その判定に基づいてテクスチャが一方向性を有する領域のみを選択し、選択された領域を対象として画像の傾き角を推定する。
ここで、テクスチャとは、画像中のエッジ強度の大きい画素の集合として形成される模様であり、テクスチャが一方向性を有するとは、近接するエッジ強度の大きい画素を結ぶことによって形成される線分のうち、大部分がある特定の方向の周辺に向いていることをいう。テクスチャは、画像に含まれる画素の位置情報および輝度情報に演算を施すことで得られる。テクスチャが一方向性を有している場合は、領域内に建物等の構造物の縁が含まれていると考えられ、その方向が水平方向もしくは鉛直方向である可能性が高いので、それらの領域において、輝度のような画素情報を解析することによって、画像の傾き角を推定する。
【００１０】
従って、線分の方向が揃った領域が画像の上部になくても、分割された領域のうち、どれかに線分の方向が揃った領域が存在していれば、それらの領域を対象として傾き角の推定を行うことができる。撮像画像のうち、上部に限らずどこかに存在する線分の方向が揃った領域だけを選択し、線分の方向がバラバラの領域は予め除外されるので、傾き角の推定に適した領域と適さない領域とが混在した画像であっても、正しく傾き角を推定し、画像の傾きを補正することができる。
【００１１】
ここで、前記判定手段は、輝度勾配の方向分布を算出するとしてもよい。
画像中の線分は輝度の変化として認識することができ、線分の方向は輝度変化の方向、すなわち、輝度勾配として認識されるので、領域中の線分のそろい具合を輝度勾配の方向分布から判定することができる。
ここで、前記判定手段は、輝度スペクトル強度の方向分布を算出するとしてもよい。
【００１２】
輝度スペクトルは、元の画像の輝度分布の周波数特性を反映しているので、輝度スペクトルを解析することで元の画像における線分の分布を調べることができる。
ここで、
前記選択手段は、前記複数の領域のうち、輝度変化が所定の輝度変化より大きい画素の数の領域の全画素数に対する割合が所定の閾値より大きい領域を選択対象から除外するとしてもよい。
【００１３】
画像中の線分は輝度変化の大きな位置の近くにあると考えられるが、輝度変化の大きな位置が多いと、線分が密集してしまい、線分の方向を特定することが困難になる。輝度変化の大きい画素が多い領域は、予め選択対象から除くことで、線分の密集した領域から線分の方向を特定するという無駄な処理を行わなくてすむ。
ここで、前記判定手段は、前記輝度勾配の方向分布の分散が所定の値より小さい領域を、領域の傾き角の推定に適した領域と判定するとしてもよい。
【００１４】
輝度勾配の方向分布の分散は、領域に含まれる線分のバラツキの大きさを反映しているので、分散の小さい領域を領域の傾き角の推定に適した領域と判定することで、線分が揃っている領域を選択することができる。
ここで、前記判定手段は、前記輝度勾配の方向分布において、輝度勾配の方向の最頻値を中心とする所定の角度範囲内にある割合が所定の値より大きい領域を、前記領域の傾き角の推定に適した領域と判定するとしてもよい。
【００１５】
輝度勾配の方向分布が最頻値の周辺に度数を集中している場合、大部分の線分の傾き角が近い値をとっているので、領域の傾き角の推定に適した領域と判定することで、線分が揃っている領域を選択することができる。
ここで、前記画像処理装置は、複数の撮像画像の傾きを連続して検出し、前記所定の角度範囲は、前記補正手段が過去に採用した傾き角に基づいて決定されるとしてもよい。
【００１６】
連続して撮影された画像は、同じような傾き角で傾いていると予想されるので、過去に採用した傾き角をもとに、当該画像の傾き角にある程度の見当をつけ、それをもとに角度範囲を決定するので、傾き角推定の精度を高めることができる。
ここで、前記所定の角度範囲は、前記補正手段が直前に採用した傾き角に基づいて決定されるとしてもよい。
【００１７】
過去に採用された傾き角でも、時間的に離れている場合は同じ状況で撮影されたとは考えにくいので、直前に採用された傾き角のみに基づいて角度範囲を決定することで、傾き角推定の精度を高めることができる。
ここで、前記判定手段は、前記輝度スペクトルの強度の方向分布の分散が所定の値より小さい領域を、前記領域の傾き角の推定に適した領域と判定するとしてもよい。
【００１８】
輝度スペクトルの強度の方向分布の分散の小さい領域は、元の画像の線分のバラツキが小さい領域に対応するので、傾き角を推定するのに適した領域が選択される。
ここで、前記推定手段は、前記選択手段によって選択された領域全体から線分を検出し、検出された線分の傾き角の最頻値を画像の傾き角とするとしてもよい。
選択された領域全体から線分を検出し、傾き角の推定を行うので、線分検出処理および傾き推定処理をそれぞれ1回することで画像の傾き角の推定が完了できる。
【００１９】
ここで、前記推定手段は、前記選択手段によって選択されたそれぞれの領域ごとに線分を検出し、各領域において検出された線分の傾き角の最頻値を領域の傾き角とし、領域の傾き角に基づいて画像の傾き角を決定するとしてもよい。
選択された領域個別に線分の検出と傾き角の推定を行い、それぞれの領域の傾き角から画像の傾き角を推定する2段階の推定を行うことで、推定の精度を高めることができる。
【００２０】
ここで、前記画像の傾き角は、前記領域の傾き角の最頻値であるとしてもよい。
それぞれの領域で推定された傾き角のうち最頻値を画像の傾き角とすることで、最も確からしい傾き角を推定できる。
ここで、前記画像の傾き角は、前記領域の傾き角の最頻値が複数ある場合、各領域において領域の傾き角の方向に傾いた線分の長さが長いもの優先するとしてもよい。
【００２１】
最頻値が複数ある場合、長い線分に基づいた傾き角の方を優先することで、正しい傾き角を推定できる可能性が高くなる。
ここで、前記画像処理装置は、複数の撮像画像の傾きを連続して補正し、前記画像の傾き角は、前記領域の傾き角の最頻値が複数ある場合、前記補正手段が過去に採用した傾き角から予測される傾き角に近いものを優先するとしてもよい。
【００２２】
最頻値が複数ある場合、過去に採用した傾き角に近い方を優先することで、正しい傾き角を推定できる可能性が高くなる。
ここで、前記推定手段が過去に検出した画像の傾き角から予測される傾き角は、前記推定手段が直前に検出した傾き角であるとしてもよい。
最頻値が複数ある場合、直前に採用した傾き角に近い方を優先することで、正しい傾き角を推定できる可能性が高くなる。
【００２３】
ここで、前記画像処理装置は、複数の撮像画像の傾きを連続して補正し、前記推定手段は、前記選択手段によって選択された領域全体が画像に占める割合が所定の閾値より小さい場合、前記補正手段が過去に採用した傾き角に基づいて画像の傾き角を推定するとしてもよい。
選択された領域が少ない場合、画像から推定される傾き角の信頼度は低いので、過去に採用された傾き角に基づいて推定される傾き角を採用する。これにより、選択された領域が少ない場合でも画像の補正を行うことができる。
【００２４】
ここで、前記推定手段が推定する画像の傾き角は、前記補正手段が直前に採用した傾き角であるとしてもよい。
選択された領域が少ない場合、画像から推定される傾き角の信頼度は低いので、直前に採用された傾き角を採用する。これにより、選択された領域が少ない場合でも画像の補正を行うことができる。
【００２５】
ここで、前記画像処理装置は、撮像時における水平面からの傾きを検知するセンサを備えた撮像装置に内蔵され、前記補正手段は、前記選択手段によって選択された領域全体が画像に占める割合が所定の閾値より小さい場合、前記センサが出力する傾き角を用いて撮像画像を補正するとしてもよい。
選択された領域が少ない場合、画像から推定される傾き角の信頼度は低いので、センサで測定した撮影時の傾き角を採用する。これにより、選択された領域が少ない場合でも画像の補正を行うことができる。
【００２６】
ここで、前記補正手段は、前記選択手段によって選択された領域全体が画像に占める割合が所定の閾値より小さい場合、補正を行わないとしてもよい。
選択された領域が少ない場合、画像から推定される傾き角の信頼度は低いので、補正を行わないようにする。これにより、間違った傾き角で補正することによる画質の悪化を防止できる。
【００２７】
ここで、前記画像処理装置は、複数の撮像画像の傾きを連続して補正し、前記推定手段は、前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、前記補正手段が過去に採用した傾き角に基づいて撮像画像の傾き角を推定するとしてもよい。
画像が暗い場合、画像から傾き角を推定するのは困難であるので、過去に採用された傾き角に基づいて画像の傾き角を推定する。これにより、画像が暗い場合でも画像の補正を行うことができる。
【００２８】
ここで、前記傾き角は、前記補正手段が直前に採用した傾き角であるとしてもよい。
画像が暗い場合、画像から傾き角を推定するのは困難であるので、直前に採用された傾き角を推定する。これにより、画像が暗い場合でも画像の補正を行うことができる。
ここで、前記画像処理装置は、撮像時における水平面からの傾きを検知するセンサを備えた撮像装置に内蔵され、前記補正手段は、前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、前記センサが出力する傾き角を用いて撮像画像を補正するとしてもよい。
【００２９】
画像が暗い場合、画像から傾き角を推定するのは困難であるので、センサで測定した撮影時の傾き角を採用する。これにより、画像が暗い場合でも画像の補正を行うことができる。
ここで、前記補正手段は、前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、補正を行わないとしてもよい。
【００３０】
画像が暗い場合、画像から傾き角を推定するのは困難であるので、補正を行わないようにする。これにより、間違った傾き角で補正することによる画質の悪化を防止できる。
ここで、前記センサは、加速度センサであるとしてもよい。
センサとして加速度センサを用いることで、重力加速度を検知して撮影時の傾き角を測定することができる。
【００３１】
ここで、前記センサは、角速度センサであるとしてもよい。
センサとして角速度センサを用いることで、撮像装置の回転角を検知して撮影時の傾き角を測定することができる。
【図面の簡単な説明】
【００３２】
【図１】本発明の一例である画像処理装置を内蔵するウェアラブル端末の装着例。
【図２】本発明の一例である画像処理装置による画像補正処理例を示す図。
【図３】本発明に画像処理装置の構成図。
【図４】本発明の一例である画像処理装置による画像分割および領域選択を説明する図。
【図５】線分上の点における輝度勾配を説明する図。
【図６】Sobelフィルタで用いられる係数行列を示す図。
【図７】本発明の一例である画像処理装置が作成する輝度勾配ヒストグラムを示す図。
【図８】いくつかの画像と対応する輝度スペクトルを示す図。
【図９】本発明の一例である画像処理装置における領域選択部の動作を示すフローチャート。
【図１０】本発明の一例である画像処理装置における方向性判定部の輝度勾配ヒストグラム作成処理を示すフローチャート。
【図１１】Hough変換法による線分検出の原理を説明する図。
【図１２】Hough変換法において線分を特徴付けるパラメータを説明する図。
【図１３】本発明の一例である画像処理装置における傾き推定部が作成する角度ヒストグラムを示す図。
【図１４】本発明の一例である画像処理装置における傾き推定部の動作を示すフローチャート。
【図１５】本発明の一例である画像処理装置における傾き推定部の線分検出処理の動作を示すフローチャート。
【図１６】本発明の一例である画像処理装置における傾き推定部の角度ヒストグラム作成処理の動作を示すフローチャート。
【図１７】図8の輝度スペクトルの断面を示す図。
【図１８】本発明の一例である画像処理装置のセンサによる傾き角検出方法を説明する図。
【図１９】本発明の一例である画像処理装置の動作を示すフローチャート。
【発明を実施するための形態】
【００３３】
本実施形態では、本発明の一例である画像処理装置がウェアラブル端末に内蔵され、カメラで撮影された画像の傾きを補正する例について説明する。
ウェアラブル端末とは、図1のように、利用者が首からぶら下げるなどして常時身につけて使用する端末で、利用者の日常の出来事を記録するために例えばカメラを備えており、カメラによる撮影は、利用者による操作を特に必要とせずに行われる。従って、利用者の予期しないタイミングで撮影が行われる可能性があり、例えば、カメラが水平面に対して傾いた状態で撮影が行われると、図2(a)のように、撮影された画像は傾いてしまう。このような傾いた画像は見苦しいので、通常、人は図2(b)のように、画像を傾けて被写体の方向を正しい方向に戻そうとする。本発明は、人が傾きを補正せずとも、撮像画像を解析することで正しい方向を推定し、画像の傾きを補正する画像処理装置である。
【００３４】
ここで、画像の傾きとは、被写体から判断できる画像の水平方向あるいは鉛直方向と、画像自体のフレームで決まる横方向あるいは縦方向とがそれぞれ平行でないことをいう。図2(a)のように壁を撮影した画像の場合は、壁の模様から容易に水平方向を推定することができ、画像は反時計回りにわずかに傾いていると知覚されるので、これを図2(b)のように補正することは容易である。しかし、図2(c)のように地面に生える雑草を撮影した画像の場合は、被写体から水平方向を推定することは困難である。これは、画像に含まれる線分がバラバラの方向を向いており、水平方向あるいは鉛直方向を示唆する線分が存在しないからである。本発明は、画像中のある領域が、上記のような容易に水平方向を推定できるのか、あるいは、水平方向の推定が困難なのかという特徴を解析することにより、高い確率で画像の正しい水平方向または鉛直方向を推定する。
《構成》
図3は、本発明の一例である画像処理装置の構成図である。本発明の一例である画像処理装置100は、画像入力部110、画像分割部120、方向性判定部125、領域選択部130、傾き推定部140、画像補正部150、および、センサ160から構成される。本実施形態では、本発明の一例である画像処理装置100が、撮像部および記憶部を備えたウェアラブル端末に内蔵され、撮像部で撮影された画像の傾きを補正し、記憶部に記憶する構成となっている。
【００３５】
撮像部は、CCDやCMOSセンサ等の撮像素子を備えたカメラであり、映像を撮影して電気信号として出力する。
記憶部は、SDカードやフラッシュメモリ等の記憶媒体であり、本発明の一例である画像処理装置100が出力する画像を保存する。
〈画像入力部110〉
画像入力部110は、画像処理装置100において補正する画像の入力を行う。本発明の一例である画像処理装置100は、補正を行う画像がいつ撮影されたものであるかは関知しない。本実施形態では、本発明の一例である画像処理装置100をウェアラブル端末に内蔵し、撮像画像をその場で補正する構成をとっているが、撮像装置とは別に本発明の一例である画像処理装置100を用意し、撮像画像を入力するような構成にしてもよい。ここで、画像の補正を行うためには、入力される画像は、例えば、通常のカメラで撮影された長方形状の写真のように、画像の縦方向および横方向が明確に規定される画像を前提とする。
〈画像分割部120〉
画像分割部120は、入力された画像を複数の領域に分割する。この分割は、入力画像を縦1/4、横1/5というように縦横共に入力画像に対する比で分割してもよいし、あるいは、縦横32画素というように固定の大きさで分割してもよい。例えば、画像分割部120は、図4(a)のような入力画像に対して、図4(b)のように20分割された領域を生成する。
【００３６】
本実施形態では、分割された領域は同じ面積をもつとして説明を行うが、傾き推定部140において分割された領域の面積を考慮した推定を行えば、必ずしも同じ面積の領域に分割する必要はなく、また、長方形の領域に分割する必要もない。
〈方向性判定部125〉
方向性判定部125は、分割された領域ごとに、その領域が画像の傾き角を推定するのに適しているかどうかを判定する。画像の傾き角を推定するのに適しているかどうかというのは、画像中に含まれる線分の方向の揃い具合によって判定される。すなわち、線分が一方向に揃っている領域は画像の傾き角を推定するのに適しており、逆に線分の方向がバラバラの領域は画像の傾き角を推定するのに適していない。
【００３７】
画像中の線分は、ミクロに捉えると、画素単位の輝度の変化として定量的に検出することができる。これは、輝度に差があることによって、画像中のある領域と別の領域との区別がなされ、その境界が線分として知覚されるからである。従って、領域内での線分の方向の揃い具合を判定するという問題は、領域内での画素の輝度の変化の方向がバラバラであるかどうかを判定するという問題に帰着される。
【００３８】
このような画素の輝度の差によって知覚される線分の集合として形成される模様はテクスチャと呼ばれ、方向性判定部125は、分割された領域ごとに、その領域のテクスチャが一方向性をもつかどうかを判定する。ここで、一方向性とは、線分の方向が完全にある1つの方向に揃っている必要はなく、ある程度の幅を許して、大多数の線分の方向が近い方向を向いているという意味である。この幅は画像の傾き角の推定の精度を決めるもので、設計段階で決めた閾値を用いる。また、エッジ強度は輝度から求めるだけに限らず、色差等の画素情報から求めてもよい。
（輝度勾配）
次に、輝度の変化の方向、すなわち、輝度勾配を求める方法について説明する。
【００３９】
図5は、線分上の点における輝度勾配を説明する図である。図5(a)は、左上の領域は輝度I=I_1であり、右下の領域は輝度I=I_2であり、I_1-1(Δy/Δx)と求められる。線分上では輝度は一定であるので、δI=0より、線分の傾きは-Δx=Δyとなる。すなわち、輝度勾配は、線分に直交する方向である。ここで、Δx=0かつΔy>0のときはθ=90°、Δx=0かつΔy<0のときはθ=-90°とし、Δx=0かつΔy=0のときは画素を無効とする。
【００４０】
離散的な2元関数で表される輝度I(P)から、輝度変化Δx、Δyを求める際に、単純に差分をとると画像に含まれるノイズ等の影響で誤差が増大してしまうので、これを回避する方法として、例えば、Sobelフィルタを用いる方法がある。これは、ある画素における輝度勾配を算出するのに、周辺の画素に重みをつけて差分をとることでなされる。図6は、Sobelフィルタで重み付けに用いられる係数行列である。x成分の算出には図6(a)の行列を用い、y成分の算出には図6(b)の行列を用いる。図6(a)および(b)を要素にもつ行列をそれぞれaおよびbとすると、位置(n,m)における輝度変化ΔxおよびΔyは次の(数5)および(数6)のように表される。
【００４１】
【数５】
2009008174.tif 000036
【００４２】
【数６】
2009008174.tif 000037
【００４３】
なお、ここでは、係数行列は3 x3行列としたが、もっと大きな行列を用いるようにしてもよい。係数行列は一般的には、kを2以上の整数として、(2k-1)x(2k-1)の正方行列となる。
領域選択部130は、以上のようにして領域に含まれるすべての画素について輝度勾配を算出し、領域における線分の方向が揃っているかどうかを判定する。これは、図7のような輝度勾配の値ごとに画素数の累計をとった輝度勾配ヒストグラムを作成することでなされる。図7は、輝度勾配θを横軸とし、一定の幅Δθの範囲に輝度勾配をもつ画素の数Pを縦軸にとったヒストグラムである。
【００４４】
方向性判定部125は、上記のような輝度勾配ヒストグラムを作成し、例えば、輝度勾配ヒストグラムの分散が、予め定めた閾値より小さい場合に、テクスチャが一方向性をもつと判定する。この判定の基準は、分散に基づくものだけに限らず、例えば、輝度勾配ヒストグラムにおいて、一定以上の度数をもつ輝度勾配を与える画素数が、予め定めた閾値より大きい場合に、線分の方向が揃っていると判定してもよい。
【００４５】
領域内でまったく輝度に変化がないような場合は、輝度勾配の算出においてすべての画素が無効とされてしまい、輝度勾配ヒストグラムを作成することができないが、方向性判定部125は、このような領域をテクスチャが一方向性をもたない領域と同等に扱う。
（輝度スペクトル）
一方、画像に含まれる線分の方向性を判定する方法は、上述のように、画素単位で輝度勾配を算出するほかに、画像の周波数特性を利用する方法がある。
【００４６】
すなわち、画像の輝度I(x,y)は、離散的な2次元座標(x,y)に対してある値I(x,y)をとる離散関数であるが、これを2次元離散Fourier変換した輝度スペクトルから方向性を判定する。画像の幅をW、高さをHとすると、画像の輝度I(x,y)の輝度スペクトルF I(u,v)は(数7)のように表される。
【００４７】
【数７】
2009008174.tif 000038
【００４８】
このようにして算出される輝度スペクトルからどのようにして線分の方向性を判定できるかを、図8の画像を例に説明する。図8は、(a)雑草、(b)壁、(c)道路をそれぞれ撮影した画像である。これらの画像に対して、上記のFourier変換を適用すると、それぞれ図8の(d)、(e)、(f)のような輝度スペクトルが得られる。ここで、輝度スペクトルは直流成分が中央になるように平行移動されている。
【００４９】
図8(a)のように、画像の向きを決める線分が存在しない画像の場合は、輝度スペクトルには図8(d)のように強いピークが現れない。図8(d)では、輝度スペクトルが平坦であるかのように示してあるが、これは図面の都合であって、実際には緩やかな起伏がある。このような画像に対して、画像の傾き角を推定することは困難である。
図8(b)のように、壁の模様から明確に水平方向が判定できる画像の場合は、輝度スペクトルは図8(e)において縦方向の線で示したように強いピークを示す。図8(e)では、図
面の都合上、ピークの強さを線の太さで表している。一般的に、元の画像中の線分と輝度スペクトル中のピークとは直交する関係にあるので、輝度スペクトルが縦方向に強いピークを示せば、元の画像は横方向の線分を含んでいる傾向が強いと推定できる。
【００５０】
図8(c)のように、道路と建物と人とが撮影された画像の場合は、輝度スペクトルは図8(f)のように縦方向の強いピークの他に複数の方向にピークを示している。これは、元の画像に、建物の窓や壁などさまざまな方向を向く線分が存在していることによる。
以上のように、輝度スペクトルのパターンから元の画像における線分の方向性を判定することができる。
【００５１】
方向性判定部125は、これを定量的に行うために、各方向ごとの輝度スペクトルの強度P(θ)を算出する。すなわち、座標(u,v)を極座標(r,θ)で表示すると、ある方向θでの輝度スペクトル強度P(θ)は、強度F I(r,θ)の動径方向に関する2乗和として(数8)のように表される。
【００５２】
【数８】
2009008174.tif 000039
【００５３】
この輝度スペクトル強度P(θ)は、方向θに関する強度分布という意味で、上述の輝度勾配ヒストグラムと同等のものである。従って、方向性判定部125は、輝度勾配ヒストグラムを用いる場合と同様に、輝度スペクトル強度P(θ)の分散等の情報から方向性の判定を行うことができる。
〈領域選択部130〉
領域選択部130は、画像分割部120によって分割された領域から、方向性判定部125が一方向性を有すると判定した領域のみを選択する。例えば、図4の例では、図4(c)のように、壁の水平線が明瞭に現れている領域が選択され、全面が壁面で埋まってテクスチャが現れていない領域や、植木が大部分を占めてテクスチャが一方向性を有しない領域は除外される。
（領域選択部130の動作）
図9は、方向性判定部125によるテクスチャの方向性判定に基づいた領域選択部130による領域選択の動作を示すフローチャートである。領域選択部130は、まず、画像分割部120で分割された領域の数をN、領域を示すインデックスをi=1と初期化する(ステップS1001)。次に、領域選択部130は領域iの輝度勾配ヒストグラムを作成するように方向性判定部125に指示し、方向性判定部125は領域選択部130からの指示を受けて領域iの輝度勾配ヒストグラムを作成する(ステップS1002)。方向性判定部125が作成した輝度勾配ヒストグラムの分散が、予め決められた閾値より小さければ(ステップS1003 Y)、領域選択部130は領域iの選択フラグを設定し(ステップS1004)、ステップS1005に進む。方向性判定部125が作成した輝度勾配ヒストグラムの分散が、予め決められた閾値より小さくなければ(ステップS1003 N)、ステップS1005に進む。領域を示すインデックスiが、分割された領域の数N以上ならば(ステップS1006 Y)、領域選択を終了する。領域を示すインデックスiが、分割された領域の数N以上でなければ(ステップS1006 Y)、iを1だけ増大させて(ステップS1007)、ステップS1002に戻る。
（輝度勾配ヒストグラムの作成）
図10は、上記ステップS1002における方向性判定部125による輝度勾配ヒストグラム作成処理を示すフローチャートである。
【００５４】
方向性判定部125は、まず、領域に含まれる画素数をK、画素を示すインデックをi=1、輝度勾配ヒストグラムをP(θ)=0と初期化する(ステップS1101)。次に、画素iにおける輝度勾配θ_iを算出を算出する(ステップS1102)。
続いて、算出した輝度勾配を輝度勾配ヒストグラムに登録する。まず、走査開始角をθ=θ_1とする(ステップS1103)。画素iの輝度勾配θ_iが、θからθ+Δθに入っていれば(ステップS1104 Y)、輝度勾配ヒストグラムのθにおける値P(θ)を1だけ増大し(ステップS1105)、ステップS1106に進む。画素iの輝度勾配θ_iが、θからθ+Δθに入っていなけば(ステップS1104 Y)、ステップS1106に進む。角度θが、走査終了角θ_2以上なら(ステップS1106 Y)、ステップS1108に進む。角度θが、走査終了角θ_2以上でないなら(ステップS1106 N)、θをΔθだけ増大させて(ステップS1107)、ステップS1104に戻る。以上の処理で、画素iの輝度勾配ヒストグラムへの登録が終了する。
【００５５】
画素を示すインデックスiが、領域の画素数K以上になれば(ステップS1108 Y)、輝度勾配ヒストグラム作成処理を終了する。画素を示すインデックスiが、領域の画素数K以上でないなら(ステップS1108 N)、iを1だけ増大させ(ステップS1109)、ステップS1102に戻る。以上の処理で輝度勾配ヒストグラムが完成する。
なお、上では、領域中の画素すべてについて走査し輝度勾配ヒストグラムを作成するとしたが、Sobelフィルタを用いる場合は周囲の画素情報が必要となるので、領域の端の画素は処理対象から除く等の配慮は必要である。
【００５６】
また、輝度勾配ヒストグラムP(θ)は、一定の角度幅Δθの範囲を許して輝度勾配の累積をとったデータ構造を指しているものであり、実際にディスプレイ等にグラフを描画する必要なない。
〈傾き推定部140〉
傾き推定部140は、領域選択部130で選択された領域に対して画素情報に基づいて領域の傾き角の推定を行う。傾き推定部140は、まず、領域から線分を検出し、次に、線分の傾き角の最頻値を領域の傾き角として推定する。傾き角の推定は、領域選択部130で選択された領域全体から線分を検出して画像の傾き角を推定するようにしてもよいし、領域選択部130で選択された領域ごとに個別に領域の傾き角を推定しておき、それらをもとに更に画像の傾き角を推定するようにしてもよい。
（線分検出）
傾き推定部140は、画像に含まれる線分を検出するために、Hough変換法を用いる。これは、画像中で線分の存在する可能性の高い箇所に特徴点を設定し、各特徴点を通りあらゆる方向に一定の確率で直線が存在すると仮定すると、複数の特徴点から伸びる直線の重ね合わせにより、実際に存在する線分の存在確率が高くなることを利用した検出方法である。例えば、図11(a)のように3つの特徴点があるとき、図11(b)のように、各特徴点からあらゆる方向に直線が伸びていると仮定すると、図11(c)のように、3点を結ぶ直線上では重ね合わせによって直線の存在確率が高くなるので、実際に線分が存在するとみなす。特徴点は、上述のSobelフィルタ等のエッジ検出フィルタを画像に適用することで抽出する。
【００５７】
今、i番目の特徴点の座標を(x_i,y_i)とすると、この点を通る任意の直線は(数9)のように書ける。
【００５８】
【数９】
2009008174.tif 000040
【００５９】
ここで、パラメータθおよびρは、図12(a)に示すように、それぞれ、原点から直線への垂線とx軸とのなす角、および、直線と原点との距離という幾何学的意味をもっている。特徴点(x_i,y_i)を通るという制約から、パラメータθとρは独立ではなく、例えば、θ=θ_1のときはρ=ρ_1となりline1が決定し、θ=θ_2のときはρ=ρ_2となりline2が決定する。これを図示すると図12(b)のようになる。図12(b)は、横軸にθ、縦軸にρをとり、3つの特徴点(x_i,y_i)(i=1,2,3)について、ρとθの関係をプロットした図である。図12において、異なる2つの曲線が交わる点は異なる2つの特徴点を通る同じ直線、すなわち、2つの特徴点を結ぶ直線を表している。同様に、異なる3つの曲線が1点で交わる点は、異なる3つの特徴点が同一直線上にあることを表している。
【００６０】
Hough変換法では、すべての特徴点に関して、特徴点を通る直線を与えるパラメータの組(θ,ρ)の累積をとり、一定の閾値P_0を越える度数の直線を実際に存在する直線として検出する。
（傾き角推定）
傾き推定部140は、検出された線分から線分の傾き角についての累積をとり、最も度数の高い傾き角を領域の傾き角として推定する。
【００６１】
上述の線分検出におけるパラメータθは原点から直線への垂線とx軸とのなす角であるので、直線と画像の横方向とのなす角はφ=θ-90°と書ける。傾き推定部140は、領域内の検出された線分すべてに対して、傾き角φに関する角度ヒストグラムを作成し、その最頻値を領域の傾き角とする。
図14は、傾き推定部140の動作を示すフローチャートである。
【００６２】
傾き推定部140は、領域選択部130で選択された領域全体から線分を検出し、一括して画像の傾き角を推定する場合は(ステップS2001 Y)、ステップS2014に進む。そうでない場合は(ステップS2001 N)、ステップS2002に進み、選択領域の数をN、領域を示すインデックスをi=1、ヒストグラムをQ(φ)=0と初期化する。
以下、領域の傾き角をヒストグラムQ(φ)に登録する処理を行う。まず、領域iにおいて角度ヒストグラムを作成し(ステップS2004)、その最頻値を領域iの傾き角φ_iとする(ステップS2005)。走査開始角度をφ=φ_1に設定し(ステップS2006)、領域iの傾き角φ_iがφからφ+Δφの間に入っていれば(ステップS2007 Y)、Q(φ)を1だけ増大させ(ステップS2008)、ステップS2009に進む。走査開始角度をφ=φ_1に設定し(ステップS2006)、領域iの傾き角φ_iがφからφ+Δφの間に入っていなければ、ステップS2009に進む。角度φが、走査終了角度φ_2に対してφ≧φ_2になれば(ステップS2009 Y)、ステップS2011に抜け、φ<φ_2の間はステップS2010に進み、φをΔφだけ増大させて(ステップS2010)、ステップS2007に戻る。
【００６３】
以上の処理を全ての領域について行う。領域のインデックスiが、選択された領域の数Nに対して、i≧Nになれば(ステップS2011 Y)、ステップS2013に進む。i  最後に、作成したヒストグラムQ(φ)から最頻値を選び出し、それを画像の傾き角の推定値とする(ステップS2013)。
ステップS2001で、一括推定をすると判定された場合は、まず、領域選択部130で選択した領域を結合して1つの領域とする(ステップS2014)。結合された領域に対して線分を検出し(ステップS2015)、結合された領域に対して角度ヒストグラムを作成する(ステップS2016)。この角度ヒストグラムの最頻値を画像の傾き角の推定値とする(ステップS2017)。
【００６４】
以上が、傾き推定部140による傾き推定処理の動作である。
次に、ステップS2003およびステップS2015における線分検出処理について説明する。
図15は、Hough変換法による線分検出を示すフローチャートである。
傾き推定部140は、まず、領域から特徴点を抽出し(ステップS2101)、特徴点の個数をN、特徴点を示すインデックスをi=1、ヒストグラムをP(θ,ρ)=0と初期化する(ステップS2102)。
【００６５】
以下、特徴点iを通る直線が、θ-ρ空間におけるθ_1からθ_2、かつ、ρ_1からρ_2の範囲内をΔθΔρのブロックで分割したときのどのブロックに属するかを調べていく。まず、特徴点iの座標(x_i,y_i)を取得する(ステップS2103)。パラメータθをθ_1に初期化し(ステップS2104)、θに対応するρ_iを算出する(ステップS2105)。パラメータρをρ_1に初期化し(ステップS2106)、ρ_iがρからρ+Δρの間に入っていれば(ステップS2107 Y)、P(θ,ρ)を1だけ増大させて(ステップS2108)、ステップS2109に進む。ρ_iがρからρ+Δρの間に入っていなければ(ステップS2107N)、ステップS2109に進む。ρがρ_2に達するまで(ステップS2109 N)、Δρずつ増やしながら(ステップS2110)、ρ方向に走査する。ρがρ_2達すれば(ステップS2109 Y)、θがθ_2に達するまで(ステップS2111 N)、Δθずつ増やしながら(ステップS2112)、θ方向に走査する。θがθ_2に達すれば(ステップS2111 Y)、特徴点iのヒストグラムR(θ,ρ)への登録は終了する。
【００６６】
以上の処理を、インデックスiが特徴点の数Nに達するまで(ステップS2113 N)、iを1ずつ増やしながら行う。インデックスiが特徴点の数Nに達したら(ステップS2113 Y)、傾き推定部140は、ヒストグラムP(θ,ρ)において、閾値P_0より大きい度数をもつ(θ,ρ)で表される線分が実際に存在する線分として検出する。
図16は、角度ヒストグラム作成のフローチャートである。傾き推定部140は、まず、領域内で検出された線分の数をNとし、線分を示すインデックスをi=1、角度ヒストグラムをR(φ)=0と初期化する(ステップS2201)。次に、線分iについて線分検出時に算出したパラメータ(θ_i,ρ_i)をメモリから読み込み(ステップS2202)、線分iの傾き角φ_iを算出する(ステップS2203)。
【００６７】
続いて、傾き角φ_iを角度ヒストグラムR(φ)に登録する。まず、走査開始角度をφ=φ_1とする(ステップS2204)。線分iの傾き角φ_iがφからφ+Δφの間にあれば(ステップS2205)、R(φ)の値を1だけ増やして(ステップS2205 Y)、ステップS2206に進む。線分iの傾き角φ_iがφからφ+Δφの間になければ(ステップS2205 N)、ステップS2206に進む。角度φが、走査終了角度φ_2以上ならば(ステップS2206 Y)、傾き角φ_iの登録を終了し、ステップS2209に進む。角度φが、走査終了角度φ_2より小さければ(ステップS2206 N)、角度φをΔφだけ増大させて(ステップS2208)、ステップS2205に戻る。
【００６８】
以上の処理をすべての線分について行う。すなわち、インデックスiが、線分の数N以上ならば(ステップS2209 Y)、角度ヒストグラムの作成を終了する。インデックスiが、線分の数Nより大きくなければ(ステップS2209 N)、インデックスiを1だけ増大させ(ステップS2210)、ステップS2202に戻る。
以上により、図13のような角度ヒストグラムが完成する。傾き推定部140は、角度ヒストグラムの最頻値を領域の傾き角と推定する。例えば、図13の場合、領域の傾き角はφ_0となる。
【００６９】
傾き推定部140が、領域選択部130で選択された領域全体から線分を検出して画像の傾き角を推定する場合は、上の領域の傾き角が、すなわち、画像の傾き角である。傾き推定部140が、領域ごとに個別に傾き角を推定し、その上で、画像の傾き角を推定する方法をとる場合は、上記のようにして、各領域の傾き角を推定したあと、更に領域の傾き角に関して累積をとり、最頻値を画像の傾き角として推定する。
【００７０】
上記では、角度ヒストグラムの作成において、どの角度も等価に取り扱うとして説明したが、画像解析とは異なる手段から予測される傾き角に応じて、重みを付けて角度ヒストグラムを作成するようにしてもよい。例えば、複数の画像が連続して撮影される場合は、傾き角も連続的に変化していると期待されるので、過去の傾き角から、当該画像の傾き角を予測し、その値に応じた重みを付けて角度ヒストグラムを作成することにより、推定の精度を高めることができる。撮像装置が激しく揺られていない状況を前提にすると、過去の傾き角のうち直前の傾き角が、当該画像の傾き角に最も近いと考えられる。直前の傾き角をθ_prevとしたとき、傾き角θに応じて(数10)のような重みw(θ)を課すようにしてもよい。
【００７１】
【数１０】
2009008174.tif 000041
【００７２】
また、角度ヒストグラムに複数の最頻値ある場合は、線分の特性に応じた重みを課すことにより、確からしい傾きが推定されるようにしてもよい。例えば、短い線分は壁に描かれた細かい模様等の可能性もあるのに対して、長い線分の方が壁の縁等の構造の一部である可能性が高く、長い線分が与える傾き角の重みを短い線分が与える傾き角の重みより重くすることで、より正確に水平方向あるいは鉛直方向を検出し、正しく画像の傾き角を推定できる。線分の長さは、Hough変換法によって検出された線分が通る特徴点のうち、最も端の2点間の距離として求めることができる。
【００７３】
また、水平方向よりも鉛直方向に向いた線分から決まる傾き角を優先するように重み付けを行ってもよい。これは、撮影された画像において、遠近関係により線分が水平方向あるいは鉛直方向から傾いてしまう可能性は、水平方向の線分の方が鉛直方向の線分より高いからである。例えば、図8(c)のような画像で左右に写っている建物の水平方向を示す線分は、実際にはすべて水平面に平行であるが、画像中では、遠近関係により放射状になってしまい、わずかづつ傾きが異なっている。それに対して、鉛直方向を示す線分は、画像中でもすべて鉛直方向に平行である。このような事情から、線分の方向に依存した重み付けを行うことは有効である。
（輝度スペクトルを利用した傾き角推定）
上では、傾き推定部140が、領域から線分を検出し、その線分の傾き角から領域の傾き角を推定する方法を述べたが、領域の輝度スペクトルを利用して傾き角を推定してもよい。
【００７４】
例えば、図17(a)の輝度スペクトルにおいて、(b)、(c)、(d)で示す方向の断面は、それぞれ図17(b)、(c)、(d)のようになる。(b)の方向は、図17(a)の中心で縦方向に伸びたピークの上を通るので、強い信号がフラットに続いて、ピークは見られない。(c)の方向は、図17(a)の縦方向の縞を横切る方向なので多数のピークが現れる。(d)の方向は、(b)と(c)の中間の方向であるので、(c)のピーク間隔が広がった形状となる。
【００７５】
以上から、輝度スペクトル強度の強い方向はピーク数の少ない方向であると考えられ、ピーク数の逆数で角度ヒストグラムを作るようにしてもよい。
（輝度勾配の方向分布に基づく傾き推定）
また、傾き推定部140は、輝度勾配の方向分布に基づいて傾き角を推定してもよい。具体的には、領域選択部130で選択された領域に属する画素について、輝度勾配の方向分布を算出し、その最頻値に対応する角度を利用して、傾き角を推定することができる。
〈センサ160〉
センサ160は、加速度センサあるいは角速度センサなどの重力の方向を検知するセンサであり、傾き推定部140による画像の傾き角の推定がうまくいかない場合に、センサ160により直接、ウェアラブル端末の傾き角を測定する。傾き推定部140による画像の傾き角の推定がうまくいかない場合とは、例えば、領域選択部130によって選択された領域が少ない場合や、画像が暗い場合がある。
【００７６】
傾き推定部140は、選択領域からのみ線分を検出して画像の傾き角を推定するので、画像中に線分の揃った領域が少なくて選択領域が少なくなってしまった場合は、正確に画像の傾き角を推定できない。また、傾き推定部140は輝度をもとに画像の傾き角を推定するので、画像全体が暗い場合も正確に画像の傾き角を推定できない。このような場合は、傾き推定部140により推定された画像の傾き角よりも、センサ160で検出した傾き角の方が画像の傾きを正確に反映していると考えられる。
【００７７】
センサ160は、例えば、ピエゾ抵抗型加速度センサのように印加される加速度を電気信号に変換するセンサを用い、図18に示すように、ウェアラブル端末のカメラの撮影方向に対して垂直な2方向の加速度を同時に検出できるように2軸加速度センサを用いる。
図18に示すように、ウェアラブル端末が傾いていないときの鉛直方向および水平方向にy軸およびx軸をとり、y方向およびx方向の加速度を検出できるようにセンサ160をウェアラブル端末に固定する。重力加速度をgとすると、x方向およびy方向の成分はそれぞれg_x=g sinθ、g_y=g cosθと書けるので、傾き角はθ=tan-1(g_x=g_y)となる。
【００７８】
なお、センサ160は、複数のセンサを設置してそれらの平均をとるなどして測定精度を上げてもよい。
センサ160は、傾き角そのものを出力しなくても、ある基準値からの差分値を出力するようにしてもよいし、直前の測定値からの差分値を出力するようにしてもよい。
上では、加速度センサを用いて重力を検出することにより撮影時の傾き角を検出する例を示したが、自機が回転する角速度を角速度センサを用いて検出し、時間的に積分することで傾き角を算出するようにしてもよい。
【００７９】
また、本発明の一例である画像処理装置100がウェアラブル端末に内蔵されない場合でも、撮影時にセンサ160で測定した傾き角をメモリに記録しておき、あとでそれを読み込んで画像補正に利用するようにしてもよい。
〈画像補正部150〉
画像補正部150は、傾き推定部140で推定された傾き角、もしくは、センサ160で検出された傾き角に応じて画像を回転する補正を行う。画像補正部150は、傾き推定部140が画像の傾き角の推定を行なった場合は、推定された傾き角を用いて画像の補正を行うが、傾き推定部140が画像の傾き角の推定を行うのに十分な情報が画像に含まれていない場合は、センサ160が検出した傾き角を用いて画像の補正を行う。ここで、画像の補正とは、図2で示したように、推定あるいは検出された画像の傾き角に対して、同じ角だけ逆の方向に画像を回転させることで行う。
【００８０】
図19は、本発明の一例である画像処理装置100の動作を示すフローチャートである。
画像処理装置100は、まず、画像入力部110において画像を読み込み(ステップS3001)、入力された画像の全画素数をN、輝度が閾値以上の画素数をMを初期化する。
比M=Nが閾値αより大きくなければ(ステップS3003 N)、ステップS3009に進む。比M=Nが閾値αより大きければ(ステップS3003 Y)、ステップS3004に進み、画像分割部120において画像を分割する(ステップS3004)。このとき画像の分割数をnとする。次に、方向性判定部125において判定される領域のテクスチャの方向性に基づいて、領域選択部130が線分の方向の揃った領域を選択する(ステップS3005)。このとき領域の選択数をmとする。
【００８１】
比m=nが閾値βより大きくなければ(ステップS3006 N)、ステップS3009に進む。比m=nが閾値βより大きければ(ステップS3006 Y)、ステップS3007に進み、傾き推定部140において画像の傾き角の推定を行う(ステップS3007)。
画像補正部150は、傾き推定部140で推定された傾き角だけ画像を回転させることで画像の補正を行う(ステップS3008)。ただし、ステップS3003もしくはステップS3006において、画像から傾き角を推定するのに適さないと判断された場合は、センサで傾き角を検出し(ステップS3009)、その値を用いて画像の補正を行う。
【００８２】
以上が、本発明の一例である画像処理装置100の動作である。
なお、センサ160は必須ではなく、センサ160を備えていない場合は、傾き角を推定するに足る情報を有していない画像に対しては何も処理を行わないようにしてもよい。そうすることで、間違って推定された傾き角に基づいた補正を行い、画質を悪くしてしまうことを防げる。
【００８３】
また、センサ160を備えていても、センサ160による傾き角の推定が困難である場合には、センサ160による傾き角の推定を行わないで、傾き角を推定するに足る情報を有していない画像に対しては何も処理を行わないようにしてもよい。ここで、センサ160による傾き角の推定が困難である場合とは、所定時間内のセンサ160の出力値の変化量が、所定の閾値以上である場合をいう。このようにすることで、間違って推定された傾き角に基づいた補正を行い、画質を悪くしてしまうことを防げる。
【００８４】
あるいは、ウェアラブル端末のように画像が連続して撮影されることがわかっている場合は、傾き角を推定するに足る情報を有していない画像に対して、過去に撮影された画像において推定された傾き角から、当該画像の傾き角を推定するようにしてもよい。すなわち、推定された画像の傾き角のうち最近のいくつかの履歴を記憶しておき、その推移を外挿することにより、当該画像の傾き角を推定するようにしてもよい。また、推定された画像の傾き角のうち直前の1つを記憶しておき、その傾き角をそのまま当該画像の傾き角とするようにしてもよい。これは、撮像装置の揺れが小さければ、連続して撮影された画像の傾き角は、連続的に変化するであろうという仮定に基づいた処理である。
【産業上の利用可能性】
【００８５】
本発明の一例である画像処理装置を、ウェアラブル端末等に組み込むことで、撮影した画像の傾きを補正し、正しい向きの画像を記録や表示することができる。画像から傾き推定に適した領域だけを選択して傾き角の推定を行うので、正立に構えて撮影された画像でなくても、高い確率で正しい傾き角を推定することができる。
【符号の説明】
【００８６】
100：画像処理装置
110：画像入力部
120：画像分割部
125：方向性判定部
130：領域選択部
140：傾き推定部
150：画像補正部
160：センサ
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
撮像画像を構成する画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理装置であって、
画素ブロックは、縦方向および横方向の画素数が予め定められた画素の集まりであり、
方向分布を算出する演算式に、画素ブロック内の画素の位置情報と輝度情報とを代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定手段と、
前記判定手段により、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択手段と、
選択された画素ブロックから、前記演算の結果を用いて、基準軸に対する撮像画像の傾き角を求め、補正する補正手段とを備え、
前記方向分布は、画素ブロック内に写っている物のエッジ部分の画素が空間的に連続している方向の分布を示すものである
ことを特徴とする画像処理装置。
【請求項２】
複数の前記画素ブロックから構成される撮像画像の補正を行う画像処理装置であって、
各画素ブロックごとに、当該画素ブロック内の画像の傾きを推定するのに適しているかどうかを判定する
ことを特徴とする請求項1に記載の画像処理装置。
【請求項３】
前記方向分布は、輝度勾配の方向分布であり、
前記輝度勾配θは、
画像における任意の位置P(x,y)における画素の輝度をI(P)とした場合、
位置P(x,y)におけるx方向の輝度変化Δx=∂I(P)/∂xと、位置P(x,y)におけるy方向の輝度変化Δy=∂I(P)/∂yとを用いて、θ=tan-1(Δy/Δx)と表され、
前記輝度勾配の方向分布P(θ)は、輝度勾配の関数であり、輝度勾配がΔθの幅を許してθである画素の数を累積したものである
ことを特徴とする請求項1に記載の画像処理装置。
【請求項４】
前記判定手段は、前記輝度勾配を算出する際、周辺の画素に重みをつけて差分をとるフィルタ処理を行い、
インデックス(n,m)で示される位置における輝度変化ΔxおよびΔyは、
前記重み付けに用いられる係数行列の成分をa_i,jおよびb_i,jとすると、
次の(数1)および(数2)のように表される  
【数１】
2009008174.tif 000042
【数２】
2009008174.tif 000043
ことを特徴とする請求項3に記載の画像処理装置。
【請求項５】
前記判定手段により画素ブロック内画像の傾きを推定するのに適していると判定される画素ブロックは、
前記輝度勾配の方向分布の分散が所定の値より小さい画素ブロックである
ことを特徴とする請求項4に記載の画像処理装置。
【請求項６】
前記判定手段により画素ブロック内画像の傾きを推定するのに適していると判定される画素ブロックは、
前記輝度勾配の方向分布において、最頻値を中心とする所定の角度範囲内にある割合が所定の値より大きい画素ブロックである
ことを特徴とする請求項4に記載の画像処理装置。
【請求項７】
前記画像処理装置は、複数の撮像画像の傾き角を連続して検出し、
前記所定の角度範囲は、前記補正手段が過去に採用した傾き角に基づいて決定される
ことを特徴とする請求項6に記載の画像処理装置。
【請求項８】
前記画像処理装置は、複数の撮像画像の傾き角を連続して検出し、
前記所定の角度範囲は、前記補正手段が直前に採用した傾き角に基づいて決定される
ことを特徴とする請求項6に記載の画像処理装置。
【請求項９】
前記方向分布は、輝度スペクトル強度の方向分布であり、
前記輝度スペクトルは、
離散的な2次元座標(x,y)に対してある値Iをとる離散関数で表される画像の輝度I(x,y)に対して、2次元離散Fourier変換を施したものであり、
前記画像の輝度I(x,y)に対する輝度スペクトルF I(u,v)は、
前記画像の幅をW、高さをHとすると、(数3)のように表され、
【数３】
2009008174.tif 000044
前記輝度スペクトル強度の方向分布P(θ)は、
前記輝度スペクトルF I(u,v)を、極座標(r,θ)で表示した際における輝度スペクトルF I(r,θ)を、動径方向に関して2乗和をとることで(数4)と表される
【数４】
2009008174.tif 000045
ことを特徴とする請求項1に記載の画像処理装置。
【請求項１０】
前記判定手段により画素ブロック内画像の傾きを推定するのに適していると判定される画素ブロックは、
前記輝度スペクトル強度の方向分布の分散が所定の値より小さい画素ブロックである
ことを特徴とする請求項9に記載の画像処理装置。
【請求項１１】
前記補正手段は、
前記選択手段によって選択された画素ブロックから輝度勾配の方向分布を算出し、
前記輝度勾配の方向分布における最頻値に基づいて撮像画像の傾き角を求める
ことを特徴とする請求項1に記載の画像処理装置。
【請求項１２】
前記補正手段は、
前記選択手段によって選択された画素ブロックから線分を検出し、
検出された線分の傾き角に基づいて撮像画像の傾き角を求める
ことを特徴とする請求項1に記載の画像処理装置。
【請求項１３】
前記線分の検出は、前記選択手段によって選択された画素ブロック全体を対象に行われ、
前記撮像画像の傾き角は、検出された線分の傾き角の最頻値である
ことを特徴とする請求項12に記載の画像処理装置。
【請求項１４】
前記線分の検出は、前記選択手段によって選択されたそれぞれの画素ブロックを対象に行われ、
前記画素ブロック内画像の傾き角は、検出された線分の傾き角の最頻値であり、
前記撮像画像の傾き角は、前記画素ブロック内画像の傾き角の最頻値である
ことを特徴とする請求項12に記載の画像処理装置。
【請求項１５】
前記画像の傾き角は、前記画素ブロック内画像の傾き角の最頻値が複数ある場合、
各画素ブロックにおいて画素ブロックの傾き角の方向に傾いた線分の長さが長いもの優先する
ことを特徴とする請求項14に記載の画像処理装置。
【請求項１６】
前記画像処理装置は、複数の撮像画像の傾き角を連続して補正し、
前記画像の傾き角は、前記画素ブロック内画像の傾き角の最頻値が複数ある場合、
前記画像補正手段が過去に採用した傾き角から予測される傾き角に近いものを優先する
ことを特徴とする請求項14に記載の画像処理装置。
【請求項１７】
前記画像処理装置は、複数の撮像画像の傾き角を連続して補正し、
前記画像の傾き角は、前記画素ブロック内画像の傾き角の最頻値が複数ある場合、
前記画像補正手段が直前に採用した傾き角から予測される傾き角に近いものを優先する
ことを特徴とする請求項14に記載の画像処理装置。
【請求項１８】
前記選択手段は、
前記画素ブロックのうち、輝度変化が所定の輝度変化より大きい画素の数の画素ブロックの全画素数に対する割合が所定の閾値より大きい画素ブロックを選択対象から除外する
ことを特徴とする請求項12の画像処理装置。
【請求項１９】
前記画像処理装置は、複数の撮像画像の傾き角を連続して補正し、
前記補正手段は、
前記選択手段によって選択された画素ブロック全体が画像に占める割合が所定の閾値より小さい場合、
前記補正手段が過去に採用した傾き角に基づいて画像の傾き角を推定する
ことを特徴とする請求項18に記載の画像処理装置。
【請求項２０】
前記画像処理装置は、複数の撮像画像の傾きを連続して補正し、
前記補正手段は、
前記選択手段によって選択された画素ブロック全体が画像に占める割合が所定の閾値より小さい場合、
前記画像補正手段が直前に採用した傾き角に基づいて画像の傾き角を推定する
ことを特徴とする請求項18に記載の画像処理装置。
【請求項２１】
前記画像処理装置は、
撮像時における水平面からの傾きを検知するセンサを備えた撮像装置に内蔵され、
前記画像補正手段は、
前記選択手段によって選択された画素ブロック全体が画像に占める割合が所定の閾値より小さい場合、
前記センサが出力する傾き角の変化量の所定時間内の合計が所定閾値以下ならば、前記センサが出力する傾き角を用いて撮像画像を補正する
ことを特徴とする請求項18に記載の画像処理装置。
【請求項２２】
前記補正手段は、
前記選択手段によって選択された画素ブロック全体が画像に占める割合が所定の閾値より小さい場合、補正を行わない
ことを特徴とする請求項18に記載の画像処理装置。
【請求項２３】
前記画像処理装置は、複数の撮像画像の傾き角を連続して補正し、
前記補正手段は、
前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、
前記補正手段が過去に採用した傾き角に基づいて撮像画像の傾き角を推定する
ことを特徴とする請求項18に記載の画像処理装置。
【請求項２４】
前記画像処理装置は、複数の撮像画像の傾き角を連続して補正し、
前記補正手段は、
前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、
前記補正手段が直前に採用した傾き角に基づいて撮像画像の傾き角を推定する
ことを特徴とする請求項18に記載の画像処理装置。
【請求項２５】
前記画像処理装置は、
撮像時における水平面からの傾きを検知するセンサを備えた撮像装置に内蔵され、
前記補正手段は、
前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、
前記センサが出力する傾き角の変化量の所定時間内の合計が所定閾値以下ならば、前記センサが出力する傾き角を用いて撮像画像を補正する
ことを特徴とする請求項18に記載の画像処理装置。
【請求項２６】
前記補正手段は、
前記撮像画像において輝度が所定の値より小さい画素の全画素に占める割合が所定の閾値より大きい場合、補正を行わない
ことを特徴とする請求項18に記載の画像処理装置。
【請求項２７】
前記センサは、加速度センサである
ことを特徴とする請求項21または25に記載の画像処理装置。
【請求項２８】
前記センサは、角速度センサである
ことを特徴とする請求項21または25に記載の画像処理装置。
【請求項２９】
前記センサが出力する傾き角の変化量の所定時間内の合計が所定閾値以上ならば、補正を行わない
ことを特徴とする請求項21または25に記載の画像処理装置。
【請求項３０】
撮像画像を構成する画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理方法であって、
画素ブロックは、縦方向および横方向の画素数が予め定められた画素の集まりであり、
方向分布を算出する演算式に、画素ブロック内の画素の位置情報と輝度情報とを代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定ステップと、
前記判定ステップにより、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択ステップと、
選択された画素ブロックから、前記演算の結果を用いて、基準軸に対する撮像画像の傾き角を求め、補正する補正ステップとを含み、
前記方向分布は、画素ブロック内に写っている物のエッジ部分の画素が空間的に連続している方向の分布を示すものである
ことを特徴とする画像処理方法。
【請求項３１】
複数の前記画素ブロックから構成される撮像画像の補正を行う画像処理方法であって、
各画素ブロックごとに、当該画素ブロック内の画像の傾きを推定するのに適しているかどうかを判定する
ことを特徴とする請求項30に記載の画像処理方法。
【請求項３２】
撮像画像を構成する画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理処理をコンピュータに実行させる画像処理プログラムであって、
画素ブロックは、縦方向および横方向の画素数が予め定められた画素の集まりであり、
方向分布を算出する演算式に、画素ブロック内の画素の位置情報と輝度情報とを代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定ステップと、
前記判定ステップにより、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択ステップと、
選択された画素ブロックから、前記演算の結果を用いて、基準軸に対する撮像画像の傾き角を求め、補正する補正ステップとをコンピュータに実行させ、
前記方向分布は、画素ブロック内に写っている物のエッジ部分の画素が空間的に連続している方向の分布を示すものである
ことを特徴とする画像処理プログラム。
【請求項３３】
複数の前記画素ブロックから構成される撮像画像の補正を行う画像処理処理をコンピュータに実行させる画像処理プログラムであって、
各画素ブロックごとに、当該画素ブロック内の画像の傾きを推定するのに適しているかどうかを判定する
ことを特徴とする請求項32に記載の画像処理プログラム。
【請求項３４】
撮像画像を構成する画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理をコンピュータに実行させる画像処理プログラムを記録した記録媒体であって、
前記画像処理プログラムは、
画素ブロックは、縦方向および横方向の画素数が予め定められた画素の集まりであり、
方向分布を算出する演算式に、画素ブロック内の画素の位置情報と輝度情報とを代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定ステップと、
前記判定ステップにより、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択ステップと、
選択された画素ブロックから、前記演算の結果を用いて、基準軸に対する撮像画像の傾き角を求め、補正する補正ステップとをコンピュータに実行させ、
前記方向分布は、画素ブロック内に写っている物のエッジ部分の画素が空間的に連続している方向の分布を示すものである
ことを特徴とする画像処理プログラムを記録した記録媒体。
【請求項３５】
複数の前記画素ブロックから構成される撮像画像の補正を行う画像処理をコンピュータに実行させる画像処理プログラムを記録した記録媒体であって、
前記画像処理プログラムは、
各画素ブロックごとに、当該画素ブロック内の画像の傾きを推定するのに適しているかどうかを判定する
ことを特徴とする請求項34に記載の画像処理プログラムを記録した記録媒体。
【請求項３６】
撮像画像を構成する画素ブロックの輝度情報を用いて撮像画像の補正を行う画像処理プロセッサであって、
画素ブロックは、縦方向および横方向の画素数が予め定められた画素の集まりであり、
方向分布を算出する演算式に、画素ブロック内の画素の位置情報と輝度情報とを代入して演算を行って、当該画素ブロック内画像の傾き角を推定するのに適しているかどうかを判定する判定手段と、
前記判定ステップにより、画素ブロック内画像の傾き角を推定するのに適していると判定された画素ブロックを選択する選択手段と、
選択された画素ブロックから、前記演算の結果を用いて、基準軸に対する撮像画像の傾き角を求め、補正する補正手段とを備え、
前記方向分布は、画素ブロック内に写っている物のエッジ部分の画素が空間的に連続している方向の分布を示すものである
ことを特徴とする画像処理プロセッサ。
【請求項３７】
複数の前記画素ブロックから構成される撮像画像の補正を行う画像処理プロセッサであって、
各画素ブロックごとに、当該画素ブロック内の画像の傾きを推定するのに適しているかどうかを判定する
ことを特徴とする請求項36に記載の画像処理プロセッサ。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2009008174.tif 000046
【図２】
2009008174.tif 000047
【図３】
2009008174.tif 000048
【図４】
2009008174.tif 000049
【図５】
2009008174.tif 000050
【図６】
2009008174.tif 000051
【図７】
2009008174.tif 000052
【図８】
2009008174.tif 000053
【図９】
2009008174.tif 000054
【図１０】
2009008174.tif 000055
【図１１】
2009008174.tif 000056
【図１２】
2009008174.tif 000057
【図１３】
2009008174.tif 000058
【図１４】
2009008174.tif 000059
【図１５】
2009008174.tif 000060
【図１６】
2009008174.tif 000061
【図１７】
2009008174.tif 000062
【図１８】
2009008174.tif 000063
【図１９】
2009008174.tif 000064
【国際調査報告】
2009008174.tif 000065
2009008174.tif 000066
2009008174.tif 000067
2009008174.tif 000068