Seam Carving
Seam Carving 算子
基于内容识别的图像缩放算法的目标是移除或插入最不被注意到的像素点,
seam carving算子是选择移除(插入)像素的关键点。
该算法使用seam carving算子对图像能量进行计算,以评估出图像中所有像素的重要性。
该算子依据特定的能量方程进行能量计算,不同的能量方程得到的结果性能不一。
1. E1能量方程
2. 基于HoG的能量方程
另一种综合性能较为优良的能量公式是基于梯度直方图HoG的能量方程。
参考Shai等人的方法,使用面向梯度的直方图算法对每一个像素进行处理。
面向方向梯度的直方图HoG算法的主要思想是:
一幅图像中,内容的表象特征可以用局部区域的梯度值或边缘处的方向密度值分布进行描述。
本质上来说,梯度是反映目标视觉特征的重要统计信息,而越接近目标边缘处,梯度数值通常就越大。
HoG算法的实现方法是将图像分成若干个较小的连通区域,称之为细胞单元(cell),
然后对细胞单元中各个像素点求梯度和方向的直方图,接着将局部直方图以细胞单元为最小单位向上分组为细胞区间(block),
在区间内对每个细胞单元进行对比度归一化,对光照和阴影特征性能描述获得更好的效果,
最后将这些直方图总合为一个直方图行向量作为衡量图像内容特征重要性的描述器。
使用基于梯度直方图HoG的能量方程计算输入图像的能量图,将输入图像进行归一化处理后,
对每一个像素取 区间为单位的检测窗口进行扫描,据此计算出8个直方图值。
对每个像素进行直方图计算后,取该像素所在区间内的最大直方图数值作为分母,对像素求偏导的和作为分子,
即使用前面提及的 能量方程计算出分子值,最后分子除以分母得出最终的 能量值。
之所以取区间内最大的直方图数值作为分母,是因为分子通常会使缝与图像内容的边缘平行从而避免相交,
而分母的作用则与之相反,使得缝接近图像边缘,正好产生平衡的效果。
能量公式Ehog定义如下:
(2)
Seam Carving 缩放策略
移除一条缝上的像素点后,图像效果类似于将图像的某一行或一列的像素点移除。
以图像的左侧为参考,图像中剩余的像素如果位于移除缝的像素点左侧,则其位置保持不变,
若是位于移除缝的像素点右侧,则其位置向左移动一个像素单位,以填补移除像素的空缺。
根据已知的能量方程,定义缝s的能量为缝上所有像素点的能量值的总和,
每个像素点的能量值分别通过能量方程e进行计算:
(6)
根据seam carving算子的智能缩放策略,对图像进行缩小操作时,
移除的缝s*应具有当前图像内所有缝的可能情况中的最小能量值:
(7)
[1] Shai Avidan Mitsubishi Electric Research Labs, SeamCarving for Content-Aware Image Resizing, 2007
文章链接:http://download.csdn.net/detail/ilovejohnny/9576342
代码链接:http://download.csdn.net/detail/ilovejohnny/9576672
[2] O Weber, Robust Image Retargeting via Axis - Aligned Deformation D Panozzo, 2012
文章链接:http://download.csdn.net/detail/ilovejohnny/9576352
Expecting The V.I.P M.A.D.E World Tour toooooooooooooday ! ^_______________^*