当前位置: 首页 > news >正文

信息化建设杂志社官方网站论坛类网站设计

信息化建设杂志社官方网站,论坛类网站设计,网站收录查询方法,评价一个网站设计项目的好坏丢字的本质 丢字的本质是在一段音频中一小段数据变为0 丢字对主观感受的影响 1. 丢字位置 丢字的位置对感知效果有很大影响。如果丢字发生在音频信号的静音部分或低能量部分#xff0c;感知可能不明显#xff1b;而如果丢字发生在高能量部分或关键音素上#xff0c;感知… 丢字的本质 丢字的本质是在一段音频中一小段数据变为0 丢字对主观感受的影响 1. 丢字位置 丢字的位置对感知效果有很大影响。如果丢字发生在音频信号的静音部分或低能量部分感知可能不明显而如果丢字发生在高能量部分或关键音素上感知会非常明显。 2. 丢字持续时间 虽然10ms的丢字时间相对较短但如果丢字发生在关键音素或瞬态如爆破音、元音等上感知会更加明显。 3. 音频内容 不同类型的音频内容对丢字的敏感度不同。例如语音信号中的丢字可能比音乐信号中的丢字更容易被感知因为语音信号中有更多的瞬态和关键音素。 4. 人耳的感知能力 人耳对不同频率和时间的变化有不同的敏感度。某些频率范围内的丢字可能更容易被感知而其他频率范围内的丢字可能不明显。 丢字位置和丢字持续时间的影响 判断丢字的位置在高能量和低能量位置以及丢字时间对pesq分数的影响 选取一段音频随机在其高能量和低能量位置丢字丢字时间分别设置为 [0.001, 0.002, 0.003, 0.004, 0.005, 0.006, 0.007, 0.008, 0.009, 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.1] 单位为s生成所有丢字的音频再对丢字音频进行pesq评分画成折线图输出 脚本代码如下 import numpy as np from scipy.io import wavfile from pesq import pesq from pesq import PesqError import librosa import matplotlib.pyplot as pltdef create_single_drop_audio(data, drop_start, drop_duration, sample_rate):在音频信号中指定位置并将该位置的一小段音频数据设置为零num_samples len(data)drop_samples int(drop_duration * sample_rate)drop_end drop_start drop_samplesprint(drop_start,drop_duration)# 创建丢字音频dropped_data np.copy(data)dropped_data[drop_start:drop_end] 0return dropped_data# 读取原始音频文件并转换采样率 original_file audio_file.wav target_sample_rate 16000 # 选择8000或16000# 使用librosa加载音频文件并转换采样率 original_data, original_sample_rate librosa.load(original_file, srtarget_sample_rate)# 计算音频信号的能量分布 energy np.abs(original_data)**2 window_size int(0.01 * original_sample_rate) # 10ms窗口 energy np.convolve(energy, np.ones(window_size), same)# 随机选择一个低能量位置进行丢字 low_energy_indices np.where(energy np.percentile(energy, 20))[0] # 选择能量最低的20% high_energy_indices np.where(energy np.percentile(energy, 80))[0] # 选择能量最高的20%# 定义不同的drop_duration值 drop_durations [0.001, 0.002, 0.003, 0.004, 0.005, 0.006, 0.007, 0.008, 0.009, 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.1]# 存储PESQ分数 pesq_scores_low_energy [] pesq_scores_high_energy []# 计算原始音频的PESQ分数与自身比较 try:original_pesq_score pesq(original_sample_rate, original_data, original_data, wb)print(fOriginal Audio PESQ Score: {original_pesq_score:.2f}) except PesqError as e:print(fError calculating PESQ for original audio: {e})original_pesq_score None# 对低能量部分进行丢字 drop_start np.random.choice(low_energy_indices) for drop_duration in drop_durations:dropped_data create_single_drop_audio(original_data, drop_start, drop_duration, sample_rateoriginal_sample_rate)# 保存丢字音频output_file flow_energy_dropped_audio_{int(drop_duration*1000)}ms.wavwavfile.write(output_file, original_sample_rate, (dropped_data * 32767).astype(np.int16))try:pesq_score pesq(original_sample_rate, original_data, dropped_data, wb)pesq_scores_low_energy.append(pesq_score)print(fLow Energy - Drop Duration: {drop_duration:.3f}s, PESQ Score: {pesq_score:.2f})except PesqError as e:print(fError calculating PESQ for drop_duration {drop_duration} in low energy: {e})pesq_scores_low_energy.append(None)# 对高能量部分进行丢字 drop_start np.random.choice(high_energy_indices) for drop_duration in drop_durations:dropped_data create_single_drop_audio(original_data, drop_start, drop_duration, sample_rateoriginal_sample_rate)# 保存丢字音频output_file fhigh_energy_dropped_audio_{int(drop_duration*1000)}ms.wavwavfile.write(output_file, original_sample_rate, (dropped_data * 32767).astype(np.int16))try:pesq_score pesq(original_sample_rate, original_data, dropped_data, wb)pesq_scores_high_energy.append(pesq_score)print(fHigh Energy - Drop Duration: {drop_duration:.3f}s, PESQ Score: {pesq_score:.2f})except PesqError as e:print(fError calculating PESQ for drop_duration {drop_duration} in high energy: {e})pesq_scores_high_energy.append(None)# 绘制折线图 plt.figure(figsize(12, 8)) plt.plot([0] drop_durations, [original_pesq_score] pesq_scores_low_energy, markero, linestyle-, colorb, labelLow Energy PESQ Score) plt.plot([0] drop_durations, [original_pesq_score] pesq_scores_high_energy, markero, linestyle-, colorr, labelHigh Energy PESQ Score) plt.xlabel(Drop Duration (s)) plt.ylabel(PESQ Score) plt.title(PESQ Score vs Drop Duration (Low Energy vs High Energy)) plt.grid(True) plt.legend() plt.show() 运行三次随机选择不同的高能量和低能量部分生成的折线图 从图表上看高能部分丢字只要出现1ms的丢字mos下降的就很明显mos下降0.2主观听感上就有一个明显的感知“bo”了一声。 但是低能量部分出现丢字后有时候mos下降了有时候没有下降10ms以内的丢字mos基本不会下降但是主观听感上即使mos下降到3.8也没有明显的感知 结论 pesq这种评分方式不能很好的评价音频丢字给主观带来的影响
http://www.pierceye.com/news/35160/

相关文章:

  • 发布做任务网站制作个人网站的要求
  • 网站图片居中代码潜江市网站
  • 网站流行趋势书香校园网站建设
  • 安徽万振建设集团网站贵阳建设公司网站
  • 网站对位电商网站构建
  • 免费奖励的网站有哪些做淘宝网站的编程实例
  • 网站群 优点哪个网站可以做微信头图
  • 中国响应式网站建设建站工具cms
  • vs2008做html5网站网络推广文案有哪些
  • 网站建设项目经验网站关键词 公司
  • 顺德网站建设报价门户网站做
  • 安阳企业建网站荣昌集团网站建设
  • 哪个网站做恒指好丹东手机网站
  • 成都网站建设方案济源网站建设价格
  • 布吉做棋牌网站建设找哪家效益快WordPress渗透思路
  • 做网站得先注册域名吗比尤果网做的好的网站
  • wordpress 无法编辑主题整站关键词排名优化
  • 云南建设银行官方网站wordpress各版本下载
  • 集团网站建设方案书wordpress文章管理模板下载
  • 设计站网站登录注册怎么做的
  • 网站怎么做才能被百度收录北京住房与城乡建设厅网站首页
  • 创新的医疗网站建设wordpress被镜像
  • 网站制作西安网络技术开发有限公司
  • 一 通过网站推广品牌超炫html5网站模板
  • 做直播网站的上市公司网站备案取消前置审批
  • 做房产网站接不到电话公司怎样建自己网站
  • 网站建设捌金手指花总二九python网站开发代码
  • 建设银行u盾自动弹出网站做房产的一般用哪个网站好
  • 手机网站整站模板下载广州网站托管
  • 个人网站导航模版做网站联盟