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 os模块复制文件到指定文件夹的方法

复制一个文件夹的文件到指定目录下 import os import shutil import time start_time = time.time() # 需要被复制的文件夹...

python实现unicode转中文及转换默认编码的方法

本文实例讲述了python实现unicode转中文及转换默认编码的方法。分享给大家供大家参考,具体如下: 一、在爬虫抓取网页信息时常需要将类似"\u4eba\u751f\u82e6\u7...

python发送多人邮件没有展示收件人问题的解决方法

背景: 工作过程中需要对现有的机器、服务做监控,当服务出现问题后,邮件通知对应的人 问题: 使用python 2.7自带的email库来进行邮件的发送,但是发送后没有展示收件人列表内容...

Python统计分析模块statistics用法示例

本文实例讲述了Python统计分析模块statistics用法。分享给大家供大家参考,具体如下: 一 计算平均数函数mean() >>>import statist...

Python绘制二维曲线的日常应用详解

Python绘制二维曲线的日常应用详解

使用Python绘制出类似Excel或者MATLAB的曲线还是比较容易就能够实现的,需要用到的额外库有两个,numpy和matplotlib。使用这两个模块实现的曲线绘制其实在一定程度上...