如何快速分析音频中的各种频率成分

从视频中提取音频

from moviepy.editor import VideoFileClip# Load the video file and extract audio
video_path = "/mnt/data/WeChat_20241026235630.mp4"
video_clip = VideoFileClip(video_path)# Extract audio and save as a temporary file for further analysis
audio_path = "/mnt/data/extracted_audio.wav"
video_clip.audio.write_audiofile(audio_path)audio_path

分析分离出的音频

import numpy as np
import matplotlib.pyplot as plt
from scipy.io import wavfile
from scipy.fft import fftaudio_path="/mnt/data/extracted_audio.wav"
# Load the audio file
sample_rate, audio_data = wavfile.read(audio_path)# If the audio has two channels (stereo), convert it to mono by averaging the channels
if audio_data.ndim > 1:audio_data = audio_data.mean(axis=1)# Select a segment of the audio for analysis (e.g., the first 5 seconds)
duration_seconds = 5
num_samples = duration_seconds * sample_rate
audio_segment = audio_data[:num_samples]# Perform FFT on the audio segment to get the frequency spectrum
audio_fft = fft(audio_segment)
frequencies = np.fft.fftfreq(len(audio_segment), 1 / sample_rate)
magnitude = np.abs(audio_fft)# Filter positive frequencies for plotting
positive_frequencies = frequencies[:len(frequencies) // 2]
positive_magnitude = magnitude[:len(magnitude) // 2]# Plot the frequency spectrum
plt.figure(figsize=(12, 6))
plt.plot(positive_frequencies, positive_magnitude)
plt.title("Frequency Spectrum of Audio")
plt.xlabel("Frequency (Hz)")
plt.ylabel("Magnitude")
plt.xlim(0, 5000)  # Focus on lower frequencies (common range for mechanical noises)
plt.grid(True)
plt.show()

在这里插入图片描述

这是音频的频谱图,展示了在0到5000 Hz范围内的频率成分。通过观察图中的频率峰值,我们可以得出以下初步分析:

主要频率峰值:

  • 如果在高频范围(1000 Hz以上)有明显峰值,可能来源于电机的旋转噪音,尤其是电机的无刷运行特性。
  • 如果在中低频范围(200-1000Hz)出现峰值,可能是齿轮啮合、传动系统或轮胎摩擦噪声。
  • 低频段(100 Hz以下)的峰值一般是由振动噪声或结构传递噪音引起。

噪声来源可能性:

  • 电机噪声:如果有高频噪声,电机或其驱动电路可能是主要噪声源。
  • 传动系统噪声:中频峰值可能与齿轮啮合或皮带传动有关,可能由于齿轮不对中、松动或缺乏润滑等原因引起。
  • 轮胎和路面摩擦:在较低频率的情况中,轮胎与路面接触的摩擦噪声较为常见。

常见频率峰值的音频噪声源

常见的频率峰值可以帮助识别音频噪声的来源。以下是一些常见的噪声源及其对应的频率范围和特点:

  • 电机噪声
    无刷直流电机(BLDC):主要噪声峰值在高频段(1000 Hz以上),因其高速旋转和换向特性,可能会在电机转速的倍频位置产生峰值。
    有刷电机:通常会产生中频至高频噪声(300-2000 Hz),由于电刷和换向器的摩擦,带来高频成分。
    步进电机:通常在200-600 Hz之间产生噪声峰值,其噪声源于步进脉冲和扭矩振动,尤其在低速时更明显。
  • 齿轮传动噪声
    齿轮啮合频率:齿轮传动系统中最明显的频率峰值通常是齿轮啮合频率(Gear Mesh Frequency, GMF),典型频率范围在200-1000 Hz之间。
    倍频噪声:齿轮系统可能会在啮合频率的倍频位置产生额外的噪声峰值,尤其在齿轮不对中或磨损情况下。
  • 轴承噪声
    滚珠轴承缺陷频率:轴承噪声通常位于中高频(500 Hz以上),主要来源于内外圈、滚珠或保持架的缺陷。
    轴承故障频率:
  • 外圈缺陷:产生的频率取决于滚珠通过外圈的频率,通常较低频段。
  • 内圈缺陷:通常位于较高频段,频率与轴承的转速和滚珠通过内圈的频率有关。
    保持架缺陷:产生频率较低,因为保持架运动速度较慢。
  • 振动和结构共振
    机械共振频率:机械结构和支架可能会在某些频率上产生共振峰值,通常是低频段(20-200 Hz)。共振频率依赖于结构的材料、形状和支撑方式。
    固有频率:当外界激励频率接近结构的固有频率时,可能会引起大幅振动,并导致明显的低频噪声。
  • 风扇和冷却系统噪声
    风扇叶片通过频率(Blade Pass Frequency, BPF):当风扇运行时,叶片通过的频率会产生一个显著的频率峰值,通常在100-500 Hz之间,频率峰值取决于叶片数和风扇速度。
    空气涡流噪声:高速空气流动会产生随机噪声,频率分布较宽,但一般集中在中高频段(500 Hz以上)。
  • 皮带和链条传动噪声
    皮带传动噪声:频率通常在中低频(100-500 Hz),主要由皮带振动和摩擦引起。
    链条传动噪声:与皮带相似,链条传动也会在100-500 Hz范围内产生噪声,特别是链条松紧度不当或磨损时。
  • 轮胎和地面摩擦噪声
    低频摩擦噪声:轮胎与地面的接触摩擦通常在低频段(20-200 Hz),特别在硬地面或粗糙地面上行驶时更明显。
    振动噪声:轮胎不平衡或路面不平整会在较低频率产生明显的振动噪声(通常低于100 Hz)。
  • 电磁干扰噪声
    电源开关噪声:常见于开关电源,通常在数千赫兹到十几千赫兹的频率范围,可能通过电磁辐射方式产生噪声。
    变频器噪声:变频器控制的电机可能产生明显的高频噪声(1000 Hz以上),尤其是PWM(脉宽调制)频率。
    通过识别频谱图中的这些常见频率峰值,可以帮助快速定位噪声来源。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/58252.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Rust 力扣 - 5. 最长回文子串

文章目录 题目描述题解思路题解代码题解链接 题目描述 题解思路 从中心点先寻找和中心点相等的左右端点,在基于左右端点进行往外扩散,直至左右端点不相等或者越界,然后左右端点这个范围内就是我们找寻的回文串,我们遍历中心点&am…

在Java中,需要每120分钟刷新一次的`assetoken`,并且你想使用Redis作为缓存来存储和管理这个令牌

学习总结 1、掌握 JAVA入门到进阶知识(持续写作中……) 2、学会Oracle数据库入门到入土用法(创作中……) 3、手把手教你开发炫酷的vbs脚本制作(完善中……) 4、牛逼哄哄的 IDEA编程利器技巧(编写中……) 5、面经吐血整理的 面试技…

macOS 15 Sequoia dmg格式转用于虚拟机的iso格式教程

想要把dmg格式转成iso格式,然后能在虚拟机上用,最起码新版的macOS镜像是不能用UltraISO,dmg2iso这种软件了,你直接转放到VMware里绝对读不出来,办法就是,在Mac系统中转换为cdr,然后再转成iso&am…

Unity3D学习FPS游戏(3)玩家第一人称视角转动和移动

前言:上一篇实现了角色简单的移动控制,但是实际游戏中玩家的视角是可以转动的,并根据转动后视角调整移动正前方。本篇实现玩家第一人称视角转动和移动,觉得有帮助的话可以点赞收藏支持一下! 玩家第一人称视角 修复小问…

NAT技术和代理服务器

NAT IP原理 之前我们讨论了, IPv4协议中, IP地址数量不充足的问题 NAT技术当前解决IP地址不够用的主要手段, 是路由器的一个重要功能;NAT能够将私有IP对外通信时转为全局IP. 也就是就是一种将私有IP和全局IP相互转化的技术方法:很多学校, 家庭, 公司内部采用每个终端设置私有…

批处理操作的优化

原来的代码 Override Transactional(rollbackFor Exception.class) public void batchAddQuestionsToBank(List<Long> questionIdList, Long questionBankId, User loginUser) {// 参数校验ThrowUtils.throwIf(CollUtil.isEmpty(questionIdList), ErrorCode.PARAMS_ERR…

2023IKCEST第五届“一带一路”国际大数据竞赛--社交网络中多模态虚假 媒体内容核查top11

比赛链接&#xff1a;https://aistudio.baidu.com/competition/detail/1030/0/introduction PPT链接&#xff1a;https://www.ikcest.org/bigdata2024/zlxz/list/page.html 赛题 社交网络中多模态虚假媒体内容核查 背景 随着新媒体时代信息媒介的多元化发展&#xff0c;各种内容…

GitHub Star 数量前 5 的开源应用程序生成器

欢迎来的 GitHub Star 数量排名系列文章的第 7 篇——最受欢迎的应用程序生成器。 之前我们已经详细探讨过&#xff1a;在 GitHub 上最受欢迎的——无代码工具、低代码项目、内部工具、CRUD项目、自部署项目和 Airtable 开源替代品。累计超过 50 个优质项目&#xff01;&#…

橘子多开同步器 v6.0 免费版

下载&#xff1a; 【1】https://drive.uc.cn/s/ddb0774e92924?public1 【2】https://pan.quark.cn/s/b5b1aae8c331 橘子多开同步器是一款专门为了游戏工作室而打造的免费游戏客户端多开同步工具&#xff0c;涵盖了包括客户端多开、客户端键鼠同步、智能防封等功能。 功能介…

Linux 进程优先级 进程切换

目录 优先级 概念 为什么优先级要限制在一定范围内 进程切换 方式 EIP寄存器(程序计数器) 进程在运行时会使用寄存器来保存临时数据 进程的上下文是什么&#xff1f; 进程的上下文保存到哪&#xff1f; 内核栈或专门的上下文结构也在内核空间&#xff1f;那为什么不直…

海外逆向代购:新机遇下的跨境赚钱之道

所谓逆向代购&#xff0c;即利用海外客源&#xff0c;将中国的优质商品反向代购至海外市场&#xff0c;实现跨境赚钱的同时&#xff0c;也让更多中国商品走向世界。 近年来&#xff0c;随着中国经济的飞速发展和消费水平的不断提升&#xff0c;中国商品在全球市场上的认可度越来…

一个简单的例子,说明Matrix类的妙用

在Android、前端或者别的平台的软件开发中&#xff0c;有时会遇到类似如下需求&#xff1a; 将某个图片显示到指定的区域&#xff1b;要求不改变图片本身的宽高比&#xff0c;进行缩放&#xff1b;要求最大限度的居中填充到显示区域。 以下示意图可以简单描绘该需求 以Androi…

ETL、ELT和反向ETL都有什么不同?怎么选择?

数据处理是现代企业中不可或缺的一部分。随着数据量的不断增长&#xff0c;如何高效地处理、转换和加载数据变得尤为重要。本文将介绍三种常见的数据处理方式&#xff1a;ETL、ELT和反向ETL&#xff0c;帮助读者更好地理解和选择适合自己业务需求的方式。 一、ETL 定义&#…

深入理解 SQL 中的 WITH AS 语法

在日常数据库操作中&#xff0c;SQL 语句的复杂性往往会影响到查询的可读性和维护性。为了解决这个问题&#xff0c;Oracle 提供了 WITH AS 语法&#xff0c;这一功能可以极大地简化复杂查询&#xff0c;提升代码的清晰度。本文将详细介绍 WITH AS 的基本用法、优势以及一些实际…

面对复杂的软件需求:5大关键策略!

面对软件需求来源和场景的复杂性&#xff0c;有效地管理和处理需求资料是确保项目成功的关键&#xff0c;能够提高需求理解的准确性&#xff0c;增强团队协作和沟通&#xff0c;降低项目风险&#xff0c;提高开发效率。反之&#xff0c;项目可能面临需求理解不准确、团队沟通不…

Lucas带你手撕机器学习——套索回归

好的&#xff0c;下面我将详细介绍套索回归的背景、理论基础、实现细节以及在实践中的应用&#xff0c;同时还会讨论其优缺点和一些常见问题。 套索回归&#xff08;Lasso Regression&#xff09; 1. 背景与动机 在机器学习和统计学中&#xff0c;模型的复杂性通常会影响其在…

从简单的demo开始让您逐步了解GetX的用法

目录 前言 一、从demo开始体现下Getx的用法 二、从最简单的功能开始 1.新建一个Flutter工程 2.GetX初体验 1.路由跳转 1.普通路由跳转 2.跳转并从堆栈中销毁当前页面 3.跳转并销毁之前所有页面 4.跳转以及传值 2.更方便的实现SnackBar、Dialog、BottomSheet 三、Ge…

项目文章 | 药学TOP期刊PRChIP-seq助力揭示激酶LIMK2促进梗死不良重构的机制

急性心肌梗死&#xff08;MI&#xff09;是全球死亡的主要原因&#xff0c;尽管MI的死亡率有所下降&#xff0c;缺血性心力衰竭的发病率却呈上升趋势。这一现象提示我们&#xff0c;尽管在急救和治疗急性心肌梗死方面取得了进展&#xff0c;但心脏在梗死后的长期功能恢复仍然是…

Prometheus新手必看:三步搞定基于文件、DNS和Consul的服务发现

一、基于文件的服务发现 基于文件的服务发现是仅仅略优于静态配置的服务发现方式&#xff0c;它不依赖于任何平台或第三方服务&#xff0c;因而也是最简单和通用的服务发现方式。Prometheus Server定期从文件中加载Target信息文件可使用JSON或YAML格式&#xff0c;它含有定义的…

成品气楼参考图集有哪些?盘点5本实用图集,你都知道哪几本

成品气楼也被称为通风天窗、自然通风器、屋顶通风器&#xff0c;是帮助厂房、商业建筑体等建筑通风换气的大型设备&#xff0c;被广泛应用在各行各业。想要成品气楼的通风、采光、排烟作用得到充分发挥&#xff0c;需选型合理&#xff0c;配置合适&#xff0c;安装得当&#xf…