首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用魔法包移除图像的背景?

如何用魔法包移除图像的背景?
EN

Stack Overflow用户
提问于 2018-05-23 04:36:11
回答 2查看 3.8K关注 0票数 2

是否可以使用magick包删除图像的背景?

我知道如何在Gimp/Inkscape中使用边缘检测来裁剪轮廓;但是,我希望用R自动处理大量图像。

我的最终目标是使用ggimage包将这些图像绘制为x,y坐标,但这些图像的背景目前正在重叠(狗与芬克相比)。

代码语言:javascript
复制
library("ggplot2")
library("ggimage")

set.seed(2017-02-21)
d <- data.frame(x = rnorm(10),
                y = rnorm(10),
                image = sample(c("http://www.supercoloring.com/sites/default/files/silhouettes/2015/05/cairn-terrier-black-silhouette.svg", "https://jeroenooms.github.io/images/frink.png"),
                               size=10, replace = TRUE)
                )

ggplot(d, aes(x, y)) + geom_image(aes(image=image))

人们可以使用图像magick的image_trim()来修剪图像的边缘

代码语言:javascript
复制
img <- image_read_svg("http://www.supercoloring.com/sites/default/files/silhouettes/2015/05/cairn-terrier-black-silhouette.svg")
image_trim(img)

但这不是我想要的。

有什么想法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-05-23 04:58:24

image_transparent()函数就是这样做的,例如:

代码语言:javascript
复制
logo <- image_read("logo:")
image_transparent(logo, 'white')

图像的白色部分将变得透明,对于示例中的简单图像来说,这应该足够了。

票数 7
EN

Stack Overflow用户

发布于 2019-05-08 07:32:28

请看我在https://yulab-smu.github.io/treedata-book/image-processing-using-magick-package.html#example-1-remove-background-of-images上的答案。

您可以通过magick参数将geom_image包提供的图像处理功能传递给geom_image

票数 -3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50479875

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档