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に関する他の記事は、こちらを参照してください。