Python OpenCV实现OTSU二值化并统计白色像素数量
本文介绍利用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二值化并计算白色像素点的完整示例,希望能为读者提供有效的参考,同时也欢迎大家继续支持本站获取更多技术内容。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









