数字图像处理实验报告63445298资料.doc

数字图像处理实验报告63445298资料.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数字图像处理实验报告63445298资料

数字图像处理实验 一、实验内容及目的 已知一幅图上有五个瓶子,装有液体。 二、实验思路分析: 三、实验步骤 1、打开MATLAB软件,并将Current Folder改为所要处理的图片Fig1.jpg所在目录。我的图片所在目录为E:\12-13-2\数字图象处理\di: 2、读取和显示原始图像,显示原始图像的直方图: picOP = imread(Fig1.jpg); % 读入图像 figure,imshow(picOP),title(原始灰度图像); % 显示图像 figure, imhist(picOP), title(原始灰度图像直方图); % 显示原始图像的直方图 3、将图像进行二值化处理: 由于原始图像中白色比较明显,瓶身的颜色和背景比较相近,所以直接进行二值化处理,将未装满液体的信息提取出来。 picB = picOP; % 复制灰度图像到picB picBW = im2bw(picB,T/255); % 采用全局阈值进行灰度图像转变为二值图像 figure,imshow(picBW),title(全局阈值下二值图像); % 显示二值图像 4、进行形态学操作,转化为有利于处理的图像picMORPHOLOGY = picBW ; % 复制准备形态学处理 se = strel(square,10); % 结构化元素 fo = imopen(picMORPHOLOGY,se); % 开操作 figure,imshow(fo),title(开运算之后图像); % 输出开运算之后图像 、标记连通域, 图像处理后五个白色区域面积为: [2374; 2739; 8381; 2739; 1660] 五个质心的坐标数据: [20.6251053074979; 48.0433866891323; 138.604600219058; 46.6575392479007; 256.266674621167; 84.9748240066818; 376.604600219058; 46.6575392479007; 484.618072289157; 47.9084337349398] 6、根据面积和质心坐标计算结果判断那个装灌不合格: 通过没有装灌部分的面积大于2900或者质心大于50则判断为不合格,由步骤5的连通面积和质心坐标可得第三个瓶子不合格。 clear all; close all; T = 200; % 全局阈值 200时效果要好一些,手动选出的值 %step1 读取和显示原始图像,显示原始图像的直方图 picOP = imread(Fig1.jpg); % 读入图像 figure,imshow(picOP),title(原始灰度图像); % 显示图像 figure, imhist(picOP), title(原始灰度图像直方图); % 显示原始图像的直方图 % step2 转化为二值图像 picB = picOP; % 复制灰度图像到picB picBW = im2bw(picB,T/255); % 采用全局阈值进行灰度图像转变为二值图像 figure,imshow(picBW),title(全局阈值下二值图像); % 显示二值图像 % step3 进行形态学操作,转化为有利于处理的图像 picMORPHOLOGY = picBW ; % 复制准备形态学处理 se = strel(square,10); % 结构化元素 fo = imopen(picMORPHOLOGY,se); % 开操作 figure,imshow(fo),title(开运算之后图像); % 输出开运算之后图像 % step4 计算出各个白色连通区域(未装灌区域)面积和质心坐标 [L,num] = bwlabel(fo,4); % 为白色连通区域做标签 stats = regionprops(L,basic); % 利用 regionprops()函数计算面积、质心和边界等 s = [stats.Area]; % 矩阵S 中保存所有白色连通区域的面积 zx = [stats.Centroid]; % zx保存白色连通区域质心的坐标 % step5 根据面积和质心坐标计算结果判断那个装灌不合格 for indexnum = 1:num % 有实际几个连通区域就做几个循环,实际就是小于等于5个 if ( (s(indexnum) 2900) | (zx(2* indexnum) 50 ) ) % 如果面积大于2900或者质心大于50则为不合格 msgbox({不合格的瓶子是,num2str(indexnum)}); % 显示第几个瓶子不合格 end end 形态学操

文档评论(0)

aena45 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档