在图像处理领域,R远没有Matlab、Python使用广泛,图像显示一般是uint8类型,而R主要使用[0,1]的double类型,在Bioc上虽然有不少图像处理相关的package,但主要和医学图像有关。R在CV领域任道重远。话说,R Core 主要是玩统计的,好像还没有玩CV的,都是司马光之流的保守派,要想改变这种现状,需要引进像王安石这样的激进改革派,至少引进像苏轼这样的改良派,应该学学Python,兼容并蓄,从不拒纳新事物,就连后生Julia也是野心勃勃。
说道Python,在机器学习上,有不少比较高端大气的项目,比如pyrallel(http://github.com/pydata/pyrallel)、Monte(http://montepython.sourceforge.net)、PyBrain(https://github.com/pybrain/pybrain/)等。R每周也诞生新的Package,总感觉没有Python系统化,况且cran每周还干掉不少package(http://planetr.stderr.org/)[s:15]。
另外,视频数据在所有数据中所占的份额又是如此之大(60%以上),大家在炒作大数据的概念时,也仅仅提提而已,鲜有具体操刀的。
吐槽完毕,说点正题[s:11]。
因太过无聊,用R实现MVC(Mean-value Coordinates)图像编辑算法,是Possion图像编辑(据说Photoshop使用的是此算法)的近似算法,论文见Coordinates for Instant Image Cloning(https://github.com/qxde01/myRproj/blob/master/MVC/www.cs.huji.ac.il/~danix/mvclone/files/mvc-final-opt.pdf)。这里并没有要求严格的轮廓边界点,仅用矩形框代替轮廓。在MVC的R代码中,异常值没有处理好,造成有斑点。
MVC算法要求背景不能太复杂,否则效果太差,如果前景背景相近,效果较好。图像编辑主要通过手动三分图实现,比如Photoshop,自动实现三分图还是比较困难的,效果还不一定好。
MVC实现代码点这里
效果图,这个图不怎么样: