LOG算子实验报告
数字图像处理四个实验报告,带有源程序

数字图像处理实验指导书学院:通信与电子工程学院专业:电子信息工程班级:学号:姓名:XX理工大学实验一 MATLAB数字图像处理初步一、实验目的与要求1.熟悉及掌握在MATLAB中能够处理哪些格式图像。
2.熟练掌握在MATLAB中如何读取图像。
3.掌握如何利用MATLAB来获取图像的大小、颜色、高度、宽度等等相关信息。
4.掌握如何在MATLAB中按照指定要求存储一幅图像的方法。
5.图像间如何转化。
二、实验原理及知识点1、数字图像的表示和类别一幅图像可以被定义为一个二维函数f(x,y),其中x和y是空间(平面)坐标,f 在任何坐标处(x,y)处的振幅称为图像在该点的亮度。
灰度是用来表示黑白图像亮度的一个术语,而彩色图像是由单个二维图像组合形成的。
例如,在RGB彩色系统中,一幅彩色图像是由三幅独立的分量图像(红、绿、蓝)组成的。
因此,许多为黑白图像处理开发的技术适用于彩色图像处理,方法是分别处理三副独立的分量图像即可。
图像关于x和y坐标以及振幅连续。
要将这样的一幅图像转化为数字形式,就要求数字化坐标和振幅。
将坐标值数字化成为取样;将振幅数字化成为量化。
采样和量化的过程如图1所示。
因此,当f的x、y分量和振幅都是有限且离散的量时,称该图像为数字图像。
作为MATLAB基本数据类型的数值数组本身十分适于表达图像,矩阵的元素和图像的像素之间有着十分自然的对应关系。
图1 图像的采样和量化根据图像数据矩阵解释方法的不同,MA TLAB把其处理为4类:亮度图像(Intensity images)二值图像(Binary images)索引图像(Indexed images)RGB图像(RGB images)(1) 亮度图像一幅亮度图像是一个数据矩阵,其归一化的取值表示亮度。
若亮度图像的像素都是uint8类或uint16类,则它们的整数值范围分别是[0,255]和[0,65536]。
若图像是double类,则像素取值就是浮点数。
一种改进的自适应各向异性LOG算子

如果 将 这个 椭 圆 以坐 标 原 点 为 中心 向逆 时针 方 向转 角度 , 据解 析 几何 的方 法 可计 算 出该 椭 根
再将 式 ( )的角 度信 息 量 带 人 式 ( )中 , 得 4 1 可
新 的 L G边缘检 测算 子公 式 : O
E:
oy
( ) ,) ,
() 6
式 ( ) , , ) 高斯 滤 波算 子 , ( ) 6 中 G( Y 为 l , 为 o
G ( Y = { [ XO / + yit oa) D , ) ( CSO s xs nc
2 1 各 向异性 L G算 子 . O 常用 的二 维 L G算 子 在 方 向与 Y方 向对 6 O
工 作 ,esbok等 提 出 了一 种 快 速 各 向异 性 高 斯 G uere
滤 波方 法 J这种 滤波 器 通过 在 两 个 不 同方 向上 选 ,
用 不 同的高 斯尺 度 , 而使 滤 波器 可 以在 去 噪 时较 从 好保 留图象边 缘 等重 要 信 息 , 利 用 高 斯 函数 的可 并
分解 性 将 滤 波器 沿 长 轴 和 短 轴 方 向分 解 为 两 个 一
取 不 同值 就 可 以得 到 各 向异 性 L G算 子 。L G O O
算 子变 为 :
维 滤波 算子 与 图像 卷 积 , 计 算 简 化 , 这 种 滤 波 使 但 器 的长 短 轴长 度 固定 , 能 自适 应 改 变 。文 献 [ ] 不 2
第 1 0卷
改进的LOG算子在医学图像边检测中的应用研究

赣■
改 进 的L 算 子 在 医 学 图像 边检 测 中 的应 用 研 究 OG
唐 闻 周爱 明 刘艳松
株洲 42 1) 1 0 2 ( 湖南中医药高等专科 学校 湖南
摘
要 : 提 出用 自适应 中值滤 波代替L G 子 的高斯滤 波器 ,在对 细胞切 片 图的边缘 检测 中,该方 法能在 平滑 图像 内部区域 的 同时保 留更多 的细节 ,提高 O算
斯 运算 与f( ,y 的卷积 ,即 : x )
hx ) V g )= ( Y (,) f x) V 【(,) 13 (, = ( 】 V 【 x )G X ] (,) ](. ) , , , = , z G
式中: GxY 称为L 滤波器,也称为拉普拉斯高斯算子,其值 V= ( ) , G O
一
z 在坐 标 ( ,y X )上 的灰度 级: sa:允许 的最大尺 寸 m x
A - Z d Z 1 — o A =Zd Z 2 — B=Z 1 一 , 厶 B =Z 一Z 2
自适应 中值 滤波 算法 步骤如 下 : Sel t p :如果A 且 h < ,则 转 到B ,否则 增大 窗 口尺寸 ;如 果 窗 口 DO 2 0 层 尺寸 ≤Sa ,则 重复A ,否 则输 出Ze 。 mx 层 m d S e2 tp :如 果B 且B < ,则输 出Z y D0 2 0 x ,否则 输 出Ze 。 m d S e3 tp :算 法每 输 出一个 值 ,窗 口Sy 被移 到 图像 的下一 个位 置 ,然 x就 后算法 重新 开始 ,在新 的像 素位 置应用 。
2自适应 中值 滤 波算 法
自适 应 中值滤 波算 法 是对 中值 滤波 的一 种改进 。中值 滤波 的 去噪 效果 依 赖 于滤 波 窗 口的 大小 及 参 与 中值 计 算 的像 素 点数 目 。相 对 中值 滤 波 而 言 ,它 能够 处理 具有 更 大概 率 的冲激 噪 声 ,并且 平滑 非 冲激 噪 声 时,可 以 保存 细节 ,这 是传统 中值 滤波 器做 不到 的 。其 基本 原理 如下 图 11 [] ]7 。 I Sy x:中心 像 素点 ( ,y x )在 滤波 时所 对应 的掩 模 窗 口 ; z :Sy m x 中 灰度 级 的最小值 : z :s 一 x 中灰度 级 的最大 值 ; Ze,Sy m * x中灰度 级 的中值 ; d
计算机视觉实验报告-对图像进行腐蚀和膨胀

1实验目的选取一张自己的生活照,实现:任选两种结构对图像进行腐蚀和膨胀。
边缘检测(分别使用Prewitt,两种大小的Sobel算子,不同参数的Canny算子,LoG算子),并对比各个算子实现差异及不同参数条件下的实验效果。
2实验过程2.1图像腐蚀和膨胀实验图片所用代码import cv2import numpy as npdef threshold(image, threshold):out = image.copy()out[out < threshold] = 0out[out > threshold] = 1out = out.astype(np.uint8)return out# 1. 读取图像文件image = cv2.imread('img/in.jpeg', cv2.IMREAD_GRAYSCALE)# 2. 缩放图像print('Shape: {}'.format(image.shape))image = cv2.resize(image, (256, 256), cv2.INTER_LINEAR)print('Shape: {}'.format(image.shape))# 3. 均一阈值分割binary = threshold(image, threshold=200)# 4. 腐蚀kernel_size = 5erode = cv2.erode(binary, kernel=np.ones((kernel_size, kernel_size)))# 5. 膨胀dilate = cv2.dilate(binary, kernel=np.ones((kernel_size, kernel_size)))# 6. 显示图像cv2.imshow('Image', image)cv2.imshow('Binary', binary * 255)cv2.imshow('Erode', erode * 255)cv2.imshow('Dilate', dilate * 255) cv2.waitKey(0)实验效果Kernel=5Kernel=25代码分析及现象腐蚀,消除连通的边界,使边界向内收缩。
log特征提取算子

log特征提取算子
在图像处理领域,log特征提取算子通常用于边缘检测和纹理
分析。
它可以帮助识别图像中的边缘和纹理特征,从而用于目标检测、图像匹配和图像分割等任务。
在信号处理领域,log特征提取
算子通常用于音频处理和语音识别。
它可以帮助提取音频信号中的
局部特征,从而用于语音识别、音频分类和音乐信息检索等应用。
除了在图像处理和信号处理领域,log特征提取算子也被广泛
应用于其他领域,如医学图像分析、地球物理学和生物信息学等。
它的优点之一是对图像或信号的光照变化和噪声具有一定的鲁棒性,因此在实际应用中具有一定的稳定性和可靠性。
总的来说,log特征提取算子是一种有效的特征提取方法,可
以帮助从图像或信号中提取出有用的局部特征信息,为后续的机器
学习和模式识别任务提供支持。
然而,需要注意的是在实际应用中,需要根据具体的任务和数据特点选择合适的特征提取算子,并结合
其他方法进行综合分析和处理。
图像边缘检测各种算子MATLAB实现以及实际应用

《图像处理中的数学方法》实验报告学生姓名:***教师姓名:曾理学院:数学与统计学院专业:信息与计算科学学号:********联系方式:139****1645梯度和拉普拉斯算子在图像边缘检测中的应用一、数学方法边缘检测最通用的方法是检测灰度值的不连续性,这种不连续性用一阶和二阶导数来检测。
1.(1)一阶导数:一阶导数即为梯度,对于平面上的图像来说,我们只需用到二维函数的梯度,即:∇f=[g xg y]=[ðf ðxðfðy],该向量的幅值:∇f=mag(∇f)=[g x2+g y2]1/2= [(ðf/ðx)2+(ðf/ðy)2]1/2,为简化计算,省略上式平方根,得到近似值∇f≈g x2+g y2;或通过取绝对值来近似,得到:∇f≈|g x|+|g y|。
(2)二阶导数:二阶导数通常用拉普拉斯算子来计算,由二阶微分构成:∇2f(x,y)=ð2f(x,y)ðx2+ð2f(x,y)ðy22.边缘检测的基本思想:(1)寻找灰度的一阶导数的幅度大于某个指定阈值的位置;(2)寻找灰度的二阶导数有零交叉的位置。
3.几种方法简介(1)Sobel边缘检测器:以差分来代替一阶导数。
Sobel边缘检测器使用一个3×3邻域的行和列之间的离散差来计算梯度,其中,每行或每列的中心像素用2来加权,以提供平滑效果。
∇f=[g x2+g y2]1/2={[(z7+2z8+z9)−(z1+2z2+z3)]2+[(z3+2z6+z9)−(z1+2z4+z7)]2}1/2(2)Prewitt边缘检测器:使用下图所示模板来数字化地近似一阶导数。
与Sobel检测器相比,计算上简单一些,但产生的结果中噪声可能会稍微大一些。
g x=(z7+z8+z9)−(z1+z2+z3)g y=(z3+z6+z9)−(z1−z4−z7)(3)Roberts边缘检测器:使用下图所示模板来数字化地将一阶导数近似为相邻像素之间的差,它与前述检测器相比功能有限(非对称,且不能检测多种45°倍数的边缘)。
边缘检测实验报告

边缘检测实验报告 Document number:NOCG-YUNOO-BUYTT-UU986-1986UT图像边缘提取实验报告一、实验目的通过课堂的学习,已经对图像分割的相关理论知识已经有了全面的了解,知道了许多图像分割的算法及算子,了解到不同的算子算法有着不同的优缺点,为了更好更直观地对图像分割进行深入理解,达到理论联系实际的目的,特制定如下的实验。
二、实验原理检测图像边缘信息,可以把图像看做曲面,边缘就是图像的变化最剧烈的位置。
这里所讲的边缘信息包含两个方面:一是边缘的具体位置,即像素的坐标;而是边缘的方向。
微分算子有两个重要性质:定域性(或局部性)、敏感性(或无界性)。
敏感性就是说,它对局部的函数值变化很敏感,但是因其对变化过于敏感又有了天然的缺陷——不能抵抗噪声。
局部性意思是指,每一点的导数只与函数在该点邻近的信息有关。
主要有两大类基于微分算子的边缘检测技术:一阶微分算子边缘检测与二阶微分算子边缘检测。
这些检测技术采用以下的基本步骤:(1) 将相应的微分算子简化为离散的差分格式,进而简化为模板(记为T)。
(2) 利用模板对图像f(m,n)进行运算,获得模板作用后的结果Tf(m,n)。
(3) 提出阈值h,在采用一阶微分算子情形记录下高于某个阈值h 的位置坐标}),(|),{(h n m Tf n m S h ≥=(而采用二阶微分算子情形,一般是对某个阈值0>ε确立}),(|),{(ε≥=n m Tf n m S h )(4) 对集合h S 进行整理,同时调整阈值h 。
Roberts 算子Roberts 算子是一种利用局部差分算子寻找边缘的算子,两个模板分别为⎥⎦⎤⎢⎣⎡-=1001x R ⎥⎦⎤⎢⎣⎡-=0110y R 则,),(j i f R x =)1,1(),(++-j i f j i f),(j i f R y =)1,(),1(+-+j i f j i f算法的步骤为:(1) 首先用两个模板分别对图像作用得到f R x 和f R y ;(2) 对22),(y x R R j i Tf +=,进行阈值判决,若),(j i Tf 大于阈值则相应的点 位于便于边缘处。
一种改进的自适应各向异性LOG算子

一种改进的自适应各向异性LOG算子关斌【摘要】针对经典各向同性高斯-拉普拉斯(LOG)算子在具有方向性差异的场合中不适用的问题,引入多尺度,多角度参量,使之能对各个方向的边缘更加有效地检测,进而提出一种自适应各向异性LOG算子.该方法由独立强度传播(DS)模型调整长轴尺度,由像素的邻域平滑度决定长短轴的比例,然后通过8邻域一阶偏导决定长轴方向.实验表明,与传统LOG算子相比,该算法很好地解决了不同方向边缘的提取,还完全保留了经典LOG算子原有的优点.【期刊名称】《科学技术与工程》【年(卷),期】2010(010)012【总页数】4页(P2992-2994,3007)【关键词】图像处理;高斯-拉普拉斯算子;边缘检测【作者】关斌【作者单位】中南民族大学电子信息工程学院,武汉,430074【正文语种】中文【中图分类】TP391.41传统的高斯-拉普拉斯算子(Laplacian of Gaussian,LOG)在边缘检测中有着广泛的应用,但由于二维高斯函数是关于中心对称的,因此 LOG算子属于各向同性算子,不能对不同方向的边缘进行更有效的检测。
为解决这个问题,不少研究者做了大量的工作,Geusebroek等提出了一种快速各向异性高斯滤波方法[1],这种滤波器通过在两个不同方向上选用不同的高斯尺度,从而使滤波器可以在去噪时较好保留图象边缘等重要信息,并利用高斯函数的可分解性将滤波器沿长轴和短轴方向分解为两个一维滤波算子与图像卷积,使计算简化,但这种滤波器的长短轴长度固定,不能自适应改变。
文献[2]提出了一种基于 LOG算子的自适应图象边缘检测方法,该方法根据各像素位置的灰度梯度值步进搜索出边缘方向,较好地模拟了人眼注视机制的工作过程,并实现了对图像边缘较好的检测。
但该方法的长短轴尺度是依据经验取值得到,不能适应图像边缘的不规律变化。
在文献[2]的基础上,本文结合王怀野等提出的由独立强度传播(Intensity—Dependent—Spread,DS)模型调整长轴尺度,由像素的邻域平滑度决定长短轴的比例的方法,提出了一种改进的自适应各向异性 LOG算子,该算法既保持了 LOG算子本身具有的优点,又增强了它的算法功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实习5
对下图施加高斯噪声,采用LoG 算子对含噪声的图象实施边缘分割,找出该图象的最佳边缘。
原理: 1,图象工程的基本内容:
(1)图像处理的重要任务就是对图像中的对象进行分析和理解。
(2)图像分析主要是对图像中感兴趣的目标进行检测和测量,以获得它们的客观信息,从而建立对图像的描述。
(3)图像理解的重点是在图像分析的基础上,进一步研究图像中各目标的性质和它们之间的相互联系,并得出对原始客观场景的解释,从而指导和规划行动。
在对图像处理的研究和应用中,人们往往仅对图像中的某些部分感兴趣,这些感兴趣的部分常称为目标或对象,它们一般对应图像中特定的、具有独特性质的区域。
图像分割是指根据灰度、彩色、空间纹理、几何形状等特征把图像划分成若干个互不相交的区域,使得这些特征在同一区域内表现出一致性或相似性,而在不同区域间表现出明显的不同,即在一幅图像中把目标从背景中分离出来,以便于进一步处理。
图像分割就是指把图像分成互不重叠的区域并提取出感兴趣目标的技术。
图像分割可借助集合概念用如下方法定义: 令集合R 代表整个图像区域,对R 的分割可看做将R 分成若干个满足以下5个条件的非空的子集(子区域)R1,R2,…,Rn(其中P(Ri)是对所有在集合Ri 中元素的逻辑谓词,Ø是空集):
②对所有的i 和j ,i ≠j ,有Ri ∩Rj =
Ø ③对i =1,2,…,n ,有P(Ri)=TRUE ; ④对i ≠j ,有P(Ri ∪Rj)=FALSE ; ⑤对i =1,2,…,n ,Ri 是连通的区域。
条件①指出对一幅图像的分割结果中全部区域的总和(并集)应能包括图像的所有像素(即原图像);条件②指出分割结果中各个区域是互不重叠的,或者说在分割结果中一个像素不能同时属于两个区域; 条件③指出属于同一个区域的像素应该具有某些相同特性;条件④指出分割结果中属于不同区域的像素应该具有一些不同的特性;条件⑤要求分割结果中同一个区域内的任意两个像素在该区域内互相连通,或者说分割得到的区域是一个连通成分。
图像的分割有很多种类,边缘分割也有很多种类,LoG 算子是其中一类
由于在成像时,一个给定像素所对应的场景点,它的周围点对该点的贡献的光强大小呈正态分布,所以平滑函数应能反映不同远近的周围点对给定像素具有不同的平滑作用,因此,平滑函数采用正态分布的高斯函数,即
式中,s 是方差。
用h(x ,y)对图像f(x ,y)的平滑可表示为
g(x ,y)=h(x ,y)*f(x ,y)
22
22e ),(σy x y x h +-=
如果令r 是离原点的径向距离,即r2=x2+y2,转换,然后对图像g(x ,y)采用拉普拉斯 算子进行边缘检测,可得
2h 称为高斯—拉普拉斯滤波(Laplacian of Gaussian ,LoG)算子,也称为“墨西哥
草帽”。
它是一个轴对称函数,各向同性,它的一个轴截面如图所示。
由图可见,这个函数在r =±s 处有过零点,在|r|<s 时为正,在|r|>s 时为负;可以证明这个算子定义域内的平均值为零,因此将它与图像卷积并不会改变图像的整体动态范围。
但由于它相当光滑,因此将它与图像卷积会模糊图像,并且其模糊程度是正比于s 的。
2h 2h 检测过零点能提供较可靠的边缘位置。
在该算子中,s 的选择很重要,s 小时边缘位置精度高,但边缘细节变化多;s 大时平滑作用大,但细节损失大,边缘点定位精度低。
应根据噪声水平和边缘点定位精度要求适当选取s 。
LoG 算子用到的卷积模板一般较大(典型半径为8~32 个像素),不过这些模板可以分解为一维卷积来快速计算。
通过判断零交叉点及其两侧像素符号的变化来确定边缘点。
边缘点两侧的二阶微分是异号的,且正号对应边像点的暗侧,负号对应边像点的亮侧,两侧的符号指示着边缘的起伏走向。
LoG 算子可表示为:
程序代码: I=imread('C:\Documents and Settings\os\桌面\DIP-E5分割\p5-04.tif'); a=[0.0027,0.0331,0.069,0.0331,0.0027;0.0331,0.1793,0.0098,0.1793,0.0331;0.0690,0.00),(*),(),(*e )]
,(*),([),(224222222y x f y x h y x f r y x f y x h y x g r ∇=⎪⎪⎭⎫ ⎝⎛--=∇=∇-σσ
σ⎥⎥⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎢⎢⎣⎡----------------244424080448*24844080424442
98,-1.3257,0.0098,0.0690;0.0331,0.1793,0.0098,0.1793,0.0331;0.0027,0.0331,0.069,0.0 331,0.0027];
c=conv2(a,I);
figure;imshow(c)
d=[-2,-4,-4,-4,-2;-4,0,8,0,-4;-4,8,24,9,-4;-4,0,8,0,-4;-2,-4,-4,-4,-2]
e=conv2(I,d);
figure;imshow(e)
图片:
若对图像进行锐化,则有如下效果:
代码二:I=imread('C:\Documents and Settings\os\桌面\DIP-E5分割\p5-04.tif');%读入图像 subplot(2,2,1),imshow(I);title('原图像');
J=imnoise(I,'gaussian',0,0.02);
subplot(2,2,2);imshow(J); %显示 sobel 算子锐化图像
title('高斯噪声');
H1=fspecial('log',10,2); %应用 log 算子锐化图像
I1=filter2(H1,I);
subplot(2,2,4);imshow(I1);%显示 log 算子锐化图像
title('log 10,0.2');
H2=fspecial('log',10,0.2); %应用 log 算子锐化图像
I2=filter2(H2,I);
subplot(2,2,3);imshow(I2);%显示 log 算子锐化图像title('log 10,2');
图片:。