- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
SouthChinaUniversityofTechnology
华南理工大学《数据挖掘》
实验报告
题目:数据仓库与数据挖掘实验
K-means图象分割
学院计算机科学与工程
专业计算机科学与技术(全英创新班)
学生姓名黄炜杰
学生学号202230590051
指导教师王家兵
课程编号145013
课程学分2分
起始日期2015年5月18日
实验概述
【实验目的及要求】
目的:
实现K-means聚类算法进行图象分割.
要求:
·以迭代次数为终止条件
·用图象分割Berkeley图片数据库中的图片作为数据集
·根据具体图象,自主设定k值
·尽量多使用一些图象特征,例如组合颜色、空间邻近性、纹理、SIFT等特征
【实验环境】
操作系统:window8(64bit)
编译器:MatlabR2022b
编程语言:Matlab
实验内容
【实验方案设计】
实验流程如下图1:
①含糊化③k-means聚类、
含糊图片
②特征提取
数据矩阵
分割
子图子图
子图
图1.k-means图象分割实验流程图
①根据像素点色度,把原图片进行平滑含糊化,减少孤立点数目,提高聚类质量。
②根据原图片进行变换,提取像素点特征,把图片转换为数据矩阵。
③对每一个像素点进行聚类,根据聚类结果对图片进行分割,产生分割子图。
实验过程:
含糊化
原始图片中,若清晰度很高,同一物体中(聚类中的同一类)存在少数点与其他点区分度很大,肉眼粗略看没有什区别,但是这些点却会对聚类产生很大影响,生成一些列很零散的点群,降低聚类质量。如图2中,绿色框中存在大量零
散的孤立点,而红色框中,可以看到物体的轮廓比较粗糙,分割结果并不理想。
图2.样本图片含糊化前分割结果
对图片进行含糊化有助于去除孤立点,减少噪声,使得分割后的图象连通性更强。在本实验中,含糊的处理方法是根据像素点的邻居点对本身进行平滑,大
致算法如下:
1.计算每一个像素点的8个邻居点与本身的相似度,根据相似度对每一个邻居点
赋予权重w;,其中w;=similarity:/sum(similarity)
2.设定比值r%,每一个像素点的色度r%由本身决定,(1-r%)由邻居点决定。
3.更新每一个像素点的色度:
色度=色度*邻居点j色度*w,*(1-r%)
4.重复步骤1~3k次,其中k为用户预设值
下图是进行3次含糊化后,可看出仅仅经过3次含糊化迭代,图象的锐化程度大大降低,可见图中红色方框,含糊化前狗背部毛发的纹理非常清晰,不少黑白相间的点,而含糊化后毛发颜色变得平滑,在背景颜色与毛发中某些颜色很相近的情况中,含糊化前的图象可能会导致错误的分割结果,而后者避免了这一问
题。
较之直接根据附近8个邻居点取平均值进行含糊化,这种加权含糊化的方式
不仅没有使物体边界变得含糊,反而增加了其区分度。
聚类时使用的是含糊化的图象,而最终得到分割图片仅利用含糊图片的点进行索引,内容还是使用含糊化前的图象。所以含糊化过程仅仅改善分割结果,不
会降低图片的质量。
含糊化图象
图3.样本图片含糊化先后
对含糊化先后的图片分别进行k-means聚类分割,结果对照在图4中。留意分割结果中的绿色框,含糊化前产生了较多的零散点群,而含糊化后,零散点群的数量大概减少了60%,而物体边界则变得更加平滑,分割效果变好。虽然分割结果并没大大提升,但是此处理方法计算代价比较少,值得采取,其时间复杂度为O(n*t),其中n为像素点个数,t为迭代次数。含糊化此大小为552*799个像素点的样例图片,只需要1.049秒(其中本机配置:CPU2.5G四线程,RAM=4G,
非SSD硬盘)。
分割子图-1分割子图-1
bfus)
分割子图-2分割子图-2
含糊化前
图4.样本图片含糊化先后分割结果
含糊化代码函数存储在imObfus.m中,其中核心代码为:
%%记录邻居点
neighPoint=repmat(imInput.[1118]):
neighPaint(1:end-1,::,1)=imInput(2:end::);
neighPoint(2:end,:,:,2)-inInput(1:end-1,,:);neighPoint(:
您可能关注的文档
最近下载
- 汽车吊验算.doc VIP
- Hisense海信电视HZ55U7E用户手册说明书.pdf
- 山东省潍坊市奎文区2024-2025学年六年级上学期英语核心素养调研.docx VIP
- 国家开放大学《数控机床电气控制》形考任务1-4参考答案.pdf VIP
- 重症医学资质培训(5c)-创伤救治.ppt VIP
- 隧道工程数量表(每延米)模板.xls VIP
- 危险废物环保管理规范PPT课件.pptx VIP
- 隧道工程数量表.xlsx VIP
- 附件置地工程高品质.pdf VIP
- 人教版八年级英语上册课件Unit 4 《Amazing Plants and Animals》(Section A 1a-1d & Pronunication).pptx VIP
原创力文档


文档评论(0)