第7章 サンプルプログラム

例題

問題 説明
例題7.1 画素値の取得
例題7.2 画像のヒストグラム
例題7.3 グレイスケール変換(1)
例題7.4 グレイスケール変換(2)
例題7.5 2値化(1)
例題7.6 2値化(2) マウスポインタのx座標でしきい値が変化
例題7.7 濃淡の反転
例題7.8 ポスタリゼーション
例題7.9 モザイク処理
例題7.10 平均化フィルタ
例題7.12 ガウシアンフィルタ(1)
例題7.13 ガウシアンフィルタ(2)
例題7.14 メディアンフィルタ
例題7.15 prewittフィルタ
例題7.17 sobelフィルタ

練習問題

問題 説明
問題7.1 画像の左右反転
問題7.2 画像を中心軸で鏡映
問題7.3 バイラテラルフィルタ 例題7.13のガウシアンフィルタ(2)を利用. 式(7.6)は式(7.4)に色の差分が加わった式. 式(7.6)の第一項は,ガウシアンフィルタ(2)で計算済み. バイラテラルフィルタでは,ガウシアンの重みに色の差分を掛けて, 毎回フィルタの重みを計算する. 計算後,重みの総和が1になるように正規化. これは,式(7.5)の分母に相当.
問題7.4 画素を円で置き換え
問題7.5 画素を傾いた楕円で置き換え 一方向に傾ける
問題7.6 画素をエッジの方向と大きさに比例した傾きと大きさで楕円に置き換え エッジの方向と大きさを求めるには,prewittあるいはsobelを利用. エッジの勾配および大きさは,式(7.8)で計算する. エッジに沿う方向は,エッジの勾配に対して直交する. その分だけ楕円の長軸を傾ける. 長軸の長さはエッジの大きさに比例して変化するようにする. 長軸と短軸の比は適当に決める. あとは,pointImageのようにランラムな画素を選んで描画する.