接缝裁剪

✍ dations ◷ 2025-12-07 09:04:32 #图像处理

接缝裁剪(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后,放大图片。

相关

  • 古今字陶文 ‧ 甲骨文 ‧ 金文 ‧ 古文 ‧ 石鼓文籀文 ‧ 鸟虫书 ‧ 篆书(大篆 ‧  小篆)隶书 ‧ 楷书 ‧ 行书 ‧ 草书漆书 ‧  书法 ‧ 飞白书笔画 ‧ 
  • 犹太人诺贝尔奖(瑞典语:Nobelpriset,挪威语:Nobelprisen),是一年颁发一次的国际奖项,其中文学、物理学、化学、生理学或医学及和平等5个奖项于1901年首次颁发,经济学奖则于1969年起颁发。
  • 剑桥郡剑桥郡(英语:Cambridgeshire,简称:Cambs),是一个位于英格兰东盎格利亚地区的郡,位于林肯以南,诺福克和修福以西,埃塞克斯、赫福以北,贝德福德、北咸顿以东,政府驻地为剑桥。现时的剑桥
  • 多普勒信息多普勒效应是波源和观察者有相对运动时,观察者接受到波的频率与波源发出的频率并不相同的现象。远方急驶过来的火车鸣笛声变得尖细(即频率变高,波长变短),而离我们而去的火车鸣笛
  • 子宫旁组织宫旁组织(英语:parametrium),是一类纤维组织,包括宫颈旁和宫体旁组织两部分,分别位于宫颈两侧和子宫体下部周围,二者无明显分界。宫旁组织主要由含血管丰富的结缔组织构成,其中宫颈
  • 低密度脂蛋白低密度脂蛋白(英语:low-density lipoprotein,缩写为LDL)指一类及范围的脂蛋白粒子,有着约18-25纳米直径的大小,负责在血液内运载脂肪酸分子至全身供细胞使用。它是由肝脏所产生的
  • 主宾型配列主宾型配列(Nominative–accusative alignment),也称为主宾格配列、对格配列或受格配列,是一类配列方式,即在句法或形态上,将不及物动词的单一变元和及物动词的施事论元同等对待(S=
  • 东京地下铁东京地下铁株式会社(日语:東京地下鉄/とうきょうちかてつ  */?),通称东京地下铁(日语:東京メトロ/とうきょうメトロ ,英语:Tokyo Metro),官方中文译名为东京Metro地铁,是以经营日本东
  • 英国医学研究委员会英国医学研究委员会 (Medical Research Council,MRC)是英国的一个非政府部门公共机构,负责协调与调度资金资助在英国的生物医学研究。医学研究委员会赞助相当广泛的生物医学
  • 礼萨汗礼萨沙阿·巴列维即礼萨汗(波斯语:رضا شاه پهلوی‎,1878年3月16日-1944年7月26日),伊朗沙阿(国王),巴列维王朝的缔造者。礼萨·巴列维1878年生于伊朗山区的一户贫苦人家