我正在构建一个应用程序,允许人们上传自己在白色背景下的图像,该应用程序将创建该人的剪影。
我很难抠出背景。我使用的是 GPUImage
框架,GPUImageChromaKeyBlendFilter
非常适合颜色,但如果您使用白色/黑色,则很难抠出其中一种颜色。如果我将按键设置为白色或黑色,则两者的按键相同。
有什么建议吗?
最佳答案
在电影制作中通常使用蓝色或绿色屏幕进行色度键控而不是白色是有原因的。照片中的任何东西都可以是白色或足够接近白色,尤其是眼睛或高光或只是皮肤的一部分。此外,很难找到一个没有阴影的均匀白墙,至少是你的拍摄对象转换的。 我建议构建直方图,在最亮的颜色中找到最常用的颜色,然后使用某个阈值搜索该颜色的最大区域。然后从该区域进行洪水填充,直到遇到足够不同的颜色。所有这些都可以在软件中轻松完成,除非您需要实时视频流。
关于objective-c - 适用于 iOS 的 Luma Key(从图像创建 alpha 蒙版),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12081257/