ぱたへね

はてなダイアリーはrustの色分けができないのでこっちに来た

Gauche-CVでガウシアンフィルターをかける

Gauche-CVを使って画像にぼかしをいれる方法です。
元ネタはProgramming Computer Vision With Pythonから。
Gauche-CVはaharisuのごみ箱で公開されています。

Python PILでガウシアンフィルター

scipy の filters.gaussian_filter を使って、色空間毎にフィルターをかけます。画像への保存は、imwriteではなく、scipy.misc.imsave を使います。

# -*- coding: utf-8 -*-
__author__ = 'Natsutani'
import os
from PIL import Image
from numpy import *
from scipy.ndimage import filters
from scipy.misc import imsave
import scipy

# Tkinterの設定
# http://qiita.com/items/0a79c3c6d6b730f841ee
os.environ['TCL_LIBRARY'] = 'C:/Python32/tcl/tcl8.5'
os.environ['TK_LIBRARY'] = 'C:/Python32/tcl/tk8.5'

im = array(Image.open('twittan.jpg'))
im2 = zeros(im.shape)
for i in range(3):
    im2[:,:,i] = filters.gaussian_filter(im[:,:,i],5)

imsave('twittan_g.jpg', im2.astype('uint8'))

Gauche-CVでガウシアンフィルター

cv-smoothでフィルターをかけることができます。

(use cv)

(let* ((src (cv-load-image "twittan.jpg"))
       (dst (cv-clone-image src)))
  (cv-smooth src dst CV_GAUSSIAN 11 11 0 0)
  (cv-save-image "twittan_g.jpg" dst))

処理結果

Gauche-CLによる処理結果です。