python使用opencv对图像mask处理的方法

yipeiwu_com6年前Python基础

MASK图像掩膜处理

在图像操作中有时候会用到掩膜处理,如果使用遍历法掩膜图像ROI区域对于python来讲是很慢的,所以我们要找到一种比较好的算法来实现掩膜处理。

假设我们有一副图像:

 

而我们关心的区域就在这一小堆线上,想把这一堆线提取出来,我们先通过numpy生成一个mask图像:

sss=np.zeros([480,640],dtype=np.uint8) 
sss[300:350,310:400]=255

生成一个640*480大小的一个图片,填充为0,然后在300:350,310:400区域全部填充为255,这个区域就是我们的ROI区域。如下图所示:

 

图中的高亮区域就是我们需要的ROI。接下来我们使用

image=cv2.add(img0, np.zeros(np.shape(img0), dtype=np.uint8), mask=sss)

就可以生成新的掩膜处理之后的图片了。其中,imag0是我们上面的那副线的源图,sss是我们的刚才生成的mask。结果如下图所示:

 

这样我们就可以生成新的带有掩膜效果的图像了,这种方法可以用来统计ROI内的关键点。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

爬山算法简介和Python实现实例

一、爬山法简介 爬山法(climbing method)是一种优化算法,其一般从一个随机的解开始,然后逐步找到一个最优解(局部最优)。 假定所求问题有多个参数,我们在通过爬山法逐步获得最...

Python实现完整的事务操作示例

本文实例讲述了Python事务操作实现方法。分享给大家供大家参考,具体如下: #coding=utf-8 import sys import MySQLdb class Transf...

浅谈Python3中strip()、lstrip()、rstrip()用法详解

简单来说,三种方法是为了删除字符串中不同位置的指定字符。其中,strip()用于去除字符串的首尾字符,同理,lstrip()用于去除左边的字符,rstrip()用于去除右边的字符 Py...

在Pytorch中计算自己模型的FLOPs方式

https://github.com/Lyken17/pytorch-OpCounter 安装方法很简单: pip install thop 基本用法: from torchv...

举例讲解Python设计模式编程中的访问者与观察者模式

访问者模式 我觉得Visitor模式是在补修改已有程序结构前提下,通过添加额外的访问者完成对代码功能的拓展 为什么这样用?当你的类层次较多,在某层结构中增加新的方法,要是在基类上面添加或...