顔検出とリキッドリスケールの併用による露出補正

2013/04/21 03:37
fallabs

前回に引き続き、requid rescaleに基づく主要被写体推定の改良案について述べる。今回はOpenCVの顔検出結果を応用する。

requid rescaleと顔

requid rescaleは、画素間の差異が少ない領域を優先的に削ることで、画像の中の目立った要素を残しつつ、画面のサイズを縮小する手法である。この手法は顔を含む画像と相性が悪い。顔は重要な被写体であるにもかかわらず、肌が滑らかなので、liquid rescaleによって旺盛に削られてしまうからだ。例えば、何も工夫せずに人物写真にliquid rescaleをかけるとこんな風に可哀想なことになってしまう。


ぼかしを応用した主要被写体輝度推定の改良

2013/04/11 21:14
fallabs

前回前々回の記事では、liquid rescaleを応用して、画面内の情報量が多い部分を主要被写体とみなしてその輝度を推定する方法について考察した。今回はそれを画面中心に重み付けして適用する方法について述べる。

主要被写体の抽出

おさらいだが、主要被写体に多くの階調を割り当てる作業を自動化するのがこの自動補正手法の目的である。すなわち、主要被写体の輝度の上限と下限に合わせて出力画像の上限と下限を設定し、さらに主要被写体の平均輝度を一定の範囲に収めるようにガンマ補正とシグモイドを施す。その前提として、主要被写体がどこかを機械的に推定する必要がある。そのために、liquid rescaleを用いて情報量の多い領域を残してそうでない領域を削る手法をすでに実装している。そうすると主要被写体が多くを占める画像が得られるので、その輝度の統計値を取れば所望の操作が可能になる。


リキッドリスケールを応用したデジタル写真のコントラスト拡張

2013/03/27 23:26
fallabs

前回の記事で述べたデジタル写真自動露出補正ツールを改良し、写真の主要被写体をより強調できるようにした。主要被写体の輝度を自動的に推定するために、liquid rescaleという手法を用いている。

コントラスト拡大の限界

前回述べたホワイトポイントとブラックポイントを使ってダイナミックレンジ一杯にコントラストを拡大するというのは間違いのない方法である。失われる諧調がないからだ。それより踏み込んだ補正を行うには、どこかの階調を犠牲にすることで、どこかの階調を強調するということになる。ガンマ補正やシグモイド補正はそういう手法である。


怠け者のためのデジタル写真自動露出補正ツール

2013/03/24 16:58
fallabs

今までの実験結果をまとめて、Web上で気軽に使えるCGIスクリプトとして実装してみた。どんな写真でも見栄えがよくなるサービスである。諸事情によりソースは公開できないが、自由に使っていただきたい。

補正の概要

基本的には、我々素人が適当に撮った写真の輝度を適正露出っぽくなるようにしてくれるツールである。白トビや黒ツブレが発生しない程度にコントラストを拡大させた上で、撮影時の被写体の輝度に応じたガンマ補正を行なって全体の印象を調整する。また、一般的なディスプレーで扱いやすくするためにデフォルトで長辺1500にサイズを縮小する。


自動補正機能付き写真管理サービス

2012/10/21 18:37
fallabs

写真や動画を自分のサーバにアップロードして管理するツールを作った(本プロトタイプを改良してSimple Photo Binderとして公開中)。閲覧用もしくは共有用に、元画像とは別にリサイズした画像を、賢い自動補正をかけた上で自動生成してくれるところが最大の特徴である。特定のディレクトリにFTPやSCPでデータを置くだけで管理対象として追加できるので、Eye-fiと連携して自分のサーバで写真を管理するのに最適である。

アップロードしたファイルを閲覧するだけでなく、レタッチや削除もできる。

スライドショーとか、一括ダウンロードとか、写真管理サービスによくある機能はだいたい実装した。