数字图像处理 matlab 报告总结,matlab 数字图像处理实验报告(五份)
由于成像过程受多种因素影响,在经成像后所得的图象与实物相比较可能会导致尺寸比例出现偏差甚至可能出现变形现象。这种现象被形象地称为"几何失真"。对于存在几何畸变的影像不仅从视觉效果来看不够理想而且在定量分析过程中所获得的数据(如形状特征、空间关系、面积信息等)同样会出现偏差。为了消除或纠正因这些因素造成的影像质量下降通常会采用相应的校正方法即所谓的'几何失真校正'技术。其中典型的几丁质扭曲包括光学系统引起的斜视畸变电子扫描系统造成的枕状或桶状畸变以及各种复杂系统的综合效应都可能导致影像产生不同程度上的几丁质变化最终影响到影像的空间定位精度和整体质量表现
实验四 图像的绘制与分割
一.实验目的
- 掌握图像分割的概念;
- 深入了解阈值分割及边缘检测技术;
- 对目标图像提取特征并进行详细分析。
二. 实验仪器
计算机、MATLAB软件 三.实验原理
Matlab为实现边缘检测和图像分割提供了许多实用的图像处理函数。在进行图像分割时,通常采用多种方法。例如:基于阈值的方法、基于边缘检测的方法、基于区域划分的方法、基于轮廓分析(或称凸轮分析)的方法以及基于能量泛函优化的方法。其中,在Matlab中存在多种用于边缘检测的算法。其中一种最常用的是Sobel算法和Prewitt算法。通过将该算子应用于图像进行卷积运算后,则能够有效识别出图像的边界。从而实现对目标区域的分割。
在计算机视觉领域中,图像是一个基础而关键的处理对象。它不仅作为后续分析任务的前提条件存在,在特征提取与表征方面也展现出独特的价值。基于此,在现代计算机视觉系统中,精确有效的图象分割技术对于提升整体性能具有不可替代的作用。
四.实验内容及步骤 1.图像的边缘检测 (1) 源代码如下:
通过调用imread函数读取图像文件'cameraman.tif';随后分别通过调用edge函数应用Sobel、Prewitt和Laplacian边缘检测器(分别赋值给变量J1、J2和J3);接着在图形窗口中创建一个四列一排的布局,并选择第一个子图位置显示原始图像I;第二个子图显示计算得到的结果J1;第三个子图显示结果J2;第四个子图显示结果J3;其中Log边缘算子用于生成最终的边缘图
Fid=fopen('lena.img','r');
读取图像数据到变量Im,并指定大小为[256x256]像素且数据类型为uint8类型。
将图像数据转换为双精度格式并扩展其数值范围至[0,1]区间。
利用Roberts算子检测图像中的锐利边缘。
使用Prewitt算子来计算梯度变化并提取边缘信息。
基于Sobel算子生成平滑的边沿检测结果。
应用LoG算子寻找图像中的边缘点。
设置灰度颜色映射方案以增强视觉效果。
调用subplot函数创建第一个子图并展示图像im;设置主图标题为"源图像";在图形窗口中划分出第三个子区域并显示图像im_R;设置该区域标题为"Roberts检测";调用subplit函数创建第四个子图并展示图像im_P;设置对应标题为"Prewitt检测";调用subplit函数创建第五个子图并展示图像im_S;设置其标题为"Sobel检测";调用subplit函数创建第六个子图并展示图像im_L;最后设置该区域标题为"Log检测"。
(2) 运行结果如下:
原始图像Sobel边缘算子
Prewit边缘算子Log边缘算子
2.迭代式阈值选择法 (1)源代码如下:
f=imread('cameraman.tif'); >> subplot(1,2,1) imshow(f);
title('原始图像'); >> f=double(f);
T=(min(f(:))+max(f(:)))/2; >> done=false; >>i=0 while~done f1=find(f<=T); i = 0
