Java图像分割-思路和源代码
来源:互联网 发布:python 字符串 数字 编辑:程序博客网 时间:2024/06/06 11:38
QQ交流:740382997
或者发邮件给我:yichensoft@126.com
翼尘软件工作室
源码下载地址:http://download.csdn.net/detail/u011351840/5753097
可能大家在制作RPG等游戏时会用到如下的图片(剪裁于牧场物语),也就是人物走动的素材图
或者用到这种地图的素材(也是自己剪的,源自牧场物语)
这时如果没有一个合适的图片分割工具将会使制作过程非常麻烦,接下来用Java实现图片的分割。
Java中的BufferedImage类中有一个方法getSubimage(int x, int y, int w, int h),也就是从(X,Y)开始,截取宽W,高H的一个子BufferedImage。
利用这个类我们可以制作出一个格状分割图片的工具。
具体源代码。其中ImageToBufferedImage类可以在此处下载:http://download.csdn.net/detail/u011351840/5735981
import java.awt.Image;import java.awt.Toolkit;import java.awt.image.BufferedImage;public class PictureClip {int al;BufferedImage[] img;public PictureClip() {}public BufferedImage[] getImage(){return img;}public void setImage(String filename,int w,int h){int x=0,y=0;ImageToBufferedImage itob=new ImageToBufferedImage();BufferedImage bi=null;Image buffedi=null;BufferedImage[] imgi=null;buffedi=Toolkit.getDefaultToolkit().getImage(this.getClass().getResource("/pic/"+filename+".png"));bi=itob.toBufferedImage(buffedi);if(bi.getWidth()==w&&bi.getHeight()==h){img=null;img[0]=bi;return;}if((bi.getWidth()%w!=0||bi.getWidth()==0)||(bi.getHeight()%h!=0||bi.getWidth()==0)){System.out.println("Error: On Width or Height");}else{al=bi.getWidth()/w*bi.getHeight()/h;imgi=new BufferedImage[al];for(int i=0;i<al;i++){imgi[i]=bi.getSubimage(x*w, y*h,w,h);if(x+1>=bi.getWidth()/w){x=0;y++;}else{x++;}}}this.img=imgi;}public int getIndex(){return al;}}
联系QQ:740382997
群:252367359
邮箱:yichensoft@126.com
同时也希望大家记住翼尘,我们还在努力。
翼尘软件工作室
- Java图像分割-思路和源代码
- 医学图像分割研究思路
- Java图像分割
- 基于水平投影,垂直投影的字符图像分割思路和代码实现
- 使用Java实现图像分割
- 图像分割和轮廓提取
- 图像分割 和 边缘检测
- MATLAB-图像复原和分割
- watershed算法和图像分割
- java 交通红绿灯 小程序[程序思路和过程解说和源代码]完成
- Java TXT文件UI分割源代码
- 北大ACM 解题思路和源代码
- 矢量寻路算法-思路和源代码
- Plus One思路解析和源代码
- java代码 kmeans算法实现 图像分割
- 图像边界提取和分割技术1
- 图像引线连线和断线的分割
- 初学归一化切割和图像分割
- hdu2196树形dp
- 说说大型高并发高负载网站的系统架构(更新)
- android 显示特殊符号
- HOWTO: Unpack, Edit, and Re-Pack Boot Images
- 设置简单的类似水纹效果
- Java图像分割-思路和源代码
- linux远程遥控linux --- Ubuntu10.04/Ubuntu12.04
- inux下代码阅读 -- 配置vim+ctags+taglist+cscope
- 窗口样式CS_DBLCLKS
- 自动阈值分割-场景中直线个数的检测
- ArcGIS 10破解安装
- (总结)Web性能压力测试工具之ApacheBench(ab)详解
- win7 vmware ubuntu 11.10通过samba实现文件共享
- vim 小技巧汇集