我想知道从图像中提取形状(比如说一些衣服)的最佳方法是什么
即从该图像中提取粉红色的衣服并使背景显得透明。
我的最初想法是将其读入numpy
数组
from matplotlib.image import imread
image_name = "image009.png"
img = imread(image_name)
然后在RGB数据上计算直方图,以找到最常见的颜色。然后,我可以假定这种最常见的颜色代表背景,在本示例中为白色。然后,我可以使背景透明,从而“提取”出粉红色的衣服。
但是,如果背景不是最常见的颜色,我显然这种方法将失败。因此,人们还有其他建议的解决方案或方法来实现这一目标吗?
感谢您的帮助!
答案 0 :(得分:1)
我认为这篇文章也许是朝着正确方向迈出的一步? How do I remove the background from this kind of image?
编辑:这也可能有用。我已经在一些图像上对其进行了测试,并且效果很好。 https://nxtify.wordpress.com/2015/02/24/image-background-removal-using-opencv-in-python/