Python OpenCV学习笔记之:使用Grabcut算法进行图像背景和前景分割
Python OpenCV学习笔记之:使用Grabcut算法进行图像背景和前景分割
IOTService 发表于1年前
Python OpenCV学习笔记之:使用Grabcut算法进行图像背景和前景分割
  • 发表于 1年前
  • 阅读 917
  • 收藏 2
  • 点赞 0
  • 评论 0

移动开发云端新模式探索实践 >>>   

摘要: 代码地址:https://github.com/juxiangwu/tensorflow-learning/tree/master/opencv
# -*- coding: utf-8 -*-
"""
图像分割
"""

import numpy as np
import cv2
from matplotlib import pyplot as plt

img = cv2.imread('../../../datas/images/building.jpg')
mask = np.zeros(img.shape[:2],np.uint8)
# 背景模型
bgdModel = np.zeros((1,65),np.float64)
# 前景模型
fgdModel = np.zeros((1,65),np.float64)

rect = (50,50,450,290)
# 使用grabCut算法
cv2.grabCut(img,mask,rect,bgdModel,fgdModel,5,cv2.GC_INIT_WITH_RECT)

mask2 = np.where((mask==2)|(mask==0),0,1).astype('uint8')
img = img*mask2[:,:,np.newaxis]

plt.imshow(img),plt.colorbar(),plt.show()
  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 15
博文 134
码字总数 29156
×
IOTService
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: