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

解説
この例では、ヒストグラム均等化やコントラストストレッチと呼ばれる方法を使用して、コントラストの低い画像を効果的に強調します。
モジュールのインポート
画像とヒストグラム、累積ヒストグラムを表示する関数
これは、


のものとほぼ同じとなっています。
画像の読み込み
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ファイル)
コメント