[scikit-image] 8. 画像処理におけるコントラスト補正テクニック

python

はじめに

本記事では、scikit-imageライブラリを使用した画像のコントラスト補正テクニックについて解説します。特に、skimage.exposureモジュールのrescale_intensity、equalize_histとequalize_adapthistなどの関数を用いた各種均等化手法を紹介し、それらの特徴や使い方、効果の違いについて詳しく説明していきます。実際の画像処理例を通じて、どのようにコントラストを効果的に改善できるかを学びましょう。

コード

解説

この例では、ヒストグラム均等化やコントラストストレッチと呼ばれる方法を使用して、コントラストの低い画像を効果的に強調します。

モジュールのインポート

画像とヒストグラム、累積ヒストグラムを表示する関数

これは、

[scikit-image] 6. ヒストグラム均等化による画像コントラスト向上
scikit-imageのrank.equalizeを用いたヒストグラム均等化の実装方法を解説。暗い画像や低コントラスト画像を鮮明にする処理技術で、医療画像や天体写真などで活用されています。Pythonによる実装例も紹介。
[scikit-image] 7. ガンマ補正と対数補正
scikit-imageライブラリを使用したガンマ補正と対数補正による画像コントラスト調整技術について解説します。暗部や明部の詳細を強調するこれらの手法の特性、適用方法、効果の違いを理解し、画像処理の幅を広げましょう。

のものとほぼ同じとなっています。

画像の読み込み

rgb2gray関数でグレースケール画像に変換します。

画像のコントラストストレッチによる補正

np.percentile(img, (10, 90))を使用すると、画像データの下位10%と上位90%の値を取得できます。

この取得した範囲内でデータを再スケーリングすることで、画像のコントラストが効果的に向上します。

equalize_histによる補正

累積ヒストグラムが直線になるように画像のヒストグラムが均等化されます。

equalize_adapthistによる補正

scikit-image, コントラスト補正, 画像処理, ヒストグラム均等化, rescale_intensity, equalize_hist, equalize_adapthist, Python, 画像強調, コンピュータビジョン

局所的なコントラストに応じて均等化を行うため、画像全体のコントラストが効果的に平坦化されます。

kernel_sizeを指定しない場合、デフォルト値は画像の縦横サイズの1/8に設定されます。

clip_limitはコントラスト強調を制限する比率であり、0より大きい値を設定する必要があります。この手法はカラー画像にも適用可能です。

コードをダウンロード(.pyファイル)

コードをダウンロード(.ipynbファイル)

参考

Histogram Equalization — skimage 0.25.2 documentation
skimage.exposure — skimage 0.25.2 documentation

コメント