图像处理实例(含Matlab代码)

  • 格式:docx
  • 大小:3.35 MB
  • 文档页数:13

下载文档原格式

  / 13
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

信号与系统实验报告——图像处理

学院:信息科学与工程学院

专业:2014级通信工程

组长:**

组员:**

2017.01.02

目录

目录 (2)

实验一图像一的细胞计数 (3)

一、实验内容及步骤 (3)

二、Matlab程序代码 (3)

三、数据及结果 (4)

实验二图像二的图形结构提取 (5)

一、实验内容及步骤 (5)

二、Matlab程序代码 (5)

三、数据及结果 (6)

实验三图像三的图形结构提取 (7)

一、实验内容及步骤 (7)

二、Matlab程序代码 (7)

三、数据及结果 (8)

实验四图像四的傅里叶变化及巴特沃斯低通滤波 (9)

一、实验内容及步骤 (9)

二、Matlab程序代码 (9)

三、数据及结果 (10)

实验五图像五的空间域滤波与频域滤波 (11)

一、实验内容及步骤 (11)

二、Matlab程序代码 (11)

三、数据及结果 (12)

实验一图像一的细胞计数

一、实验内容及步骤

将该图形进行一系列处理,计算得到途中清晰可见细胞的个数。

首先,由于原图为RGB三色图像处理起来较为麻烦,所以转为灰度图,再进行二值化化为黑白图像,得到二值化图像之后进行中值滤波得到细胞分布的初步图像,为了方便计数对图像取反,这时进行一次计数,发现得到的个数远远多于实际个数,这时在进行一次中值滤波,去掉一些不清晰的像素点,剩下的应该为较为清晰的细胞个数,再次计数得到大致结果。

二、Matlab程序代码

clear;close all;

Image = imread('1.jpg');

figure,imshow(Image),title('原图');

Image=rgb2gray(Image);

figure,imshow(Image),title('灰度图');

Theshold = graythresh(Image);

Image_BW = im2bw(Image,Theshold);

Reverse_Image_BW22=~Image_BW;

figure,imshow(Image_BW),title('二值化图像');

Image_BW_medfilt= medfilt2(Image_BW,[3 3]);

figure,imshow(Image_BW_medfilt),title('中值滤波后的二值化图像');

Reverse_Image_BW = ~Image_BW_medfilt;

figure,imshow(Reverse_Image_BW),title('图象取反');

Image_BW_medfilt2= medfilt2(Reverse_Image_BW,[20 20]);

figure,imshow(Image_BW_medfilt2),title('第二次中值滤波的二值化图像');

[Label, Number]=bwlabel(Image_BW_medfilt,8);Number

[Label, Number]=bwlabel(Image_BW_medfilt2,8);Number

三、数据及结果

原图灰度图

二值化图像中值滤波后的二值化图像

图像取反第二次中值滤波的二值化图像

结果:

经过一次中值滤波得到的细胞个数为:1498个。

经过第二次中值滤波去掉不清晰的细胞得到的细胞个数为211个。

实验二图像二的图形结构提取

一、实验内容及步骤

将该图形进行一系列处理,得到该生物模糊部分的大致结构。

首先,将原图转为灰度图,再进行图像锐化,突出图像的各个边界部分,然后进行二值化得到二值化图像,之后进行图像边界的提取,提取之后由于边界像素点不够连续,所以再进行一次闭运算用以连接边界,得到结果图像。

二、Matlab程序代码

clear;close all;

Image = imread('2.jpg');

figure,imshow(Image),title('原图');

Image=rgb2gray(Image);

figure,imshow(Image),title('灰度图');

w4 = [1 1 1;1 -8 1;1 1 1 ];

Image = im2double(Image);

K=imfilter(Image,w4,'replicate');

KN = Image - K;

figure,imshow(KN),title('ruihua');

KN=imclose(KN,strel('rectangle',[2,2]));

KN=imopen(KN,strel('rectangle',[2,2]));

Theshold = graythresh(KN);

Image_BW = im2bw(Image,Theshold);

Reverse_Image_BW22=~Image_BW;

figure,imshow(Image_BW),title('初次二值化图像');

BW2 = bwmorph(Image_BW,'remove');

figure,imshow(BW2),title('边界图像');

BW3 = imclose(BW2,strel('rectangle',[10,10]));

figure,imshow(BW3),title('闭运算');