接缝裁剪

✍ dations ◷ 2025-03-07 10:30:56 #图像处理

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

相关

  • 培根弗兰西斯·培根,第一代圣阿尔本子爵(Francis Bacon, 1st Viscount St Alban,1561年1月22日-1626年4月9日),著名英国哲学家、政治家、科学家、法学家、演说家和散文作家,是古典经验
  • 世界经济世界经济可以通过不同的方式表现,而且能以不同的方式打破。它和地理学与地球生态学密不可分。2004年全球的产量在中国(9.1%), 俄罗斯(6.7%)和印度(6.2%)的带领下上升了4.9%。原华
  • 投手投手(英语:Pitcher,通常简写成P)是棒球或垒球比赛中,防守方负责投球供进攻方打击手打击的球员,通常被视为主宰比赛胜负的灵魂人物。只要不违反规则,投手可采用任何一种姿势来作投球
  • 汉斯·盖革约翰尼斯(汉斯)·威廉·盖革(德语:Johannes (Hans) Wilhelm Geiger,1882年9月30日-1945年9月24日),德国物理学家。盖革出生于德国莱茵兰-法尔茨州诺伊施塔特,他的家庭有五个孩子,其父
  • 淡江大学林呈蓉 博士(文学院院长) 施增廉 博士(理学院院长) 李宗翰 博士(工学院院长) 蔡宗儒 博士(商管学院院长) 吴万宝 博士(外语学院院长) 王高成 博士(国际学院院长) 潘慧玲 博士(教育学院院
  • 食用昆虫食用昆虫当动词是指以昆虫当作食物,当名词则指人类可以吃的昆虫。虫卵、幼虫、蛹、成虫自史前时代到今日都被人当作营养来源。昆虫在营养价值、饲养难易、成本、对环境的冲击
  • 韩国证券交易所韩国交易所(简称KRX)是韩国唯一的证券交易所,总部设在韩国釜山广域市。2005年由原韩国证券交易所(KSE)、韩国期货交易所(KOFEX)和韩国创业板市场(KOSDAQ)合并而成。韩国交易所的证券
  • 萨迪克·汗萨迪克·阿曼·汗(英语:Sadiq Aman Khan;乌尔都语:صادق امان خان‎‎;1970年10月8日-),又译简世德、简萨迪,英国巴基斯坦裔工党政治家和律师,2016年5月起当选伦敦市长,2005
  • 护目镜护目镜(英文:Goggles),运动、工作时所配戴的眼镜,目的是保护眼睛。大部分的运动都是在户外,而户外的阳光往往是造成眼睛病变的主因,所以长期暴露在阳光下的运动员开始配戴太阳眼镜
  • 2015年加拿大羽毛球大奖赛2015年加拿大羽毛球大奖赛为第2015年度的加拿大羽毛球公开赛,是2015年世界羽联大奖赛的其中一站。本届赛事于2015年6月23日至6月28日在加拿大卡尔加里内的Markin MacPhail Ce