溫馨提示×

溫馨提示×

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

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

python怎么將兩個實(shí)數(shù)矩陣合并為一個復(fù)數(shù)矩陣

發(fā)布時間:2021-05-20 09:35:15 來源:億速云 閱讀:364 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要介紹python怎么將兩個實(shí)數(shù)矩陣合并為一個復(fù)數(shù)矩陣,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

問題描述:

有時需要把兩個實(shí)數(shù)矩陣,一個作為實(shí)部,一個作為虛部,合并為一個復(fù)數(shù)矩陣,該如何操作?

解決辦法:

假如是在第二個維度上進(jìn)行合并(real: Data[:, 0, :, :] imag: Data[:, 1, :, :]),有兩種方法

第一種、

result = Data[:, 0, :, :] + 1j*Data[:, 1, :, :]

第二種、

result = 1j*Data[:, 1, :, :]
result += Data[:, 0, :, :]

第二種方法更節(jié)省內(nèi)存~

補(bǔ)充:python numpy 分離與合并復(fù)數(shù)矩陣實(shí)部虛部的方法

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

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

本文分享一個簡單的將復(fù)數(shù)光譜圖分解為實(shí)部與虛部以及將兩個部分重新合并為一個復(fù)數(shù)矩陣的過程,以下為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庫為常用的音頻處理庫。

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

最終的輸出為True, 證明了經(jīng)過這些步驟過后,重構(gòu)的復(fù)數(shù)矩陣與初始的光譜圖是一致的。

python可以做什么

Python是一種編程語言,內(nèi)置了許多有效的工具,Python幾乎無所不能,該語言通俗易懂、容易入門、功能強(qiáng)大,在許多領(lǐng)域中都有廣泛的應(yīng)用,例如最熱門的大數(shù)據(jù)分析,人工智能,Web開發(fā)等。

以上是“python怎么將兩個實(shí)數(shù)矩陣合并為一個復(fù)數(shù)矩陣”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

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

AI