java 贝叶斯抠图_Image Matting代码和算法效果总结

本文详细介绍了基于Java的贝叶斯抠图技术,包括算法原理和不同版本的实现,如Python和C++。通过链接分享了各种代码资源,并讨论了不同算法在处理图像时的效率和效果,特别提到了处理大图像可能需要极长的运行时间。此外,还列举了其他图像抠图和分割技术,如closed form、CUDA优化、深度学习方法等,以及它们的运行时间和应用场景。
摘要由CSDN通过智能技术生成

图像抠图的closed form算法讲解:http://blog.csdn.net/edesignerj/article/details/53349663    (本文用到的是input image和scribble image 其中                            scribble image可由ps获取,画刷硬度设置为100)

文章: A. Levin D . Lischinski and Y. Weiss. A closed form solution and pattern recognition

python版本: https://github.com/MarcoForte/closed-form-matting (Python3.5+,scipy,numpy,matplotlib,sklearn, opencv-python)

进入文件夹,直接执行: python closed_form_matting.py(这张图片7.5s)

439628dcd763055ef38a3a8a5c370f5e.bmp  

fbad9ffe9afdd7050cd5bea46464f996.bmp 

8dbb9f835adcbc25053dc60942e81000.bmp

c++版本: https://github.com/Rnandani/Natural-image-matting

这篇文章对原来 Michael Rubinstein原文中所带的code进行了修改,抛弃了一些gui界面,只保存了简单的根据原图和trimap进行                           alpha通道计算部分;

原文: A Bayesian Approach to Digital Matting. CVPR, 2001.

主页: http://grail.cs.washington.edu/projects/digital-matting/image-matting/

原文代码: 以下为 Michael Rubinstein源代码运行效果, 依然不能运行troll图片;

ji

(不是不能运行troll图片,是image过大,大概要运行几百个小时才能处理完成)

12fd72d918d7be8ffac49d82d34ea187.png

fc6e3d50fbafda0ed3055132d7453dd0.png

24ed2c2e50a1c85e393d7c1cbf8f218b.png

执行image gandolf 可以,但是换成image troll 后不可以,会进入死循环;(应该也不是死循环,只是需要执行的时间过长,)

6afe4d17ec6d6b194629bdb8dbecb5e0.png

ea4848a376bbbac0a955a65e7c15e388.png

c8c733952fcc8dbf73d8a40a9e3ac9ba.png

代码:

linux下直接运行install.sh, 下载相关依赖库,完成后直接运行run_demo.m , 测试图片GT04.png (800*563)  time <5s

(ma

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值