色補正装置、方法及びプログラム
【課題】補正品質を改良する色補正装置を提供する。
【解決手段】複数カメラで撮影した動画の各画像の色補正を行う色補正装置であり、対象カメラに対して参照カメラとするカメラの組と、その順番を特定する情報である補正順序を保持する手段と、参照カメラで撮影した参照画像に基づき、対象カメラで撮影した対象画像の色補正を行い、該対象画像を、色補正後の対象画像に置き換えることを、補正順序の最初の組から最後の組まで順に行うと共に、色補正による画素値の変化量に基づく値である補正量を、各組の色補正について求める手段と、補正順序の最後の組の色補正の終了後、各組の補正量の合計に基づく値により、補正順序に基づく色補正を繰り返すか否かを判定する手段を備えており、補正順序において、各カメラを、少なくとも1回は対象カメラとし、第1番目を除き、参照カメラはそれ以前に対象カメラとしたものから選択する。
【解決手段】複数カメラで撮影した動画の各画像の色補正を行う色補正装置であり、対象カメラに対して参照カメラとするカメラの組と、その順番を特定する情報である補正順序を保持する手段と、参照カメラで撮影した参照画像に基づき、対象カメラで撮影した対象画像の色補正を行い、該対象画像を、色補正後の対象画像に置き換えることを、補正順序の最初の組から最後の組まで順に行うと共に、色補正による画素値の変化量に基づく値である補正量を、各組の色補正について求める手段と、補正順序の最後の組の色補正の終了後、各組の補正量の合計に基づく値により、補正順序に基づく色補正を繰り返すか否かを判定する手段を備えており、補正順序において、各カメラを、少なくとも1回は対象カメラとし、第1番目を除き、参照カメラはそれ以前に対象カメラとしたものから選択する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数のカメラで撮影した画像の色補正技術に関する。
【背景技術】
【0002】
複数の異なる位置に設置したカメラで動画を撮影するマルチビューカメラシステムにおいては、個々のカメラの特性や、設置位置に対する光源の方向の影響等により、各カメラが撮影する画像の色彩は異なるものとなる。この違いを補償するため、撮影した画像の色補正が必要となり、様々な色補正の方法が提案されている(例えば、非特許文献1から4参照。)。
【0003】
【非特許文献1】Neel Joshi et al.、“Automatic Color Calibration for Large Camera Arrays”、UCSD CSE Technical Report、CS2005−0821、2005年
【非特許文献2】Kwanghoon Sohn et al.、“H.264/AVC−compatible Multi−view Video Coding”、ISO/IEC JTC1/SC29/WG11 M12874、2006年
【非特許文献3】Yushan Chen.、“Ni Luminance and Chrominance Correction for Multi−View Video Using Simplified Color Error Model”、PCS2006、pp.2−17、2006年
【非特許文献4】Kenji Yamamoto et al.、“Colour Correction for Multiple−camera System by using Correspondences”、映像情報メディア学会誌 Vol.61、No.2、Ppp.1〜9、2007年
【発明の開示】
【発明が解決しようとする課題】
【0004】
非特許文献1から3に記載の方法は、いわゆる、カラーパターンボード(Color Pattern Board)を用いる方法である。つまり、参照画像の画素値のヒストグラムと、対象画像の画素値のヒストグラムに基づき、両画像の画素値間の変換式を求め、求めた変換式に基づき対象画像の色補正を行うものである。
【0005】
しかしながら、カラーパターンボードを用いる方法は、光源方向により、各カメラが撮影する画像の明暗差が大きい状況等、参照画像の画素値のヒストグラムと、対象画像の画素値のヒストグラムとの相関を見出すことが難しい場合があり、色補正の精度が劣化するという問題がある。また、例えば、屋外での撮影の様に、広範囲の領域を撮影した画像からカラーパターンボードを生成することが難しいという問題もある。
【0006】
一方、非特許文献4に記載の方法は、参照画像と対象画像の同一対象物を捉えている画素、つまり、対応する画素を探索し、対象画像の画素を、参照画像の対応する画素に基づき色補正するものであり、上述したカラーパターンボードを用いる方法による問題は生じない。
【0007】
しかしながら、非特許文献4に記載の方法は、1つのカメラで撮影した画像を参照画像とし、残りの総てのカメラで撮影した画像を対象画像とするものであり、参照画像を撮影するカメラから離れるに従い、対象画像に対する色補正品質が劣化するという問題がある。また、位置関係によっては、対象画像には存在するが、参照画像からは隠れた位置となる対象物が発生し、この対象物の色補正を行うことができないという問題もある。
【0008】
したがって、本発明は、上述した問題を解決する色補正装置、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明における色補正装置によれば、
複数のカメラで撮影した動画の各画像の色補正を行う色補正装置であって、対象カメラに対して参照カメラとするカメラの組と、その順番を特定する情報である補正順序を保持する第1の手段と、参照カメラで撮影した参照画像に基づき、対象カメラで撮影した対象画像の色補正を行い、該対象画像を、色補正後の対象画像に置き換えることを、補正順序の最初の組から最後の組まで順に行うと共に、色補正による画素値の変化量に基づく値である補正量を、各組の色補正について求める第2の手段と、補正順序の最後の組の色補正の終了後、各組の補正量の合計に基づく値により、第2の手段での色補正を繰り返すか否かを判定する第3の手段とを備えており、補正順序において、各カメラは、少なくとも1回は対象カメラとされ、第1番目を除き、参照カメラはそれ以前に対象カメラとされていることを特徴とする。
【0010】
本発明の色補正装置における他の実施形態によれば、
補正順序において、対象カメラは、次の組の参照カメラであることも好ましく、更に、隣接して配置されているカメラを、参照カメラと対象カメラの組とすることも好ましい。
【0011】
また、本発明の色補正装置における他の実施形態によれば、
第2の手段は、対象カメラが撮影した画像と参照カメラが撮影した画像の対応する画素を判定する対応点生成手段と、前記対応する画素の組に基づき、色補正前の画素値に対する色補正後の画素値を示すルックアップテーブルを生成し、ルックアップテーブルに基づき対象画像の色補正を行う補正手段とを備えており、補正量は、色補正前の画素値と、該色補正前の画素値に対する色補正後の画素値との差に基づく値であることも好ましい。なお、対応点生成手段は、対象カメラが撮影した第1から第mの画像、ここでmは1以上の整数、と、参照カメラがほぼ同時に撮影した第1から第mの画像の、同一番号の画像それぞれについて対応する画素を判定することも好ましい。
【0012】
更に、本発明の色補正装置における他の実施形態によれば、
補正手段は、前記対応する画素の組の画素値を平均とし、あらかじめ定めた値を分散とする2次元ガウス分布を、各画素の組に対して生成する2次元ガウス分布生成手段と、生成した2次元ガウス分布を総和することで、又は、生成した2次元ガウス分布に、その平均の2つの値の差が大きくなる程、小さくなる重みを乗じて総和することで、合計分布を求める合計分布生成手段と、合計分布の分布量に基づきxy平面上の各座標に分布値を設定し、画素値の最小値≦x≦画素値の最大値、である各xから、分布値に基づき1つの座標を選択し、選択した座標である選択座標のxの値を色補正前の、yの値を色補正後の画素値とするルックアップテーブルを生成するルックアップテーブル生成手段とを備えていることも好ましい。
【0013】
更に、本発明の色補正装置における他の実施形態によれば、
ルックアップテーブル生成手段は、各xについて、分布量の一番大きい座標を選択すること、或いは、xの値が1だけ異なる2つの座標を結ぶ線の傾きが、傾きが1からずれる程大きくなる調整係数を定義し、分布値を、合計分布の分布量が大きい程、小さくなる値とした場合、選択座標の分布値の総和と、選択座標間の調整係数の総和との合計が一番小さくなるように各選択座標を選択することも好ましい。
【0014】
本発明における色補正方法によれば、
複数のカメラで撮影した動画の各画像を、対象カメラに対して参照カメラとするカメラの組と、その順番を特定する情報である補正順序に基づき色補正する方法であって、補正順序において、各カメラは、少なくとも1回は対象カメラとされ、第1番目を除き、参照カメラはそれ以前に対象カメラとされており、参照カメラで撮影した参照画像に基づき、対象カメラで撮影した対象画像の色補正を行い、該対象画像を色補正後の対象画像に置き換えることを、補正順序の最初の組から最後の組まで順に行うと共に、色補正による画素値の変化量に基づく値である補正量を、各組の色補正について求める第1のステップと、第1のステップ終了後、各組の補正量の合計に基づく値により、第1のステップを更に繰り返すか否かを判定する第2のステップとを含んでいることを特徴とする。
【0015】
本発明におけるプログラムによれば、
コンピュータを前記色補正装置として機能させることを特徴とする。
【発明の効果】
【0016】
1つのカメラを固定的に参照カメラとするのではなく、参照カメラと対象カメラの組と、その順番を特定する補正順序をあらかじめ設けて置き、補正順序に従い各カメラが撮影した画像の色補正を行う。補正順序の第1番目を除き、参照カメラはそれ以前に対象カメラとしたものから選択し、各カメラを少なくとも1回は対象カメラとすることで、第1番目に参照カメラとした画像の色を基準として、他のカメラで撮影した画像の色補正を順次行う。ただし、色補正に直接使用する参照画像は、それぞれ異なるため、各組の色補正に対して補正量を算出しておき、その合計値に基づく値、例えば、平均値が所定値以下に集束するまで、補正順序に基づく色補正を繰り返す。
【0017】
この構成により、カメラの配置位置に係らず全カメラが撮影した画像の色の差を小さくすることができる。本発明においては、参照画像を撮影する参照カメラを固定的とする場合に問題となる、距離による補正品質劣化は発生しない。特に、対象カメラを、次の組の参照カメラとすることで、或いは、隣接して配置されているカメラを、参照カメラと対象カメラの組とすることで、色補正品質を更に向上させることができる。
【0018】
また、本発明は、対象画像と参照画像の対応する画素を判定して、対応する画素の組に基づき色補正を行うものであり、カラーパターンボードを用いるものではない。よって、光源位置や、明暗の差等の影響を受けることなく、種々の環境下での色補正に適用することができる。更に、画素の対応関係に基づき2次元ガウス分布を生成し、これにより、色補正を行うため、参照画像で影となっている対象物の色補正も可能である。
【発明を実施するための最良の形態】
【0019】
本発明を実施するための最良の実施形態について、以下では図面を用いて詳細に説明する。
【0020】
図8は、n台のカメラ、カメラ#1〜#nで同時に撮影した、それぞれ、m個の画像、つまり、フレームからなる動画像を表したものであり、同一フレーム番号は、ほぼ同時刻に撮影されたフレームを表している。本発明においては、色補正を行う対象画像と、色補正の基準とする参照画像は相対的である。つまり、対象画像として色補正したフレームを、後に参照画像として、他のフレームの色補正に使用する。このため、補正順序をあらかじめ定義しておく。
【0021】
補正順序とは、色補正を行う対象画像と、その対象画像の色補正のために使用する参照画像の組と、各組の色補正の順番を、撮影したカメラで特定したものである。図10(a)及び(b)は、カメラの配置を示す図であり、図11(a)及び(b)は、それぞれ、図10(a)及び(b)に示すカメラ配置に対する補正順序の例を示す図である。
【0022】
図11(a)の補正順序によると、まず、カメラ#2で撮影したフレームを対象画像とし、この対象画像を、隣接するカメラ#1で撮影したフレームに基づき色補正を行う。続いて、カメラ#3で撮影したフレームを対象画像とし、この対象画像を、隣接するカメラ#2の既に色補正されたフレームに基づき色補正を行う。以後、同様に、色補正を繰り返し、カメラ#1で撮影したフレームを対象画像とし、この対象画像を、隣接するカメラ#nの既に色補正されたフレームに基づき色補正を行うことで、補正順序は一巡する。
【0023】
また、図11(b)の補正順序によると、まず、カメラ#2で撮影したフレームを対象画像とし、この対象画像を、隣接するカメラ#1で撮影したフレームに基づき色補正を行う。続いて、カメラ#3で撮影したフレームを対象画像とし、この対象画像を、隣接するカメラ#2の既に色補正されたフレームに基づき色補正を行う。以後、同様に、色補正を繰り返し、カメラ#nで撮影したフレームを対象画像とし、この対象画像を、隣接するカメラ#n−1の既に色補正されたフレームに基づき色補正を行う。続いて、カメラ#n−1で撮影したフレームを対象画像とし、この対象画像を、隣接するカメラ#nの既に色補正されたフレームに基づき色補正を行う。以後、同様に、色補正を繰り返し、カメラ#1で撮影したフレームを対象画像とし、この対象画像を、隣接するカメラ#2の既に色補正されたフレームに基づき色補正を行うことで、補正順序は一巡する。
【0024】
図10に示す様に、補正順序は、カメラの配置位置に依存し、以下の条件の下、あらかじめ決定しておく。1番目の条件は、補正順序の第1番目を除き、参照カメラは、それ以前に、対象カメラとしたものから選択することであり、2番目の条件は、総てのカメラを、少なくとも1回は、対象カメラとすることである。更に、図11に示す様に、対象カメラとなったカメラを、次の参照カメラとすることは好ましい態様である。また、対象カメラと参照カメラ、それぞれの、配置位置は近い程好ましく、図10及び図11に示す様に、隣接して配置されているカメラを、参照カメラと対象カメラの組とすることが望ましい。
【0025】
図9は、本発明による色補正方法のフロー図である。まず、第1番目のフレーム(S91)を色補正対象とし、補正順序の一番目の参照画像と対象画像の組を選択する(S92)。つまり、図11(a)の補正順序を例にすると、参照画像であるカメラ#1のフレーム#1と、対象画像であるカメラ#2のフレーム#1の組を選択する。そして、対象画像を参照画像に基づき色補正する(S93)。また、このとき、併せて補正量を算出して記録しておく(S94)。なお、色補正の具体的な形態及び補正量の算出については後述する。
【0026】
処理した組が、補正順序の最後の組でない場合(S95)には、補正順序に従い次の参照画像と対象画像の組を選択(S96)して、以後、同様に色補正と、補正量の記録を行う。補正順序の最後の組に対する処理が終了した場合(S95)、図11(a)の補正順序を例にすると、対象画像であるカメラ#1のフレーム#1を、参照画像であるカメラ#nのフレーム#1に基づき色補正した後、補正量の平均値と閾値との比較を行う(S97)。なお、補正量の平均値は、各組の補正量の合計値を補正順序の組数で除した値である。補正量の平均値が閾値より大きい場合には、各カメラが撮影した第1番目のフレームの補正順序に基づく色補正を、補正量の平均値が閾値以下となるまで繰り返し行い、補正量の平均値が閾値以下となることにより、第1番目のフレームの色補正が終了する。その後、第2〜第m番目のフレームに対しても、補正順序に従い同じ処理を行う(S98及びS99)。
【0027】
図1は、本発明による色補正装置のブロック図である。図1によると色補正装置は、保存部1と、対応点生成部2と、補正部3と、制御部4とを備えている。保存部1は、複数のカメラ#1〜#nが撮影した動画像を構成するm個の画像、つまりフレームを、それぞれ、保存している。制御部4は、補正順序を保持しており、補正順序に従い、保存部1が保存する各画像から、対象画像と参照画像の組を対応点生成部2に入力させる。また、制御部4は、補正部3が対象画像を、参照画像に基づき色補正した際に出力する補正量を記録し、補正順序が一巡した段階で、補正量の平均値を計算して、あらかじめ設定されている閾値と比較する。図9のフロー図で説明した様に、制御部4は、補正量の平均値と閾値との比較結果に応じて、再度同じ番号のフレームの補正処理を行うか、次の番号のフレームの補正処理を行うかを決定し、対応点生成部2に入力させるフレーム、つまり、対象及び参照画像の制御を行う。
【0028】
図2は、対応点生成部2のブロック図である。図2によると、対応点生成部2は、フィルタ部21と、対応点探索部22と、調整部23と、マッピングテーブル生成部24とを備えている。フィルタ部21は、対象画像と参照画像、それぞれに、ガウスフィルタによるフィルタリングを数回適用する。本処理により、色成分の空間方向の変化が滑らかになり、後段での対応点抽出の精度、特に、エッジ領域における対応点抽出の精度が向上する。
【0029】
対応点探索部22は、例えば、SIFT法(Scale Invariant Feature Transfom)等により、対象画像と参照画像の対応する画素をそれぞれ探索し、対応する画素の組を出力する。
【0030】
調整部23は、対応点探索部22が探索した、対応する画素の組のうち、カメラのパラメータ等から明らかに誤りと判定できる画素の組を削除する。例えば、参照画像及び対象画像を撮影した両カメラの画角と方向等から、参照画像と対象画像の画素の位置が、ほぼ数十画素程度のずれしかないと判定できる場合において、対応点探索部22が、対象画像の右上の画素と、参照画像の左下の画素が対応すると出力した場合には、この出力は誤りと判断でき、この対応関係を調整部23は除去する。
【0031】
調整部23が出力する調整後の対象画像の画素と参照画像の画素との対応関係に基づき、マッピングテーブル生成部24は、赤、緑、青の色成分別に、参照画像の画素の画素値と、その参照画像の画素に対応する対象画像の画素の画素値を示す表である、マッピングテーブルを出力する。図4は、ある1つの色成分に対するマッピングテーブルを示す図である。図4によると、対応する参照画像と対象画像の画素の組がk個あり、例えば、参照画像のある画素の画素値が60であり、その画素に対応する対象画像の画素の画素値が40であることを、マッピングテーブルは示している。
【0032】
図3は、補正部3のブロック図である。図3によると、補正部3は、2次元ガウス分布生成部31と、合計分布生成部32と、ルックアップテーブル生成部33と、対象画像補正部34とを備えている。
【0033】
2次元ガウス分布生成部31は、マッピングテーブルの画素の組それぞれに対して、その組の画素値を平均とし、あらかじめ決定しておく値を分散とする2次元ガウス分布を生成する。なお、以下の説明においては、参照画像をy軸、対象画像をx軸として2次元ガウス分布を生成する形態にて説明を行うが、参照画像をx軸、対象画像をy軸として2次元ガウス分布を生成しても良い。例えば、図5に示す様に、図4に示す第1番目〜第k番目の画素の組を有するマッピングテーブルに対して、2次元ガウス分布G1〜Gkを生成する。ここで、例えば、G1の平均は、(x,y)=(40,60)である。なお、分散は、本発明による色補正を種々の画像に対し適用することであらかじめ実験的に求めておく。
【0034】
合計分布生成部32は、2次元ガウス分布生成部31が生成した、2次元ガウス分布それぞれの重みを求め、各2次元ガウス分布とその重みとの積の総和である合計分布を求める。例えば、図5に示す様に重みを設定した場合、合計分布は、
(235G1+240G2+175G3+・・・+251Gk)/255
となる。重みは必須ではないが、設ける場合には、参照画像と対象画像の画素値の差が大きい程、小さくなる値とする。図5においては、画素値の最大値を255とし、
重み=(255−|(参照画像の画素値)−(対象画像の画素値)|)/255
で求めている。
【0035】
参照画像と対象画像の画素値の差が大きい程、小さくなる重みを使用することで、参照画像の画素値に対して、対象画像の画素値が大きくずれている画素の組による色補正への影響が小さくなる、つまり、重みを調整することで、画素値が大きく乖離している画素の組が、色補正に与える影響を調整することができる。なお、重みを設けない場合には、合計分布は、各2次元ガウス分布の単純和による求める。
【0036】
ルックアップテーブル生成部33は、色補正前の画素値に対する色補正後の画素値を示すルックアップテーブルを生成する。以下に、ルックアップテーブル生成の詳細について説明する。
【0037】
まず、合計分布生成部32が生成した合計分布に基づき、xy平面の各座標に、合計分布の分布量に基づく分布値を設定する。図6は、合計分布に基づき、xy平面上に分布値を設定した状態を示す図である。なお、合計分布は無次元の値であるため、合計分布に基づくxy平面上の分布値の設定に使用するスケールは任意である。図6においては、合計分布の分布量が大きい程、分布値が小さくなる様にスケールを設定している。つまり、一般的には、確率の高いxとyの値が、ほぼ同じである領域の分布値は小さく、xとyの差が大きい領域の分布値を大きくしている。これは、後に詳細を説明する様に、分布値に基づくエネルギー値を定義し、このエネルギー値の合計を小さくするパスを動的計画法により求めて、ルックアップテーブルとするためであり、負の値にすることは必須ではない。なお、図6は画素値の最大値が255である場合であり、よって、(x,y)=(0,0)〜(255,255)の256×256の点について、分布値を求めている。
【0038】
続いて、ルックアップテーブル生成部33は、総てのx軸の値、図6においてはx=0〜255それぞれに対して、1つの座標を、その分布値に基づき選択し、選択した座標のxの値を色補正前の画素値とし、yの値を色補正後の画素値としてルックアップテーブルを生成する。
【0039】
以下では、簡単のため、画素値の最大値を3とし、図6の(0,0)〜(3,3)の部分のみを用いて、各xの値から、座標を1つ選択する手順を、図7を使用して説明する。なお、本実施形態においては、調整係数と呼ぶパラメータを定義する。調整係数は、xの値が1だけ違う2つの座標に依存する値であり、座標(x、α)に対する座標(x+1、β)の調整係数Ajα,βは、座標(x、α)と座標(x+1、β)を結ぶ線の、傾き1からのずれが大きくなるほど、大きくなる値とし、本実施形態においては、
調整係数Ajα,β=(β−α−1)2
とする。なお、上記調整係数に更に定数を乗じる形態であっても良い。
【0040】
また、座標(x0,y0)のエネルギー値Ex0,y0を、以下の通り定義する。
Ex0,y0=Min(Ex0−1,p+Dx0,y0+Ajp,y0)、for 0≦p≦3 (1)
ここで、Dx0,y0は、座標(x0,y0)の分布値であり、Minは、括弧内の最小値を選択する関数である。
【0041】
ルックアップテーブル生成部33は、x=0の各座標のエネルギー値をまず求める。このため、始点として座標(-1,−1)に、分布値が“0”の座標を仮定する。x=−1には座標が1つだけであるため、x=0の各座標のエネルギー値は、各座標の分布値と、座標(−1,−1)に対する各座標の調整係数の和で求めることができる。図7において、各座標位置に示す数字は、上から順に、分布値、調整係数、エネルギー値、パスである。ここで、パスとは、式(1)の括弧内の値を最小とするpの値、つまり、当該座標のエネルギー値の計算に使用した、x軸で1つ手前にある座標のyの値である。
【0042】
続いて、x=0の各座標のエネルギー値に基づき、x=1の各座標のエネルギー値を、式(1)に基づき求める。例えば、座標(1,0)について、式(1)の括弧内の値は、p=0とすると、−60+1−30=−89であり、p=1とすると、−39+4−30=−65であり、p=2とすると、−46+9−30=−67であり、p=3とすると、−21+16−30=−35である。よって、p=0のときの値が最小であるため、調整係数=1であり、そのエネルギー値が−89となり、パスは(0)となる。
【0043】
以後、同様に、x=3まで順にエネルギー値を求める。最後に、パスを集束させるため、座標(4,4)の位置に分布値が0の座標を設け、この座標のエネルギー値と、パスを求める。最後に、x=4から、パスを逆順に辿った座標をルックアップテーブルとして記録する。つまり、図7の例においては、太線で囲った座標である(0,0)、(1,2)、(2,3)、(3,3)が選択されて、ルックアップテールに記録される。この様に、動的計画法で、最適パスを選択して補正を行う。
【0044】
対象画像の画素値が、参照画像の画素値に対して単純にシフトしている状況、つまり、明るさのみが違うのであれば、選択した座標、つまり、ルックアップテーブルに記録する座標を結ぶ線は傾き1の直線となる。通常、カメラ間での色の差は、明るさの単純なシフトが支配的であり、よって、ルックアップテーブルに記録する座標を結ぶ個々の線が、傾き1から大きくずれることはまれとなる。調整係数は、傾き1から大きくずれたパスを選択しにくくさせるための重みであり、調整係数の値を大きくする程、傾き1の線に沿った座標が選択されることになる。なお、調整係数の使用は必須ではなく、使用しない場合には、各xの値について、分布値が最小である、つまり、分布量が最も大きい座標を単に選択してルックアップテーブルとする。
【0045】
また、ルックアップテーブル生成部33は、生成したルックアップテーブルから補正量を出力する。補正量は、ルックアップテーブルの各座標の、xとyの値が等しい座標からのずれが大きくなるほど大きくなる値であり、ルックアップテーブルに含まれる各座標を(xi、yi)とすると、例えば、
補正量=ΣABS(yi−xi)
となる。なお、ABSは括弧内の値の絶対値を求める関数である。また、ルックアップテーブルに含まれる座標の調整係数の合計値、つまり、
補正量=Σ(yi−xi)2
でも良い。
【0046】
最後に、対象画像補正部34は、ルックアップテーブルに基づき対象画像の色補正を行い、色補正後の対象画像を保存部1に保存する。なお、以後の各処理においては、色補正した対象画像を使用し、色補正前の対象画像は使用しない。よって、色補正前の対象画像については、好ましくは保存部1から消去、つまり、色補正前の対象画像を色補正後の対象画像で置き換える。色補正は、対象画像の画素値をルックアップテーブルに基づき変更することにより、例えば、図7に示すマッピングテーブルの場合、対象画像の総ての画素について、画素値0、1、2、3を、それぞれ、画素値0、2、3、3に変更することにより行う。
【0047】
なお、式(1)において、総てのpの値についてエネルギー値を求めて最小値を選択する形態にて説明をしたが、傾きが負となる座標については考慮しない形態であっても良い。つまり、(x0,q)である座標については、(x0−1,p)、0≦p≦qからのエネルギー値のみを計算して、その最小値を選択する形態であって良い。これにより、パスが上下にジグザグした場合に生ずる可能性がある補正品質劣化を防ぐことができる。
【0048】
以上、本発明は、カラーパターンボードによるものではなく、よって、屋外や屋内に係らず適用することができる。また、参照画像を撮影するカメラを固定とするのではく、補正順序に基づき、各カメラを、相対的に参照カメラ、対象カメラとすることで、1台のカメラのみを参照カメラとする場合における距離による色補正品質の劣化は生じず、全カメラ間の色のばらつきを抑制することができる。更に、対象画像の画素値を、参照画像の対応する画像の画素値のみに基づき色補正するのではなく、対応関係に基づきガウス分布を生成し、これにより、色補正を行うため、参照画像で影となっている対象物の色補正も可能である。
【0049】
また、対応する画素ごとに生成した2次元ガウス分布から合計分布を求める際に、重みを使用し、重みを調整することで、画素値が大きく異なる組が与える影響を簡易に調整することでき、種々の環境において安定した色補正が可能になる。
【0050】
上述した実施形態において、マッピングテーブルは、処理対象であるフレーム番号の参照画像と対象画像から生成していたが、対象カメラと参照カメラが撮影した他のフレーム番号の組も利用可能である。例えば、カメラ#1のフレーム#1を参照画像として、カメラ#2のフレーム#1の色補正を行うに当たり、カメラ#1のフレーム#1とカメラ#2のフレーム#1の対応画素のみならず、カメラ#1のフレーム#2とカメラ#2のフレーム#2の対応画素や、カメラ#1のフレーム#3とカメラ#2のフレーム#3の対応画素といった、他のフレーム番号の組の一部又は全部を利用してマッピングテーブルを生成することができる。この構成により、時間方向の対応画素もルックアップテーブル生成に利用され、よって、安定した色補正が可能になる。
【0051】
なお、本発明による色補正装置は、上記色補正装置の各部としてコンピュータを機能させるコンピュータプログラムにより実現することができる。また、本発明により色補正方法は、コンピュータに上記色補正方法の処理を実行させるコンピュータプログラムにより実現することができる。このコンピュータプログラムは、コンピュータが読み取り可能な記憶媒体に記憶されて、又は、ネットワーク経由で配布が可能なものである。更に、本発明は、ハードウェアのみや、ソフトウェアのみならず、それらの組合せによっても実現可能である。
【図面の簡単な説明】
【0052】
【図1】本発明による色補正装置のブロック図である。
【図2】対応点生成部のブロック図である。
【図3】補正部のブロック図である。
【図4】マッピングテーブルを示す図である。
【図5】2次元ガウス分布部生成部及び合計分布生成部の処理を説明する図である。
【図6】合計分布に基づき、xy平面上に値を設定した状態を示す図である。
【図7】ルックアップテーブル生成の説明図である。
【図8】本発明による色補正方法の説明図である。
【図9】本発明による色補正方法のフロー図である。
【図10】補正順序の説明図である。
【図11】補正順序を示す図である。
【符号の説明】
【0053】
1 保存部
2 対応点生成部
3 補正部
4 制御部
21 フィルタ部
22 対応点探索部
23 調整部
24 マッピングテーブル生成部
31 2次元ガウス分布生成部
32 合計分布生成部
33 ルックアップテーブル生成部
34 対象画像補正部
【技術分野】
【0001】
本発明は、複数のカメラで撮影した画像の色補正技術に関する。
【背景技術】
【0002】
複数の異なる位置に設置したカメラで動画を撮影するマルチビューカメラシステムにおいては、個々のカメラの特性や、設置位置に対する光源の方向の影響等により、各カメラが撮影する画像の色彩は異なるものとなる。この違いを補償するため、撮影した画像の色補正が必要となり、様々な色補正の方法が提案されている(例えば、非特許文献1から4参照。)。
【0003】
【非特許文献1】Neel Joshi et al.、“Automatic Color Calibration for Large Camera Arrays”、UCSD CSE Technical Report、CS2005−0821、2005年
【非特許文献2】Kwanghoon Sohn et al.、“H.264/AVC−compatible Multi−view Video Coding”、ISO/IEC JTC1/SC29/WG11 M12874、2006年
【非特許文献3】Yushan Chen.、“Ni Luminance and Chrominance Correction for Multi−View Video Using Simplified Color Error Model”、PCS2006、pp.2−17、2006年
【非特許文献4】Kenji Yamamoto et al.、“Colour Correction for Multiple−camera System by using Correspondences”、映像情報メディア学会誌 Vol.61、No.2、Ppp.1〜9、2007年
【発明の開示】
【発明が解決しようとする課題】
【0004】
非特許文献1から3に記載の方法は、いわゆる、カラーパターンボード(Color Pattern Board)を用いる方法である。つまり、参照画像の画素値のヒストグラムと、対象画像の画素値のヒストグラムに基づき、両画像の画素値間の変換式を求め、求めた変換式に基づき対象画像の色補正を行うものである。
【0005】
しかしながら、カラーパターンボードを用いる方法は、光源方向により、各カメラが撮影する画像の明暗差が大きい状況等、参照画像の画素値のヒストグラムと、対象画像の画素値のヒストグラムとの相関を見出すことが難しい場合があり、色補正の精度が劣化するという問題がある。また、例えば、屋外での撮影の様に、広範囲の領域を撮影した画像からカラーパターンボードを生成することが難しいという問題もある。
【0006】
一方、非特許文献4に記載の方法は、参照画像と対象画像の同一対象物を捉えている画素、つまり、対応する画素を探索し、対象画像の画素を、参照画像の対応する画素に基づき色補正するものであり、上述したカラーパターンボードを用いる方法による問題は生じない。
【0007】
しかしながら、非特許文献4に記載の方法は、1つのカメラで撮影した画像を参照画像とし、残りの総てのカメラで撮影した画像を対象画像とするものであり、参照画像を撮影するカメラから離れるに従い、対象画像に対する色補正品質が劣化するという問題がある。また、位置関係によっては、対象画像には存在するが、参照画像からは隠れた位置となる対象物が発生し、この対象物の色補正を行うことができないという問題もある。
【0008】
したがって、本発明は、上述した問題を解決する色補正装置、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明における色補正装置によれば、
複数のカメラで撮影した動画の各画像の色補正を行う色補正装置であって、対象カメラに対して参照カメラとするカメラの組と、その順番を特定する情報である補正順序を保持する第1の手段と、参照カメラで撮影した参照画像に基づき、対象カメラで撮影した対象画像の色補正を行い、該対象画像を、色補正後の対象画像に置き換えることを、補正順序の最初の組から最後の組まで順に行うと共に、色補正による画素値の変化量に基づく値である補正量を、各組の色補正について求める第2の手段と、補正順序の最後の組の色補正の終了後、各組の補正量の合計に基づく値により、第2の手段での色補正を繰り返すか否かを判定する第3の手段とを備えており、補正順序において、各カメラは、少なくとも1回は対象カメラとされ、第1番目を除き、参照カメラはそれ以前に対象カメラとされていることを特徴とする。
【0010】
本発明の色補正装置における他の実施形態によれば、
補正順序において、対象カメラは、次の組の参照カメラであることも好ましく、更に、隣接して配置されているカメラを、参照カメラと対象カメラの組とすることも好ましい。
【0011】
また、本発明の色補正装置における他の実施形態によれば、
第2の手段は、対象カメラが撮影した画像と参照カメラが撮影した画像の対応する画素を判定する対応点生成手段と、前記対応する画素の組に基づき、色補正前の画素値に対する色補正後の画素値を示すルックアップテーブルを生成し、ルックアップテーブルに基づき対象画像の色補正を行う補正手段とを備えており、補正量は、色補正前の画素値と、該色補正前の画素値に対する色補正後の画素値との差に基づく値であることも好ましい。なお、対応点生成手段は、対象カメラが撮影した第1から第mの画像、ここでmは1以上の整数、と、参照カメラがほぼ同時に撮影した第1から第mの画像の、同一番号の画像それぞれについて対応する画素を判定することも好ましい。
【0012】
更に、本発明の色補正装置における他の実施形態によれば、
補正手段は、前記対応する画素の組の画素値を平均とし、あらかじめ定めた値を分散とする2次元ガウス分布を、各画素の組に対して生成する2次元ガウス分布生成手段と、生成した2次元ガウス分布を総和することで、又は、生成した2次元ガウス分布に、その平均の2つの値の差が大きくなる程、小さくなる重みを乗じて総和することで、合計分布を求める合計分布生成手段と、合計分布の分布量に基づきxy平面上の各座標に分布値を設定し、画素値の最小値≦x≦画素値の最大値、である各xから、分布値に基づき1つの座標を選択し、選択した座標である選択座標のxの値を色補正前の、yの値を色補正後の画素値とするルックアップテーブルを生成するルックアップテーブル生成手段とを備えていることも好ましい。
【0013】
更に、本発明の色補正装置における他の実施形態によれば、
ルックアップテーブル生成手段は、各xについて、分布量の一番大きい座標を選択すること、或いは、xの値が1だけ異なる2つの座標を結ぶ線の傾きが、傾きが1からずれる程大きくなる調整係数を定義し、分布値を、合計分布の分布量が大きい程、小さくなる値とした場合、選択座標の分布値の総和と、選択座標間の調整係数の総和との合計が一番小さくなるように各選択座標を選択することも好ましい。
【0014】
本発明における色補正方法によれば、
複数のカメラで撮影した動画の各画像を、対象カメラに対して参照カメラとするカメラの組と、その順番を特定する情報である補正順序に基づき色補正する方法であって、補正順序において、各カメラは、少なくとも1回は対象カメラとされ、第1番目を除き、参照カメラはそれ以前に対象カメラとされており、参照カメラで撮影した参照画像に基づき、対象カメラで撮影した対象画像の色補正を行い、該対象画像を色補正後の対象画像に置き換えることを、補正順序の最初の組から最後の組まで順に行うと共に、色補正による画素値の変化量に基づく値である補正量を、各組の色補正について求める第1のステップと、第1のステップ終了後、各組の補正量の合計に基づく値により、第1のステップを更に繰り返すか否かを判定する第2のステップとを含んでいることを特徴とする。
【0015】
本発明におけるプログラムによれば、
コンピュータを前記色補正装置として機能させることを特徴とする。
【発明の効果】
【0016】
1つのカメラを固定的に参照カメラとするのではなく、参照カメラと対象カメラの組と、その順番を特定する補正順序をあらかじめ設けて置き、補正順序に従い各カメラが撮影した画像の色補正を行う。補正順序の第1番目を除き、参照カメラはそれ以前に対象カメラとしたものから選択し、各カメラを少なくとも1回は対象カメラとすることで、第1番目に参照カメラとした画像の色を基準として、他のカメラで撮影した画像の色補正を順次行う。ただし、色補正に直接使用する参照画像は、それぞれ異なるため、各組の色補正に対して補正量を算出しておき、その合計値に基づく値、例えば、平均値が所定値以下に集束するまで、補正順序に基づく色補正を繰り返す。
【0017】
この構成により、カメラの配置位置に係らず全カメラが撮影した画像の色の差を小さくすることができる。本発明においては、参照画像を撮影する参照カメラを固定的とする場合に問題となる、距離による補正品質劣化は発生しない。特に、対象カメラを、次の組の参照カメラとすることで、或いは、隣接して配置されているカメラを、参照カメラと対象カメラの組とすることで、色補正品質を更に向上させることができる。
【0018】
また、本発明は、対象画像と参照画像の対応する画素を判定して、対応する画素の組に基づき色補正を行うものであり、カラーパターンボードを用いるものではない。よって、光源位置や、明暗の差等の影響を受けることなく、種々の環境下での色補正に適用することができる。更に、画素の対応関係に基づき2次元ガウス分布を生成し、これにより、色補正を行うため、参照画像で影となっている対象物の色補正も可能である。
【発明を実施するための最良の形態】
【0019】
本発明を実施するための最良の実施形態について、以下では図面を用いて詳細に説明する。
【0020】
図8は、n台のカメラ、カメラ#1〜#nで同時に撮影した、それぞれ、m個の画像、つまり、フレームからなる動画像を表したものであり、同一フレーム番号は、ほぼ同時刻に撮影されたフレームを表している。本発明においては、色補正を行う対象画像と、色補正の基準とする参照画像は相対的である。つまり、対象画像として色補正したフレームを、後に参照画像として、他のフレームの色補正に使用する。このため、補正順序をあらかじめ定義しておく。
【0021】
補正順序とは、色補正を行う対象画像と、その対象画像の色補正のために使用する参照画像の組と、各組の色補正の順番を、撮影したカメラで特定したものである。図10(a)及び(b)は、カメラの配置を示す図であり、図11(a)及び(b)は、それぞれ、図10(a)及び(b)に示すカメラ配置に対する補正順序の例を示す図である。
【0022】
図11(a)の補正順序によると、まず、カメラ#2で撮影したフレームを対象画像とし、この対象画像を、隣接するカメラ#1で撮影したフレームに基づき色補正を行う。続いて、カメラ#3で撮影したフレームを対象画像とし、この対象画像を、隣接するカメラ#2の既に色補正されたフレームに基づき色補正を行う。以後、同様に、色補正を繰り返し、カメラ#1で撮影したフレームを対象画像とし、この対象画像を、隣接するカメラ#nの既に色補正されたフレームに基づき色補正を行うことで、補正順序は一巡する。
【0023】
また、図11(b)の補正順序によると、まず、カメラ#2で撮影したフレームを対象画像とし、この対象画像を、隣接するカメラ#1で撮影したフレームに基づき色補正を行う。続いて、カメラ#3で撮影したフレームを対象画像とし、この対象画像を、隣接するカメラ#2の既に色補正されたフレームに基づき色補正を行う。以後、同様に、色補正を繰り返し、カメラ#nで撮影したフレームを対象画像とし、この対象画像を、隣接するカメラ#n−1の既に色補正されたフレームに基づき色補正を行う。続いて、カメラ#n−1で撮影したフレームを対象画像とし、この対象画像を、隣接するカメラ#nの既に色補正されたフレームに基づき色補正を行う。以後、同様に、色補正を繰り返し、カメラ#1で撮影したフレームを対象画像とし、この対象画像を、隣接するカメラ#2の既に色補正されたフレームに基づき色補正を行うことで、補正順序は一巡する。
【0024】
図10に示す様に、補正順序は、カメラの配置位置に依存し、以下の条件の下、あらかじめ決定しておく。1番目の条件は、補正順序の第1番目を除き、参照カメラは、それ以前に、対象カメラとしたものから選択することであり、2番目の条件は、総てのカメラを、少なくとも1回は、対象カメラとすることである。更に、図11に示す様に、対象カメラとなったカメラを、次の参照カメラとすることは好ましい態様である。また、対象カメラと参照カメラ、それぞれの、配置位置は近い程好ましく、図10及び図11に示す様に、隣接して配置されているカメラを、参照カメラと対象カメラの組とすることが望ましい。
【0025】
図9は、本発明による色補正方法のフロー図である。まず、第1番目のフレーム(S91)を色補正対象とし、補正順序の一番目の参照画像と対象画像の組を選択する(S92)。つまり、図11(a)の補正順序を例にすると、参照画像であるカメラ#1のフレーム#1と、対象画像であるカメラ#2のフレーム#1の組を選択する。そして、対象画像を参照画像に基づき色補正する(S93)。また、このとき、併せて補正量を算出して記録しておく(S94)。なお、色補正の具体的な形態及び補正量の算出については後述する。
【0026】
処理した組が、補正順序の最後の組でない場合(S95)には、補正順序に従い次の参照画像と対象画像の組を選択(S96)して、以後、同様に色補正と、補正量の記録を行う。補正順序の最後の組に対する処理が終了した場合(S95)、図11(a)の補正順序を例にすると、対象画像であるカメラ#1のフレーム#1を、参照画像であるカメラ#nのフレーム#1に基づき色補正した後、補正量の平均値と閾値との比較を行う(S97)。なお、補正量の平均値は、各組の補正量の合計値を補正順序の組数で除した値である。補正量の平均値が閾値より大きい場合には、各カメラが撮影した第1番目のフレームの補正順序に基づく色補正を、補正量の平均値が閾値以下となるまで繰り返し行い、補正量の平均値が閾値以下となることにより、第1番目のフレームの色補正が終了する。その後、第2〜第m番目のフレームに対しても、補正順序に従い同じ処理を行う(S98及びS99)。
【0027】
図1は、本発明による色補正装置のブロック図である。図1によると色補正装置は、保存部1と、対応点生成部2と、補正部3と、制御部4とを備えている。保存部1は、複数のカメラ#1〜#nが撮影した動画像を構成するm個の画像、つまりフレームを、それぞれ、保存している。制御部4は、補正順序を保持しており、補正順序に従い、保存部1が保存する各画像から、対象画像と参照画像の組を対応点生成部2に入力させる。また、制御部4は、補正部3が対象画像を、参照画像に基づき色補正した際に出力する補正量を記録し、補正順序が一巡した段階で、補正量の平均値を計算して、あらかじめ設定されている閾値と比較する。図9のフロー図で説明した様に、制御部4は、補正量の平均値と閾値との比較結果に応じて、再度同じ番号のフレームの補正処理を行うか、次の番号のフレームの補正処理を行うかを決定し、対応点生成部2に入力させるフレーム、つまり、対象及び参照画像の制御を行う。
【0028】
図2は、対応点生成部2のブロック図である。図2によると、対応点生成部2は、フィルタ部21と、対応点探索部22と、調整部23と、マッピングテーブル生成部24とを備えている。フィルタ部21は、対象画像と参照画像、それぞれに、ガウスフィルタによるフィルタリングを数回適用する。本処理により、色成分の空間方向の変化が滑らかになり、後段での対応点抽出の精度、特に、エッジ領域における対応点抽出の精度が向上する。
【0029】
対応点探索部22は、例えば、SIFT法(Scale Invariant Feature Transfom)等により、対象画像と参照画像の対応する画素をそれぞれ探索し、対応する画素の組を出力する。
【0030】
調整部23は、対応点探索部22が探索した、対応する画素の組のうち、カメラのパラメータ等から明らかに誤りと判定できる画素の組を削除する。例えば、参照画像及び対象画像を撮影した両カメラの画角と方向等から、参照画像と対象画像の画素の位置が、ほぼ数十画素程度のずれしかないと判定できる場合において、対応点探索部22が、対象画像の右上の画素と、参照画像の左下の画素が対応すると出力した場合には、この出力は誤りと判断でき、この対応関係を調整部23は除去する。
【0031】
調整部23が出力する調整後の対象画像の画素と参照画像の画素との対応関係に基づき、マッピングテーブル生成部24は、赤、緑、青の色成分別に、参照画像の画素の画素値と、その参照画像の画素に対応する対象画像の画素の画素値を示す表である、マッピングテーブルを出力する。図4は、ある1つの色成分に対するマッピングテーブルを示す図である。図4によると、対応する参照画像と対象画像の画素の組がk個あり、例えば、参照画像のある画素の画素値が60であり、その画素に対応する対象画像の画素の画素値が40であることを、マッピングテーブルは示している。
【0032】
図3は、補正部3のブロック図である。図3によると、補正部3は、2次元ガウス分布生成部31と、合計分布生成部32と、ルックアップテーブル生成部33と、対象画像補正部34とを備えている。
【0033】
2次元ガウス分布生成部31は、マッピングテーブルの画素の組それぞれに対して、その組の画素値を平均とし、あらかじめ決定しておく値を分散とする2次元ガウス分布を生成する。なお、以下の説明においては、参照画像をy軸、対象画像をx軸として2次元ガウス分布を生成する形態にて説明を行うが、参照画像をx軸、対象画像をy軸として2次元ガウス分布を生成しても良い。例えば、図5に示す様に、図4に示す第1番目〜第k番目の画素の組を有するマッピングテーブルに対して、2次元ガウス分布G1〜Gkを生成する。ここで、例えば、G1の平均は、(x,y)=(40,60)である。なお、分散は、本発明による色補正を種々の画像に対し適用することであらかじめ実験的に求めておく。
【0034】
合計分布生成部32は、2次元ガウス分布生成部31が生成した、2次元ガウス分布それぞれの重みを求め、各2次元ガウス分布とその重みとの積の総和である合計分布を求める。例えば、図5に示す様に重みを設定した場合、合計分布は、
(235G1+240G2+175G3+・・・+251Gk)/255
となる。重みは必須ではないが、設ける場合には、参照画像と対象画像の画素値の差が大きい程、小さくなる値とする。図5においては、画素値の最大値を255とし、
重み=(255−|(参照画像の画素値)−(対象画像の画素値)|)/255
で求めている。
【0035】
参照画像と対象画像の画素値の差が大きい程、小さくなる重みを使用することで、参照画像の画素値に対して、対象画像の画素値が大きくずれている画素の組による色補正への影響が小さくなる、つまり、重みを調整することで、画素値が大きく乖離している画素の組が、色補正に与える影響を調整することができる。なお、重みを設けない場合には、合計分布は、各2次元ガウス分布の単純和による求める。
【0036】
ルックアップテーブル生成部33は、色補正前の画素値に対する色補正後の画素値を示すルックアップテーブルを生成する。以下に、ルックアップテーブル生成の詳細について説明する。
【0037】
まず、合計分布生成部32が生成した合計分布に基づき、xy平面の各座標に、合計分布の分布量に基づく分布値を設定する。図6は、合計分布に基づき、xy平面上に分布値を設定した状態を示す図である。なお、合計分布は無次元の値であるため、合計分布に基づくxy平面上の分布値の設定に使用するスケールは任意である。図6においては、合計分布の分布量が大きい程、分布値が小さくなる様にスケールを設定している。つまり、一般的には、確率の高いxとyの値が、ほぼ同じである領域の分布値は小さく、xとyの差が大きい領域の分布値を大きくしている。これは、後に詳細を説明する様に、分布値に基づくエネルギー値を定義し、このエネルギー値の合計を小さくするパスを動的計画法により求めて、ルックアップテーブルとするためであり、負の値にすることは必須ではない。なお、図6は画素値の最大値が255である場合であり、よって、(x,y)=(0,0)〜(255,255)の256×256の点について、分布値を求めている。
【0038】
続いて、ルックアップテーブル生成部33は、総てのx軸の値、図6においてはx=0〜255それぞれに対して、1つの座標を、その分布値に基づき選択し、選択した座標のxの値を色補正前の画素値とし、yの値を色補正後の画素値としてルックアップテーブルを生成する。
【0039】
以下では、簡単のため、画素値の最大値を3とし、図6の(0,0)〜(3,3)の部分のみを用いて、各xの値から、座標を1つ選択する手順を、図7を使用して説明する。なお、本実施形態においては、調整係数と呼ぶパラメータを定義する。調整係数は、xの値が1だけ違う2つの座標に依存する値であり、座標(x、α)に対する座標(x+1、β)の調整係数Ajα,βは、座標(x、α)と座標(x+1、β)を結ぶ線の、傾き1からのずれが大きくなるほど、大きくなる値とし、本実施形態においては、
調整係数Ajα,β=(β−α−1)2
とする。なお、上記調整係数に更に定数を乗じる形態であっても良い。
【0040】
また、座標(x0,y0)のエネルギー値Ex0,y0を、以下の通り定義する。
Ex0,y0=Min(Ex0−1,p+Dx0,y0+Ajp,y0)、for 0≦p≦3 (1)
ここで、Dx0,y0は、座標(x0,y0)の分布値であり、Minは、括弧内の最小値を選択する関数である。
【0041】
ルックアップテーブル生成部33は、x=0の各座標のエネルギー値をまず求める。このため、始点として座標(-1,−1)に、分布値が“0”の座標を仮定する。x=−1には座標が1つだけであるため、x=0の各座標のエネルギー値は、各座標の分布値と、座標(−1,−1)に対する各座標の調整係数の和で求めることができる。図7において、各座標位置に示す数字は、上から順に、分布値、調整係数、エネルギー値、パスである。ここで、パスとは、式(1)の括弧内の値を最小とするpの値、つまり、当該座標のエネルギー値の計算に使用した、x軸で1つ手前にある座標のyの値である。
【0042】
続いて、x=0の各座標のエネルギー値に基づき、x=1の各座標のエネルギー値を、式(1)に基づき求める。例えば、座標(1,0)について、式(1)の括弧内の値は、p=0とすると、−60+1−30=−89であり、p=1とすると、−39+4−30=−65であり、p=2とすると、−46+9−30=−67であり、p=3とすると、−21+16−30=−35である。よって、p=0のときの値が最小であるため、調整係数=1であり、そのエネルギー値が−89となり、パスは(0)となる。
【0043】
以後、同様に、x=3まで順にエネルギー値を求める。最後に、パスを集束させるため、座標(4,4)の位置に分布値が0の座標を設け、この座標のエネルギー値と、パスを求める。最後に、x=4から、パスを逆順に辿った座標をルックアップテーブルとして記録する。つまり、図7の例においては、太線で囲った座標である(0,0)、(1,2)、(2,3)、(3,3)が選択されて、ルックアップテールに記録される。この様に、動的計画法で、最適パスを選択して補正を行う。
【0044】
対象画像の画素値が、参照画像の画素値に対して単純にシフトしている状況、つまり、明るさのみが違うのであれば、選択した座標、つまり、ルックアップテーブルに記録する座標を結ぶ線は傾き1の直線となる。通常、カメラ間での色の差は、明るさの単純なシフトが支配的であり、よって、ルックアップテーブルに記録する座標を結ぶ個々の線が、傾き1から大きくずれることはまれとなる。調整係数は、傾き1から大きくずれたパスを選択しにくくさせるための重みであり、調整係数の値を大きくする程、傾き1の線に沿った座標が選択されることになる。なお、調整係数の使用は必須ではなく、使用しない場合には、各xの値について、分布値が最小である、つまり、分布量が最も大きい座標を単に選択してルックアップテーブルとする。
【0045】
また、ルックアップテーブル生成部33は、生成したルックアップテーブルから補正量を出力する。補正量は、ルックアップテーブルの各座標の、xとyの値が等しい座標からのずれが大きくなるほど大きくなる値であり、ルックアップテーブルに含まれる各座標を(xi、yi)とすると、例えば、
補正量=ΣABS(yi−xi)
となる。なお、ABSは括弧内の値の絶対値を求める関数である。また、ルックアップテーブルに含まれる座標の調整係数の合計値、つまり、
補正量=Σ(yi−xi)2
でも良い。
【0046】
最後に、対象画像補正部34は、ルックアップテーブルに基づき対象画像の色補正を行い、色補正後の対象画像を保存部1に保存する。なお、以後の各処理においては、色補正した対象画像を使用し、色補正前の対象画像は使用しない。よって、色補正前の対象画像については、好ましくは保存部1から消去、つまり、色補正前の対象画像を色補正後の対象画像で置き換える。色補正は、対象画像の画素値をルックアップテーブルに基づき変更することにより、例えば、図7に示すマッピングテーブルの場合、対象画像の総ての画素について、画素値0、1、2、3を、それぞれ、画素値0、2、3、3に変更することにより行う。
【0047】
なお、式(1)において、総てのpの値についてエネルギー値を求めて最小値を選択する形態にて説明をしたが、傾きが負となる座標については考慮しない形態であっても良い。つまり、(x0,q)である座標については、(x0−1,p)、0≦p≦qからのエネルギー値のみを計算して、その最小値を選択する形態であって良い。これにより、パスが上下にジグザグした場合に生ずる可能性がある補正品質劣化を防ぐことができる。
【0048】
以上、本発明は、カラーパターンボードによるものではなく、よって、屋外や屋内に係らず適用することができる。また、参照画像を撮影するカメラを固定とするのではく、補正順序に基づき、各カメラを、相対的に参照カメラ、対象カメラとすることで、1台のカメラのみを参照カメラとする場合における距離による色補正品質の劣化は生じず、全カメラ間の色のばらつきを抑制することができる。更に、対象画像の画素値を、参照画像の対応する画像の画素値のみに基づき色補正するのではなく、対応関係に基づきガウス分布を生成し、これにより、色補正を行うため、参照画像で影となっている対象物の色補正も可能である。
【0049】
また、対応する画素ごとに生成した2次元ガウス分布から合計分布を求める際に、重みを使用し、重みを調整することで、画素値が大きく異なる組が与える影響を簡易に調整することでき、種々の環境において安定した色補正が可能になる。
【0050】
上述した実施形態において、マッピングテーブルは、処理対象であるフレーム番号の参照画像と対象画像から生成していたが、対象カメラと参照カメラが撮影した他のフレーム番号の組も利用可能である。例えば、カメラ#1のフレーム#1を参照画像として、カメラ#2のフレーム#1の色補正を行うに当たり、カメラ#1のフレーム#1とカメラ#2のフレーム#1の対応画素のみならず、カメラ#1のフレーム#2とカメラ#2のフレーム#2の対応画素や、カメラ#1のフレーム#3とカメラ#2のフレーム#3の対応画素といった、他のフレーム番号の組の一部又は全部を利用してマッピングテーブルを生成することができる。この構成により、時間方向の対応画素もルックアップテーブル生成に利用され、よって、安定した色補正が可能になる。
【0051】
なお、本発明による色補正装置は、上記色補正装置の各部としてコンピュータを機能させるコンピュータプログラムにより実現することができる。また、本発明により色補正方法は、コンピュータに上記色補正方法の処理を実行させるコンピュータプログラムにより実現することができる。このコンピュータプログラムは、コンピュータが読み取り可能な記憶媒体に記憶されて、又は、ネットワーク経由で配布が可能なものである。更に、本発明は、ハードウェアのみや、ソフトウェアのみならず、それらの組合せによっても実現可能である。
【図面の簡単な説明】
【0052】
【図1】本発明による色補正装置のブロック図である。
【図2】対応点生成部のブロック図である。
【図3】補正部のブロック図である。
【図4】マッピングテーブルを示す図である。
【図5】2次元ガウス分布部生成部及び合計分布生成部の処理を説明する図である。
【図6】合計分布に基づき、xy平面上に値を設定した状態を示す図である。
【図7】ルックアップテーブル生成の説明図である。
【図8】本発明による色補正方法の説明図である。
【図9】本発明による色補正方法のフロー図である。
【図10】補正順序の説明図である。
【図11】補正順序を示す図である。
【符号の説明】
【0053】
1 保存部
2 対応点生成部
3 補正部
4 制御部
21 フィルタ部
22 対応点探索部
23 調整部
24 マッピングテーブル生成部
31 2次元ガウス分布生成部
32 合計分布生成部
33 ルックアップテーブル生成部
34 対象画像補正部
【特許請求の範囲】
【請求項1】
複数のカメラで撮影した動画の各画像の色補正を行う色補正装置であって、
対象カメラに対して参照カメラとするカメラの組と、その順番を特定する情報である補正順序を保持する第1の手段と、
参照カメラで撮影した参照画像に基づき、対象カメラで撮影した対象画像の色補正を行い、該対象画像を、色補正後の対象画像に置き換えることを、補正順序の最初の組から最後の組まで順に行うと共に、色補正による画素値の変化量に基づく値である補正量を、各組の色補正について求める第2の手段と、
補正順序の最後の組の色補正の終了後、各組の補正量の合計に基づく値により、第2の手段での色補正を繰り返すか否かを判定する第3の手段と、
を備えており、
補正順序において、各カメラは、少なくとも1回は対象カメラとされ、第1番目を除き、参照カメラはそれ以前に対象カメラとされている、
色補正装置。
【請求項2】
補正順序において、対象カメラは、次の組の参照カメラである請求項1に記載の色補正装置
【請求項3】
隣接して配置されているカメラを、参照カメラと対象カメラの組とする請求項1又は2に記載の色補正装置。
【請求項4】
第2の手段は、
対象カメラが撮影した画像と参照カメラが撮影した画像の対応する画素を判定する対応点生成手段と、
前記対応する画素の組に基づき、色補正前の画素値に対する色補正後の画素値を示すルックアップテーブルを生成し、ルックアップテーブルに基づき対象画像の色補正を行う補正手段と、
を備えており、
補正量は、色補正前の画素値と、該色補正前の画素値に対する色補正後の画素値との差に基づく値である、請求項1から3のいずれか1項に記載の色補正装置。
【請求項5】
対応点生成手段は、対象カメラが撮影した第1から第mの画像、ここでmは1以上の整数、と、参照カメラがほぼ同時に撮影した第1から第mの画像の、同一番号の画像それぞれについて対応する画素を判定する、
請求項4に記載の色補正装置。
【請求項6】
補正手段は、
前記対応する画素の組の画素値を平均とし、あらかじめ定めた値を分散とする2次元ガウス分布を、各画素の組に対して生成する2次元ガウス分布生成手段と、
生成した2次元ガウス分布を総和することで、又は、生成した2次元ガウス分布に、その平均の2つの値の差が大きくなる程、小さくなる重みを乗じて総和することで、合計分布を求める合計分布生成手段と、
合計分布の分布量に基づきxy平面上の各座標に分布値を設定し、画素値の最小値≦x≦画素値の最大値、である各xから、分布値に基づき1つの座標を選択し、選択した座標である選択座標のxの値を色補正前の、yの値を色補正後の画素値とするルックアップテーブルを生成するルックアップテーブル生成手段と、
を備えている請求項4又は5に記載の色補正装置。
【請求項7】
ルックアップテーブル生成手段は、
分布値を、合計分布の分布量が大きい程、小さくなる値とした場合、選択座標の分布値の総和と、選択座標間の調整係数の総和との合計が一番小さくなるように各選択座標を選択し、
調整係数は、xの値が1だけ異なる2つの座標を結ぶ線の傾きが、傾きが1からずれる程大きくなる値である、
請求項6に記載の色補正装置。
【請求項8】
ルックアップテーブル生成手段は、
各xから、分布量の一番大きい座標を選択する、
請求項6に記載の色補正装置。
【請求項9】
複数のカメラで撮影した動画の各画像を、対象カメラに対して参照カメラとするカメラの組と、その順番を特定する情報である補正順序に基づき色補正する方法であって、
補正順序において、各カメラは、少なくとも1回は対象カメラとされ、第1番目を除き、参照カメラはそれ以前に対象カメラとされており、
参照カメラで撮影した参照画像に基づき、対象カメラで撮影した対象画像の色補正を行い、該対象画像を色補正後の対象画像に置き換えることを、補正順序の最初の組から最後の組まで順に行うと共に、色補正による画素値の変化量に基づく値である補正量を、各組の色補正について求める第1のステップと、
第1のステップ終了後、各組の補正量の合計に基づく値により、第1のステップを更に繰り返すか否かを判定する第2のステップと、
を含んでいる色補正方法。
【請求項10】
請求項1から8のいずれか1項に記載の色補正装置としてコンピュータを機能させるプログラム。
【請求項1】
複数のカメラで撮影した動画の各画像の色補正を行う色補正装置であって、
対象カメラに対して参照カメラとするカメラの組と、その順番を特定する情報である補正順序を保持する第1の手段と、
参照カメラで撮影した参照画像に基づき、対象カメラで撮影した対象画像の色補正を行い、該対象画像を、色補正後の対象画像に置き換えることを、補正順序の最初の組から最後の組まで順に行うと共に、色補正による画素値の変化量に基づく値である補正量を、各組の色補正について求める第2の手段と、
補正順序の最後の組の色補正の終了後、各組の補正量の合計に基づく値により、第2の手段での色補正を繰り返すか否かを判定する第3の手段と、
を備えており、
補正順序において、各カメラは、少なくとも1回は対象カメラとされ、第1番目を除き、参照カメラはそれ以前に対象カメラとされている、
色補正装置。
【請求項2】
補正順序において、対象カメラは、次の組の参照カメラである請求項1に記載の色補正装置
【請求項3】
隣接して配置されているカメラを、参照カメラと対象カメラの組とする請求項1又は2に記載の色補正装置。
【請求項4】
第2の手段は、
対象カメラが撮影した画像と参照カメラが撮影した画像の対応する画素を判定する対応点生成手段と、
前記対応する画素の組に基づき、色補正前の画素値に対する色補正後の画素値を示すルックアップテーブルを生成し、ルックアップテーブルに基づき対象画像の色補正を行う補正手段と、
を備えており、
補正量は、色補正前の画素値と、該色補正前の画素値に対する色補正後の画素値との差に基づく値である、請求項1から3のいずれか1項に記載の色補正装置。
【請求項5】
対応点生成手段は、対象カメラが撮影した第1から第mの画像、ここでmは1以上の整数、と、参照カメラがほぼ同時に撮影した第1から第mの画像の、同一番号の画像それぞれについて対応する画素を判定する、
請求項4に記載の色補正装置。
【請求項6】
補正手段は、
前記対応する画素の組の画素値を平均とし、あらかじめ定めた値を分散とする2次元ガウス分布を、各画素の組に対して生成する2次元ガウス分布生成手段と、
生成した2次元ガウス分布を総和することで、又は、生成した2次元ガウス分布に、その平均の2つの値の差が大きくなる程、小さくなる重みを乗じて総和することで、合計分布を求める合計分布生成手段と、
合計分布の分布量に基づきxy平面上の各座標に分布値を設定し、画素値の最小値≦x≦画素値の最大値、である各xから、分布値に基づき1つの座標を選択し、選択した座標である選択座標のxの値を色補正前の、yの値を色補正後の画素値とするルックアップテーブルを生成するルックアップテーブル生成手段と、
を備えている請求項4又は5に記載の色補正装置。
【請求項7】
ルックアップテーブル生成手段は、
分布値を、合計分布の分布量が大きい程、小さくなる値とした場合、選択座標の分布値の総和と、選択座標間の調整係数の総和との合計が一番小さくなるように各選択座標を選択し、
調整係数は、xの値が1だけ異なる2つの座標を結ぶ線の傾きが、傾きが1からずれる程大きくなる値である、
請求項6に記載の色補正装置。
【請求項8】
ルックアップテーブル生成手段は、
各xから、分布量の一番大きい座標を選択する、
請求項6に記載の色補正装置。
【請求項9】
複数のカメラで撮影した動画の各画像を、対象カメラに対して参照カメラとするカメラの組と、その順番を特定する情報である補正順序に基づき色補正する方法であって、
補正順序において、各カメラは、少なくとも1回は対象カメラとされ、第1番目を除き、参照カメラはそれ以前に対象カメラとされており、
参照カメラで撮影した参照画像に基づき、対象カメラで撮影した対象画像の色補正を行い、該対象画像を色補正後の対象画像に置き換えることを、補正順序の最初の組から最後の組まで順に行うと共に、色補正による画素値の変化量に基づく値である補正量を、各組の色補正について求める第1のステップと、
第1のステップ終了後、各組の補正量の合計に基づく値により、第1のステップを更に繰り返すか否かを判定する第2のステップと、
を含んでいる色補正方法。
【請求項10】
請求項1から8のいずれか1項に記載の色補正装置としてコンピュータを機能させるプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2009−49759(P2009−49759A)
【公開日】平成21年3月5日(2009.3.5)
【国際特許分類】
【出願番号】特願2007−214702(P2007−214702)
【出願日】平成19年8月21日(2007.8.21)
【出願人】(000208891)KDDI株式会社 (2,700)
【Fターム(参考)】
【公開日】平成21年3月5日(2009.3.5)
【国際特許分類】
【出願日】平成19年8月21日(2007.8.21)
【出願人】(000208891)KDDI株式会社 (2,700)
【Fターム(参考)】
[ Back to top ]