一种基于内容感知的图像缩放方法
【技术领域】
[0001] 本发明的技术方案涉及在图像平面内的图形图像转换,具体地说是一种基于内容 感知的图像缩放方法。
【背景技术】
[0002] 随着计算机科学技术的快速发展,信息家电给我们的生活带来了极大的便利,由 于不同的信息家电产品没有统一的尺寸规格,导致所需显示图像的尺寸与信息家电显示设 备的尺寸存在差别,从而图像在显示设备中出现显示异常,图像缩放技术的研究有助于解 决上述问题。
[0003] 传统的图像缩放方法之一是通过插值和下采样得到目标尺寸的图像,该算法原理 虽然简单且易实现,但是存在以下缺陷:一是当需要改变图像宽高比来进行缩放时,容易造 成主要图像内容的拉伸变形;二是简单的剪切技术,即通过裁剪图像边缘内容来得到目标 图像,往往造成较多图像内容信息的丢失。传统的图像缩放方法之二是选择图像宽度或者 高度最小缩放比例作为整体的缩放比例来对原始图像进行等比缩放,这种方法存在的缺陷 是容易在显示设备的上下或者左右产生黑色的边框。相对于传统的图像缩放算法,近些年 来研发的基于内容感知的图像缩放技术能够在一定程度上克服传统方法的缺陷。基于内容 感知的图像缩放技术是根据图像内容重要程度来对图像进行缩放,尽量保证重要区域的内 容不发生过多形变,对非重要区域进行压缩处理,以此来得到最佳的图像视觉感知效果。 1998年,Itti和Koch提出了一种自底向上的显著性计算模型,在多尺度下提取图像的颜色、 亮度和方向特征的显著图,进行线性融合,最终生成图像的显著图,显著图反映了图像的重 要区域,是基于内容感知的研究基础。在2003年,Suh提出了基于重要区域的图像缩略图提 取方法的Suh算法,利用Itti提出的显著性算法与人脸识别算法提取目标图像的重要区域, 对目标图像进行相关的裁剪得到缩略图,该算法过于依赖显著性算法提取的目标,而且该 算法采用传统的裁剪方法对图像进行缩放,往往会造成较多图像内容信息的丢失,使图像 完整性遭到了严重的破坏。Liu和Gleiche在Suh算法的基础上,利用非线性的鱼眼视角变形 算法(Fisheye-view Warp)尽可能地保留原图中重要区域的大小,同时会对非显著部分进 行压缩处理,该Liu和Gleiche提出的算法在图像主体目标被过分强调的时候,由于采用缩 小背景以突出重要区域的方法,以至于原始图像中的图像结构被破坏了,造成了图像边缘 内容的严重失真。针对以上不足,在2007年的SLGGRAPH会议上Avidan和Shamir提出了线裁 剪算法,通过不断的寻找当前图像中水平或垂直方向能量最小的联通路径并进行删除或者 复制操作来达到图像裁剪目地的,图像中不重要的区域被移除,能更好地保留图像中的重 要部分,在长宽比变化剧烈的情况下仍然能保持图像中的重要内容不发生变形失真。但是 该算法由于仅考虑能量最小,没有充分考虑实际图像的结构信息,因此当图像结构分布稀 疏而且占据大部分位置时会破坏图像的局部和整体的视觉效果,另外在重要内容能量较低 的时候会破坏重要物体结构,导致出现人为鬼影。CN102568443B公开了 一种图像缩放算法, 该算法根据原图像的尺寸与目标图像的尺寸,以像素点为单位进行复制和移除操作,由于 没有从整体上考虑图像中的主体目标,因此会造成图像的主体目标发生形变和扭曲。
[0004] 总之,现有的基于内容感知的图像缩放技术虽然能够克服传统的图像缩放方法中 图像裁剪的缺点,尤其是现有的基于内容感知的图像缩放技术中的线裁剪方法能够保持图 像中的感兴趣区域尽量不发生形变,相比传统的图像缩放方法取得了较好的图像缩放效 果,但是现有的线裁剪方法采用图像的梯度图定义能量函数,在图像缩放时仍然存在失真 和部分图像信息丢失的缺陷,影响人们的图像视觉审美。
【发明内容】
[0005] 本发明所要解决的技术问题是:提供一种基于内容感知的图像缩放方法,采用融 合显著图、边缘直线图和梯度图的混合特征模型(以下简称HFPM)得到能量函数,依据该能 量函数进行线裁剪操作完成图像的缩放,克服了现有的线裁剪方法采用图像的梯度图定义 能量函数,在图像缩放时仍然存在失真和部分图像信息丢失的缺陷。
[0006] 本发明解决该技术问题所采用的技术方案是:一种基于内容感知的图像缩放方 法,采用融合显著图、边缘直线图和梯度图的混合特征模型得到能量函数,依据该能量函数 进行线裁剪操作完成图像的缩放,步骤如下:
[0007] 第一步,输入彩色图像预处理:
[0008] 通过USB接口向计算机输入原始彩色图像,并输入目标图像的大小,将得到的原始 彩色图像〇由RGB空间转化到灰度空间得到灰度图像I,采用的公式(1)如下:
[0009] I = 0.299R+0.587G+0.114B (1),
[0010] 其中R、G、B分别是RGB空间图像的红色、绿色和蓝色通道,同时保留原始输入RGB空 间的原始彩色图像〇,供第二步中Context-Aware算法计算使用,所输入原始彩色图像0的大 小为ΜX N像素,所输入目标图像的大小为,X Μ像素;
[0011]第二步,提取原始彩色图像的显著图和显著目标图像:
[0012] (1)通过Context-Aware算法提取原始彩色图像显著图:
[0013]对第一步保留的原始输入的RGB空间的原始彩色图像0,通过Context-Aware算法 计算显著图,并将由此计算得到的该显著图输出为原始输入的RGB空间的原始彩色图像0图 像的尺寸,提取到原始彩色图像的显著图Sal;
[0014] (2)使用分水岭分割算法加强显著图:
[0015] 使用分水岭分割算法对上述步骤(1)得到的原始彩色图像的显著图Sal进一步加 强,分割出原始彩色图像显著图中的目标,先对图像的每个像素的灰度级进行从低到高排 序,然后再从低到高实现淹没过程,对每一个局部极小值采用先进先出结构进行判断及标 注,由此通过分水岭算法分割得到原始彩色图像的显著目标图像Is;
[0016] 第三步,提取灰度图像的融合直线信息的边缘图:
[0017] 提取第一步得到的灰度图像I中的直线信息,并对图像I进行模糊处理,提取边缘 图,将直线信息与边缘图进行叠加融合,得到融合直线信息的边缘图,具体步骤如下;
[0018] (1)检测灰度图像中的直线信息:
[0019] 对第一步中获得的灰度图像I运用霍夫变换检测其中的直线信息,设置霍夫变换 算法中所能检测到的最小长度为「o.lxd个像素以及直线间的最小间隔为「O.Olxd个像 素,其中q为图像对角线的长度,将检测得到直线信息的图像进行二值化处理,设置阈值为
[0020] (2), Tw,得到户古古妹栏白的一估ra τ阳兴用的公式(2)如下:
[0021]上述参数中w为标有直线线段的图像,w(x,y)为(x,y)处的像素值;
[0022] (2)对原始彩色图像进行模糊处理:
[0023]利用基于总变差模型的纹理结构提取算法对原始输入的RGB空间的原始彩色图像 〇进行模糊处理,模糊原图中不重要的纹理部分,突出主结构,得到去除纹理的图像,达到模 糊的效果;
[0024] (3)提取图像的边缘特征:
[0025] 利用Canny边缘检测算法对上述步骤(2)模糊处理后得到的图像提取边缘信息,增 强图像的边缘,得到边缘图,其中Canny算子模板如下公式(3)所示,其中,D x为水平方向的 算子,Dy为乘官方向的筧子,
[0026]
(3);
[0027] (4)将直线信息融合到边缘图中:
[0028] 将上述步骤(1)中得到的直线特征图与上述步骤(3)得到的边缘图采用的公式(4) 进行融合,
[0029] IC=IW+I canny ⑷,
[0030] 其中,Iw为含有直线信息的二值图,Icanny为使用Canny边缘检测算法得到的边缘 图,I。为融合直线信息的边缘图;
[0031] 第四步,提取灰度图像的梯度图:
[0032] 对第一步得到的灰度图像I通过Sobel梯度算子来提取梯度信息,即以图像像素点 I (X,y)为中心计算其3 X 3邻域的X方向偏导数Gjp y方向的偏导数Gy如下:
[0033] Gx={I(x-1,y+l)+2I(x,y+l)+I(x+l,y+l)}
[0034] (5), -{I(x-1,y-l)+21(x,y-l)+1(x+1,y-l)}
[0035] Gy={I(x+1,y-l)+2I(x+l,y)+I(x+l,y+l)}
[0036] (6), -{I(x-1,y-l)+21(x-1,y)+1(x-1,y+l)}
[0037] 梯度大小为:
[0038]
(7).,
[0039] 根据公式(7)求出每个像素的梯度值,即可得到灰度图像的梯度图Ig;
[0040] 第五步,利用HFPM算法对三种特征图融合得到能量函数:
[0041]将上述第二步得到的原始彩色图像的显著目标图像Is、第三步得到的融合直线信 息的边缘图I。以及第四步得到的灰度图像的梯度图IgfflHFPM算法进行融合,采用公式如下:
[0042] EHFPM(x,y)=aIs(x,y)+PIc(x,y)+ γ Ig(x,y) (8),
[0043] 其中Ehfpm为最终得到的能量函数,a、β、γ分别为Is、Ic、18三种图像不同的权重系 数,
[0044] α是原始彩色图像的显著目标图像Is的权重系数,其定义如下:
[0045]
(()),
[0046]其中Areat为缩放后图像的面积,Μ和N分别是第一步得到的图像的长度值和宽度 值,单位为像素;
[0047] β是融合直线信息的边缘图I。的权重系数,其定义为:
[0048] (丨()),
[0049] (11>, ν 'Λ-'
[0050] 其中num为图像中通过Hough
变换算法检测出的直线的条数,Len (1)即为第1条直 线的长度,Lmax为所有直线中最长直线的长度,Lmin为所有直线中最短直线的长度;
[0051] γ是灰度图像的梯度图Ig的权重系数,由上述第二步得到的原始彩色图像的显著 图Sal的面积决定,显著目标面积大的图像,γ值应越大,可以更好地保护图像中不同显著 目标之间的边缘信息,其定义为:
[0052] (12),
[0053] (13).
[0054] 其中,原始彩色图像的显著图Sal的尺寸为ΜΧΝ像素,Sal(mc,nc)为在原始彩色图 像的显著图中(m c,n c)处的像素值,T s为设定的阈值;
[0055] 第六步,使用线裁剪算法对原始图像进行裁剪:
[0056] 原始彩色图像0的大小为ΜΧΝ像素,目标图像大小为,Xf像素,线裁剪是提取 M-M' |条行像素线和|N-Y |条列像素线,如果目标图像尺寸小于原始图像尺寸,则删除该像 素线使原始图像尺寸缩小一行或一列,如果目标图像尺寸大于原始图像,则复制该像素线 插入到原始图像相应位置,循环处理IM-M' |或|Ν-Υ |次使得原始图像尺寸达到目标图像大 小,
[0057] 通过动态规划找出合适的裁剪线,并进行裁剪操作,具体步骤如下:
[0058] (1)计算列裁剪线中由非相邻像素点成为相邻像素产生的能量:
[0063]其中,I是第一步得到的灰度图像,Cf表示移除灰度图像I中像素(i,j)与
[0059] 利用下式(14)计算移除像素时,由非相邻像素点成为新的相邻像素点而产生的能 量:
[0060]
[0061]
[0062] 1)时所产生的能量,巧表示移除灰度图像I中像素(i,j)与时所产生的能量,0表 示移除灰度图像I中像素(i,j)与时所产生的能量;
[0064] (2)计算当前最小列裁剪线能量:
[0065] 计算当前最小能量列裁剪线能量的公式如下所示:
[0066]
(15),
[0067] ey(i,j)为当前最小能量列裁剪线能量,也即最小能量列裁剪线中像素点(i,j)处 累积能量;
[0068] (3)寻找累计能量最小的列裁剪线:
[0069] 在ey计算灰度图像I最后一行中最小能量值的像素即为列裁剪线最后一个像素, 以ey(i,j)像素为起点,从最后一行回溯寻找累积能量最小的八联通裁剪线,按照这个步 骤,一直找到灰度图像I的第一行,所有联通的像素所组成的像素线即为累计能量最小的列 裁剪线;
[0070] (4)计算行裁剪线中由非相邻像素点成为相邻像素产生的能量:
[0071] 利用下式(16)计算移除像素时,由非相邻像素点成为新的相邻像素点而产生的能 量:
[0072]
[0073]
[0074] ' ......
[0075] 其中,I是第一步得到的灰度图像,泛表示移除灰度图像I中像素(ij)与(i+lj-1)时所产生的能量,從表示移除灰度图像I中像素(i,j)与时所产生的能量,炫表 示移除灰度图像I中像素(i,j)与时所产生的能量;
[0076] (5)计算当前最小行裁剪线能量:
[0077] 计算当前最小能量行裁剪线能量的公式如下所示:
[0078]
(17),
[0079] ex(i,j)为当前最小行裁剪线能量,也即最小能量列裁剪线中像素点(i,j)处累积 能量;
[0080] (6)寻找累计能量最小的行裁剪线:
[0081]在ex计算灰度图像I最后一列中最小能量值的像素即为行裁剪线最后一个像素, 以ex(i,j)像素为起点,从最后一列回溯寻找累积能量最小的八联通裁剪线,按照这个步 骤,一直找到灰度图像I的第一列,所有联通的像素所组成的像素线即为累计能量最小的行 裁剪线;
[0082] (7)对输入的原始彩色图像0的图像进行线裁剪:
[0083] 根据上述步(3)和(6)分别得到的列裁剪线与行裁剪线,根据第五步得到的能量函 数,通过上述步(3)和(6)找出当前图像中累计能量最小的裁剪线进行复制或者删除操作, 原始彩色图像0的大小为MXN像素,目标图像大小为,XP/像素,线裁剪是提取IMHV^ |条行 像素线和I N-Y I条列像素线,如果目标图像尺寸小于原始彩色图像尺寸,则删除该像素线 使原始彩色图像尺寸缩小一行或一列,如果目标图像尺寸大于原始彩色图像尺寸,则复制 该像素线插入到原始彩色图像相应位置,循环处理IM-M' I次或|N-g I次使得原始彩色图像 尺寸达到目标图像大小。
[0084] 上述一种基于内容感知的图像缩放方法,所述第三步中的设定的阈值Tw取值为 240 〇
[0085] 上述一种基于内容感知的图像缩放方法,所述第五步中的设定的阈值Ts取值为 200 〇
[0086] 上述一种基于内容感知的图像缩放方法,所述Context-Aware算法、分水岭分割算 法、Canny边缘检测算法、Sobe 1梯度算子和线裁剪算法都是公知的。
[0087] 本发明的有益效果是:与现有技术相比,本发明的突出的实质性特点和显著进步 如下:
[0088] (1)本发明提出的一种基于内容感知的图像缩放方法,主要是对线裁剪的能量函 数进行改进,采用显著图、边缘直线图以及梯度图的混合特征融合模型HFPM得到能量函数, 依据能量函数进行线裁剪操作,完成图像的缩放。该方法考虑了由于线裁剪时所引起的能 量变化,采用了前向能量公式,动态寻找当前最优裁剪线,并强化图像中的直线信息,在一 定程度上避免了由于裁剪操作所导致的直线的断层或不连续等严重影响人视觉美观的现 象,同时突出了图像的显著结构信息,保证了图像中显著结构信息的完整性。
[0089] (2)本发明方法采用基于上下文的显著性检测算法不仅可以准确提取图像中主要 的显著目标,而且还可以提取次要的显著目标,进一步降低了图像裁剪后所产生的扭曲或 失真现象,使用分水岭分割算法使得显著目标边缘特征加强,有效地减轻了后续线裁剪穿 过显著目标所造成的失真现象;
[0090] (3)本发明方法所采用的HFPM方法通过将提取图像的显著目标、直线特征以及边 缘特征进行融合操作,并赋予相应的权值系数,可以更好地保存图像的主体目标,进一步降 低了由于裁剪操作所造成图像的扭曲以及形变现象。
【附图说明】
[0091] 下面结合附图和实施例对本发明进一步说明。
[0092]图1是本发明方法的流程示意框图。
[0093]图2 (a)是本发明方法中通过使用分水岭分割算法对使用Context-aware算法得到 的显著图进行分割得到的原始彩色图像的显著目标图像Is;
[0094] 图2(b)是本发明方法中用Canny边缘检测算法得到的融合直线信息的边缘图I。;
[0095] 图2(c)是本发明方法中通过Sobel梯度算子得到的灰度图像的梯度图Ig。
[0096] 图3是本发明方法使用HFPM算法对图2(a)、图2(b)以及图2(c)所示图像进行融合 得到的能量函数的显示图。
[0097] 图4是本发明方法使用线裁剪算法依据能量函数对原始图像进行裁剪处理前后的 效果显示图。
【具体实施方式】
[0098]图1所示实施例表明,本发明一种基于内容感知的图像缩放方法的流程是:输入彩 色图像预处理-同时进行:提取原始彩色图像的显著图和显著目标图像、提取灰度图像的 融合直线信息的边缘图和提取灰度图像的梯度图-利用HFPM算法对三种特征图融合得到 能量函数-使用线裁剪算法对原始图像进行裁剪。
[00"]图2 (a)所示实施例显示了通过使用分水岭分割算法对使用Context-aware算法得 到的显著图进行分割得到的原始彩色图像的显著目标图像Is。分水岭分割算法是一个迭代 标注的过程,分两个步骤,一个是排序过程,一个是淹没过程。图中显示分水岭分割算法可 以将原显著目标很好的分割出来,由此通过分水岭算法分割得到原始彩色图像的显著目标 图像Is,更好地保护了显著目标的边缘,有利于后面裁剪部分对主体显著目标的保护。也就 是说,使用分水岭分割算法使得显著目标边缘特征加强,有效地减轻了后续线裁剪穿过显 著目标所造成的失真现象。
[0100]图2(b)所示实施例显示了用Canny边缘检测算法得到的融合直线信息的边缘图 I。。利用基于总变差模型的纹理结构提取算法对原始输入的RGB空间的原始彩色图像0进行 模糊处理,模糊原图中不重要的纹理部分,突出主结构,再利用Canny算子提取经上一步处 理后图像的边缘信息,通过调整Canny算子的相关阈值,使其对图像内容的大体边缘进行加 强,最后将上述提取到图像的直线信息与边缘图相融合,得到的融合直线信息的边缘图I。。
[0101] 图2(c)所示实施例显示了通过Sobel梯度算子得到的灰度图像的梯度图Ig。对灰 度图像I通过Sobel梯度算子来提取梯度信息,得到灰度图像的梯度图I g。
[0102] 图3所示实施例显示了对图2(a)、图2(b)以及图2(c)所示图像进行融合得到的能 量函数的显示图,分别对图2(a)、图2(b)以及图2(c)所示图像运用HFPM算法,根据图像的缩 放比,原始图像中的直线信息,以及显著目标对图像的占比确定相应的权值系数,进行融合 处理,最终得到线裁剪算法所需要的能量函数。
[0103] 图4所示实施例显示了使用线裁剪算法依据能量函数对图像进行裁剪处理前后的 效果显示图。线裁剪算法是一种基于内容感知的图像缩放算法,根据得到的能量函数通过 动态规划找出当前图像中累计能量最小的裁剪线进行复制或者删除操作。该图说明,经过 使用线裁剪算法依据能量函数对原始图像进行裁剪处理,使得原始彩色图像尺寸达到目标 图像大小。
[0104] 实施例
[0105] 本实施例的一种基于内容感知的图像缩放方法,采用融合显著图、边缘直线图和 梯度图的混合特征模型得到能量函数,依据该能量
函数进行线裁剪操作完成图像的缩放, 步骤如下:
[0106] 第一步,输入彩色图像预处理:
[0107] 通过USB接口向计算机输入原始彩色图像,并输入目标图像的大小,将得到的原始 彩色图像0由RGB空间转化到灰度空间得到灰度图像I,采用的公式(1)如下:
[0108] I = 0.299R+0.587G+0.114B (1),
[0109] 其中R、G、B分别是RGB空间图像的红色、绿色和蓝色通道,同时保留原始输入RGB空 间的原始彩色图像ο,供第二步中Context-Aware算法计算使用,所输入原始彩色图像0的大 小为ΜX Ν像素,所输入目标图像的大小为,X Μ像素;
[0110]第二步,提取原始彩色图像的显著图和显著目标图像:
[0111] (1)通过Context-Aware算法提取原始彩色图像显著图:
[0112]对第一步保留的原始输入的RGB空间的原始彩色图像0,通过Context-Aware算法 计算显著图,并将由此计算得到的该显著图输出为原始输入的RGB空间的原始彩色图像0图 像的尺寸,提取到原始彩色图像的显著图Sal;
[0113] (2)使用分水岭分割算法加强显著图:
[0114] 使用分水岭分割算法对上述步骤(1)得到的原始彩色图像的显著图Sal进一步加 强,分割出原始彩色图像显著图中的目标,先对图像的每个像素的灰度级进行从低到高排 序,然后再从低到高实现淹没过程,对每一个局部极小值采用先进先出结构进行判断及标 注,由此通过分水岭算法分割得到原始彩色图像的显著目标图像Is;
[0115] 第三步,提取灰度图像的融合直线信息的边缘图:
[0116] 提取第一步得到的灰度图像I中的直线信息,并对图像I进行模糊处理,提取边缘 图,将直线信息与边缘图进行叠加融合,得到融合直线信息的边缘图,具体步骤如下;
[0117] (1)检测灰度图像中的直线信息:
[0118] 对第一步中获得的灰度图像I运用霍夫变换检测其中的直线信息,设置霍夫变换 算法中所能检测到的最小长度为「o.ixfl个像素以及直线间的最小间隔为「〇.〇?χ々?个像 素,其中q为图像对角线的长度,将检测得到直线信息的图像进行二值化处理,设置阈值为 Tw,阈值Tw取值为240,得到具有直线信息的二值图Iw,所采用的公式⑵如下:
[0119]
[0120] 上述参数中w为标有直线线段的图像,w(x,y)为(x,y)处的像素值;
[0121] (2)对原始彩色图像进行模糊处理:
[0122]利用基于总变差模型的纹理结构提取算法对原始输入的RGB空间的原始彩色图像 〇进行模糊处理,模糊原图中不重要的纹理部分,突出主结构,得到去除纹理的图像,达到模 糊的效果;
[0123] (3)提取图像的边缘特征:
[0124] 利用Canny边缘检测算法对上述步骤(2)模糊处理后得到的图像提取边缘信息,增 强图像的边缘,得到边缘图,其中Canny算子模板如下公式(3)所示,其中,D x为水平方向的 算子,Dv为垂官方向的筧子,
[0125]
[0126] (4)将直线信息融合到边缘图中:
[0127] 将上述步骤(1)中得到的直线特征图与上述步骤(3)得到的边缘图采用的公式(4) 进行融合,
[0128] IC=IW+I canny ⑷,
[0129] 其中,Iw为含有直线信息的二值图,IMnny为使用Canny边缘检测算法得到的边缘 图,I。为融合直线信息的边缘图;
[0130]第四步,提取灰度图像的梯度图:
[0131 ]对第一步得到的灰度图像I通过Sobel梯度算子来提取梯度信息,即以图像像素点 I (X,y)为中心计算其3 X 3邻域的X方向偏导数Gjp y方向的偏导数Gy如下:
[0132] Gx={I(x-1,y+l)+2I(x,y+l)+I(x+l,y+l)}
[0133] (5), -{I(x-1,y-l)+21(x,y-l)+1(x+1,y-l)}
[0134] Gy={I(x+l,y-l)+2I(x+l,y)+I(x+l,y+l)}
[0135] (6), -{I(x-1,y-l)+21(x-1,y)+1(x-1,y+l)}
[0136] 梯度大小为:
[0137]
(7)
[0138] 根据公式(7)求出每个像素的梯度值,即可得到灰度图像的梯度图Ig;
[0139] 第五步,利用HFPM算法对三种特征图融合得到能量函数:
[0140]将上述第二步得到的原始彩色图像的显著目标图像Is、第三步得到的融合直线信 息的边缘图I。以及第四步得到的灰度图像的梯度图IgfflHFPM算法进行融合,采用公式如下:
[0141] EHFPM(x,y)=aIs(x,y)+PIc(x,y)+ γ Ig(x,y) (8),
[0142] 其中Ehfpm为最终得到的能量函数,a、β、γ分别为Is、Ic、18三种图像不同的权重系 数,
[0143] a是原始彩色图像的显著目标图像Is的权重系数,其定义如下:
[0144]
[0145] 其中Areat为缩放后图像的面积,Μ和N分别是第一步得到的图像的长度值和宽度 值,单位为像素;
[0146] β是融合直线信息的边缘图I。的权重系数,其定义为:
[0147]
[0148]
[0149] 其中num为图像中通过Hough变换算法检测出的直线的条数,Len(1)即为第1条直 线的长度,Lmax为所有直线中最长直线的长度,L min为所有直线中最短直线的长度;
[0150] γ是灰度图像的梯度图Ig的权重系数,由上述第二步得到的原始彩色图像的显著 图Sal的面积决定,显著目标面积大的图像,γ值应越大,可以更好地保护图像中不同显著 目标之间的仂緣信息,其宙夂为:
[0151:
[0152]
[0153]其中,原始彩色图像的显著图Sal的尺寸为MXN像素,Sal(mc,nc)为在原始彩色图 像的显著图中(me,nc)处的像素值,Ts为设定的阈值,阈值Ts取值为200;
[0154]第六步,使用线裁剪算法对原始图像进行裁剪:
[0155]线裁剪算法是一种基于内容感知的图像缩放算法,根据得到的能量函数通过动态 规划找出当前图像中累计能量最小的裁剪线进行复制或者删除操作。原始彩色图像〇的大 小为MXN像素,目标图像大小为IVT XP/像素,线裁剪是提取Imhv^ |条行像素线和| N-Y |条 列像素线,如果目标图像尺寸小于原始图像尺寸,则删除该像素线使原始图像尺寸缩小一 行或一列,如果目标图像尺寸大于原始图像,则复制该像素线插入到原始图像相应位置,循 环处理IM-M' I或|N-g I次使得原始图像尺寸达到目标图像大小,
[0156] 通过动态规划找出合适的裁剪线,并进行裁剪操作,具体步骤如下:
[0157] (1)计算列裁剪线中由非相邻像素点成为相邻像素产生的能量:
[0158] 利用下式(14)计算移除像素时,由非相邻像素点成为新的相邻像素点而产生的能 量:
[0162]其中,I是第一步得到的灰度图像,Cf表示移除灰度图像I中像素(i,j)与
[0159]
[0160]
[0161] 1)时所产生的能量,eg表示移除灰度图像I中像素(i,j)与时所产生的能量,g表 示移除灰度图像I中像素(i,j)与时所产生的能量;
[0163] (2)计算当前最小列裁剪线能量:
[0164] 计算当前最小能量列裁剪线能量的公式如下所示:
[0165]
[0166] ey(i,j)为当前最小能量列裁剪线能量,也即最小能量列裁剪线中像素点(i,j)处 累积能量;
[0167] (3)寻找累计能量最小的列裁剪线:
[0168] 在ey计算灰度图像I最后一行中最小能量值的像素即为列裁剪线最后一个像素, 以ey(i,j)像素为起点,从最后一行回溯寻找累积能量最小的八联通裁剪线,按照这个步 骤,一直找到灰度图像I的第一行,所有联通的像素所组成的像素线即为累计能量最小的列 裁剪线;
[0169] (4)计算行裁剪线中由非相邻像素点成为相邻像素产生的能量:
[0170] 利用下式(16)计算移除像素时,由非相邻像素点成为新的相邻像素点而产生的能 量:
[0171 ] C'i -1,./) - /(/ + Κ./')| +1/(/,./ -1) -/(/ + l,i)|
[0172] Ci,{ii, j) = |/(/ - I, /) - /(/ +1* /)| .(1.6).,
[0173] = |/(i -1, /)-I(i+ l,j)| + |/(l, j - ?) - Γ(ι. - 1, j)|
[0174] 其中,I是第一步得到的灰度图像,巧表示移除灰度图像I中像素(i,j)与 1)时所产生的能量,G表示移除灰度图像I中像素(i,j)与时所产生的能量,Q表 示移除灰度图像I中像素(i,j)与时所产生的能量;
[0175] (5)计算当前最小行裁剪线能量:
[0176] 计算当前最小能量行裁剪线能量的公式如下所示:
[0177]
[0178] ex(i,j)为当前最小行裁剪线能量,也即最小能量列裁剪线中像素点(i,j)处累积 能量;
[0179] (6)寻找累计能量最小的行裁剪线:
[0180]在ex计算灰度图像I最后一列中最小能量值的像素即为行裁剪线最后一个像素, 以ex(i,j)像素为起点,从最后一列回溯寻找累积能量最小的八联通裁剪线,按照这个步 骤,一直找到灰度图像I的第一列,所有联通的像素所组成的像素线即为累计能量最小的行 裁剪线;
[0181] (7)对输入的原始彩色图像0的
图像进行线裁剪:
[0182]根据上述步(3)和(6)分别得到的列裁剪线与行裁剪线,根据第五步得到的能量函 数,通过上述步(3)和(6)找出当前图像中累计能量最小的裁剪线进行复制或者删除操作, 原始彩色图像0的大小为MXN像素,目标图像大小为,XP/像素,线裁剪是提取IMHV^ |条行 像素线和I N-Y I条列像素线,如果目标图像尺寸小于原始彩色图像尺寸,则删除该像素线 使原始彩色图像尺寸缩小一行或一列,如果目标图像尺寸大于原始彩色图像尺寸,则复制 该像素线插入到原始彩色图像相应位置,循环处理IM-M' I次或|N-g I次使得原始彩色图像 尺寸达到目标图像大小。
[0183] 上述实施例中,所述Context-Aware算法、分水岭分割算法、Canny边缘检测算法、 Sobel梯度算子和线裁剪算法都是公知的。
【主权项】
1. 一种基于内容感知的图像缩放方法,其特征在于采用融合显著图、边缘直线图和梯 度图的混合特征模型得到能量函数,步骤如下: 第一步,输入彩色图像预处理: 通过USB接口向计算机输入原始彩色图像,并输入目标图像的大小,将得到的原始彩色 图像O由RGB空间转化到灰度空间得到灰度图像I,采用的公式(1)如下: I = 0.299R+0.587G+0.114B (1), 其中R、G、B分别是RGB空间图像的红色、绿色和蓝色通道,同时保留原始输入RGB空间的 原始彩色图像〇,供第二步中Context-Aware算法计算使用,所输入原始彩色图像O的大小为 MXN像素,所输入目标图像的大小为,XM像素; 第二步,提取原始彩色图像的显著图和显著目标图像: (1) 通过Context-Aware算法提取原始彩色图像显著图: 对第一步保留的原始输入的RGB空间的原始彩色图像0,通过Context-Aware算法计算 显著图,并将由此计算得到的该显著图输出为原始输入的RGB空间的原始彩色图像0图片的 尺寸,提取到原始彩色图像的显著图Sal; (2) 使用分水岭分割算法加强显著图: 使用分水岭分割算法对上述步骤(1)得到的原始彩色图像的显著图Sal进一步加强,分 割出原始彩色图像显著图中的目标,先对图像的每个像素的灰度级进行从低到高排序,然 后再从低到高实现淹没过程,对每一个局部极小值采用先进先出结构进行判断及标注,由 此通过分水岭算法分割得到原始彩色图像的显著目标图像I s; 第三步,提取灰度图像的融合直线信息的边缘图: 提取第一步得到的灰度图像I中的直线信息,并对图像I进行模糊处理,提取边缘图,将 直线信息与边缘图进行叠加融合,得到融合直线信息的边缘图,具体步骤如下; (1) 检测灰度图像中的直线信息: 对第一步中获得的灰度图像I运用霍夫变换检测其中的直线信息,设置霍夫变换算法 中所能检测到的最小长度为「O.lxfl个像素以及直线间的最小间隔为「O.Olxd个像素,其 中q为图像对角线的长度,将检测得到直线信息的图片进行二值化处理,设置阈值为Tw,得 到具有直线信息的二值图Iw,所采用的公式(2)如下:上述参数中w为标有直线线段的图片,w(x,y)为(x,y)处的像素值; (2) 对原始彩色图像进行模糊处理: 利用基于总变差模型的纹理结构提取算法对原始输入的RGB空间的原始彩色图像0进 行模糊处理,模糊原图中不重要的纹理部分,突出主结构,得到去除纹理的图像,达到模糊 的效果; (3) 提取图像的边缘特征: 利用Canny边缘检测算法对上述步骤(2)模糊处理后得到的图像提取边缘信息,增强图 像的边缘,得到边缘图,其中Canny算子模板如下公式(3)所示,其中,Dx为水平方向的算子, D y为垂直方向的算子,(4)将直线信息融合到边缘图中: 将上述步骤(1)中得到的直线特征图与上述步骤(3)得到的边缘图采用的公式(4)进行 融合, Ic-Iw+1 canny (4), 其中,Iw为含有直线信息的二值图,1。_为使用Canny边缘检测算法得到的边缘图,I。为 融合直线信息的边缘图; 第四步,提取灰度图像的梯度图: 对第一步得到的灰度图像I通过Sobel梯度算子来提取梯度信息,即以图像像素点I(x, y)为中心计算其3 X 3邻域的X方向偏导数GjP y方向的偏导数Gy如下:梯度大小为:根据公式(7)求出每个像素的梯度值,即可得到灰度图像的梯度图Ig; 第五步,利用HFPM算法对三种特征图融合得到能量函数: 将上述第二步得到的原始彩色图像的显著目标图像Is、第三步得到的融合直线信息的 边缘图I。以及第四步得到的灰度图像的梯度图算法进行融合,采用公式如下: EHFPM(x,y)=aIs(x,y)+PIc(x,y)+y Ig(x,y) (8), 其中Ehfpm为最终得到的能量函数,α、β、γ分别为Is、Ic、Ig三种图像不同的权重系数, a是原始彩色图像的显著目标图像Is的权重系数,其定义如下:其中Areat为缩放后图像的面积,M和N分别是第一步得到的图像的长度值和宽度值,单 位为像素; β是融合直线信息的边缘图I。的权重系数,其定义为:其中num为图像中通过Hough变换算法检测出的直线的条数,Len(I)即为第1条直线的 长度,Lmx为所有直线中最长直线的长度,Uin为所有直线中最短直线的长度; γ是灰度图像的梯度图Ig的权重系数,由上述第二步得到的原始彩色图像的显著图Sal 的面积决定,显著目标面积大的图像,γ值应越大,可以更好地保护图像中不同显著目标之 间的边缘信息,其定义为:其中,原始彩色图像的显著图Sal的尺寸为MXN像素,Sal(mc,nc)为在原始彩色图像的 显著图中(me, nc)处的像素值,Ts为设定的阈值; 第六步,使用线裁剪算法对原始图像进行裁剪: 原始彩色图像〇的大小为MXN像素,目标图像大小为,像素,线裁剪是提取ImhvT 条行像素线和I N-Y I条列像素线,如果目标图像尺寸小于原始图像尺寸,则删除该像素线 使原始图像尺寸缩小一行或一列,如果目标图像尺寸大于原始图像,则复制该像素线插入 到原始图像相应位置,循环处理Im-M' I或IN-Y I次使得原始图像尺寸达到目标图像大小, 通过动态规划找出合适的裁剪线,并进行裁剪操作,具体步骤如下: (1) 计算列裁剪线中由非相邻像素点成为相邻像素产生的能量: 利用下式(14)计算移除像素时,由非相邻像素点成为新的相邻像素点而产生的能量:其中,I是第一步得到的灰度图像,Cf表示移除灰度图像I中像素(i,j)与(i-l,j-l)时 所产生的能量,表示移除灰度图像I中像素(i,j)与时所产生的能量,表示移 除灰度图像I中像素(i,j)与(i-i,j+i)时所产生的能量; (2) 计算当前最小列裁剪线能量: 计算当前最小能量列裁剪线能量的公式如下所示:ey(i,j)为当前最小能量列裁剪线能量,也即最小能量列裁剪线中像素点(i,j)处累积 能量; (3) 寻找累计能量最小的列裁剪线: 在ey计算灰度图像I最后一行中最小能量值的像素即为列裁剪线最后一个像素,以ey (i,j)像素为起点,从最后一行回溯寻找累积能量最小的八联通裁剪线,按照这个步骤,一 直找到灰度图像I的第一行,所有联通的像素所组成的像素线即为累计能量最小的列裁剪 线; (4) 计算行裁剪线中由非相邻像素点成为相邻像素产生的能量: 利用下式(16)计算移除像素时,由非相邻像素点成为新的相邻像素点而产生的能量:其中,I是第一步得到的灰度图像,Cf表示移除灰度图像I中像素(i,j)与(i+l,j-l)时 所产生的能量,表示移除灰度图像I中像素(i,j)与时所产生的能量,Cf:表示移 除灰度图像I中像素(i,j)与时所产生的能量; (5) 计算当前最小行裁剪线能量: 计算当前最小能量行裁剪线能量的公式如下所示:ex(i,j)为当前最小行裁剪线能量,也即最小能量列裁剪线中像素点(i,j)处累积能量; (6) 寻找累计能量最小的行裁剪线: 在ex计算灰度图像I最后一列中最小能量值的像素即为行裁剪线最后一个像素,以ex (i,j)像素为起点,从最后一列回溯寻找累积能量最小的八联通裁剪线,按照这个步骤,一 直找到灰度图像I的第一列,所有联通的像素所组成的像素线即为累计能量最小的行裁剪 线; (7) 对输入的原始彩色图像O的图像进行线裁剪: 根据上述步(3)和(6)分别得到的列裁剪线与行裁剪线,根据第五步得到的能量函数, 通过上述步(3)和(6)找出当前图像中累计能量最小的裁剪线进行复制或者删除操作,原始 彩色图像〇的大小为MXN像素,目标图像大小为,像素,线裁剪是提取Imhv^ I条行像素 线和IN-Y I条列像素线,如果目标图像尺寸小于原始彩色图像尺寸,则删除该像素线使原 始彩色图像尺寸缩小一行或一列,如果目标图像尺寸大于原始彩色图像尺寸,则复制该像 素线插入到原始彩色图像相应位置,循环处理IM-M' I次或IN-Y I次使得原始彩色图像尺寸 达到目标图像大小。2. 根据权利要求1所述一种基于内容感知的图像缩放方法,其特征在于:所述第三步中 的设定的阈值Tw取值为240。3. 根据权利要求1所述一种基于内容感知的图像缩放方法,其特征在于:所述第五步中 的设定的阈值Ts取值为200。
【专利摘要】本发明一种基于内容感知的图像缩放方法,涉及在图像平面内的图形图像转换,采用融合显著图、边缘直线图和梯度图的混合特征模型得到能量函数,依据该能量函数进行线裁剪操作完成图像的缩放,步骤是:输入彩色图像预处理;同时进行:提取原始彩色图像的显著图和显著目标图像、提取灰度图像的融合直线信息的边缘图和提取灰度图像的梯度图;利用HFPM算法对三种特征图融合得到能量函数;使用线裁剪算法对原始图像进行裁剪。本发明方法克服了现有的线裁剪方法采用图像的梯度图定义能量函数,在图像缩放时仍然存在失真和部分图像信息丢失的缺陷。
【IPC分类】G06T7/00, G06T3/40
【公开号】CN105488758
【申请号】CN201510865907
【发明人】张婷婷, 刘依, 于明, 于洋, 师硕, 翟艳东, 李航
【申请人】河北工业大学
【公开日】2016年4月13日
【申请日】2015年11月30日