opencv grabCap python实现

处理前

image.png

处理后

迭代五次

处理前后对比

迭代2次

处理后模特的蓝眼珠被涂黑了,看久了简直是精神污染。解决办法是去mask里改动眼珠位置的值,设成确定的前景。

https://www.cnblogs.com/little-monkey/p/7598529.html

上python源码:
import cv2
import numpy as np
import matplotlib.pyplot as plt

image = cv2.imread("C:/Users/liuxu/desktop/3.jpg")//打开一张图片,如果后续操作出错,先查一下路径写对了没
mask = np.zeros((image.shape[:2]),np.uint8)// 0表示明确属于背景,1表示明确属于前景
rec = (150,290,350,550)
bgdModel = np.zeros((1,65),np.float64)
fgdModel = np.zeros((1,65),np.float64)

res = cv2.grabCut(image,mask,rec,bgdModel,fgdModel,2,cv2.GC_INIT_WITH_RECT)
mask2 = np.where((mask==2)|(mask==0),0,1).astype('uint8') //明确属于背景和可能属于背景的地方都置为0,RGB的全0为黑色。
img = image*mask2[:,:,np.newaxis] 

cv2.imshow('hello',img)
cv2.waitKey(0)
cv2.destroyAllWindows() 

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏java初学

磁盘调度算法寻道问题

45640
来自专栏AI2ML人工智能to机器学习

强化学习体验之小游戏 FlappyBird

在安装完TensorFlow之后(详见” Install TensorFlow in Ubuntu 16.04.1 LTS “), 就可以测试各种深度学习的算法...

10810
来自专栏生信小驿站

R语言之可视化⑩坐标系统目录

ggplot2可以通过coord_flip()切换x和y轴。例如,如果你想要水平箱形图。 这对长标签也很有用:很难让它们在x轴上不重叠的情况下适合。

12530
来自专栏ATYUN订阅号

如何在Python中保存ARIMA时间序列预测模型

自回归移动平均模型(ARIMA)是一种常用于时间序列分析和预测的线性模型。 statsmodels库提供了Python中使用ARIMA的实现。ARIMA模型可以...

49060
来自专栏AI研习社

Github 项目推荐 | 用 Keras 实现的神经网络机器翻译

本库是用 Keras 实现的神经网络机器翻译,查阅库文件请访问: https://nmt-keras.readthedocs.io/ Github 页面: ht...

411120
来自专栏嵌入式程序猿

运算放大器使用必须遵循的六条军规

运算放大器是作为最通用的模拟器件,广泛用于信号变换调理、ADC采样前端、电源电路等场合中。虽然运放外围电路简单,不过在使用过程中还是有很多需要注意的地方。 1...

36660
来自专栏图形学与OpenGL

实验2 关系可视化

启动RStudio后,菜单栏点击Tools>Install Packages…中输入ggplot2,安装;

16920
来自专栏目标检测和深度学习

Github 项目推荐 | 用 Keras 实现的神经网络机器翻译

本库是用 Keras 实现的神经网络机器翻译,查阅库文件请访问: https://nmt-keras.readthedocs.io/ Github 页面: ht...

40670
来自专栏生信小驿站

可视化 坐标系统

ggplot2可以通过coord_flip()切换x和y轴。例如,如果你想要水平箱形图。 这对长标签也很有用:很难让它们在x轴上不重叠的情况下适合。

8820
来自专栏机器人网

秒懂!十四种阀门的工作原理动图

单向阀 ▼ ? 液动换向阀 ▼ ? 手动换向阀 ▼ ? 三位五通换向阀 ▼ ? 三位四通换向阀 ▼ ? 二位四通换向阀 ▼ ? 二位二通换向阀 ▼ ? 溢流阀...

566100

扫码关注云+社区

领取腾讯云代金券