説明

画像処理装置、方法及びプログラム

【課題】重要な領域のみを分光データで記録しデータ量を削減しつつ、ホワイトバランス処理を高精度かつ高速に行うことが可能な画像処理装置を提供する。
【解決手段】マルチ画像取得部111は複数のフィルタを用いてマルチバンド画像を取得する。分光推定部112は取得したマルチバンド画像の各画素の分光データを推定する。環境光情報取得部113は撮影時の環境光の分光データを取得する。分光反射率算出部114は推定した分光データと環境光の分光データとに基づき、マルチバンド画像の分光反射率を算出する。特定領域抽出部115はマルチバンド画像の特定領域を、所定の機能に応じて自動で抽出する。白領域抽出部116はマルチバンド画像の白領域を抽出する。そして、記録媒体117において、マルチバンド画像の特定領域及び白領域を分光反射率で記録し、残りの領域を複数チャンネルの色信号に変換して記録する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、マルチバンド画像を記録する画像処理装置、方法及びプログラムに関する。
【背景技術】
【0002】
透過率波長域が異なる複数のフィルタを用いて被写体を撮像することにより、被写体のスペクトル画像(マルチバンド画像)を取得することができるマルチバンド画像撮像装置(例えば、マルチバンドカメラ等)が近年実用化され始めている。
【0003】
マルチバンドカメラは一般的なRGBの3チャンネルのデジタルスチルカメラと比較して多くの情報量を取得することができ、被写体の分光データを精度良く推定できる。そのため、後段のホワイトバランス処理や異なるデバイスへのカラーマッチング処理を高精度に行えるというメリットがある。
【0004】
しかしながらマルチバンドカメラには、データ量が増大するため処理速度の低下、メモリの圧迫といったデメリットもある。例えば6チャンネルのマルチバンドカメラを考えた場合、一般的な3チャンネルのデジタルスチルカメラの2倍のデータ量を保持する必要がある。更には、各画素において推定した分光データの形式で画像データを保持する場合、分光データを36グリッドで格納するとしたらデジタルスチルカメラの13倍のデータ量となり、実用的なサイズでなくなってしまうという問題もある。
【0005】
そこで、分光データを効率よく保持する方法として特許文献1では、画像全体を分光データで保持するのではなく、縮小画像もしくは一部画像を分光データで保持し、併せてRGBの全体画像を保持するという方法を提案している。また特許文献2では、画像全体を分光データで保持するが、後に画像内の指定された矩形領域のみ分光データでホワイトバランス等の処理を行うことで処理速度の低下を抑える方法を提案している。
【0006】
また上述したように、マルチバンドカメラで取得した多チャンネルの分光データを用いると被写体の特性を表す情報が増えるため、ホワイトバランスをより高精度に行うことが可能となる。上記特許文献1では、縮小画像のRGB値と指定光源下でのRGB値とから補正係数を算出し、これを元画像の大きさに拡大することで全画素に対してホワイトバランス処理を行うようにしている。また上記特許文献2では、各画素において分光データから三刺激値、色度、色温度を算出してホワイトバランス処理を行うようにしている。
【0007】
【特許文献1】特開2005−78171号公報
【特許文献2】特開2006−54679号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
特許文献1において、分光データとして保持する縮小画像を生成する際、撮影者にとって重要である領域も、重要でない領域も区別することがないため、分光データで保持したい重要である領域が意図していたよりも小さくなってしまうようなことがある。また縮小画像の他に一部画像を分光データで保持する方法が述べられているが、一部を切り出す方法の具体的方法については述べられていない。また縮小画像からホワイトバランス処理を行う際は、分光データから一旦RGB値を算出し、指定光源下でのRGB値と比較しホワイトバランス補正係数を算出するため、分光データレベルで補正係数を算出する場合と比較して精度が低下する恐れがある。
【0009】
また特許文献2では画像内の指定された矩形領域のみ分光データでホワイトバランス処理を行うが、指定はユーザがソフトウェアのユーザー・インターフェースを用いて手動で行うため、操作が煩雑となる。また矩形指定を想定しているためホワイトバランス処理に使用したい領域と使用したくない領域との切り分けが困難である。
【0010】
本発明は係る実情に鑑み、重要な領域のみを分光データで記録しデータ量を削減しつつ、ホワイトバランス処理を高精度かつ高速に行うことが可能な画像処理装置等の提供を目的とする。
【課題を解決するための手段】
【0011】
本発明の画像処理装置は、複数のフィルタを用いてマルチバンド画像を取得するマルチバンド画像取得手段と、前記取得したマルチバンド画像の各画素の分光データを推定する分光データ推定手段と、撮影時の環境光の分光データを取得する環境光分光データ取得手段と、前記推定した分光データと前記取得した環境光の分光データとに基づき、前記取得したマルチバンド画像の分光反射率を算出する分光反射率算出手段と、前記取得したマルチバンド画像の特定領域を、所定の機能に応じて自動で抽出する特定領域抽出手段と、前記取得したマルチバンド画像の白領域を抽出する白領域抽出手段と、前記取得したマルチバンド画像の特定領域及び白領域を前記分光反射率で記録し、残りの領域を複数チャンネルの色信号に変換して記録する画像記録手段とを有することを特徴とする。
また、本発明の画像処理方法は、画像処理装置における画像処理方法であって、複数のフィルタを用いてマルチバンド画像を取得するマルチバンド画像取得ステップと、前記取得したマルチバンド画像の各画素の分光データを推定する分光データ推定ステップと、撮影時の環境光の分光データを取得する環境光分光データ取得ステップと、前記推定した分光データと前記取得した環境光の分光データとに基づき、前記取得したマルチバンド画像の分光反射率を算出する分光反射率算出ステップと、前記取得したマルチバンド画像の特定領域を、所定の機能に応じて自動で抽出する特定領域抽出ステップと、前記取得したマルチバンド画像の白領域を抽出する白領域抽出ステップと、前記取得したマルチバンド画像の特定領域及び白領域を前記分光反射率で記録し、残りの領域を複数チャンネルの色信号に変換して記録する画像記録ステップとを有することを特徴とする。
また、本発明のプログラムは、画像処理装置の制御をコンピュータに実行させるためのプログラムであって、複数のフィルタを用いてマルチバンド画像を取得するマルチバンド画像取得ステップと、前記取得したマルチバンド画像の各画素の分光データを推定する分光データ推定ステップと、撮影時の環境光の分光データを取得する環境光分光データ取得ステップと、前記推定した分光データと前記取得した環境光の分光データとに基づき、前記取得したマルチバンド画像の分光反射率を算出する分光反射率算出ステップと、前記取得したマルチバンド画像の特定領域を、所定の機能に応じて自動で抽出する特定領域抽出ステップと、前記取得したマルチバンド画像の白領域を抽出する白領域抽出ステップと、前記取得したマルチバンド画像の特定領域及び白領域を前記分光反射率で記録し、残りの領域を複数チャンネルの色信号に変換して記録する画像記録ステップとをコンピュータに実行させるためのプログラムである。
【発明の効果】
【0012】
本発明によれば、マルチバンド撮影で取得したマルチバンド画像において重要である特定領域のみを分光反射率で記録することで、画像のデータ容量を小さく抑えることが可能となる。また、画像のデータ容量が小さく抑えられるため、ホワイトバランス処理を高速に行うことが可能となる。更に、特定領域の他に白領域も分光反射率で保持することで、RGB領域用のホワイトバランス補正係数を白領域の分光反射率を用いて算出するようにすることができる。そのため、RGB領域のホワイトバランス処理が通常のRGBベースでのホワイトバランス処理よりも高精度に行うことが可能となる。
【発明を実施するための最良の形態】
【0013】
以下、本発明に係るマルチバンド画像処理装置、典型的にはマルチバンドカメラに関する好適な実施の形態について添付図面を参照して詳細に説明する。図1は本実施の形態に係るマルチバンド画像処理装置(以下、単に画像処理装置と称する)の構成を示すブロック図である。
【0014】
<装置構成>
図1に示す画像処理装置100おいて、レンズ101、マルチバンドのフィルタ102を透過した光信号は撮像素子103で結像し、A/D変換部104でデジタル信号に変換される。A/D変換部104で変換されたデジタル信号は、マルチバンドデータとしてマルチバンド画像生成部111に出力される。
【0015】
ここで図2及び図3を用いて、マルチバンドのフィルタ102の構成について説明する。図2は本実施の形態で使用するフィルタ102に係るマルチバンドの分光透過率特性を示した図である。本実施の形態ではフィルタ102を、図2に示すa〜fの6バンドの分光透過率特性を有するフィルタとして構成する。なお、使用するバンド数や分光透過率特性の種類に関してはこれに限るものではない。図3は、フィルタ102のイメージを示した図である。本実施の形態では撮像素子103を単板式の撮像素子としており、フィルタ102が有する各バンドに対応するフィルタは撮像素子103上に、所定パターンに準じて配置される。これにより、撮像素子103はマルチバンドデータを出力可能となる。このように単板式の撮像素子103にフィルタ102を配置した場合は、1回の撮影で全てのバンドのデータを取得できるメリットがある。
【0016】
図1に戻り、CPU(Central Processing Unit)105は、画像処理装置100全体の処理を中央演算処理装置である。メモリ106は読み書き可能なメモリであり、バス107を介してCPU105と接続される。なお、バス107は、画像処理装置100を構成する各部を接続する。
【0017】
LCD108は画像やメニュー表示等を表示し、ファインダ109はLCD108の電子ファインダ機能を使用することなしに、画角等を確認可能とするものである。ユーザ150は、LCD108やファインダ109から得られる情報を基に、インタフェース110を介して、画像処理装置100に制御指示を与えることができる。
【0018】
マルチバンド画像生成部111は、A/D変換部104で変換されたマルチバンドデータからマルチバンド画像を生成する。なお、単板式の撮像素子103を用いた場合のマルチバンドデータでは、各画素には1チャンネルのデータしか存在しない。そのため、残りのチャンネルは近隣画素から補間演算する等して生成する。補間演算の詳細な方法については従来から多数提案されているため詳細の説明は省略する。なお、撮像素子103及びマルチバンド画像生成部111が相まって、本発明でいうマルチバンド画像取得手段の一構成例に対応する。
【0019】
分光推定部112は、マルチバンド画像生成部111で生成されたマルチバンド画像から被写体の分光を推定する。ここで分光推定処理について図4を用いて説明する。図4において、推定分光データ401は、フィルタ102が有するa〜fに対応するフィルタを介して出力されたデータから推定される被写体の分光データを示している。この推定分光データ401は、a〜fのそれぞれのデータの中心の波長の点402〜407を3次スプライン補間等で結ぶことで推定することが可能である。なお、分光推定処理についてはこの方法に限るものではなく、例えば一般的に知られている重回帰分析による分光推定方法等を用いても構わない。分光推定部112は、推定した被写体の分光データを分光反射率算出部114に出力する。なお、分光推定部112は、本発明でいう分光データ推定手段の一構成例に対応する。
【0020】
図1に戻り、環境光情報取得部113は、A/D変換部104が変換したマルチバンド画像に基づき、分光反射率算出部114が使用する環境光分光データ(環境情報)を取得する。ここで、環境光情報取得部113の詳細構成について図5を用いて説明する。
【0021】
図5に示すように環境光情報取得部113は、環境光分光データ算出部501、物体分光反射率データベース502、補助光源分光データデータベース503及び環境光分光データデータベースを有する。環境光分光データ算出部501は、入力されたマルチバンド画像データに基づき、502〜504のデータベースを参照することで環境光の分光データを取得する。下記において、本実施の形態において利用する環境光の分光データの取得方法を説明する。なお、環境光情報取得部113は、本発明でいう環境光分光データ取得手段の一構成例に対応する。
【0022】
まず、環境光の分光データの取得方法として、分光反射率が既知の物体を撮影する方法について説明する。この方法では、物体分光反射率データベース502に、例えば反射率18%グレーの均一輝度面の分光反射率データやマクベスチャートの分光反射率等を予め格納しておく。
次に、フィルタ102や撮像素子103によるマルチバンド撮影で、反射率18%グレーの均一輝度面やマクベスチャートを撮影し、マルチバンド画像を生成する。
そして、環境光分光データ算出部501により、撮影した物体に応じた分光反射率を物体分光反射率データベース502から参照し取得して、これにより先のマルチバンド画像を除算することで、環境光の分光データを取得する。
【0023】
次に、環境光の分光データの取得方法として、分光エネルギーが既知である補助光源を用いる方法について説明する。この方法では、まず、フィルタ102や撮像素子103により補助光源を用いずにマルチバンド撮影し、マルチバンド画像生成部111によりマルチバンド画像を生成する。
次に、補助光源を用いて、上記同様のマルチバンド撮影及びマルチバンド画像の生成を行う。
そして環境光分光データ算出部501により、先述した補助光源の有無による2種類のマルチバンド画像の差分データを算出し、それを補助光源分光データデータベース503より参照した補助光源の分光データで除算することにより環境光の分光データを取得する。
【0024】
最後に、環境光の分光データの取得方法として、環境光分光データデータベース504に予め記録されている環境光の分光データを使用する方法について説明する。この方法では、環境光分光データデータベース504に、一般的な環境光、例えば、太陽光、日陰、くもり、白熱電球、白色蛍光灯等の分光データを格納しておく。
次に、撮像装置設定505から撮影時のホワイトバランス設定を取得する。
そして、環境光分光データ算出部501により、撮像装置設定505に設定されているホワイトバランス設定に基づき、環境光分光データデータベース504を参照し、参照する環境光の分光データを選択する。例えば、撮像装置設定505でホワイトバランス設定で太陽光と設定されている場合は、環境光分光データデータベース504から太陽光の分光データを選択し参照する。
【0025】
図1に戻り、分光反射率算出部114は、分光推定部112で推定された分光データと環境光情報取得部113で取得した環境光の分光データとを用いることで、被写体の分光反射率を算出する。マルチバンド画像の各画素の分光データは、[被写体の分光反射率]×[環境光の分光データ]で求めることが可能である。よって、各画素の分光データを環境光の分光データで除算することにより、各画素での分光反射率を求めることが可能となる。なお、分光反射率算出部114は、本発明でいう分光反射率算出手段の一構成例に対応する。
【0026】
特定領域抽出部115は分光反射率算出部114で得られたマルチバンド画像の分光反射率等に基づき、マルチバンド画像における特定領域を抽出する。白領域抽出部116は、前記特定領域の抽出と並行してマルチバンド画像における白領域を抽出する。
【0027】
記録媒体117は分光反射率算出部114を介して生成された分光反射率等を含む画像を記録する。記録の際は、特定領域抽出部115で抽出した特定領域と白領域抽出部116で抽出した白領域については、分光反射率を記録し、特定領域もしくは白領域でない領域は分光反射率からRGB値に変換してから記録するようにする。
【0028】
なお、マルチバンド画像生成部111、分光推定部112、環境光情報取得部113、分光反射率算出部114、特定領域抽出部115及び白領域抽出部116はバス107を介して相互に接続し、またCPU105やメモリ106とも接続する。これら各処理部による制御及びデータの読み書き等の処理は、CPU105やメモリ106により実現される。
【0029】
ホワイトバランス部118は、ホワイトバランス機能を有するソフトウェアである。ユーザ150は、インタフェース119(I/F)を介してソフトウェア上のホワイトバランス部118を用いて記録媒体117上に記録されているマルチバンド画像に対してホワイトバランスの処理を行うことができる。
【0030】
<動作説明>
次に、上述のような構成を有する本実施の形態に係る画像処理装置100の動作について、図6に示すフローチャートを用いて説明する。
【0031】
まずステップS601においてマルチバンド撮影が行われ、撮像素子103により光信号を得る。次にステップS602において撮像素子103からのアナログの光信号を、A/D変換部104によりデジタル信号(マルチバンドデータ)に変換する。
【0032】
次にステップS603においてA/D変換部104からのマルチバンドデータに基づき、マルチバンド画像生成部111によりマルチバンド画像を生成する。次にステップS604においてマルチバンド画像生成部111からのマルチバンド画像に基づき、当該画像における被写体の分光データを推定する。
【0033】
次にステップS605においてA/D変換部104からのマルチバンド画像等に基づき、環境光情報取得部113により環境光の分光データ(環境情報)を取得する。
【0034】
次にステップS606において、分光推定部112で推定された分光データと環境光情報取得部113で取得した環境光の分光データとを用いて、被写体の分光反射率を算出する。
【0035】
次にステップS607において、特定領域抽出部115により、マルチバンド画像における所定の特定領域の抽出を行い、並行してステップS608において、白領域抽出部116により、マルチバンド画像における白領域の抽出を行う。特定領域抽出処理及び白領域抽出処理の詳細は後述する。
【0036】
次にステップS609において、マルチバンド画像における特定領域及び白領域と、その他の領域とを判別する。そして特定領域及び白領域と判別した場合はステップS610において、これら領域についてはそのまま分光反射率を記録する。一方、その他の領域と判別した場合はステップS611において、各画素における分光反射率をRGB値(色信号)に変換し、その後ステップS610において、RGB値を記録する。さらに、先述した環境光情報取得部113で取得した環境光の分光データについても、分光反射率及びRGB値と併せて記録するようにする。
【0037】
以上の処理を経ることで、特定領域もしくは白領域は分光反射率で、またそれ以外の領域はRGB値でマルチバンド画像を記録することが可能となる。
【0038】
<特定領域抽出>
図6のステップS607に係る特定領域抽出処理について図7を用いて説明する。図7(a)においてまず、特定領域抽出部115の詳細構成を示す。
【0039】
特定領域抽出部115は、分光反射率算出部114で得られた分光反射率等に基づき、特定領域を抽出する特定領域抽出手段である。本図に示すように特定領域抽出部115は、特定分光被写体領域抽出部701、顔領域抽出部702、合焦領域抽出部703及び特定被写体分光反射率データベース704を有する。本実施の形態においては、特定領域の抽出方法として、(1)特定分光被写体領域を特定領域とした抽出方法、(2)顔領域を特定領域とした抽出方法、(3)合焦位置領域を特定領域とした抽出方法の3つの方法を採用する。なお、特定領域の抽出方法は、これらの方法に限るものではない。以下、上記(1)〜(3)の各方法について説明する。
【0040】
(1)特定分光被写体領域抽出
この方法は、予め特定被写体分光反射率データベース704に特定被写体の分光反射率を格納しておき、入力されたマルチバンド画像の各画素毎の分光反射率と比較・判別する方法である。特定被写体分光反射率データベース704に格納している特定被写体としては、幾つか考えられるが例えば、植物の緑、青空の青、人の肌等が対象となる。特定被写体分光反射率データベース704を参照する際には、撮像装置設定705に設定されている撮影モード、風景、ポートレートといった設定(撮影設定)に基づき、適切な分光反射率をデータベースから参照するようにする。例えば、撮影モードがポートレートであれば、人の肌の分光反射率を参照するように決定する。入力されたマルチバンド画像の各画素毎の分光反射率と特定被写体分光反射率データベース704から参照した分光反射率とを比較する方法としては幾つか考えられるが例えば、波長毎のRMS誤差(RMS Error)を利用する方法が一般的である。
【0041】
RMS誤差の算出方法としては、例えば図8のように2つの分光反射率R1(801;実線)、R2(802;点線)のRMS誤差を算出する場合、任意の波長における各々の相対感度から減算にて誤差803を得るようにする。そして、この誤差を380nm〜780nmまで1nm刻みで積分するようにする。積分について数式で表すと、下記の式(1)のようになる。
【0042】
【数1】

【0043】
そして、このRMS誤差が、ある閾値以下であれば、入力されたマルチバンド画像の各画素の分光反射率は特定被写体の分光反射率と一致しているとみなすようにすれば、該画素は特定領域であると判別することができる。
このように、分光反射率を用いることで被写体が何であるかを高精度に特定することが可能となる。ここで人の肌の場合、人種差や個人差、また同一人物であっても部位によって分光反射率は異なるため誤認識の可能性がある。しかし、人の肌であれば、ある程度の傾向はあるため、閾値を制御してある程度一致していれば特定被写体であると判別しても、特定領域としての有効性はあると考えられる。
【0044】
(2)顔領域抽出
この方法は、画像処理装置100に搭載されている顔検出機能によって出力される領域を特定領域として判別する方法である。顔検出の方法については従来から様々な方法が開発されているため詳細の説明は省略するが、例えば、目、鼻、口といった顔を構成する部位の輝度ヒストグラムや色分布情報を用いて各部位を検出し顔領域を推定する方法がある。また、予め平均的な顔画像のテンプレートを持っていて、それと比較することによって顔識別するテンプレートマッチングによる検出方法等も有効である。この方法では、以上のようにして検出された顔領域を特定領域であると判別する。
【0045】
(3)合焦位置領域抽出
この方法は、画像処理装置100に搭載されているフォーカシング機能によって出力される領域を特定領域として判別する方法である。図9はファインダ109の構成を示した図である。図9において、ファインダ枠901は、分光反射率を求めた画像のサイズとほぼ同じ範囲を表しているとする。ファインダ枠901内に複数配置された枠902、903、904等は測距枠を表し、自動又はユーザ指定された枠で合焦位置となるようにフォーカシング制御が行なわれるようになるものである。なお、測距枠の数は図9に示した個数に限るものではない。ここで枠903を選択し、フォーカシング制御の結果、合焦位置となった枠903の位置が取得できたとする。この場合、合焦した位置の枠903を用いて画像内を領域分割するようにする。分割する方法としては幾つか考えられるが例えば、図10のように分割する。そして枠903に対応する図10の領域1001が特定領域であると判別するようにする。また、枠904を選択した場合には、領域1002が特定領域であると判別する。この方法では、以上のようにして合焦位置情報を基に特定領域であると判別する。
【0046】
次に特定領域抽出部115による特定領域の抽出の処理の流れを図7(b)に示すフローチャートを用いて説明する。
【0047】
まずステップS701において画像処理装置100は、特定領域の抽出方法として、特定分光被写体領域抽出、顔領域抽出、及び合焦位置領域抽出のうちのいずれが設定されているかを確認する。
【0048】
次にステップS702、S704において、設定された抽出方法を判別する。ここで特定分光被写体領域抽出と判別された場合はステップS702を介してステップS703に進み、特定分光被写体領域抽出部701により処理を行う。また、顔領域抽出と判別された場合はステップS702、S704を介してステップS705に進み、顔領域抽出部702により処理を行う。また、合焦位置領域抽出と判別された場合はステップS702、S704を介してステップS706に進み、合焦領域抽出部703により処理を行う。そして、ステップS703、S705、S706の処理を終えたらばステップS709に進み、抽出した領域を保持するためにバス107上に領域に係る情報を出力し、処理を終了する。
【0049】
<白領域抽出>
次に、図6のステップS608に係る白領域抽出処理について図11を用いて説明する。本実施の形態では、特定領域の抽出(ステップS607)の処理と並行して、白領域抽出部116にて白領域の抽出を行う。白領域抽出はホワイトバランスを高精度に行うために必要な処理である。図11は、白領域抽出部116による処理の流れを示すフローチャートである。以下、当該処理について説明する。
【0050】
まずステップS1101において、白領域抽出部116は、分光反射率算出部114からの分光反射率を、各画素ごとに3刺激値(XYZ)に変換する。分光反射率Rから3刺激値XYZへの変換方法は、一般的に等色関数xt(λ)、yt(λ)、zt(λ)を用いて、次式(2)〜(4)により求める。
【0051】
【数2】

【0052】
ここで、kは、下式とする。また積分∫visは可視波長域で取るものとする。
【0053】
【数3】

【0054】
次にステップS1102において、白領域抽出部116は、3刺激値XYZを一般的な次式(5)、(6)を用いて、色度座標(x,y)に変換する。
【0055】
【数4】

【0056】
次にステップS1103において、白領域抽出部116は、算出した色度座標(x,y)から色温度Ta、黒体輻射軌跡との偏差Δuvを算出する。この算出方法についても幾
つか方法があるが例えば、先述した特許文献2では以下の方法が記載されている。
【0057】
即ち、プランクの放射則によれば、黒体輻射の放射エネルギー・スペクトルe(λ,T)は、次式(7)によって求めることができ、この数式を用いることにより黒体輻射の各温度での波長毎の分光エネルギーを求めることができる。
【0058】
【数5】

λ:光の波長、T:放射体の絶対温度、h:プランク定数、k:ボルツマン定数、c:真空中の光速とする。
【0059】
そして、上述したように該波長毎の分光エネルギーと該波長の等色関数を乗算して得られた結果を、可視光領域の全体で総計(加算)して3刺激値を求め、色度座標が求まる。
【0060】
このような方法によれば、色温度Taに該当する色度座標を求めることができるわけであり、逆算を行うことにより色度座標から色温度Taを求めることができる。なお、偏差Δuvの算出方法は周知技術であるため、ここでは説明を省略する。
【0061】
次にステップS1104において、白領域抽出部116は、白領域を判別するための予め記録されている閾値を取得し、続いてステップS1105において白領域か否かの判別を行う。ステップS1105では、算出した偏差Δuvが前記取得した予め記録されてい
る閾値より大きい場合は白領域でないと判別し、該閾値以下である場合は白領域であると判別する。
【0062】
次にステップS1106において、白領域抽出部116は、抽出した領域を保持するためにバス107上に白領域に係る情報を出力し、処理を終了する。
【0063】
なお、図6のステップS611においても分光反射率からRGB値に変換することを述べたが、これについても、ステップS1101と同様に3刺激値XYZを経由して変換するのが一般的である。本実施の形態においても、分光反射率から3刺激値XYZへの変換方法は上述したステップS1101と同様の方法で行う。そして3刺激値XYZからRGB値への変換は、一般的には3×3マトリクス(a11〜a33)を用いて次式(8)により求める。
【0064】
【数6】

【0065】
<ホワイトバランス>
次に、記録媒体200に記録された特定領域及び白領域の分光反射率と、その他の領域に係るRGB値とを含む画像データ(以下、マルチバンド部分的分光画像と呼ぶ)のホワイトバランス処理について図12に示すフローチャートを用いて説明する。
【0066】
まずステップS1201において、ホワイトバランス部118は、記録したマルチバンド部分的分光画像を読み出す。
【0067】
次にステップS1202において、ホワイトバランス部118は、特定領域のホワイトバランス処理を行うと共に、ステップS1203において白領域のホワイトバランス処理を行う。特定領域及び白領域のホワイトバランス処理は同一の処理であり、処理内容について以下、詳述する。
【0068】
まずホワイトバランス部118は、CPU105を介しホワイトバランス処理に用いる所望の環境光を指定し、メモリ106の一部に格納された環境光分光データベースから指定された環境光の分光データを読み出す。環境光分光データベースには予め、一般的な環境光、例えば、太陽光、日陰、くもり、白熱電球、白色蛍光灯等の分光データを格納してある。環境光を指定する方法としては、ソフトウェアUI上でユーザによって指定する方法や、設定ファイルに予め環境光を記載しておいて、ホワイトバランス処理時に読み込む方法等が考えられるが、指定方法としてはこれらの限りではない。そして、図13のように各画素の分光反射率(図13(a))に該読み出した環境光の分光データ(図13(b))を乗算して、指定環境光下での分光データ「P(λ)×R(λ)」、即ち図13(c)を算出する。
【0069】
続いてステップS1204において、RGB領域のホワイトバランス処理を行うために、RGB用ホワイトバランス補正係数の算出をする。続いてステップS1205において、RGB用ホワイトバランス補正係数を用いてRGB領域のホワイトバランス処理を行う。
【0070】
ここでステップS1204及びS1205の処理を詳述すると、まず入力されたマルチバンド部分的分光画像に付属されている撮影時の環境光の分光データを読み出す。次に図14に示すように、該撮影時の環境光分光データ(図14(b))と白領域の各画素の分光反射率(図14(a))とを乗算し、撮影環境光下での分光データ「P(λ)×S(λ)」、即ち図14(c)を算出する。そして、以上のようにして算出された該撮影環境光下分光データ「P(λ)×S(λ)」と指定環境光下分光データ「P(λ)×R(λ)」とをそれぞれRGBps、RGBprに変換する。分光反射率からRGB値への変換は、先述した画像記録の際の方法を用いて行う。RGBpsとは、撮影環境光下での分光データ「P(λ)×S(λ)」を式(2)〜(5)、式(8)を経てRGB形式に変換したものである。また、RGBprとは、指定環境光下での分光データ「P(λ)×R(λ)」を同様の方法で、RGB形式に変換したものである。そして該撮影環境光下RGBpsと該指定環境光下RGBprから補正係数kR、kG、kBを、次式(9)〜(11)により算出するようにする。
【0071】
【数7】

【0072】
なお、上記式(9)〜(11)においては、補正係数を比率で算出しているが、差分として算出しても構わない。そして、上記の計算を白領域内の全画素について行い、最終的に全画素のkR、kG、kBを平均化した値、kRave、kGave、kBaveをRGB領域用の補正値として採用する。最後に、RGB領域のホワイトバランス処理を次式(12)〜(14)によりホワイトバランス処理後のRGB値を算出する。
【0073】
【数8】

ここでR、G、Bはホワイトバランス処理前の画素値、R'、G'、B'はホワイトバランス処理後の画素値である。
【0074】
これらの処理を経ることで、指定環境光下でのRGB領域の各画素値を算出できる。なお、本実施の形態では補正係数算出に比率を用いたが、vonKriesやBradfordによる色順応予測モデルを用いて算出しても構わない。
【0075】
以上、本実施の形態に係る画像処理装置100によれば、マルチバンド撮影による分光画像に対して重要である特定領域のみを分光反射率で記録することで、画像のデータ容量を小さく抑えることが可能となる。また、画像のデータ容量が小さく抑えられるため、ホワイトバランス処理も高速に行うことが可能となる。更に、特定領域の他に白領域も分光反射率で保持することで、RGB領域用のホワイトバランス補正係数を白領域の分光反射率を用いて算出することができる。そのため、その他RGB領域のホワイトバランス処理を通常のRGBベースでのホワイトバランス処理よりも高精度に行うことが可能となる。
【0076】
なお、本実施の形態では、フィルタ102を複数のバンドのフィルタを含む構成とし、撮像素子103上に配置する構成としたが、図15に示すような構成であっても構わない。即ち、複数のバンドのフィルタを円周上に均等に配置し、回転させることによりフィルタが切り替わるようにしたターレット(マルチバンドターレットと呼ぶ)として構成してもよい。図16を参照して、マルチバンドターレットの使用方法を説明する。
【0077】
図16において、1601は被写体、1602はマルチバンドターレット、101はレンズ、103はCCDやCMOSセンサーといった撮像素子、1603は被写体に照明する環境光である。ここで、レンズ101は被写体の像がマルチバンドターレット1602のうち1つのフィルタを通して撮像素子103に結像するように配置される。そして、レンズ101の前に配置されたマルチバンドターレット1602は撮影するたびに回転し、レンズ101前のマルチバンドターレット1602上のフィルタが入れ替わるように制御される。この制御を6回繰り返すことで、a〜fの6つの分光のデータを持つ画像が出力され、マルチバンドデータが得られることになる。なお、このようなマルチバンドターレット1602を用いた場合は、撮影画像の各画素が6チャンネルになるように撮影した6チャンネル画像それぞれについて同位置に配置されている画素データを同一の画素の異なるチャンネルとして扱うようにする。また、この構成においても、バンドの数を6とし、撮影画像の各画素が6チャンネルとなるようにているが、これよりも多い又は少ない複数チャンネルとしても構わない。
【0078】
また、本発明を実現するために、上述した実施形態の機能を実現するソフトウェアのプログラムコード(コンピュータプログラム)を記録した記憶媒体を用いても良い。この場合には記憶媒体をシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによって本発明の目的が達成される。
【0079】
この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0080】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0081】
また、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(基本システム或いはオペレーティングシステム)等が実際の処理の一部又は全部を行う場合も含まれることは言うまでもない。
【0082】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。この場合には、書き込まれたプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行ってもよい。
【図面の簡単な説明】
【0083】
【図1】本発明の実施の形態に係るマルチバンド画像処理装置の構成を示すブロック図である。
【図2】本発明の実施の形態で使用するフィルタに係るマルチバンドの分光透過率特性を示した図である。
【図3】本発明の実施の形態で使用するフィルタのイメージを示した図である。
【図4】本発明の実施の形態に係る画像処理装置による分光推定処理について説明する図である。
【図5】本発明の実施の形態に係る画像処理装置が有する環境光情報取得部の詳細構成を説明する図である。
【図6】本発明の実施の形態に係る画像処理装置の動作を説明するフローチャートである。
【図7】本発明の実施の形態に係る画像処理装置による特定領域抽出処理について説明する図である。
【図8】本発明の実施の形態に係る画像処理装置による特定領域抽出処理において生じる誤差について説明する図である。
【図9】本発明の実施の形態に係る画像処理装置が有するファインダの構成を示した図である。
【図10】本発明の実施の形態に係る画像処理装置による特定領域抽出処理を説明する図である。
【図11】本発明の実施の形態に係る画像処理装置による白領域抽出処理を説明するフローチャートである。
【図12】本発明の実施の形態に係る画像処理装置によるホワイトバランス処理を説明するフローチャートである。
【図13】本発明の実施の形態に係る画像処理装置による、特定領域及び白領域についてのホワイトバランス処理を説明する図である。
【図14】本発明の実施の形態に係る画像処理装置による、RGB領域についてのホワイトバランス処理を説明する図である。
【図15】本発明の実施の形態で使用するフィルタの変形例を示した図である。
【図16】変形例に係るフィルタの使用方法を説明する図である。
【符号の説明】
【0084】
100 画像処理装置
102 フィルタ
103 撮像素子
105 CPU
106 メモリ
111 マルチバンド画像生成部
112 分光推定部
113 環境光情報取得部
114 分光反射率算出部
115 特定領域抽出部
116 白領域抽出部
117 記録部
118 ホワイトバランス部

【特許請求の範囲】
【請求項1】
複数のフィルタを用いてマルチバンド画像を取得するマルチバンド画像取得手段と、
前記取得したマルチバンド画像の各画素の分光データを推定する分光データ推定手段と、
撮影時の環境光の分光データを取得する環境光分光データ取得手段と、
前記推定した分光データと前記取得した環境光の分光データとに基づき、前記取得したマルチバンド画像の分光反射率を算出する分光反射率算出手段と、
前記取得したマルチバンド画像の特定領域を、所定の機能に応じて自動で抽出する特定領域抽出手段と、
前記取得したマルチバンド画像の白領域を抽出する白領域抽出手段と、
前記取得したマルチバンド画像の特定領域及び白領域を前記分光反射率で記録し、残りの領域を複数チャンネルの色信号に変換して記録する画像記録手段とを有することを特徴とする画像処理装置。
【請求項2】
前記特定領域抽出手段は、予め記録した特定被写体の分光反射率を用いて、前記マルチバンド画像における特定被写体を前記特定領域として抽出することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記特定被写体は、当該画像処理装置の撮影設定に応じて決定されることを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記特定領域抽出手段は、顔検出機能を有し、検出した顔領域を前記特定領域として抽出することを特徴とする請求項1に記載の画像処理装置。
【請求項5】
前記特定領域抽出手段は、合焦位置情報を基に前記特定領域を抽出することを特徴とする請求項1に記載の画像処理装置。
【請求項6】
前記特定領域及び白領域については、前記分光反射率を用いてホワイトバランス処理を行い、前記残りの領域については、前記分光反射率と前記複数チャンネルの色信号とを用いてホワイトバランス処理を行うホワイトバランス手段を有することを特徴とする請求項1に記載の画像処理装置。
【請求項7】
前記ホワイトバランス手段は、前記残りの領域については、前記白領域の分光反射率から得られたホワイトバランス補正係数を用いてホワイトバランス処理を行うことを特徴とする請求項6に記載の画像処理装置。
【請求項8】
画像処理装置における画像処理方法であって、
複数のフィルタを用いてマルチバンド画像を取得するマルチバンド画像取得ステップと、
前記取得したマルチバンド画像の各画素の分光データを推定する分光データ推定ステップと、
撮影時の環境光の分光データを取得する環境光分光データ取得ステップと、
前記推定した分光データと前記取得した環境光の分光データとに基づき、前記取得したマルチバンド画像の分光反射率を算出する分光反射率算出ステップと、
前記取得したマルチバンド画像の特定領域を、所定の機能に応じて自動で抽出する特定領域抽出ステップと、
前記取得したマルチバンド画像の白領域を抽出する白領域抽出ステップと、
前記取得したマルチバンド画像の特定領域及び白領域を前記分光反射率で記録し、残りの領域を複数チャンネルの色信号に変換して記録する画像記録ステップとを有することを特徴とする画像処理方法。
【請求項9】
前記特定領域及び白領域については、前記分光反射率を用いてホワイトバランス処理を行い、前記残りの領域については、前記分光反射率と前記複数チャンネルの色信号とを用いてホワイトバランス処理を行うホワイトバランスステップを更に有することを特徴とする請求項8に記載の画像処理方法。
【請求項10】
画像処理装置の制御をコンピュータに実行させるためのプログラムであって、
複数のフィルタを用いてマルチバンド画像を取得するマルチバンド画像取得ステップと、
前記取得したマルチバンド画像の各画素の分光データを推定する分光データ推定ステップと、
撮影時の環境光の分光データを取得する環境光分光データ取得ステップと、
前記推定した分光データと前記取得した環境光の分光データとに基づき、前記取得したマルチバンド画像の分光反射率を算出する分光反射率算出ステップと、
前記取得したマルチバンド画像の特定領域を、所定の機能に応じて自動で抽出する特定領域抽出ステップと、
前記取得したマルチバンド画像の白領域を抽出する白領域抽出ステップと、
前記取得したマルチバンド画像の特定領域及び白領域を前記分光反射率で記録し、残りの領域を複数チャンネルの色信号に変換して記録する画像記録ステップとをコンピュータに実行させるためのプログラム。
【請求項11】
前記特定領域及び白領域については、前記分光反射率を用いてホワイトバランス処理を行い、前記残りの領域については、前記分光反射率と前記複数チャンネルの色信号とを用いてホワイトバランス処理を行うホワイトバランスステップを更にコンピュータに実行させる請求項10に記載のプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate


【公開番号】特開2009−272709(P2009−272709A)
【公開日】平成21年11月19日(2009.11.19)
【国際特許分類】
【出願番号】特願2008−119075(P2008−119075)
【出願日】平成20年4月30日(2008.4.30)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】