†colorcorrectは褪色画像や、白色光源以外の光源化で撮影された画像、ホワイトバランスが狂っている画像等の色を補正するpythonライブラリです。constancy)の複数の仮説モデルの実装になります。基本的に、パラメータなどをいじること無く色の補正が可能です。古い色あせた写真をスキャンして元の色を復元するであったり、画像認識の際の前処理に利用して認識性能を上げる等の利用が考えられます。本ライブラリは、以下のライブラリに依存しています。laterPILwindows版のバイナリはまだありません。colorcorrectpypiから直接ダウンロードして、インストールすることもできます。Assumption)に基づいています。灰色仮説とは、白色光原下において視野内のすべての色、画像の場合は、全ピクセルのRGB値の平均を取ると灰色になるという仮説のこと。特殊な光源下の画像や、褪色して色が失われてしまった画像のRGB値の平均値は灰色とは乖離しているため、それのズレを補正して上げることで元の色を推定するという手法になります。白色光原下においても平均が灰色にならない画像については正しく補正することが出来ないため、それを修正するような複数の手法が提案されていることになります。equalizationは、フルに計算すると非常に重いため、ランダムサンプリングをして計算量を下げるという適当なあんちょこをしています。limitのパラメータを増やすと、サンプル数が多くなり精度が上がりますが線形に遅くなります。†PILのイメージオブジェクトをfrom_pil関数でcolorcorrectで扱うデータ構造に変換して用います。to_pil(cca.stretch(from_pil(img))).show()to_pil関数で、PILのImageオブジェクトに戻すことができます。複数のアルゴリズムを、以下のようにチェインして用いることもできます。1982)を用いて色補正の比較を行います。http://commons.wikimedia.org/wiki/File:Yamit_evacuation_2.jpg?uselang=jaパラメータは全てデフォルトのものを用いています。equalizationは大体の画像で非常に良い補正画像を出力しますが、計算時間がかかります。worldアルゴリズムとstretchなどを組み合わせると、他のアルゴリズムと組み合わせると高速でそこそこの結果が得られます。world系のアルゴリズムが良いですが、青や赤系の変色などはstretchなどが良い結果を出します。上手く組み合わせると良いでしょう。