Showing posts with label 画像処理. Show all posts
Showing posts with label 画像処理. Show all posts

Wednesday, March 24, 2010

Java2DとJava Image Filters(pixels)を使用してノイズの付いたグレースケール画像に変換する

Java2DとJava Image Filters(pixels)を使用してノイズの付いたグレースケール画像に変換するには、以下のコードを実行します。


import java.awt.*;
import java.awt.image.*;
import java.io.*;
import javax.imageio.*;
import com.jhlabs.composite.*;
import com.jhlabs.image.*;

public class Java2DTest79
{
public static void main(String args[])
throws Exception
{
/* グレースケールのノイズのついた画像に変換する */
BufferedImage img = ImageIO.read(new File("sf.jpg"));
BufferedImage imga = new BufferedImage(
img.getWidth(), img.getHeight(),
BufferedImage.TYPE_INT_ARGB
);

NoiseFilter nf = new NoiseFilter();
img = nf.filter(img, imga);

GrayscaleFilter grf = new GrayscaleFilter();
img = grf.filter(img, null);

DiffuseFilter df = new DiffuseFilter();
df.setScale(1);
img = df.filter(img, null);

ImageIO.write(img, "png", new File("sample1980a.png"));
}
}


元画像(sf.jpg)


出力画像(sample1980a.png)


関連項目
Jerry Huxtableさんのホームページ
http://www.jhlabs.com/index.html
Java Image Filtersのページ
http://www.jhlabs.com/ip/filters/
java.net でのプロジェクトページ
https://pixels.dev.java.net/

Monday, March 22, 2010

Java2DとJava Image Filters(pixels)を使用して画像を織物風に変換する

Java2DとJava Image Filters(pixels)を使用して画像を織物風に変換するには、以下のコードを実行します。


import java.awt.*;
import java.awt.image.*;
import java.io.*;
import javax.imageio.*;
import com.jhlabs.composite.*;
import com.jhlabs.image.*;

public class Java2DTest77
{
public static void main(String args[])
throws Exception
{
/* 織物風に変換 */
BufferedImage img = ImageIO.read(new File("sf.jpg"));
BufferedImage imga = new BufferedImage(
img.getWidth(), img.getHeight(),
BufferedImage.TYPE_INT_ARGB
);

WeaveFilter wf = new WeaveFilter();
img = wf.filter(img, imga);

ImageIO.write(img, "png", new File("sample1978a.png"));
}
}


元画像(sf.jpg)


出力画像(sample1978a.png)
織物風に変換した画像

関連項目
Jerry Huxtableさんのホームページ
http://www.jhlabs.com/index.html
Java Image Filtersのページ
http://www.jhlabs.com/ip/filters/
java.net でのプロジェクトページ
https://pixels.dev.java.net/

Saturday, March 20, 2010

Java2DとJava Image Filters(pixels)を使用して画像を滲んだ感じに変換する

Java2DとJava Image Filters(pixels)を使用して画像を滲んだ感じに変換するには、以下のコードを実行します。


import java.awt.*;
import java.awt.image.*;
import java.io.*;
import javax.imageio.*;
import com.jhlabs.composite.*;
import com.jhlabs.image.*;

public class Java2DTest75
{
public static void main(String args[])
throws Exception
{
/* 画像を滲んだ感じに変換 */
BufferedImage img = ImageIO.read(new File("sf2.jpg"));
BufferedImage imga = new BufferedImage(
img.getWidth(), img.getHeight(),
BufferedImage.TYPE_INT_ARGB
);

// 拡散
DiffuseFilter gf = new DiffuseFilter();
gf.setScale(2);
img = gf.filter(img, imga);

// ガウシアンブラー
GaussianFilter gaf = new GaussianFilter(3f);
img = gaf.filter(img, null);

BufferedImage img2 = ImageIO.read(new File("sf2.jpg"));
ContrastFilter ctf = new ContrastFilter();
ctf.setBrightness(0.7f);
ctf.setContrast(0.7f);
img2 = ctf.filter(img2, imga);

CompositeFilter cf = new CompositeFilter(
MiscComposite.getInstance(MiscComposite.DODGE, 0.5f));
BufferedImage img3 = cf.filter(img2, img);

ImageIO.write(img3, "png", new File("sample1976a.png"));
}
}


元画像(sf2.jpg)


出力画像(sample1976a.png)


関連項目
Jerry Huxtableさんのホームページ
http://www.jhlabs.com/index.html
Java Image Filtersのページ
http://www.jhlabs.com/ip/filters/
java.net でのプロジェクトページ
https://pixels.dev.java.net/

Thursday, March 18, 2010

Java2DとJava Image Filters(pixels)を使用して画像を手書き風に変換する

Java2DとJava Image Filters(pixels)を使用して画像を手書き風に変換するには、以下のコードを実行します。


import java.awt.*;
import java.awt.image.*;
import java.io.*;
import javax.imageio.*;
import com.jhlabs.composite.*;
import com.jhlabs.image.*;

public class Java2DTest73
{
public static void main(String args[])
throws Exception
{
/* 手書き画像風に変換 */
BufferedImage img = ImageIO.read(new File("sf2.jpg"));
BufferedImage imga = new BufferedImage(
img.getWidth(), img.getHeight(),
BufferedImage.TYPE_INT_ARGB
);
// 拡散
DiffuseFilter gf = new DiffuseFilter();
gf.setScale(3);
img = gf.filter(img, imga);

// モーションブラー
MotionBlurFilter mbf = new MotionBlurFilter(12f, 100f, 0.0f, 0.0f);
img = mbf.filter(img, null);

BufferedImage img2 = new BufferedImage(
img.getWidth(), img.getHeight(),
BufferedImage.TYPE_INT_ARGB
);
ScratchFilter sf = new ScratchFilter();
sf.setAngle(10);
sf.setAngleVariation(0.08f);
sf.setColor(0xff808080);
sf.setDensity(3.9f);
sf.setLength(0.06f);
sf.setWidth(0.7f);
sf.setSeed(2010);

img2 = sf.filter(img2, null);

CompositeFilter cf = new CompositeFilter(
MiscComposite.getInstance(MiscComposite.ADD, 0.25f));

BufferedImage img5 = cf.filter(img2, img);

ImageIO.write(img5, "png", new File("sample1974a.png"));
}
}


元画像(sf2.jpg)


出力画像(sample1974a.png)
Java2DとJava Image Filtersで手書き風に変換した画像

関連項目
Jerry Huxtableさんのホームページ
http://www.jhlabs.com/index.html
Java Image Filtersのページ
http://www.jhlabs.com/ip/filters/
java.net でのプロジェクトページ
https://pixels.dev.java.net/

Tuesday, March 16, 2010

Java2DとJava Image Filters(pixels)を使用して画像をぼやけたセピア調に変換する

Java2DとJava Image Filters(pixels)を使用して画像をぼやけたセピア調に変換するには、以下のコードを実行します。


import java.awt.*;
import java.awt.image.*;
import java.io.*;
import javax.imageio.*;
import com.jhlabs.composite.*;
import com.jhlabs.image.*;

public class Java2DTest71
{
public static void main(String args[])
throws Exception
{
/* 画像をぼやけたセピア調に変換する */
BufferedImage img = ImageIO.read(new File("sf2.jpg"));

// 拡散
DiffuseFilter gf = new DiffuseFilter();
gf.setScale(1);
BufferedImage img2 = gf.filter(img, null);
// メディアンフィルタ
MedianFilter mf = new MedianFilter();
img2 = mf.filter(img2, null);
// グレースケールフィルタ
GrayscaleFilter grf = new GrayscaleFilter();
img2 = grf.filter(img2, null);

// コントラストを150%
ContrastFilter ctf = new ContrastFilter();
ctf.setContrast(1.5f);
img2 = ctf.filter(img2, null);

BufferedImage img3 = new BufferedImage(
img.getWidth(), img.getHeight(),
BufferedImage.TYPE_INT_ARGB
);
FillFilter ff = new FillFilter(0xffffbb33);
BufferedImage img4 = ff.filter(img3, null);

CompositeFilter cf = new CompositeFilter(
MiscComposite.getInstance(MiscComposite.BLEND, 0.5f));

BufferedImage img5 = cf.filter(img2, img4);
ImageIO.write(img5, "png", new File("sample1972a.png"));
}
}


元画像(sf2.jpg)


出力画像(sample1972a.png)
Java2DとJava Image Filtersでぼやけたセピア調に変換した画像

関連項目
Jerry Huxtableさんのホームページ
http://www.jhlabs.com/index.html
Java Image Filtersのページ
http://www.jhlabs.com/ip/filters/
java.net でのプロジェクトページ
https://pixels.dev.java.net/

Tuesday, March 09, 2010

Java2DとJava Image Filters(pixels)を使用して画像を点画風に変換する

Java2DとJava Image Filters(pixels)を使用して画像を点画風に変換するには、以下のコードを実行します。


import java.awt.*;
import java.awt.image.*;
import java.io.*;
import javax.imageio.*;
import com.jhlabs.image.*;

public class Java2DTest74
{
public static void main(String args[])
throws Exception
{
/* 点画風に変換 */
BufferedImage img = ImageIO.read(new File("sf.jpg"));
BufferedImage imga = new BufferedImage(
img.getWidth(), img.getHeight(),
BufferedImage.TYPE_INT_ARGB
);

// モーションブラー
MotionBlurFilter mbf = new MotionBlurFilter(3f, 100f, 0.0f, 0.0f);
img = mbf.filter(img, null);

// 拡散
DiffuseFilter gf = new DiffuseFilter();
gf.setScale(3);
img = gf.filter(img, imga);

ContrastFilter ctf = new ContrastFilter();
ctf.setBrightness(1.2f);
ctf.setContrast(1.5f);
img = ctf.filter(img, null);

ImageIO.write(img, "png", new File("sample1975a.png"));
}
}


元画像(sf.jpg)


出力画像(sample1975a.png)


関連項目
Jerry Huxtableさんのホームページ
http://www.jhlabs.com/index.html
Java Image Filtersのページ
http://www.jhlabs.com/ip/filters/
java.net でのプロジェクトページ
https://pixels.dev.java.net/

Friday, March 05, 2010

Java2DとJava Image Filters(pixels)を使用して画像にメディアンフィルタをかける

Java2DとJava Image Filters(pixels)を使用して画像にメディアンフィルタをかけるには、以下のコードを実行します。


import java.awt.*;
import java.awt.image.*;
import java.io.*;
import javax.imageio.*;
import com.jhlabs.image.*;

public class Java2DTest70
{
public static void main(String args[])
throws Exception
{
/* 画像にメディアンフィルタをかける */
BufferedImage img = ImageIO.read(new File("sf2.jpg"));
MedianFilter mf = new MedianFilter();

BufferedImage img2 = mf.filter(img, null);
img2 = mf.filter(img2, null);
ImageIO.write(img2, "png", new File("sample1971a.png"));
}
}


元画像(sf2.jpg)


出力画像(sample1971a.png)
Java2DとJava Image Filtersでメディアンフィルタを適用した画像

関連項目
Jerry Huxtableさんのホームページ
http://www.jhlabs.com/index.html
Java Image Filtersのページ
http://www.jhlabs.com/ip/filters/
java.net でのプロジェクトページ
https://pixels.dev.java.net/

Saturday, February 27, 2010

Java2DとJava Image Filters(pixels)を使用して画像をグレースケールに変換する

Java2DとJava Image Filters(pixels)を使用して画像をグレースケールに変換するには、以下のコードを実行します。


import java.awt.*;
import java.awt.image.*;
import java.io.*;
import javax.imageio.*;
import com.jhlabs.image.*;

public class Java2DTest63
{
public static void main(String args[])
throws Exception
{
/* 画像をグレースケールに変換する */
BufferedImage img = ImageIO.read(new File("sf2.jpg"));
GrayscaleFilter gf = new GrayscaleFilter();

BufferedImage img2 = gf.filter(img, null);
ImageIO.write(img2, "jpg", new File("sample1964a.jpg"));
}
}


元画像(sf2.jpg)


出力画像(sample1964a.jpg)


関連項目
Jerry Huxtableさんのホームページ
http://www.jhlabs.com/index.html
Java Image Filtersのページ
http://www.jhlabs.com/ip/filters/
java.net でのプロジェクトページ
https://pixels.dev.java.net/

Friday, February 26, 2010

Java2DとJava Image Filters(pixels)を使用して画像を絵画っぽく変換する

Java2DとJava Image Filters(pixels)を使用して画像を絵画っぽく変換するには、以下のコードを実行します。


import java.awt.*;
import java.awt.image.*;
import java.io.*;
import javax.imageio.*;
import com.jhlabs.image.*;

public class Java2DTest62
{
public static void main(String args[])
throws Exception
{
/* 画像を絵画っぽく変換する */
BufferedImage img = ImageIO.read(new File("sf2.jpg"));
DiffuseFilter df = new DiffuseFilter();
/* スケール */
df.setScale(3);

OilFilter of = new OilFilter();
/* ピクセルでの効果範囲 */
of.setRange(2);
/* 効果のレベル */
of.setLevels(3);

// 複合フィルタ
CompoundFilter cf = new CompoundFilter(of, df);

BufferedImage img2 = cf.filter(img, null);
ImageIO.write(img2, "jpg", new File("sample1963a.jpg"));
}
}


元画像(sf2.jpg)


出力画像(sample1963a.jpg)


関連項目
Jerry Huxtableさんのホームページ
http://www.jhlabs.com/index.html
Java Image Filtersのページ
http://www.jhlabs.com/ip/filters/
java.net でのプロジェクトページ
https://pixels.dev.java.net/

Friday, January 08, 2010

画像をぼやけた感じのセピア調に加工する

画像をぼやけた感じのセピア調に加工するには、以下のバッチファイルを実行します。


rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.5.7-Q16

%im%\convert.exe sf2.jpg -evaluate Multiply 0.5 -modulate 130,20,100
-median 2 -sepia-tone 80%% sample1435a.png


元画像(sf2.jpg)


出力画像(sample1435a.png)

Wednesday, January 06, 2010

ImageMagickで画像を荒い感じの絵画調に加工する

ImageMagickで画像を荒い感じの絵画調に加工するには、以下のバッチファイルを実行します。


rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.5.7-Q16

%im%\convert.exe sf2.jpg -evaluate multiply 0.6
-sketch 0,10,35 -spread 2 -paint 2 sample1433a.png


元画像(sf2.jpg)


出力画像(sample1433a.png)
ImageMagickで絵画調に加工した画像

Saturday, November 14, 2009

ImageMagickで画像を青く滲んだ感じに加工する

ImageMagickで画像を青く滲んだ感じに加工するには、以下のバッチファイルを実行します。


rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.5.7-Q16

rem 画像を青く滲ませる
%im%\convert.exe sf2.jpg -modulate 100,50,100 -spread 3
-motion-blur 0,7,270 -fill #bbddff -tint 90%% sample1434a.png


元画像(sf2.jpg)


出力画像(sample1434a.png)
ImageMagickで青く滲んだ感じに加工した画像

Saturday, July 11, 2009

ImageMagickとPHPでピントがぼけたようなセピア調の画像に変換する

Imagickでピントがぼけたようなセピア調の画像に変換するには、以下のコードを実行します。


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ja"
xml:lang="ja" dir="ltr">
<head>
<title>sample1155(ImageMagick6.5.2)</title>
</head>
<body>
<?php
$im = new Imagick("sf2.jpg");
$im->evaluateImage(imagick::EVALUATE_MULTIPLY, 0.5);
$im->modulateImage(130, 20, 100);
$im->medianFilterImage(2);
$im->sepiaToneImage(80);
$im->writeImage('sample1155a.png');

$im->destroy();
?>
<img src="sample1155a.png" /><br />

</body>
</html>


元画像(sf2.jpg)


出力画像(sample1155a.png)
Imagickでピントがぼけたようなセピア調に変換した画像

Sunday, July 05, 2009

ImageMagickとPHPで画像を絵画調に変換する - その2

Imagickで画像を絵画調に変更するには、以下のコードを実行します。


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ja"
xml:lang="ja" dir="ltr">
<head>
<title>sample1153(ImageMagick6.5.2)</title>
</head>
<body>
<?php
$im = new Imagick("sf2.jpg");
$im->modulateImage(80, 180, 100);
$im->sketchImage(10,0,135);
$im->spreadImage(2);
$im->oilPaintImage(2);
$im->writeImage('sample1153a.png');

$im->destroy();
?>
<img src="sample1153a.png" /><br />

</body>
</html>


元画像(sf2.jpg)


出力画像(sample1153a.png)
Imagickで絵画調に変換した画像

関連項目
ImageMagickとPHPで画像を絵画調に変換する
ImageMagickとPHPで画像を点画のように変換する

Friday, May 29, 2009

ImageMagickとPHPで画像をブロック風に変換する

Imagickで画像をブロック風に変換するには、以下のコードを実行します。


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ja"
xml:lang="ja" dir="ltr">
<head>
<title>sample1102(ImageMagick6.5.2)</title>
</head>
<body>
<?php
/* ブロックサイズ */
$bw=20;
$bh=20;

$im = new Imagick("sf.jpg");
$iw = $im->getImageWidth();
$ih = $im->getImageHeight();

/* 円のパターンを作成 */
$idraw = new ImagickDraw();
$idraw->pushPattern('tile', 0, 0, $bw, $bh);
$idraw->setFillColor("white");
$idraw->ellipse($bw/2+1,$bh/2+1,
$bw/2*0.6,$bh/2*0.6,0,360);
$idraw->popPattern();
/* 円をタイル配置してマスク作成 */
$idraw->setFillPatternURL('#tile');
$im2 = new Imagick();
$im2->newPseudoImage($iw, $ih, "xc:none");
$idraw->rectangle(0, 0, $iw, $ih);
$im2->drawImage($idraw);

/* モザイク画像作成 */
$im->modulateImage(100, 140, 100);
$im->resizeImage($iw/$bw, $ih/$bh,
imagick::FILTER_MITCHELL, 1);
/* FILTER_POINTを使用して元のサイズにリサイズ */
$im->resizeImage($iw, $ih, Imagick::FILTER_POINT, 1);


$im2->compositeImage($im, Imagick::COMPOSITE_IN, 0, 0,
Imagick::CHANNEL_ALL);
$im3 = $im2->clone();
$im4 = $im2->clone();

$im3->evaluateImage(imagick::EVALUATE_MULTIPLY, 0.8);
$im->compositeImage($im3, Imagick::COMPOSITE_OVER,
0, 0, Imagick::CHANNEL_ALL);
$im->compositeImage($im3, Imagick::COMPOSITE_OVER,
-1, -1, Imagick::CHANNEL_ALL);

$im3->evaluateImage(imagick::EVALUATE_MULTIPLY, 1.5);
$im->compositeImage($im3, Imagick::COMPOSITE_OVER,
-2, -2, Imagick::CHANNEL_ALL);


$im->writeImage('sample1102a.png');

$im2->destroy();
$im->destroy();
?>
<img src="sample1102a.png" /><br />

</body>
</html>


元画像(sf.jpg)


出力画像(sample1102a.png)
Imagickでブロック風に変換した画像

関連項目
ImageMagickで画像をブロック風に変換する (convertコマンドでの同様の処理)
ImageMagickとPHPで、画像を荒いドット画像に変換する
ImageMagickとPHPで画像を荒いドットを交互に配置したモザイク画像に変換する

Tuesday, May 26, 2009

ImageMagickとPHPで画像を滲んだ感じに変換する

Imagickで画像を滲んだ感じに変換するには、以下のコードを実行します。


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ja"
xml:lang="ja" dir="ltr">
<head>
<title>sample1099(ImageMagick6.5.2)</title>
</head>
<body>
<?php
$im = new Imagick("sf.jpg");
// 何故かIM6.5.2-0では動作しない?
//$im->setImageColorspace(Imagick::COLORSPACE_GRAY);
$im = $im->fxImage("lightness");
$im2 = new Imagick("sf.jpg");
$im2->spreadImage(4);
$im2->blurImage(0,1);
$im->compositeImage($im2, Imagick::COMPOSITE_OVERLAY, 0, 0,
Imagick::CHANNEL_ALL);

$im->writeImage('sample1099a.png');
$im2->destroy();
$im->destroy();
?>
<img src="sample1099a.png" />
</body>
</html>


元画像(sf.jpg)


出力画像(sample1099a.png)
Imagickで滲んだ感じに変換した画像

関連項目
ImageMagickで画像を滲んだ感じに変換する (convertコマンドでの同様の処理)

Sunday, May 24, 2009

ImageMagickとPHPで画像を点画のように変換する

Imagickで画像を点画のように変換するには、以下のコードを実行します。


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ja"
xml:lang="ja" dir="ltr">
<head>
<title>sample1097(ImageMagick6.5.2)</title>
</head>
<body>
<?php
$im = new Imagick("sf2.jpg");
$im->modulateImage(100, 250, 100);
$im->sketchImage(10,0,135);
$im->spreadImage(1);
$im->writeImage('sample1097a.png');
$im->destroy();
?>
<img src="sample1097a.png" />
</body>
</html>


元画像(sf2.jpg)


出力画像(sample1097a.png)
Imagickで点画のように変換した画像

関連項目
ImageMagickとPHPで画像を絵画調に変換する
ImageMagickで画像を点画のように変換する (convertコマンドでの同様の処理)

Thursday, May 14, 2009

RMagickで画像をゴースト画像っぽく変換する

RMagickで画像をゴースト画像っぽく変換するには、以下のコードを実行します。


require 'RMagick'
include Magick

images = ImageList.new("sf2.jpg")
images.colorspace = GRAYColorspace
images[0] = images.edge(1).blur_image(0,1).spread(1).
motion_blur(0, 10, 260)
images.colorize(0.5, 0.5, 0.5, "#204070").
write("sample1087a.png")

exit


元画像(sf2.jpg)


出力画像(sample1087a.png)
RMagickでゴースト画像っぽく変換した画像

動作環境
ruby1.8.6, rmagick2.9.0

関連項目
ImageMagickで画像をゴーストっぽく変換する (convertコマンドでの似た処理)

Monday, May 11, 2009

RMagickで画像を点画のように変換する

RMagickで画像を点画のように変換するには、以下のコードを実行します。


require 'RMagick'
include Magick

images = ImageList.new("sf.jpg")
images.modulate(1, 2.5, 1).
sketch(0,10,135).spread(1).
write("sample1076a.png")

exit


元画像(sf.jpg)


出力画像(sample1076a.png)
RMagickで点画のように変換した画像

動作環境
ruby1.8.6, rmagick2.9.0

関連項目
ImageMagickで画像を点画のように変換する (convertコマンドでの同様の処理)

Saturday, May 09, 2009

RMagickで画像を立体的なタイル風に変換する

RMagickで画像を立体的なタイル風に変換するには、以下のコードを実行します。


require 'RMagick'
include Magick

images = ImageList.new("sf2.jpg")
images.alpha = ActivateAlphaChannel

# 角丸四角を描画
images2 = ImageList.new
images2.new_image(40, 40){
self.background_color = "none"
}
dr = Draw.new
dr.fill = "white"
dr.roundrectangle(2,2, 37,37, 4,4)
dr.draw(images2)

# タイル上に配置
images3 = ImageList.new
images3.new_image(images.columns, images.rows,
TextureFill.new(images2))
images3.alpha = ActivateAlphaChannel

# 切り取り
img = images.composite(images3, 0, 0,
DstInCompositeOp).modulate(1.4)
img.colorspace = GRAYColorspace
img = img.colorize(0.5, 0.5, 0.5, "#fad759")

# 立体的にする
img2 = images3.shade(true, 135, 23).
blur_channel(0,2,AllChannels).normalize()

img4 = img2.composite(img, 0, 0,
OverlayCompositeOp)
img4.write("sample997a.png")

exit


元画像(sf2.jpg)


出力画像(sample997a.png)
RMagickで立体的なタイル風に変換した画像

動作環境
ruby1.8.6, rmagick2.9.0

関連項目
ImageMagickで画像から立体的なタイル画像に変換する (convertコマンドによる同様の処理)
RMagickで画像を角丸四角に切り取って立体的にする