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远程连接MySQL数据库

本文实例为大家分享了python远程连接MySQL数据库的具体代码,供大家参考,具体内容如下 连接数据库 这里默认大家都已经配置安装好 MySQL 和 Python 的MySQL 模块,...

pyv8学习python和javascript变量进行交互

python取得javascript里面的值 复制代码 代码如下:import PyV8 with PyV8.JSContext() as env1:   ...

详解Django+Uwsgi+Nginx 实现生产环境部署

uwsgi介绍 uWSGI是一个Web服务器,它实现了WSGI协议、uwsgi、http等协议。Nginx中HttpUwsgiModule的作用是与uWSGI服务器进行交换。 要注意...

python 使用正则表达式按照多个空格分割字符的实例

python 使用正则表达式按照多个空格分割字符的实例

程序代码如下 import os import re os.system("nmap -sP 192.168.3.0/24") //扫描IP mac = os.popen("cat...

django基础学习之send_mail功能

前言 我们知道python中smtplib模块用于邮件的功能,而django对这个这模块进行封装,使得它使用起来十分简单。 django.core.mail就是django邮件的核心模...