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

上传人:王** 文档编号:779389 上传时间:2024-01-14 格式:DOCX 页数:16 大小:193.83KB
下载 相关 举报
Java课程设计--连通问题.docx_第1页
第1页 / 共16页
Java课程设计--连通问题.docx_第2页
第2页 / 共16页
Java课程设计--连通问题.docx_第3页
第3页 / 共16页
Java课程设计--连通问题.docx_第4页
第4页 / 共16页
Java课程设计--连通问题.docx_第5页
第5页 / 共16页
Java课程设计--连通问题.docx_第6页
第6页 / 共16页
Java课程设计--连通问题.docx_第7页
第7页 / 共16页
Java课程设计--连通问题.docx_第8页
第8页 / 共16页
Java课程设计--连通问题.docx_第9页
第9页 / 共16页
Java课程设计--连通问题.docx_第10页
第10页 / 共16页
亲,该文档总共16页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《Java课程设计--连通问题.docx》由会员分享,可在线阅读,更多相关《Java课程设计--连通问题.docx(16页珍藏版)》请在优知文库上搜索。

1、第1章课题概述11.1 课题的目的11.2 课题的要求11.2 .1输入输出的要求11.3 .2程序实现的功能要求1第2章概要设计22.1 整个程序的模块结构及流程22.2 bmp图片信息分析22.3 连通的判断3第3章程序功能的实现53.1读取图片信息53.2判断连通7第4章调试及发现问题的解决H第5章程序测试及分析12第6章总结14参考文献15第1章课题概述本次数据结构课程设计的题目是设计并实现位深度为1的bmp图片的联通问题。1.1 课题的目的位深度为1的bmp图片是只有黑白两种颜色的图片,信息比较容易读取。连通:两个点距离如果小于2个像素,则认为这两个点连通。也就是说以一个点为中心的九

2、宫格中,围绕它的8个点与它都是连通的。这个课题的目的是分析给出的黑白bmp图片中所有独立连通的群体,输出每个连通群体的面积。所谓面积,就是它含有的像素的个数。1.2 课题的要求1.2.1 输入输出的要求(1)程序运行后应首先弹出一个窗口,窗口提供一个输入图片名称的输入框和确定按钮。(2)输入名称,点击确定后,弹出新的窗口,并在窗口中输出各个连通区域的面积,每一行输出一个。1.2.2 程序实现的功能要求(1) bmp图片的信息储存在图片中,需要用流来读取图片的信息,并加以处理,使程序可以适用于任何像素的bmp图片。(2)输入格式有错误要给出合适的提示。第2章概要设计2.1 整个程序的模块根据课题

3、要求,整个程序可大致分为三个模块,读取图片信息,处理图片信息,计算连通。此外,还具有窗口,及简短的说明提示等。程序各功能模块的划分,及主要流程如图2-1所示。图2-1整个程序模块2.2 bmp图片信息分析图像数据真正开始的位置。 位图的宽度,单位是像素。 位图的高度,单位是像素。偏移:10字节,长度4字节偏移:18字节,长度4字节偏移:22字节,长度4字节Windows规定图像文件中一个扫描行所占的字节数必须是4字节的倍数,不足的位均以0填充。因此在编写程序时要注意两点:(1)从图片中读取的数据为4个字节,且将其倒置后,才是图片的真正数据。(2)读取的图片像素的宽若不是4字节的倍数,补0后会产

4、生多余的数据,需要经过处理来跳过它们。2.3 连通的判断bmp图片中像素黑色为0,白色为U遍历数组,遇到某连通区域的第一个黑色的点时,改变其值为2,接着判断后面的像素周围是否存在黑色的像素,若存在,改变其值为除0,1之外最小的数,否则,将该像素的值改为3,依次递增Io当周围有两种或以上不同连通区域的像素时,例如2,3o将其值改为2后,要将二维数组中所有的3改为2。当遍历一次后,数出二维数组中除了0,1之外相同数字的个数,即连通区域的面积。例如题目中的tl.bmp:这张图的连通区域有9个,8个面积为1和一个面积为11。下面三张图片说明了改变像素值,并输出不同数字个数的过程。为了方便观察,用A来代

5、替10,B来代替11,依次类推。111111111111111111111111111111111111111111111111111IllllIllllIllll11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 0 1 0 0 0 1 10 1110 111111111111111111111111111111111111111111111111111111111TT 1 1 1 511111111111111111111111111111111111

6、111T111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111Illl111116 17 11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111VH-1111111111111111111111111111111111111

7、11111111111111111111111111111111111111111111111111111111111111111111111111111111111图2.3.1改变某连通区域第一个像素值111111111111111111111111111111111111111IlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIllllIllllIllllIllll11111111111111111111111111121111111111111141111115IlllllIlllllIlllllIlllllIlllllIlllllI

8、lllll11111111111111111111111118111111111111111111111111111111111111111111111111111131111111111111111111161711111111111111111111191111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111IlllllIlllllIlllllIlllllIlllllIlllllIlllllIlllllIlllllIlllllIlllllIlllllIllll

9、lIlllllIlllllIlllllIlllllIlllllIlllllIlllllIlllllIlllllIlllllIlllllIlllll图2.3.2像素周围有大于1的数的情况后面的像素与前面几个像素修改方法相同。111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111

10、111111111111111111111111111111111111111111111111111111IllllIllllIllll11112Illll15111IllllIllllIllllIllllIllllIllllIllllIllllIllllIllllIllllIllllIllllIllllIllllIllllIllllIllllIllllIlllIlllIlllIlll1141IlllIlllIlll1811IlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlll1311Illl1617IlllIlllIlllIlllIlllIlll1911IlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIlllIl

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 数据结构与算法

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!