python - 从图像中删除绿屏

标签 python opencv

所以我有下面这张图片:
enter image description here

如您所见,图像中有一些嘈杂的绿色轮廓。到目前为止,这是我使用 Python 使用 OpenCV 的最新输出。我还是个初学者,所以我需要你的帮助。

假设我要创建一个全新的脚本并提供此图像并“清理”图像,我将如何做?

编辑:
这是原图:
enter image description here

最佳答案

使用 Canny Edge Detection在你的形象上。然后根据它的样子使用 Morphological Dilation ( cv.dilate() ) 使边缘更厚一些。然后去除图像绿色 channel 的边缘或降低绿色 channel 的亮度。或者使像素透明。

This post陈述了以下方法:

1.) 将绿色像素转换为透明度。基本上在 HSV 颜色空间中使用过滤规则。

2.) 在头发和一些边界像素上,颜色与绿色混合。为了减少这个问题,这些像素被过滤和平衡以减少它们的绿色比例。

3.) 对所有边界像素应用渐变透明度。

关于python - 从图像中删除绿屏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51719472/

相关文章:

python - 为什么unittest.TestCase中的assert函数必须是成员函数?

python - 如何在 0 个值的 pandas 数据帧末尾添加 n 行?

python - 如何使用 Python 批量插入 Oracle 数据库?

c++ - opencv:将 iplimage 转换为 mat 后出错

python - pyinstaller有时找不到Matplotlib后端TkAgg

python-3.x - 在 Tkinter 标签内循环 OpenCV 图像 - 使用 esp32-cam

带有 Alpha channel 的 OpenCV getRectSubPix

python - 在 OpenCV Python 中获取 src 类型 CV_8UC3 到 CV_8UC1 时出错?

c++ - 如何使用 OpenCV 中可用的压缩算法?

python - 潜在语义分析 (LSA) 教程