Sunday, April 19, 2009

RMagickで画像をセピア調のスケッチ画像に変換する

RMagickで画像をセピア調のスケッチ画像に変換するには、以下のコードを実行します。

require 'RMagick'
include Magick

# 画像を端がちぎれたようなセピア調のスケッチ画像に変換する
# 余白
padx = 10
pady = 10
images = ImageList.new("sf.jpg")
images[0] = images.modulate(0.8,1.0,1.0).
sepiatone(QuantumRange*0.80).sketch(0,10,120)
images.alpha = ActivateAlphaChannel

img2 = Image.new(images.columns, images.rows){
self.background_color = "none"
}
dr = Draw.new
dr.fill = "white"
dr.rectangle(padx, pady,
images.columns-padx, images.rows-pady)
dr.draw(img2)

images.first.composite(img2.spread(5).median_filter(3),
0, 0, DstInCompositeOp).write("sample935.png")

exit


元画像(sf.jpg)


出力画像(sample035.png)
RMagickでセピア調のスケッチ画像に変換した画像

動作環境
ruby1.8.6, rmagick2.7.1

関連項目
ImageMagickで、画像を端がちぎられたようなスケッチ調の画像に変換する

No comments: