内容 |
カラーレベル
ユーザ定義のカラーレベリングを画像に適用します。
1. imgColorlevel c:=green w:=90 b:=20 g:=80;
2. imgColorlevel c:=red w:=80 b:=20 oimg:=<new>;
表示 名 |
変数 名 |
I/O と データ型 |
デフォルト 値 |
説明 |
---|---|---|---|---|
入力イメージ | img |
入力 Image |
<active> |
操作する画像を指定します。デフォルトで、入力画像はアクティブ画像です。 |
チャネル | c |
入力 int |
master |
カラーレベルを適用するカラーチャネルを指定します。
|
HiClip(%) | w |
入力 double |
100 |
輝度レベルのパーセンテージを指定します。これはカラーレベル設定時に最大レベルにマッピングします。 |
LoClip(%) | b |
入力 double |
0 |
暗い部分のレベルのパーセンテージを指定します。これはカラーレベル設定時に最小レベルにマッピングします。 |
ガンマ値 | g |
入力 double |
1 |
中間調の値を再マッピングするのに使用するガンマ値を指定します。 |
出力イメージ | oimg |
出力 Image |
<input> |
出力画像を指定します。 |
レベルレポート | cl |
出力 ReportData |
<新規>!<新規> |
レベルレポートを指定します。 |
imgcolorlevel 関数は、画像にカラーレベルを適用し、カラーチャネルの明るい部分、中間調、暗い部分を変更し、画像の色を改善するのに使用します。例えば、入力画像の緑チャネルに明るい部分が少ない場合(ヒストグラムや入力画像で直接判断)、明るい部分を大きくするために100より小さい数を HiClip(%) 変数に使用します。
このサンプルでは、入力画像の緑チャネルは、明るい部分が少なくなっています。入力画像のイメージビューとその緑チャネルのヒストグラムからわかります。緑の明るい部分を増やすには、 imgColorlevel Xファンクションを使います。
元の画像 |
元の画像の緑チャネルのヒストグラム |
Xファンクションを使う前に、最初に使用する適切な HiClip(%) の値を決めます。ヒストグラムは224より大きい緑のレベルを持っていないピクセルが少ないことを示しています。ですから、224より大きいカラーレベルを最大レベルにマッピングし直します。そしてHiClip(%) の値を次のように計算します。
つまり、HiClip(%) を 88にセットします。
そして、次のようにimgColorlevel Xファンクションを使います。
緑の輝度が増したことがわかります。
出力画像 |
出力画像の緑チャネルのヒストグラム |
レベルレポート
計算には、LEADTOOLS Main APIのL_ColorLevelBitmap() を使用しています。詳細は、LEADTOOLS Main API Version 14 ヘルプファイルを参照し、トピックL_ColorLevelBitmapを読んでください。
LEADTOOLS Main API Help file, Version 14