(57)【特許請求の範囲】
【請求項１】
コンピューティングデバイスによって、入力画像を取得することであって、前記入力画像は、前記入力画像内の白色を定義するクロミナンス値によって表される白色点を有する、こと、
前記コンピューティングデバイスによって、前記入力画像の色に基づき、前記入力画像の２次元クロミナンスヒストグラムを生成すること、
前記コンピューティングデバイスによって、２次元ヒートマップを作成するために、フィルタを用いて前記２次元クロミナンスヒストグラムを畳み込むことであって、前記２次元ヒートマップ内のエントリは、それぞれのエントリに対応するそれぞれの色合いが前記入力画像の前記白色点にどれだけ近いかのそれぞれの推定を表す、こと、
前記コンピューティングデバイスによって、前記２次元ヒートマップ内の最大値の閾値内にある特定の値を表す、前記２次元ヒートマップ内のエントリを選択すること、及び、
前記コンピューティングデバイスによって、前記選択されたエントリに基づき、出力画像を形成するために前記入力画像に色合いを付けること、を含み、
前記２次元クロミナンスヒストグラムを生成することは、
前記２次元クロミナンスヒストグラムの各次元について、ピクセル値の割合の対数を使用すること、
恒量を有するように前記２次元クロミナンスヒストグラムを正規化すること、及び、
前記２次元クロミナンスヒストグラムの各ビンの平方根を取ること、を含む、方法。
【請求項２】
コンピューティングデバイスによって、入力画像を取得することであって、前記入力画像は、前記入力画像内の白色を定義するクロミナンス値によって表される白色点を有する、こと、
前記コンピューティングデバイスによって、前記入力画像の色に基づき、前記入力画像の２次元クロミナンスヒストグラムを生成すること、
前記コンピューティングデバイスによって、２次元ヒートマップを作成するために、フィルタを用いて前記２次元クロミナンスヒストグラムを畳み込むことであって、前記２次元ヒートマップ内のエントリは、それぞれのエントリに対応するそれぞれの色合いが前記入力画像の前記白色点にどれだけ近いかのそれぞれの推定を表す、こと、
前記コンピューティングデバイスによって、前記２次元ヒートマップ内の最大値の閾値内にある特定の値を表す、前記２次元ヒートマップ内のエントリを選択すること、及び、
前記コンピューティングデバイスによって、前記選択されたエントリに基づき、出力画像を形成するために前記入力画像に色合いを付けること、を含み、
前記選択されたエントリに基づき、前記入力画像に色合いを付けることは、前記フィルタを前記入力画像に適用することを含み、前記フィルタは前記選択されたエントリによってパラメータ化される、方法。
【請求項３】
前記２次元クロミナンスヒストグラムにおけるビン（ｕ，ｖ）は、（ｕ，ｖ）のクロミナンス閾値内のクロミナンス値を伴う前記入力画像内のピクセル数を表し、ｕは第１の商の対数を表し、ｖは第２の商の対数を表し、前記第１の商は、前記入力画像内の赤色ピクセル値を前記入力画像内の緑色ピクセル値で割った商であり、前記第２の商は、前記入力画像内の青色ピクセル値を前記入力画像内の緑色ピクセル値で割った商である、請求項１に記載の方法。
【請求項４】
前記２次元クロミナンスヒストグラムの前記ビンは、その中のピクセルの輝度によって重み付けされる、請求項１に記載の方法。
【請求項５】
前記入力画像を取得することは、前記コンピューティングデバイスが前記入力画像をキャプチャすることを含む、請求項１に記載の方法。
【請求項６】
前記出力画像は前記入力画像よりも多くホワイトバランス処理される、請求項１に記載の方法。
【請求項７】
前記フィルタは、各々がそれぞれのトレーニング画像のそれぞれの既知の照明に関連付けられた、前記それぞれのトレーニング画像のトレーニングクロミナンスヒストグラムのセットに基づいてトレーニングされる、請求項１に記載の方法。
【請求項８】
コンピューティングデバイスによって、入力画像を取得することであって、前記入力画像は、前記入力画像内の白色を定義するクロミナンス値によって表される白色点を有する、こと、
前記コンピューティングデバイスによって、前記入力画像の色に基づき、前記入力画像の２次元クロミナンスヒストグラムを生成すること、
前記コンピューティングデバイスによって、２次元ヒートマップを作成するために、フィルタを用いて前記２次元クロミナンスヒストグラムを畳み込むことであって、前記２次元ヒートマップ内のエントリは、それぞれのエントリに対応するそれぞれの色合いが前記入力画像の前記白色点にどれだけ近いかのそれぞれの推定を表す、こと、
前記コンピューティングデバイスによって、前記２次元ヒートマップ内の最大値の閾値内にある特定の値を表す、前記２次元ヒートマップ内のエントリを選択すること、及び、
前記コンピューティングデバイスによって、前記選択されたエントリに基づき、出力画像を形成するために前記入力画像に色合いを付けること、を含み、
前記フィルタは、前記フィルタを用いた各トレーニングヒストグラムの畳み込みの正規化された指数関数を使用してトレーニングされ、
前記入力画像の色に基づいて、複数の増補された２次元クロミナンスヒストグラムを、前記入力画像の増補されたバージョンから生成することをさらに含み、前記入力画像の前記増補されたバージョンの各々は、フィルタリングされたときにスカラー乗法特性を保持し、
前記フィルタを用いて前記２次元クロミナンスヒストグラムを畳み込むことは、前記正規化された指数関数を適用する前に、前記複数の増補された２次元クロミナンスヒストグラムのフィルタリング済み応答を合計することを含む、方法。
【請求項９】
トレーニング後、前記フィルタは、ホワイトバランス処理されたシーンにおける色の分布を表し、トレーニング画像の色合いとは無関係である、請求項７に記載の方法。
【請求項１０】
コンピューティングデバイスによって実行されたときに、以下の動作を前記コンピューティングデバイスに実行させるためのプログラム命令を記憶した、コンピュータ可読記憶媒体であって、前記動作は、
入力画像を取得することであって、前記入力画像は、前記入力画像内の白色を定義するクロミナンス値によって表される白色点を有する、こと、
前記入力画像の色に基づき、前記入力画像の２次元クロミナンスヒストグラムを生成すること、
２次元ヒートマップを作成するために、フィルタを用いて前記２次元クロミナンスヒストグラムを畳み込むことであって、前記２次元ヒートマップ内のエントリは、それぞれのエントリに対応するそれぞれの色合いが前記入力画像の前記白色点にどれだけ近いかのそれぞれの推定を表す、こと、
前記２次元ヒートマップ内の最大値の閾値内にある特定の値を表す、前記２次元ヒートマップ内のエントリを選択すること、及び、
前記選択されたエントリに基づき、出力画像を形成するために前記入力画像に色合いを付けること、を含み、
前記２次元クロミナンスヒストグラムを生成することは、
前記２次元クロミナンスヒストグラムの各次元について、ピクセル値の割合の対数を使用すること、
恒量を有するように前記２次元クロミナンスヒストグラムを正規化すること、及び、
前記２次元クロミナンスヒストグラムの各ビンの平方根を取ること、を含む、コンピュータ可読記憶媒体。
【請求項１１】
コンピューティングデバイスによって実行されたときに、以下の動作を前記コンピューティングデバイスに実行させるためのプログラム命令を記憶した、コンピュータ可読記憶媒体であって、前記動作は、
入力画像を取得することであって、前記入力画像は、前記入力画像内の白色を定義するクロミナンス値によって表される白色点を有する、こと、
前記入力画像の色に基づき、前記入力画像の２次元クロミナンスヒストグラムを生成すること、
２次元ヒートマップを作成するために、フィルタを用いて前記２次元クロミナンスヒストグラムを畳み込むことであって、前記２次元ヒートマップ内のエントリは、それぞれのエントリに対応するそれぞれの色合いが前記入力画像の前記白色点にどれだけ近いかのそれぞれの推定を表す、こと、
前記２次元ヒートマップ内の最大値の閾値内にある特定の値を表す、前記２次元ヒートマップ内のエントリを選択すること、及び、
前記選択されたエントリに基づき、出力画像を形成するために前記入力画像に色合いを付けること、を含み、
前記選択されたエントリに基づき、前記入力画像に色合いを付けることは、前記フィルタを前記入力画像に適用することを含み、前記フィルタは前記選択されたエントリによってパラメータ化される、コンピュータ可読記憶媒体。
【請求項１２】
前記２次元クロミナンスヒストグラムにおけるビン（ｕ，ｖ）は、（ｕ，ｖ）のクロミナンス閾値内のクロミナンス値を伴う前記入力画像内のピクセル数を表し、ｕは第１の商の対数を表し、ｖは第２の商の対数を表し、前記第１の商は、前記入力画像内の赤色ピクセル値を前記入力画像内の緑色ピクセル値で割った商であり、前記第２の商は、前記入力画像内の青色ピクセル値を前記入力画像内の緑色ピクセル値で割った商である、請求項１０に記載のコンピュータ可読記憶媒体。
【請求項１３】
前記２次元クロミナンスヒストグラムの前記ビンは、その中のピクセルの輝度によって重み付けされる、請求項１０に記載のコンピュータ可読記憶媒体。
【請求項１４】
前記フィルタは、各々がそれぞれのトレーニング画像のそれぞれの既知の照明に関連付けられた、前記それぞれのトレーニング画像のトレーニングクロミナンスヒストグラムのセットに基づいてトレーニングされる、請求項１０に記載のコンピュータ可読記憶媒体。
【請求項１５】
コンピューティングデバイスによって実行されたときに、以下の動作を前記コンピューティングデバイスに実行させるためのプログラム命令を記憶した、コンピュータ可読記憶媒体であって、前記動作は、
入力画像を取得することであって、前記入力画像は、前記入力画像内の白色を定義するクロミナンス値によって表される白色点を有する、こと、
前記入力画像の色に基づき、前記入力画像の２次元クロミナンスヒストグラムを生成すること、
２次元ヒートマップを作成するために、フィルタを用いて前記２次元クロミナンスヒストグラムを畳み込むことであって、前記２次元ヒートマップ内のエントリは、それぞれのエントリに対応するそれぞれの色合いが前記入力画像の前記白色点にどれだけ近いかのそれぞれの推定を表す、こと、
前記２次元ヒートマップ内の最大値の閾値内にある特定の値を表す、前記２次元ヒートマップ内のエントリを選択すること、及び、
前記選択されたエントリに基づき、出力画像を形成するために前記入力画像に色合いを付けること、を含み、
前記フィルタは、前記フィルタを用いた各トレーニングヒストグラムの畳み込みの正規化された指数関数を使用してトレーニングされ、
前記動作は、
前記入力画像の色に基づいて、複数の増補された２次元クロミナンスヒストグラムを、前記入力画像の増補されたバージョンから生成することをさらに含み、前記入力画像の前記増補されたバージョンの各々は、フィルタリングされたときにスカラー乗法特性を保持し、
前記フィルタを用いて前記２次元クロミナンスヒストグラムを畳み込むことは、前記正規化された指数関数を適用する前に、前記複数の増補された２次元クロミナンスヒストグラムのフィルタリング済み応答を合計することを含む、コンピュータ可読記憶媒体。
【請求項１６】
トレーニング後、前記フィルタは、ホワイトバランス処理されたシーンにおける色の分布を表し、トレーニング画像の色合いとは無関係である、請求項１４に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
[0001]  デジタルイメージングは、デジタル画像（例えば、写真又はモーションビデオ）においてシーンの色及び明るさの特徴をキャプチャ及び表示することを指し得る。特定シーンのデジタル画像がキャプチャされるとき、その中の物体のトゥルーカラーは、シーン内の任意のライティングの色によってオフセットされ得る。したがって、デジタル画像をさらに処理及び／又は強調して、トゥルーカラーにより近い色で新しいデジタル画像を作成することができる。しかしながら、デジタル画像をキャプチャするために画像センサに依存せずにこの色補正を実施することは困難である。
【発明の概要】
【発明が解決しようとする課題】
【０００２】
[0002]  自然画像内のピクセルの色は、反射率（例えば、シーン内の表面の色）及び照明（シーン内の表面に当たる光の色）という、２つの量の積として表すことができる。照明から反射率を判別するための能力をコンピュータに与えるという問題は、黄色のピクセルが与えられた場合、黄色の光源下での白色の物体を表すか、又は白色の光源下での黄色の物体を表すかがしばしば明白でないという制約があるため、困難である。画像の照明の色を推測及び補正するというこの課題は、一般に「色彩恒常性」又は「ホワイトバランス」と呼ばれる。
【課題を解決するための手段】
【０００３】
[0003]  本明細書における実施形態は、画像の色チャネルのスケーリングをその画像のログ色度のヒストグラムの変換に関連付ける観察に基づく、色彩恒常性技法を開示している。この観察により、畳み込みニューラルネットワーク及び構造化予測に基づくツールを用いて、色彩恒常性問題を識別機械学習問題としてとらえることができる。このように、色彩恒常性技法を識別トレーニングすることによって、本明細書における実施形態は、標準ベンチマークで誤り率を４０％も減少させることができる。
【０００４】
[0004]  したがって、第１の例示的実施形態は、入力画像を取得することを含み得る。入力画像は、入力画像内の白色を定義するクロミナンス値によって表される白色点を有し得る。第１の例示的実施形態は、入力画像の色に基づいて、入力画像の２次元クロミナンスヒストグラムを生成することも含み得る。第１の例示的実施形態は、２次元ヒートマップを作成するために、フィルタを用いて２次元クロミナンスヒストグラムを畳み込むことを、さらに含み得る。２次元ヒートマップ内のエントリは、それぞれのエントリに対応するそれぞれの色合いが入力画像の白色点にどれだけ近いかのそれぞれの推定を表すことができる。第１の例示的実施形態は、加えて、ヒートマップ内の最大値の閾値内である特定の値を表す、２次元ヒートマップ内のエントリを選択すること、及び、選択されたエントリに基づいて、出力画像を形成するために入力画像に色合いを付けることを含み得る。
【０００５】
[0005]  第２の例示的実施形態において、製品は、コンピューティングデバイスによって実行されたときに、第１の例示的実施形態に従った動作をコンピューティングデバイスに実行させるプログラム命令をその上に記憶した、非一時的コンピュータ可読媒体を含むことができる。
【０００６】
[0006]  第３の例示的実施形態において、コンピューティングデバイスは、少なくとも１つのプロセッサ、並びにデータストレージ及びプログラム命令を含むことができる。プログラム命令は、データストレージ内に記憶可能であり、少なくとも１つのプロセッサによって実行されたときに、第１の例示的実施形態に従った動作をコンピューティングデバイスに実行させることが可能である。
【０００７】
[0007]  第４の例示的実施形態において、システムは、第１の例示的実施形態の動作の各々を実施するための様々な手段を含むことができる。
【０００８】
[0008]  当業者であれば、適切な場合には添付の図面を参照しながら以下の詳細な説明を読むことによって、これら並びに他の実施形態、態様、利点、及び代替実施形態が明らかとなろう。さらに、本概要及び本明細書に提供される他の説明及び図面は、単なる例として実施形態を示すことが意図され、したがって、多数の変形が可能であることを理解されたい。例えば、構造的要素及びプロセスステップは、請求される実施形態の範囲内にとどまりながら、再配置、組み合わせ、分散、消去、或いは変更が可能である。
【図面の簡単な説明】
【０００９】
【図１】[0009]例示的実施形態に従った、デジタルカメラデバイスの正面、右側面、及び背面を示す図である。
【図２】[0010]例示的実施形態に従った、画像キャプチャ機能を備えるコンピューティングデバイスを示すブロック図である。
【図３】[0011]例示的実施形態に従った、画像の３つの色合い及び各々についての関連付けられたクロミナンスヒストグラムを示す図である。
【図４】[0012]例示的実施形態に従った、提案される照明色の関数として、トレーニング中に使用されるコスト関数の視覚化を示す図である。
【図５】[0013]例示的実施形態に従った、ピラミッドフィルタリングの視覚化を示す図である。
【図６】[0014]例示的実施形態に従った、強化画像に関連付けられた４つのチャネルによってキャプチャされた情報の視覚化を示す図である。
【図７】[0015]例示的実施形態に従ったフローチャートである。
【発明を実施するための形態】
【００１０】
[0016]  本明細書では、例示的方法、デバイス、及びシステムを説明する。「例」及び「例示的」という用語は、本明細書では「例、実例、又は例示としての役割を果たすこと」を意味するために用いられることを理解されたい。「例」又は「例示」として本明細書で説明する任意の実施形態又は特徴は、必ずしも他の実施形態又は特徴よりも好ましいか又は有利であると解釈されるものではない。本明細書で提示される主題の範囲から逸脱することなく、他の実施形態が利用可能であり、他の変更が実行可能である。
【００１１】
[0017]  したがって、本明細書で説明する例示的実施形態は限定的であることを意味していない。本開示の態様は、本明細書で一般的に説明され、図に例示される場合、すべてが本明細書内で企図される多種多様な異なる構成で、配置、置換、組み合わせ、分離、及び設計することができる。
【００１２】
[0018]  さらに、文脈が示唆していない限り、各図内に例示される特徴は互いに組み合わせて使用することができる。したがって、図は一般に、例示されるすべての特徴が各実施形態に必要ではないことを理解した上で、１つ以上の実施形態全体を構成する態様として見なすべきである。
【００１３】
１．例示的画像キャプチャデバイス
[0019]  カメラなどの画像キャプチャデバイスは、普及するにつれて、スタンドアロン型ハードウェアデバイスとして採用すること、又は様々な他のタイプのデバイスに組み込むことが可能である。例えば、現在のスチルカメラ及びビデオカメラは、通常、ワイヤレスコンピューティングデバイス（例えば、モバイルフォン）、タブレットコンピュータ、ラップトップコンピュータ、ビデオゲームインターフェース、ホームオートメーションデバイス、並びに自動車及び他のタイプの車両にまで含められている。
【００１４】
[0020]  カメラの物理コンポーネントは、それを介して光が入る１つ以上のアパーチャ、光によって表される画像をキャプチャするための１つ以上の記録面、及び、記録面上に画像の少なくとも一部をフォーカスするために各アパーチャの前に位置決めされるレンズを、含むことができる。アパーチャは、サイズが固定されるか又は調整可能とすることができる。アナログカメラにおいて、記録面は写真用フィルムとすることができる。デジタルカメラにおいて、記録面は、キャプチャした画像をデータ記憶ユニット（例えば、メモリ）に転送及び／又は記憶するための、電子画像センサ（例えば、電荷結合素子（ＣＣＤ）又は相補型金属酸化膜半導体（ＣＭＯＳ）センサ）を含むことができる。
【００１５】
[0021]  １つ以上のシャッタを、レンズ又は記録面に、又はその近くに結合することができる。各シャッタの位置は、光が記録面に到達しないようにブロックする閉位置、又は光が記録面に到達できるようにする開位置の、いずれかとすることができる。各シャッタの位置は、シャッタボタンによって制御可能である。例えばシャッタは、デフォルトで閉位置とすることができる。シャッタボタンがトリガされた（例えば、押された）時、シャッタは、シャッタサイクルと呼ばれる期間、閉位置から開位置に変更され得る。シャッタサイクル中、画像は記録面上にキャプチャすることができる。シャッタサイクルが終わると、シャッタは閉位置に戻ることができる。
【００１６】
[0022]  代替として、シャッタリングプロセスは電子的であり得る。例えば、ＣＣＤ画像センサの電子シャッタが「開く」前に、センサは、そのフォトダイオード内に残留信号があればそれを除去するためにリセットすることができる。電子シャッタが開いたままの間、フォトダイオードは電荷を蓄積することができる。シャッタが閉じた時又は閉じた後、これらの電荷は長期データストレージに移動可能である。機械的及び電子的なシャッタリングの組み合わせも可能である。
【００１７】
[0023]  シャッタは、タイプにかかわらず、シャッタボタン以外の他の何かによる活動化及び／又は制御が可能である。例えばシャッタは、ソフトキー、タイマ、又は何らかの他のトリガによって活動化され得る。本明細書において、「画像キャプチャ」という用語は、シャッタリングプロセスがどのようにトリガ又は制御されるかにかかわらず、結果として１つ以上の画像が記録されることになる、任意の機械的及び／又は電子的シャッタリングプロセスを指すことができる。
【００１８】
[0024]  キャプチャされた画像の露光は、アパーチャのサイズ、アパーチャに入る光の明るさ、及びシャッタサイクルの長さ（シャッタ長さ又は露光長さとも呼ばれる）の組み合わせによって、決定することができる。加えて、デジタル及び／又はアナログのゲインを画像に印加し、それによって露光に影響を与えることもできる。いくつかの実施形態において、「総露光長さ」又は「総露光時間」という用語は、特定のアパーチャサイズについてゲインと掛け合わされるシャッタ長さを指すことができる。本明細書において、「総露光時間」又は「ＴＥＴ」という用語は、場合によってはシャッタ長さ、露光時間、又は、記録面に到達する光によって生じる信号応答の量を制御する任意の他の測定基準であると解釈されるべきである。
【００１９】
[0025]  スチルカメラは、画像キャプチャがトリガされるごとに１つ以上の画像をキャプチャすることができる。ビデオカメラは、画像キャプチャがトリガされた状態である限り（例えば、シャッタボタンが押し下げられたままである間）、特定のレート（例えば、毎秒２４画像又はフレーム）で、連続して画像をキャプチャすることができる。いくつかのデジタルスチルカメラは、カメラデバイス又はアプリケーションが活動化されたときにシャッタを開くことが可能であり、シャッタは、カメラデバイス又はアプリケーションが非活動化されるまでこの位置を維持することができる。シャッタが開いている間、カメラデバイス又はアプリケーションはシーンの表現をキャプチャし、ビューファインダ上に表示することができる。画像キャプチャがトリガされると、現在のシーンの１つ以上の別個のデジタル画像がキャプチャされ得る。
【００２０】
[0026]  カメラは、アナログカメラであっても、アパーチャサイズ、ＴＥＴ、ゲインなどの１つ以上のカメラ機能及び／又は設定を制御するための、ソフトウェアを含むことができる。加えて、いくつかのカメラは、これらの画像がキャプチャされる間又はされた後、画像をデジタル処理するソフトウェアを含むこともできる。上記の説明は一般的なカメラを指しているが、特にデジタルカメラに関連し得る。
【００２１】
[0027]  前述のように、デジタルカメラはスタンドアロン型デバイスとするか、又は他のデバイスに組み込むことができる。例として、図１はデジタルカメラデバイス１００のフォームファクタを示す。デジタルカメラデバイス１００は、例えば、モバイルフォン、タブレットコンピュータ、又はウェアラブルコンピューティングデバイスとすることができる。しかしながら他の実施形態が可能である。デジタルカメラデバイス１００は、本体１０２、前向きカメラ１０４、多素子ディスプレイ１０６、シャッタボタン１０８、及び他のボタン１１０などの、様々な要素を含むことができる。デジタルカメラデバイス１００は、後向きカメラ１１２をさらに含むことができる。前向きカメラ１０４は、動作中、典型的にはユーザに対面する本体１０２の面、又は多素子ディスプレイ１０６と同じ面上に位置決めすることができる。後向きカメラ１１２は、前向きカメラ１０４とは反対側の本体１０２の面上に位置決めすることができる。カメラを前向き及び後向きと呼ぶことは任意であり、デジタルカメラデバイス１００は、本体１０２の様々な面上に位置決めされる複数のカメラを含むことができる。
【００２２】
[0028]  多素子ディスプレイ１０６は、陰極線管（ＣＲＴ）ディスプレイ、発光ダイオード（ＬＥＤ）ディスプレイ、液晶（ＬＣＤ）ディスプレイ、プラズマディスプレイ、又は当技術分野で知られる任意の他のタイプのディスプレイを表すことができる。いくつかの実施形態において、多素子ディスプレイ１０６は、前向きカメラ１０４及び／又は後向きカメラ１１２によってキャプチャされている現在の画像、或いは、これらのカメラのいずれか又は両方によってキャプチャ可能であるか又は最近キャプチャされた画像の、デジタル表現を表示することができる。したがって、多素子ディスプレイ１０６は、いずれかのカメラにとってビューファインダの役割を果たすことができる。多素子ディスプレイ１０６は、任意の態様のデジタルカメラデバイス１００の設定及び／又は構成を調整することが可能な、タッチスクリーン及び／又は存在感知機能をサポートすることもできる。
【００２３】
[0029]  前向きカメラ１０４は、画像センサ及びレンズなどの関連付けられた光学素子を含むことができる。前向きカメラ１０４は、ズーム機能を提供し得るか、又は固定焦点長さを有することができる。他の実施形態において、前向きカメラ１０４と共に交換可能レンズを使用することができる。前向きカメラ１０４は、変動機械アパーチャ、並びに機械及び／又は電子シャッタを有することができる。前向きカメラ１０４は、スチル画像、ビデオ画像、又はその両方をキャプチャするようにも構成可能である。さらに、前向きカメラ１０４は、単視、立体視、又は多視のカメラを表すことができる。後向きカメラ１１２は、同様に又は異なるように配置可能である。加えて、前向きカメラ１０４、後向きカメラ１１２、又はその両方は、１つ以上のカメラのアレイとすることもできる。
【００２４】
[0030]  前向きカメラ１０４及び後向きカメラ１１２のうちのいずれか又は両方は、対象物体を照明するために明視野を提供する照明コンポーネントを含むか、又はこれに関連付けることができる。例えば、照明コンポーネントは、対象物体のフラッシュ又は連続照明を提供することができる。照明コンポーネントは、構造化光、分極光、及び特定のスペクトルコンテンツを備える光のうちの１つ以上を含む、明視野を提供するように構成することも可能である。本明細書における実施形態との関連において、既知の、物体から３次元（３Ｄ）モデルを回復するために使用される、他のタイプの明視野が可能である。
【００２５】
[0031]  前向きカメラ１０４及び後向きカメラ１１２のうちのいずれか又は両方は、カメラがキャプチャ可能なシーンの周辺の明るさを、連続的又は時折決定することができる、周辺光センサを含むか又はこれに関連付けることができる。いくつかのデバイスにおいて、周辺光センサを使用して、カメラ（例えば、ビューファインダ）に関連付けられたスクリーンディスプレイの明るさを調整することができる。決定された周辺の明るさが高い場合、スクリーンを見やすくするためにスクリーンの明るさレベルを上げることができる。決定された周辺の明るさが低い場合も、スクリーンを見やすくするため、並びに潜在的に電力を節約するために、スクリーンの明るさレベルを下げることができる。加えて、周辺光センサの入力を使用して、関連付けられたカメラのＴＥＴを決定すること、又はこの決定を助けることができる。
【００２６】
[0032]  デジタルカメラデバイス１００は、対象物体の画像をキャプチャするために、多素子ディスプレイ１０６及び前向きカメラ１０４又は後向きカメラ１１２のいずれかを使用するように構成可能である。キャプチャされる画像は、複数のスチル画像又はビデオストリームとすることができる。画像キャプチャは、シャッタボタン１０８を活動化すること、多素子ディスプレイ１０６上のソフトキーを押すこと、又は何らかの他の機構によって、トリガすることができる。実装に応じて、画像は、特定の時間間隔で、シャッタボタン１０８の押し下げ時に、対象物体の適切なライティング条件で、デジタルカメラデバイス１００の所定距離の移動時に、又は、所定のキャプチャスケジュールに従って、自動的にキャプチャすることができる。
【００２７】
[0033]  前述のように、デジタルカメラデバイス１００又は別のタイプのデジタルカメラの機能は、ワイヤレスコンピューティングデバイス、携帯電話、タブレットコンピュータ、ラップトップコンピュータなどの、コンピューティングデバイスに組み込むことができる。例示の目的で、図２は、カメラコンポーネント２２４を含み得る例示的コンピューティングデバイス２００のコンポーネントのうちのいくつかを示す簡略化されたブロック図である。
【００２８】
[0034]  例として制限無しに、コンピューティングデバイス２００は、セルラ携帯電話（例えば、スマートフォン）、スチルカメラ、ビデオカメラ、ファックス機、コンピュータ（デスクトップ、ノートブック、タブレット、又はハンドヘルドコンピュータなど）、携帯情報端末（ＰＤＡ）、デジタルテレビジョン、リモートコントロール、ウェアラブルコンピューティングデバイス、或いは、少なくとも何らかの画像キャプチャ及び／又は画像処理の機能が装備された何らかの他のタイプのデバイスとすることができる。コンピューティングデバイス２００は、デジタルカメラ、カメラアプリケーションがソフトウェア内で動作する特定の物理ハードウェアプラットフォーム、又は、カメラ機能を実施するように構成されたハードウェア及びソフトウェアの他の組み合わせなどの、物理カメラデバイスを表し得ることを理解されたい。
【００２９】
[0035]  図２に示されるように、コンピューティングデバイス２００は、通信インターフェース２０２、ユーザインターフェース２０４、プロセッサ２０６、データストレージ２０８、及びカメラコンポーネント２２４を含むことが可能であり、それらのすべてが、システムバス、ネットワーク、又は他の接続機構２１０によって共に通信可能にリンクされ得る。
【００３０】
[0036]  通信インターフェース２０２は、コンピューティングデバイス２００がアナログ又はデジタル変調を使用して、他のデバイス、アクセスネットワーク、及び／又は転送ネットワークと通信できるようにするものである。したがって、通信インターフェース２０２は、簡易電話サービス（ＰＯＴＳ）通信及び／或いはインターネットプロトコル（ＩＰ）又は他のパケット通信などの、回路交換及び／又はパケット交換の通信を容易にすることができる。例えば、通信インターフェース２０２は、無線アクセスネットワーク又はアクセスポイントとのワイヤレス通信のために配置されたチップセット及びアンテナを含むことができる。また、通信インターフェース２０２は、イーサネット、ユニバーサルシリアルバス（ＵＳＢ）、又は高解像度マルチメディアインターフェース（ＨＤＭＩ）ポートなどの、ワイヤラインインターフェースの形を取るか、又はこれを含むことができる。通信インターフェース２０２は、ＷｉＦｉ、ＢＬＵＥＴＯＯＴＨ（登録商標）、全地球測位システム（ＧＰＳ）、又はワイドエリアワイヤレスインターフェース（例えば、ＷｉＭＡＸ又は３ＧＰＰロングタームエボリューション（ＬＴＥ））などの、ワイヤレスインターフェースの形を取るか、又はこれを含むこともできる。しかしながら、他の形の物理レイヤインターフェース及び他のタイプの標準又はプロプライエタリ通信プロトコルを、通信インターフェース２０２を介して使用することができる。さらに、通信インターフェース２０２は、複数の物理通信インターフェース（例えば、ＷｉＦｉインターフェース、ＢＬＵＥＴＯＯＴＨ（登録商標）インターフェース、及びワイドエリアワイヤレスインターフェース）を備えることができる。
【００３１】
[0037]  ユーザインターフェース２０４は、コンピューティングデバイス２００が、ユーザから入力を受信するため及びユーザに出力を提供するためなどの、人間のユーザ又は人間でないユーザと対話できるようにするために機能することができる。したがって、ユーザインターフェース２０４は、キーパッド、キーボード、タッチセンサ又は存在感知パネル、コンピュータマウス、トラックボール、ジョイスティック、マイクロフォンなどの、入力コンポーネントを含むことができる。ユーザインターフェース２０４は、例えば、存在感知パネルと組み合わせ得るディスプレイスクリーンなどの、１つ以上の出力コンポーネントも含むことができる。ディスプレイスクリーンは、ＣＲＴ、ＬＣＤ、及び／又はＬＥＤ技術、或いは現在既知であるか又は後で開発される他の技術に基づくことができる。ユーザインターフェース２０４は、スピーカ、スピーカジャック、オーディを出力ポート、オーディオ出力デバイス、イヤフォン、及び／又は他の同様のデバイスを介して、可聴出力を生成するように構成することもできる。
【００３２】
[0038]  いくつかの実施形態において、ユーザインターフェース２０４は、コンピューティングデバイス２００によってサポートされるスチルカメラ及び／又はビデオカメラの機能のためにビューファインダの役割を果たす、ディスプレイを含むことができる。加えてユーザインターフェース２０４は、カメラ機能の構成及び焦点調節並びに画像のキャプチャリング（ピクチャのキャプチャリング）を容易にする、１つ以上のボタン、スイッチ、ノブ、及び／又はダイヤルを含むことができる。これらのボタン、スイッチ、ノブ、及び／又はダイヤルのうちのいくつか又はすべては、存在感知パネルを用いて実装することが可能であり得る。
【００３３】
[0039]  プロセッサ２０６は、１つ以上の汎用プロセッサ、例えばマイクロプロセッサ、及び／又は、１つ以上の特定用途向けプロセッサ、例えばデジタル信号プロセッサ（ＤＳＰ）、グラフィックス処理ユニット（ＧＰＵ）、浮動小数点ユニット（ＦＰＵ）、ネットワークプロセッサ、又は特定用途向け集積回路（ＡＳＩＣ）を、備えることができる。いくつかのインスタンスにおいて、特定用途向けプロセッサは、機能の中でもとりわけ、画像処理、画像位置合わせ、及び画像マージが可能であり得る。データストレージ２０８は、磁気、光、フラッシュ、又は有機ストレージなどの、１つ以上の揮発性及び／又は不揮発性のストレージコンポーネントを含むことが可能であり、全体又は部分的にプロセッサ２０６に組み込むことができる。データストレージ２０８は、取り外し可能及び／又は取り外し不可のコンポーネントを含むことができる。
【００３４】
[0040]  プロセッサ２０６は、本明細書で説明する様々な機能を実施するために、データストレージ２０８内に記憶されたプログラム命令２１８（例えば、コンパイル又は非コンパイルのプログラム論理及び／又は機械コード）を実行することが可能であり得る。したがって、データストレージ２０８は、コンピューティングデバイス２００によって実行されると、本明細書及び／又は添付の図面内に開示された方法、プロセス、又は動作のうちのいずれかをコンピューティングデバイス２００に実施させるプログラム命令がその上に記憶された、非一時的コンピュータ可読媒体を含むことができる。プロセッサ２０６によるプログラム命令２１８の実行の結果として、プロセッサ２０６はデータ２１２を使用することができる。
【００３５】
[0041]  例として、プログラム命令２１８は、コンピューティングデバイス２００上にインストールされた、オペレーティングシステム２２２（例えば、オペレーティングシステムカーネル、デバイスドライバ、及び／又は他のモジュール）及び１つ以上のアプリケーションプログラム２２０（例えば、カメラ機能、アドレスブック、電子メール、ウェブブラウジング、ソーシャルネットワーキング、及び／又はゲーミングアプリケーション）を含むことができる。同様に、データ２１２は、オペレーティングシステムデータ２１６及びアプリケーションデータ２１４を含むことができる。オペレーティングシステムデータ２１６は、主としてオペレーティングシステム２２２にアクセス可能であり得、アプリケーションデータ２１４は、主としてアプリケーションプログラム２２０のうちの１つ以上にアクセス可能であり得る。アプリケーションデータ２１４は、コンピューティングデバイス２００のユーザに対して可視であるか又は非表示の、ファイルシステム内に配置可能である。
【００３６】
[0042]アプリケーションプログラム２２０は、１つ以上のアプリケーションプログラミングインターフェース（ＡＰＩ）を介してオペレーティングシステム２２２と通信可能である。これらのＡＰＩは、例えばアプリケーションプログラム２２０の、アプリケーションデータ２１４の読み取り及び／又は書き込み、通信インターフェース２０２を介した情報の送信又は受信、ユーザインターフェース２０４上での情報の受信及び／又は表示などを、容易にすることができる。
【００３７】
[0043]  いくつかの専門語において、アプリケーションプログラム２２０は略して「ａｐｐ」と言い表すことができる。加えて、アプリケーションプログラム２２０は、１つ以上のオンラインアプリケーションストア又はアプリケーションマーケットを介して、コンピューティングデバイス２００にダウンロード可能であり得る。しかしながらアプリケーションプログラムは、ウェブブラウザを介するか、又はコンピューティングデバイス２００上の物理インターフェース（例えばＵＳＢポート）を介するなどの、他の方法で、コンピューティングデバイス２００上にインストールすることも可能である。
【００３８】
[0044]  カメラコンポーネント２２４は、アパーチャ、シャッタ、記録面（例えば、写真フィルム及び／又は画像センサ）、レンズ、及び／又はシャッタボタンを含み得るが、これらに限定されない。カメラコンポーネント２２４は、プロセッサ２０６によって実行されるソフトウェアによって、少なくとも部分的に制御され得る。
【００３９】
２．例示的色モデル
[0045]  本セクションは、一般的な意味で、色をコンピュータスクリーン上又は画像ファイル内に表すことができる方法を説明する。この情報は、以下のセクションで説明する画像処理技法との関連において有用であり得る。
【００４０】
[0046]  キャプチャされた画像は、いくつかの色モデルを使用してデジタル的に表すことができる。例えば、赤緑青（ＲＧＢ）色モデルを、コンピュータスクリーンなどの電子出力デバイス上に画像を表示するために使用することができる。ＲＧＢは、赤、緑、及び青の光が、色のスペクトルを生成するために様々な方法で共に追加される、加法色モデルである。例えば、シアンは緑及び青を組み合わせることによって形成され得、黄は赤及び緑を組み合わせることによって形成され得、マゼンタは赤及び青を組み合わせることによって形成され得、白は赤、緑、及び青を組み合わせることによって形成され得る。
【００４１】
[0047]  ＲＧＢ画像の特定のピクセルは３面タプル（Ｒ，Ｇ，Ｂ）として表すことが可能であり、その各面は０から事前定義された最大値（例えば、２５５）まで変化可能である。すべての面が０の場合、結果は黒になり得る。すべての面が最大値の場合、結果は最大明るさで表される白になり得る。（本明細書で説明する色面は、色チャネルと呼ばれることもある。）
【００４２】
[0048]  別の色モデルはＹＣｂＣｒである。いくつかの実装において、この色モデルは画像の代替表現として使用することができる。特に、Ｙ面はピクセルの明るさを表し得、Ｃｂ及びＣｒ面は、それぞれ青−黄クロミナンス及び赤−緑クロミナンスを表し得る。例えば、青−黄クロミナンスは、ＲＧＢ画像内の青ピクセル値をＲＧＢ画像内の緑ピクセル値で割ることによって表し得、赤−緑クロミナンスは、ＲＧＢ画像内の赤ピクセル値をＲＧＢ画像内の緑ピクセル値で割ることによって表し得る。したがって、ＹＣｂＣｒ色モデルは、ＲＧＢ色モデルとの明確に定義された関係を有し、このＲＧＢとの間で比較的容易に変換可能である。
【００４３】
３．例示的ホワイトバランシング
[0049]  ホワイトバランシングとは、そこから画像がキャプチャされた実世界のシーンにおける実際の白色を、画像内の白色が適切に反映することを保証するための試行において、デジタルカメラデバイス又は関連付けられたソフトウェアが、キャプチャされた画像に対して実行可能な調整である。ホワイトバランスを理解するためには、第１に色温度の概念を理解することが有用である。
【００４４】
[0050]  色温度は、画像又はシーンにおける青色光の量と赤色光の量との比率に基づいて、光の質を測定する。色温度は、ケルビン（Ｋ）度単位で表される。より高い色温度（即ち、より大きなケルビン値）を伴う画像又はシーンは、より低い色温度（即ち、より小さなケルビン値）を伴う画像又はシーンよりも青い。したがって、「より冷たい」光はより高い色温度を有し、より温かい光はより低い色温度を有する。
【００４５】
[0051]  人間の眼と脳は、異なる色温度に調整することができる。例えば人間は、強い太陽光の下で見るか、白熱灯で照明された室内で見るかにかかわらず、白い物体を白として見る。デジタルカメラデバイスは、通常、シーンの色温度を測定するためにビルトインセンサを有し、アルゴリズムを使用してシーンのキャプチャしたイメージを処理することが可能であるため、最終結果は人間がどのようにシーンを知覚するかに近くなる。画像内の白色をシーン内の白色に似せるためのこの調整が、ホワイトバランシングと呼ばれる。現行のホワイトバランシングアルゴリズムは、あらゆる画像の白色点が、それが表すシーンの白色点に似るほど十分に正確でない可能性がある。（画像の白色点は、画像の「白色」を定義するクロミナンス値を表す。）
【００４６】
[0052]  本明細書における実施形態は、広範な画像センサハードウェアと共に動作可能な高品質のホワイトバランス技法を提供する。これらの技法は、リアルタイム又はほぼリアルタイムで、ソフトウェア内で動作する。これにより、ハードウェア特有のホワイトバランスアルゴリズムを様々な画像センサに提供する必要をなくすことができる。
【００４７】
[0053]  この目標を達成するために、本明細書における実施形態は、「出力」ホワイトバランス処理済み画像の外観を考慮し、「入力」画像の外観には依存しない（ここで、「入力」画像は、ホワイトバランスアルゴリズムの適用前に画像センサによってキャプチャされる画像である）。これは、１つのカメラが一貫してシアンの色合いが付けられた画像を生成し、別のカメラが一貫して紫の色合いが付けられた画像を生成する場合、例えば、本明細書におけるホワイトバランスアルゴリズムは、同じホワイトバランス処理された出力画像を生成することができることを意味する（両方の画像は同様の放射特性を有する、黒色レベルは補正されている、画像は線形である、などを想定する）。これは、本明細書におけるホワイトバランスアルゴリズムが１つの製造業者のハードウェアによってキャプチャされた画像上で（例えば、１つ以上の機械学習技法を用いて）トレーニングされた場合、別の製造業者のハードウェアによってキャプチャされた画像上でも依然として良好に働くはずであることを意味する。
【００４８】
[0054]  「出力」ホワイトバランス処理済み画像を考慮する特性も、トレーニングを簡略化する。典型的には、新しいカメラセンサに対してホワイトバランスアルゴリズムを実装することは、そのセンサを用いて画像の大きなデータセットを収集すること、及び、それらの画像の各々について光源色に手動で注釈を付けることを含み、これは低速で費用のかかる命題である。しかし、本明細書で説明する手法を用いると、ホワイトバランスアルゴリズムは公的に入手可能な画像に基づいてトレーニング可能であるため、ホワイトバランスアルゴリズムはそれらの画像のホワイトバランスを再現することになる。
【００４９】
[0055]  本明細書におけるホワイトバランスアルゴリズムは、高品質の結果を生成するだけでなく、より性能が優れており、最新の学術文献では誤りが２０％〜４０％削減される。しかしながら、現行の最先端技法は、異なる画像センサにわたって一般化するように設計されていない。
【００５０】
[0056]  加えて、本明細書におけるホワイトバランスアルゴリズムは冪等であるように設計され、これは、ある画像に対して１回適用された場合、画像をホワイトバランス処理し、ホワイトバランス処理された画像に対して再度適用された場合、画像に対してそれ以上の目立つ変化は生じさせないことを意味する。この特性は、入力画像の色合いが、写真パイプライン内の何らかの他のホワイトバランスアルゴリズムによって変更される場合、アルゴリズムは失敗しないことも意味する。
【００５１】
[0057]  問題を形式的にとらえるために、黒色レベルの補正が既に行われており、ピクセル値が一切飽和していない（例えば、ピクセルの各色チャネルにおける色の強度が２５５などの何らかの閾値を下回る）、完全に測光的な線形画像を考えてみる。下記では、便宜上、対数−空間表現を使用することができる。
【００５２】
[0058]  前述のように、ＲＧＢピクセル［Ｉｒ，Ｉｇ，Ｉｂ］は、「トゥルー」又はホワイトバランス処理された色［Ｗｒ，Ｗｇ，Ｗｂ］と、シーンの光源［Ｌｒ，Ｌｇ，Ｌｂ］の積とすることができる。したがって、以下のようになる。
Ｉｒ＝ＷｒＬｒ  （１）
Ｉｇ＝ＷｇＬｇ  （２）
Ｉｂ＝ＷｂＬｂ  （３）
【００５３】
[0059]  とは言え、式（１）、（２）、及び（３）は、シェーディング、反射特性、空間的に変化する照明などを無視しているため、問題を単純化し過ぎである。にもかかわらず、Ｉが与えられた場合、目標はＬを推定し、これを用いてＷ＝Ｉ／Ｌを求めることである。そのため、Ｉ及びＷについてのクロミナンス表現は、以下のように定義することができる。
Ｉｕ＝ｌｏｇ（Ｉｇ／Ｉｒ）  （４）
Ｉｖ＝ｌｏｇ（Ｉｇ／Ｉｂ）  （５）
Ｗｕ＝ｌｏｇ（Ｗｇ／Ｗｒ）  （６）
Ｗｖ＝ｌｏｇ（Ｗｇ／Ｗｂ）  （７）
【００５４】
[0060]  加えて、Ｉ及びＷについて輝度の表現を以下のように定義すると便利である。
Ｉｙ＝ｍｉｎ（Ｉｒ，Ｉｇ，Ｉｂ）  （８）
Ｗｙ＝ｍｉｎ（Ｗｒ，Ｗｇ，Ｗｂ）  （９）
【００５５】
[0061]  この輝度の表現は、ｕ及びｖの推定における確実性を示し、ピクセルのｒ、ｇ、又はｂの値のうちのいずれかがゼロに近い場合、少なくとも１つのクロミナンス推定はノイズが多いか又は間違っている可能性が高い。Ｗの絶対スケーリングは本明細書における実施形態において明示的に考察する必要がないため、光源Ｌを推定する問題は、Ｌのクロミナンスを推定することをさらに簡略化し、以下のように単に２つの数字として表すことができる。
Ｌｕ＝ｌｏｇ（Ｌｇ／Ｌｒ）  （１０）
Ｌｖ＝ｌｏｇ（Ｌｇ／Ｌｂ）  （１１）
【００５６】
[0062]  対数の特性により、式（１）、（２）、及び（３）の公式化は、以下のように対数−クロミナンス空間で書き直すことができる。
Ｗｕ＝Ｉｕ−Ｌｕ  （１２）
Ｗｖ＝Ｉｖ−Ｌｖ  （１３）
【００５７】
[0063]  結果として、画像のホワイトバランスを補正することが、２つの量Ｌｕ及びＬｖを決定することに低減される。絶対スケールの曖昧さにより、ＲＧＢ空間から（Ｌｕ，Ｌｖ）のＵＶ空間への逆マッピングは未定義である。したがって、Ｌｕ及びＬｖを決定することで、Ｌは単位ノルムであることが推定可能であり、以下のように（Ｌｒ，Ｌｇ，Ｌｂ）の回復が可能である。
【数１】
0006724045.tif 000002
【００５８】
[0064]  この対数−クロミナンス公式化は、ＲＧＢ公式化での作業よりも簡単である。未知数は３つではなく２つであり、乗法制約の代わりにＷ及びＩに関係する線形制約が存在する。
【００５９】
[0065]  これらの値（Ｌｕ，Ｌｖ）及び、最終的にグラウンドトゥルース照明Ｌを伴う入力画像Ｉについての（Ｌｒ，Ｌｇ，Ｌｂ）を決定するために、２次元クロミナンスヒストグラムＮが構築され得る。このヒストグラムにおいて、Ｎ（ｕ，ｖ）はクロミナンスが近（ｕ，ｖ）であるＩにおけるピクセル数を示し、ヒストグラムカウントはその中のそれぞれのピクセルの輝度によって重み付けされる。この重み付けは、それぞれのクロミナンス値における確実性を反映する。正式には、以下の通りである。
【数２】
0006724045.tif 000003
上式で、大括弧は指標関数を表し、∈はヒストグラムのビン幅である。（実際のところ、∈＝０．０２５及び２５６ビンのヒストグラムが使用可能であるが、代わりに他の値の∈及び他の数のヒストグラムビンも使用可能である。）
【００６０】
[0066]  ヒストグラムＮを構築した後、恒量を有するように正規化することができる。さらに、各ビンにおけるカウントの平方根を取り、これがヒストグラムの特徴の有効性を向上させることができる。とは言え、ヒストグラム全体に同じ変換が適用される限り、いずれの特別な正規化も可能である。
【００６１】
[0067]  図３は、上列に同じ画像の３つの色合いが付けられたバージョンを含み、各画像の対応するクロミナンスヒストグラムが下列にある。図３は、これらの画像を、異なる色合いを提示するために異なるレベルの明るさを使用して白黒で示している。図３の画像の色バージョンにおいて、左列の画像は緑がかった黄色の色合いが付けられ、中列の画像はホワイトバランス処理され、右列の画像は赤みがかった黄色での色合いが付けられている。
【００６２】
[0068]  各ヒストグラムのｘ軸の左端から右端へと移動すると、関連付けられた画像の青−黄の色合いが優勢的な青から優勢的な黄色へと変化することを表す。同様に、各クロミナンスヒストグラムのｙ軸の上端から下端へと移動すると、関連付けられた画像の赤−緑の色合いが優勢な赤から優勢な緑へと変化することを表す。全体として、各クロミナンスヒストグラムは、クロミナンスがこのｘ−ｙプロット上の各位置にあるピクセルの相対数を表す。したがって、左列のクロミナンスヒストグラムにおけるポイントのクラスタは、緑及び黄色の色合いを示し、中列のクロミナンスヒストグラムにおけるポイントのクラスタは中間色の（ホワイトバランス処理された）色合いを示し、右列のクロミナンスヒストグラムにおけるポイントのクラスタは赤及び黄色の色合いを示す。
【００６３】
[0069]  ポイントの各クラスタの中心は、関連付けられた画像の白色点を表し、クロミナンスヒストグラムの原点は人に対して白く見えるものである。クロミナンスヒストグラムの原点周辺のポイントのクラスタを中心にすることで、中間色の色合いが達成できる。
【００６４】
[0070]  各画像のクロミナンスヒストグラムは、他のクロミナンスヒストグラムの変換バージョンであり（ヒストグラム操作によって導入されるサンプリングは無視する）、ヒストグラムの形状は変化しない。したがって、画像の色合い付けは、ヒストグラム空間における変換によってのみ、画像のクロミナンスヒストグラムに影響を与える。これは、ｕ及びｖが本明細書のように定義される結果であり、ＲＧＢチャネルのスケーリングは対数−クロミナンスチャネルの遷移に等しい。輝度はこの変換に影響を与えない。
【００６５】
[0071]  画像色合い付けとヒストグラム遷移との間の等価性により、ホワイトバランシングが容易になる。特に、ホワイトバランシングアルゴリズムは、いくつか又はすべての可能な画像の色合いを考慮すること、色合い付けされた各画像のスコアを付けること、及び入力画像の推定される照明として最高スコアの色合い（又はむしろ、その逆）を提供することによって、動作可能である。例えば、中列のクロミナンスヒストグラムに関連付けられた色合いの場合、最高スコアを有することが望ましく、結果としてホワイトバランスアルゴリズムは入力画像に中間色となるような色合いを付けることになる。
【００６６】
[0072]  本来、このようにスコアを付けることは、各色合いに何らかのスコアリング関数が適用され、すべての可能な色合い全体にわたる総当たりの検索が必要であるため、費用のかかる提案のように思われる。しかしながら、スコアリング関数がヒストグラムビンの線形組み合わせである場合には、この総当たり検索は実際には何らかのフィルタＦを用いるＮの単なる畳み込みであり、畳み込み動作を効率的にできる方法は数多くある。
【００６７】
[0073]  したがって、高レベルで、ホワイトバランスアルゴリズムは、（ｉ）入力画像ＩからクロミナンスヒストグラムＮを構築し、（ｉｉ）そのヒストグラムを何らかのフィルタＦを用いて畳み込み、（ｉｉｉ）高スコアリング（例えば、最高スコアリング）照明
【数３】
0006724045.tif 000004
を用いて
【数４】
0006724045.tif 000005
を生成する、というステップを実行することができる。より公式的には、以下のようになる。
【数５】
0006724045.tif 000006
上式で、＊は畳み込み演算子である。
【００６８】
[0074]  この手順は、この畳み込みが正確な出力を生成するように、トレーニングデータから何らかのフィルタＦを学習することを含む。フィルタをトレーニングするために、多項式ロジスティック回帰又は構造化予測と同様のモデルを、畳み込みフレームワークに適用することができる。公式的には、これは最適化の問題として以下のように表すことができる。
【数６】
0006724045.tif 000007
上式では、以下の通りである。
【数７】
0006724045.tif 000008
【００６９】
[0075]  式（２１）において、Ｆは重みが学習されたフィルタであり、｛Ｎ（ｉ）｝及び｛Ｌ（ｉ）｝はそれぞれ、トレーニングが設定されたクロミナンスヒストグラム及びグラウンドトゥルース照明であり、（Ｎ（ｉ）＊Ｆ）（ｕ，ｖ）は、位置（ｕ，ｖ）でインデックスが付けられたＮ（ｉ）及びＦの畳み込みである。便宜上、Ｎ（ｉ）＊Ｆの関数として、Ｐ（ｕ，ｖ）はヒストグラムにおける各ビン（ｕ，ｖ）についてのソフトマックス確率である。したがって、Ｐ（ｕ，ｖ）は、フィルタを用いた各トレーニングヒストグラムの畳み込みの正規化された指数関数を表す。
【００７０】
[0076]  フィルタ重みは、何らかのハイパーパラメータλによって和らげられた、Ｆの要素の二乗和を最小化することによって正則化される。高レベルで、損失を最小限にすることで、結果として、Ｎ（ｉ）＊Ｆが他のどこよりも
【数８】
0006724045.tif 000009
で大きいようなＦが生じ、ここでＣ（ｕ，ｖ，ｕ＊，ｖ＊）は、推定が誤った光源で発生する損失を以下のように定義する。
【数９】
0006724045.tif 000010
さらに、以下のようになる。
【数１０】
0006724045.tif 000011
【００７１】
[0077]  Ｃは、（ｕ，ｖ）及び（ｕ＊，ｖ＊）によって定義される照明の間の角度、色彩恒常性アルゴリズムが評価可能な損失測度を測定する。Ｃの視覚化が図４に見られる。特に図４は、提案された照明色（ｕ，ｖ）の関数として、Ｃ（ｕ，ｖ，ｕ＊，ｖ＊）の視覚化を示し、各プロットはグラウンドトゥルース照明色（ｕ＊，ｖ＊）の異なる選択肢（丸印）を示している。ＲＧＢ照明ベクトル間の角度に関して誤りが測定されるため、この誤り関数の形状はグラウンドトゥルース照明に応じて異なって見える可能性がある。
【００７２】
[0078]  トレーニング時、式（２１）は、メモリ制限ＢＦＧＳ（Ｌ−ＢＦＧＳ）などの、Ｂｒｏｙｄｅｎ−Ｆｌｅｔｃｈｅｒ−Ｇｏｌｄｆａｒｂ−Ｓｈａｎｎｏ（ＢＦＧＳ）技法を用いた収束に解決することができる。特に、Ｆはすべてゼロに初期化され得る（損失関数の凸面無しにもかかわらず働く）。この問題は、ロジスティック回帰に似ているが、あらゆる（ｕ，ｖ）は、それに関連付けられたＣによって定義される変動損失を有し、何らかのグラウンドトゥルースクロミナンス（ｕ＊，ｖ＊）に関して各可能な（ｕ，ｖ）クロミナンスのコストを測定する。変動コストは、モデルを構造化予測のようなプロセスに似たものにする。
【００７３】
[0079]  いずれにせよ、学習されるＦはホワイトバランス処理されたシーンにおける色の分布を反映し、Ｆは、畳み込みとして評価されるＦと組み合わせされる、前述のクロミナンスヒストグラムの遷移不変性の結果としてのトレーニング画像の色合いとは無関係である。推測時、Ｆを使用して、モデルに従って最も可能性の高い照明を見つけることができるが、モデルは実際にその照明の可能性が高いとは見なされない。これは、本明細書において使用される自然色のモデルが識別トレーニングによって学習されるという点を除いて、自然色の分布の発生モデルの学習と同様である。
【００７４】
[0080]  識別モデルは、一般に、観察された変動に対する観察されない変動の依存性をモデル化する。これに対して発生モデルは、すべての変動の完全な確率モデルである。したがって、発生モデルは、例えばモデル内の任意の変動の値を生成するために使用可能であるのに対して、識別モデルは、観察された変動を条件とする観察されない変動のサンプリングを可能にする。
【００７５】
[0081]  有利なことに、本明細書において、モデルは、特定のカメラ又は画像センサに特化されたモデルを学習するのではなく、依然として自然画像のモデルのみを学習しながら、識別トレーニングの力を利用する。
【００７６】
Ａ．例示的フィルタリング効率の改善
[0082]  前述のアルゴリズムはフィルタを用いてクロミナンスヒストグラムを畳み込むが、どの種類のフィルタを使用するべきかを正確に指定しなかった。妥当な選択肢は「フル」フィルタ、即ちヒストグラムと同じサイズがフィルタリングされるフィルタを使用することである。しかし、こうしたフルフィルタは、（畳み込みを最適化するために高速フーリエ変換（ＦＦＴ）を使用する場合であっても）評価するために幾分費用がかかり、正則化及びトレーニングを困難にする可能性がある非常に多数の自由パラメータを有する。
【００７７】
[0083]  上記で説明した実施形態において良好に実行するは、対数極性又は「網膜」構造を有する傾向があり、この構造において、フィルタはフィルタの中央近くに大量の高周波変動を含み、中央から遠くに低周波変動を含む。これは直感的に理解され、画像の照明色を局在化するとき、モデルは白色点付近のクロミナンスの変動に細心の注意を払わなければならないが、白色点から遠いクロミナンスの変動は単に広範に考慮すれば良い。
【００７８】
[0084]  この観察を用いて、ピラミッドベースのフィルタリングを使用することができる。ピラミッドフィルタリングは、入力信号のガウスピラミッド（例えば、双線形ダウンサンプリングを使用して、Ｎ（ｕ，ｖ）から３レベル、５レベル、又は７レベル）を構築した後、各スケールを小フィルタ（例えば、３×３、５×５、又は７×７フィルタ）でフィルタリングし、その後、フィルタリングされたピラミッドを（例えば、双線形アップサンプリングを使用して）画像に崩壊させることによって作用する。このプロセスは、網膜様フィルタを用いてＮ（ｕ，ｖ）を畳み込む際に、同一又は同一に近い出力を生成するが、より効率的である。効率的であることに加えて、このフィルタはわずかな自由パラメータを有するため、最適化及び正則化は容易であり、中央の細部を記述することが可能である一方で、中央から遠くの形状は平滑かつ粗野である。正則化は、各スケールでの２ノルムフィルタ係数の二乗を最小化することによって実行され得、式（２０）のように、すべてが単一のハイパーパラメータλによって変調される。ピラミッドフィルタリングの視覚化は図５で見ることができる。
【００７９】
[0085]  特に、図５の上列は、中央に強力な細部を有し、その他の部分には粗野な細部を有するフィルタを用いて、ヒストグラムを畳み込むことを示す。下列は、これに代わって、ヒストグラムからピラミッドを構築し、小フィルタを用いてピラミッドの各スケールをフィルタリングした後、フィルタリングされたヒストグラムを崩壊させることによって、同じフィルタをより効率的に評価することを示す。後者の手法を使用することによって、フィルタリング速度は低下する。
【００８０】
[0086]  ピラミッドフィルタリングは、画像内のあらゆる位置で、形状コンテキスト又は幾何学的なぼやけ密度のようなコンピュータビジョンフィーチャを計算すること、及びその後、線形分類器を用いて各フィーチャを分類することであると考えられる。しかしながら、本明細書におけるピラミッド近似は、フィーチャのサンプリングパターンは極性ではなく矩形であること、フィーチャのスケールは２の累乗に離散化されること、及び、各スケールでのフィーチャのサンプリングパターンは重複することを想定する。画像空間関数を近似するためにピラミッドの各スケールにもフィルタを適用するこの技法は、畳み込みピラミッドにも似ている。
【００８１】
Ｂ．例示的一般化
[0087]  前述のアルゴリズムは、単位Ｉのピクセルのクロミナンス値から構築されるヒストグラムＮをフィルタリングすることによって、画像Ｉから照明Ｌを推定することができる。実際上、このモデルは、各ピクセルの色を正規化しようとするが、空間情報を無視するという点で、洗練された種類の「グレイワールド」アルゴリズムである。しかしながら、より良いパフォーマンスを得るために、色彩恒常性アルゴリズムは、エッジ又は空間的に近隣の色などの追加の情報源を使用することができる。
【００８２】
[0088]  そのため、本明細書で開示するアルゴリズムは拡張可能である。単一の画像Ｉから単一のヒストグラムＮを構築及び分類する代わりに、「増補された」画像のセット｛Ｉ’ｊ｝からヒストグラムのセット｛Ｎｊ｝をフィルタリングすることができる。ソフトマックス確率を計算する前に、フィルタリングされた応答を合計することができる。これらの増補された画像は、画像Ｉのエッジ及び空間的な統計を反映し、それによってモデルは、別個のピクセルクロミナンスとは別に、複数のクロミナンス情報源を組み合わせることができる。
【００８３】
[0089]  これらの増補された画像｛Ｉ’ｊ｝は、フィルタバンク、メジアンフィルタ、モルフォロジー演算などの適用など、単に一般的な画像処理動作をＩに適用することによって、構築することができる。しかし、クロミナンスヒストグラムを構築する元になる画像は、クロミナンスヒストグラム空間における遷移に、入力画像のチャネルに対する色スケーリングをマッピングしなければならない。これは、増補された画像はこの特性を保持し、ヒストグラム空間内の同じ遷移に、チャネルごとのスケーリングをマッピングしなければならないことを意味する。したがって、使用のために可能な増補された画像の限定セットが存在し得る。
【００８４】
[0090]  色スケーリング／ヒストグラム遷移特性を合致させるために、マッピングはスカラー乗法を保持しなければならず、入力画像Ｉ内のチャネルのスケール後フィルタバージョンが、そのチャネルのフィルタ後スケールバージョンに等しくなければならないことがわかる。加えてマッピングの出力は、これらの値の対数を取ることができるように、非負でなければならない。こうした３つのマッピングは、以下の通りである。
ｆ（Ｉ，ｆｉｌｔ）＝ｍａｘ（０，Ｉ＊ｆｉｌｔ）  （２５）
ｇ（Ｉ，ｐ，ｗ）＝ｂｌｕｒ（Ｉｐ，ｗ）１／ｐ  （２６）
ｈ（Ｉ，ｐ，ｗ）＝（ｂｌｕｒ（Ｉｐ，ｗ）−ｂｌｕｒ（Ｉ，ｗ）ｐ）１／ｐ  （２７）
上式で、ｂｌｕｒ（・，ｗ）は幅ｗのボックスフィルタである。一般に、画像のボックスフィルタリングは、フィルタリングされた画像内の各ピクセルが、入力画像内のその近隣ピクセルの平均値に等しい値を有するように、入力画像に線形フィルタを適用する。例えば、入力画像に対して、ぼかし、鮮明化、エッジ検出、及び他の効果を入力画像に対して実行するために、３×３ボックスフィルタを入力画像の各ピクセルに適用することができる。
【００８５】
[0091]  関数ｆ（・，ｆｉｌｔ）は、何らかのフィルタｆｉｌｔを用いて画像の各チャネルを畳み込んだ後、フィルタリングされた値を少なくとも０になるようにクランプする。関数ｇ（・）は、ｇ（・，１，ｗ）がぼやけであるように、Ｉにおけるピクセル値の局所ノルムを計算する。関数ｆ（・，∞，ｗ）は「ｍａｘ」フィルタであり、ｆ（・，−∞，ｗ）は「ｍｉｎ」フィルタである。関数ｈ（・）はピクセル値の正規化モーメントを計算し、ｇ（・，２，ｗ）はピクセル値の局所標準偏差、一種の無方向性エッジ／テクスチャ検出器を計算する。
【００８６】
[0092]  これら３つの演算すべてがスカラー乗法を保持することが、以下のように例証できる。
ｆ（αＩ，ｆｉｌｔ）＝αｆ（Ｉ，ｆｉｌｔ）  （２８）
ｇ（αＩ，ｐ，ｗ）＝αｇ（Ｉ，ｐ，ｗ）  （２９）
ｈ（αＩ，ｐ，ｗ）＝αｈ（Ｉ，ｐ，ｗ）  （３０）
【００８７】
[0093]  拡張モデルでは、入力画像Ｉ自体、「鮮明化」フィルタでフィルタリングされ、整流された画像、大型サポート「最大フィルタ」様マトリックス、及び小型サポート局所標準偏差マトリックスの、４つのチャネルが使用される。
【数１１】
0006724045.tif 000012
【００８８】
[0094]  図６は、これらチャネルの各々によってキャプチャされた情報の視覚化を示す。トレーニング時に、各チャネルについて１つ、これら４つのピラミッドフィルタが学習される。ソフトマックス確率を計算する前に、別個のフィルタ応答が合計される。したがって、本明細書で開示されるアルゴリズムは、入力画像Ｉのみのピクセル値をその入力として使用することができるが、「増補された」画像のセットを入力として使用することによって、パフォーマンスを向上させることができる。拡張モデルは、入力画像に加えて、局所エッジ及び近隣統計をキャプチャする４つの増補された画像を使用する。
【００８９】
４．例示的動作
[0095]  図７は、例示的実施形態を示すフローチャートである。図７によって例示される実施形態は、デジタルカメラデバイス１００などのコンピューティングデバイスによって実施可能である。しかしながら、実施形態は、他のタイプのデバイス又はデバイスサブシステムによって実施可能である。さらに、実施形態は、本明細書又は添付の図面で開示される任意の態様又は特徴と組み合わせることができる。
【００９０】
[0096]  図７のブロック７００は、入力画像を取得することを含み得る。入力画像は、入力画像内の白色を定義するクロミナンス値によって表される白色点を有し得る。入力画像を取得することは、コンピューティングデバイスが入力画像をキャプチャすることを含み得る。
【００９１】
[0097]  ブロック７０２は、場合によっては入力画像の色に基づいて、入力画像の２次元クロミナンスヒストグラムを生成することを含み得る。いくつかの実施形態において、２次元クロミナンスヒストグラムを生成することは、ヒストグラムの各次元について、ピクセル値の割合の対数を使用すること、恒量を有するように２次元クロミナンスヒストグラムを正規化すること、及び、２次元クロミナンスヒストグラムの各ビンの平方根を取ることを含み得る。
【００９２】
[0098]  ブロック７０４は、２次元ヒートマップを作成するために、フィルタを用いて２次元クロミナンスヒストグラムを畳み込むことを含み得る。２次元ヒートマップ内のエントリは、それぞれのエントリに対応するそれぞれの色合いが入力画像の白色点にどれだけ近いかのそれぞれの推定を表し得る。
【００９３】
[0099]  ブロック７０６は、ヒートマップ内の最大値の閾値内にある特定の値を表す、２次元ヒートマップ内のエントリを選択することを含み得る。閾値は、最大値のうちのあるパーセンテージ（例えば、５％、１０％、２０％など）内であり得るか、又は、最大値の固定オフセット内であり得る。したがって、特定の値は最大値、又は最大値に近い値であり得る。
【００９４】
[00100]  ブロック７０８は、場合によっては選択されたエントリに基づいて、出力画像を形成するために入力画像に色合いを付けることを含み得る。この色合い付けは、フィルタを画像に適用することを含み得、フィルタは、選択されたエントリによってパラメータ化される。可能な結果として、出力画像は入力画像よりも多くホワイトバランス処理され得る。
【００９５】
[00101]  いくつかの実施形態において、２次元クロミナンスヒストグラムにおけるビン（ｕ，ｖ）は、（ｕ，ｖ）のクロミナンス閾値内のクロミナンス値を伴う入力画像内のピクセル数を表す。これらの実施形態において、ｕは第１の商の対数を表し得、ｖは第２の商の対数を表し得る。第１の商は、入力画像内の赤色ピクセル値を入力画像内の緑色ピクセル値で割った商であり得る。第２の商は、入力画像内の青色ピクセル値を入力画像内の緑色ピクセル値で割った商であり得る。さらに、２次元クロミナンスヒストグラムのビンは、その中のピクセルの輝度によって重み付けすることができる。
【００９６】
[00102]  いくつかの実施形態において、フィルタは、各々がそれぞれのトレーニング画像のそれぞれの既知の照明に関連付けられた、それぞれのトレーニング画像のトレーニングクロミナンスヒストグラムのセットに基づいてトレーニングすることができる。したがって、フィルタは、フィルタを用いた各トレーニングヒストグラムの畳み込みの正規化された指数関数を使用して、トレーニングすることができる。代替又は追加として、トレーニング後、フィルタは、ホワイトバランス処理されたシーンにおける色の分布を表し得、トレーニング画像の色合いとは無関係であり得る。
【００９７】
[00103]  場合によっては入力画像の色に基づいて、複数の増補された２次元クロミナンスヒストグラムを、入力画像の増補されたバージョンから生成することができる。入力画像の増補されたバージョンの各々は、フィルタリングされたときにスカラー乗法特性を保持することができる。フィルタを用いて２次元クロミナンスヒストグラムを畳み込むことは、正規化された指数関数を適用する前に、複数の増補された２次元クロミナンスヒストグラムのフィルタリング済み応答を合計することを含み得る。
【００９８】
５．結論
[00104]  本開示は、本明細書で説明する特定の実施形態に関して限定されず、様々な態様の例示であることが意図される。当業者であれば明らかとなるように、その範囲を逸脱することなく、多くの修正及び変形が可能である。当業者であれば、前述の説明から、本明細書に列挙された方法及び装置に加えて、本開示の範囲内にある機能的に等価の方法及び装置も明らかとなろう。こうした修正及び変形は、添付の特許請求の範囲内にあることが意図される。
【００９９】
[00105]  上記の詳細な説明は、添付の図面を参照しながら開示されたシステム、デバイス、及び方法の、様々な特徴及び機能を説明している。本明細書及び図面で説明された例示的実施形態は、限定的であることを意図していない。本明細書に提示された主題の範囲を逸脱することなく、他の実施形態が利用可能であり、他の変更が実行可能である。本明細書で一般的に説明され、図面に例示されたような本開示の態様は、そのすべてが本明細書で明示的に企図された、多種多様な異なる構成で配置、置換、組み合わせ、分離、及び設計することが可能であることが容易に理解されよう。
【０１００】
[00106]  図面内及び本明細書で考察されるような、メッセージフロー図、シナリオ、及びフローチャートのうちのいずれか又はすべてに関して、各ステップ、ブロック、及び／又は通信は、例示的実施形態に従った情報の処理及び／又は情報の伝送を表すことができる。代替実施形態は、これらの例示的実施形態の範囲に含められる。これらの代替実施形態において、例えば、ステップ、ブロック、伝送、通信、要求、応答、及び／又はメッセージとして説明される機能は、関連する機能に応じて、ほぼ同時又は逆の順序を含む、図示又は考察された順序とは異なる順序で実行可能である。さらに、本明細書で考察されるはしご図、シナリオ、及びフローチャートのうちのいずれかと共に、より多いか又はより少ないブロック及び／又は機能を使用することが可能であり、これらのはしご図、シナリオ、及びフローチャートは、部分的又は全体的に、互いに組み合わせることができる。
【０１０１】
[00107]  情報の処理を表すステップ又はブロックは、本明細書で説明する方法又は技法の特定の論理機能を実行するように構成可能な回路に対応することができる。代替又は追加として、情報の処理を表すステップ又はブロックは、プログラムコード（関連データを含む）のモジュール、セグメント、又は一部に対応することができる。プログラムコードは、方法又は技法において特定の論理機能又はアクションを実装するためにプロセッサによって実行可能な１つ以上の命令を含むことができる。プログラムコード及び／又は関連データは、ディスク、ハードドライブ、又は他の記憶媒体を含むストレージデバイスなどの、任意のタイプのコンピュータ可読媒体上に記憶することができる。
【０１０２】
[00108]  コンピュータ可読媒体は、レジスタメモリ、プロセッサキャッシュ、及びランダムアクセスメモリ（ＲＡＭ）のような、データを短期間記憶するコンピュータ可読媒体などの、非一時的コンピュータ可読媒体を含むこともできる。コンピュータ可読媒体は、プログラムコード及び／又はデータをより長い期間記憶する、非一時的コンピュータ可読媒体を含むこともできる。したがって、コンピュータ可読媒体は、例えば読み取り専用メモリ（ＲＯＭ）、光又は磁気ディスク、コンパクトディスク読み取り専用メモリ（ＣＤ−ＲＯＭ）などの、２次又は永続的長期ストレージを含むことができる。コンピュータ可読媒体は、任意の他の揮発性又は不揮発性記憶システムとすることもできる。コンピュータ可読媒体は、例えばコンピュータ可読記憶媒体、又は有形記憶デバイスと見なすことができる。
【０１０３】
[00109]  さらに、１つ以上の情報伝送を表すステップ又はブロックは、同じ物理デバイス内のソフトウェア及び／又はハードウェアモジュール間の情報伝送に対応することが可能である。しかしながら、他の情報伝送は、異なる物理デバイス内のソフトウェアモジュール及び／又はハードウェアモジュール間のものとすることができる。
【０１０４】
[00110]  図面内に示された特定の配置は、限定的であると見なすべきではない。他の実施形態は所与の図面内に示された各要素を多少とも含み得ることを理解されたい。さらに、例示された要素のうちのいくつかを組み合わせるか又は省略することができる。またさらに、例示的実施形態は、図面内に例示されていない要素を含むことができる。
【０１０５】
[00111]  加えて、本明細書又は特許請求の範囲内の要素、ブロック、又はステップのいずれの列挙も、明瞭さのためである。したがってこうした列挙は、これらの要素、ブロック、又はステップが特定の配置を守ること、或いは特定の順序で実施されることを、要求するか又は示唆するものと解釈されるべきではない。
【０１０６】
[00112]  本明細書において様々な態様及び実施形態を開示してきたが、当業者であれば、他の態様及び実施形態が明らかとなろう。本明細書で開示された様々な態様及び実施形態は例示のためであって、限定的であることは意図されておらず、真の範囲は以下の特許請求の範囲によって示されている。
【図１】
0006724045.tif 000013
【図２】
0006724045.tif 000014
【図３】
0006724045.tif 000015
【図４】
0006724045.tif 000016
【図５】
0006724045.tif 000017
【図６】
0006724045.tif 000018
【図７】
0006724045.tif 000019