概要
OpenCVならコントラスト調整する関数くらいあるべえと考える田舎者も多いが、
ない。
ヒストグラム均一化の関数ならある。equalizeHistね。
詳細はググってもらうとして、たぶん君の求めている答えじゃないと思う。
あの写真加工ソフトみたく、S字みたいなカーブで黒をより黒く、白をより白くいじろう。
あの写真加工ソフトみたく、S字みたいなカーブで黒をより黒く、白をより白くいじろう。
実装
のLUT生成部分を以下に変更。
// ルックアップテーブル作成 float a = 20.0; // 入力パラメータ uchar lut[256]; for (int i = 0; i < 256; i++) lut[i] = 255.0 / (1+exp(-a*(i-128)/255));
解説
あのS字みたいなカーブは、シグモイド関数という。
詳細はウィキペディって頂こうか。
なお、LUT作成に当たっては以下のサイトを参照した。
http://d.hatena.ne.jp/matsu4512/20090625/1245882295
出力結果
元画像 |
a = 20.0 |
a = 1.0 |
あつあつ料理にのせる半熟タマゴと同じ。なんでもおいしくなる。
ところでaが負値のときはどうなっちゃうか、気にならないかい。
ところでaが負値のときはどうなっちゃうか、気にならないかい。
0 件のコメント:
コメントを投稿