Java课程设计--连通问题.doc

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

PAGEI

目录

TOC\o"1-3"\u第1章课题概述 1

1.1课题的目的 1

1.2课题的要求 1

1.2.1文件格式的概述 1

1.2.2程序实现的功能要求 2

第2章课设概要 3

2.1程序运行流程 3

2.2bmp格式图片数据的存储结构 3

2.3图片选择的合法性判断 4

2.4各个操作算法的描述 5

2.4.1递归算法 5

2.4.2图的深度优先遍历算法 5

第3章程序图形界面的设计 7

3.1主窗体的设计 7

3.2.1主窗体的布局和设计 7

3.2内部窗体的设计 10

3.2.1连通求解窗体的设计 10

3.2.2使用说明窗体设计 12

第4章程序功能的实现 15

4.1bmp格式文件的读取 15

4.2.1bmp图片分辨率的读取 15

4.2.2bmp图片连通信息的读取 16

4.2连通求解功能的实现 17

第5章程序的调试和问题的解决 19

第6章程序测试及分析 20

第7章总结 22

参考文献 24

连通问题PAGE23

PAGE23

第1章课题概述

本次Java课程设计的题目是求解一个bmp格式图片中像素点互相连通的面积。

1.1课题的目的

连通问题在日常生活中非常常见,比如说互联网络、每个城市的道路连通都属于连通相关的问题,在本次课设中是求解一个bmp格式图片中像素点之间的连通,可以通过本程序来,采用数据结构中图的知识可以高效率直接计算出图片中连通分量的数量和每一个连通分量的面积,这样比人为判断连通问题更加简单、快捷。

1.2课题的要求

1.2.1文件格式的概述

BMP文件格式,又称为Bitmap(位图)或是DIB(Device-Independent?Device,设备无关位图),是Windows系统中广泛使用的图像文件格式。由于它可以不作任何变换地保存图像像素域的数据,因此成为我们取得RAW数据的重要来源。Windows的图形用户界面(graphical?user?interfaces)也在它的内建图像子系统GDI中对BMP格式提供了支持。?

下面以UltraEdit为分析工具,用16进制打开bmp格式图片,其内容信息如下所示:

图1-1Bmp格式详解图

1.2.2程序实现的功能要求

程序的目标是:根据给定的黑白位图,分析出所有独立连通的群体,输出每个连通群体的面积。所谓面积,就是它含有的像素的个数。

第2章课设概要

2.1程序运行流程

根据课设的题目的要求,要实现bmp图片中像素点连通的数量和每个连通分量的面积,程序只需要选择本地的一张图片,不需要进行程序的输入和输出。

图2-1整个程序各功能模块间的流程

2.2bmp格式图片数据的存储结构

in.bmp文件如下:

t1.bmp文件如下:

BMP是常见的图像存储格式。

如果用来存黑白图像(颜色深度=1),则其信息比较容易读取。

与之相关的数据:

(以下偏移均是从文件头开始)

偏移:10字节,长度4字节:图像数据真正开始的位置。

偏移:18字节,长度4字节:位图的宽度,单位是像素。

偏移:22字节,长度4字节:位图的高度,单位是像素。

从图像数据开始处,每个像素用1个二进制位表示。

从图片的底行开始,一行一行向上存储。

Windows规定图像文件中一个扫描行所占的字节数必须是4字节的倍数,

不足的位均以0填充。例如,图片宽度为45像素,实际上每行会占用

8个字节。

可以通过Windows自带的画图工具生成和编辑二进制图像。

需要在“属性”中选择“黑白”,指定为二值图像。

可能需要通过查看|缩放|自定义...把图像变大比例一些,

更易于操作。

图像的左下角为图像数据的开始位置。白色对应1,黑色对应0

我们可以定义:两个点距离如果小于2个像素,则认为这两个点连通。

也就是说:以一个点为中心的九宫格中,围绕它的8个点与它都是连通的。

如:t1.bmp所示,左下角的点组成一个连通的群体;

而右上角的点都是孤立的。

2.3图片选择的合法性判断

Bmp格式图片Windows系统最基本的图片信息存储格式,格式文件用固定的格式来存储每一张图片的信息,只有选择了正确图片,才能保证IO流对文件的正确读写,保证程序不会崩溃。

如果用户选择一个不是bmp格式的文件,在读取文件信息的就会出现相应的异常,可以针对这种异常进行判断程序格式图片选择是否合法。

2.4各个操作算法的描述

2.4.1递归算法

在定义一个过程或函数时出现调用本过程或本函数的成分,称之为递归[1]。若调用自身,称之为直接递归。若过程或函数p调用过程或函数q,而q又调用p,称之为间接递归。如果一个递归过

您可能关注的文档

文档评论(0)

ze122230743 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档