Python Opencv提取图片中某种颜色组成的图形的方法

yipeiwu_com7年前Python基础

主要目标识别图中红色的裂缝,尝试了几种不同的方法,最后发现比较每一点的RGB差值可以很好的解决这个问题,也就是提取图片中的红色相关信息。处理结果如下:

实现的代码如下,注意opencv读入的图片通道顺序是bgr:

import cv2
import matplotlib.pyplot as plt
imagepath = r'tear/11.jpg'
image = cv2.imread(imagepath)
height,width,channel = image.shape
for i in range(height):
  for j in range(width):
    b,g,r = image[i,j]
    if((r-b)>30 and (r-g)>30): #对蓝色进行判断,30不错
      b=0
      g=0
      r=0
    else:
      b=255
      g=255
      r=255
        
    image[i,j]=[r,g,b]
plt.figure(figsize=(20,10))
plt.imshow(image)
plt.show()

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

相关文章

python读取oracle函数返回值

python读取oracle函数返回值

在oracle中创建一个函数,本来是想返回一个index table的,没有成功。想到文本也可以传输信息,就突然来了灵感,把返回值设置文本格式。 考虑到返回数据量可能会很大,varcha...

python正则表达式match和search用法实例

本文实例讲述了python正则表达式match和search用法。分享给大家供大家参考。具体分析如下: python提供了2中主要的正则表达式操作:re.match 和 re.searc...

Python ORM框架SQLAlchemy学习笔记之安装和简单查询实例

最近正好在寻求一种Python的数据库ORM (Object Relational Mapper),SQLAlchemy (项目主页)这个开源项目进入了我的视线,本来想尝试着使用Djan...

Python THREADING模块中的JOIN()方法深入理解

看了oschina上的两个代码,受益匪浅。其中对join()方法不理解,看python官网文档的介绍: join([timeout]):等待直到进程结束。这将阻塞正在调用的线程,直到被调...

Python中使用platform模块获取系统信息的用法教程

操作系统相关 system() : 操作系统类型(见例) version(): 操作系统版本 release(): 操作系统发布号, 例如win 7返回7, 还有如NT,...