0

Photoshopの曲線ツールのような画像を調整したい。各R、G、BチャンネルまたはすべてのRGBで画像の色、コントラストなどを変更します。このタスクをObjectiveCで実行するアイデアはありますか?

このリンクhttp://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=68577&lngWId=-1を見つけましたが、VBを使用してすべての画像の曲線を調整するだけで、フォトショップのような各カラーチャンネルをサポートしていません。

4

1 に答える 1

2

Photoshop で曲線が機能する方法は、ヒストグラム法を使用します。基本的に、画像全体に存在する各値 (割り当てることができる値はヒストの X 軸上にあります) の量を数えることによって、ヒストグラムを取得します。この操作を実行して、各カラー チャネルのヒストグラムを取得できます。

画像のヒストグラムについては、こちらをご覧 ください http://en.wikipedia.org/wiki/Image_histogram

ヒストグラムを取得したら、曲線を適用できます (必要に応じて各カラー チャネルに)。標準曲線は、1-2-1 または線形曲線です。これが意味することは、実際のピクセル値が 10 の場合、編集した画像に割り当てられる値は 10 になるということです。

任意の曲線またはランダムな分布さえも想像できます。多くの方法がありますが、標準的な方法はログベースのヒストグラム方法です。これが行うことは、基本的に画像のヒストグラムを見て、入力ピクセル数が最も多いヒストグラム領域に最大の変換曲線の勾配を適用することで、ほとんどのピクセルに良好なコントラストを提供します。

曲線に関して言えば、ヒストグラムの上に配置する曲線は、入力ピクセル値から編集済みピクセル値へのマッピング関数を定義するだけです。ヒストグラムを作成せずに曲線を適用することもできますが、ヒストは、ユーザーが最適な効果を得るために曲線を編集したい場所を知るための優れたリファレンスです。

于 2012-06-18T15:57:16.067 に答える