- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
图像处理作业
1.结合KNN边界保持滤波器和阿尔法滤波器对含有椒盐噪声的图像进行去噪,并要求保留边界。
解:要实现边界保留,那么在进行去噪前,首先判别当前像素是否为边界上的点,如果是,则不进行平滑处理;如果不是,则进行平滑处理。这就需要用到KNN边界保持滤波器。边界保持滤波器的核心是确定边界点与非边界点。KNN滤波器因为有了边界保持的作用,所以在去除椒盐以及高斯噪声时,对图像景物的清晰度保持方面的效果非常明显。当然,所付出的代价是:算法的复杂度增加了。而阿尔法滤波器对各种噪声都可以起到很好的去噪作用。具体步骤如下:
(1)首先通过KNN边界保持滤波器确定出非边界区域点g(s,t),对边界区域点不做处理;
(2)邻域内去掉g(s,t)最高灰度值的d/2和最低灰度值的d/2。用代表剩余mn-d个像素。由这些剩余后的像素点的平均值形成修正后的阿尔法均值滤波器:
其中d=(mn-1)/2时,退变为中值滤波器。椒盐噪声是幅值近似相等但随机分布在不同位置上,图像中有干净点也有污染点。中值滤波是选择适当的点来替代污染点的值,所以处理效果好。
2.选择配套的相机和镜头,要求可识别2*2mm的杂质。
解:选择CCD分辨率。CCD成像示意图如上图(1)所示,像元尺寸为,则杂质所成的像的尺寸最少为,可由此计算镜头的焦距为
f=。
对于相机分辨率,则要根据成像视野对应的实际范围而定。例如若视野范围为,则相机分辨率应不小于
像素
图1 原图 图2 左旋转30度 图3 左旋转45度
灰度二值化后图像旋转
图1 原始图像 图2 中心旋转30度 图2 中心旋转45度
程序
clc;
clear;
I=imread(logo.png);
B=imresize(I,1.2,bilinear);
C=imresize(I,0.5,nearest);
figure(1)
imshow(I);
figure(2)
imshow(B);
figure(3)
imshow(C);
%%旋转程序
clc;
clear;
I=imread(logo.png);
figure;
imshow(I)
b=imrotate(I,45,nearest,crop);
figure;
imshow(b)
4.设计一个图像处理的算法分别对下图的红细胞和白细胞计数(假设浅色点为红细胞,深色点为白细胞)。
原图 im1
二值化后Image_BIG 求反去小面积后二值化图像Image_BIG2
clear
image=imread(C:\Users\cgy\Desktop\blood1.jpg);%读取图片
im1=rgb2gray(image);%转化为灰度图
figure,imshow(im1);
title(原图);
level = graythresh(im1);% 使用最大类间方差法找到图片的一个合适的阈值
Image_BIG = im2bw(im1,level);
figure,imshow(Image_BIG)
Image_BIG1=bwareaopen(Image_BIG,90);
%删除二值图像Image_BIG中面积小于的对象
Image_BIG1=~Image_BIG1;
Image_BIG2=bwareaopen(Image_BIG1,60);
Image_BIG2=~Image_BIG2;
figure,imshow(Image_BIG2);
k=bwlabel(~Image_BIG2);
a=max(max(k1))
Image_Small=im2bw(im1,0.81);
figure,imshow(Image_Small);
title(阙值处理后图像);
Image_Small1=bwareaopen(Image_Small,90);
Image_Small1=~ Image_Small1;
Image_Small2=bwareaopen(Image_Small1,90);
figure,imshow(~Image_Small2);
title(求反去小面积后图像);
SE = strel(disk,9);
Image_Small_PZ=imerode(Image_Small2,SE);
Image_Small_PZ=~Image_Small_PZ;
figure,imshow(Image_Small_PZ)
k2=bwlabel(~
文档评论(0)