Web applications 我应该如何实现在线简易“photoshopping”来删除上传图像的背景?

Web applications 我应该如何实现在线简易“photoshopping”来删除上传图像的背景?,web-applications,photoshop,composite,Web Applications,Photoshop,Composite,我们正在制作一个应用程序,其中包括一个显示照片和文本的数字画廊 用户通常上传一张带有背景的照片,我们希望遮住背景,前景对象仍然与我们的自定义背景合成。物体大部分是深色的,形状很简单,因此如果在白色背景上拍摄,轮廓就会清晰。我们想提供非常易于使用的工具来帮助用户删除背景,它提供了与photoshop类似的功能,但并不复杂。我们还需要让用户将对象的大小调整为相同的大小 一些想法 魔杖工具 创建闭合贝塞尔线的线工具 一些预定义的形状作为遮罩。 该工具可以使用flash/air/html5制作。如果对象

我们正在制作一个应用程序,其中包括一个显示照片和文本的数字画廊

用户通常上传一张带有背景的照片,我们希望遮住背景,前景对象仍然与我们的自定义背景合成。物体大部分是深色的,形状很简单,因此如果在白色背景上拍摄,轮廓就会清晰。我们想提供非常易于使用的工具来帮助用户删除背景,它提供了与photoshop类似的功能,但并不复杂。我们还需要让用户将对象的大小调整为相同的大小

一些想法

魔杖工具 创建闭合贝塞尔线的线工具 一些预定义的形状作为遮罩。
该工具可以使用flash/air/html5制作。

如果对象始终比背景暗,则应使用一个简单的阈值方法和一个参数来设置它:所有比阈值亮的都是BG,其余都是FG。 如果不是这样,请看一下分水岭算法。我认为免费的OpenCV库http://opencv.willowgarage.com/wiki/ 来自Intel的包含一个实现。这些还需要很少的参数:种子点开始分割,因此用户只需单击前景对象,然后再次以交互方式设置阈值,直到选择整个对象。这很像魔杖。 如果这还不够,也许蛇和水平集方法适合你。用户可以围绕对象绘制一条粗糙的曲线,算法试图找到实际的精确边界。这些算法特别设计用于根据您定义的任何属性在前和背景之间找到最佳分离,并且它们可以用很少的参数(通常为2或3)进行控制,这对于大多数用户来说应该足够容易。我怀疑英特尔是否有这样一个实现,但我不久前用过这个:它非常好而且开源,所以你可以很容易地根据自己的需要采用它

我的建议是从OpenCV开始,因为它包含了很多不同的方法,这些方法对于大多数简单的问题都是足够的


干杯

听起来很有趣。你被困在哪里?我被困在项目有最后期限和预算,所以我们决定用户应该上传图片,我们把一些图片作为示例。但后来有人注意到,我们所有的图像都经过了完美的Photoshop处理,没有背景。这意味着用户必须上传Photoshop图像而不是原始图像,我们决定需要一个简单的工具来帮助用户完成这项工作。我如何将opencv嵌入在线应用程序?如果你想让它在客户端运行,你可能需要找到一个端口或端口你需要自己闪存的部分,但如果您可以在服务器端运行它,我只需要实现一个程序或库,它可以实现您想要的功能,并通过PHP或任何适合您的方式从页面调用它。