2. レイヤーのモード
| 第8章 画像の組み合わせ |

## 2. レイヤーのモード

GIMP のレイヤーモードは 21 種類あります。 レイヤーモードは「ブレンドのモード」と呼ばれることもあります。 レイヤーモードを選ぶと、 対象レイヤーもしくはその背面側のレイヤーを下敷に、 そのレイヤーや画像が視覚的に変化します。 画像にレイヤーが 1 層しかないときはレイヤーモードを変えても何も起きません。 すなわちレイヤーモードを利用するには画像に少なくとも 2 層以上のレイヤーがなくてはなりません。

レイヤーモードはレイヤーダイアログの モード メニューで選びます。 レイヤーモードにより現在いるレイヤーの画素とその背面側のレイヤーの同じ位置の画素との合成方法が定まります。

| 注記
描画ツールのうち鉛筆、 絵筆、 エアブラシ、 インク、 スタンプの各ツールには描画モードがあり、 レイヤーモードと共通のはたらきをする 21 種類のモードが使えるのに加え描画モード特有の 2 種類のモードもあります。 描画ツール特有のモード をご覧ください。

レイヤーモードによっては画像に複雑な色の変化をもたらします。 そのようなモードはある種のマスクとして作用させる目的で、 新しいレイヤーを用いて使用することがよく行われます。 たとえば新たに単色白のレイヤーを画像の前面に重ね、 そのモードを「彩度」に設定すると、 その下側の可視レイヤーは灰色の陰影だけが見え、 まるで白黒写真のようになります。

図8.8 レイヤーモードの例に用いる画像 (マスク用)

マスク 1

マスク 2

図8.9 レイヤーモードの例に用いる画像 (背景用)

キーホルダーアクセサリー

かも

以下のレイヤーモードの説明には数式も登場します。 これはレイヤーモードを数理的に理解したい方のためのものです。 もちろんレイヤーモードの効果を利用するのが目的ならばそれらの数式を理解する必要はありません。

数式には略号を使っています。 たとえば次の等式

式8.1 略号の例

の意味は、

> ある画素の色 `E` は、 上に重ねたマスクのその位置の画素の色 `M` に、 同じ位置の下側にあるレイヤーの画素の色 `I` を加えたものである。

です。 画素の色はその値が 0 から 255 の範囲に常に入らなければなりません。

| 注記
特に断わりのない限り、 計算で負の値が出れば 0 に直され、 255 を越えれば 255 になります。

例図はそれぞれのモードによる効果を表しています。

各モードの成果はレイヤーの色に非常に大きく左右されるため、 例図の画像からではモードの効能はごく一般的な感触しか掴めません。 まずはご自分で確かめられることをお勧めします。 試しに何かの画像にその複製レイヤーを重ねて、 片方だけちょっと変化 (ぼかし、 移動、 回転、 拡大・縮小、 色反転など) させておいてから、 レイヤーモードを変更するとどんなことが起きるかを見比べるのです。

標準

  図8.10 レイヤーモード「標準」の例

  両画像を等しい強度で互いに融合させた。

  「標準」合成の場合、 上のレイヤーが不透明度 100% ならば重なった部分は上のレイヤーだけが見える。

  標準 モードは既定のレイヤーモードです。 上のレイヤーがその下側のレイヤーを覆い隠します。 このモードで下側のレイヤーが僅かでも見えるようにするには上のレイヤーに透過部分がなくてはなりません。

  等式はつぎのとおり。

  式8.2 レイヤーモード「標準」の等式

ディザー合成

  図8.11 レイヤーモード「ディザー合成」の例

  両画像を等しい強度で互いに融合させた。

  「ディザー合成」の場合、 上のレイヤーが不透明度 100% ならば重なった部分は上のレイヤーだけが見える。

  ディザー合成 は画素を無作為に透過させるディザー効果を上側のレイヤーにかけてその下のレイヤーと合成します。 この技法はレイヤーモードのみならず描画のモードでもたびたび役立ちます。

  このモードは画像を重ねた縁の付近で特にその特徴が顕著に現れます。 拡大したスクリーンショットをご覧になればもっとわかりやすいでしょう。 下図の左の[上の]画像は「標準」レイヤーモードを、 右の[下の]画像は「ディザー合成」レイヤーモードを使った同じ部分を抜き出したものですが、 画素の散乱の様子がはっきりわかります。

  図8.12 スクリーンショットの拡大図

  標準モード

  ディザー合成モード

乗算

  図8.13 レイヤーモード「乗算」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  乗算 モードは上側のレイヤーの画素の値とその下側のレイヤーの画素の値の積を 255 で除算します。 結果として画像が暗くなる場合がほとんどです。 どちらかのレイヤーに純白があればその部分はもう一方のレイヤーの色と同じになります (1 × I = I)。 どちらかのレイヤーに黒があればその部分は完全な黒になります (0 × I = 0)。

  等式はつぎのとおり。

  式8.3 レイヤーモード「乗算」の等式

  このモードは可換です。 両レイヤーの順序を問いません。

除算

  図8.14 レイヤーモード「除算」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  除算 モードは下側のレイヤーの画素の値を 256 倍したあとで上側のレイヤーの同じ位置の画素の値に 1 を加えた値で除算します。 (1 を加えるのは 0 で除算するのを避けるためです。) その結果、 ほとんどの画像は色が薄くなり、 ときには「日焼け」したようにも見えます。

  等式はつぎのとおり。

  式8.4 レイヤーモード「除算」の等式

スクリーン

  図8.15 レイヤーモード「スクリーン」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  スクリーン モードはまず画像の両レイヤーの可視画素の値を反転します。 (つまり各値は 255 との差に置き換わります。) 次に両値の積を 255 で除算した値を再び反転します。 その結果、 ほとんどの画像は明るくなり、 ときには「洗い晒し」たようにも見えます。 このモードの例外は、 レイヤーが黒い場合にもう一方のレイヤーの色から何も変化しないことと、 レイヤーが白い場合には画像が白くなることです。 画像の色は暗いところほど透明になります。

  等式はつぎのとおり。

  式8.5 レイヤーモード「スクリーン」の等式

  このモードは可換です。 両レイヤーの順序を問いません。

オーバーレイ

  図8.16 レイヤーモード「オーバーレイ」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  オーバーレイ モードは下側のレイヤーの画素の値を反転し、 上側のレイヤーの同じ位置の画素の値との積を 2 倍して 255 で割り、 その値と下側のレイヤーの画素の元の値との和にさらに下側のレイヤーの画素の元の値をかけて、 再び 255 で割ります。 画像は暗くなりますが「乗算」モードほどの変化はありません。

  等式はつぎのとおり。 [8]

  式8.6 レイヤーモード「オーバーレイ」の等式

覆い焼き

  図8.17 レイヤーモード「覆い焼き」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  覆い焼き モードは下側のレイヤーの画素の値を 256 倍してから、 上側のレイヤーの同じ位置の画素の値を反転してから 1 を加えた値により商を求めます。 その結果、 画像は通常色が薄くなり、 一部の色は反転します。

  写真の業界では覆い焼きとは暗室での現像作業で画像の特定の部分の露出を抑える技法をさしています。 結果として影になっていた部分が詳しく見えるようになります。 この本来の目的で覆い焼きモードを使うのならば、 レイヤーモードよりむしろ描画ツールでグレースケール画像に対しての操作で真価を発揮します。

  等式はつぎのとおり。

  式8.7 レイヤーモード「覆い焼き」の等式

焼き込み

  図8.18 レイヤーモード「焼き込み」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  焼き込み モードは下側のレイヤーの画素の値を反転して 256 倍し、 上側のレイヤーの同じ位置の画素の値に 1 を加えた値で除算し、 反転します。 結果として画像は暗くなる傾向があり、 いくぶん「乗算」モードに似ています。

  写真の業界では焼き込みとは暗室での現像作業で画像の特定の部分の露出を強める技法をさしています。 結果として眩しくなっていた部分が詳しく見えるようになります。 この本来の目的で焼き込みモードを使うのならば、 レイヤーモードよりむしろ描画ツールを用いたグレースケール画像に対しての操作で真価を発揮します。

  等式はつぎのとおり。

  式8.8 レイヤーモード「焼き込み」の等式

ハードライト

  図8.19 レイヤーモード「ハードライト」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  ハードライト モードは明るい色用と暗い色用の 2 つの等式を使い分けるためちょっとややこしくなっています。 上側のレイヤーの画素の値が 128 を越えておれば、 下に示した第 1 の数式をレイヤーの合成処理に使います。 逆に上側のレイヤーの画素の値が 128 以下ならば、 両レイヤーの画素の値の積を 2 倍して 256 で割ります。 2 枚の写真を合成するときこのモードを使えば色が明るくなり形象の輪郭がはっきりします。

  この等式は上側のレイヤーの画素の値が 128 を越す場合と 128 以下である場合とで異なっています。

  式8.9 レイヤーモード「ハードライト」の等式、 M > 128 の場合

  式8.10 レイヤーモード「ハードライト」の等式、 M ≤ 128 の場合

ソフトライト

  図8.20 レイヤーモード「ソフトライト」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  ソフトライト モードは「ハードライト」モードに名前以外では何の関係もありませんが、 色はさほど明るくならず、 形象の輪郭も柔らかくなる傾向にあります。 「オーバーレイ」モードに似ています。 GIMP では数版にわたって、 「オーバーレイ」モードと「ソフトライト」モードが同一の状態が続いています。

  この等式は複雑です。 「スクリーン」モードの結果 Rs を使います。

  式8.11 レイヤーモード「スクリーン」の等式

  式8.12 レイヤーモード「ソフトライト」の等式

微粒取り出し

  図8.21 レイヤーモード「微粒取り出し」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  微粒取り出し モードはレイヤーから「フィルム粒子」を抽出して純粒子からなる新たなレイヤーを生成するものらしいのですが、 エンボス加工を施したような画像にする目的にも適います。 上側のレイヤーの画素の値を下側のレイヤーの同じ位置の画素の値から引き、 128 を加えます。

  等式はつぎのとおり。

  式8.13 レイヤーモード「微粒取り出し」の等式

微粒結合

  これ以外の 2 つのモードは描画ツール専用です。 詳しくは 描画モード をご覧ください。

  図8.22 レイヤーモード「微粒結合」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  微粒結合 モードは粒状レイヤー (「微粒取り出し」モードで作成できる) を上側のレイヤーに融合させ元のレイヤーの粒状性は残します。 ちょうど「微粒取り出し」モードの逆です。 上下の両レイヤーの画素の値の和から 128 を除算します。

  等式はつぎのとおり。

  式8.14 レイヤーモード「微粒結合」の等式

差の絶対値

  図8.23 レイヤーモード「差の絶対値」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  差の絶対値 モードは下側のレイヤーの画素の値と上側のレイヤーの同じ位置の画素の値の差の絶対値をとります。 元の両レイヤーにどんな画像を使っても、 結果として得られる画像は風変りになります。 画像を部分的に反転させる目的に向いています。

  等式はつぎのとおり。

  式8.15 レイヤーモード「差の絶対値」の等式

  このモードは可換です。 両レイヤーの順序を問いません。

加算

  図8.24 レイヤーモード「加算」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  加算 モードは非常に簡素です。 上下の両レイヤーの画素の値の和をとります。 その結果、 ほとんどの画像は色が薄くなります。 等式から導かれる色の値は 255 を越えることもあるため、 色が薄いと最大値 255 になるようです。

  等式はつぎのとおり。

  式8.16 レイヤーモード「加算」の等式

  このモードは可換です。 両レイヤーの順序を問いません。

減算

  図8.25 レイヤーモード「減算」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  減算 モードは下側のレイヤーの画素の値から上側のレイヤーの同じ位置の画素の値を引きます。 その結果、 画像は通常暗くなります。 得られる画像は真っ黒か黒っぽいものになりがちです。 等式から導かれる値が負の色の値となることがあり、 暗い色は最低値の 0 にされるものもあります。

  等式はつぎのとおり。

  式8.17 レイヤーモード「減算」の等式

比較(暗)

  図8.26 レイヤーモード「比較(暗)」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  比較(暗) モードは上下両レイヤーの画素の値から小さな方を選んで結果の画像に使います。 一方が真っ白なレイヤーだと何の変化も起きず、 真っ黒なレイヤーがあると結果の画像も真っ黒になります。

  等式はつぎのとおり。

  式8.18 レイヤーモード「比較(暗)」の等式

  このモードは可換です。 両レイヤーの順序を問いません。

比較(明)

  図8.27 レイヤーモード「比較(明)」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  比較(明) モードは上下両レイヤーの画素の値を比較して大きな値を結果の画像に使います。 真っ黒なレイヤーがあると何の変化も起きず、 真っ白なレイヤーがあると白い画像になります。

  等式はつぎのとおり。

  式8.19 レイヤーモード「比較(明)」の等式

  このモードは可換です。 両レイヤーの順序を問いません。

色相

  図8.28 レイヤーモード「色相」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  色相 モードは上側のレイヤーの色相と下側のレイヤーの彩度と明度を用いて結果の画像を構成します。 ただし上側のレイヤーの彩度が 0 のとき、 下側のレイヤーから色相も使います。

彩度

  図8.29 レイヤーモード「彩度」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  彩度 モードは上側のレイヤーの彩度と、 下側のレイヤーの色相と明度を用いて結果の画像を構成します。

色

  図8.30 レイヤーモード「色」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  色 モードは上側のレイヤーの色相と、 下側のレイヤーの明度を用いて結果の画像を構成します。

明度

  図8.31 レイヤーモード「明度」の例

  マスク 1 を 100% 不透明な上側のレイヤーとして使う。

  マスク 2 を 100% 不透明な上側のレイヤーとして使う。

  明度 モードは上側のレイヤーの明度と下側のレイヤーの彩度を用いて結果の画像を構成します。 このモードを使うと彩度を変更せずに画像の暗い部分や眩しい部分を詳らかにできます。

画像のレイヤーごとに別個のレイヤーモードも選べます。 (もちろん最背面のレイヤーのモードはどれを選んでも画像には何の変化ももたらしません。) それぞれのレイヤーモードの効果は掛け合わされます。 次の画像は 3 層のレイヤーから成ります。 最前面 (上側) のレイヤーは透明な部分で囲まれたウィルバー君が描かれ、 そのレイヤーモードは「差の絶対値」にしてあります。第 2 のレイヤーは単色青で「加算」モードです。 背景レイヤーは「Red Cubes」パターンで埋め尽くされています。

図8.32 複数レイヤー複数モードの例

GIMP の描画ツールにも同じようなモードがあります。 これらはレイヤーモードの 21 種類と同じものと、 2 つの描画ツール特有のモードからなります。 描画ツールではこれらのモードをツールオプションダイアログ上の モード メニューで設定できます。 上述の等式については、 描画対象のレイヤーが「下側のレイヤー I」で、 そのツールで描かれる画素は「上側のレイヤー M」にあります。 これらのモードを使用するのに画像にはレイヤーがひとつあれば充分です。 任意の描画ツールで現在使用中のレイヤーに操作をするのですから当然ですね。

別の 2 つの描画モードについては 「描画モードの例」 をご覧ください。

[8] これは 理 論 上 の等式です。 Bug #162395 の報告にもあるように、 実際に使われている数式は「ソフトライト」と全く同じものです。 このバグへの対処については[このモードの削除やあるいは別の数式に変更するような処置が]既にファイルに保存してある画像の見た目を変更してしまうおそれがあるので、 困難です。

第8章 画像の組み合わせ |  | 3. 新しいレイヤーの作成

Bugzilla にてエラー報告