图像校正及分割处理软件设计与实现_模式识别与智能系统(编辑修改稿)内容摘要:
图 13 图像分割 结果( c) 图 14 图像分割 结果( d) 图像 分割 结果 分析 通过 多次选择不同的 预期 聚类中心 的 实验 结果表明, 设计 基本完 成 了所需的功能。 同时 也证明了 设计 的合理性,以及 ISODATA 聚类算法在图像分割中的运用。 结果显示 , 把 鸭子的眼睛分成 了 一类 , 把鸭子的嘴分成了一 类 ,把鸭子的 身体 分成了一类,虽然 有时 分类结果不是 非常 好。 但 选择 预期聚类中心时有一定的影响。 总体来看, 仍然 达到了 图像 分割的目的。 本学 期 在 《 图像分析与模式识别 》 课程 中学到 很多 , 学到 的不 仅仅 是课程相关的知识。 更重要 的是学 到 了 许多处理和 解决问题的 思想, 相信 对今后的学习 会有很大 的 帮助。 这都是 刘辉老师教导的结果, 在此 对刘辉老师表示衷心感谢。 《 图像分析与模式识别 》课程 期末 大 作业 报告 姓名: 赵世瑜 学号 : 20xx204067 12 / 19 附录 : 附录 一:图像几何校正代码 function jiaozheng = jiaozheng(cheque) BW_laplace = edge(cheque,39。 log39。 )。 % log 算子边缘检测 BW2 = bwmorph(BW_laplace, 39。 thin39。 ,Inf)。 %细化 [H,T,R] = hough(BW2)。 %Hough 变换 P = houghpeaks(H,5)。 %提取 Hough 变换后参数平面上的峰值点 lines = houghlines(BW2,T,R,P)。 %提取直线 for k = 1:length(lines) xy = [lines(k).point1。 lines(k).point2]。 %提取坐标 end slope=(xy(2,2) xy(1,2))/(xy(2,1)xy(1,1))。 %求斜率 radian=atan(slope)。 %求角度 angle=radian*180/pi。 %转化成角度 jiaozheng=imrotate(cheque,angle)。 %图像校正 imshow(jiaozheng)。 close。 附录 一: ISODATA聚类 算法图像分割 代码 function isodata=isodata_zsy(I) %%%%%%%%%%%%%%%%%1..样本点为所有的像素点 %%%%%%%%%% %%%%%%%%%%%%%%% 2...聚类中心点的确定 %%%%%%%%%%%%%% figure(1)。 imshow(I,[]),title(39。 请选取预期聚类的中心点,完成后请按回车键或 单击鼠标右键 39。 )。 [m,n]=size(I)。 k=4。 % k 用来记录预期聚类的数目这里假定为 4 c=k。 % c 来记录实际分类时的数目 hold on。 [p,q]=getpts。 %获取聚类中心,返回去类中心的坐标, p 存放第一个坐标点, q 存放第二个坐标点(数对) J=zeros(1,3*c)。 %。 for i=1:c f=round(q(i))。 %分为 c 类 J 来记录各类的中心像素值 ...(坐标和像素值) d=round(p(i))。 J(i)=I(f,d)。 end %disp(J)。 《 图像分析与模式识别 》课程 期末 大 作业 报告 姓名: 赵世瑜 学号 : 20xx204067 13 / 19 %%%%%%%%%%%%%%%%%3...将样本点分到各个聚类中心去 %%%%%%%%%%%%% max_gen=10。 %max_gen 最大迭代次数 w=1。 %while wmax_gen A=zeros(m,n)。 for i=1:m for j=1:n dis=[0,0,0,0]。 %用来记录样本点与每个聚类中心的距离 for x=1:4 dis(1,x)=(I(i,j)J(x))*(I(i,j)J(x))。 end %disp(dis)。 [min1,temp]=min(dis)。 A(i,j)=J(temp)。 end end %disp(A)。 %%%%%%%%%%%4....依据一个类中的最小聚类数判断是否舍去聚类点 %%%%%%%%%% sN=6。 %sN 一个聚类中 至少含有的样本数目 count=zeros(1,3*c)。 %count 数组用来记录每个聚类中含有的样本数目 for i=1:m for j=1:n for x=1:c if A(i,j)==J(x) count(x)=count(x)+1。 end end end end for x=1:c1 if count(x)sN J(x)=J(x+1)。 count(x)=count(x+1)。 %类的数目减少一个 c=c1。 end end if count(x)sN count(x)=0。 《 图像分析与模式识别 》课程 期末 大 作业 报告 姓名: 赵世瑜 学号 : 20xx204067 14 / 19 c=c1。 end %%%%%%%%%%%5...更新聚类中心 %%%%%%%%%%%%%%%%%%%%%%%%%%% for x=1:c sum=0。 for i=1:m for j=1:n if A(i,j)==J(x) sum=sum+I(i,j)。 end end end J(x)=round((x)*sum*)。 %更新中心 end %%%%%%%%%%%%%%%6....各类的样本离开中心的平均距离 %%%%%%%%%%%% meandis=zeros(1,c)。 for x=1:c sum=0。 for i=1:m for j=1:n if A(i,j)==J(x) sum=sum+abs(I(i,j)J(x))。 end end end meandis(x)=(x)*sum。 end %%%%%%%%%%7...所有样本离开其相应的聚类中心的平均距离 %%%%%%%% g_meandis=0。 %g_meandis 记录平均距离 N=m*n。 for x=1:c g_meandis=g_meandis+count(x)* meandis(x)。 % end g_meandis=g_meandis/N。 %%%%%%%%%%%%8....决定是走向合并还是分裂 %%%%%%%%%%%% sC=。 %。图像校正及分割处理软件设计与实现_模式识别与智能系统(编辑修改稿)
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。