python opencv 二值化 计算白色像素点的实例

yipeiwu_com7年前Python基础

贴部分代码

#! /usr/bin/env python
# -*- coding: utf-8 -*-
import cv2
import numpy as np
from PIL import Image

area = 0
def ostu(img):
  global area
  image=cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 转灰度
  blur = cv2.GaussianBlur(image,(5,5),0) # 阈值一定要设为 0 !高斯模糊
  ret3,th3 = cv2.threshold(blur,0,255,cv2.THRESH_BINARY+cv2.THRESH_OTSU) # 二值化 0 = black ; 1 = white
  # cv2.imshow('image', th3)
  # a = cv2.waitKey(0)
  # print a
  height, width = th3.shape
  for i in range(height):
    for j in range(width):
      if th3[i, j] == 255:
        area += 1
  return area

以上这篇python opencv 二值化 计算白色像素点的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python使用marshal模块序列化实例

本文实例讲述了python使用marshal模块序列化的方法,分享给大家供大家参考。具体方法如下: 先来看看下面这段代码: import marshal data1 = ['abc'...

对numpy中array和asarray的区别详解

array和asarray都可以将结构数据转化为ndarray,但是主要区别就是当数据源是ndarray时,array仍然会copy出一个副本,占用新的内存,但asarray不会。 举例...

Python3实现Web网页图片下载

先来介绍一些python web编程基础知识 1. GET与POST区别 1)POST是被设计用来向web服务器上放东西的,而GET是被设计用来从服务器取东西的,GET也能够向服务器传送...

python 对txt中每行内容进行批量替换的方法

python 对txt中每行内容进行批量替换的方法

如下所示: f = open('./val.txt') lines = f.readlines() #整行读取 f.close() for line in lines: rs =...

利用python为运维人员写一个监控脚本

利用python为运维人员写一个监控脚本

前言: 一直想写一个监控方面的脚本,然后想到了运维这方面的,后来就写了个脚本,下面话不多说了,来一起看看详细的介绍吧。 准备: psutil模块(基本使用方法可以参考这篇文章:/post...