python计算一、二、三阶颜色矩

该博客介绍了如何使用Python读取图片并计算一、二、三阶颜色矩,包括批量处理文件夹下所有图片的颜色矩计算。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先读取图片数据,转化成矩阵格式:

from PIL import Image
import numpy as np

def getimage(path = path):
    #path为需要读取图片的路径
    img = Image.open(path)
    M,N = img.size
    r,g,b = img.split()
    rd = np.asarray(r)
    gd = np.asarray(g)
    bd = np.asarray(b)
    return rd,gd,bd

分别计算一二三阶颜色矩:

#r通道的一阶颜色矩
rd_1 = rd.mean()

#r通道的二阶颜色矩
rd_2 = rd.std()

#r通道的三阶颜色矩
#定义一个求三阶颜色矩的函数
def var(x=None):
    mid = np.mean(((x - x.mean()) ** 3))
    return np.sign(mid) * abs(mid) ** (1/3)

批量求一个文件夹下所有图片的各阶颜色矩:

import os

def getimagedata(path=path):
    filename = os.listdir(path)
    n = len(filename)
    data = np.zeros([n,9])
    for i in range(n):
            img = Image.open(path+'\\'+imagenames[i])
            M,N = img.size
            r,g,b = img.split
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值