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で絵画調に加工した画像

Tuesday, January 05, 2010

ProcessingとJava Image Filters(pixels)を使用して画像に等高線をつける

より新しいバージョンでの記事Processing3.4とJava Image Filtersを使用して画像に等高線をつけるを参照してください。

ProcessingとJava Image Filters(pixels)を使用して画像に等高線をつけるには、以下のコードを実行します。Java Image Filtersはhttps://pixels.dev.java.net/servlets/ProjectDocumentListから pixels-core-2.1.3-SNAPSHOT.jarをダウンロードしてSketchのフォルダのcodeサブフォルダに配置するか、 Sketch->Add FilesメニューからSketchに追加します。


// キャンバスサイズ
PImage img = loadImage("SF.JPG");
size(img.width, img.height);
// 画像に等高線をつける
ContourFilter cf = new ContourFilter();
// レベル
cf.setLevels(10);
// スケール
cf.setScale(1f);
// オフセット
cf.setOffset(0f);

PImage img2 = new PImage(cf.filter((BufferedImage)img.getImage(), null));
image(img2, 0, 0);
// ファイル保存
save("sample1454a.png");


元画像(sf.jpg)


出力画像(sample1454a.png)
ProcessingとJava Image Filters(pixels)を使用して等高線をつけた画像

動作環境
Processing 1.0.7

〇関連項目
・Processingをインストールした仮想マシンを構築するには、以下のページを参照してください。
https://serverarekore.blogspot.com/search/label/Processing

・Processingに関する他の記事は、こちらを参照してください。

GfxBuilderで花のような形を描画する

GfxBuilderで花のような形を描画するには、以下のコードを実行します。


import griffon.builder.gfx.render.*

def gr = new GfxRenderer()
gr.renderToFile("sample1430a.png", 200, 200){
antialias("on")
lauburu( cx:100, cy:100, radius:60, angle:15,
fill: color("#c8c0c0"),
borderColor: color("#808080"),
borderWidth: 2
)
}


出力画像(sample1430a.png)
GfxBuilderで描画した花のような形

動作環境
Groovy1.6.5, JDK6 Update16

Monday, January 04, 2010

GfxBuilderで星芒形を描画する

GfxBuilderで星芒形を描画するには、以下のコードを実行します。


import griffon.builder.gfx.render.*

def gr = new GfxRenderer()
gr.renderToFile("sample1429a.png", 200, 200){
antialias("on")
astroid( cx:100, cy:100, radius:50, angle:15,
fill: color("#c8c0c0"),
borderColor: color("#808080"),
borderWidth: 2
)
}


出力画像(sample1429a.png)
GfxBuilderで描画した星芒形

動作環境
Groovy1.6.5, JDK6 Update16

Sunday, January 03, 2010

GfxBuilderでアーモンド形を描画する

GfxBuilderでアーモンド形を描画するには、以下のコードを実行します。


import griffon.builder.gfx.render.*

def gr = new GfxRenderer()
gr.renderToFile("sample1428a.png", 200, 200){
antialias("on")
almond( cx:100, cy:100, width:30, angle:5,
fill: color("#c8c0c0"),
borderColor: color("#808080"),
borderWidth: 2
)
}


出力画像(sample1428a.png)
GfxBuilderで描画したアーモンド形

動作環境
Groovy1.6.5, JDK6 Update16

Saturday, January 02, 2010

PyWin32とImageMagickで画像の明るさを変更する

PyWin32とImageMagickで画像の明るさを変更するには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
# 画像を暗くする
im.convert("sf.jpg", "-evaluate", "multiply", "0.5", "sample1412a.png")
# 画像を明るくする
im.convert("sf.jpg", "-evaluate", "multiply", "1.3", "sample1412b.png")


元画像(sf.jpg)


出力画像1(sample1412a.png)


出力画像2(sample1412b.png)


動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

ProcessingとJava Image Filters(pixels)を使用して水面のような画像を生成する

より新しいバージョンでの記事Processing3.4とJava Image Filtersを使用して水面のような画像を生成するを参照してください。

ProcessingとJava Image Filters(pixels)を使用して水面のような画像を生成するには、以下のコードを実行します。Java Image Filtersはhttps://pixels.dev.java.net/servlets/ProjectDocumentListから pixels-core-2.1.3-SNAPSHOT.jarをダウンロードしてSketchのフォルダのcodeサブフォルダに配置するか、 Sketch->Add FilesメニューからSketchに追加します。


// キャンバスサイズ
PImage img = new PImage(200,200);
size(img.width, img.height);
// 水面のような画像を生成する
CausticsFilter cf = new CausticsFilter();
// スケール
cf.setScale(32f);
// 明るさ
cf.setBrightness(15);
// 乱れ
cf.setTurbulence(0.9f);
// effect量
cf.setAmount(1.1f);
// 拡散
cf.setDispersion(1f);
// 時間
cf.setTime(0.1f);
// サンプル
cf.setSamples(10);
PImage img2 = new PImage(cf.filter((BufferedImage)img.getImage(), null));
image(img2, 0, 0);
// ファイル保存
save("sample1453a.png");


出力画像(sample1453a.png)
ProcessingとJava Image Filters(pixels)を使用して作成した水面のような画像

動作環境
Processing 1.0.7

〇関連項目
・Processingをインストールした仮想マシンを構築するには、以下のページを参照してください。
https://serverarekore.blogspot.com/search/label/Processing

・Processingに関する他の記事は、こちらを参照してください。

Friday, January 01, 2010

PyWin32とImageMagickで文字列をパターン画像で塗りつぶす

PyWin32とImageMagickで文字列をパターン画像で塗りつぶすには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("-size", "240x80", "xc:#fad759", "-tile",
"pattern1.gif", "-pointsize", "70", "-draw",
"text 0,60 Sample", "sample1411a.png")


パターン画像(pattern1.gif)


出力画像(sample1411a.png)
パターン画像で塗りつぶした文字列

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

GfxBuilderで市松模様に画像をタイル配置する

GfxBuilderで市松模様に画像をタイル配置するには、以下のコードを実行します。


import griffon.builder.gfx.render.*
import javax.imageio.*;

img1 = ImageIO.read(new File("flower1.png"))
img2 = ImageIO.read(new File("flower2.png"))
gr = new GfxRenderer()
img = gr.render(img1.width + img2.width,
img1.height + img2.height){
image(image: img1, x:0, y:0)
image(image: img2, x:img1.width, y:0)
image(image: img2, x:0, y:img1.height)
image(image: img1, x:img2.width, y:img2.height)
}
gr.renderToFile("sample1427a.png", 200, 200){
antialias("on")
rect(x:0, y:0, width: 200,
height: 200, borderColor:no){
texturePaint(x: 0, y: 0, image: img )
}
}


元画像1(flower1.png)


元画像2(flower2.png)


出力画像(sample1427a.png)
GfxBuilderで市松模様にタイル配置した画像

動作環境
Groovy1.6.5, JDK6 Update16

Thursday, December 31, 2009

PyWin32とImageMagickで渦巻き模様を生成する

PyWin32とImageMagickで渦巻き模様を生成するには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("-size", "1x1", "xc:white", "xc:orange", "-append",
"-filter", "point", "-resize", "400x400!", "-swirl", "2560",
"-crop", "200x200+100+100", "sample1410a.png")


出力画像(sample1410a.png)
PyWin32とImageMagickで生成した渦巻き模様

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

Processingとjsilhouetteを使用してクロスを描画する

より新しいバージョンでの記事Processing3.4とjsilhouetteを使用してクロスを描画するを参照してください。

Processingとjsilhouetteを使用してクロスを描画するには、以下のコードを実行します。jsilhouetteはhttps://code.google.com/p/jsilhouette/から jsilhouette-geom-0.3.1.jarをダウンロードしてSketchのフォルダのcodeサブフォルダに配置するか、 Sketch->Add FilesメニューからSketchに追加します。


// キャンバスサイズ
size(200, 200);
background(#f8f8ff);
// 描画用PGraphics作成
PGraphicsJava2D g2d=(PGraphicsJava2D)createGraphics(200, 200, JAVA2D);
g2d.beginDraw();
Graphics2D gr = g2d.g2;
gr.setColor(new Color(#ffcc00));
// クロスを描画
gr.fill(new Cross(100, 100, 80, 40, 0, 0.25f));
g2d.endDraw();

image(g2d, 0, 0);
// ファイル保存
save("sample1483a.png");


出力画像(sample1483a.png)
Processingとjsilhouetteを使用して描画したクロス

動作環境
Processing 1.0.7

〇関連項目
・Processingをインストールした仮想マシンを構築するには、以下のページを参照してください。
https://serverarekore.blogspot.com/search/label/Processing

・Processingに関する他の記事は、こちらを参照してください。

Wednesday, December 30, 2009

PyWin32とImageMagickで画像を滲んだ感じに加工する

PyWin32とImageMagickで画像を滲んだ感じに加工するには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("sf2.jpg", "-colorspace", "gray", "(", "sf2.jpg",
"-spread", "4", "-blur", "0x1", ")", "-compose", "overlay",
"-composite", "sample1409a.png")


元画像(sf2.jpg)


出力画像(sample1409a.png)
PyWin32とImageMagickで滲んだ感じに加工した画像

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

ProcessingとJava Image Filters(pixels)を使用して画像に水面のようなゆらぎ効果をつける

より新しいバージョンでの記事Processing3.4とJava Image Filtersを使用して画像に水面のようなゆらぎ効果をつけるを参照してください。

ProcessingとJava Image Filters(pixels)を使用して画像に水面のようなゆらぎ効果をつけるには、以下のコードを実行します。Java Image Filtersはhttps://pixels.dev.java.net/servlets/ProjectDocumentListから pixels-core-2.1.3-SNAPSHOT.jarをダウンロードしてSketchのフォルダのcodeサブフォルダに配置するか、 Sketch->Add FilesメニューからSketchに追加します。


// キャンバスサイズ
PImage img = loadImage("sf2.jpg");
size(img.width, img.height);
// 水面のようなゆらぎ効果をつける
SwimFilter sf = new SwimFilter();
// 効果の量
sf.setAmount(10f);
// スケール
sf.setScale(32f);
// 引き伸ばし
sf.setStretch(10f);
// アングル
sf.setAngle(10f/180f*ImageMath.PI);
// 乱れ
sf.setTurbulence(1f);
// 時間
sf.setTime(0.1f);
PImage img2 = new PImage(sf.filter((BufferedImage)img.getImage(), null));
image(img2, 0, 0);
// ファイル保存
save("sample1452a.png");


元画像(sf2.jpg)


出力画像(sample1452a.png)
ProcessingとJava Image Filters(pixels)を使用して水面のようなゆらぎ効果をつけた画像

動作環境
Processing 1.0.7

〇関連項目
・Processingをインストールした仮想マシンを構築するには、以下のページを参照してください。
https://serverarekore.blogspot.com/search/label/Processing

・Processingに関する他の記事は、こちらを参照してください。

Tuesday, December 29, 2009

PyWin32とImageMagickで横方向に擦れたような半透明画像に変換する

PyWin32とImageMagickで横方向に擦れたような半透明画像に変換するには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("-size", "200x200", "xc:none", "-fill", "white",
"-draw", "roundrectangle 20,20,180,180,10,10",
"-alpha", "activate", "-channel", "rgba", "-fx",
"(j%4<3&&r!=0)?p*0.7:p*0.3", "-spread", "5", "-motion-blur",
"0x10+0", "-motion-blur", "0x10+180", "-alpha", "activate",
"-channel", "rgba", "sf.jpg", "-compose", "src_in",
"-composite", "sample1408a.png")


元画像(sf.jpg)


出力画像(sample1408a.png)
PyWin32とImageMagickで横方向にこすれたような半透明に加工した画像

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

Monday, December 28, 2009

PyWin32とImageMagickで付箋紙を描画する

PyWin32とImageMagickで付箋紙を描画するには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("-size", "200x200", "gradient:#f4f070-#e0cc4c",
"-font", "Comic-Sans-MS-Bold", "-pointsize", "20", "-background",
"none", "-gravity", "center", "-annotate", "0",
"To Do\n4:30 Meeting.", "-gravity", "northwest",
"-alpha", "activate", "-channel", "rgba", "-background", "none",
"-splice", "20x0", "-virtual-pixel", "background", "-fx",
"p{i+j^2*0.0005,j}", "-shear", "0x3", "(", "-size", "200x200",
"xc:black", "-background", "none", "-splice", "20x0",
"-shear", "0x3", "-shadow", "60x3+3+5", ")", "(", "-size",
"200x200", "xc:white", ")", "-swap", "0,2", "-mosaic",
"sample1407a.png")


出力画像(sample1407a.png)
PyWin32とImageMagickで描画した付箋紙

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

GfxBuilderで点線の角丸四角を描画する

GfxBuilderで点線の角丸四角を描画するには、以下のコードを実行します。


import griffon.builder.gfx.render.*

def gr = new GfxRenderer()
gr.renderToFile("sample1426a.png", 200, 200){
antialias("on")
rect( x: 10, y: 10, width: 180, height: 180,
arcWidth: 20, arcHeight:20,
borderColor: color("#aaccff")){
basicStroke(dash: (float[])[4f,4f], width:2)
}
}


出力画像(sample1426a.png)
GfxBuilderで描画した点線の角丸四角

動作環境
Groovy1.6.5, JDK6 Update16

Sunday, December 27, 2009

PyWin32とImageMagickで、画像の端がちぎられたようなスケッチ調の画像に変換する

PyWin32とImageMagickで、画像の端がちぎられたようなスケッチ調の画像に変換するには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("-size", "200x200", "xc:none", "-fill", "white",
"-draw", "rectangle 10,10 189,189", "-spread", "5",
"-median", "2", "(", "sf.jpg", "-sepia-tone", "80%", ")",
"-compose", "src_in", "-composite", "xc:white", "+swap",
"-compose", "src-over", "-composite",
"-sketch", "0x10+120",
"sample1406a.png")


元画像(sf.jpg)


出力画像(sample1406a.png)
PyWin32とImageMagickで端がちぎれたスケッチ風に加工した画像

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

ProcessingとJava Image Filters(pixels)を使用して金属風の画像を作成する

より新しいバージョンでの記事Processing3.4とJava Image Filtersを使用して金属風の画像を作成するを参照してください。

ProcessingとJava Image Filters(pixels)を使用して金属風の画像を作成するには、以下のコードを実行します。Java Image Filtersはhttps://pixels.dev.java.net/servlets/ProjectDocumentListから pixels-core-2.1.3-SNAPSHOT.jarをダウンロードしてSketchのフォルダのcodeサブフォルダに配置するか、 Sketch->Add FilesメニューからSketchに追加します。


// キャンバスサイズ
PImage img = new PImage(200, 200);
size(img.width, img.height);
// 金属風の画像生成
BrushedMetalFilter bmf = new BrushedMetalFilter(
0xffb0b0b4, /* 金属の色 */
20, /* 水平方向ぼかしのサイズ */
0.15f, /* ノイズの量 */
false, /* モノクロームの場合true */
0.1f /* 輝きの量 */
);
PImage img2 = new PImage(bmf.filter((BufferedImage)img.getImage(), null));
image(img2, 0, 0);
// ファイル保存
save("sample1451a.png");


出力画像(sample1451a.png)
ProcessingとJava Image Filters(pixels)を使用して作成した金属風画像

動作環境
Processing 1.0.7

〇関連項目
・Processingをインストールした仮想マシンを構築するには、以下のページを参照してください。
https://serverarekore.blogspot.com/search/label/Processing

・Processingに関する他の記事は、こちらを参照してください。

Saturday, December 26, 2009

PyWin32とImageMagickで、文字列にモーションブラーをかける

PyWin32とImageMagickで、文字列にモーションブラーをかけるには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("-font", "Tahoma", "-pointsize", "30", "-fill",
"#707070", "-background", "#f0eee4", "label:ImageMagick",
"-gravity", "south", "-splice", "0x20", "-motion-blur",
"0x10+270", "-fill", "#303030", "-background", "none",
"label:ImageMagick", "-gravity", "north", "-composite",
"sample1405a.png")


出力画像(sample1405a.png)
PyWin32とImageMagickでモーションブラーをかけた画像

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

Friday, December 25, 2009

PyWin32とImageMagickで画像をポラロイド写真風にする

PyWin32とImageMagickで画像をポラロイド写真風にするには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("-font", "c:/windows/fonts/msmincho.ttc",
"-pointsize", "20", "-fill", "#303030", "-caption",
"San Francisco\nサンフランシスコ", "sf.jpg", "-background",
"#909090", "-polaroid", "30", "-background", "#ffffff",
"-flatten", "sample1404a.png")


元画像(sf.jpg)


出力画像(sample1404a.png)
PyWin32とImageMagickでポラロイド写真風にした画像

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

Thursday, December 24, 2009

PyWin32とImageMagickで、画像に半透明角丸四角の枠をつける

PyWin32とImageMagickで、画像に半透明角丸四角の枠をつけるには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("-size", "120x120", "xc:none", "-fill", "#C0C0C050",
"-stroke", "#E0E0E050", "-draw",
"roundrectangle 0,0, 119,119,10,10", "(", "sf.jpg", "-resize",
"100x100", "+repage", ")", "-geometry", "+10+10", "-composite",
"sample1403a.png")

#重ねあわせ例
im.convert("sf2.jpg", "(", "sample1403a.png", "-virtual-pixel",
"background", "-background", "none", "-rotate", "-10", ")",
"-geometry", "+150+100", "-composite", "sample1403b.png")


元画像1(sf.jpg)


元画像2(sf2.jpg)


出力画像1(sample1403a.png)
PyWin32とImageMagickで半透明角丸四角の枠をつけた画像

出力画像2(sample1403b.png)


動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

ProcessingとJava Image Filters(pixels)を使用してエッジ抽出する

より新しいバージョンでの記事Processing3.4とJava Image Filtersを使用してエッジ抽出するを参照してください。

ProcessingとJava Image Filters(pixels)を使用してエッジ抽出するには、以下のコードを実行します。Java Image Filtersはhttps://pixels.dev.java.net/servlets/ProjectDocumentListから pixels-core-2.1.3-SNAPSHOT.jarをダウンロードしてSketchのフォルダのcodeサブフォルダに配置するか、 Sketch->Add FilesメニューからSketchに追加します。


// キャンバスサイズ
PImage img = loadImage("sf2.jpg");
size(img.width, img.height);
// エッジ抽出
EdgeFilter ef = new EdgeFilter();
PImage img2 = new PImage(ef.filter((BufferedImage)img.getImage(), null));
image(img2, 0, 0);
// ファイル保存
save("sample1450a.png");


元画像(sf2.jpg):dataサブディレクトリに配置か、Add Filesで追加。


出力画像(sample1450a.png)
ProcessingとJava Image Filters(pixels)を使用してエッジ抽出した画像

動作環境
Processing 1.0.7

〇関連項目
・Processingをインストールした仮想マシンを構築するには、以下のページを参照してください。
https://serverarekore.blogspot.com/search/label/Processing

・Processingに関する他の記事は、こちらを参照してください。

GfxBuilderでグラデーションを描画する

GfxBuilderでグラデーションを描画するには、以下のコードを実行します。


import griffon.builder.gfx.render.*

def gr = new GfxRenderer()
gr.renderToFile("sample1425a.png", 200, 200){
antialias("on")
star( cx:100, cy:100, count:5, ir:40, or:90,
borderColor: color("#d0b070"),
borderWidth: 2
){
gradientPaint( x1: 0, y1: 0, x2: 0, y2: 200,
color1: color("#ffffe0"), color2: color("#f0d090"))
}
}


出力画像(sample1425a.png)
GfxBuilderで描画したグラデーションのかかった星

動作環境
Groovy1.6.5, JDK6 Update16

Wednesday, December 23, 2009

PyWin32とImageMagickで、画像の端をグレースケールにする

PyWin32とImageMagickで、画像の端をグレースケールにするには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("-size", "200x200", "xc:none", "-draw",
"rectangle 10,10 189,189", "sf.jpg", "-compose", "src_in",
"-composite", "(", "sf.jpg", "-fx", "lightness", ")", "+swap",
"-compose", "src-over", "-composite",
"sample1402a.png")


元画像(sf.jpg)


出力画像(sample1402a.png)
PyWin32とImageMagickで画像の端をグレースケールにした画像

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

Processingとjsilhouetteを使用して吹き出しを描画する

より新しいバージョンでの記事Processing3.4とjsilhouetteを使用して吹き出しを描画するを参照してください。

Processingとjsilhouetteを使用して吹き出しを描画するには、以下のコードを実行します。jsilhouetteはhttps://code.google.com/p/jsilhouette/から jsilhouette-geom-0.3.1.jarをダウンロードしてSketchのフォルダのcodeサブフォルダに配置するか、 Sketch->Add FilesメニューからSketchに追加します。


// キャンバスサイズ
size(200, 200);
background(#f8f8ff);
// 描画用PGraphics作成
PGraphicsJava2D g2d=(PGraphicsJava2D)createGraphics(200, 200, JAVA2D);
g2d.beginDraw();
Graphics2D gr = g2d.g2;
gr.setColor(new Color(#ffcc00));
// 吹き出しを描画
gr.fill(new Balloon(50, 40, 100, 100, 20, 20, 40,
Balloon.TAB_AT_BOTTOM, 0.5f, Balloon.ANGLE_AT_END));
g2d.endDraw();

image(g2d, 0, 0);
// ファイル保存
save("sample1482a.png");


出力画像(sample1482a.png)
Processingとjsilhouetteを使用して描画した吹き出し

動作環境
Processing 1.0.7

〇関連項目
・Processingをインストールした仮想マシンを構築するには、以下のページを参照してください。
https://serverarekore.blogspot.com/search/label/Processing

・Processingに関する他の記事は、こちらを参照してください。

Tuesday, December 22, 2009

PyWin32とImageMagickで、画像のヒストグラムを出力する

PyWin32とImageMagickで、画像のヒストグラムを出力するには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("sf2.jpg", "histogram:sample1401a.png")


元画像(sf2.jpg)


出力画像(sample1401a.png)
PyWin32とImageMagickで出力したヒストグラム画像

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

Monday, December 21, 2009

PyWin32とImageMagickで、青っぽい所以外を白黒にする

PyWin32とImageMagickで、青っぽい所以外を白黒にするには以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("sf.jpg", "-alpha", "activate", "-channel", "a",
"-fx", "(hue>0.47&&hue<0.69&&lightness>0.45)?1:0", "-channel",
"rgba", "(", "sf.jpg", "-fx", "lightness", ")", "+swap",
"-composite", "sample1400a.png")


元画像(sf.jpg)


出力画像(sample1400a.png)
PyWin32とImageMagickで青っぽいところ以外を白黒にした画像

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

ProcessingとJava Image Filters(pixels)を使用して画像を左右反転・上下反転する

より新しいバージョンでの記事ProcessingとJava Image Filtersを使用して画像を左右反転・上下反転するを参照してください。

ProcessingとJava Image Filters(pixels)を使用して画像を左右反転・上下反転するには、以下のコードを実行します。Java Image Filtersはhttps://pixels.dev.java.net/servlets/ProjectDocumentListから pixels-core-2.1.3-SNAPSHOT.jarをダウンロードしてSketchのフォルダのcodeサブフォルダに配置するか、 Sketch->Add FilesメニューからSketchに追加します。


// キャンバスサイズ
PImage img = loadImage("SF.JPG");
size(img.width, img.height);
// 左右反転
FlipFilter ff = new FlipFilter();
ff.setOperation(FlipFilter.FLIP_H);
PImage img2 = new PImage(ff.filter((BufferedImage)img.getImage(), null));
image(img2, 0, 0);
// ファイル保存
save("sample1449a.png");

// 上下反転
FlipFilter ff2 = new FlipFilter();
ff2.setOperation(FlipFilter.FLIP_V);
PImage img3 = new PImage(ff2.filter((BufferedImage)img.getImage(), null));
image(img3, 0, 0);
// ファイル保存
save("sample1449b.png");


元画像(sf.jpg):dataサブディレクトリに配置か、Add Filesで追加。


出力画像(sample1449a.png)
ProcessingとJava Image Filters(pixels)を使用して左右反転した画像

出力画像(sample1449b.png)
ProcessingとJava Image Filters(pixels)を使用して上下反転した画像

動作環境
Processing 1.0.7

〇関連項目
・Processingをインストールした仮想マシンを構築するには、以下のページを参照してください。
https://serverarekore.blogspot.com/search/label/Processing

・Processingに関する他の記事は、こちらを参照してください。

Sunday, December 20, 2009

PyWin32とImageMagickで、濃淡模様が渦巻状に吸い込まれるような画像を描画する

PyWin32とImageMagickで、濃淡模様が渦巻状に吸い込まれるような画像を描画するには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("-size", "400x400", "plasma:fractal", "-fx",
"intensity", "-normalize", "(", "-size", "1x1", "xc:#3070A0FF",
"xc:#403010FF", "-append", ")", "-fx", "v.p{0,p}", "-implode",
"1", "-swirl", "120", "-crop", "200x200+100+100",
"sample1399a.png")


出力画像(sample1399a.png)
PyWin32とImageMagickで描画した濃淡模様が渦巻状に吸い込まれるような画像

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

GfxBuilderでバッジを描画する

GfxBuilderでバッジを描画するには、以下のコードを実行します。


import griffon.builder.gfx.render.*

def gr = new GfxRenderer()
gr.renderToFile("sample1424a.png", 200, 200){
antialias("on")
star( cx:100, cy:100, count:40, ir:80, or:90,
fill: color("#c8c0c0"),
borderColor: color("#808080"),
borderWidth: 2
)
}


出力画像(sample1424a.png)
GfxBuilderで描画したバッジ

動作環境
Groovy1.6.5, JDK6 Update16