溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python如何分離與合并復數矩陣的實部虛部

發(fā)布時間:2022-02-19 16:15:45 來源:億速云 閱讀:405 作者:iii 欄目:開發(fā)技術

這篇文章主要介紹了python如何分離與合并復數矩陣的實部虛部的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇python如何分離與合并復數矩陣的實部虛部文章都會有所收獲,下面我們一起來看看吧。

需求

在進行數字信號處理的過程中,我們往往有對短時傅里葉變換頻譜(spectrogram)進行分析的需求。

常見的分析手段對應歐拉公式分為兩種,要么使用模與相位的形式,要么使用實部虛部。

本文分享一個簡單的將復數光譜圖分解為實部與虛部以及將兩個部分重新合并為一個復數矩陣的過程,以下為python代碼。

import numpy as np
import librosa

 

# load the original wav

test_wave, _ = librosa.load("../RecFile_1_20200617_153719_Sound_Capture_DShow_5_monoOutput1.wav", sr=44100)

# calculate the complex spectrogram stft

spectrogram_test_wav = librosa.stft(test_wave, n_fft=735*2, win_length=735*2, hop_length=735)

 

# calculate the real part of the spectrogram

real_spectrogram = spectrogram_test_wav.real

# calculate the imaginary part of the spectrogram

imaginary_spectrogram = spectrogram_test_wav.imag

 

# combine these two parts

reconstruction_spectrogram = real_spectrogram + 1j * imaginary_spectrogram

print(np.array_equal(spectrogram_test_wav, reconstruction_spectrogram))

其中l(wèi)ibrosa庫為常用的音頻處理庫。

上述代碼實現(xiàn)了對wavfile進行短時傅里葉變換,分離出實部虛部并重新合并的過程。

最終的輸出為True, 證明了經過這些步驟過后,重構的復數矩陣與初始的光譜圖是一致的。

關于“python如何分離與合并復數矩陣的實部虛部”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“python如何分離與合并復數矩陣的實部虛部”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI