WS-PSNR不同投影格式的权重计算(ERP CMP)

本文详细介绍了如何在ERP比较映射(CMP)中计算WS-PSNR不同投影格式的权重,并将结果保存到文本文件中,为视频处理和质量评估提供关键数据。

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

计算权重,保存到txt中。

#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>

#include <fstream>
#include <iostream>

double getWeight(int form, int i, int j, int width, int height){
   
   
	double a;
	//======  format0: Equirectangular  =======  
	if (form == 0) {
   
   
		a = cos((j - (height / 2 - 0.5))*3.1415926 / height);
		return a;
	}
	else if (form == 5) {
   
   
		int ci, cj, r2;
		double d2
### WS-PSNR 的定义 加权峰值信噪比 (Weighted Peak Signal-to-Noise Ratio, WS-PSNR) 是一种改进版的 PSNR 计算方法,旨在更贴近人类视觉系统的特性。传统 PSNR 均匀对待图像中的每一个像素,而 WS-PSNR 则考虑了不同区域的重要性差异,通常通过引入权重矩阵来实现[^1]。 ### 加权机制 为了更好地反映人眼的感受,在计算过程中加入了空间频率响应模型或边缘保持滤波器作为权重因子。这些权重可以基于局部对比度、纹理复杂度等因素动态调整,使得重要特征得到更高重视,从而提高评估准确性。 ### 数学表达式 设原图为 \( I \),失真后的目标图为 \( K \),则 WS-PSNR 可表示为: \[ WS\text{-}PSNR(I,K)=10\times log_{10}\left(\frac{MAX_I^2}{MSE_w}\right)\] 其中, - \( MAX_I \) 表示信号的最大可能功率; - \( MSE_w=\sum _i w(i)(I(i)-K(i))^2/\sum_iw(i) \) ,\( w(i) \) 代表第 i 个像素位置处对应的权重系数; ```python import numpy as np def ws_psnr(image_true, image_test, weights): mse_weighted = np.sum(weights * ((image_true - image_test)**2)) / np.sum(weights) max_pixel_value = float(np.max([np.max(image_true), np.max(image_test)])) psnr_result = 10 * np.log10((max_pixel_value ** 2) / mse_weighted) return psnr_result ``` ### 应用场景 WS-PSNR 广泛应用于图像压缩质量评价领域,特别是在视频编码标准测试中扮演着不可或缺的角色。由于其能够有效区分不同类型的人类感兴趣区(ROI),因此也被用于医学影像处理等领域,帮助医生更加精准地判断病变部位的变化情况。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值