@Grab(group='com.jhlabs', module='filters', version='2.0.235') import java.awt.* import java.awt.image.* import java.io.* import javax.imageio.* import com.jhlabs.composite.* import com.jhlabs.image.* // 木彫り調の画像に変換する def img = ImageIO.read(new File("sf2.jpg")) // エンボス def gf = new EmbossFilter() gf.setBumpHeight(2) img = gf.filter(img, null) // ノイズ def nf = new NoiseFilter() nf.setMonochrome(true) img = nf.filter(img, null) def img2 = new BufferedImage( img.getWidth(), img.getHeight(), BufferedImage.TYPE_INT_RGB ) def wf = new WoodFilter() // rings value wf.setRings(0.5f) // スケール wf.setScale(100) // 伸張率 wf.setStretch(8.0f) // 角度 wf.setAngle((float)0f/180f*ImageMath.PI) // 乱れ wf.setTurbulence(0.2f) // 繊維の量 wf.setFibres(0.5f) img2 = wf.filter(img2, null) def cf = new CompositeFilter( MiscComposite.getInstance(MiscComposite.BLEND, 0.6f)) img = cf.filter(img2, img) ImageIO.write(img, "png", new File("woodcarving.png"))元画像 出力画像
動作環境
groovy 1.8.6, JDK7 update4
No comments:
Post a Comment