python 统计相同像素值个数

目录

[python 统计相同像素值个数](#python 统计相同像素值个数)

最大值附近的值


python 统计相同像素值个数

python 复制代码
import cv2
import numpy as np
import time
from collections import Counter

# 读取图像
image = cv2.imread('mask16.jpg')


# 将图像转换为灰度图像
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

area=gray_image.shape[0]*gray_image.shape[1]
print('shape',gray_image.shape)
# 将灰度图像展平为一维数组
pixels = gray_image.flatten()

start=time.time()
# 使用 Counter 统计每个像素值的出现次数
pixel_counts = Counter(pixels)

most_commons = pixel_counts.most_common(10)

print('time',time.time()-start)
count=0
for most_common in most_commons:
    count+=most_common[1]
    print(most_common,count,count/len(pixels))
print(count,count/len(pixels))
# 打印每个像素值及其出现次数
# for pixel_value, count in pixel_counts.items():
#     print(f"Pixel value {pixel_value}: {count} times")

最大值附近的值

python 复制代码
import cv2
import numpy as np
import time
from collections import Counter

# 读取图像
image = cv2.imread('mask16.jpg')


# 将图像转换为灰度图像
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

area=gray_image.shape[0]*gray_image.shape[1]
print('shape',gray_image.shape)
# 将灰度图像展平为一维数组
pixels = gray_image.flatten()

start=time.time()
# 使用 Counter 统计每个像素值的出现次数
pixel_counts = Counter(pixels)

most_commons = pixel_counts.most_common(10)

print('time',time.time()-start)
count=0
max_pixel=int(most_commons[0][0])
for ii, most_common in enumerate(most_commons):
    if abs(max_pixel- int(most_common[0]))<5:
        count+=most_common[1]
        print(most_common,count,count/len(pixels))
    else:
        print('ffffff',most_common[0])
print(count,count/len(pixels))
相关推荐
qq_141826973217 分钟前
python通过curl访问deepseek的API调用案例
java·数据库·python
码农新猿类1 小时前
初入OpenCV
qt·opencv·计算机视觉
红衣小蛇妖2 小时前
Python基础学习-Day23
开发语言·python·学习
Hello world.Joey3 小时前
数据挖掘入门-二手车交易价格预测
人工智能·python·数据挖掘·数据分析·conda·pandas
刘延林.3 小时前
树莓5安装 PyCharm 进行python脚本开发
ide·python·pycharm
小洛~·~3 小时前
多模态RAG与LlamaIndex——1.deepresearch调研
人工智能·python·深度学习·神经网络·chatgpt
AndrewHZ3 小时前
【图像处理基石】遥感图像分析入门
图像处理·人工智能·深度学习·计算机视觉·遥感图像·技术分析·多光谱
程序小K3 小时前
OpenCV的CUDA模块进行图像处理
图像处理·人工智能·opencv
jndingxin3 小时前
OpenCVCUDA 模块中在 GPU 上对图像或矩阵进行 边界填充(padding)函数copyMakeBorder()
人工智能·opencv
q_q王3 小时前
‌FunASR‌阿里开源的语音识别工具
python·大模型·llm·语音识别