可視化情報処理・同演習 2. コンピュータ利用可視化法(1) 可視化手法の枠組み • 実験的可視化法 – 壁面トレース法 – タフト法 – トレーサ法 – 光学的可視化法 • コンピュータ利用可視化法 – 画像データ可視化法 – 計算データ可視化法 – 計測データ可視化法 可視化手法の枠組み • 実験的可視化法 – 壁面トレース法 – タフト法 – トレーサ法 – 光学的可視化法 • コンピュータ利用可視化法 – 画像データ可視化法 – 計算データ可視化法 – 計測データ可視化法 可視化手法の枠組み • 実験的可視化法 – 壁面トレース法 – タフト法 – トレーサ法 – 光学的可視化法 • コンピュータ利用可視化法 – 画像データ可視化法 – 計算データ可視化法 – 計測データ可視化法 画像処理法:画像の前処理(1) ヒストグラムによるコントラストの改善(線形な濃度変換) • コントラストとは? → 明暗の差 • 高コントラストとは? – 明暗の差が大きい – 画像がくっきりはっきりと表現される 高コントラスト 低コントラスト 0 a b 255 階調レベル 0 255 階調レベル ヒストグラムとは • ヒストグラムとは何か? – ディジタル画像A(i,j) • 画素数K=M×N,L階調 – ヒストグラムh(k)=nk • 濃度kを持つ画素の総数(0≦k≦L-1) L 1 h( k ) K – p(k)=nk/K • 濃度kを持つ画素の割合 k 0 L 1 p(k ) 1 k 0 頻度 ヒストグラムの例 2000 1000 0 0 100 200 階調数 画像処理法:画像の前処理(1) ヒストグラムによるコントラストの改善(線形な濃度変換) 0 a b 255 0 255 階調レベル 階調レベル 255 出力画像の濃度値 0 原画像の濃度値 a b 255 コントラストの改善 0 a 0 a b 255 b 255 0 255 255 出力画像の濃度値分布幅 広くなる=コントラスト改善 つまりこういう事 入力原画像の濃度値分布幅 コントラストの改善 線形な濃度変換 255 変換曲線 「線形」とは? 出力画像の濃度値 0 a b 255 原画像の濃度値 0 (0 z a) za z ' zm (a z b) z ': 出力画像の濃度値 z : 原画像の濃度値 ba zm (b z zm ) zm : 最大濃度値(255) コントラストの改善 線形な濃度変換 a=100 b=200 画像の比較 コントラストの改善 頻度 頻度 線形な濃度変換 2000 1000 1000 0 0 2000 100 0 0 200 階調数 ヒストグラムの比較 100 200 階調数 2000 頻度 頻度 特定の領域のみ抽出することも可能 1000 1000 0 0 2000 100 0 0 200 階調数 100 200 階調数 濃度変換 ヒストグラムの平坦化 • 変換曲線による濃度変換 – パラメータの決定方法をどうするか? – すべての濃度値を有効利用していない(ヒストグラム の隙間問題)=濃淡が滑らかに変化しない,不自然 • ヒストグラムの平坦化 – 全ての濃度値の画素数を同じ数に変更する(濃度レ ンジの有効利用=隣接画素で滑らかに濃淡変化) – 連続的に濃度が変化する,違和感のないコントラスト 改善が可能 – まず,各濃度レベルにおいて,どのレベルへ何画素分 移動(変更)するか決定する – 次に,ある規則に基づき画素値を移動(変更)する 濃度変換 ヒストグラムの平坦化 平均画素数=画素数/濃度階調数 =(256×256)/256 =256 画 素 数 画 素 数 平均画素数 (256) 濃度レベル 濃度レベル 濃度変換 ヒストグラム平坦化の流れ 変更する画素数の決定 例:6階調,画像サイズ6×4=24画素,平均画素数=4 nmove[i][j]: 濃度レベルiから,濃度レベルj へ変更する画素数 ① hist[i]: 濃度レベルiの画素数 ①nmove[i][i]=hist[i],その他は全て0 平均画素数 0 1 2 3 ヒストグラム 4 5 濃度レベル 濃度変換 ヒストグラム平坦化の流れ 変更する画素数の決定 例:6階調,画像サイズ6×4=24画素,平均画素数=4 nmove[i][j]: 濃度レベルiから,濃度レベルj へ変更する画素数 ② hist[i]: 濃度レベルiの画素数 ①nmove[i][i]=hist[i],その他は全て0 ②nmove[1][0]=1, nmove[1][1]=7 平均画素数 0 1 2 3 ヒストグラム 4 5 濃度レベル 濃度変換 ヒストグラム平坦化の流れ 変更する画素数の決定 例:6階調,画像サイズ6×4=24画素,平均画素数=4 nmove[i][j]: 濃度レベルiから,濃度レベルj へ変更する画素数 ③ hist[i]: 濃度レベルiの画素数 ①nmove[i][i]=hist[i],その他は全て0 ②nmove[1][0]=1, nmove[1][1]=7 ③nmove[1][2]=3, nmove[1][1]=4 平均画素数 0 1 2 3 ヒストグラム 4 5 濃度レベル 濃度変換 ヒストグラム平坦化の流れ 変更する画素数の決定 例:6階調,画像サイズ6×4=24画素,平均画素数=4 nmove[i][j]: 濃度レベルiから,濃度レベルj へ変更する画素数 ④ hist[i]: 濃度レベルiの画素数,処理中変化 ①nmove[i][i]=hist[i],その他は全て0 ②nmove[1][0]=1, nmove[1][1]=7 ③nmove[1][2]=3, nmove[1][1]=4 ④nmove[2][3]=1, nmove[2][2]=1 平均画素数 0 1 2 3 ヒストグラム 4 5 濃度レベル 濃度変換 ヒストグラム平坦化の流れ 変更する画素数の決定 例:6階調,画像サイズ6×4=24画素,平均画素数=4 nmove[i][j]: 濃度レベルiから,濃度レベルj へ変更する画素数 ⑤ hist[i]: 濃度レベルiの画素数,処理中変化 ①nmove[i][i]=hist[i],その他は全て0 ②nmove[1][0]=1, nmove[1][1]=7 ③nmove[1][2]=3, nmove[1][1]=4 ④nmove[2][3]=1, nmove[2][2]=1 ⑤nmove[4][3]=1, nmove[4][4]=0 平均画素数 0 1 2 3 ヒストグラム 4 5 濃度レベル 濃度変換 ヒストグラム平坦化の流れ 変更する画素数の決定 例:6階調,画像サイズ6×4=24画素,平均画素数=4 nmove[i][j]: 濃度レベルiから,濃度レベルj へ変更する画素数 ⑥ hist[i]: 濃度レベルiの画素数,処理中変化 ①nmove[i][i]=hist[i],その他は全て0 ②nmove[1][0]=1, nmove[1][1]=7 ③nmove[1][2]=3, nmove[1][1]=4 ④nmove[2][3]=1, nmove[2][2]=1 ⑤nmove[4][3]=1, nmove[4][4]=0 ⑥nmove[5][3]=1, nmove[5][5]=8 平均画素数 0 1 2 3 ヒストグラム 4 5 濃度レベル 濃度変換 ヒストグラム平坦化の流れ 変更する画素数の決定 例:6階調,画像サイズ6×4=24画素,平均画素数=4 nmove[i][j]: 濃度レベルiから,濃度レベルj へ変更する画素数 ⑦ hist[i]: 濃度レベルiの画素数,処理中変化 平均画素数 0 1 2 3 ヒストグラム 4 ①nmove[i][i]=hist[i],その他は全て0 ②nmove[1][0]=1, nmove[1][1]=7 ③nmove[1][2]=3, nmove[1][1]=4 ④nmove[2][3]=1, nmove[2][2]=1 ⑤nmove[4][3]=1, nmove[4][4]=0 ⑥nmove[5][3]=1, nmove[5][5]=8 5 ⑦nmove[5][4]=4, nmove[5][5]=4 濃度レベル 濃度変換 ヒストグラム平坦化の流れ どの場所の画素レベルをどのレベルに変更するか? • 前の例では,濃度レベル5から濃度レベル3へ変更する 画素が1つ(nmove[5][3]=1),レベル4へ変更する画素が 4つ(nmove[5][4]=4)存在する。 • 濃度レベル5の画素は,9つ存在する。 • どこの画素の濃度レベルを3にし,どこをレベル4に変更 するのか? • いろんな方法が提案されている。 – 確率的に決定 – 周囲の濃度に応じて決定 • 代表的な例では,濃度の低い方から優先的に割り当てる。 つまり,順に画素を走査しながら,最初に見つかったレベ ル5をレベル3へ変更し,次に見つかったレベル5をレベ ル4に変更する。 濃度変換 2000 頻度 頻度 ヒストグラムの平坦化 1000 0 0 2000 1000 100 200 階調数 0 0 100 200 階調数 実習 • 原画像のヒストグラムと,線形変換によりダイ ナミックレンジを拡大した画像のヒストグラム を比較しなさい。 • 線形変換を用いて,カメラマンの画像からカメ ラマンのみを抽出しなさい。 • ヒストグラムの平坦化により,ヒストグラムが 平坦となっていることを確認しなさい。 画像処理法:画像の前処理(2) ノイズ除去 • ノイズ画像の性質 – 周辺の画素の濃度とは相関がなく,極端に大き いか,極端に小さい濃度値をもつ。 – 孤立的に存在する。 • ノイズ除去手法:空間フィルタによる – 移動平均法,加重平均法 – メディアンフィルタ法 – 選択的局所平均化法 空間フィルタ 空間フィルタリングの手法 f [i 1][ j 1] a[1][1] a[1][1] f [i ][ j ] g[i ][ j ] * f [i 1][ j 1] フィルタ係数 着目画素 と8近傍 f [i 1][ j 1] 着目画素の 新しい画素値 それぞれを9つの要素をもつベクトルと考え,内積を計算 1 1 g[i][ j ] f [i k ][ j l ] a[k ][l ] l 1 k 1 空間フィルタ 平滑化フィルタ • 雑音の特徴は? – 大きさが不規則で,狭い範囲で激しく変化する • では,どのようにすれば目立たなくなる? – 大きさが激しく変化しないようにする – 周りの値で平均化し,ならす(平らにする) 平滑化フィルタ 空間フィルタ 平滑化フィルタ <移動平均フィルタ> 1 9 1 a[ k ][l ] 9 1 9 1 9 1 9 1 9 1 9 1 9 1 9 • フィルタ係数の総和は1と なるように設定する • フィルタ係数全てが1/9 • 8近傍の画素値との平均 値を求めて新しい画素値 とする • 移動平均法とも呼ばれる • 雑音は軽減されるが,同 時に画像(特に輪郭部 分)がボケてしまう 空間フィルタ <加重平均フィルタ> ガウシアンフィルタ ガウス分布 x2 y2 G ( x, y ) exp 2 2 2 2 2 1 24 24 2 12 a[ k ][l ] 24 24 2 1 24 24 1 1 24 2 24 1 24 • N回適用することで,標 準偏差σがsqrt(N)に比 例するようなガウシア ンフィルタの効果を得 ることが可能な近似的 フィルタ 空間フィルタ 平滑化フィルタ <メディアンフィルタ> 画素値の順に並べる 中央値(メディアン)を選択 着目画素 と8近傍 メディアンを着目画素の 新しい画素値とする 空間フィルタ <メディアンフィルタ> • スパイク状の雑音を除去するのに有効 • スパイク雑音は,他の画素値よりも大きいた め,近傍画素値を並べ替えたときに端に寄る 傾向にある • メディアンを選択することにより除去できる • スパイク雑音のみ除去でき,ボケの発生はほ とんどない(スパイク雑音が無い部分ではボ ケが発生する場合がある) 空間フィルタ 選択的局所平均化法 9つの小領域 に分割 領域1 領域2 領域3 領域4 着目画素 と5×5近傍 領域5 それぞれの領域について, 画素値の平均と分散を求める 領域6 領域7 領域8 領域9 最も分散が小さい領域 の平均値を着目画素の 画素値とする 空間フィルタ 選択的局所平均化法 • 最も分散が小さい領域とは? – 画素値がほとんど同じ領域であり,大きく異な る画素値(つまりノイズやエッジ)が無い領域 – その平均値を着目画素の画素値とすることに より,エッジを保存した平滑化が可能 • ただし,処理時間が他の手法より長い 実習 • ノイズを含むlena画像において,移動平均法,加 重平均法(ガウシアン法),メディアンフィルタ法, 選択的局所平均化法のそれぞれについてノイズ 除去効果を確認しなさい。 • ガウシアンフィルタを複数回かけた結果も確認し なさい。 • 画質をPSNRを用いて評価しなさい。 • メディアンフィルタ法において,中央値ではなく最 大値や最小値を選択するとどうなるか確認しな さい。 画質の評価 PSNR MAX 2 • 画質を評価する代表 P SNR[dB] 10 log10 的な指標 MSE ^ 1 N 1 M 1 2 • 平均自乗誤差に対す MSE ( f [i ][ j ] f [i ][ j ]) る濃度最大値のS/N N M i 0 j 0 • 通常,32[dB]程度で原 MAX 最大濃度値(255) 画像との違いは視認 f [i ][ j ] : 原画像 できないと言われる ^ • S/Nであるので,大き f [i ][ j ] : 評価画像 い値ほど高画質 N : 行数, M : 列数 ( N M 256) 画像処理法:画像の前処理(3) 画像の鮮鋭化 • 元の画像からラプラシアンを引き算することによ りエッジが強調される。 f [ y ][x] 2 f [ y ][x] 5 f [ y ][x] 元の画像 f [ y ][x 1] ラプラシアン f [ y ][x 1] f [ y 1][x] 引き算の結果 オーバーシュート f [ y 1][x] アンダーシュート プラスを引き算=引き算 マイナスを引き算=足し算 振幅差が強調される ラプラシアン Laplacian : 画像の二次微分 x方向の二次微分 2 f [ y][x] f [ y][x] f [ y][x 1] f [ y][x] 2 x x x x ・二次微分は,微分値同士の差分 ・対称性を考慮し,x-1とxにおける微分値と差分を取る f [ y][x 1] f [ y][x] f [ y][x] f [ y][x 1] f [ y][x 1] f [ y][x 1] 2 f [ y][x] ラプラシアン Laplacian : 画像の二次微分 y方向の二次微分 2 f [ y][x] f [ y 1][x] f [ y 1][x] 2 f [ y][x] 2 y Laplacian 2 2 f f 2 f 2 2 x y f [ y][x 1] f [ y][x 1] f [ y 1][x] f [ y 1][x] 4 f [ y][x] エッジの形状と微分結果 ステップ型エッジ ルーフ型エッジ 濃淡の変化 一次微分 Laplacian 実習 • 画像の鮮鋭化を確認しなさい。
© Copyright 2025 ExpyDoc