ImageMagick でバイラテラルフィルター
· 約1分
ImageMagick でバイラテラルフィルターをかける試み。 ImageMagick のインストール方法は install-magick.html
magick convert Parrots.jpg -bilateral-blur 10x10 output.png
結果
-
入力画像

-
出力画像

ImageMagick でバイラテラルフィルターをかける試み。 ImageMagick のインストール方法は install-magick.html
magick convert Parrots.jpg -bilateral-blur 10x10 output.png
入力画像

出力画像

wget https://download.imagemagick.org/ImageMagick/download/ImageMagick-7.0.11-14.tar.xz
tar xf ImageMagick-7.0.11-14.tar.xz
sudo apt update
cd ImageMagick-7.0.11-14.tar.xz
./configure
make -j
sudo make install
sudo ldconfig /usr/local/lib
例として、1[Hz] の sin 波を信号とする。 平均 0、標準偏差 0.5 の正規分布から乱数を作成したノイズを信号に加える。
import numpy as np
import matplotlib.pyplot as plt
from scipy.ndimage import gaussian_filter1d
t = np.arange(1000) / 100
s = np.sin(2*np.pi*t)
noise = np.random.normal(0, 0.5, size=len(t))
x = s + noise
plt.plot(t, x, label="+noise")
plt.plot(t, s, label="signal")
plt.legend(loc=1)
plt.show()
標準偏差 5 のガウシアンフィルターをかける。 標準偏差が大きいほど、滑らかになるが元の信号と外れる。
y = gaussian_filter1d(x, 5)
plt.plot(t, y, label="filtered")
plt.plot(t, s, label="signal")
plt.legend(loc=1)
plt.show()