基于谱聚类的图像分割.doc
《基于谱聚类的图像分割.doc》由会员分享,可在线阅读,更多相关《基于谱聚类的图像分割.doc(90页珍藏版)》请在沃文网上搜索。
1、本科生毕业设计姓 名: 学 号: 学 院: 计算机科学与技术学院 专 业: 计算机科学与技术 设计题目: 基于谱聚类的图像分割 专 题: 图像分割的设计与实现 指导教师: 职 称: 副教授 大学毕业设计任务书学院 计算机 专业年级 学生姓名 任务下达日期: 毕业设计日期: 毕业设计题目: 毕业设计专题题目 毕业设计主要内容和要求:院长签章: 指导教师签字:中国矿业大学毕业设计指导教师评阅书指导教师评语(基础理论及基本技能的掌握;独立解决实际问题的能力;研究内容的理论依据和技术方法;取得的主要成果及创新点;工作态度及工作量;总体评价及建议成绩;存在问题;是否同意答辩等):成 绩: 指导教师签字:
2、年 月 日中国矿业大学毕业设计评阅教师评阅书评阅教师评语(选题的意义;基础理论及基本技能的掌握;综合运用所学知识解决实际问题的能力;工作量的大小;取得的主要成果及创新点;写作的规范程度;总体评价及建议成绩;存在问题;是否同意答辩等):成 绩: 评阅教师签字: 年 月 日中国矿业大学毕业设计答辩及综合成绩答 辩 情 况提 出 问 题回 答 问 题正 确基本正确有一般性错误有原则性错误没有回答答辩委员会评语及建议成绩:答辩委员会主任签字: 年 月 日学院领导小组综合评定成绩:学院领导小组负责人: 年 月 日需求分析一、 利用前台,得到一张原始JPG图片;二、 把这张图片传到后台,JAVA通过JRI
3、调用R;三、 利用R调用K-Means的改进算法,实现对这张图片的处理,由于一张图片的像素值是一个矩阵,可以得到一组关于像素值的数据;四、 把这组像素值进行分类,对各类赋予不同的颜色进行标记,从而区分出需要的图片信息;五、 把得到的新图片传到前台;六、 前台对进行处理后的图片进行显示,从图像中得到需要的信息,从而实现图像的分割。概要设计模块功能图:图片:在本系统中所能使用到的图片属性为颜色和大小,颜色对应不同的像素,大小对应图像的像素点形成矩阵的大小;前台:前台用来接收图片和显示图片;后台(JAVA):用来接收图片并且调用R来实现对图片的处理;后台(R):在被调用后,把图片信息转化成数据信息形
4、成矩阵,从而实现对图片信息的处理。经过上述的处理后,把新生成的图像信息返回,并在前端进行显示,从而实现图像分割。把图像分割系统划分成二个子系统:接收图片并显示子系统,处理图片子系统。首先从外界得到需要进行分割的图片,通过接收图片并显示子系统把图片进行输入到系统中;然后再把图片输入到处理图片子系统,输入此系统后,把图片信息转化为矩阵,然后利用JAVA调用R,利用R中K-MEANS算法对矩阵信息进行分类获得新的矩阵,最终把矩阵信息转化成图片,实现对图片的处理;最后把处理后得到的新图片输入到显示图片子系统,从而实现图像分割,获得所需要的信息。详细设计程序流程图: 实现代码;一实现图片文件选择器:pa
5、ckage pri.study.convert;import java.awt.EventQueue;import javax.swing.ImageIcon;import javax.swing.JFileChooser;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import java.awt.BorderLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import jav
6、a.io.File;import javax.swing.JButton;import org.rosuda.REngine.REXPMismatchException;import org.rosuda.REngine.Rserve.RserveException;public class MyApp implements ActionListener private JFrame frame;JButton selectPrePic = new JButton(选择要转换的图片);JLabel prePic = new JLabel(New label);JLabel label = ne
7、w JLabel(转换前的图片:);JButton convertPic = new JButton(转换图片);JLabel label_1 = new JLabel(转换后的图片:);JLabel label_2 = new JLabel(提示:转换后的图片默认放在转换前图片所在目录下);JLabel curPic = new JLabel(转化浓厚的图片);JFileChooser jfc = new JFileChooser();/ 文件选择器private int i=0;String prePicPath=;String curPicPath=;/* * Create the ap
8、plication. */public MyApp() initialize();/* * Initialize the contents of the frame. */private void initialize() jfc.setCurrentDirectory(new File(d:/);/ 文件选择器的初始目录定为d盘frame = new JFrame();frame.setBounds(200, 150, 880, 400);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);JPanel myPanel=new JPane
9、l();myPanel.setLayout(null);frame.getContentPane().add(myPanel, BorderLayout.CENTER);selectPrePic.addActionListener(this);selectPrePic.setBounds(10, 10, 153, 23);convertPic.addActionListener(this);convertPic.setBounds(423, 9, 93, 23);prePic.setBounds(20, 90, 320, 250);curPic.setBounds(423, 90, 320,
10、250);label.setBounds(20, 42, 139, 15);label_1.setBounds(423, 42, 143, 15);label_2.setBounds(423, 65, 320, 15);myPanel.add(prePic);myPanel.add(label);myPanel.add(convertPic);myPanel.add(label_1);myPanel.add(label_2);myPanel.add(curPic);myPanel.add(selectPrePic);/ImageIcon ico=new ImageIcon(d:/myPlotP
11、ic.png);/JLabel lblPrepic = new JLabel(hebe,ico,JLabel.CENTER);/frame.getContentPane().add(lblPrepic, BorderLayout.CENTER);public void actionPerformed(ActionEvent e) / TODO Auto-generated method stub/if (e.getSource().equals(button1) / 判断触发方法的按钮是哪个/jfc.setFileSelectionMode(1);/ 设定只能选择到文件夹/int state
12、= jfc.showOpenDialog(null);/ 此句是打开文件选择器界面的触发语句/if (state = 1) /return;/ else /File f = jfc.getSelectedFile();/ f为选择到的目录/text1.setText(f.getAbsolutePath();/ 绑定到选择文件,先择文件事件if (e.getSource().equals(selectPrePic) jfc.setFileSelectionMode(0);/ 设定只能选择到文件int state = jfc.showOpenDialog(null);/ 此句是打开文件选择器界面的
13、触发语句if (state = 1) return;/ 撤销则返回 else File f = jfc.getSelectedFile();/ f为选择到的文件/System.out.print(f.getPath();/trim()是取出字符串前后的空格和特殊字符String temp01=f.getAbsolutePath().trim();String sub1=temp01.substring(0,3);String sub2=temp01.substring(2, temp01.length();prePicPath=sub1+sub2;System.out.print(prePic
14、Path);String temp02=f.getParent();String sub01=temp01.substring(0,3);String sub02=temp01.substring(2, temp02.length();/curPicPath=sub01+sub02+convert0+i+.jpg;curPicPath=sub01+sub02+convert0+i+.jpg;System.out.print(curPicPath-+curPicPath);/显示转换前的图片ImageIcon iconPrePic=new ImageIcon(f.getAbsolutePath(
15、);prePic.setIcon(iconPrePic);if (e.getSource().equals(convertPic) try ConvertPicByR conve=ConvertPicByR.getInstance();conve.DoConvertPic(prePicPath, curPicPath);/显示转换后的图片ImageIcon iconPrePic=new ImageIcon(curPicPath);curPic.setIcon(iconPrePic); catch (RserveException e1) / TODO Auto-generated catch
16、blocke1.printStackTrace(); catch (REXPMismatchException e1) / TODO Auto-generated catch blocke1.printStackTrace();/JOptionPane.showMessageDialog(null, init a dialog for test!, tips, 2); author zzj/* * Launch the application. */public static void main(String args) EventQueue.invokeLater(new Runnable(
17、) public void run() try MyApp window = new MyApp();window.frame.setVisible(true); catch (Exception e) e.printStackTrace(););二实现JAVA调用R:package pri.study.convert;import java.awt.EventQueue;import javax.swing.ImageIcon;import javax.swing.JFileChooser;import javax.swing.JFrame;import javax.swing.JLabel
18、;import javax.swing.JPanel;import java.awt.BorderLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.File;import javax.swing.JButton;import org.rosuda.REngine.REXPMismatchException;import org.rosuda.REngine.Rserve.RserveException;public class MyApp implements
19、 ActionListener private JFrame frame;JButton selectPrePic = new JButton(选择要转换的图片);JLabel prePic = new JLabel(New label);JLabel label = new JLabel(转换前的图片:);JButton convertPic = new JButton(转换图片);JLabel label_1 = new JLabel(转换后的图片:);JLabel label_2 = new JLabel(提示:转换后的图片默认放在转换前图片所在目录下);JLabel curPic =
20、new JLabel(转化浓厚的图片);JFileChooser jfc = new JFileChooser();/ 文件选择器private int i=0;String prePicPath=;String curPicPath=;/* * Create the application. */public MyApp() initialize();/* * Initialize the contents of the frame. */private void initialize() jfc.setCurrentDirectory(new File(d:/);/ 文件选择器的初始目录定
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 谱聚类 图像 分割
