カラー画像のコントラストを調整できるようにしたいと思いるのですが、
コントラストを強調したりするには、どんな式がありますでしょうか?
画像の本を見たのですが、プログラムに対して上手く使えません。
いきなりすみませんが、よろしくお願いします。
判らない事が何なのか、いまひとつ判りません。
コントラスト調整は単純にゲインを掛ける事を指す場合が多いです。
RGBに対して行うと色の濃さが変わります。
輝度だけにコントラストを掛けたい場合は、RGB->YUVに変換して、Yだけに行ってRGBに戻す、という手順が良いかと思います。
ただ、文面を見ると、Delphiでの画像の扱い方がわからないのでしょうか?
解りにくい質問の仕方をしてしまいすみませんでした。
各RGBに対しどのような処理(数値を変える式)を与えればよいのかを悩んでいました。
先ほど、思いついたものを試したら何とか出来ました。
ウォレス様の手を煩わせる形となってしまい、大変申し訳ありません。
ありがとうございました。
一次変換は
f(x)=a*x+b
で表せます。
信号処理ではaをゲイン、bをオフセットなどと呼びます。(ローカルな規則かもしれませんが・・・)
画像処理ソフトで画像の調整メニューで「コントラスト」となっているのがaを正規化したもの、「明るさ」となってるのがbを正規化したものであることが多いようです。
ちなみに、「ガンマ調整」となっているのは、
f(x)= a*x^b
のbの部分の調整であることが多いです。
(aは、最小値と最大値が変わらないように正規化します。俗に言うゲインを併せる、です。)
それから、前述しましたが、RGB各々に対して上記変換を行うと、色の濃さや、色度そのものが変わってしまいます。
ツイート | ![]() |