作业1 | 分析音频时域频域特性&计算RGB、YUV格式图像概率分布及熵

该实验分析了浊音、清音、爆破音的时域频域特性,以及256*256分辨率的RGB和YUV图像的各通道概率分布和熵。时域表现为浊音短时平均幅度最大,清音短时过零率最高。频域中浊音低频能量显著,清音高频能量突出。RGB和YUV文件的熵计算结果显示了不同颜色通道的信息分布情况。实验者认识到在代码编写和逻辑梳理方面有待提高。
摘要由CSDN通过智能技术生成

一、实验要求

1.使用音频分析软件分析浊音清音爆破音的时域及频域特性。
2. 对down.rgb和down.yuv文件分析三个通道的概率分布,并计算各自的
要求:两个文件的分辨率均为256*256.存储格式为RGB的文件按每个像素BGR分量依次存放;YUV格式为4:2:0采样空间,按照全部像素的Y数据块、U数据块和V数据块依次存放。

二、实验1结果

分析浊音、清音爆破音的时域及频域特性。

1、浊音/g/

时域分析
频域分析

2、清音/s/

时域分析
频域分析

3、爆破音/t/

时域分析
频域分析

总结

(1)时域:短时平均幅度浊音最大,清音居中,爆破音最低;短时过零率清音最大,爆破音居中,浊音最低。
(2)频域:浊音的低频能量较大,在300Hz左右处有峰值;清音高频能量较大,在20000Hz左右处有峰值;爆破音能量呈下降趋势,无明显峰值。

三、实验2结果

1、分析RGB文件的概率分布及熵

(1)代码

#include "iostream"
#include"stdio.h"
#include"math.h"
using namespace std;

int main()
{
   
	//存放rgb分量和图像的值
	unsigned char* r = new unsigned char[256*256];
	unsigned char* g = new unsigned char[256*256];
	unsigned char* b = new unsigned char[256*256];
	unsigned char* img = new unsigned char[256*256*3];
	//读取图像
	FILE* fp = fopen("D:\\数据压缩作业\\down.rgb", "rb");
	if (fp == NULL)
		cout << "无法读取图像" << endl;
	fread(img, sizeof(unsigned char), 256*256*3, fp);
	fclose(fp);
	//按每个像素b、g、r分量依次存放
	for (int i = 0;i < 256*256; i++)
	{
   
		b[i] = img[3*i];
		g[i] = img[3*i+1];
		r[i] = img[3*i+2];
	}

	//计算rgb概率分布
	double frer[256] = {
   0},freg[256] = {
   0},freb[256]
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值