1.特徴の多い画像をロードし、cvSmooth()でsmoothtype=CV_GAUSSIANを用いて平滑化を行います。
a.平滑化ウィンドウサイズを3x3、5x5、9x9、11x11に設定して、結果を表示します。
色々なウィンドウサイズで平滑化 |
b.5x5のガウシアンフィルタで2回平滑化したものと、11x11でのフィルタで平滑化したものの結果を比べます。
5x5を2回と11x11を1回 |
2.100x100のシングルチャネルの画像を作成します。画像をクリアし、中心のピクセルを255に設定します。
a.画像を5x5のガウシアンフィルタを用いて平滑化して結果を表示します。
b.同じように9x9のガウシアンフィルタでも平滑化を行います。
5x5と9x9 |
結果:5x5を2回行ったものと、9x9を1回行ったものは似たような結果になるが、5x5を2回行ったものの方が全体的な輝度が高いように見える
3.何か画像をロードし、色々な条件でcvSmoothを実行します。
a. param1=param2=9に設定して実行します。param3は色々な値(1,4,6)に設定して結果を比べます。
param1=param2=9, param3=1,4,6 |
b. param1=param2=0に設定して、param3を色々な値にして結果を比べます。
param1=param2=0,param3=1,4,6 |
aのときよりも、bの方がぼやけた画像になりました。
c. param1=param2=0にして、param3=1,param4=9に設定して平滑化します。
d. param1=param2=0にして、param3=9,param4=1に設定して平滑化します。
e. cの条件で平滑化し、さらにdの条件で平滑化します。
f. param1=param=2=9、param3=param4=0でフィルタをかけたものと、eの結果を比べます。
c,d,e,f |
なぜeがぼやけた画像になるかというと、ガウシアン平滑化の場合は下記のような数式でパラメータが計算されるためです。
つまり、param1=param2=0,param3=param4=9の場合は、
param1=param2=57,param3=param4=0にほぼ等しくなる、と考えて良さそうです。
実際に57x57のウィンドウで平滑化をかけると、eと似たような結果になりました。
bがaよりもぼやけた画像になったのは、param1とparam2に0が設定されているので、
param3からウィンドウサイズを計算したため、大きなウィンドウサイズ(param3=4のときは23,param3=6のときは37)になったのでぼやけた画像になったためと思われます。
ソースコードはいつものように別館に置いてあります。
ではまた。
0 件のコメント:
コメントを投稿