接缝裁剪

✍ dations ◷ 2025-12-02 23:28:37 #图像处理

接缝裁剪(Seam carving),是一个可以针对图像内容做正确缩放的算法(由Shai Avidan和Ariel Shamir所发表)。概念上,算法会找出一系列的接缝(seam)(接缝是在图像中最不重要的一连串像素),接着利用接缝对图像做缩放。如果是要缩小图像,则移除这些接缝,若是放大,则在这些接缝的位置上,插入一些像素。接缝裁剪可以人工定义一些不会被修改的像素区域,也可以从图像中移除整个物体。

接缝裁剪算法的主要目的是图像重定向(image retargeting),将图像无失真的显示在各种大小的萤幕或位置上,比如说,手机、投影幕等等。

接缝有两种形式,水平或垂直的。接缝本身是一条由像素构成的路径,水平的接缝连接图像的左侧和右侧,路径中的像素个数和图像的列数一致。垂直接缝则类似,连接图像的顶部和底部,像素个数和图像的行数一致。接缝上每个像素都有存在一个称为重要性或者能量的指标,这个指标的值是根据像素的邻接像素计算得到的。一个像素和周边像素的相似度越高,则其重要性或者说能量就越低。

1. 首先,我们拿到一张需要缩小的照片(这里以缩小举例)

2. 接着我们计算照片中每一个像素的强度(energy),这一步可以由很多算法完成,这里以gradient magnitude为例。

3. 有了每一个pixel的强度后,我们可以利用一些算法,像是dynamic programming等等,找到图中数条强度较低的seams。

Seams 在gradient magnitude图中的样子:

Seams 在原始图片中的样子:

(从seams在原始图中的样子,我们可以看到所谓强度低的seam,基本上就可以表达照片中相对不重要的部分)

4. 接着我们把这些seams拿掉,就可以拿到一张缩小后的照片。

5. 若是我们需要放大图片,则我们可以在这些我们找到的seam的旁边,增加pixel,而pixel的value可以简单的取附近的pixel的平均。

在这个算法中,我们每次要找出一条照片中能量最小的seam,这里的能量可以想成是频率低,或者是照片中较为不重要的pixel。而找出seam的方法有很多种,我们可以利用dynamic programming或者其他算法完成。

以下为matlab的ref code,示范的是找出水平的seam后,放大图片。

相关

  • 结石结石指人或其他动物在体内器官空腔或导管腔中形成的块状固体物。常见的结石有肾结石、胆结石、肝结石、输尿管结石、膀胱结石、结膜结石、唾液线结石等。结石的常见成分为钙
  • 托尼奖最佳音乐剧女主角托尼奖最佳音乐剧女主角授予在音乐剧中有卓越表现的女主角,包括新制作的剧目与旧剧新编的剧目。此奖项于1948年设立,但从1956年起才每届先公布提名名单。第1届第2届第3届第4届
  • 夏帕克乔治·夏帕克(法语:Georges Charpak,1924年3月8日-2010年9月29日),法国物理学家,1992年诺贝尔物理学奖获奖者。乔治·夏帕克出生在波兰东部的一个犹太人隔离区,7岁随父母移居法国。
  • 重爪龙重爪龙属(属名:Baryonyx,意为“沉重的爪”)又名坚爪龙,是棘龙科恐龙的一属。化石最早发现于英格兰多尔金南部的一个黏土坑,随后西班牙北部也有;在英格兰发现的是一个幼年个体的大部
  • 全体会议中华人民共和国国务院 (第十一届)的全体会议。(2013年1月23日)1. 外交部  部长:杨洁篪  2. 国防部  部长:梁光烈(兼)  3. 国家发展和改革委员会  主任:张平  4. 教育部 
  • 口内射精口内射精(日语:口内射精,kounai syasei),俗称口爆或射在嘴里,是指男性在性高潮射精时将精液射入他人口腔中的一种射精行为。口内射精是一种广义的体内射精,但通常体内射精指的是阴
  • 犹太裔美国人核心犹太人口:5,425,000 (2012年)扩大的犹太人口 (含犹太人的非犹太裔亲属)6,721,680 (2012年)美国犹太人为具有犹太信仰或犹太血统的美国人。也是犹太人口最多的国家。美国犹太社
  • 七阶七边形镶嵌在几何学中,七阶七边形镶嵌是由七边形组成的双曲面正镶嵌图,在施莱夫利符号中用{7,7}表示。七阶七边形镶嵌每个顶点皆由七个七边形共用,且七边形不重叠,这样一来,该点处的内角和
  • 卡哈罗莱乌帕齐拉卡哈罗莱(孟加拉语:কাহারোল,Kaharole)是孟加拉国的一个乌帕齐拉,位于朗布尔专区的迪纳杰布尔县。卡哈罗莱乌帕齐拉共有户数22448户。据1991年孟加拉国人口普查(英语:1991 Ba
  • 首都通运