加权平均法 -- 算法

加权平均法,即将各数值乘以相应的单位数,然后加总求和得到总体值,再除以总的单位数。
平均数的大小不仅取决于总体中各单位的标志值(变量值)的大小,而且取决于各标志值出现的次数(频数),由于各标志值出现的次数对其在平均数中的影响起着权衡轻重的作用,因此叫做权数。 
举例说明,下面是一个同学的某一科的考试成绩: 

平时测验 80, 期中 90, 期末 95 

学校规定的科目成绩的计算方式是: 

平时测验占 20%; 

期中成绩占 30%; 

期末成绩占 50%; 

这里,每个成绩所占的比重叫做权数或权重。那么, 

加权平均值 = 80*20% + 90*30% + 95*50% = 90.5 

算数平均值 = (80 + 90 + 95)/3 = 88.3 

上面的例子是已知权重的情况。下面的例子是未知权重的情况: 

股票A,1000股,价格10; 

股票B,2000股,价格15; 

算数平均 = (10 + 15) / 2 = 12.5; 

加权平均 = (10 x 1000 + 15 x 2000) / (1000 + 2000) = 13.33 

其实,在每一个数的权数相同的情况下,加权平均值就等于算数平均值。
  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
加权LBP(Local Binary Pattern)是一种用于图像处理的特征提取算法,它可以用于纹理分类、人脸识别等领域。加权LBP与传统的LBP相比,它引入了权重因子,可以更好地描述图像的纹理特征。下面是使用Python实现加权LBP的步骤: 1.将图像转换为灰度图像。 2.对于每个像素,计算其8个邻域像素与中心像素的差值,并将差值转换为二进制数。 3.根据二进制数计算加权值,加权值的计算公式为:$w_i=2^i$,其中$i$表示二进制数中1的个数。 4.将所有像素的加权值相加,得到该像素的加权LBP值。 5.将所有像素的加权LBP值组成一个向量,作为该图像的特征向量。 下面是一个使用Python实现加权LBP的例子: ```python import cv2 import numpy as np # 定义计算加权LBP值的函数 def calc_weighted_lbp(img): rows, cols = img.shape dst = np.zeros((rows-2, cols-2), dtype=np.uint8) for i in range(1, rows-1): for j in range(1, cols-1): binary = '' center = img[i, j] for m in [-1, 0, 1]: for n in [-1, 0, 1]: if m == 0 and n == 0: continue diff = img[i+m, j+n] - center if diff >= 0: binary += '1' else: binary += '0' weight = 0 for k in range(len(binary)): if binary[k] == '1': weight += 2**k dst[i-1, j-1] = weight return dst # 读取图像并转换为灰度图像 img = cv2.imread('test.jpg') gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 计算加权LBP特征向量 lbp = calc_weighted_lbp(gray) # 输出特征向量 print(lbp) ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值