python给图像加上mask,并提取mask区域实例

yipeiwu_com5年前Python基础

python对图像提取mask部分:

代码:

#coding:utf-8
import os
import cv2
import numpy as np

def add_mask2image_binary(images_path, masks_path, masked_path):
# Add binary masks to images
  for img_item in os.listdir(images_path):
    print(img_item)
    img_path = os.path.join(images_path, img_item)
    img = cv2.imread(img_path)
    mask_path = os.path.join(masks_path, img_item[:-4]+'.png') # mask是.png格式的,image是.jpg格式的
    mask = cv2.imread(mask_path, cv2.IMREAD_GRAYSCALE) # 将彩色mask以二值图像形式读取
    masked = cv2.add(img, np.zeros(np.shape(img), dtype=np.uint8), mask=mask) #将image的相素值和mask像素值相加得到结果
    cv2.imwrite(os.path.join(masked_path, img_item), masked)
images_path = '/home/xinan/cat_test/image/'
masks_path = '/home/xinan/cat_test/catmask/'
masked_path = '/home/xinan/cat_test/masked/'
add_mask2image_binary(images_path, masks_path, masked_path)

效果图:

mask:

image:

result:

以上这篇python给图像加上mask,并提取mask区域实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

树莓派与PC端在局域网内运用python实现即时通讯

电脑和树莓派在同一局域网内,先在电脑和树莓派创建python运行环境,然后在树莓派中用python运行rpi.py;在电脑上运行computer.py;电脑上输入字符即可在树莓派上即时显...

python opencv实现旋转矩形框裁减功能

python opencv实现旋转矩形框裁减功能

本文实例为大家分享了python opencv实现旋转矩形框裁减的具体代码,供大家参考,具体内容如下 经常遇见旋转矩形框的裁减问题,那么思路是,将矩形框旋转正然后再裁减 # -*-...

win10安装tensorflow-gpu1.8.0详细完整步骤

win10安装tensorflow-gpu1.8.0详细完整步骤

在整个安装的过程中也遇到了很多的坑,故此做个记录,争取下次不再犯! 我的整个基本配置如下: 电脑环境如下:win10(64位)+CPU:E5-2603 +GPU:GTX 1070 需要安...

Django多数据库的实现过程详解

有些项目可能涉及到使用多个数据库的情况,方法很简单。 1.在settings中设定DATABASE 比如要使用两个数据库: DATABASES = { 'default': {...

python实现class对象转换成json/字典的方法

本文实例讲述了python实现class对象转换成json字典的方法。分享给大家供大家参考,具体如下: # -*- encoding: UTF-8 -*- class Student...