Python OpenCV实现OTSU二值化并统计白色像素数量

竹里
竹里
发布时间:2026-10-13 | 1人浏览过
原创

本文介绍利用Python和OpenCV库进行图像OTSU自动阈值二值化的方法,并通过遍历灰度图像像素值来精确统计白色区域(像素值为255)的总数量。代码包含高斯模糊预处理、OTSU算法应用及像素计数逻辑,适用于需要量化图像白色区域大小的场景。

Python OpenCV OTSU二值化与白色像素统计实现

以下是实现该功能的核心代码片段。


#! /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进行OTSU二值化并计算白色像素点的完整示例,希望能为读者提供有效的参考,同时也欢迎大家继续支持本站获取更多技术内容。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表