您现在的位置:首页 >> 技术文章 >> 图像语音处理 >> 内容

图像阴影检测方法研究

时间:2019-1-24 20:35:35 点击:

  核心提示:阴影在图像中普遍存在,它严重影响图像处理的后期工作,如图像分割和图像匹配等。为此必须先对图像阴影进行去除。阴影种类繁多,有基于几何特性的,有基于阴影灰度性质(如阴影边缘灰度渐变、突变,阴影分布是否均匀)的,还有基于阴影形成原因的,但目前没有一种通用的阴影去除方法能对所有的阴影有理想的处理效果,所以必...

图像阴影检测方法研究

  阴影在图像中普遍存在,它严重影响图像处理的后期工作,如图像分割和图像匹配等。为此必须先对图像阴影进行去除。阴影种类繁多,有基于几何特性的,有基于阴影灰度性质(如阴影边缘灰度渐变、突变,阴影分布是否均匀)的,还有基于阴影形成原因的,但目前没有一种通用的阴影去除方法能对所有的阴影有理想的处理效果,所以必须对不同类型的阴影采用不同的处理方法。本文提出了将阴影分类的思想,但前提是先对阴影进行检测。近年来,解决阴影检测和识别的方法已有不少文章,如JiangWard提出了基于阴影强度与几何特性的阴影检测方法,即在阴影的检测过程中采用3层:低层、中层与高层。在低层处理时从图像中提取暗区域;中层则对暗区域进行特征分析,包括检测暗区域轮廓顶(vertices),确认暗区域中的半影(penumbrae),将暗区域分成自阴影和投影阴影以及确定与暗区域相邻的物体区域;高层则结合前两层结果,从暗区域中确认阴影。Salvador等人基于彩色不变模型确定并归类阴影
  以上阴影检测方法都存在局限性,需要满足一定的假设条件,如场景中仅有一个光元,阴影位于相对平坦的区域,或者有某种不因阴影而改变的彩色不变量等。本文采用基于粗糙集阴影边缘点分类的方法,较好地实现了阴影边缘的检测。
1
基于等价关系的子图像划分
  对于一幅灰度级数为LM×N个像素组成的二维图像U,设像素xU中的一个对象,称知识库(知识系统)K=(UR)为一个图像近似空间。考虑中心像素为w(ij)=f(xy)3×3窗口,如式(1):
   http://files.chinaaet.com/old/uploadfiles/jishu/jslw/20080331052621250.gif
  移动该窗口,使所有像素都依次置于该窗口的中心位置。计算像素点w(ij)的梯度Ixy=(|ΔX|+|ΔY|),其中
   http://files.chinaaet.com/old/uploadfiles/jishu/jslw/20080331052632640.gif
  f(xy)为原图像,g(xy)为处理后的梯度图像。
  粗糙集理论[3]中有两种属性:条件属性和决策属性。为了有目的地区别处理图像中某类阴影,定义条件属性集C={c1c2c3},其中c1是非阴影噪声属性,c2是像素的梯度大小属性,c3是邻域最大灰度属性。
  噪声属性c1={01},其中0代表1×1(单个像素)或3×3像素组成子块p的平均灰度值与相邻子块平均灰度值之差的绝对值均小于某一阈值T1代表子块的差值绝对值均大于T。像素梯度的属性c2={01},其中0代表像素梯度满足A<I(XY)<B1代表像素梯度I(XY)B,其中AB是某一给定阈值。最大邻域灰度差属性C3={01},此处既利用了像素本身的灰度值,又利用了其邻域信息,设C(XY)={F(X-IY-J)|-(N-1) 2}表示图像中大小为n×n的窗口,f(xy)表示坐标为(xy)的点的灰度值,n为奇数,则定义邻域函数为
   http://files.chinaaet.com/old/uploadfiles/jishu/jslw/20080331053338203.gif
  其中0代表邻域最大灰度差C<H(XY)<D1代表H(XY)DCD为某一给定的阈值。
  子图的划分就是利用不可分辨关系的等价概念,按属性C分类。
  (1)根据C1划分子图
  定义等价关系Rc1为:子块Pij与相邻子块的平均灰度值E(P)之差的绝对值取整均大于某一阈值T,即:
   http://files.chinaaet.com/old/uploadfiles/jishu/jslw/20080331053441187.gif
  式中Pi±1j±1表示与Pij相邻的子块,Rc1(P)表示所有孤立噪声或小块的非阴影噪声像素组成的集合。
  (2)根据C2划分子图
  设x代表梯度“较大”的像素,等价关系Rc2定义为:如果两个像素的梯度值属于同一范围,则两个像素是Rc2相关的,即属于等价类,用公式表示为:
  Rc2(x)={x|I(xy)>B}       (6)
  B是一阈值,Rc2(x)表示所有梯度较大的像素x组成的集合。
  (3)根据C3划分子图
  设s代表最大邻域差较大的元素,等价关系Rc3定义为:如果两个像素的最大邻域差值属于同一范围,则两个像素是Rc3相关的,即属于等价类,用公式表示为:
  Rc3(s)={s|I(st)>D}        (7)
  D是一阈值,Rc3(s)表示所有最大邻域差较大的像素s组成的集合。
  对上述两个集合除噪,可以避免明显的假边缘点。即A1=Rc2(x)-Rc1(p)A2=Rc3(s)-Rc1(p)A1表示剔除噪声后,所有像素中梯度大的像素x组成的集合。A2表示剔除噪声后,  所有像素的最大邻域差值大的像素s组成的集合。A1A2即为需要的像素集合。
2
阴影边缘的提取
  提取边缘的方法很多,近年来又有不少新方法,在本文中,使用像素属性分类的方法来检测图像的边缘。
2.1
基于边缘点分类
  假设:阴影区域和非阴影区域存在着一个过渡带,即认为边缘是有宽度的。本文选用海边沙石阴影图像来分析,将阴影分为两部分,一部分为图像外的物体(例如树)的投影(以下简称为外阴影),另一部分为目标自身阴影及目标之间的投影(以下简称为内阴影)。
  (1)外阴影与内阴影的灰度相差较大
  通过大量图像发现:外阴影的平均灰度要比内阴影的平均灰度低,在同一浅色背景下表现为对比度大些。此时对上面求得的集合A1A2分别求I(xy)H(xy),在A1中,A<I(XY)<H(xy)  (2)外阴影与内阴影的灰度相差不大
  这样求得的I(xy)H(xy)不能分为两个较明显的区间,此时仅求H(xy)即可。
2.2
部分假边缘点的处理
  对于上述的情况(1),如果外阴影和内阴影分布不均匀,即外阴影内部某些点的I(xy)H(xy)恰好属于内阴影边缘点的I(xy)H(xy),这时会误判。此时应在内阴影的M(R)中去掉这些点,方法如下:对内阴影边缘点集M(R)逐一进行统计,使该点向四周移动,若都能碰到属于外阴影边缘高梯度点(梯度大于或等于B的点)或高最大邻域灰度差的点(最大邻域灰度差大于或等于D的点),则该点是外阴影的内部点,将其从内阴影边缘点集M(R)中去掉。注意:之所以使外阴影内部点向四周移动,是因为内阴影的边缘点沿着某个方向也可能会碰到高梯度点。同理,可将外阴影边缘点集中的假点去除掉,这样,剩下的点均为真正的边缘点了。
2.3
边缘的细化与边界跟踪
  以上分析均假设边缘是有宽度的,为了更精确地检测边缘,需要对边缘进行细化[4],即把边缘的宽度变为1个像素。方法是:在边缘的法向上(从边缘一侧高灰度邻域指向另一侧低灰度邻域且与边缘垂直的线称为边缘法线),边缘点的梯度是最大的。如果两个边缘点的梯度与方向相同,而且相互位于法向上,保留最大邻域差较大的点。经过这样的处理后,就可以得到较高定位精度的细化边缘。
  经过以上处理后,得到一系列离散的边缘点。因为图像中有意义的边缘点都有一定的连续性,因此实际边缘应该是这些离散边缘点按照一定的空间关系连接起来的点序列。也就是说,为了把点连接成线,需要建立一个三叉树,每个结点最多有三个后继点,最多一个前趋点,还留有一个标志位,后继点表示当前点所在线的下一个点,它与当前点满足下面的关系[5]
  (1)空间位置上相邻,即两者必须互为8邻域点。
  (2)方向上相同,因为它们位于同一线上,因此方向应该一致。考虑到各种因素的影响,规定它们的方向之差的绝对值应小于45°。
  (3)不分叉性。两个点的连线方向与两个点的边缘方向的夹角小于45°。每个点最多可能有3个后继点,即该点方向所指的那个邻域点,以及在8个离散方向中最接近该方向的其他两个方向(分别位于该方向的两侧)所指的邻域点。
  连接的过程是依次检查M(R)N(S)中的每个像素点,根据不同的方向,判断它的前趋点和后继点。具体步骤如下:(1)根据空间位置相邻和不分叉性,确定候选后继点。(2)根据方向相同性,在候选后继点中去掉那些方向差之绝对值大于45°的点。(3)根据不同的情况,给后继点和前趋点设置不同的值。
  给每个边缘点确定了前趋点和后继点之后,即可从边线的起点出发,依次得到直线上的每个像素点了。该过程称为边界跟踪,即对每条直线进行标注。一条边界线的所有点具有相同的标志号(可以是按某种规则制定的记号)。对二组图像进行阴影处理,分别如图1和图2所示。图1(c)和图2(c)分别是用本文对图1(a)、图2(a)求得的阴影边缘图像。

http://files.chinaaet.com/old/uploadfiles/jishu/jslw/20080331053717671.gif

3 实验结果和分析
  用多幅图像进行实验,结果表明,本文提出的算法效果较好。图1(a)和图2(a)是两幅海边沙滩原始图像,为说明本文算法的优点,实验给出了应用常规方法得到的图像,如图1(b)和图2(b)所示。
  常规边缘检测方法大都基于单一的微分技术来确定图像的边缘,是一种相对简单的算法。从图1(b)、图1(c)的边缘图像可以看出,常规方法不如本文算法,从人的视觉来看,新算法处理的图像边缘明显精确一些,常规算法处理的图像边缘有些模糊,而且有些地方未检测到。边缘检测实验取子块pij为一个像素,n=3,阈值T=60Rc2(x)中的阈值B=80Rc3(s)中的阈值D=40。通过实验,可以看出新算法优于常规算法。
  阴影普遍存在于各类图像中,本文首先利用基于粗糙集分类方法求得边缘点,在此过程中,使用了一种去除假边缘点的方法,利用最大邻域灰度差及边缘梯度,既得到了真正的边缘点又去除了噪声,然后对边缘点进行了细化和跟踪,得到了单宽度的阴影边缘。对这些边缘进行分类将是下一步的目标。

-------------------------------------------------------------------------------------

专业,代做,代写,承接,MATLAB,SIMULINK,FPGA项目,博士,硕士,本科,毕业设计,课题设计,论文,

期刊,毕业论文,杂志,Coursework,Eassy,Assignment,ISE,QuartusII,Vivado,PlanAhead,

SystemGenerator,Verilog,VHDL,VRML,DSPBuilder,EDK,SDK,MaxplusII,PowerPC,Microblaze

专业代做/代写/承接、MATLAB、SIMULINK、FPGA项目、博士/硕士/本科毕业设计、课题设计、

论文,毕业论文,Coursework、Eassy、Assignment

QQ:122 4848 052

作者:网络 来源:网络
  • 您是如何找到本站的?
  • 百度搜索
  • Google搜索
  • 查阅资料过程中
  • 论坛发现
  • 百度贴吧发现
  • 朋友介绍
本站最新成功开发工程项目案例
相关评论
发表我的评论
  • 大名:
  • 内容:
  • matlab代做|matlab专业代做|matlab淘宝代做(www.hslogic.com) © 2019 版权所有 All Rights Reserved.
  • Email:highspeed_logic@163.com 站长QQ: 1224848052

    专业代做/代写/承接、MATLAB、SIMULINK、FPGA项目、博士/硕士/本科毕业设计、课题设计、论文,毕业论文,Coursework、Eassy、Assignment