一种无参考图像模糊度估计新方法

文档序号:6626216阅读:195来源:国知局
一种无参考图像模糊度估计新方法
【专利摘要】本发明公开了一种无参考图像模糊度估计新方法,涉及图像处理中的像素域无参考图像质量评价领域,具体涉及一种基于图像边缘长度和边缘宽度的无参考图像模糊度估计方法。本发明通过提出一种利用图像边缘长度和图像边缘宽度联合对图像模糊度进行估计的方法,较为准确地对各种图像的模糊度进行估计。本发明提出了一种简单有效的将边缘图像分割为独立的边缘线的方法。与传统计算边缘宽度不同,本发明每隔多个点计算一次边缘宽度,有效的减少了运算量。通过相邻边缘点的位置来判断边缘方向,并沿着垂直与边缘的方向计算边缘宽度。本发明方法与目前性能较好的基于边缘梯度和边缘宽度的估计方法相比拟合度明显提高。
【专利说明】一种无参考图像模糊度估计新方法

【技术领域】
[0001 ] 本发明涉及像素域无参考图像质量评价领域,具体涉及一种基于图像边缘长度和边缘宽度的无参考图像模糊度估计方法。

【背景技术】
[0002]随着网络多媒体技术的不断发展,人们可以通过各种途径方便地获取海量的图像和视频等视觉信息。然而人们观看到的一幅图像或者一段视频往往已经经过了许多个阶段的处理,每个阶段的处理都有可能引入图像失真。比如摄像图采集视频时往往会受到噪声、对焦不准、摄像头运动等影响。为了节约传输带宽和存储空间,采集到的视频会被压缩,这同样会产生一定的失真。图像或者视频数据在传输时由于信道的限制也会产生丢包、延时等失真。
[0003]因此,度量图像的失真程度成为一个迫切需要解决的问题。通过测试员对图像进行主观打分的主观评价方法可以较为准确地判定图像质量。然而我们一般需要的是能够嵌入系统里面对图像进行质量评价的方法,这就需要对客观图像质量评价方法进行研究。
[0004]客观图像质量评价方法主要分为全参考图像质量评价、部分参考图像质量评价以及无参考图像质量评价三种方法,前两种方法都对失真图像对应的原始图像有一定程度的依赖,而无参考图像质量评价不需要原始图像的任何先验信息,直接对失真图像进行质量评价。由于在很多实际应用场合中很难获取原始图像作为参考,无参考图像质量评价在近年来获得广泛的关注,虽然目前有一些研究进展,但远远不能满足实际需求。
[0005]由于目前人们对人类视觉系统和相应的大脑认知过程的认识不足,无参考图像质量评价的研究遇到极大的挑战,目前无参考图像质量评价主要有利用图像的某些统计特征、针对特定的失真类型和失真过程、基于人类视觉系统等几个大方向。然而由于通过图像的统计特征进行图像质量评价的方法往往需要复杂的变换和统计,而且很难对应有明确的物理意义。而人类对于大脑的有限研究也限制了基于人类视觉系统的图像质量评价方法的效果。因此针对特定失真类型的无参考图像质量评价方法成为了研究的热点。由于模糊在各种图像中的广泛出现,因此图像模糊度估计是针对特定失真类型的无参考图像质量评价领域的主要研究方向。
[0006]对于无参考模糊度估计,人们做了很多的相关工作。谢小甫等人提出了一种基于梯度图像和SSIM的模糊度估计方法[I];张东提出了一种基于自然图像统计的无参考图像质量评价方法[2] ;Marzilian等人提出了基于边缘宽度的图像质量评价方法[3];Caviedes等人通过DCT系数的统计规律衡量模糊度[4]。在以上所述的各种方法中,Marzilian等人提出的基于边缘宽度的方法影响最深,很多人基于他们的研究提出了许多改进方法。如Ong等人先计算边缘点的梯度方向,再沿着边缘点的梯度方向计算边缘宽度,Xin Wang等人利用边缘两侧的像素亮度差和边缘宽度的比值定义边缘斜率这一指标,并用其衡量图像模糊程度等等。这些基于计算边缘宽度衡量图像模糊度的方法取得了较其他方法取得了较好地效果,并且有着明确的物理意义,另外计算较为简单,耗时不高,可以说性能较为出色。
[0007]然而图像的模糊程度显然不仅仅和边缘的宽度有关单纯基于边缘宽度进行模糊程度估计的结果并不能达到最好。因此本发明提出一种基于边缘长度和边缘宽度的联合图像模糊度估计方法。本发明不但将边缘长度应用于图像模糊度评价,也提出了一种简单有效的将边缘图像分割为独立的边缘线的方法。而且,与传统计算边缘宽度不同的是,本方法认为距离相近边缘点的边缘宽度也是变化不大的,为此每隔多个点才计算一次边缘宽度,减少了运算量。另外,本方法通过相邻边缘点的位置来判断边缘方向,并沿着垂直与边缘的方向计算边缘宽度。
[0008]为了比较本发明提出方法和其他方法的性能。我们利用LIVE图像数据库中的图像进行测试。该图像数据库由美国德州大学奥斯汀分校LIVE实验室的图像质量评价研究人员提供。LIVE图像数据库中图像的主观分数是严格依照国际电信联盟下属的视频质量专家组制定的视频质量评价标准进行实验得到的。
[0009]参考文献
[0010][I]谢小甫,周进,吴钦章.一种针对图像模糊的无参考质量评价指标[J].计算机应用.2010,30(4):921-924.
[0011][2]张东,自然图像统计在图像处理领域的应用[D].2013.
[0012][3]Marziliano, Pina, et al.no-reference perceptual blur metric.^ImageProcessing.2002.Proceedings.2002 Internat1nal Conference on.Vol.3.1EEE, 2002.
[0013][4]Caviedes, Jorge, and Sabri Gurbuz.^No-reference sharpness metricbased on local edge kurtosis.〃Image Processing.2002.Proceedings.2002Internat1nal Conference on.Vol.3.1EEE, 2002.


【发明内容】

[0014]本发明通过提出一种利用图像边缘长度和图像边缘宽度联合对图像模糊度进行估计的方法,较为准确地对各种图像的模糊度进行估计。本方法与目前性能较好的基于边缘梯度和边缘宽度的估计方法相比,在LIVE图像数据库中的拟合度明显提高。本发明的最主要的创新点就是将边缘长度应用于图像模糊程度评价。
[0015]一种无参考图像模糊度估计新方法,其特征在于包括如下步骤:
[0016]步骤1:读取图像数据,并对其进行预处理。彩色图像的数据为R、G、B或Y、CB、CK ;黑白图像数据为Y。这里R、G、B分别代像素的红、绿、蓝三基色值,Y代表像素的亮度值,CB、Ce分别代像素的蓝色差值和红色差值。
[0017]步骤1.1:读取图像数据,将每个像素的亮度数据Y提取出来,以矩阵的形式存入内存中,组成亮度图像,矩阵大小和图像大小相等,矩阵中各元素的值分别代表相应位置图像像素的亮度值。
[0018]步骤1.2:为了使得边缘长度和边缘宽度可以衡量不同分辨率的图像,通过双线性插值方法将亮度图像的尺寸变换为512x512。
[0019]步骤1.3:利用canny算子提取图像边缘,得到代表原始亮度图像边缘的边缘图像。
[0020]步骤2:对边缘图像进行分割处理,将其分割成多条边缘线,包括如下步骤:
[0021]步骤2.1:对边缘线的个数i进行计数,初始为i = 0,如果从边缘图像中获取了一个有效的边缘线起始点,则边缘线个数的计数i加I,并初始化第i条边缘线的长度j为1,将边缘线起始点作为当前点,然后将该当前点标记为第i条边缘线的第j个点。如果没有获取到有效的边缘线起始点,则转至步骤2.4。
[0022]步骤2.2:获取和当前点相邻的有效边缘点,如果没有获取到相邻的有效边缘点,则转至步骤2.1。
[0023]步骤2.3:将边缘线长度计数j加1,将获取的相邻点作为新的当前点,并将该点标记为第i条边缘线的第j个点,然后返回步骤2.2,继续获取下一个相邻的有效边缘点。
[0024]步骤2.4:由于环形边缘线没有起始点,为了标识出环形边缘线,随机选取一个有效的边缘点作为环形边缘线的起始点,然后按照步骤2.1至2.3的方法查找出所有环形边缘线。
[0025]步骤3:对获取的边缘线进行处理,得到各边缘线对应的长度和平均宽度,并利用其估计原始图像的模糊度。
[0026]步骤3.1:根据边缘线长度计数j获取每条边缘线的长度;如果长度小于10,则认为该边缘线对图像模糊度没有影响,因此剔除边缘长度小于10的边缘线。
[0027]步骤3.2:对边缘线上的点进行抽样,每隔5个点计算一次边缘宽度,计算与当前点在同一边缘线上并且相隔两个像素的两个点的坐标,利用这两点的坐标计算边缘的斜率,在与边缘垂直的方向上寻找亮度图像像素值的两个极值点,这两极值点的距离即为边缘宽度。
[0028]步骤3.3:对各取样点计算得到的边缘宽度进行平均,得到各边缘线的平均宽度。
[0029]步骤4:依据边缘线的长度和平均宽度求得模糊测度,方法如下:
[0030]步骤4.1:遍历所有长度大于10的边缘线中的边缘点,求各边缘点的模糊度指标a, a的计算方法如下:a = WidthX Ig(Lenth),其中Width表示该点所在边缘线的平均宽度,Lenth表示该点所在边缘线的长度。
[0031 ] 步骤4.2:对步骤4.1求出的所有a取平均值,得到a,a的大小表明图像模糊程度。
[0032]所述的边缘线,其特征在于,其是若干相邻的边缘点的集合,并且边缘线上的边缘点,除了两个端点外,有且仅有两个相邻的边缘点。
[0033]所述的边缘线起始点,其特征在于:边缘线的起始点指的是首个被包含到该边缘线中的边缘点,边缘线起始点的相邻边缘点数不为2。
[0034]所述的有效,其特征在于,边缘点有效指的是该边缘点可以被当前边缘线包含。对于不是边缘线端点的缘边点,如果该边缘点没有被其他边缘线包含,则该边缘点有效;对于位于边缘线端点的边缘点,如果该边缘点被其他边缘线包含的次数小于该边缘点的相邻边缘点数,则该边缘点有效。
[0035]本发明与现有技术相比,具有以下明显的优势和有益效果:
[0036]本发明通过提出一种利用图像边缘长度和图像边缘宽度联合对图像模糊度进行估计的方法,较为准确地对各种图像的模糊度进行估计。本方法与目前性能较好的基于边缘梯度和边缘宽度的估计方法相比,在LIVE图像数据库中的拟合度明显提高。本发明的最主要的创新点就是将边缘长度应用于图像模糊程度评价,其它方面的创新主要如下:
[0037]1:提出了一种简单有效的将边缘图像分割为独立的边缘线的方法。
[0038]2:与传统计算边缘宽度不同,本方法认为距离相近边缘点的边缘宽度是变化不大的,为此每隔多个点才计算一次边缘宽度,减少了运算量。
[0039]3:本方法通过相邻边缘点的位置来判断边缘方向,并沿着垂直与边缘的方向计算边缘宽度。

【专利附图】

【附图说明】
[0040]图1本发明方法的整体流程图;
[0041]图2将边缘图分割为边缘线的具体流程图;
[0042]图3进行图像边缘平均宽度和边缘长度计算的具体流程图;
[0043]图4本发明方法在LIVE图像数据库中的拟合程度;
[0044]图5利用边缘宽度进行模糊程度估计方法在LIVE图像数据库中的拟合程度。

【具体实施方式】
[0045]为了对比本发明方法和其他方法的性能,测试使用LIVE图像数据库作为测试图像,以MATLAB7.0作为实现平台,计算机内存4GB,处理器为Intel (R)Core (TM) i5-2400CPUi3.1OGHz0为了计算边缘的长度,本方法定义了一种叫做边缘线的线条。边缘线是一群相邻的边缘点的集合。并且边缘线上的边缘点(两个端点除外)有且仅有两个相邻的边缘点,这种定义保证了分割得到的边缘线没有分叉且方法简单。
[0046]本方法在MATLAB中的具体实施步骤如下:(步骤中使用的函数的实现方法会在下文给出)
[0047]步骤1:定义全局变量、读取图像数据并对其进行预处理:
[0048]定义矩阵EdgeMap,大小为512x512,存储边缘图像。EdgeMap (i,j)为I表示点(i, j)为边缘点;EdgeMap(i, j)为O表示点(i, j)为非边缘点;
[0049]定义矩阵Flag,大小为512x512,存储边缘点被其他边缘线使用的次数。Flag(i, j)为O表示没有被其他边缘线使用过,为I表示被其他边缘线使用过I次,依次类推;
[0050]定义矩阵NebNum,大小为512x512,存储相邻边缘点的个数;
[0051]定义元胞数组LineR,存储各边缘线所包含的边缘点的纵坐标。LineR{i} (j)存储第i条边缘线所包含的第j个边缘点的纵坐标;
[0052]定义元胞数组LineC,存储各边缘线所包含的边缘点的横坐标。LineC {i} (j)存储第i条边缘线所包含的第j个边缘点的横坐标;
[0053]通过imreadO函数读取待评价图像,通过rgb2gray O函数将其转换为亮度图像;利用imresizeO函数将图像尺寸变为512x512,差值方法为双线性插值;对预处理后的图像利用canny算子求边缘,将边缘图像存入EdgeMap ;遍历所有边缘点,求各边缘点的相邻边缘点个数,存入NebNum。
[0054]步骤2:对边缘图像进行分割处理,将其分割成多条边缘线,包括如下步骤:
[0055]步骤2.1:通过getStPtO函数获取边缘线的起始点StPt。如果成功获取,则边缘线个数计数i加I,边缘线长度计数j初始化为I,将起始点点StPt作为当前点CurPt,把当前点的纵坐标和横坐标分别存入LineR{i} (j)和LineC{i} (j)。如果获取起始点失败,则转至步骤2.3。
[0056]步骤2.2:通过getNxtPt O函数获取当前点的有效相邻边缘点NxtPt。如果成功获取,则将相邻边缘点作为当前点。并将边缘线长度j加I,把当前点的纵坐标和横坐标分别存入LineR{i} (j)和LineC {i} (j)然后转至步骤2.2继续获取下一个相邻边缘点。如果获取失败,则转至步骤2.1。
[0057]步骤2.3:通过getRandPtO函数随机获取一个有效边缘点作为环形边缘线的起始点。如果成功获取,则边缘线个数计数i加I,边缘线长度计数j初始化为I,将起始点StPt作为当前点CurPt,把当前点的纵坐标和横坐标分别存入LineRU} (j)和LineC{i}(j)。如果获取起始点失败,则表示所有边缘线已经被找出,转至步骤3。
[0058]步骤2.4:通过getNxtPt O函数获取当前点的有效相邻边缘点NxtPt。如果成功获取,则将相邻边缘点作为当前点。并将边缘线长度j加I,把当前点的纵坐标和横坐标分别存入LineRU} (j)和LineC{i} (j)然后转至步骤2.4继续获取下一个相邻边缘点。如果获取失败,则转至步骤2.3。
[0059]步骤3:对获取的边缘线进行处理,得到各边缘线对应的长度和平均宽度。
[0060]步骤3.1:定义元胞数组Width,大小为边缘线的个数。用以存储各边缘线上取样点的边缘宽度。Width {i} (j)表示第i条边缘线的第j个取样点的边缘宽度。在边缘线上每隔5个边缘点设一个取样点用以计算边缘宽度。
[0061]步骤3.2:遍历所有边缘线,通过数组LineRU}的长度获取第i条边缘线的长度,如果边缘线的长度小于10,则跳过该边缘线。否则,对该边缘线每隔5个边缘点取出一个抽样点,记取样点的坐标为P(LineR{i} (j),LineC{i} (j));然后获取与取样点相邻两像素的在同一边缘线上的边缘点Pl (LineRU} (j_2),LineC{i} (j-2))和P2 (LineR{i}(j+2), LineC{i} (j+2)),通过Pl和P2点的坐标计算出取样点P附近的边缘方向,并将其近似为{0°,45° ,90° ,135° }四个角度中的一个。然后利用getWidthO函数计算该取样点P的边缘宽度。并把第i条边缘线上的第k个取样点的边缘宽度存入Width {i} (k)。
[0062]步骤3.3:遍历所有长度大于10的边缘线,根据各个取样点的边缘宽度求出各边缘线的平均宽度。
[0063]步骤4:依据边缘线的长度和平均宽度求得模糊测度,方法如下:
[0064]步骤4.1:遍历所有长度大于10的边缘线中的边缘点,求各边缘点的模糊度指标a, a的计算方法如下:
[0065]a = WidthX Ig(Lenth),其中Width表示该点所在边缘线的平均宽度,Lenth表示该点所在边缘线的长度;
[0066]步骤4.2:对步骤4.1求出的所有a取平均值,得到a,a的大小表明图像模糊程度。
[0067]以上实施步骤中各个函数的具体流程如下:
[0068]getStPt O 函数
[0069]实现方法:遍历所有边缘点,如果某边缘点对应的Flag小于NebNum(变量的定义见具体步骤的步骤I)并且NebNum的值不等于2,则将该边缘点的坐标返回,否则继续判断下一边缘点。如果遍历所有边缘点也没有找到合适的边缘点,则返回(-1,-D表示获取失败。
[0070]getNxtPt O 函数
[0071]实现方法:如果当前点的NebNum大于等于3,则返回(_1,-1)表示获取失败。否贝1J,遍历所有相邻的8个点,如果某点为边缘点并且其对应的Flag小于NebNum,则将该点的坐标返回。并将该点对应的Flag加1,如果NebNum为2,则Flag继续加I。如果遍历所有8个点也没有找到合适的边缘点,则返回(-1,-1)。NebNum为2的边缘点对应的Flag继续加I的原因是NebNum为2的边缘点只能被边缘线使用I次。
[0072]getRandPt O 函数
[0073]实现方法:遍历所有边缘点,如果某边缘点对应的Flag小于NebNum,则将该边缘点的坐标返回,否则继续判断下一边缘点。如果遍历所有边缘点也没有找到合适的边缘点,则返回(_1,-1)表示获取失败。
[0074]getffidth ()函数
[0075]实现方法:判断取样点的边缘方向,以边缘点为中心,按照垂直于边缘的方向向两侧分别寻找相应像素值的极值(极大值和极小值均可)。并记录两侧的极值点的坐标
Pi (XI,yi),P2 (x2, y2)。根据d =+ (yl-ylf计算出极值点的距离d作为边缘宽度。
[0076]为了验证本发明提出方法的性能,我们利用本方法对LIVE图像数据库的145幅不同程度的模糊图像进行客观打分,并和这145幅图像的主观分数进行拟合。拟合效果见图
4,拟合公式为Dmos = 0.012 x(A) ~2,Dmos表示图像的主观得分,A表示本方法计算得到的客观得分。皮尔森相关系数为93.5%。
[0077]作为对比,我们还利用仅基于边缘宽度进行模糊度估计的方法对LIVE图像数据库中的145幅不同程度的模糊图像进行打分,并和这145幅图像的主观分数进行拟合。拟合效果见图5,其拟合公式为Dmos = 0.0044 x (Width) "2.4,Dmos表示图像的主观得分,Width表示基于边缘宽度的模糊度估计方法计算得到的客观得分。皮尔森相关系数为81.8%。
[0078]由图4和图5可以明显看出本发明提出的方法要明显优于仅基于边缘宽度进行模糊度估计的传统方法。
[0079]最后应说明的是:以上示例仅用以说明本发明而并非限制本发明所描述的技术方案;因此,尽管本说明书参照上述的示例对本发明已进行了详细的说明,但是本领域的普通技术人员应当理解,仍然可以对本发明进行修改或等同替换;而一切不脱离发明的精神和范围的技术方案及其改进,其均应涵盖在本发明的权利要求范围当中。
【权利要求】
1.一种无参考图像模糊度估计新方法,其特征在于包括如下步骤: 步骤1:读取图像数据,并对其进行预处理,彩色图像的数据为R、G、B*Y、Cb、Ck ;黑白图像数据为Y,其中R、G、B分别代像素的红、绿、蓝三基色值,Y代表像素的亮度值,CB, Ce分别代像素的蓝色差值和红色差值; 步骤1.1:读取图像数据,将每个像素的亮度数据Y提取出来,以矩阵的形式存入内存中,组成亮度图像,矩阵大小和图像大小相等,矩阵中各元素的值分别代表相应位置图像像素的亮度值; 步骤1.2:使用双线性插值方法将亮度图像的尺寸变换为512x512 ; 步骤1.3:利用canny算子提取图像边缘,得到代表原始亮度图像边缘的边缘图像; 步骤2:对边缘图像进行分割处理,将其分割成多条边缘线,包括如下步骤: 步骤2.1:对边缘线的个数i进行计数,初始为i = O,如果从边缘图像中获取了一个有效的边缘线起始点,则边缘线个数的计数i加I,并初始化第i条边缘线的长度j为1,将边缘线起始点作为当前点,然后将该当前点标记为第i条边缘线的第j个点,如果没有获取到有效的边缘线起始点,则转至步骤2.4 ; 步骤2.2:获取和当前点相邻的有效边缘点,如果没有获取到相邻的有效边缘点,则转至步骤2.1 ; 步骤2.3:将边缘线长度计数j加1,将获取的相邻点作为新的当前点,并将该点标记为第i条边缘线的第j个点,然后返回步骤2.2,继续获取下一个相邻的有效边缘点; 步骤2.4:由于环形边缘线没有起始点,为了标识出环形边缘线,随机选取一个有效的边缘点作为环形边缘线的起始点,然后按照步骤2.1至2.3的方法查找出所有环形边缘线.步骤3:对获取的边缘线进行处理,得到各边缘线对应的长度和平均宽度,并利用其估计原始图像的模糊度; 步骤3.1:根据边缘线长度计数j获取每条边缘线的长度;如果长度小于10,则认为该边缘线对图像模糊度没有影响,因此剔除边缘长度小于10的边缘线; 步骤3.2:对边缘线上的点进行抽样,每隔5个点计算一次边缘宽度,计算与当前点在同一边缘线上并且相隔两个像素的两个点的坐标,利用这两点的坐标计算边缘的斜率,在与边缘垂直的方向上寻找亮度图像像素值的两个极值点,这两极值点的距离即为边缘宽度; 步骤3.3:对各取样点计算得到的边缘宽度进行平均,得到各边缘线的平均宽度; 步骤4:依据边缘线的长度和平均宽度求得模糊测度,方法如下: 步骤4.1:遍历所有长度大于10的边缘线中的边缘点,求各边缘点的模糊度指标a,a的计算方法如下:a = WidthX Ig(Lenth),其中Width表示该点所在边缘线的平均宽度,Lenth表示该点所在边缘线的长度; 步骤4.2:对步骤4.1求出的所有a取平均值,得到a,a的大小表明图像模糊程度。
2.根据权利要求1所述的边缘线,其特征在于,其是若干相邻的边缘点的集合,并且边缘线上的边缘点,除了两个端点外,有且仅有两个相邻的边缘点。
3.根据权利要求1所述的边缘线起始点,其特征在于,边缘线的起始点指的是首个被包含到该边缘线中的边缘点,边缘线起始点的相邻边缘点数不为2。
4.根据权利要求1所述的有效,其特征在于,边缘点有效指的是该边缘点可以被当前边缘线包含;对于不是边缘线端点的缘边点,如果该边缘点没有被其他边缘线包含,则该边缘点有效;对于位于边缘线端点的边缘点,如果该边缘点被其他边缘线包含的次数小于该边缘点的相邻边缘点数,则该边缘点有效。
【文档编号】G06T7/00GK104200475SQ201410452556
【公开日】2014年12月10日 申请日期:2014年9月5日 优先权日:2014年9月5日
【发明者】马小雨, 姜秀华 申请人:中国传媒大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1