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

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

从视频中提取音频

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(脉宽调制)频率。
    通过识别频谱图中的这些常见频率峰值,可以帮助快速定位噪声来源。

相关文章:

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

从视频中提取音频 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 anal…...

MongoDB 6.0 主从复制配置

以下是 MongoDB 6.0 版本配置主从的详细安装步骤: 1. 安装 MongoDB:可以从官网下载 MongoDB 6.0 的安装包并进行安装,或者使用相应的包管理工具进行安装。 2. 配置主节点:在主节点的 MongoDB 配置文件(默认路径为 …...

NPU 神经网络处理单元

Ⅰ 什么是 NPU? 当前正处于神经网络和机器学习处理需求爆发的初期。传统的 CPU(中央处理器)/GPU(图形处理器)可以执行类似任务,但专门为神经网络优化的 NPU(神经处理单元)比 CPU/GP…...

安宝特分享 | AR技术引领:跨国工业远程协作创新模式

在当今高度互联的工业环境中,跨国合作与沟通变得日益重要。然而,语言障碍常常成为高效协作的绊脚石。安宝特AR眼镜凭借其强大的多语言自动翻译和播报功能,正在改变这一局面,让远程协作变得更加顺畅。 01 多语言翻译优势 安宝特A…...

Vulkan 开发(五):Vulkan 逻辑设备

图片来自《Vulkan 应用开发指南》 Vulkan 开发系列文章: 1. 开篇,Vulkan 概述 2. Vulkan 实例 3. Vulkan 物理设备 4. Vulkan 设备队列 在 Vulkan 中,逻辑设备(Logical Device)是与物理设备(Physical D…...

Kafka 解决消息丢失、乱序与重复消费

一、引言 在分布式系统中,Apache Kafka 作为一种高吞吐量的分布式发布订阅消息系统,被广泛应用于日志收集、流式处理、消息队列等场景。然而,在实际使用过程中,可能会遇到消息丢失、乱序、重复消费等问题,这些问题可能…...

计算机专业毕业生面试工具推荐:白瓜面试

随着毕业季的临近,计算机专业的毕业生们即将步入职场,面试成为了他们必须面对的挑战。在这个过程中,选择合适的面试工具可以大大提高求职成功率。今天,我要向大家推荐一款专为计算机专业毕业生设计的面试工具——白瓜面试。 为什…...

数字IC开发:布局布线

数字IC开发:布局布线 前端经过DFT,综合后输出网表文件给后端,由后端通过布局布线,将网表转换为GDSII文件;网表文件只包含单元器件及其连接等信息,GDS文件则包含其物理位置,具体的走线&#xff1…...

高空作业未系安全带监测系统 安全带穿戴识别预警系统

在各类高空作业场景中,安全带是保障作业人员生命安全的关键防线。然而,由于人为疏忽或其他原因,作业人员未正确系挂安全带的情况时有发生,这给高空作业带来了巨大的安全隐患。为有效解决这一问题,高空作业未系安全带监…...

k8s的配置和存储(ConfigMap、Secret、Hostpath、EmptyDir以及NFS的服务使用)

ConfigMap 简介 在 Kubernetes 中,ConfigMap 是一种用于存储非敏感信息的 Kubernetes 对象。它用于存储配置数据,如键值对、整个配置文件或 JSON 数据等。ConfigMap 通常用于容器镜像中的配置文件、命令行参数和环境变量等。 ConfigMap 可以通过三种方…...

JS轮播图实现自动轮播、悬浮停止轮播、点击切换,下方指示器与图片联动效果

代码&#xff1a; <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><s…...

使用 Kafka 和 MinIO 实现人工智能数据工作流

MinIO Enterprise Object Store 是用于创建和执行复杂数据工作流的基础组件。此事件驱动功能的核心是使用 Kafka 的 MinIO 存储桶通知。MinIO Enterprise Object Store 为所有 HTTP 请求&#xff08;如 PUT、POST、COPY、DELETE、GET、HEAD 和 CompleteMultipartUpload&#xf…...

力扣题86~90

题86&#xff08;中等&#xff09;&#xff1a; python代码 # Definition for singly-linked list. # class ListNode: # def __init__(self, val0, nextNone): # self.val val # self.next next class Solution:def partition(self, head: Optional[Li…...

【JavaEE】【多线程】定时器

目录 一、定时器简介1.1 Timer类1.2 使用案例 二、实现简易定时器2.1 MyTimerTask类2.2 实现schedule方法2.3 构造方法2.4 总代码2.5 测试 一、定时器简介 定时器&#xff1a;就相当于一个闹钟&#xff0c;当我们定的时间到了&#xff0c;那么就执行一些逻辑。 1.1 Timer类 …...

CI/CD 的原理

一、CI/CD 的概念 CI/CD是一种软件开发流程&#xff0c;旨在通过自动化和持续的集成、测试和交付实现高质量的软件产品。 CI(Continuous Integration)持续集成 目前主流的开发方式是协同开发&#xff0c;即多位开发人员同事处理同意应用不同模块或功能。 如果企业在同一时间将…...

进一步认识ICMP协议

在日常工作中&#xff0c;我们经常需要判断网络是否连通&#xff0c;相信大家使用较多的命令就是 ping啦。ping命令是基于 ICMP 协议来实现的&#xff0c;那么什么是 ICMP 协议呢&#xff1f;ping命令又是如何基于 ICMP 实现的呢&#xff1f; 今天这篇文章&#xff0c;我们就来…...

NUUO网络视频录像机upload.php任意文件上传漏洞复现

文章目录 免责声明漏洞描述搜索语法漏洞复现nuclei修复建议 免责声明 本文章仅供学习与交流&#xff0c;请勿用于非法用途&#xff0c;均由使用者本人负责&#xff0c;文章作者不为此承担任何责任 漏洞描述 NUUO网络视频录像机&#xff08;Network Video Recorder&#xff0…...

WebGL 3D基础

1. 归一化函数 对一个向量进行归一化处理&#xff0c;即调整向量的模长&#xff08;长度&#xff09;为1&#xff0c;同时保持其方向不变。 // 归一化函数 function normalized(arr) {let sum 0;for (let i 0; i < arr.length; i) {sum arr[i] * arr[i];}const middle …...

Docker 部署MongoDb

1. 编写docker-compose.conf 文件 version: 3 services:mongo:image: mongo:latest # 指定 MongoDB 版本&#xff0c;确保 > 3.6container_name: mongo-replicarestart: alwayscommand: ["mongod", "--replSet", "rs0", "--oplogSize&…...

【Hadoop】hadoop的路径分不清?HDFS路径与本地文件系统路径的区别

/usr/local/hadoop /user/hadoop /home/hadoop/ 这里有些路径名很相似&#xff0c;帮我区分&#xff1f; 在Hadoop生态系统中&#xff0c;理解文件存储的位置对于有效管理数据至关重要。Hadoop分布式文件系统&#xff08;HDFS&#xff09;提供了一个高度可靠的存储系统&#xf…...

[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?

&#x1f9e0; 智能合约中的数据是如何在区块链中保持一致的&#xff1f; 为什么所有区块链节点都能得出相同结果&#xff1f;合约调用这么复杂&#xff0c;状态真能保持一致吗&#xff1f;本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里&#xf…...

【解密LSTM、GRU如何解决传统RNN梯度消失问题】

解密LSTM与GRU&#xff1a;如何让RNN变得更聪明&#xff1f; 在深度学习的世界里&#xff0c;循环神经网络&#xff08;RNN&#xff09;以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而&#xff0c;传统RNN存在的一个严重问题——梯度消失&#…...

cf2117E

原题链接&#xff1a;https://codeforces.com/contest/2117/problem/E 题目背景&#xff1a; 给定两个数组a,b&#xff0c;可以执行多次以下操作&#xff1a;选择 i (1 < i < n - 1)&#xff0c;并设置 或&#xff0c;也可以在执行上述操作前执行一次删除任意 和 。求…...

数据库分批入库

今天在工作中&#xff0c;遇到一个问题&#xff0c;就是分批查询的时候&#xff0c;由于批次过大导致出现了一些问题&#xff0c;一下是问题描述和解决方案&#xff1a; 示例&#xff1a; // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...

.Net Framework 4/C# 关键字(非常用,持续更新...)

一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...

初探Service服务发现机制

1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能&#xff1a;服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源&#xf…...

人机融合智能 | “人智交互”跨学科新领域

本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...

搭建DNS域名解析服务器(正向解析资源文件)

正向解析资源文件 1&#xff09;准备工作 服务端及客户端都关闭安全软件 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2&#xff09;服务端安装软件&#xff1a;bind 1.配置yum源 [rootlocalhost ~]# cat /etc/yum.repos.d/base.repo [Base…...

Python训练营-Day26-函数专题1:函数定义与参数

题目1&#xff1a;计算圆的面积 任务&#xff1a; 编写一个名为 calculate_circle_area 的函数&#xff0c;该函数接收圆的半径 radius 作为参数&#xff0c;并返回圆的面积。圆的面积 π * radius (可以使用 math.pi 作为 π 的值)要求&#xff1a;函数接收一个位置参数 radi…...

Windows电脑能装鸿蒙吗_Windows电脑体验鸿蒙电脑操作系统教程

鸿蒙电脑版操作系统来了&#xff0c;很多小伙伴想体验鸿蒙电脑版操作系统&#xff0c;可惜&#xff0c;鸿蒙系统并不支持你正在使用的传统的电脑来安装。不过可以通过可以使用华为官方提供的虚拟机&#xff0c;来体验大家心心念念的鸿蒙系统啦&#xff01;注意&#xff1a;虚拟…...