- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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,称之为间接递归。如果一个递归过
您可能关注的文档
- 危险源辨识与风险评价表.doc
- 软件质量保证与测试实验指导书.doc
- 软件测试方法和技术 课程设计报告.docx
- 课程设计--随机点名器.docx
- 课程设计--简易计算器.doc
- 课程设计--简单计算器.docx
- 课程设计报告--连通问题.docx
- 课程设计报告--记事本程序.docx
- PRAC 便携式手电筒设计.doc
- Java课设报告--公倍数.doc
- 校园安全主题班会-----平安伴我在校园 人人事事保平安 课件(共18张PPT).pptx
- 精品解析:江苏省盐城市滨海县滨淮教育集团2023-2024学年八年级下学期3月月考地理试题(原卷版).pdf
- 精品解析:河北省九地市2023-2024学年九年级3月摸底考试道德与法治试题(原卷版).pdf
- 精品解析:吉林省白城市通榆县育才学校等校联考 2023-2024学年九年级3月月考道德与法治试题(解析版).pdf
- 精品解析:江苏省常州市2023-2024学年九年级上学期期末历史试题(解析版).pdf
- 精品解析:江苏省连云港市新海实验中学2023-2024学年九年级下学期第一次月考道德与法治试题(解析版).pdf
- 精品解析:江苏省泰州市靖江市八校联盟2023-2024学年九年级3月月考历史试题(原卷版).pdf
- 精品解析:江苏省宿迁市宿城区2023-2024学年八年级上学期期末历史试题(解析版).pdf
- 精品解析:江苏省宿迁市宿城区2023-2024学年八年级上学期期末历史试题(原卷版).pdf
- 精品解析:山西省晋城市阳城县2023-2024学年八年级上学期期末历史试题(原卷版).pdf
文档评论(0)