⚠️ これは 非公式の翻訳サイトです。ImageMagick Studio LLC とは無関係です。正確な情報は 原文(https://imagemagick.org/clahe/) を参照してください。

ヒストグラム平坦化(CLAHE)

コントラスト制限付き適応ヒストグラム平坦化(AHE)を使って、画像のコントラストを改善します。通常のヒストグラム平坦化が大域的な平坦化を計算するのに対し、適応的手法は画像の異なる部分にそれぞれ対応する複数のヒストグラムを計算し、それらを使って画像の明度値を再分布させます。これは局所的なコントラストを改善し、画像の各領域のエッジの明瞭さを高めるのに適しています。適応ヒストグラム平坦化の変種であるコントラスト制限付き適応ヒストグラム平坦化(CLAHE)は、画像の比較的均質な領域でノイズを過度に増幅する AHE の傾向を制限します。

CLAHE は ImageMagick 7.0.8-24 以降、-clahe オプションでサポートされています:

-clahe widthxheight{%}{+}number-bins{+}clip-limit{!}

画像は width×height ピクセルのタイルに分割されます。% を付けると幅と高さを画像寸法のパーセンテージとして定義します。タイルサイズは保持したい特徴のサイズより大きくすべきで、画像のアスペクト比を尊重します。! を付けると正確なタイル幅・高さを強制します。number-bins はタイルあたりのヒストグラムビン数です(最小 2、最大 65536)。ヒストグラムビン数は単一タイル内のピクセル数より小さくすべきです。clip-limit は局所的なコントラスト変化のコントラスト制限です。2〜3 の clip-limit から始めるとよいでしょう(例: -clahe 50x50%+128+3)。非常に大きい値はヒストグラム平坦化を自由に行わせ、局所コントラストが最大になります。値 1 は元画像になります。なお、ビン数と clip-limit を省略すると、既定はそれぞれ 128 とクリッピングなしになります。

CLAHE の利点を可視化するため、コントラストの低い山の画像を用意します:

label

大域的ヒストグラム平坦化で画像を改善できます:

label

コントラスト制限付き適応ヒストグラム平坦化の画像処理技術で、画像をさらに改善できます:

label

後者の画像は次のコマンドで生成しました:

magick mountains.jpg -clahe 25x25%+128+3 mountains-clahe.jpg

25x25% という引数は、局所コントラスト強調を行うため画像を 16 タイルに分割します。画像の寸法は 1500x1000 なので、各タイルはちょうど 375x250 ピクセルです。パーセンテージの代わりに、375x250 でタイル寸法を直接指定することもできます。

画像寸法を均等に割り切れないタイルサイズの場合、CLAHE は仮想ピクセルを利用するため、選んだ仮想ピクセル方式によって結果がわずかに変わることがあります。たとえば、

magick mountains.jpg -virtual-pixel mirror -clahe 300x300+128+3! mountains-clahe.jpg

! に注目してください。これはタイルサイズを正確に 300x300 ピクセルに強制します。! がない場合、タイルサイズは画像のアスペクト比を尊重し、結果として 300x200 のタイル寸法になります。