《软件工程实践》项目总结报告图像简单处理系统.doc
《《软件工程实践》项目总结报告图像简单处理系统.doc》由会员分享,可在线阅读,更多相关《《软件工程实践》项目总结报告图像简单处理系统.doc(48页珍藏版)》请在三一办公上搜索。
1、软件工程实践项目总结报告(2010/2011学年 第1学期)项目名称:图像简单处理系统班 级:软件0801项目成员:2023年2月项目评分历次项目阶段性评审得分第1次第2次第3次第4次第5次第6次最终名次2222112项目成员对项目贡献比例(%)黄超赵剑华孙芳芳谢彩燕胡华东施盛楠19%19%14%16%18%14%项目自我评价与心得体会黄超: 在本次项目的开发过程中,我主要担任了项目组长的职务。在对项目进行管理方面进了自己最大的能力与心力去做了,但还是存在很多不足的。通过这次开发,我第一次感受到了开发一个项目的不容易。首先是在项目成员的管理上,由于人员较多,项目不同于其他的基于WEB的项目,在
2、任务分配后各小组进度不同,很难进行系统的集成。所以在项目后期集成方面遇到了很多问题。同时通过这次项目开发也令我懂得了更多关于团队之间的协作的重要性。孙芳芳: 我们项目起初是作为创新项目在开发软件,所以我们在暑假的时候就有在学习和开发,起步相对其他小组比较早,但是虽然如此,由于在后阶段并没有像起初一样的积极性,在后面开发的内容并不多,导致最后赶得特别不易,这是我觉得下次开发需要改进的地方。我也从本次实践课中学到了很多东西,比方说团队合作与沟通,比方多新知识的学习等等。赵剑华: 在一个学期的实践中,不仅加强了编码能力,同时也加强了沟通交流能力,另外还锻炼了演讲能力。面对软件的不断重构以及软件功能不
3、断更新,完善,在锻炼编码能力的同时还加强了代码的管理能力,使我的编码风格有很大的改进。在编码完成自己部分功能的同时不断与团队队员之间的沟通,并且不断地了解,使我明白要怎么样更好的与团队之间进行沟通,以及怎么去处理队员与队员之间的问题。这个学期里,为了软件付出了挺多,当然得到了也很多。最主要的不是有多辛酸辛苦,而且能力得到了,这个是最主要的,是生活中最需要的。在此感谢软件工程实践为我带来的一切。施盛楠:软件工程实践中我们已做了一学期图形图像的项目,但是并不成功,下学期要放弃做别的项目,我心里还是比较不痛快的。但是技术存在难题,这让大家有点徒叹奈何的感慨。第一次和团队做项目,大家都是第一次,对于项
4、目的具体流程虽然有老师的指导,但是配合上还是出现了很多问题。我感觉我们小组并没出现什么化学反应,大家都不温不火的在做,一开始兴趣还比较大,但是后来就有点泄气了。可是做软件项目并不是个凭兴趣的事情,这是需要大家负担自己责任的。或许就像老师说的,我们肩上的压力不够大吧,人有时候就是要逼自己才好。胡华东: 在此次项目开发过程中,不仅锻炼了自己的代码编程能力,文档编写能力,加强了小组成员之间的沟通能力,而且改善了编码风格。在编码完成自己部分功能的同时不断与团队队员之间的沟通,并且不断地了解,使我明白要怎么样更好的与团队之间进行沟通,以及怎么去处理队员与队员之间的问题。这个学期里,为了软件付出了挺多,当
5、然得到了也很多。最主要的不是有多辛酸辛苦,而且能力得到了,这个是最主要的,是生活中最需要的。在此感谢软件工程实践为我带来的一切。教师评分优 良 中 及格 不及格目 录1项目概况21.1团队组成21.2开发环境21.3需求概述21.3.1项目背景31.3.2现状分析31.3.3项目意义31.3.4适用范围42需求说明42.1分割功能:42.2合成功能:52.3修复功能:53架构设计63.1功能设计63.2概要设计63.2.1分割功能63.3合成功能:93.4修补实现:104迭代日志124.1界面迭代:124.2分割迭代:174.3合成迭代:184.4修补迭代:195分工情况216FAQ2261环
6、境配置:2262代码编写:3063项目管理:416.3.1人员管理416.3.2时间安排416.3.3小组沟通问题426.3.4小组进度缓慢426.4其他问题:426.5 FAQ的数量统计表421项目概况1.1团队组成本项目一共由6人组成,其中根据软件功能又分为4个小组,分别为界面设计小组:赵剑华;图像分割小组:黄超、孙芳芳;图像合成小组:XXX、XX;图像修复小组:XXX、XXX。组长由XXX担任。1.2开发环境本项目开发工具主要使用了Microsoft Visual Studio.NET 2003,同时还使用了OpenCV 1.0的类库,所使用的操作系统为Windows XP。1.3需求概
7、述1.3.1项目背景 随着计算机科学的飞速发展,虚拟现实技术已渗透进入了军事、工程、医学、教育等各个方面, 并且在这些领域中起着重要的作用。如海湾战争的美国士兵对周边的环境不觉得陌生,是由于虚拟现实已把他们带入那漫无边际的风尘黄沙,让他们“身临其境”感受到大漠的荒凉。虚拟现实技术是一种可以创建和体验虚拟世界的计算机仿真系统,它利用计算机生成一种模拟环境,是一种多源信息融合的交互式的三维动态视景和实体行为的系统仿真,使用户沉浸到该环境中去。虚拟现实技术是仿真技术的一个重要方向,是仿真技术与计算机图形学、人机接口技术、多媒体技术、传感技术、网络技术等多种技术的集合,是一门富有挑战性的交叉技术、前沿
8、学科和研究领域。美国对此的投资从80年代的几千美金到现在14个亿足以说明其重要性。1.3.2现状分析 近年来,计算机图像技术的飞速发展和应用使个人电脑上的美术创作进入一个新的阶段,各种图像处理软件也越来越完善,普及程度不断地提高。其中的图像处理软件Photoshop是目前公认的较好用的通用美术设计软件。它包括的功能有:可以对图像进行修饰、对图形进行编辑、对图像的色彩进行处理等。在实际生活中人们通常将数码相机拍摄下来的照片利用图像处理软件来进行编辑和修饰,现在越来越多的用户不仅仅是满足与单纯的图像处理,更希望利用图像处理软件来进行高质量的广告设计、美术创意和三维动画。利用图像处理软件制作图形,要
9、生产一个好的作品包括三个方面的内容:创意、构图能力、计算机表达。即首先要有好的创意,然后对其进行粗略构图,然后借助计算机手段,制作出所构想的最终效果图。由于图像处理软件的功能强大,目前正被越来越多的图像编排、广告和形象设计以及婚纱影楼等领域广泛使用,是非常受欢迎的软件类别。1.3.3项目意义本项目拟研究以对象分割、图像修复和图像合成为核心的基于图像的编辑与绘制技术,并基于此开发一个虚拟现实场景图像的特效制作软件系统。首先,研究基于笔刷的对象分割算法,实现少量交互辅助下的便捷景物提取;此技术可用于图像的切割,切割下的图像可以黏贴至其他图像,可用于合成新的场景和图像。利用该项技术人们可以对自己喜欢
10、的场景方便的进行截取,进行图像处理更加方便。然后,研究图像的修复和拼接算法,实现景物移除后所遗留的空白区域的自动填补;使得新的图像看不出剪裁过的痕迹且没有裂缝。利用该技术可以使原有图像在切割掉的基础上依然保持图像的完整性和连续性。最后,研究图像的融合和合成算法,实现克隆景物与已有场景的无缝合成。通过这个系统,我们可以方便地移除图像中不需要的景物、添加进原来没有的景物或者重新编排图像中已有景物的位置,制作和生成新的虚拟现实场景图像。此系统在现实生活中也有很广泛的应用,例如,对于旧照片的修复,照片的合成以及制作电影特效等。同时还可以给人带来很好的娱乐效果,人们可以利用系统制作自己喜欢的图像,合成搞
11、笑的图像等。本项目的开发从娱乐和实用的角度都具有很重要的意义。1.3.4适用范围本软件适合于对各种格式的数字图像进行处理。2需求说明界面功能主要有打开,保存,视图等基本功能,并且对功能分割,修补,合成功能的接口处理。程序分两部分,一部分为分割和修补,另一部分为合成。由两个界面构成,在分割和修补界面,界面中包含打开,圈定分割区域,分割,调色,改变位图等工具栏功能,并且对分割后的图像能够进行修补操作。在合成界面,具有打开图片,选定需要获取的图像信息,以及合成等功能。2.1分割功能:总体需求可以归结为基于图像分割算法实现景物的精确提取功能。具体通过以下三个方面实现。在功能方面,实现对所框部分的图像进
12、行前景的提取及显示,对该图像背景和灰度图像进行保存,传给其他功能模块图像的掩膜。在性能方面,时间特性要求:图像对鼠标操作的响应时间较短;能进行较快的处理分割操作。灵活性要求:可以改变分割图像的大小;可以改变所提取前景的颜色。在接口方面,得到界面所给的矩形框出的需要处理的图像的信息,同时得到被框图像的左上角和右下角坐标。传回处理好图像的image指针,图像的信息和物体的轮廓线指针及掩膜。2.2合成功能:我们要实现的功能模块是将两幅或多幅图像中的信息综合到一幅图像中,实现添加进的克隆景物与已有景物的无缝集成,满足亮度、颜色和结构信息的连续性和语义合理性。首先我们要对将要进行融合的图片进行预处理,让
13、原图像和待合成图像不存在明显的几何畸变,在图像质量不理想的情况下进行图像融合,如果不经过预处理,很容易造成一些误匹配。下一步是图像配准,主是对参考图像和待融合图像中的匹配信息进行提取,在提取出的信息中寻找最佳的匹配,完成图像间的对齐。图像融合的成功与否主要是取决于图像的配准。待融合的图像之间,可能存在平移、旋转、缩放等多种变换或者大面积的同色区域等很难匹配的情况,我们将努力实现能在多种情况下准确找到图像间的对应信息,将图像对齐。在完成图像配准以后,就要对图像进行缝合,并对缝合的边界进行平滑处理,使图像间的合成缝隙不明显,融合更自然。2.3修复功能:图像修复是一项古老的艺术,最早可以追溯到欧洲文
14、艺复兴时期,为了恢复遭受破坏的美术作品,艺术家们利用人的感知力和想象力对作品的裂痕等受损区域进行修补,使其恢复和保持图像的完整性。这一技术就称之为Inpainting(修复,润饰)或称为Retouching(分涂,修正)。修复目的:对有划痕或者破损的图片进行数字扫描后加以修复;在图像上面增加或者去除物体,比如电影后期制作中发现图像中出现了多余的物体,麦克风,电线等的移除;修补信息缺失区域,如在数字图像或视频的获取、处理、压缩、传输和解压缩过程中因信息丢失所留下的信息缺损区。需要修补图像文件来源不确定,可由用户自行指定,一般为存储于本地磁盘的特定图像文件。图像文件一般为部分破损、信息缺失、图像信
15、息赘余等情况的的文件。图像修复过程,对受到损坏的图像进行修复重建或者去除图像中的多余物体。例如:照片修复、去除污物、去除文字、去除目标等行为即为此功能实现效果需求。3架构设计3.1功能设计本软件主要功能分为数字图像的对象分割、图像修复和图像合成四部分。首先,研究基于笔刷的对象分割算法,实现少量交互辅助下的便捷景物提取;此技术可用于图像的切割,切割下的图像可以黏贴至其他图像,可用于合成新的场景和图像。利用该项技术人们可以对自己喜欢的场景方便的进行截取,进行图像处理更加方便。然后,研究图像的修复和拼接算法,实现景物移除后所遗留的空白区域的自动填补;使得新的图像看不出剪裁过的痕迹且没有裂缝。利用该技
16、术可以使原有图像在切割掉的基础上依然保持图像的完整性和连续性。最后,研究图像的融合和合成算法,实现克隆景物与已有场景的无缝合成。通过这个系统,我们可以方便地移除图像中不需要的景物、添加进原来没有的景物或者重新编排图像中已有景物的位置,制作和生成新的虚拟现实场景图像。人们可以利用系统制作自己喜欢的图像,合成搞笑的图像等。3.2概要设计3.2.1分割功能主要思想:1 通过高斯混合模型来描述前景与背景的分布。2 通过迭代方法求取高斯混合模型中的各个参数。3 通过非完全标记方法,用户只需利用矩形框标记处背景区域即可。4 通过与高斯混合模型进行比较后,将得出的前景轮廓以链表的形式返回。功能流程图:图3代
17、码实现:1 从用户交互界面得到用户确定的矩形的坐标(左上角和右下角)。2 使用cvKMeans2()函数对高斯模型进行聚类。从确定的矩形的中心开始采样,并对沿着2条对角线方向,取适量像素。3 建立高斯混合模型1) 定义5个高斯模型组件,对其进行初始化(全部为1或全部为0)。(将每个像素的像素值代入到高斯方程中进行估算,以便将适合的像素点划分到各个高斯模型组件中。)2) 利用迭代最小化方法求取混合高斯模型的参数(主要是均值和方差):混合高斯模型给出的概率密度函数实际上是几个高斯概率密度函数的加权和: 其中 . 定义事件 , 则 . 据此可以产生服从上述混合高斯概率密度分布的样本. 混合分布的均值
18、为 方差为 a 为未知区域的每个像素点n设置高斯混合模型参数 b 由图像中各个像素的数据求得高斯混合模型参数U (, k, z) = D (n , kn , zn )D (n , kn , z) = - log p ( zn | n , kn ,) - logw (n , kn )其中p () 是高斯概率分布, w () 是该高斯模型的样本数在总样本中权值c 利用最小化能量来得到初始分割d 回到步骤a重复执行,直到收敛为止;e 进行边界优化。 4 对矩形框中图像的每一个像素进行处理,看是否匹配某个模型,若匹配则将该像素标记为1,若不匹配则标记为0。 利用for循环对矩形内的像素点进行遍历,定义
19、一个表示各像素匹配结果的变量,当像素符合高斯模型的特征值时,将该变量标记为1,否则标记为0。5 利用循环遍历矩形中各像素的匹配特征值,将变量值为1的像素点坐标建立成链表返回。3.3合成功能:主要思路:对于每幅数字图像,我们都可以看成由确定的像素组成,假设图像的每个像素看成由图像分割的每个网格。假设S和是无限像素网格中的有限点集。注意到S可能包含了网格中的所有像素,也可能只是部分像素。对于S中的每个像素p,Np是S中相关四个像素的集合。表示一对像素,其中q属于Np; 的边界;fp表示f函数中p点的值。我们的目的是使得将泊松方程变幻后最终可得到: 其中f*是S中除去领域中的一个已知函数,f是中定义
20、的一个未知函数。当包含S边缘像素时,如果延伸到整个网格区域时,p有截短领域,|Np|4 也就是Np属于.方程可简化成:其中vpq是v((p+q)/2)在向量pq上的投影。求解出该方程组,得到新的像素值。功能流程图:图4代码实现:代码实现上主要涉及到三个函数,divengence()函数对图像的特征进行提取,求出图像的散度。posionPaste()函数,实现两幅图像的融合。其中possionPaste中调用的子函数doCal()对图像泊松方程进行求解。3.4修补实现:主要思想:修补模块分为修补主函数,轮廓函数,计算优先级函数,修补函数。1修补主函数获取上层分割完成后传入的带修补图像指针和Mas
21、k模板图指针,Mask模板图作为传入的带修补图像任意像素是否真实的对照表。将待修补图像指针和Mask模板图指针传给轮廓函数。2轮廓函数建立原图像待修补区域轮廓的链表,依操作据轮廓链表节点对图像相应像素进行。对轮廓链表的每个节点调用优先级函数。优先级函数获取传入像素点位置,可计算任意点像素的优先级。3对轮廓中优先级最大的点调用修补函数,通过搜寻与以该点为样本块最相似的区域来填充样本块,完成修补,更新Mask模板图和带修补区域轮廓。重复23步,直至轮廓链表为空。功能流程图:图54迭代日志4.1界面迭代: 第一次迭代:界面需求功能的确定,界面初步具有文件,编辑,视图,工具栏等基本功能图6第二次迭代:
22、增加界面菜单功能,工具栏功能a) 文件菜单: 图7b) 编辑菜单:图8c) 视图菜单:图9第三次迭代:程序能够打开图片,并且能画出一个矩形确定范围(格式为JPG和BMP)图10图11第四次迭代:修改界面,去掉编辑功能,增加process菜单:包括功能打开新图,以及获取矩形框里图像 图12Process菜单: 图13第五次迭代:添加New_Image功能代码:形成副图图14 图中黑色部分为副图打开的显示位置第六次迭代:完成副图上的打开图片和重新圈定功能:打开图片图15圈定功能:图16第七次迭代:完成process菜单中,cut_image功能图17Cut_image功能完成后,圈定出来得部分如图
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程实践 软件工程 实践 项目 总结报告 图像 简单 处理 系统
链接地址:https://www.31ppt.com/p-2391485.html